① 交换机crc校验原理
CRC是指循环冗余校验错。现在许多交换机都是使用store-and-forward的交换方式,即交换机将数据完全拷贝进自己的御基缓存区并进行校验。如果有错,那么就丢掉该帧。这种错误通常是通信双方的双工方式不匹配,电镇猛谨缆故障,网卡故障引起的。
CRC是指循环冗余校验错。现在许多交换机都是使用store-and-forward的交换方式,即交换机将数据完全拷贝进自己的缓存区并进行校验。如果有错,那么就丢掉该帧。这种错误通常是通信双方的双知扰工方式不匹配,电缆故障,网卡故障引起的。
② 计算机网络中的循环冗余效验问题。
CRC码:原理循环冗余码校验英文名称为Cyclical Rendaney Check
G(X)是生成多项式。
CRC码是用G(X)来生成的。(第一句)
K位二进制加上R位CRC码,信息位要向左移N-K位(这个不难理解吧,码字长度为N,信息字段为K位,校验字段为R位(N=K+R),就是向左移动R位)
③ 关于计算机网络的crc计算
我们知道,一台主机向另外一台主机发送报文的时候,需要一层层经过自己的协议栈进行数据封装,到达最后一层(四层协议的网络接口层)时需要在帧尾部添加FCS校验码(通过CRC算法得出)。当对端主机收到时,在接收端同样通过CRC算法进行验证,确认传输过程中是否出现错误。它只能确认一个帧是否存在比特差错,但没有提供解决措施。
循环冗余校验的原理
在发送端,先把数据划分为组(即:一帧)。假定每组 k 个比特。
在每组后面,添加供差错检测用的 n 位冗余码一起发送。即:实际发送长度为:k+n 比特。
发送前双方协商n+1位的除数P,方便接收方收到后校验。
给K比特的数据添加除数减一个0(P-1)作为被除数,与第三步确定的除数做“模2除法”。得出的余数即FCS校验序列,它的位数也必须是(P-1)。
将FCS校验序列添加至K个比特位的后面发送出去。
接收方对接收到的每一帧进行校验,若得出的余数 R = 0,则判定这个帧没有差错,就接受(accept)。若余数 R ≠ 0,则判定这个帧有差错,就丢弃。
对“模2除法”进行说明:
“模2除法”与“算术除法”类似,但它既不向上位借位,也不比较除数和被除数的相同位数值的大小,只要以相同位数进行相除即可。模2加法运算为:1+1=0,0+1=1,0+0=0,无进位,也无借位;模2减法运算为:1-1=0,0-1=1,1-0=1,0-0=0,也无进位,无借位。相当于二进制中的逻辑异或运算。
计算示例
那么接收方拿到的就是:101001001。再以它为被除数,1101为除数进行“模2除法”。
④ 冗余校验的原理
任何一个散列函数都可以用于冗余检校验。最简单的冗余校验,叫作校验郑旦和,它包括校验位、校验码以及纵向冗空弊余校验(LRC,Longitudinal Rendancy Check)。斗丛族其它类型的冗余校验包括循环冗余校验(CRC,Cyclic Rendancy Check)、水平冗余校验、竖直冗余校验以及Cryptographic Message Digest。
奇偶校验仅仅是一个错误检测的机制,根据所用奇校验与偶校验的不同可以检查奇数或者偶数的错误。
校验和算法
⑤ CRC是什么意思
循环冗余校验(Cyclic Rendancy Check, CRC)是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数戚衫扰据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。
循环冗余校验同其他差错检测方式一样,通过在要传输的k比特数据D后添加(n-k)比特冗余位(又称帧检验序列,Frame Check Sequence,FCS)F形成n比特的传输帧T,再将其发送出去。
(5)计算机网络冗余效验的原理扩展阅读
在数据传输过程中,无论传输系统的设高旦计再怎么完美,差错总会存在,这种差错可能会导致在链路上传输的一个或者多个帧被破坏,从而接受方接收到错误的数据。
为尽量提高接受方收到数据的正确率,在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正塌答确时接收方才真正收下数据。
检测的方式有多种,常见的有奇偶校验、因特网校验和循环冗余校验等。循环冗余校验是一种用于校验通信链路上数字传输准确性的计算方法。
参考资料来源:网络-CRC
⑥ 计算冗余码
FJNU.1240Description
计算机网络中采用循环冗余码来校验数据的正确性。其原理是:发送方计算出待发送的二进制数据的循环冗余码,并随同原数据一起发送到接收方;接收方通过重新计算接收到的数据的循环冗余码,并和收到的循环冗余码进行比较,如果两者相同则可判定所收到的数据是正确的,否则说明数据是错误的。其中计算二进制数据的循环冗余码的计算过程如下:
>>协议事先约定一个二进制生成表达式,本题设为10011;
>>将待发送的二进制数据串的末尾加4个0;
>>将补上0的数据串按模2除法除于生成表达式,取余数;
>>该余数就是该二进制数据串的循环冗余码。
例如:
数据串为:1101011011
生成表达式为:10011
循环冗余码为1110
计算过程如下:
根据上述的计算方法,请编写一个循环冗余码计算程序,假设二进制数据串的长度不超过20位,生成表达式固定为10011。
Input
输入的第一行含一个正整数k (1<=k<=10),表示测试例的个数。后面紧接着k行,每行对应一个测试例,含一个N位二进制串(1<=N<=20),代表数据。
Output
每个测试例对应一行输出,含一个5位二进制串,表示循环冗余码。
Sample Input
2
1101011011
10101010
Sample Output
01110
01001
Source
福建师范大学第三届程序设计比赛网上预赛
My Program
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄它是华丽的分隔线
【题意简述】
对于输入的二进制数,在末尾加上4个0后用10011对其进行模2除法。并输出最后的结果(5位二进制码)。
【粗略分析】
由于C++中没有二进制的数据类型,因此采用字符串记录。
观察运算图可知,每次都取前5位对它进行模2除法。我们可以设定一个i = 0 to n-5,用来计算每一步。
我们还可以观察出,每次只有第i位为1时才会进行运算。所以我们加一个判定m[j]=='1'时才计算。
因为固定除数都为10011,我们直接将它列为数组,i=1 to 5 进行模2并存储回字符数组即可。
【C++源代码】
简单地模拟一下计算过程就可以了。
⑦ 计算机网络循环冗余检验 中的除数怎么来的
首先要知道CRC生成的多项式P(X)。除数的位数是P(X)最高次幂+1。P(X)每个幂数代表着除数从右到左第几位为1,其余的都为0,就得出除数了。比如P(X)=X^4+X^3+1,则除数个数为5,从右往左分别为0 1 2 3 4位,其中4,3,0位为1,其余为0。除数为11001
⑧ 什么是循环冗余校验
循环冗余检查英文全称为:Cyclical Rendancy Check,简称为:CRC,是一种数据传输检错功能,对数据进行多项式计算,即在每个数据块(称之为帧)中加入一个FCS(Frame CheckSequence,帧检查序列),并将得到的结果附在帧的后面,FCS包含了帧橘逗斗的详细信息,专门用于发送/接收装置比较帧的正确与否。以保证数据传输的正确性和完整性。若CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。
这里要看你拷贝的原始文件在什么地方。如果是在U盘里,首先要看是不是U盘中毒或损坏,先查杀病毒;在确保数据安全后,最好完整格式化U盘,防止之后再次出错。
如果原始文件是在硬盘上,右键点击出错的盘符,>选择“属性”——>弹出“本地磁盘(X:)属性”窗口,切换到“工具” 选项卡中——>点击第圆磨一个项目中的“开始检查(C)”——>弹出窗口中,勾选中指丛“自动修复文件系统错误(A)”——>点击“开始”—— >此时如果系统提示“磁盘检查不能执行,因为磁盘检查实用程序需要独占访问磁盘上的一些Windows文件...”,直接点击“是”——>然后重新启动计算机后,将自动进行磁盘错误检查并且修复出错的文件;第二步:对出错的磁盘盘符进行“磁盘碎片整理”;点击“开始”菜单 ——>选择“所有程序”——>鼠标指向“附件”——>再指向“系统工具”——>单击“磁盘碎片整理程序”——>在“卷”下方选中出错的盘符,点击“碎片整理”——>耐心等待磁盘碎片整理结束,重新启动计算机即可。
⑨ 计算机网络中循环冗余检验的解释
教科书定义:循环冗余校验码CRC是一种循环码,它有很强的检错能力,而且容易用硬件实现,在局域网中有广泛应用。
简单的说下它的实现:用移位寄存器实现,移位寄存器由k位组成,还有几个异或门和一条反馈回路。移位寄存器可以按CCITT-CRC标准生成16位的校验和。寄存器被初始化为0,数据字从右向左逐位输入。当一位从最左边移除寄存器时就从右边输入完后再输入k个0。最后,当这一过程结束时,移位寄存器中就形成了校验和。k位的校验和跟在数据位后边发送,接收端可以按同样的过程计算校验和并与接收到的校验和比较,以检测传输中的差错。
具体实现和数学分析建议你参考网络http://ke..com/view/575295.htm
⑩ 什么是冗余校验
说的简单点,就是在要传送的有效数据之后多加一些额外的数据,这些额外的数据与这些有效数据是有一定的关系。如果数据在传输的过程中发生错误,那么他们的这种关系就会被破坏。我们通过重新判断这种关系是否激皮被破坏就可知道数据在传输的过程中是否发生错误。
最常用的就是CRC循环冗余校验:
2.1.2 CRC码的组成和使用流程
CRC码由明孝差两部分组成,前部分是需要校验保护的有效信息位,后部分是CRC冗余校验位。如果有效信息位为k比特,CRC校验位为r比特,组成n(n=k + r)比特的CRC码,称为(n , k)码。
大部分CRC码都以r的位数来命名慎岩,如上文中说到的CRC-12表示它的冗余校验位数r=12bit,CRC-16的冗余校验位数r=16bit。
CRC的使用包括编码和解码两个流程,如图1-1所示:
图1-1 CRC使用流程
CRC编码流程,如图1-1,本部分由信息发送端完成。
1. 按照CRC编码规则,计算需要发送的有效信息B(X)的冗余校验信息CRC(X)。
2. 将B(X)和CRC(X)一起发送出去。
CRC解码流程,如图1-1,本部分由信息接收端完成。
1. 接收B(X)和CRC(X).
2. 按照CRC编码规则,重新计算有效信息B(X)的校验信息CRCB1B(X)。
3. 比较CRCB1B(X)与CRC(X)是否相等,如果相等即CRC校验正确,表示此数据没有发生错误,否则数据出错,即CRC校验错误。