【计算机网络-5】 【第三章】数据链路层笔记2——CRC校验原理

一、基本原理

    CRC检验原理实际上就是在一个p位二进制数据序列之后附加一个r位二进制检验码(序列),从而构成一个总长为n=p+r位的二进制序列;附加在数据序列之后的这个检验码与数据序列的内容之间存在着某种特定的关系。如果因干扰等原因使数据序列中的某一位或某些位发生错误,这种特定关系就会被破坏。因此,通过检查这一关系,就可以实现对数据正确性的检验。

二、几个基本概念

1、帧检验序列FCS(Frame Check Sequence):为了进行差错检验而添加的冗余码。

2、多项式模2运行:实际上是按位异或(Exclusive OR)运算,即相同为0,相异为1,也就是不考虑进位、借位的二进制加减运算。如:10011011 + 11001010 = 01010001。

3、生成多项式(generator polynomial):当进行CRC检验时,发送方与接收方需要事先约定一个除数,即生成多项式,一般记作G(x)。生成多项式的最高位与最低位必须是1。常用的CRC码的生成多项式有:

CRC8=X8+X5+X4+1

CRC-CCITT=X16+X12+X5+1

CRC16=X16+X15+X5+1

CRC12=X12+X11+X3+X2+1

CRC32=X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+1

每一个生成多项式都可以与一个代码相对应,如CRC8对应代码:100110001。

三、CRC检验码的计算

设信息字段为K位,校验字段为R位,则码字长度为N(N=K+R)。设双方事先约定了一个R次多项式g(x),则CRC码:

V(x)=A(x)g(x)=xRm(x)+r(x)

其中:   m(x)为K次信息多项式, r(x)为R-1次校验多项式。

这里r(x)对应的代码即为冗余码,加在原信息字段后即形成CRC码。

r(x)的计算方法为:在K位信息字段的后面添加R个0,再除以g(x)对应的代码序列,得到的余数即为r(x)对应的代码(应为R-1位;若不足,而在高位补0)。

计算示例

设需要发送的信息为M = 1010001101,产生多项式对应的代码为P = 110101,R=5。在M后加5个0,然后对P做模2除法运算,得余数r(x)对应的代码:01110。故实际需要发送的数据是101000110101110。

 

四、错误检测

    当接收方收到数据后,用收到的数据对P(事先约定的)进行模2除法,若余数为0,则认为数据传输无差错;若余数不为0,则认为数据传输出现了错误,由于不知道错误发生在什么地方,因而不能进行自动纠正,一般的做法是丢弃接收的数据。

五、几点说明:

1、CRC是一种常用的检错码,只能纠正1位错误。

2、只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。

3、仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(只是非常近似的认为是无差错的),并不能保证可靠传输。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 这道题目讲的是计算机网络数据链层,需要掌握数据链层的概念、数据链层的作用和功能以及常见的数据链层协议。在学习和掌握完这些内容后,需要做一些练习题来巩固和加深自己的理解,并且理解并能够解答各种类型的问题。 ### 回答2: 数据链层是计算机网络中的一种协议层,主要负责网络设备之间的数据传输。在学习数据链层的过程中,需要掌握帧的组成、帧的传输、数据链层的错误控制等知识点。以下将回答【计算机网络(微课版)】第3章数据链层课后习题及答案。 1. 数据链层的作用是什么,有哪些功能? 答:数据链层作为网络中的一个协议层,主要负责将传输层提供的分组封装成帧进行传输,也负责进行错误控制和流量控制等。数据链层的主要功能包括:帧的封装与解封装、错误控制、流量控制、访问控制和链管理。 2. 如果一个帧的目的MAC地址是FF:FF:FF:FF:FF:FF,那么这个帧的作用是什么? 答:如果一个帧的目的MAC地址是FF:FF:FF:FF:FF:FF,那么这个帧的作用就是广播帧,它会被网络中所有的设备接收并处理。广播帧通常用于向网络中的所有设备发送信息,比如ARP请求、DHCP请求等。 3. 请简述CRC校验原理和作用。 答:CRC校验数据链层常用的一种错误控制技术。它的原理是对帧的数据部分进行多项式运算,将运算结果添加到帧的尾部形成一个固定长度的校验码。接收方在接收到帧后,也对帧的数据部分进行多项式运算,将运算结果与帧尾部的校验码进行比较。如果两者相等说明数据没有出现错误,否则说明数据出现错误,需要丢弃该帧。CRC校验可以很好地检测出数据链层传输过程中的比特差错和一些突发性错误,保证数据的可靠性和完整性。 4. 请简述PPP协议的作用和特点。 答:PPP协议是数据链层协议中的一种,它主要用于点对点通信中,在因特网中广泛应用。PPP协议的特点包括:封装性好、可靠性高、适应性强、拓展性好。PPP协议不仅可以在异步串行线上运行,同时也可以在同步电或者ISDN线上运行。PPP使用封装,压缩,加密等技术,保证了数据传输的可靠性和安全性。PPP协议还提供了多种认证方式以保证通信的安全性。 ### 回答3: 数据链层是在物理层之上的第二层,主要负责将物理层传输的比特流转化为数据帧,并为帧添加控制信息以进行传输和检错。本章的课后习题主要涉及数据链层的几种基本协议、数据帧的构成以及其功能和应用。 第一道题是关于Point-to-Point协议。Point-to-Point协议简称PPP,是一种用于串行线网络协议。它可以支持多种协议,如IP、IPX、AppleTalk等。PPP的结构由数据链控制协议(LCP)和网络控制协议(NCP)两部分组成。LCP在建立连接时进行握手,NCP则负责选择和配置使用的网络协议。对于PPP中两端节点的串行通信线,每个数据帧的帧边界都由同步信号来标识,而不是像以太网那样使用前导码。 第二道题是有关局域网的。局域网是指在一个范围较小的地理区域内,通过某种通信手段连接起来的计算机互联网络,距离较近,速度较快。常见的局域网协议有以太网、令牌环、FDDI等,其中以太网是应用最广泛的一种。以太网使用CSMA/CD协议进行冲突检测和重传,它的帧长通常不超过1500字节。在以太网中,每一个节点都有一个唯一的MAC地址,这是一个48位的地址,其中前24位是厂家标识符,后24位是该厂家内部分配的地址。 第三道题是关于数据帧的构成。数据帧由首部、数据部和尾部三部分组成。首部包含了帧起始符、目的地址、源地址和类型等控制信息。数据部分包含了实际的数据内容。尾部包含了循环冗余校验CRC)等校验信息。在以太网帧中,首部的长度为14字节,尾部的长度为4字节,数据部分的长度在其他协议中有不同的取值。 第四道题是有关MAC地址的。MAC地址是一种硬件地址,是用来唯一标识网络适配器(网卡)的地址。MAC地址是48位的二进制数,通常用十六进制表示,如00-0C-29-05-7F-63。MAC地址分为两个部分,前24位是厂家标识符,后24位是该厂家内部分配的地址。MAC地址是数据链层的地址,因此只在局域网范围内有效。属于同一个局域网的所有节点之间可以直接通信,不需要经过由器。对于不同的局域网之间的通信,需要经过由器进行转发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值