第2章协议设计(2 基本内容)ppt课件.ppt

上传人:牧羊曲112 文档编号:2104216 上传时间:2023-01-10 格式:PPT 页数:68 大小:1.95MB
返回 下载 相关 举报
第2章协议设计(2 基本内容)ppt课件.ppt_第1页
第1页 / 共68页
第2章协议设计(2 基本内容)ppt课件.ppt_第2页
第2页 / 共68页
第2章协议设计(2 基本内容)ppt课件.ppt_第3页
第3页 / 共68页
第2章协议设计(2 基本内容)ppt课件.ppt_第4页
第4页 / 共68页
第2章协议设计(2 基本内容)ppt课件.ppt_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《第2章协议设计(2 基本内容)ppt课件.ppt》由会员分享,可在线阅读,更多相关《第2章协议设计(2 基本内容)ppt课件.ppt(68页珍藏版)》请在三一办公上搜索。

1、第 2 章 协议设计(2-基本内容),2,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,3,协议的通信环境,n层协议的通信环境 用户要求(n-1)层通道(Channel)的性质N层中任何两个协议实体通过(n-1)SAP所形成的数据逻辑通路称为(n-1)层通道(图2-1)n层协议运行时的操作系统和硬件环境 通信环境是协议设计要优先考虑的问题,4,协议模型,分层设计,n 层协议模型,(n+1)实体,(n)实体,(n+1)实体,(n)实体,(n)协议,提供(n-1)服务,提供(n)服务,(n)服务用户,(n)服务提供者,通过(n-1)连接进

2、行通信,(n+1)层,(n-1)层,(n)层,nSAP,(n-1)SAP,nSAP,(n-1)SAP,(n-1)SPs,(n-1)SPs,(n)SPs,(n)SPs,(n)PDUs,(N-1)通道,5,通道的类型,主要有三类:空通道(empty channels):报文的发送时间和延时时间为0的通道报文一旦从输入端进入就立即在输出端出现非缓冲通道(non-buffered channels)在任何时刻,最多只有一个正在传送中的报文的通道 缓冲通道(buffered channels)允许有多个报文停留的通道(n-1)层通道的性质对n层协议的构成有非常重要的影响,6,通道性质,通道的形成方式:A

3、和B建立并独占一条连接,此时(n-1)层应提供有连接服务A和B与其它协议实体一起共享一条连接A和B利用(n-1)层提供的无连接服务进行通信如果(n-1)层为物理层,A和B可独占一条物理信道,或共享一条物理信道通道的队列性质:除物理层外,一般可将(n-1)层通道看作是队列通道,即一个数据报文从n层源端协议实体发出之后要在n层以下各层多次存贮转发,在每个存贮转发处就存在一个队列平均队列长度以及最大队列允许长度是队列的主要性质 队列越长,那么数据报文在通道中的延时就会越大;如果队列长度达到最大允许长度,那么后续的数据报文将会丢失,7,通道性质(Cont.),回程时延RTT(Round Trip Ti

4、me)RTT是报文从n层源端实体发出到该报文的认可信息达到该实体之间的时间,它包括目标实体收到报文之后,对报文进行处理然后发出认可信息的时间RTT是协议的最重要参数之一通道的差错特性参数:报文的出错率、报文的丢失率、报文的重复率、报文失序率差错特性与它的形成方式有关:如果通道是利用(n-1)层有连接服务形成的,或是物理信道,那么传递的报文不会失序如果通道利用(n-1)层的无连接服务形成的,则报文的顺序就有可能失序,8,通道性质(Cont.),通道的可靠性通道的可靠性是指通道无故障,如断连、复位等报文的最大长度或最大传输单元(MTU)通道所能接收的最大报文长度主要影响n层协议的报文分段,拼接等功

