提高信道利用率
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
检测出差错
接收方对接收到的数据除以同样的除数 , 只要得 出的余数 R 不为 0,就表示检测到了差错。 但这种检测方法并不能确定究竟是哪一个或哪几 个比特出现了差错。 一旦检测出差错,就丢弃这个出现差错的帧。 只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。
答:作二进制除法,1101011011 0000 10011 得余数1110 ,添加的 检验序列是1110. 作二进制除法,两种错误均可发现 仅仅采用了CRC检验,缺重传机制,数据 链路层的传输还不是可靠的传输。
本课重点
掌握CRC冗余校验码的计算.
5.3 基本数据链路协议
数据链路协议主要考虑的问题: ① 避免所传送的数据可能出现差错和丢失; ② 使发方发送数据的速率适应收方的接收能力。
5.2.2检错码:循环冗余码-CRC码
特点:实现容易,检错能力强,广泛使用。 常结合反馈重传法来保证信息的可靠传输。 码字组成:
例:若数据码=110011, 可表示为:M(x)= 1· x5 + 1· x4 + 0· x3 + 0· x2 + 1· x+1 即:M(x)= x5 + x4 + x + 1。 生成多项式G(x): G(x)=grxr +...+gixi +...+ g1x + g0 其中, gi=0或1, r≥i≥0, gr ≠ 0 , g0 ≠ 0, 共r+1位 G(x)被通信双方事先共同选定使用: 发送端:通过G(x)生成校验码; 接收端:通过G(x)校验接收的码字。 对于多项式的运算:采用模2计算(加法不进位,减法不借位); 加减法是一样的。 模2计算即是异或运算。
考研复习指导练习题: 1)要发送的数据是1101 0110 11,采用 CRC校验,生成多项式是10011,那么最 终要发送的数据是: A. 1101 0110 111010 B. 1101 0110 110110 C. 1101 0110 111110 D. 1101 0110 111100
2 在数据的传输过程中,若接收方收到的二进 制比特序列是:1011 0011 010,接收双方 采用的生成多项式是:G(x)=x4+x3+1, 则该二进制比特序列在传输中是否出错?如果 未出现差错,发送数据的比特序列和CRC检 验码序列分别是什么?
数据链路层的主要功能: ①链路管理:数据链路的建立、维持和释放; ②帧同步:收方能从收到的比特流中区分一帧开始和结束的 地方; ③流量控制:发方发送数据的速率必须使收方来得及接收; ④差错控制:收方收到有差错的数据帧时,能检错重传或纠 错; ⑤透明传输:不管所传数据是什么样的比特组合,收方都能 正确接收。并能将数据与控制信息分开; ⑥寻址:保证每一帧都能发送到目的站。 设计要点;1)向网络层提供一个定义良好的服务接口 2)处理传输错误 3)调节数据流,确保慢速的接收方不会被除快 速的发送方淹没。
流量控制、可靠传输与滑动窗口机制
流量控制的基本方法是由接收方控制发送方的速率。 常见方式有二种: 1)停止—等待协议 2)滑动窗口协议 停止等待协议每发送一帧,都要等待接收方应答,传输 效率低。 滑动窗口是发送方维持一组连续的允许发送的帧序号, 称为发送窗口,接收方也维持一组连续的接收帧序号, 称为接收窗口。在发送端,每收到一个确认帧,发送 窗口就向前滑动一个帧的位置。当发送窗口全是已发 送未收到确认的帧,则停止发送。
差错评价指标如下: (1)误码率: 错传的码元数与所传输码元总数 之比。 Pe=Ne/N 其中,N ─传输的码元总数,Ne ─错传的的码 元数。 (2)误比特率: 错传的比特数与所传输总比特数之比。 在二进制码元时,误比特率=误码率。
差错控制的基本方式如下: (1)反馈纠错 在接收端能发现差错,但不能确定错码的位置,通 过反馈信息请求发送端重发,直到接收端肯定确认为止。 适用于双工通信和非实时通信系统。 (2)前向纠错 在接收端不仅能发现错码,而且还能确定错码的位置, 并纠正错误。 适用于单工通信和实时通信系统。 (3)混合纠错 少量差错在接收端自动纠正,若超出自行纠正能力时, 通过反馈信息请求发送端重发。
5.1.3成帧方法
①字符计数法: 在帧头部指明帧内字符数。 问题:由于传输差错导致计数值被“篡改” ;
②字符填充首尾界符法: 以ASCII字符DLE和STX作为帧的头部,DLE 和ETX作为帧的尾部( DLE=10H、STX= 02H、ETX= 03H ) 技术:如何避免二进制数据可能与帧的头尾标志 相同? 发送方在数据中遇到DLE时,自动在其前后插入 一个DLE ; 接收方在数据中遇到单个DLE时, 可确定帧界; 遇 到2个DLE时,自动删除一个DLE 。
书上作业练习:P84
5-41 要发送的数据为1101011011。采用CRC的生 成多项式是P(X)=X4+X+1。试求应添加在数据后 面的余数。 数据在传输过程中最后一个1变成了0,问接收端能 否发现? 若数据在传输过程中最后两个1都变成了0,问接收 端能否发现? 采用CRC检验后,数据链路层的传输是否就变成了 可靠的传输?
5.1.5流控制
基于反馈的流控制 基于速率的流控制
5.2 错误检测和纠正
码字的检错与纠错能力
码字(n位)=数据码(m位)+冗余码(r位)。 海明距离:两个码字之间对应码元位的不同 码元的个数。
码字编码的海明距离
对于一种码字编码,在这个码字集合中,可得到 所有任意两个码字的海明距离,其中最小的海 明距离称为该码字编码的海明距离d。 定理1:如果d≥2t+1, 则该编码可纠正任何t 个(或t个以下)的错误。 定理2:如果d≥e+1, 则该编码可检测出任何 e个(或e个以下)的错误。 一般情况下,冗余位越多(即r越大),检错纠错 能力越强,但相应的编码效率也随之降低了。
用二进制的模 2 运算进行 2n 乘 M 的运算, 这相当于在 M 后面添加 n 个 0。 得到的 (k + n) 位的数除以事先选定好 的长度为 (n + 1) 位的除数 P,得出商 是 Q 而余数是 R,余数 R 比除数 P 少1 位,即 R 是 n 位。
冗余码的计算举例
k = 6, M = 101001。 除数 P = 1101,则 n = 3, 被除数是 2nM = 101001000。
现在
wenku.baidu.com
循环冗余检验的原理说明
110101 ← Q (商) P (除数) → 1101 101001000 ← 2nM (被除数) 1101 1110 1101 0111 0000 1110 1101 0110 0000 1100 1101 001 ← R (余数),作为 FCS
模 2 运算的结果是:商 Q = 110101, 余数 R = 001。 把余数 R 作为冗余码添加在数据 M 的后 面发送出去。发送的数据是:2nM + R 即:101001001,共 (k + n) 位。
2 为了进行差错控制,必须对传送的数据进行校验.在局 域网中广泛使用的校验方法是_(1)___,CRC-16标准 规定生成多项式为G(x)=x16+X15+x2+1,它产生的 校验码是__(2)__位,接收端发现错误后采取的措施是 __(3)__.如果CRC的生成多项式是G(x)=x4+x+1, 信息码字是10110,由计算出来的CRC校验码是 __(4)_. (1)A 奇偶检验 B 海明码 C格雷码 D 循环冗余校验 (2)A 2 B 4 C 16 D 32 (3)A 自动纠错 B 报告上层协议 C 自动请求重发 D 重 新生成原始数据 (4) A 0100 B1010 C 0111 D 1111
理想化的数据传输
假设1:所传送的数据即不会出现差错和也 不会丢失;不考虑差错控制问题) 假设2 :接收端的数据接收速率足够快,有 能力接收发送端的数据发送率。 (不考虑流量控制问题) 在理想化的条件下,数据链路 层不需要: ①差错控制协议; ②流量控制协议; 就可保证数据的正确传输。
实用的停止等待协议(ARQ)
③位填充首尾标志法: 以一个特定的字节信息作为帧的头尾标志; 如01111110;为了避免与原始数据比特 组合相同, 发送方在数据中遇到5个连续 的1时,自动在其后插入一个0; 接收方 在数据中遇到5个连续的1后面跟着一个0, 自动将此0删除。
5.1.4 差错控制 差错产生的原因主要由通信信道的噪声引起, 通信信道噪声分为二种: (1)热噪声:由传输介质导体的电子热运 动产生。幅度较小,是产生随机差错的主 要根源; (2)冲击噪声:由外界电磁干扰产生,幅 度较大,是产生突发差错的主要根源。 其中冲击噪声是引起差错的主要原因。
计 算 机 网 络
COMPUTER NETWORKS
第5章 数据链路层
5.1 基本概念
链路:一条无源的点到点的物理线路段。
数据链路:链路+
规程(控制数据传输)。
数据链路层的作用:
通过一些数据链路层协议(即链路控制规 程),在不太可靠的物理链路上实现可靠 的数据传输。 学习重点:两台机器之间实现可靠、有效的 通信而涉及到的一些算法。
示例:偶校验的检错与纠错能力
例:对于偶校验(使每个码字中都有偶数个1)数 据码为2位(有用数据为00、01、10、11)冗余 码为1位(偶校验位) 有用数据经过偶校验编码,其码字集合:000、 011、101、110; 该编码的海明距离d=2, 根据定理1,该编码不能纠正任何错误(t=0)。 D>=2t+1 根据定理2,该编码可检测出任何1个错误(e=1)。 D>=e+1 奇校验的检错能力与偶校验一样。
5.1.2 为网络层提供的服务
最主要的服务是将数据从源机器的网络层传输到目 标机器的网络层. ①无确认的无连接的服务:( P56) 适用于误码率很低的通信信道;或语音通信; ②有确认的无连接的服务: 适用于误码率很高的通信信道;如无线通信; ③有确认的面向连接的服务: 适用于通信要求较高(可靠性、实时性)的情况
循环冗余检验的原理
在数据链路层传送的帧中,广泛使用了循 环冗余检验 CRC 的检错技术。 在发送端,先把数据划分为组。假定每组 k 个比特。 假设待传送的一组数据 M = 101001 (现在 k = 6)。我们在 M 的后面再添 加供差错检测用的 n 位冗余码一起发送。
冗余码的计算
误码控制编码的分类
按冗余码的控制功能分: ①纠错码:在接收端能发现并自动纠正差错。 叫前向纠错 纠错检错的常用方法 ①海明码:可纠错和检错,实现复杂,效率 低。 ②奇偶校验码:方法简单,检错能力差。 ③ 循环冗余编码(CRC):实现容易,检错 能力强,广泛使用。
5.2.1纠错码:海明码
海明在1950年提出的可纠正一位错的编码方法。 用r个校验位构造出r个校验关系式来指示一位错码的n (=m+r)种可能位置及表示无差错。 码字排列:从最左边位开始依次编号(1、2、…、n); r个校验位:在2k的位置( 1、2、4、8、…); m个数据位:在其余位( 3、5、6、7、9、…)。 r的确定:r2-r≥m+1; (∵ r2 ≥n+1=m+r+1) 例如:4个信息位D1D2D3D4,3个校验位P1P2P3。
1 数据链路(即逻辑链路)与链路(即物理 链路)有何区别? “电路接通了”与” 数据链路接通了”的区别何在?
答:数据链路与链路的区别在于数据链路出链路外,还必须 有一些必要的规程来控制数据的传输,因此,数据链路比链 路多了实现通信规程所需要的硬件和软件。 “电路接通了”表示链路两端的结点交换机已经开机,物理 连接已经能够传送比特流了,但是,数据传输并不可靠,在 物理连接基础上,再建立数据链路连接,才是“数据链路接 通了”,此后,由于数据链路连接具有检测、确认和重传功 能,才使不太可靠的物理链路变成可靠的数据链路,进行可 靠的数据传输当数据链路断开连接时,物理电路连接不一定 跟着断开连接。