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