第2章-协议设计(2-基本内容)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

XX大学XX学院XX系第2章协议设计(2-基本内容)第2章协议设计(2-基本内容)2内容提要协议的通信环境1协议提供的服务2协议功能3协议元素4协议组织5协议文本6第2章协议设计(2-基本内容)3协议的通信环境n层协议的通信环境用户要求(n-1)层通道(Channel)的性质•N层中任何两个协议实体通过(n-1)SAP所形成的数据逻辑通路称为(n-1)层通道(图2-1)n层协议运行时的操作系统和硬件环境通信环境是协议设计要优先考虑的问题第2章协议设计(2-基本内容)4协议模型分层设计,n层协议模型(n+1)实体(n)实体(n+1)实体(n)实体(n)协议提供(n-1)服务提供(n)服务(n)服务用户(n)服务提供者通过(n-1)连接进行通信(n+1)层(n-1)层(n)层nSAP(n-1)SAPnSAP(n-1)SAP(n-1)SPs(n-1)SPs(n)SPs(n)SPs(n)PDUs(N-1)通道第2章协议设计(2-基本内容)5通道的类型主要有三类:空通道(emptychannels):•报文的发送时间和延时时间为0的通道•报文一旦从输入端进入就立即在输出端出现非缓冲通道(non-bufferedchannels)•在任何时刻,最多只有一个正在传送中的报文的通道缓冲通道(bufferedchannels)•允许有多个报文停留的通道(n-1)层通道的性质对n层协议的构成有非常重要的影响第2章协议设计(2-基本内容)6通道性质通道的形成方式:A和B建立并独占一条连接,此时(n-1)层应提供有连接服务A和B与其它协议实体一起共享一条连接A和B利用(n-1)层提供的无连接服务进行通信如果(n-1)层为物理层,A和B可独占一条物理信道,或共享一条物理信道通道的队列性质:除物理层外,一般可将(n-1)层通道看作是队列通道,即一个数据报文从n层源端协议实体发出之后要在n层以下各层多次存贮转发,在每个存贮转发处就存在一个队列平均队列长度以及最大队列允许长度是队列的主要性质•队列越长,那么数据报文在通道中的延时就会越大;•如果队列长度达到最大允许长度,那么后续的数据报文将会丢失第2章协议设计(2-基本内容)7通道性质(Cont.)回程时延RTT(RoundTripTime)RTT是报文从n层源端实体发出到该报文的认可信息达到该实体之间的时间,它包括目标实体收到报文之后,对报文进行处理然后发出认可信息的时间RTT是协议的最重要参数之一通道的差错特性参数:报文的出错率、报文的丢失率、报文的重复率、报文失序率差错特性与它的形成方式有关:•如果通道是利用(n-1)层有连接服务形成的,或是物理信道,那么传递的报文不会失序•如果通道利用(n-1)层的无连接服务形成的,则报文的顺序就有可能失序第2章协议设计(2-基本内容)8通道性质(Cont.)通道的可靠性通道的可靠性是指通道无故障,如断连、复位等报文的最大长度或最大传输单元(MTU)通道所能接收的最大报文长度主要影响n层协议的报文分段,拼接等功能常见例子,TCP,IP,Ethernet的MTU通道的工作方式单工、半双工、全双工同步与异步第2章协议设计(2-基本内容)9通道性质(Cont.)通道的通信方式点对点:•N层任意两个协议实体利用一条(N-1)层通道通信,协同完成指定协议功能•如TCP连接,UDP点对点方式点对多点•N层任意两个以上协议实体利用多条(N-1)层通道通信,协同执行一定任务•如ATM的点对多点连接,UDP的广播方式通道的安全性对用户数据加密和安全控制(如口令,特权)第2章协议设计(2-基本内容)10通道性质(Cont.)通道的带宽(Bandwidth)原始的意义:某个信号具有的频带宽度。单位:赫兹(Hz)、千赫(kHz)、兆赫(MHz)早期的通信主干线主要传送模拟信号,因此通信线路的带宽(也叫通频带)用频率来度量。数字化主干线路:用传送的数字信号的数据率(即数据率或比特率)来表示线路的带宽。单位:比特每秒(bit/s)、千比特每秒kbit/s、兆比特每秒Mbit/s(106bit/s)、吉比特每秒Gbit/s(109bit/s)或太比特Tbit/s(1012bit/s)。通道的带宽可进一步分为:前向带宽、后向带宽、峰值带宽等(QoS)第2章协议设计(2-基本内容)11协议的通信环境:小结经验表明,大多数的协议失败是由于对协议运行的环境作出了错误的假定设计者必须确保直接定义这些环境假定,而不能隐含地指示它们第2章协议设计(2-基本内容)12协议的通信环境:思考题2-3请以HDLC和FrameRelay为例来讨论协议的通信环境对协议的影响。(提示:可以从差错控制机制来考虑)第2章协议设计(2-基本内容)13内容提要协议的通信环境1协议提供的服务2协议功能3协议元素4协议组织5协议文本6第2章协议设计(2-基本内容)14协议提供的服务从通信的角度:面向连接的(connection-oriented)服务•三个阶段:连接建立、数据传输和连接释放•在传送数据时是按序传送的•网络层:虚电路服务•比较适合于在一定期间内要向同一目的地发送许多报文的情况•永久虚电路:适于两个用户需要经常进行频繁的通信的情况无连接的(connectionless)服务•不能保证报文的丢失、重复、失序•三种类型:数据报(datagram)、证实交付(confirmeddelivery,可靠的数据报)、请求回答(request-reply)•适于传送少量零星的报文不需要接收端做任何响应。尽最大努力交会(besteffortdelivery)又称“可靠的数据报”。对每一个报文产生一个证实给发方用户,不过这个证实不是来自接收端的用户而是来自提供服务的层。收端用户每收到一个报文,就向发端用户发送一个应答报文。适于“事务(transaction)”中的通信。第2章协议设计(2-基本内容)15ServiceStructuringFunctionalrequirementsoftheservicebehaviourlocalconstraints:relationshipsbetweenserviceprimitivesataserviceaccesspoint(LocalServiceInterface,LSI)remoteconstraints:relationshipsbetweenserviceprimitivesatdifferentserviceaccesspoints(RemoteInteractionFunction,RIF)Servicebehaviourcanbedefinedasacompositionoftheseconstraints(constraint-orientedstructuring)第2章协议设计(2-基本内容)16ServiceStructuring(Cont.)ServiceproviderUserCUserBUserA(Total)RIFLSIBLSICLSIASAPCSAPASAPB第2章协议设计(2-基本内容)17Example:QuestionAnswer(QA)serviceUserAUserQQA-ServiceproviderSAPASAPQQ-reqA-reqA-indQ-ind第2章协议设计(2-基本内容)18GenericprotocolstructureLowerLevelServiceproviderUserCUserAPEAPECServiceproviderRIFbetweenLSIAandLSICUPFCLPFCUPFATFACFALLSICLLSIALSICLSIASAPCSAPAPDUexchange第2章协议设计(2-基本内容)19Example:QAprotocolConnectionlessserviceQAServiceproviderPECPEASAPCSAPAA-reqD-indD-indQ-reqD-reqA-indD-reqQ-ind第2章协议设计(2-基本内容)20协议提供的服务:思考题2-4在Internet中,有很多应用层协议利用面向连接的TCP协议,也有很多利用无连接的UDP协议。能否通过一些例子来发现一些带有共性的规律(在选择面向连接的服务还是选择无连接服务方面)?2-5HTTP协议利用有连接的TCP作为传输通道,并且不断地建立连接和断开连接。请说明这样做的好处和坏处。(建议查找与HTTP相关的RFC)第2章协议设计(2-基本内容)21内容提要协议的通信环境1协议提供的服务2协议功能3协议元素4协议组织5协议文本6第2章协议设计(2-基本内容)22协议功能(N)层协议为了向上一层提供服务,必须实现一定的功能例如,运输层为了向上层提供可靠的面向连接的数据传输服务,一般需要实现下列功能:连接管理、差错控制、流量控制等基本的协议功能,主要分为两大类:连接管理数据交换并不限制对所描述的功能进行组装或分解,以便获得更粗的或更细的结构第2章协议设计(2-基本内容)23协议功能:连接管理两种连接:点对点与点对多点三种主要功能:连接建立•双方协商工作参数:初始序号,信用量,QoS•QoS一般涉及:数据的可靠性、安全性和性能•协商失败,则连接建立失败连接释放•突然释放:立即关闭•文明(Graceful)释放:成功发送(含义?)所有数据后关闭连接维护:如Keep-Alive查询,工作参数变更等“成功地发送了”的定义依赖于所选择的服务质量:如果选择了可靠服务,服务提供者试图正确地传递所有的SDU,必要时使用重传技术。然而对于一个不可靠的服务,服务提供者在所有的SDU离开本结点时就认为发送成功。第2章协议设计(2-基本内容)24协议功能:连接管理(Cont.)在连接建立和释放阶段,为了对延迟的(n)PDU所导致的错误的连接建立和释放进行保护,通常需要采取一些保护措施,例如:TCP协议和OSI的类4运输协议中采取的三次握手(three-wayhandshake)机制Fletcher和Watson在1978年提出的基于时钟的连接管理方法,它要求连接释放之后足够长的时间内保持连接状态,以便检测所有可能的延迟的重复数据包其它功能:连接迁移、转发、合并、分离、连接复用和分用等多点连接管理比较复杂:组、根、叶;加入、离开等操作第2章协议设计(2-基本内容)25协议功能:数据交换数据交换:数据的发送与接收n层协议接收n层用户递交的SDU,将之转换成PDU,从(n-1)层通道发送出去;反之,它接收(n-1)层通道的PDU,抽出其中的SDU,将之转交给n层用户。第2章协议设计(2-基本内容)26协议功能:数据交换协议支持的用户数据、类型块数据:用户数据是以整块的形式交给协议,如UDP的报文流数据:用户数据是以一串字节流的形式交给协议传送,如TCP的字节流批数据:在短时间内,用户向协议递交大批数据块优先数据:用户向协议递交的数据有不同优先级别,IPv6支持带外数据(OutofBandData):在正常的数据流中夹杂着的要求协议优先处理的数据,如OSI的加速数据紧急数据(ExpeditedData):用户要求协议中断正常数据的传送而将此类数据优先发送,是带外数据的一种,如TCP的紧急数据。编码数据:协议需要先对这类数据进行某种编码,然后再发送第2章协议设计(2-基本内容)27协议功能:数据交换(Cont.)为实现数据传输功能,一般需要实现下列子功能:对齐:把一个(n)PDU中的PCI字段(头部、尾部以及用来传输协议控制信息的有效载荷字段)调整到本地机器存储器的边界,以避免访问的冲突。分段和合段:如果SDU长度大于(n-1)层通道最大允许报文长度,(n)协议必须将(n)SDU分段(segmenting)放入多个(n)PDU中发送(每个PDU中的PCI信息不一样)。接收后要执行相反的过程,即合段(Rea

1 / 68
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功