第2章协议设计(2 基本内容)ppt课件.ppt
《第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(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章协议设计2 基本内容ppt课件 协议 设计 基本 内容 ppt 课件
链接地址:https://www.31ppt.com/p-2104216.html