网络与分布式计算复习提纲
- 格式:doc
- 大小:1.36 MB
- 文档页数:34
1.2 什么是分布式计算系统?它的实质是什么?分布式计算系统是由多个相互连接的计算机组成的一个整体,这些计算机在一组系统软件(分布式操作系统或中间件)环境下,合作执行一个共同的或不同的任务,最少依赖于集中的控制过程、数据和硬件。
实质:分布计算系统=分布式硬件+分布式控制+分布式数据。
1.10多处理机与多计算机的区别是什么?同构多计算机和异构多计算机各有什么特点?区别:多计算机是将多个计算机联合起来处理问题,多处理机是在一个系统内集成多个处理器.广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。
即多计算机系统。
狭义上说:多处理机系统的作用是利用系统内的多个CPU来并行执行用户的几个程序,以提高系统的吞吐量或用来进行冗余操作以提高系统的可靠性。
同构计算机的特点:1.每个节点是一台计算机,包含CPU和存储器。
2.节点间的通信量较少。
3.同构计算机系统的互连有两种结构:基于总线的多计算机系统和基于交换的多计算机系统。
异构计算机的特点:1.节点可能是多处理机系统、集群或并行高性能计算机。
2.节点间通过互联网络如Internet连接起来的。
3.有两种实现方法:采用分布式操作系统和中间件软件层。
1.16什么是中间件,它的功能是什么?它在分布式系统中的地位是什么?中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯,是连接两个独立应用程序或独立系统的软件功能:命名服务作业调度高级通信服务资源管理数据持久化分布式事务分布式文档系统安全服务地位:中间件的一个重要目标是对应用程序隐藏底层平台的异构型,因此中间件系统都提供一组完整度不同的服务集。
这些服务是通过中间件系统提供的接口来调用的。
一般禁止跳过中间件层直接调用底层操作系统的服务。
1.18分布式系统有哪些计算模式?(必考)1.面向对象模式2.面向服务模式3.公用计算模式4.志愿参与模式(详见书p21-p22页)2.5有哪些名字服务形式?名字服务器的组成与功能是什么?名字服务形式:(1)名字服务:名字服务是根据实体的名字查找它的属性(地址)。
计算机网络与分布式计算基础知识计算机网络和分布式计算是现代计算机领域中非常重要的基础知识。
计算机网络是指将分散的计算机系统通过通信设备进行连接,实现信息交换和资源共享的技术。
而分布式计算则是指将一个具有单一计算机性能的任务分解成多个子任务,由多台计算机进行协作完成,以提高计算效率和资源利用率。
本文将从计算机网络和分布式计算的基本概念、技术原理和应用场景等方面进行探讨。
一、计算机网络基础知识计算机网络是由一组相互连接的计算机系统和设备组成的,其核心目标是实现信息交换和资源共享。
计算机网络包括局域网、广域网和互联网等组成部分。
1. 局域网局域网(Local Area Network,LAN)是在相对较小的地理范围内建立的计算机网络,如家庭、写字楼或校园等。
局域网通常使用以太网技术作为物理媒介,并通过交换机进行数据的转发和路由。
2. 广域网广域网(Wide Area Network,WAN)是将不同地理位置的计算机网络连接起来形成一个更大范围的网络。
广域网通常使用路由器进行数据的传输和路由选择。
3. 互联网互联网(Internet)是由全球范围内的计算机网络互相连接而成的。
互联网使用TCP/IP协议族进行数据传输和路由选择,为用户提供了近乎无限的信息资源。
二、计算机网络协议计算机网络协议是计算机网络通信的标准化规定,确保不同计算机系统之间能够进行有效的通信。
常见的计算机网络协议有TCP/IP、HTTP、FTP等。
1. TCP/IP协议TCP/IP协议是互联网的核心协议,它将互联网分为多个层次,每个层次负责不同的功能。
其中,TCP协议负责可靠的数据传输,而IP协议则负责数据的路由和寻址。
2. HTTP协议HTTP协议是超文本传输协议,负责在互联网上传输超文本资源。
通过HTTP协议,用户可以通过浏览器访问网页、发送请求和接收服务器返回的响应。
3. FTP协议FTP协议是文件传输协议,用于在计算机之间传输文件。
专升本计算机攻略计算机网络与分布式系统专升本计算机攻略——计算机网络与分布式系统计算机网络与分布式系统是专升本计算机科学与技术专业中的一门重要课程。
随着信息技术的不断发展和应用,计算机网络已经成为现代社会中必不可少的一部分。
掌握计算机网络与分布式系统的知识,对于专升本考试和日后的职业发展都具有重要意义。
本文将为广大考生提供一些攻略,帮助大家更好地学习和理解计算机网络与分布式系统。
一、理论基础篇1.1 计算机网络概述计算机网络是指将多台计算机互连起来,实现数据和信息共享的系统。
它由网络体系结构、传输媒介、通信协议等组成。
在学习计算机网络之前,我们需要了解计算机网络的基本概念、发展历程和应用领域。
1.2 分层体系结构计算机网络采用分层体系结构,将网络功能划分为不同的层次,每层都有相应的协议和服务。
常见的分层体系结构有OSI七层模型和TCP/IP四层模型。
学习计算机网络需要掌握各个层次的功能、协议和数据单位等。
1.3 计算机网络的网络设备计算机网络的设备包括计算机、路由器、交换机、网卡等。
每种设备都有不同的作用和功能,掌握这些设备的特点和使用方法,对于实际网络的搭建和维护非常重要。
1.4 网络通信协议网络通信协议是计算机网络中一种约定,它规定了计算机之间如何通信和传输数据。
常见的网络协议有TCP/IP协议、HTTP协议、FTP协议等。
学习计算机网络需要了解各种协议的作用和特点。
二、实践应用篇2.1 网络编程网络编程是指利用计算机网络进行程序开发和通信。
掌握网络编程的基本原理和方法,对于实际项目的开发和调试至关重要。
常用的网络编程语言有C、C++、Java等,学习时需要结合编程语言和网络协议进行实践操作。
2.2 分布式系统分布式系统是指多台计算机通过计算机网络进行协同工作和资源共享的系统。
学习分布式系统需要了解分布式架构的基本概念、优势和挑战,掌握分布式计算的相关技术和方法。
2.3 云计算和大数据云计算和大数据是计算机网络与分布式系统中的热门技术。
云计算技术复习提纲及提示1.根据你的理解,说明什么是并行计算,什么是分布式计算。
答:并行计算:基于分而治之的思想,将一个大问题分解成多个小问题,并发地求解各小问题,使得多个运算得以同时运行的计算模式。
分布式计算:是研究分布式系统中如何进行计算的计算机科学。
分布式系统有多个由网络连接的计算机组成。
这些计算机能够联合完成共同的计算目标。
一个计算问题可以分解成许多小任务,分散到不同的计算机上处理,在处理过程中进行消息通信,最后汇总成最终结果。
2.简述并行程序设计过程。
答见课件3.并行计算模型分类。
隐式并行模型、数据并行模型、消息传递模型、共享变量模型4.什么是PVM?说明PVM系统由哪两部分组成。
答见课件5.MPI的最小子集由那六个基本函数组成,分别实现什么功能?答见课件6.MPI通信模式(四种)?答:同步模式、缓冲模式、标准模式、就绪模式7.MPI群集通信按照通信方向不同可分为三种,并举例?答:一对多(MPI_Bcast)、多对一(MPI_Gather)、多对多MPI_Allgather)8.MPI归约操作(MPI_Reduce)的主要功能?答见课件9.说明MPICH-G2和MPICH的区别和联系。
答:MPICH-G2和MPICH是MPI标准的两个开源实现;MPICH-G2适用于网格环境,MPICH 适用于集群环境;MPICH-G2基于MPICH架构,采用Globus技术实现。
10.什么是NFS和NIS,根据你的理解说明它们的主要作用?答见课件11.画图说明LSF Batch Job的生命周期(Life Cycle)。
答见课件12.说明LSF中Queue的功能和作用。
答:Queue(队列)既是作业的容器,又同时是调度策略的容器。
不同的队列可以配置不同的调度策略。
一个队列在不同的时间段可以执行不同的调度策略。
13.根据你的理解,说明什么是虚拟化、什么是虚拟机。
答:虚拟化是表示计算机资源的抽象方法,通过虚拟化可以用与访问抽象前资源一致的方法访问抽象后的资源。
第三章运输层3.1概述:1,运输层协议为不同主机上的应用进程彼此之间提供了逻辑通信.2,运输层协议是在端系统而不是网络中的路由器中实现的。
也只工作在端系统。
中间路由器既不识别也不处理运输层加载应用层报文的任何信息。
3,网络应用程序可以使用多种运输层协议。
因特网有TCP和UDP两种运输层协议。
4,运输层位于网络层之上,为运行在不同主机上的应用程序之间提供了逻辑通信;而网络层则提供了主机之间的逻辑通信。
5,运输层提供的服务受到了底层网络协议的服务模型的限制。
6,因特网的网络层协议IP协议的服务模型是尽力而为的服务,它不做任何确保,不保证报文段的按序交付,更不保证报文段中的数据完整性。
是不可靠服务7,TCP和U DP最基本的任务是,将两个端系统间IP的交付服务扩展为运行在两个端系统上的进程之间的交付服务。
8,运输层的多路复用与多路分解:将主机间交付扩展到进程间交付。
9,进程间数据交付和差错检查是两种最低限度的运输层服务。
也是UDP所能提供的仅有的两种服务。
10,TCP通过流量控制、序号、确认和定时器等技术,能抱着正确而有序地将数据从发送进程交付给接收进程。
TCP还提供拥塞控制功能。
3.2 多路复用与多路分解1,接收主机中的运输层实际上并没有把数据直接交付给进程,而是通过一个中间的套接字来传递;每个套接字都有唯一的标识符,其格式决定了它是UDP还是TCP套接字。
2,多路分解demultiplexing:将运输层报文段中的数据交付到正确的套接字的工作。
运输层通过检查每个运输层报文段的几个字段来标识套接字,然后将报文段定向到该套接字。
多路复用multiplexing:从在源主机的不同套接字中收集数据,并为每个数据块封装上首部信息(在多路分解时使用)从而生产报文段,然后将报文段传递到网络层的工作。
多路复用的要求:1,套接字有唯一的标识符;2,每个报文段有特殊字段来指示该报文段所要交付的套接字。
这些特殊字段是源端口号字段(作为“返回地址”的一部分,在回发报文段时使用)和目的端口号字段。
《计算机网络》复习提纲.第1章概述一、基本知识点1.计算机网络的基本概念:一些互相连接的、自治的计算机的集合。
2. 因特网的概念:因特网是网络的网络,它把许多计算机网络连接在一起;而计算机网络是把许多计算机连接在一起。
3. 因特网的标准化工作:因特网在制定标准上是面向公众的,所有的因特网标准都是以RFC (请求评论)的形式在因特网上发表,所有的RFC 文档都可以从因特网上免费下载。
制定因特网的正式标准要经过四个阶段:因特网草案、建议标准、草案标准、因特网标准。
4. 掌握因特网组成(边缘部分、核心部分):从工作方式看,因特网可以划分为边缘部分和核心部分两大块。
其中,边缘部分由所有连接在因特网上的主机组成,用来进行通信和资源共享;核心部分由大量网络和连接这些网络的路由器组成,为边缘部分提供服务(连通性和交换)。
在网络边缘的端系统中运行的程序之间的通信方式通常分为客户服务器方式和对等方式。
在网络核心部分起特殊作用的是路由器,用以实现分组交换。
【习题1-12】5. 了解计算机网络的分类:根据作用范围的不同,可将计算机网络划分为:(1)个人区域网:在个人工作地方把属于个人使用的电子设备用无线技术连接起来的网络。
(2)局域网:将地理上局限在较小范围(如1km 左右)内的微型计算机或工作站通过高速通信线路连接起来的网络。
(3)城域网:作用范围一般是一个城市,可跨越几个街区甚至是整个城市,其作用范围约为5~50km 。
(4)广域网:是因特网的核心部分,其任务是通过长距离运送主机所发送的数据。
6. 熟悉计算机网络的性能指标:速率、带宽、吞吐量、时延、时延带宽积、往返时间、利用率等概念。
【习题1-14】(1)速率:指连接在计算机网络上的主机在数字信道上传送数据的速率,也称数据率或比特率。
速率的单位是bit/s ,有时可写为b/s 或bps 。
(2)带宽:在计算机网络中,带宽用来表示通信线路所能传送数据的能力,即单位时间内从网络中的某一点到另一点所能通过的“最高数据率”,其单位为bit/s 。
确保及格的复习内容1、计算机网络的定义、与分布式系统的区别、按照网络拓扑结构计算机网络如何分类、按传输技术如何分类、按网络规模如何分类;a.计算机网络的定义:通过同一种技术相互连接起来的一组自主计算机的集合。
b.计算机网络与分布式系统的区别:分布式系统建立在计算机网络上,多台计算机的存在对用户是透明的。
而在网络中用户必须明确地指定在哪一台机器上登录;明确地远程递交任务;明确指定文件传输的源和目的地,还要管理整个网络。
在分布式系统中,不需要明确地指定这些内容,系统会自动地完成而无须用户的干预。
两者的区别更多地取决于软件(尤其是操作系统)而不是硬件。
c.按照拓扑结构分类:广播式网络拓扑,点对点网络拓扑。
按传输技术如何分类:传输技术:广播式网络,点对点网络广播式网络:仅有一条通信信道,由网络上的所有机器共享。
可进行一对一通信或一对多通信。
点对点网络:由一对对机器之间的多条连接构成。
规模分类——连接距离:局域网,城域网,广域网,互联网。
2、OSI七层模型和TCP/IP四层模型的特点、每层的功能;OSI参考模型每一层的名称和功能?物理层:涉及到在通信信道上传输原始比特流的问题。
在设计时,需要解决如下问题:机械连接,如网络连接器有多少针以及每一针的用途;电气特性,如多少伏表示比特1以及每一比特位持续多长时间等;功能特性,如对控制信息的的比特流表示形式的规定;通信规程,如传输过程是否在两个方向同时进行、初始连接如何建立、通信后如何撤销等。
数据链路层:主要任务设法将不可靠的物理传输线路变成可靠的逻辑传输线路,若存在未检测到错误,将会反映到网络层。
为完成上述任务,通常的做法是将需要传输的数据分装成数据帧,每个数据帧都单独带有校验码,然后按顺序传送这些数据帧,接收方通过校验码可知道传输是否出错。
接收方通过为每个数据帧发送一个确认帧,可确保传输的可靠性,若出错,可通过重传纠错或前向纠错。
流量控制也是此层需要考虑的问题,它可避免快速的发送方淹没慢速的接收方。
1.2什么是分布式计算系统?它的实质是什么?分布式计算系统是由多个相互连接的计算机组成的一个整体,这些计算机在一组系统软件(分布式操作系统或中间件)环境下,合作执行一个共同的或不同的任务,最少依赖于集中的控制过程、数据和硬件。
实质:分布计算系统=分布式硬件+分布式控制+分布式数据。
1.10多处理机与多计算机的区别是什么?同构多计算机和异构多计算机各有什么特点?区别:多计算机是将多个计算机联合起来处理问题,多处理机是在一个系统内集成多个处理器.广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。
即多计算机系统。
狭义上说:多处理机系统的作用是利用系统内的多个CPU来并行执行用户的几个程序,以提高系统的吞吐量或用来进行冗余操作以提高系统的可靠性。
同构计算机的特点:1•每个节点是一台计算机,包含CPU和存储器。
2•节点间的通信量较少。
3•同构计算机系统的互连有两种结构:基于总线的多计算机系统和基于交换的多计算机系统。
异构计算机的特点:1•节点差异很大,节点可能是多处理机系统、集群或并行高性能计算机。
2•节点间通过互联网络如In ternet连接起来的。
3•有两种实现方法:采用分布式操作系统和中间件软件层。
1.16什么是中间件,它的功能是什么?它在分布式系统中的地位是什么?中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
中间件位于客户机/服务器的操作系统之上,管理计算机资源和网络通讯,是连接两个独立应用程序或独立系统的软件功能:命名服务作业调度高级通信服务资源管理数据持久化分布式事务分布式文档系统安全服务地位:中间件的一个重要目标是对应用程序隐藏底层平台的异构型,因此中间件系统都提供一组完整度不同的服务集。
这些服务是通过中间件系统提供的接口来调用的。
一般禁止跳过中间件层直接调用底层操作系统的服务1.18分布式系统有哪些计算模式?(必考)1.面向对象模式2•面向服务模式3•公用计算模式节点计導机工网络乍系绕月艮务内核内核中间件服努4.志愿参与模式(详见书p21-p22页)面向对象模式00M面向对象模式OOM (Object Oriented Model )是基于客户/服务器模型(如CORBA,DCOM)面向服务模式SOMWeb Service是这种面向服务模式的一个实例,SOA是一个较完整的软件结构体系。
计算机网络技术复习提纲计算机网络技术复习提纲一、计算机网络基础知识1.网络概述1.网络的定义2.网络的分类1.局域网(LAN)2.城域网(MAN)3.广域网(WAN)3.重要的网络标准与协议1.TCP/IP协议族2.OSI参考模型3.HTTP协议4.DNS协议2.网络拓扑结构1.总线型拓扑2.星型拓扑3.环形拓扑4.树型拓扑5.网状拓扑3.网络设备与组成1.网络硬件设备1.网卡2.集线器3.交换机4.路由器5.网关6.防火墙2.网络软件组成1.网络操作系统2.网络协议3.应用程序二、物理层1.通信基础知识1.码元、信号与速率2.传输媒介1.双绞线2.同轴电缆3.光纤2.数据通信原理1.串行传输和并行传输2.数据传输的方式1.单工传输2.半双工传输3.全双工传输3.香农定理与数据压缩1.香农定理的定义与公式2.数据压缩的方法与算法 4.错误检测与纠正1.奇偶校验2.CRC3.海明码三、数据链路层1.数据链路层的作用与功能2.帧封装与解封装3.点对点协议(PPP)4.以太网协议1.MAC地质2.以太网帧结构3.以太网交换机5.局域网的划分与拓扑1.以太网技术2.令牌环技术3.Token Bus技术6.虚拟局域网(VLAN)1.VLAN的概念与作用2.VLAN的配置与管理四、网络层1.网络层的作用与功能2.网际协议(IP)1.IP地质的分类与表示方法2.子网划分与子网掩码3.路由器与路由表1.路由器的工作原理2.路由表的建立与更新4.路由选择协议1.静态路由选择2.动态路由选择1.RIP协议2.OSPF协议3.BGP协议五、传输层1.传输层的作用与功能2.传输层协议1.TCP协议1.连接建立与断开2.可靠传输机制3.流量控制与拥塞控制 2.UDP协议1.无连接传输2.非可靠传输六、应用层1.应用层协议1.HTTP协议2.FTP协议3.SMTP协议4.DNS协议2.网络安全与加密1.防火墙与网络安全2.数据加密与解密3.数字证书与SSL/TLS协议附件:相关案例分析、图表和实验结果等内容详见附件。
1.2 什么是分布式计算系统?它的实质是什么?分布式计算系统是由多个相互连接的计算机组成的一个整体,这些计算机在一组系统软件(分布式操作系统或中间件)环境下,合作执行一个共同的或不同的任务,最少依赖于集中的控制过程、数据和硬件。
实质:分布计算系统=分布式硬件+分布式控制+分布式数据。
1.10多处理机与多计算机的区别是什么?同构多计算机和异构多计算机各有什么特点?区别:多计算机是将多个计算机联合起来处理问题,多处理机是在一个系统内集成多个处理器.广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。
即多计算机系统。
狭义上说:多处理机系统的作用是利用系统内的多个CPU来并行执行用户的几个程序,以提高系统的吞吐量或用来进行冗余操作以提高系统的可靠性。
同构计算机的特点:1.每个节点是一台计算机,包含CPU和存储器。
2.节点间的通信量较少。
3.同构计算机系统的互连有两种结构:基于总线的多计算机系统和基于交换的多计算机系统。
异构计算机的特点:1.节点差异很大,节点可能是多处理机系统、集群或并行高性能计算机。
2.节点间通过互联网络如Internet连接起来的。
3.有两种实现方法:采用分布式操作系统和中间件软件层。
1.16什么是中间件,它的功能是什么?它在分布式系统中的地位是什么?中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯,是连接两个独立应用程序或独立系统的软件功能:命名服务作业调度高级通信服务资源管理数据持久化分布式事务分布式文档系统安全服务地位:中间件的一个重要目标是对应用程序隐藏底层平台的异构型,因此中间件系统都提供一组完整度不同的服务集。
这些服务是通过中间件系统提供的接口来调用的。
一般禁止跳过中间件层直接调用底层操作系统的服务。
1.18分布式系统有哪些计算模式?(必考)1.面向对象模式2.面向服务模式3.公用计算模式4.志愿参与模式(详见书p21-p22页)面向对象模式OOM面向对象模式OOM(Object Oriented Model)是基于客户/服务器模型(如CORBA,DCOM)面向服务模式SOMWeb Service是这种面向服务模式的一个实例,SOA是一个较完整的软件结构体系。
公用计算模式UBM支持e-科学的计算(如网格Grid等)。
志愿参与模式VJM志愿参与模式VJM(Voluntary Join Model)是充分利用网上空闲的计算能力,支持计算量巨大的科学计算2.5有哪些名字服务形式?名字服务器的组成与功能是什么?名字服务形式:(1)名字服务:名字服务是根据实体的名字查找它的属性(地址)。
(2)目录服务:目录服务既可以根据实体的名字查找实体的属性,当不知道实体名时也可以根据实体的一个或多个属性及其值查找并得到一个匹配这些属性的实体列表。
(3)合约服务:是一种增强的目录服务,通过技术规范来定位一个命名实体。
名字服务器组成:(1)名字服务器操作:管理、查询操作和行政管理。
增加、删除和修改上下文的目录项。
访问优先权。
(2)名字解析:根据名字解析请求,得到被解析对象地址。
(3)缓存:缓存名字查询和解析的结果。
(4)多副本管理:副本修改和副本一致性维护。
(5)通信:客户端的名字代理通信和名字服务器之间(6)数据库:存放名字解析上下文或其子域。
名字服务器功能:管理名字命名上下文、实现名字查询与解析和其它名字服务器通信协调。
2.7什么是迭代名字解析,什么是递归名字解析,它们各有什么优缺点?迭代名字解析:建议考试画图解释:递归名字解析:也画图解释各自优缺点:递归名字解析缺点:要求每台名字服务器具有较高的性能。
递归名字解析优点:1.递归名字解析过程中,各名字服务器解析的缓存结果使用更为高效。
2.如果主机与服务器距离很远,那么采用递归名字解析将更为高效。
迭代的优缺点与上面相反。
2.14什么是目录服务?目录项和属性及属性值的关系是什么?目录服务:目录服务既可以根据实体的名字查找实体的属性,当不知道实体名时也可以根据实体的一个或多个属性及其值查找并得到一个匹配这些属性的实体列表。
关系:目录项是一个命名对象的信息集合。
每个命名对象包括若干个属性,每个属性有一个属性类型和相应的一个或多个属性值。
2.17 X.500目录服务中定义了哪些目录服务协议?查询链与转交的含义是什么?X.500目录服务有4个协议:目录访问协议DAP,DUA用来与DSA通信。
目录系统协议DSP,是两个DSA之间的操作协议,在DSA之间传递查询请求和响应。
目录信息镜像协议DISP,是DSA用来将信息从镜像提供者传送给镜像使用者。
目录操作绑定管理协议DOP,DSA用来层次操作绑定管理和镜像管理。
目录服务对用户请求的响应成功,返回所需信息失败,返回失败信息转交,返回一个更适合的DSA2.18轻量数据访问协议LDAP和目录访问协议DAP的关系和区别是什么?1.LDAP的最初目标是向用户提供目录服务时避免DAP的大量开销。
2.LDAP的操作集对DAP做了简化,删除了read和list操作,用search代替。
3.DAP是目录用户代理(DUA)与目录系统代理(DSA)之间的请求/响应协议。
LDAP是用户用来访问目录服务的一个协议。
4.建议再回答下LDAP的模型:3.7什么是远程执行逻辑机模型?对逻辑机模型的要求是什么?概念:客户节点上的代理进程负责远程服务节点上远程进程执行的初始化;远程服务节点执行客户机赋予的进程。
这种模型成为逻辑机模型。
建议画图。
如图所示,它跨越用户节点和两个远程服务节点,在一个逻辑机边界内保持稳健系统,进程的父子关系和进程组的进程视图的一致。
要求:(1)远程进程必须能访问驻留在源计算机上的文件系统。
(2)远程进程能接收逻辑机内任何进程发来的信号,也能将信号提供给逻辑机内任何进程。
(3)进程组保持在逻辑机内。
(4)基于树型的进程父子关系在逻辑机内必须得以保持。
3.13何为异步进程迁移算法?何为同步进程迁移算法?它们的优缺点是什么?异步进程迁移算法:这类算法允许非迁移进程在迁移过程中继续运算,只有迁移进程被中断进行相关的操作。
优点:可以得到较好的执行效率。
缺点:和原有环境的兼容性不好,不能方便的移植。
同步迁移算法:这类算法在迁移过程中所有进程(包括非迁移的协同进程)都被挂起,进程之间需要同步来清空通信信道中的中途消息,所有进程均要阻塞等待迁移事件完成后,才能从中断处继续运行。
优点:算法简单,具有较好的可移植性和易于实现。
缺点:需要中央控制管理进程参与,所有进程都被迫中断,等待迁移过程的结束。
3.15比较进程远程执行与进程迁移两种机制。
进程远程执行,就是在集群中或者网络中寻找一个或多个合适节点来执行用户程序。
进程远程执行的要求:(1)寻找管理机制。
(2)进程远程执行是透明的,应与位置无关。
(3)主人优先原则进程迁移是将一个正在运行的进程挂起,它的状态从源处理机节点转移到目标处理机节点,并在目标处理机上恢复该进程运行。
优点:进程迁移具有灵活且应用广泛的优点,支持动态负载平衡、系统容错、高效使用本地资源等诸多系统功能。
缺点:进程迁移的缺点是运行开销相对较大。
进程的迁移可以支持:(1)动态系统管理与维护(2)动态负载平衡(load balancing),系统中重负载处理机转移一部分负载到轻负载的处理机上运行,使得整个集群系统中的所有处理机的负载趋向均衡,从而提高系统的整体运行效率。
(3)系统容错(4)主人优先使用原则4.1在水平时间轴上表示阻塞发送/接收和非阻塞发送/接收进程与操作系统内核之间操作的时间关系。
没有具体答案,先方便理解一下阻塞和非阻塞:阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态.阻塞调用是指调用结果返回之前,当前线程会被挂起。
调用线程只有在得到结果之后才会返回。
非阻塞调用指在不能立刻得到结果之前,该调用不会阻塞当前线程。
例子:你打电话问书店老板有没有《分布式系统》这本书,你如果是阻塞式调用,你会一直把自己“挂起”,直到得到这本书有没有的结果,如果是非阻塞式调用,你不管老板有没有告诉你,你自己先一边去玩了,当然你也要偶尔过几分钟check 一下老板有没有返回结果。
这个图不知道对不对:4.2试叙述如何实现阻塞发送/接收和非阻塞发送/接收,对操作系统有什么要求?当进程到达发送原语时执行一次阻塞发送,无需等待对应的接收。
在消息从S 安全写入发送缓冲区前,发送进程不能返回。
当进程到达接收原语时执行一次阻塞接收,无需等待对应的发送。
然而,消息从缓冲区接收到R之前,接收进程不会返回。
系统要为阻塞模式消息传送提供临时的缓冲区。
当进程到达发送原语时执行一次非阻塞发送,无需等待对应的接收。
只要通知操作系统有一个消息要发送,发送进程就可以返回。
当进程到达接收原语时执行一次非阻塞接收,无须等待对应的发送。
只要通知操作系统有一个消息要接收,接收进程就可以返回了。
系统要为非阻塞消息传送提供临时的缓冲区。
4.4对以下每个应用程序,你认为“至多一次”和“至少一次”语义哪个最好?(1)在文件服务器上读写文件:至少一次。
(2)银行服务:至多一次(3)编译一个程序:至少一次通过发送原语send和接收原语receive实现要求操作系统能实现4种不同的可靠性语义。
至少一次:保证正确完成消息传送至少一次至多一次:保证正确完成消息传送至多一次。
在没有节点崩溃和网络断开情况下,它只正确地执行一次消息传送。
事务语义:它保证消息的原子性。
不管节点崩溃或网络端口与否,它或者完成一次消息传送,或者什么也不做。
精确一次:无论在什么情况下,保证正确完成一次消息传送,不管是否有节点崩溃或网络断开,它接近某种程度的容错机制。
4.9什么是因果定律?它和FIFO全定序相比,哪个更严格?因果定律:不管含有因果关系的消息是由同一个发送进程多播,还是不同发送进程多播,所有接收进程要保证先接收“因”消息,后接收“果”消息。
FIFO:对同一个发送进程发出的多播消息,要求所有接收进程按发送的顺序接收,而对不同发送进程的多播消息可按不同顺序接收。
相比之下,因果排序更严格。
4.12RPC被认为是分布式最初的中间件,它能实现分布式系统的透明性吗?p92在执行RPC过程中,客户可以简单的忽略不关心的内容,客户只是像执行本地调用一样调用远程过程,并不直接执行send和receive原语,也不关心消息的传递,所有这些都隐藏在桩中,从而实现RPC的透明性。
在本地过程调用中,read例程是由连接器从库中提取出来,连接到应用程序,当read是针对远程过程时,从库中获取read例程的另一个版本,客户桩。
在服务器端服务器也为远程客户提供一个read例程,服务器桩。