5、能常见例子,TCP,IP,Ethernet的MTU通道的工作方式单工、半双工、全双工同步与异步,9,通道性质(Cont.),通道的通信方式点对点:N 层任意两个协议实体利用一条(N-1)层通道通信,协同完成指定协议功能如TCP连接,UDP点对点方式点对多点N 层任意两个以上协议实体利用多条(N-1)层通道通信,协同执行一定任务如ATM的点对多点连接,UDP的广播方式通道的安全性对用户数据加密和安全控制(如口令,特权),10,通道性质(Cont.),通道的带宽(Bandwidth)原始的意义:某个信号具有的频带宽度。单位:赫兹(Hz)、千赫(kHz)、兆赫(MHz)早期的通信主干线主要传送模拟信

6、号,因此通信线路的带宽(也叫通频带)用频率来度量。数字化主干线路:用传送的数字信号的数据率(即数据率或比特率)来表示线路的带宽。单位:比特每秒(bit/s)、千比特每秒kbit/s、兆比特每秒Mbit/s(106bit/s)、吉比特每秒Gbit/s(109bit/s)或太比特Tbit/s(1012bit/s)。通道的带宽可进一步分为:前向带宽、后向带宽、峰值带宽等(QoS),11,协议的通信环境:小结,经验表明,大多数的协议失败是由于对协议运行的环境作出了错误的假定设计者必须确保直接定义这些环境假定,而不能隐含地指示它们,12,协议的通信环境:思考题,2-3 请以HDLC和FrameRelay

7、为例来讨论协议的通信环境对协议的影响。(提示:可以从差错控制机制来考虑),13,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,14,协议提供的服务,从通信的角度:面向连接的(connection-oriented)服务三个阶段:连接建立、数据传输和连接释放在传送数据时是按序传送的网络层:虚电路服务比较适合于在一定期间内要向同一目的地发送许多报文的情况永久虚电路:适于两个用户需要经常进行频繁的通信的情况无连接的(connectionless)服务不能保证报文的丢失、重复、失序三种类型:数据报(datagram)、证实交付(confirm

8、ed delivery,可靠的数据报)、请求回答(request-reply)适于传送少量零星的报文,不需要接收端做任何响应。尽最大努力交会(best effort delivery),又称“可靠的数据报”。对每一个报文产生一个证实给发方用户,不过这个证实不是来自接收端的用户而是来自提供服务的层。,收端用户每收到一个报文,就向发端用户发送一个应答报文。适于“事务(transaction)”中的通信。,15,Service Structuring,Functional requirements of the service behaviourlocal constraints:relations

9、hips between service primitives at a service access point(Local Service Interface,LSI)remote constraints:relationships between service primitives at different service access points(Remote Interaction Function,RIF)Service behaviour can be defined as a composition of these constraints(constraint-orien

10、ted structuring),16,Service Structuring(Cont.),17,Example:Question Answer(QA)service,18,Generic protocol structure,19,Example:QA protocol,20,协议提供的服务:思考题,2-4 在Internet中,有很多应用层协议利用面向连接的TCP协议,也有很多利用无连接的UDP协议。能否通过一些例子来发现一些带有共性的规律(在选择面向连接的服务还是选择无连接服务方面)?2-5 HTTP协议利用有连接的TCP作为传输通道,并且不断地建立连接和断开连接。请说明这样做的好处和

11、坏处。(建议查找与HTTP相关的RFC),21,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,22,协议功能,(N)层协议为了向上一层提供服务,必须实现一定的功能例如,运输层为了向上层提供可靠的面向连接的数据传输服务,一般需要实现下列功能:连接管理、差错控制、流量控制等 基本的协议功能,主要分为两大类:连接管理数据交换 并不限制对所描述的功能进行组装或分解,以便获得更粗的或更细的结构,23,协议功能:连接管理,两种连接:点对点与点对多点三种主要功能:连接建立双方协商工作参数:初始序号,信用量,QoSQoS一般涉及:数据的可靠性、安全性

