计算机网络知识梳理(十一)---数据链路层 差错控制

321 阅读3分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

前言

计算机网络知识梳理 这个系列是为了巩固在计算机网络方面的相关理论基础,日常开发虽然用不到,但是真要是有啥问题还得靠平常积累的知识点

是什么

差错控制就是通过差错编码技术,实现对信息传输差错的检测,并基于某种机制进行差错纠正和处理,是计算机网络中实现可靠传输的重要技术手段,并在许多数据链路层协议中应用。

基本方式

典型的差错控制方式包括检错重发、前向纠错、反馈校验和检错丢弃4种基本方式。

检错重发

检错重发是一种典型的差错控制方式,在计算机网络中应用广泛。在检错重发方式中, 发送端对待发送数据进行差错编码,编码后的数据通过信道传输,接收端利用差错编码检测 数据是否出错,对于出错的数据,接收端请求发送端重发数据加以纠正,直到接收端接收到 正确数据为止。

前向纠错

前向纠错(Forward Error Correction, FEC) 是接收端进行差错纠正的一- -种差错控制方 法。前向纠错机制需要利用纠错编码,即这类编码不仅可以检测数据传输过程中是否发生了 错误,而且还可以定位错误位置并直接加以纠正。在前向纠错机制中,发送端首先对数据进 行纠错编码,然后发送包含纠错编码信息的帧,接收端收到帧后利用纠错编码进行差错检 测,对于发生错误的帧直接进行纠错。前向纠错机制比较适用于单工链路或者对实时性要求 比较高的应用。

反馈校验

反馈校验方式的接收端将收到的数据原封不动发回发送端,发送端通过比对接收端反馈 的数据与发送的数据可以确认接收端是否正确无误接收了已发送的数据。如果发送端发现有 不同,则认为接收端没有正确接收到发送的数据,则立即重发数据,直到收到接收端反馈的 数据与已发数据- -致为止。反馈校验方式的优点是原理简单,易于实现,无须差错编码;缺 点是需要相同传输能力的反向信道,传输效率低,实时性差。

检错丢弃

不同网络应用对可靠性的要求不同,某些应用(如实时多媒体播报应用)可以采用- -种 简单的差错控制策略,不纠正出错的数据,而是直接丢弃错误数据,这种差错控制方式就是 检错丢弃。显然,这种差错控制方式通常适用于容许一定比例的差 错存在,只适用于实时性 要求较高的系统。