




已阅读5页,还剩99页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 1 第 4 章 数据链路层 数据链路层的基本概念 差错控制方法 数据链路层协议 数据链路层控制规程 2 数据链路层 数据链路层使用的信道主要有以下两种类型: v点对点信道。这种信道使用一对一的点对点通 信方式。 v广播信道。这种信道使用一对多的广播通信方 式,因此过程比较复杂。广播信道上连接的主 机很多,因此必须使用专用的共享信道协议来 协调这些主机的数据发 3 4.1 数据链路层的基本概念 4.1.1 数据链路层的简单模型 局域网广域网 主机 H1 主机 H2 路由器 R1 路由器 R2 路由器 R3 电话网 局域网 主机 H1 向 H2 发送数据 链路层 应用层 运输层 网络层 物理层 链路层 应用层 运输层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 R1R2R3 H1H2 从层次上来看数据的流动 4 数据链路层的简单模型( 续) 局域网广域网 主机 H1 主机 H2 路由器 R1 路由器 R2 路由器 R3 电话网 局域网 主机 H1 向 H2 发送数据 链路层 应用层 运输层 网络层 物理层 链路层 应用层 运输层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 R1R2R3 H1H2 仅从数据链路层观察帧的流动 5 IP 数据报 1010 0110 帧 取出 数据 链路层 网络层 链路 结点 A结点 B 物理层 数据 链路层 结点 A结点 B 帧 (a) (b) 发送 帧 接收 链路 IP 数据报 1010 0110 帧 装入 数据链路层传送的是帧 6 4.1.2 链路和数据链路 v链路(link)是一条无源的点到点的物理线路段 ,中间没有任何其他的交换结点。 一条链路只是一条通路的一个组成部分。 v数据链路(data link) 除了物理线路外,还必 须有通信协议来控制这些数据的传输。若把实 现这些协议的硬件和软件加到链路上,就构成 了数据链路。 现在最常用的方法是使用适配器(即网卡)来实现 这些协议的硬件和软件。 一般的适配器都包括了数据链路层和物理层这两层 的功能。 7 数据链路层像个数字管道 v常常在两个对等的数据链路层之间画出一个数 字管道,而在这条数字管道上传输的数据单位 是帧。 v采用复用技术,一条物理链路可以构成多条数 据链路 v早期的数据通信协议曾叫作通信规程 (procedure)。因此在数据链路层,规程和协 议是同义语。 结点结点 帧帧 8 4.2 三个基本问题 (1) 帧定界 (2) 透明传输 (3) 差错控制 9 4.2.1 帧定界 v帧定界(framing)就是确定帧的界限。 帧结束 帧首部 IP 数据报 帧的数据部分帧尾部 MTU 数据链路层的帧长 从这里开始发送 帧开始 10 用控制字符进行帧定界的方法举例 SOH 装在帧中的数据部分 帧 帧开始符帧结束符 发送在前 EOT 11 4.2.2 透明传输 SOHEOT 出现了“EOT” 被接收端当作无效帧而丢弃 被接收端 误认为是一个帧 数据部分 EOT 完整的帧 发送在前 12 解决透明传输问题 v发送端的数据链路层在数据中出现控制字符 “SOH”或“EOT”的前面插入一个转义字符 “ESC”(其十六进制编码是 1B)。 v字节填充(byte stuffing)或字符填充(character stuffing)接收端的数据链路层在将数据送往 网络层之前删除插入的转义字符。 v如果转义字符也出现数据当中,那么应在转义字 符前面插入一个转义字符。当接收端收到连续的 两个转义字符时,就删除其中前面的一个。 13 SOH SOHESCSOHEOTESC ESCzESCyESCzESCx 原始数据 EOT EOT 经过字节填充后发送的数据 字节填充字节填充字节填充字节填充 发送 在前 帧开始符帧结束符 用字节填充法解决透明传输的问题 14 14 4.2.3 差错控制 1 1、差错的产生、差错的产生 在数据通信过程中,由于信号的衰减、噪音的干扰,通信 线路上的数据信号与干扰信号叠加在一起,会造成接收端接 收到发生差错的数据。我们把通过通信信道后接收的数据与 发送数据不一致的现象称为传输差错,通常简称为差错。 (b) 实际环境 (a) 理想状态 01011010010 信 源信 宿 01011010010 01011010010 信 源信 宿 噪音干扰 01010010110 出错 随机性错误 前后出错位没有一定的关系 突发性错误 前后出错位有一定的相关性 15 15 2.差错控制的方式 v 反馈纠错 v 前向纠错 v 混合纠错 v 反馈检验 16 图 反馈重发纠错的实现机制 2.差错控制的方式 1 1、反馈重发检错方法、反馈重发检错方法 反馈重发检错方法又称自动请求重发(ARQ)方法,它是由 发送端发出能够检测错误的编码,接收端依据检错码的编码规 则进行判断。检测出差错后通过反馈信道告诉发送端重新发送 数据,直到无差错为止。 信源 校验码 编辑器 发送装置 存储器 反馈信号 控制器 接收装置 信宿 传 输 信 道 发送端 接收端 反馈信号 控制器 校验码 编辑器 17 2、前向纠错、前向纠错 前向纠错方法(FEC)是由发送数据端发出能纠错的编码, 接收端收到这些编码后便进行检测,当检测出差错后自动纠正 差错。 图 FEC方法原理图 信 源 纠错码 编码器 发 送 器 接 收 器 纠错码 编码器 信 宿 噪音源 前向信道 优点:不需要反馈信道,也不存在由于反复重发而延误时间 ,实时性好。 缺点:附加的监督码较多,传输效率低,纠错设备比检错设 备复杂。 2.差错控制的方式 18 18 2.差错控制的方式 3、混合纠错 它是反馈纠错和前向纠错两种方式的结合。发送 端的码字不仅有检错能力,而且还具有一定的纠 错能力。接收端收到码字后,译码器首先检验错 误情况,如果在码的纠错能力以内,则自动纠错 ;如果超过了码的纠错能力,接收端通过反馈信 道命令发送端重发来纠正错误。 q 在数据通信和计算机网络中,几乎都采用ARQ差错控制 技术。在采用无线电信道的通信系统中,由于信道误 码率较高,大多采用HEC方式的差错控制技术。 19 19 差错控制的基本方式差错控制的基本方式 q反馈校验方式又称回程校验。 接收端把收到的数据序列原封不动地转发回发送端,发 端将原发送的数据序列与返送回的数据序列比较。如果发现 错误,则发送端进行重发,直到发端没有发现错误为止。 优点:不需要纠错、检错的编解码器,设备简单。 缺点:需要有双向信道,实时性差,且每一信码都相当 于至少传送了两次,所以传输效率低。 4.反馈检验 20 20 21 21 4.2.4差错控制编码 q原理: q编码:在向信道发送数据前,先按照某种关系将信息位加 上一定的冗余位(r位),构成一个码字再发送。 q校验:接收端收到码字后查看信息位和冗余位,并检查它 们之间的关系,以发现传输过程是否有差错发生。 q检错码:能自动发现差错的编码。 q纠错码:不仅能发现差错,且能自动纠错。 q编码效率R:码字中信息位(k位)所占的比例。 R=k/n=k/(k+r) 是衡量编码性能好坏的一个重要参数 编码效率越高,则信道中用来传送信息码元的有效利 用率越高。 22 22 4.2.4 检错码与纠错码 v纠错码: 每个传输的分组带上足够的冗余信息; 接收端能发现并自动纠正传输差错。 v检错码: 分组仅包含足以使接收端发现差错的冗余信息; 接收端能发现出错,但不能确定哪一比特是错的,并且 自己不能纠正传输差错。 23 23 常用的检错码 v奇偶校验码 垂直奇(偶)校验 水平奇(偶)校验 水平垂直奇(偶)校验(方阵码) v循环冗余编码CRC 目前应用最广的检错码编码方法之一 24 24 循环冗余码 一般说来,纠错码的编码效率总不及检错码的 编码效率,因而在通信中用得较多的还是检 错码和ARQ方式。奇偶校验码作为一种检错 码虽然简单,但是漏检率太高。 在计算机网络和数据通信中,用得最广泛 的检错码是一种漏检率低也便于实现的循环 冗余码CRC(Cyclic Redundancy Code)。 循环冗余检验的原理 25 25 v循环冗余码 CRC码又称为多项式码。 任何一个由二进制数位串组成的代码都可 由一个只含有0和1两个系数的多项式建立一 一对应的关系。 110001,表示成多项式 x5 + x4 + 1 26 26 循环冗余码 (CRC) v 循环冗余码(CRC码,多项式编码) 110001,表示成多项式 x5 + x4 + 1 v 生成多项式P(x) 发方、收方事前商定; n次(n+1位) 生成多项式的高位和低位必须为1 生成多项式必须比传输信息对应的多项式短 模2运算:加法不进位,减法不去位,除法中的减法仍 然采用模2运算 27 27 循环冗余检验的原理 v在数据链路层传送的帧中,广泛使用了循环冗 余检验 CRC 的检错技术。 v假设待传送的数据 M = 1010001101(共k bit )。我们在M的后面再添加供差错检测用的 n bit 冗余码一起发送。 28 28 冗余码的计算 v用二进制的模 2 运算进行 2n 乘 M 的运算,这 相当于在 M 后面添加 n 个 0。 v得到的 (k + n) bit 的数除以事先选定好的 长度为 (n + 1) bit 的数 P,得出商是 Q 而 余数是 R,余数 R 比除数 P 至少要少1 个比 特。 29 29 冗余码的计算举例 v设 n = 5, P = 110101,模 2 运算的结果是 :商 Q = 1101010110, 余数R = 01110。 v将余数 R 作为冗余码添加在数据 M 的后面发 送出去,即发送的数据是101000110101110, 或 2nM + R。 30 30 1101010110 Q 商 除数 P 110101 101000110100000 2nM 被除数 110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110 R 余数 循环冗余检验的原理说明 31 31 举例: 发送方 接收方 32 32 vCRC码基本思想 校验和(checksum)加在帧尾,使带校验和 的帧的多项式能被P(x)除尽;收方接收时, 用P(x)去除它,若有余数,则检测传输出错 。 v是否得出的余数为0,就一定没有差错? 33 帧检验序列 FCS v在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。 v循环冗余检验 CRC 和帧检验序列 FCS并不等 同。 CRC 是一种常用的检错方法,而 FCS 是添 加在数据后面的冗余码。 FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法。 34 接收端对收到的每一帧进行 CRC 检验 v若得出的余数 R = 0,则判定这个帧没有差错, 就接受(accept)。 v若余数 R 0,则判定这个帧有差错,就丢弃。 v但这种检测方法并不能确定究竟是哪一个或哪几 个比特出现了差错。 v只要经过严格的挑选,并使用位数足够多的除数 P ,那么出现检测不到的差错的概率就很小很小。 35 应当注意 v仅用循环冗余检验 CRC 差错检测技术只能做到无 差错接受(accept)。 v“无差错接受”是指:“凡是接受的帧(即不包括 丢弃的帧),我们都能以非常接近于 1 的概率认 为这些帧在传输过程中没有产生差错”。 v也就是说:“凡是接收端数据链路层接受的帧都没 有传输差错”(有差错的帧就丢弃而不接受)。 v要做到“可靠传输”(即发送什么就收到什么)就 必须再加上确认和重传机制。 36 36 标准CRC生成多项式G(x) v CRC-12 G(x)= x12+x11+x3+x2+x+1 v CRC-16 G(x)= x16+x15+x2+1 v CRC-CCITT G(x)= x16+x12+x5+1 v CRC-32 G(x)= x32+x26+x23+x22+x16+x12+x11+ x10+x8+x7+x5+x4 + x2+x+1 严格挑选,使用位数较多的除数,出现检测不到的差 错的概率几乎为0 37 37 vStop-and-Wait Protocol(SWP) vGO BACK N(GBN) vSelective Repeat Protocol(SRP) 4.3 数据链路层协议 38 4.3.1 Stop-and-Wait Protocol(SWP) 数据链路层的简单模型 局域网广域网 主机 H1 主机 H2 路由器 R1 路由器 R2 路由器 R3 电话网 局域网 主机 H1 向 H2 发送数据 链路层 应用层 运输层 网络层 物理层 链路层 应用层 运输层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 R1R2R3 H1H2 从层次上来看数据的流动 v完全理想化的数据传输 39 39 数据链路层的简单模型( 续) 局域网广域网 主机 H1 主机 H2 路由器 R1 路由器 R2 路由器 R3 电话网 局域网 主机 H1 向 H2 发送数据 链路层 应用层 运输层 网络层 物理层 链路层 应用层 运输层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 R1R2R3 H1H2 仅从数据链路层观察帧的流动 40 40 1.完全理想化的数据传输 数据链路层 主 机 A 缓存 主 机 B 数据链路 AP2AP1 缓存 发送方接收方 帧 高层 帧 4.3.1 Stop-and-Wait Protocol(SWP) 41 41 完全理想化的数据传输所基于的两个假定 v假定 1: 链路是理想的传输信道,所传送的 任何数据既不会出差错也不会丢失。 v假定 2: 不管发方以多快的速率发送数据, 收方总是来得及收下,并及时上交主机。 这个假定就相当于认为:接收端向主机交 付数据的速率永远不会低于发送端发送数 据的速率。 42 42 理想的数据传输 Data0 Data1 Data2 送给主机B 送给主机B 送给主机B AB 时间 43 43 2 .具有最简单流量控制的数据链路层协议 v现在去掉上述的第二个假定。但是,仍然保留第一个 假定,即主机 A 向主机 B传输数据的信道仍然是无 差错的理想信道。然而现在不能保证接收端向主机交 付数据的速率永远不低于发送端发送数据的速率。 v由收方控制发方的数据流,乃是计算机网络中流量控 制的一个基本方法。 44 44 具有最简单流量控制的数据链路层协议 v基本思想 v发送方发送一帧就暂停下来,接收方收到数据 帧后就交付给主机,然后发一信息给发送方, 表示接收任务已经完成,这时发送方再继续发 送下一帧。 v流量控制的基本方法:接收方控制发送方的数 据流量。 v接收方的接收缓存大小:一个数据帧大小 45 45 两种情况的对比(传输均无差错) AB DATA DATA DATA DATA 送主机 B 送主机 B 送主机 B 送主机 B AB DATA 送主机 B DATA 送主机 B 时 间 不需要流量控制需要流量控制 46 46 3.实用的停止等待协议 v基本原理 v接收方B在收到发来的一个数据帧后,利用循 环冗余校验码CRC来检查帧的正确性。若正确 ,即交付给主机B,同时向主机A发送一个确 认帧ACK,发送方A收到ACK后继续发送;若 出错,向A发送否认帧NAK,A收到NAK后重 传出错的数据帧,若重传超过一定次数后,即 不再重传,而向上一层报告。 47 47 示意图 ABAB Data0 ACK 送主机B 送主机B Data1 ACK Data0 NAK Data0 重发 ACK Data1 送主机B 正常情况 数据帧出错 48 48 实际出现的问题及解决方法 第一个出现的问题:死锁 出现的原因: 1. 数据帧丢失 2. 确认帧丢失 解决的方法:超时重传 49 49 解决方法示意图 v Tout Tout 丢失 丢失 Data0 Data0 重传 ACK 重传 Data0 Data0 ACK 数据帧丢失 确认帧丢失 ACK 50 50 重传时间的选取 v重传时间太短:导致在正常情况下,接收方的确认信 息到发送方之前,发送方过早地重发数据 v重传时间太长:导致双方都等待过长的时间 v适合的大小:略大于“从发完数据帧到收到确认帧所 需的平均时间” 51 51 出现的问题2:重复帧 v重复帧的含义:接收方连续收到两个完全一样的数 据帧 v产生的原因:确认帧丢失,超时重传 v解决的方法:为每一个数据帧编一个序号 编号系统的二进制位数 停止等待协议的编号系统的二进制位数 v接收方收到重复帧后采取的措施:丢弃重复帧并且 重发确认帧给发送方 52 52 3 实用的停止等待协议 时 间 AB DATA0 送 主 机 ACK DATA1 送 主 机 ACK (a) 正常情况 AB DATA0 DATA0 送 主 机 ACK (c) 数据帧丢失 重 传 tout 丢 失 ! AB DATA0 送 主 机 ACK DATA0 丢 弃 ACK (d) 确认帧丢失 重 传 tout丢 失 ! AB DATA0 NAK DATA0 送 主 机 ACK (b) 数据帧出错 重 传 出错 四种情况 53 53 可靠传输 v虽然物理层在传输比特时会出现差错,但由于 数据链路层的停止等待协议采用了有效的检错 重传机制,数据链路层对上面的网络层就可以 提供可靠传输的服务。 54 54 帧检验序列 FCS v 在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。 v 循环冗余检验 CRC 和帧检验序列 FCS并不等同。 CRC 是一种常用的检错方法,而 FCS 是添加在数 据后面的冗余码。 FCS 可以用 CRC 这种方法得出,但 CRC 并非用 来获得 FCS 的惟一方法。 v仅用循环冗余检验 CRC 差错检测技术只能做到 无差错接受(accept)。 v要做到“可靠传输”(即发送什么就收到什么 )就必须再加上确认和重传机制。 55 55 4.3.2 连续ARQ协议 vARQ:(Automatic Repeat Request,自动请求重传) v工作原理:在发送方发送完一个数据帧后,不是停下来 等待确认帧,而是可以连续再发送若干个数据帧。如果 收到了接收端的确认帧,还可以接着发送数据帧;若帧 出错,则重传出错的数据帧以及在其后发送的所有的数 据帧。 v由于减少了等待时间,整个通信的吞吐量就提高了。 56 56 连续 ARQ 协议的工作原理 DATA0 DATA1 DATA2 DATA3 DATA4 DATA5 重传 DATA2 重传 DATA3 ACK1 ACK2 ACK1 确认 DATA0 ACK2 确认 DATA1 DATA2 出错,丢弃 DATA3 不按序,丢弃,重传 ACK2 DATA4 不按序,丢弃,重传 ACK2 DATA5 不按序,丢弃,重传 ACK2 ACK3 ACK3 确认 DATA2 ACK4 确认 DATA3 ACK4 重传 DATA5 重传 DATA4 超 时 重 传 时 间 AB tout 送交主机 送交主机 ? ACK2 ACK2 ACK2 57 57 需要注意: (1) 接收端只按序接收数据帧。虽然在有差错的 2号帧 之后接着又收到了正确的 3 个数据帧,但接收端都必 须将这些帧丢弃,因为在这些帧前面有一个 2 号帧还 没有收到。虽然丢弃了这些不按序的无差错帧,但应 重复发送已发送过的最后一个确认帧(防止确认帧丢 失)。 (2) ACK1 表示确认 0 号帧 DATA0,并期望下次收到 1 号帧;ACK2 表示确认 1 号帧 DATA1,并期望下次收 到 2 号帧。依此类推。 58 58 需要注意: (3) 结点 A 在每发送完一个数据帧时都要设置该帧的超 时计时器。如果在所设置的超时时间内收到确认帧, 就立即将超时计时器清零。但若在所设置的超时时间 到了而未收到确认帧,就要重传相应的数据帧(仍需 重新设置超时计时器)。 在等不到 2 号帧的确认而重传 2 号数据帧时, 虽然结点 A 已经发完了 5 号帧,但仍必须向回走, 将 2号帧及其以后的各帧全部进行重传。连续 ARQ 又 称为Go-back-N ARQ,意思是当出现差错必须重传时, 要向回走 N 个帧,然后再开始重传。 59 59 注意事项、效率分析 v注意事项: v接收端只顺序接收数据帧 v发送方在发送完一个数据帧时都要设置超时计时器。 v效率: v一方面因连续发送数据帧而提高了效率 v另一方面在重传时必须把原来已正确传送过的数据帧 进行重传,因此又降低了传送效率。 v结论:连续ARQ协议不一定优于停止等待协议 60 60 2 滑动窗口的概念 v考虑:在使用连续ARQ协议时,如果发送端一 直没有收到对方的确认信息,那么发送端能否 无限制地发送数据帧呢? v在连续ARQ协议中,应当将已发送出去但未被 确认的数据帧的数目加以限制,这就是滑动窗 口所要研究的内容。 v滑动窗口分为发送窗口和接收窗口。 61 61 2 滑动窗口的概念 v发送端和接收端分别设定发送窗口和接收窗口 。 v发送窗口用来对发送端进行流量控制。 v发送窗口的大小 WT 代表在还没有收到对方确认信 息的情况下发送端最多可以发送多少个数据帧。 62 62 01234567012 发送窗口 WT 不允许发送这些帧允许发送 5 个帧 (a) 01234567012 不允许发送这些帧还允许发送 4 个帧 WT 已发送 (b) 01234567012 不允许发送这些帧 WT 已发送 (c) 01234567012 不允许发送这些帧 还允许发送 3 个帧 WT 已发送 已发送 并已收到确认 (d) 63 63 接收端设置接收窗口 v在接收端只有当收到的数据帧的发送序号落入接收 窗口内才允许将该数据帧收下。 v若接收到的数据帧落在接收窗口之外,则一律将其 丢弃。 v在连续 ARQ 协议中,接收窗口的大小 WR = 1。 只有当收到的帧的序号与接收窗口一致时才能接收该帧 。否则,就丢弃它。 每收到一个序号正确的帧,接收窗口就向前(即向右方 )滑动一个帧的位置。同时发送对该帧的确认。 64 64 不允许接收这些帧 01234567012 WR 准备接收 0 号帧 (a) 不允许接收这些帧 01234567012 WR 准备接收 1 号帧 已收到 (b) 不允许接收这些帧 01234567012 WR 准备接收 4 号帧 已收到 (c) 65 65 滑动窗口的重要特性 v只有在接收窗口向前滑动时(与此同时也发送 了确认),发送窗口才有可能向前滑动。 v收发两端的窗口按照以上规律不断地向前滑动 ,因此这种协议又称为滑动窗口协议。 v当发送窗口和接收窗口的大小都等于 1时,就 是停止等待协议。 66 66 发送窗口的最大值 v考虑:设n为发送序号所占的比特数,发送窗 口的最大值能否是2n? v结论:当用n个比特进行编号时,若接收窗口 的大小为1,则只有在发送窗口大小WT2n-1 时,连续ARQ协议才能正确运行。 67 67 4.3.3 Selective Repeat Protocol(SRP) v为进一步提高信道的利用率,可设法只重传出 现差错的数据帧或计时器超时的数据帧。但这 时必须加大接收窗口大小,以便先收下发送序 号不连续但仍处在接收窗口之内的那些数据帧 。等到所缺序号的数据帧收到后再一并送交给 主机。 v选择重传ARQ协议可以避免重复传送那些本来 已经正确到达接收端的数据帧;付出的代价是 在接收端要设置相当容量的缓存空间。 v对于选择重传 ARQ 协议,若用 n 比特进行编 号,则接收窗口的最大值受下式的约束 WR 2n/2 68 68 4.4 数据链路层的控制规程 v数据同步:在数据传输过程中,为了使接收方 能够准确接收数据,接收方必须知道发送方发 送数据的起始位置和结束位置。 v实现方法:异步规程和同步规程(面向字符和 面向比特) 69 69 4.4.1 面向字符型协议实例 v 什么是面向字符型协议? 以字符为控制传输信息的基本单元 v ASIIC码: 格式字符:SOH(start of heading) STX(start of text) ETB(end of transmission block ) ETX(end of text) 控制字符:ACK(acknowledge) NAK(negative acknowledge) ENQ(enquire) EOT(end of transmission) SYN(synchrous) DLE(data link escape) 70 70 v 面向字符型BSC协议的数据报文格式: 71 71 4.4 典型数据链路层协议分析 面向比特型 4.4.1 HDLC产生的背景 面向字符型数据链路层协议的缺点: v 报文格式不一样;过多依赖字符编码集,不利于兼容。 v 传输透明性不好; v 等待发送方式,传输效率低。 面向比特型协议的设计目标: v 以比特作为传输控制信息的基本单元; v 数据帧与控制帧格式相同; v 传输透明性好; v 连续发送,传输效率高。 72 72 HDLC vHDLC是支持在点到点和多点链路上的半双工 和全双工通信而设计的,它是面向比特的数据 链路协议。 v面向比特的协议:则将传输帧或包看作是单 个比特的连续流,通过它们在帧的位置和与 其他比特的组合模式来表达意义。根据内嵌 在比特模式中的信息的不同,面向比特的协 议中的控制信息可以是一个或多个比特。 73 4.4.2 HDLC的基本特点 v三种类型的站 v两种配置 v三种数据操作模式 73 74 74 两个 DTE 通过 DCE 进行通信的例子 v Data terminal equipment(DTE):数据终端设备 v Data circuit-terminating equipment(DCE):数据电路端接设备 v DTE产生数据,并连同必要的控制字符一起传送给DCE。DCE将信号转化成 适合于传输介质的形式并将它发送到网络中。当信号到达另一端时,将发 生相反的过程。 EIA-232/ V.24 接口 调制解调器 DTE-ADTE-B DCE-ADCE-B EIA-232/ V.24 接口 调制解调器 网 络 75 75 station(站) v数据链路中不同类型的DTE统称为“站”(station) 由计算机和终端组成,负责发送和接收帧。涉及三种类型的站: vPrimary station(主站):send information or command 主要功能是发送命令(包括数据),接收响应,负责整个链 路的控制(如系统的初始、流控、差错恢复等); vSecondary station(从站):receive information or send response 主要功能是接收命令,发送响应,配合主站完成链路的控制 ; vCompound station(组合站): 同时具有主、次站功能,既发送又接收命令和响应,并负责 整个链路的控制。 76 76 4.5.2 数据链路的配置和数据传送方式 数据链路的配置 v非平衡配置 v平衡配置 非平衡配置中的主站与从站 v主站:控制数据链路的工作过程。主站发出命令 v从站:接受命令,发出响应,配合主站工作 非平衡配置中的结构特点 v点-点方式 v多点方式 77 77 HDLC适用的链路配置 v非平衡型 适合把智能和半智能的终端连接到计算机。 点 点式 多点式 主站次站 主站次站 次站次站 . 78 78 非平衡配置方式 正常响应模式(normal response mode,NRM) v 主站可以随时向从站传输数据帧; v 从站只有在主站向它发送命令帧进行探询(poll),从 站响应后才可以向主站发送数据帧。 异步响应模式(asynchronous response mode,ARM) v 主站和从站可以随时相互传输数据帧; v 从站可以不需要等待主站发出探询就可以发送数据; v 主站负责数据链路的初始化、链路的建立、释放与差错 恢复等功能。 79 79 数据链路的非平衡配置方式 80 80 平衡配置方式 v链路两端的两个站都是复合站(combined station); v复合站同时具有主站与从站的功能; v每个复合站都可以发出命令与响应; v平衡配置结构中只有异步平衡模式( asynchronous balanced mode,ABM); v异步平衡模式的每个复合站都可以平等地发起 数据传输,而不需要得到对方复合站的许可。 组合站组合站 适合于计算机和计算机之间的连接 81 81 数据链路的平衡配置方式 82 82 4.4.3 HDLC 的帧结构 v标志字段 F (Flag) 为 6 个连续 1 加上两边 各一个 0 共 8 bit。在接收端只要找到标志 字段就可确定一个帧的位置。 比特888可变168 信息 Info 标志 F 标志 F 地址 A 控制 C 帧检验序列 FCS 透明传输区间 FCS 检验区间 83 83 Frame(HDLC) v FLAG :Bit pattern 01111110 帧同步 v To prevent the flag from occurring inside the packet,the sender and the receiver modify the bit stream as follows. 一帧内两个F之间的字段不能出现类似标 志序列的比特组合 The sender inserts a 0 bit any time five consecutive 1 bit are transmitted. 检查两个F之间各字段,若有5个 连“1”就在第5个“1”之后插入一个“0” The receiver discards every arriving 0 bit that five consecutive 1 bits. 84 84 零比特的填充与删除 数据中某一段比特组合恰好 出现和 F 字段一样的情况 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 会被误认为是 F 字段 发送端在 5 个连 1 之后 填入 0 比特再发送出去 填入 0 比特 0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0 在接收端将 5 个连 1 之后 的 0 比特删除,恢复原样 在此位置删除填入的 0 比特 0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0 85 85 零比特插入/删除工作过程 86 86 透明传输 v采用零比特填充法就可传送任意组合的比特流,或 者说,就可实现数据链路层的透明传输。 v当连续传输两个帧时,前一个帧的结束标志字段 F 可以兼作后一帧的起始标志字段。 v当暂时没有信息传送时,可以连续发送标志字段, 使收端可以一直和发端保持同步。 87 87 其他字段 v地址字段 A 是 8 bit。 v帧检验序列 FCS 字段共 16 bit。所检验的 范围是从地址字段的第一个比特起,到信息字 段的最末一个比特为止。 v控制字段 C 共 8 bit,是最复杂的字段。 HDLC 的许多重要功能都靠控制字段来实现。 88 88 帧类型及控制字段的意义 89 89 Three types of frames vInformation transfer(I):信息帧 vN(S)表示当前发送数据帧的顺序号 vN(R)表示该站所期望接收帧的顺序号。有捎带确认 作用,它表示该站已正确接收序号为N(R )-1帧 及以前各帧,下一次应接收帧序号为N(R)值的帧 u全双工通信,通信的每一方都各有一个N(S)和N(R) 0 N(S)P/FN(R) 1313 Control:P/F:探询/终止位 90 90 P/F bit 轮询/结束位 v P/F字段是具有双重功能的单个比特位。仅当该位被设置(比特 值为1)时才有意义,并意味着轮询或结束。当帧是从主站点发 送到从站点时(当地址字段含有接收方地址时),它意味着轮 询。当帧是从从站点发送到主站点时(当地址字段含有发送方 地址时),它意味着结束。 A(sender)I,P=1 B(receiver ) S,F=1 A(sender)S,RR,P=1 B(receiver)S,F=1 91 91 监控帧 v Supervisory(S) frames:监控帧,实现对数据链路的监控。该 帧内没有信息字段。S帧类型由S(2bit)表示,分为四种:RR 、RNR、REJ、SREJ v RR(ready to receive):主站或从站已准备好接收I 帧,并确认 前面收到的至N(R)-1为止的所有I 帧。 v RNR(not ready to receive):忙状态,不能接收后续的I 帧, 而对N(R)-1及以前的I 帧予以确认。 v REJ(rejects):请求重发编号为N(R)开始的I 帧,而对N(R )-1及以前的I 帧予以确认。 v SREJ(selective reject):用于选择重发策略。请求重发编号 为N(R)的单个I 帧,而对N(R)-1及以前的I 帧予以确认。 10 SP/FN(R) 2213 Control: 92 92 U frame(无编号帧) vAre used to connect and disconnect. v用来提供链路的建立和拆除等多种附加的数据链 路控制功能,不包含任何确认信息,由于帧中无 顺序号,故称为无编号帧 vA和B(5 bits)定义了32种附加控制功能。 11 AP/F B 2213-Bits U frame 93 93 帧类型 vI帧 : N(S) 发送帧的顺序号 N(R) 接收帧的顺序号 P/F= Poll / Final, P=1 询问, F=1 响应 P与F成对出现 vS帧 :监控功能位 S = 00,RR(receive ready) S = 01,RNR(receive not ready) S = 10,RJE(reject) S = 11,SREJ(select re
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工厂物业管理协议书
- 种植沉香协议书
- 市场费用投入协议书
- 泊车管理协议书
- 小区热水供应协议书
- 牙科退股协议书
- 小区车位赠送协议书
- 江汉合作协议书
- 家庭安全生产协议书
- 汽修会员协议书
- 六年级下册数学课件 整理和复习6.5比和比例 人教版 (共14张PPT)
- 福州市历史建筑保护管理办法(试行)
- JHA及SCL风险评价方法讲解(参考)
- DB11T 1933-2021 人乳库建立与运行规范
- 1.3.1动量守恒定律课件(共13张PPT)
- 国网北京市电力公司授权委托书(用电)
- 中小学教育惩戒规则(试行)全文解读ppt课件
- 调度指挥与统计分析课程教学设计
- 常暗之厢(7规则-简体修正)
- 终端塔基础预偏值(抬高值)计算表格
- 海外医疗服务委托合同协议书范本模板
评论
0/150
提交评论