12、和性能协商失败,则连接建立失败连接释放突然释放:立即关闭文明(Graceful)释放:成功发送(含义?)所有数据后关闭连接维护:如Keep-Alive查询,工作参数变更等,“成功地发送了”的定义依赖于所选择的服务质量:如果选择了可靠服务,服务提供者试图正确地传递所有的SDU,必要时使用重传技术。然而对于一个不可靠的服务,服务提供者在所有的SDU离开本结点时就认为发送成功。,24,协议功能:连接管理(Cont.),在连接建立和释放阶段,为了对延迟的(n)PDU所导致的错误的连接建立和释放进行保护,通常需要采取一些保护措施,例如:TCP协议和OSI的类4运输协议中采取的三次握手(three-way

13、 handshake)机制 Fletcher 和Watson在1978年提出的基于时钟的连接管理方法,它要求连接释放之后足够长的时间内保持连接状态,以便检测所有可能的延迟的重复数据包 其它功能:连接迁移、转发、合并、分离、连接复用和分用等多点连接管理比较复杂:组、根、叶;加入、离开等操作,25,协议功能:数据交换,数据交换:数据的发送与接收n层协议接收n层用户递交的SDU,将之转换成PDU,从(n-1)层通道发送出去;反之,它接收(n-1)层通道的PDU,抽出其中的SDU,将之转交给n层用户。,26,协议功能:数据交换,协议支持的用户数据、类型块数据:用户数据是以整块的形式交给协议,如UDP的

14、报文流数据:用户数据是以一串字节流的形式交给协议传送,如TCP的字节流批数据:在短时间内,用户向协议递交大批数据块优先数据:用户向协议递交的数据有不同优先级别,IPv6支持带外数据(Out of Band Data):在正常的数据流中夹杂着的要求协议优先处理的数据,如OSI的加速数据紧急数据(Expedited Data):用户要求协议中断正常数据的传送而将此类数据优先发送,是带外数据的一种,如TCP的紧急数据。编码数据:协议需要先对这类数据进行某种编码,然后再发送,27,协议功能:数据交换(Cont.),为实现数据传输功能,一般需要实现下列子功能:对齐:把一个(n)PDU中的PCI字段(头部

15、、尾部以及用来传输协议控制信息的有效载荷字段)调整到本地机器存储器的边界,以避免访问的冲突。分段和合段:如果SDU长度大于(n-1)层通道最大允许报文长度,(n)协议必须将(n)SDU分段(segmenting)放入多个(n)PDU中发送(每个PDU中的PCI信息不一样)。接收后要执行相反的过程,即合段(Reassembling)拼装和分离:如果SDU长度很小,为了提高(n-1)层通道利用率,(n)协议需要将多个(n)SDU拼装(Concatenation)成一个(n)PDU后发送。到了接收方,协议将(n)PDU分离出(Seperation)多个(n)SDU来。也可将“拼装”称为“合块”。PD

16、U的装配与拆装:在发送数据之前,(n)协议需要装配PDU,即按照给定格式附上协议控制信息PCI。对于接收后的PDU要对之拆装,拆出PCI。,28,协议功能:数据交换(Cont.),为实现数据传输功能,一般需要实现下列子功能(Cont.)SDU的编码与解码:n层协议可能要对SDU进行编码、加密、压缩(发送方)或解密、复原(接收方)。加检验和:为了实现差错检测功能,(n)层协议加检验和功能接受(n)数据(全部或部分)作为输入,产生一个固定大小的检验和作为输出。检验和的算法通常有以下几类:奇偶校验、循环冗余校验(CRC)、散列函数(如MD5)、密码校验(如数据鉴别算法)。抖动补偿:抖动补偿功能使得协

