第9讲-滑动窗口协议和HDLC.ppt
《第9讲-滑动窗口协议和HDLC.ppt》由会员分享,可在线阅读,更多相关《第9讲-滑动窗口协议和HDLC.ppt(43页珍藏版)》请在冰豆网上搜索。
计算机网络,窗口滑动机制高级数据链路控制协议HDLCPPP协议,第9讲窗口滑动机制和HDLC,1滑动窗口机制,发送端和接收端分别设定发送窗口和接收窗口。
发送窗口用来对发送端进行流量控制。
发送窗口的大小WT代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。
0,1,2,3,4,5,6,7,0,1,2,发送窗口,WT,不允许发送这些帧,允许发送5个帧,(a),接收端设置接收窗口,在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。
若接收到的数据帧落在接收窗口之外,则一律将其丢弃。
在连续ARQ协议中,接收窗口的大小WR=1。
只有当收到的帧的序号与接收窗口一致时才能接收该帧。
否则,就丢弃它。
每收到一个序号正确的帧,接收窗口就向前(即向右方)滑动一个帧的位置。
同时发送对该帧的确认。
不允许接收这些帧,0,1,2,3,4,5,6,7,0,1,2,WR,准备接收0号帧,(a),滑动窗口的重要特性,只有在接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。
收发两端的窗口按照以上规律不断地向前滑动,因此这种协议又称为滑动窗口协议。
当发送窗口和接收窗口的大小都等于1时,就是停止等待协议。
1.1一位滑动窗口协议,(a)初始时(b)第一个帧发出之后(c)第一个帧接收之后(d)第一个确认收到之后,一位滑动窗口协议的两种情形(双方同时发送分组),(a)正常情况(b)不正常情况,接收窗口1滑动窗口示意图,1.2退后N帧协议,抛弃一种技巧性的假设一个帧到达接收方的传输时间,加上确认帧来回的传输时间是可以忽略不计。
解决策略允许发送过程在阻塞之前发送多达w个帧,而不是1帧。
由于可以适当的选择w,发送过程就可以在等待往返传输的时间内连续传输帧,而不至于填满窗口。
退后N帧的工作原理,在发送完一个数据帧后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。
如果这时收到了接收端发来的确认帧,那么还可以接着发送数据帧。
由于减少了等待时间,整个通信的吞吐量就提高了。
要求接收方的数据链路层必须按次序把分组交给网络层。
当帧n的确认到达时,帧n-1,n-2等也都被自动确认。
退后N帧协议的思路,接收方将出错的帧及其后续帧一起丢弃,对出错的帧不发送确认帧;发送方在出错帧的确认帧超时后,从出错的帧开始重传所有已发送但未被确认的帧。
退后N帧协议窗口大小的约束条件,退后N帧协议窗口大小的约束条件,考虑最大发送窗口大小为8的情况:
发送过程发送帧07帧;帧7的捎带确认最终返回到发送过程;发送过程发送另外8帧07,序号再次为07;现在帧7的另一个捎带确认到达。
问题:
第二次发送的8帧是成功了还是全部丢失了?
发送和接收窗口尺寸小于2k,K(序列号的位数),1.3选择重传协议,如果线路很糟糕,使用退后n帧的协议会浪费大量的带宽重传帧。
解决的策略:
允许接收过程接收并缓存坏帧或丢失帧后面的帧。
接收方只把出错的帧丢弃,其后续帧保存在缓存中,向发送方发送对出错帧的非确认帧(NAK)。
如果落在窗口内并从未接收过,就接受此帧,并存储起来。
直到比它序列号小的所有帧都按次序已经交给了网络层后,此帧才提交给网络层。
选择重传协议的思路,选择重传协议窗口大小的约束条件,发送窗口和接收窗口尺寸大小相同两个窗口的尺寸2k的一半,即2k-1发送窗口和接收窗口尺寸大小不同两个窗口尺寸之和2k。
(a)窗口大小为7的初始化状态(b)7个帧都发送和接收,但无确认时(c)窗口大小为4的初始化状态(d)4个帧都发送和接收,但无确认时,(a)(b)(c)(d),2高级数据链路协议HDLC,由于每个数据帧都必须包括一定的控制信息(如帧的序号、地址、同步信息以及其他的一些控制信息),所以即使连续不停地发送数据帧,信道利用率(即扣除全部的控制信息后的数据率与信道容量之比)也不可能达到100%。
当出现差错时(这是不可避免的),数据帧的不断重传将进一步使信道利用率降低,最佳帧长,若数据帧的帧长取得很短,那么控制信息在每一帧中所占的比例就增大,因而额外开销增大,这就导致信道利用率的下降。
若帧长取得太长,则数据帧在传输过程中出错的概率就增大,于是重传次数将增大,这也会使信道利用率下降。
由此可见,存在一个最佳帧长,在此帧长下信道的利用率最高。
1974年,IBM公司推出了面向比特的规程SDLC(SynchronousDataLinkControl)。
后来ISO把SDLC修改后称为HDLC(High-levelDataLinkControl),译为高级数据链路控制,作为国际标准ISO3309。
HDLC包括流量控制和数据帧交换的维护功能HDLC是一个面向位(把帧当作bit流,而不区分字节)的协议,支持半双工和全双工通信。
2.1HDLC协议概述,2.2三种类型的工作站,主站(主机站或控制站)通过发送命令给其他站和根据它们的响应采取行动来管理数据流从站(目标站或客户站)对来自主站的命令做出响应,不发送命令给其他站,能发送数据给其他站。
组合站(联合站)既扮演主站又扮演从站的角色。
能发送命令给其他站,并能对来自其他组合站的命令做出响应。
2.3三种响应模式,常规响应模式(NBM)主站控制通信从站只能当主站命令或允许时才能发送,用于:
点对点连接主站和单个从站通信;多点连接主站和多个次级站通信。
异步平衡模式(ABM)连接组合站结构中每一个站都能发送数据、控制信息或命令异步响应模式(ARM)主站和从站间的通信从站更独立,能传送数据或控制信息给其他站,不能送发命令。
标志字段F(Flag)为01111110。
在接收端只要找到标志字段就可确定一个帧的位置。
比特,8,8,8,可变,16,8,信息Info,标志F,标志F,地址A,控制C,帧检验序列FCS,透明传输区间,FCS检验区间,2.4HDLC的帧结构,2.4HDLC的帧结构,地址字段(A)的内容取决于所采用的操作方式。
操作方式有主站、从站、组合站之分。
在非平衡结构中,不管是主站发送到从站的帧,还是从站发送到主站的帧,地址字段给出的都是从站地址;在平衡结构中,该字段填入的是应答站的地址。
2.4HDLC的帧结构,控制字段()用于构成各种命令和响应,以便对链路进行监视和控制。
信息字段(I)可以是任意的二进制比特串。
帧校验序列字段(FCS)可以使用16位CRC,对两个标志字段之间的整个帧的内容进行校验。
2.4HDLC的帧结构,2.5帧类型,信息帧用于传送数据,简称I帧,以控制字段的第1位是0来标志,要传送的数据放在信息字段中。
N(S)表示当前发送的信息帧的序号,HDLC采用滑动窗口协议,发送方最多可以连续发送7个帧。
N(R)表示该站所期望接收到的帧的序号,用于捎带确认,而不必单独发送应答帧,在全双工传输中能够提高信道利用率。
2.5帧类型,Pl表示的“询问”带有强制性质,即对方(在复合站通信的情况下对方不一定是次站)必须立即回答。
F=1表明这是回答对方命令的一个响应。
在两个复合站全双工通信时,任何一方都可随时使P=1。
这时对方就要立即回答RR帧,并置Fl。
这样做可以更早地收到对方的确认。
如果不使用P/F比特,则收方不一定马上发出确认帧。
收方可以在发送自己的信息帧时,在某一个信息帧中捎带把确认信息发出(利用N(R)。
P/F是在当P/F为1时才写上P或F,2.5帧类型,监督帧用于差错控制和流量控制,简称S帧,以控制字段的第1、2比特为“10”作标志。
监督帧无信息字段,共48比特长。
它只作为应答使用,所以只有N(R)字段。
2.5帧类型,无编号帧因其控制字段中不包含序号N(S)和N(R)而得名,简称U帧,以控制字段中第1、2比特为“11”来标志。
无编号帧用于提供链路的建立、拆除及其它多种控制功能。
当提供不可靠无连接服务时,也可用来传输无编号信息帧。
两个复合站的全双工通信示例,3因特网的点对点协议PPP3.1PPP协议的工作原理,现在全世界使用得最多的数据链路层协议是点对点协议PPP(Point-to-PointProtocol)。
用户使用拨号电话线接入因特网时,一般都是使用PPP协议。
用户拨号入网的示意图,路由器,调制解调器,调制解调器,因特网服务提供者(ISP),用户家庭,拨号电话线,使用TCP/IP的PPP连接,路由选择进程,至因特网,PC机,用户拨号入网的示意图,PPP协议,1992年制订了PPP协议。
经过1993年和1994年的修订,现在的PPP协议已成为因特网的正式标准RFC1661。
PPP协议有三个组成部分一个将IP数据报封装到串行链路的方法链路控制协议LCP(LinkControlProtocol)网络控制协议NCP(NetworkControlProtocol),PPP协议的帧格式,PPP有一个2个字节的协议字段当协议字段为0x0021时,PPP帧的信息字段就是IP数据报若为0xC021,则信息字段是PPP链路控制数据若为0x8021,则表示这是网络控制数据,IP数据报,1,2,1,1,字节,1,2,不超过1500字节,PPP帧,先发送,7E,FF,03,F,A,C,FCS,F,7E,协议,信息部分,首部,尾部,透明传输问题,当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充(和HDLC的做法一样)。
当PPP用在异步传输时,就使用一种特殊的字符填充法。
例题,不提供使用序号和确认的可靠传输,PPP协议之所以不使用序号和确认机制是出于以下的考虑:
在数据链路层出现差错的概率不大时,使用比较简单的PPP协议较为合理。
在因特网环境下,PPP的信息字段放入的数据是IP数据报。
数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。
帧检验序列FCS字段可保证无差错接受。
3.2PPP协议的工作状态,当用户拨号接入ISP时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。
PC机向路由器发送一系列的LCP分组(封装成多个PPP帧)。
这些分组及其响应选择一些PPP参数,和进行网络层配置,NCP给新接入的PC机分配一个临时的IP地址,使PC机成为因特网上的一个主机。
通信完毕时,NCP释放网络层连接,收回原来分配出去的IP地址。
接着,LCP释放数据链路层连接。
最后释放的是物理层的连接。
PPP协议的状态图,建立,失败,失败,NCP配置,鉴别成功,通信结束,载波停止,检测到载波,双方协商一些选项,鉴别,网络,打开,终止,静止,小结,网络接口层是TCP/IP体系结构的基础,虽然没有制定统一的网络接口层协议标准,但要求能和高层协议接口。
这一层不仅涉及网络的物理连接介质,也涉及很多网络通信的基本概念和基本技术。
在数据传输部分介绍的几个概念都是数据通信中非常重要的概念,其中包括:
同步技术、多路复用技术、数据交换技术。
HDLC是面向比特的数据链路层控制协议,适用于点对点和多点连接,可用于半双工和全双工通信,并可使用退后n帧和选择重传协议。