17、议能接受任何种类的通信量模式的SDU数据流作为输入,产生一个连续的SDU流作为输出。带外数据、紧急数据的发送和接收。,29,协议功能:差错控制,在网络上进行通信会造成数据PDU以一定的概率被损坏、丢失、重复和乱序。协议的差错控制功能负责这些差错的检测及恢复,保证数据的可靠传输。差错控制功能由发送方和接收方共同实现。用来防止丢失、重复和乱序的概念包括:序号、确认、计时器和重传。n层协议的差错控制机制与它的服务提供者提供的(n-1)通道的性质有很大关系,(n-1)通道提供的数据通道的可靠性越高,则n层协议需实现的差错控制机制则越少。,30,协议功能:流量控制,流量控制是指“收端控制发端的发送数据速

18、率以使收端来得及接收,并且使网络不致过载”Why?接收方的接收能力有限缓存不够处理能力不够Examples:Stop and WaitSliding window,31,协议功能:拥塞控制,What is“Congestion”?在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫做拥塞(congestion)。资源(resources):链路容量交换结点中的缓冲区(buffer)处理机 拥塞控制的主要功能防止网络因过载而引起吞吐量下降和迟延增加避免死锁在互相竞争的各用户之间公平地分配资源,32,协议功能:其他功能,无活动控制在通信空闲期间内,周

19、期性地检查所有通信参与者的活跃度一般通过轮询来实现通信量控制N层通信量控制功能监视(n)SDU数据流,检测该SDU的通信量与所给定的性能QoS的详细说明是否一致。若检测到不一致性的SDU,该功能丢弃与之相关的PDU,或产生一个指示违反了性能QoS的信号。,33,协议功能:其他功能(Cont.),通信量填充 N层协议通信量填充功能主要产生虚假的(n)SDU,以防止通信量分析它包含两方面的含义:为产生一个恒定速率的SDU,加入假的SDU;填充SDU到一个恒定的长度。要求填充的通信量既不被识别,又能从实际的SDU内容和SDU通信量中区分出来。通信量整形N层协议的通信量整形功能将突发性的(n)SDU(

20、作为该功能的输入)平滑为连续的(n)SDU流。路由选择,34,协议功能:思考题,35,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,36,协议元素,协议三个要素:语法、语义和同步协议组成,6 个元素:服务原语和服务原语时序协议数据单元PDU和PDU交换时序 协议状态协议事件协议变量协议操作和谓词上述6个组成元素基本涵盖了协议的外部特征、内部机制和运行环境,37,协议元素(Cont.),协议的主体是它的状态-事件转换机制。由于不同协议在实现的功能和协议的复杂性上的差异,并不是所有协议都必须包含以上6种元素,例如:有些协议由于协议机制比较

21、很简单(如,理想条件下的数据链路层协议),可能不包括协议变量,没有专门的PDU定义;有些协议由于不直接向用户提供服务(如流量控制),就没有包含服务原语。多个协议功能组织成一个完整的协议之后,这6种元素一般是必须的,38,协议元素(Cont.),不同文献中对于协议的组成元素的种类和名称可能会有所不同,例如:文献Holz91将协议的组成分为5个部分:通信环境、提供的服务、词汇表、消息的编码格式以及时序、规则和过程。,39,协议元素:服务原语及其时序,N层协议所提供的服务是n层协议外部行为的体现。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,需要使用下面一层所提供

22、的服务。n层协议所提供的服务种类很多,如,连接管理、发送和接收数据包服务等。一般用服务规范(Service Specification)来定义和描述n层协议向外部所提供的服务。服务规范定义了服务用户和服务提供者之间的交互作用的规则,包括:服务原语和服务原语时序。,40,协议元素:服务原语及其时序,N 层协议的服务原语和原语参数详细准确地描述了n层协议和它的服务用户之间的接口。根据使用服务原语的角度来考虑,可将服务分为两类:需要证实的服务部分证实的服务不需要证实的服务 根据所提供的服务的不同,为完成一项功能所需的服务原语的个数和服务原语的时序是不一样的。,41,协议元素:服务原语及其时序,用户A

23、,服务层,用户B,Request,Indication,Response,Confirm,Request,Indication,系统A,系统B,需要证实的服务,不需要证实的服务,时间,假定系统A的(n)服务用户A要和系统B中的(n)服务用户B进行通信,用户A先发出Request原语,以调用服务提供者的某个进程,Request原语就引起系统A的(n)实体向某对等实体发出一个协议数据单元PDU,当系统B的(n)实体收到这个PDU后,就向其服务用户发出Indication原语,通常对应于:(1)表示系统B的(n)服务用户应当调用一个适当的协议过程,或者(2)表示服务提供者已经调用了一个必要的过程。,

24、42,协议元素:服务原语及其时序,用户A,服务层,用户B,Request,Indication,Response,Confirm,Request,Indication,系统A,系统B,需要证实的服务,不需要证实的服务,时间,假定系统A的(n)服务用户A要和系统B中的(n)服务用户B进行通信,接着,服务用户B发出Response原语,用以完成刚才Indication原语所调用的过程。,这时,协议又产生一个协议数据单元PDU,通过网络到达系统A。,最后,系统A的(n)实体发出Confirm原语,表示完成了先前由服务用户A发出的Request原语所调用的过程。,43,协议元素:服务原语及其时序(Co

25、nt.),用户A,服务层,用户B,Request,Indication,Response,Confirm,Request,Indication,系统A,系统B,需要证实的服务,不需要证实的服务,时间,假定系统A的(n)服务用户A要和系统B中的(n)服务用户B进行通信,44,协议元素:服务原语及其时序,一个完整的服务原语通常包括原语名字、原语类型和原语参数三大部分。原语名字和原语类型一般都用英文写出,两者之间用圆点或空格隔开,原语参数则可用中文表示,用括号与前面两部分隔开。T-CONNECT.request(被叫地址,主叫地址,.),运输层,连接,原语名字,原语类型,原语参数,请求,45,协议元

26、素:PDU及其时序,N层协议的PDU从语法上和语义上详细准确地定义了n层协议实体之间交换的信息的格式 协议使用的词汇表(定义n层协议中所使用的消息以及它们的意义,例如,“ack”可被定义成接收方正确接收到数据包之后的应答,“nak”则可被定义为接收到错误的数据包时的应答);PDU编码格式(协议的语法定义,它包括数据长度、控制消息长度以及每个字段的定义等)协议还必须描述PDU交换的时序(即,协议同步)。,46,协议元素:PDU及其时序,例如:OSI类4运输协议的连接建立过程(三次握手)需要用到三个PDU:CR(连接请求),CC(连接证实),AK(确认),运输层,会话层,会话层,T-CONNECT

27、.request,T-CONNECT.confirm,T-CONNECT.indication,T-CONNECT.response,CR,CC,AK,系统 A,系统 B,时间,47,协议元素:PDU及其时序,在定义PDU的格式时,有几点要特别注意:PCI中的序号域:序号主要是用于检测丢失的或重复的PDU。序号域的长度是协议设计中一个必须考虑的因素,它与协议的流量控制方法、数据域的长度和信道特点(特别是差错率)有关。PDU中的数据域的长度:每个PDU所携带的数据的多少取决于多种因素,如信道质量的好坏,底层协议支持的最大传输长度等。数据越长,则出错的可能性越大,从而导致重传,降低了协议的效率;如

28、果PDU中的数据越短,虽然出错的可能性降低了,但PDU中的冗余信息与有效负载之比又太大,同样降低了协议的效率。现实中的协议设计大多采用理论计算与实验相结合的方式来确定数据域的长度。,48,协议元素:PDU及其时序,在定义PDU的格式时,有几点要特别注意(Cont.):PDU长度的调整:在设计PDU的PCI中的各个协议字段时,通常要考虑字节定界(alignment)的问题。非定界的内存访问有时会导致内存访问错误。很多协议设计时在PCI中添加一些冗余的字节,以实现4字节或8字节定界(大多数操作系统中是以4字节定界的)。(参考ATM的信令协议)如果PDU长度不是4字节整数倍时,也常采用添加一些冗余字

29、节的方式来方便系统的处理。,49,协议元素:协议状态,协议状态分两种:局部状态:局部状态为单个协议实体在某时刻的执行状况全局状态:全局状态为参与执行某种协议功能的所有协议实体(包括(n-1)层通道)状态之总和。N层协议必须定义所有的协议状态。,50,协议元素:协议事件,根据用途来分,两类事件:输入事件,共有三类:收到一个PDU;收到n层服务用户的一条服务原语;内部事件(如计时器超时)输出事件,共有两类:发出一个PDU;向n层服务用户发出一条服务原语。根据事件的作用范围来分,可将事件分为:通信事件:收发服务原语或收发PDU,又可分为:同步事件(或协同事件)和异步事件内部事件:如计时器超时,51,

30、协议元素:协议事件(Cont.),协议事件的三个性质:成对性:指一个事件的发生总是伴随着另一个事件的发生。通信事件是指收发服务原语或收发PDU,它是成对出现的,具有成对性。内部事件不是成对出现的。例如:n层用户发出服务原语(输出事件)和n层协议接收到该服务原语(输入事件)成对出现在(n)ASP的两侧,(n)ASP为事件发生点。例如:n层协议实体A发出一个PDU和B收到该PDU是一对通信事件,它们出现在两个(n-1)ASP上,即出现在两个不同的事件发生点上。,52,协议元素:协议事件(Cont.),协议事件的三个性质:(Cont.)原子性:指事件要么不发生,一旦发生就一定完成。具有原子性的事件称

31、为原子事件(atomic events)。例如:当n层协议实体向(n-1)通道输出一个报文时,输出一旦启动,即便是发送失败(通常是指通道丢失了该报文),事件“输出报文”也被认为已发生。时序性:指发生的事件在时间上是有先后顺序的。我们在前面已讲过服务原语的交换时序和协议数据单元的交换时序。由于通信事件是由服务原语和PDU的交换引起的,因此它们也决定了通信事件的时序性。事件时序性决定了状态的时序性。,53,协议元素:协议变量,协议变量:存贮协议运行的历史数据、运行参数的变量,以及协议机制本身所设置的变量。常见的协议变量有:发送序号变量接收序号变量重发时间间隔变量,54,协议元素:协议操作和谓词,每

32、种协议功能都是通过一组协议过程的执行来实现协议过程是指:协议在一定条件下,在输入事件的驱动下,执行一系列的操作(或动作),这些操作包括:产生输出事件 清除和设置计时器修改协议变量改变协议状态,55,协议元素:协议操作和谓词,协议操作只有在一定条件下才能够被执行。这些约束条件涉及协议参数、协议变量、协议运行环境等。将描述这些约束条件的语句称之为谓词(predicate)。描述一个协议过程必须说明该过程所包含的操作以及执行操作的谓词。原子操作(atomic procedures):原子过程包含多个协议操作,并且过程一旦启动之后,所有包括的操作一次性完成,不经历中间协议状态,不被其它过程打断。一般来

33、说,在协议运行时,可将它从一个状态到另一个状态的转换处理成原子过程。,56,协议元素:小结,元素之间的有机联系:在什么协议状态下,在什么输入事件驱动下调用什么协议过程;协议过程在什么条件下(谓词)采取什么协议动作(操作),输出什么事件或修改协议状态和变量。在上述元素中,通常用状态变迁表或状态转换图来描述协议的状态、事件、操作和谓词。,57,协义元素:思考题,2-10 前面提到:一些文献认为“协议由6个元素组”成,另一些文献认为“协议由5个元素组成”,这两者之间有本质区别吗?如果没有,说明为什么?(指出元素之间的对应关系)2-11 协议的各元素之间是有联系的,请简要表达这种联系。2-12 简要分

34、析协议元素中长度、序号、检验和字段的设计原则。,58,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,59,协议组织:概述,协议组织是指将相关协议功能和协议元素组成一个完整协议的过程。在协议组织实施的过程中,可能还要回过头来修改已设计好的协议功能和协议元素。这个过程涉及到以下一些技术和方法:协议层次化协议阶段化协议分类协议的运行方式,60,协议组织:层次化,如果n层协议的功能和结构仍然很复杂,可将n层协议的众多功能进一步分成多个子层。例如,局域网的数据链路层分为逻辑链路控制(LLC)子层和媒体访问控制(MAC)子层。子层的划分可使复杂协

35、议的结构变得清晰,有利于协议的设计、验证、实现和测试。但是,子层的划分可能降低协议性能。,61,协议组织:阶段化,可将n层协议分成多个运行阶段(phase),每个阶段只涉及到一部分协议功能。例如,OSI体系结构中的运输层协议的正常运行分被为三个阶段:连接建立阶段,数据传输阶段,连接撤消阶段。,62,协议组织:分类,协议的复杂性是由于不同用户的需求不一样以及协议的运行环境不同而造成的。因此,可以将协议分成不同类别或不同级别,每类协议只适用于特定用户和特定环境,那么复杂协议就会变得简单。例如,OSI体系结构中的运输层协议被分成5类:TP0,TP1,TP2,TP3,TP4(我们将后面章节对此作进一步

36、的说明)。,63,协议组织:运行方式,协议运行方式有三种,它们是:协议交替(protocol alternative):n层内的多个协议,或一个协议的多个类别,或一个协议的多个协议功能,交替活跃运行的方式。协议并发(protocol concurrency):n层内的多个协议,或一个协议的多个类别,或一个协议的多个协议功能,同时活跃并发运行的方式。协议并行(protocol parallizm):n层内的多个协议,或一个协议的多个类别,或一个协议的多个协议功能,同时活跃,同时运行的方式。,64,协议组织:运行方式(Cont.),如果多个协议或一个协议的多个类别交替活跃,交替执行,那么n层协议可

37、在不同时间内适用不同用户和不同通道的协议环境。如果它们同时活跃,并发运行,那么n层协议可在同一时间内适用多种协议环境。如果它们还能并行运行,协议的性能会更好。这里,请读者注意“并发”和“并行”之间的区别。由于协议的本身并发特性,一个协议内的多个协议功能往往是并发的,如果使它们交替化,则会降低协议性能。例如,协议的顺序控制,超时重发,端到端流量控制等是并发执行的。,65,协议组织:运行方式(Cont.),协议的运行方式不只是协议实现问题,它对协议功能和协议机制有直接影响。多个协议或一个协议的多个类别的交替、并发和并行的实现,需要增加协议选择和协商的功能。由于一个协议的各个功能是与数据相关的,协议

38、设计时必须考虑相关数据对协议功能并行化的影响(协议功能的竞争、碰撞、协议变量的访问冲突等)。,66,内容提要,协议的通信环境,1,协议提供的服务,2,协议功能,3,协议元素,4,协议组织,5,协议文本,6,67,协议文本:概述,协议文本是协议设计阶段的最终结果。大多数情况下,协议文本是用自然语言描述的,以便人们阅读理解。例如,大多数OSI协议标准文本是用自然语言描述的。协议文本必须详细地表述用户要求、工作模式、协议功能、协议组织和协议的各种元素。协议文本中最重要、最主要部分是协议元素的描述。必须对每一项协议元素作出准确、清晰、无二义性的定义。此外,协议的各元素是有机联系的,协议文本应清晰地表达这些关系。,68,协议文本:典型的ISO标准文本内容,关于层的目的和层提供的服务的描述 层提供的服务的服务规范。由底层协议提供的与协议正确、有效地操作有关的服务的说明。层的内部结构的描述,主要包括层内实体以及实体间的关系。层内实体操作的总的、非形式化描述。对等实体间的通信协议的描述。附加信息的描述,如对性能改善的考虑,对协议实现方面的建议等。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号