前言:本站为你精心整理了计算机网络通信分析范文,希望能为你的创作提供参考价值,我们的客服老师可以帮助你提供个性化的参考范文,欢迎咨询。
【摘要】文中首先介绍了CRC算法,分析了该算法的原理,并重点针对其在计算机网络通信中的应用问题进行了研究,最后强调了该算法应用过程中需注意的一系列问题,目的在于进一步提高计算机网络通信的可靠性,提高差错控制水平,降低通信差错发生的几率。
【关键词】CRC算法;计算机;网络通信;应用
1CRC算法概述
1.1CRC算法简介
CRC算法即循环冗余校验算法,从本质上看,属于错误检验编码的一种。目前,计算机网络通信过程中,以该算法应用最为广泛。相对于其他错误检验编码形式而言,循环冗余校验算法在漏检率与误判率的控制方面,体现出了极大的优势[1]。循环冗余校验算法,具有二元码组简单的特点,这是促使其误判率降低的主要原因。参数表是CRC算法的重要组成部分,共包括512字节,是支撑算法完成的关键[2]。在CRC算法运行前,需要首先确保存在可容纳512字节大小的参数表的区域作为保证,以此为基础,通过对参数表的应用,实现整个计算过程。
1.2CRC算法的实现
从循环冗余校验算法实现的角度看,主要包括硬件实现与软件实现两种,实践经验表明,相对于硬件实现而言,软件实现速度更快、效率更高,因此,相应领域目前一般以软件实现作为该算法的主要实现方法,以太网便属于循环冗余检验算法软件实现的代表。计算机网络实体之间通信功能的实现,需要通过数据包的传输来控制,数据包的构成情况如图1[3]从图1中可以看出,数据包主要由SOH、序号、长度、数据、校验码五大部分构成。①SOH:SOH属于整个数据包的包头,功能在于对即将传输的数据的源站地址以及目的站地址等信息进行保存,确保数据能够从源站地,快速准确的传输到目的站,避免数据传输过程中发生错误,提高数据信息传输的可靠性及传输效率。②序号:序号同样属于数据包的主要组成部分之一,功能在于显示数据包的组数,简单的说,两者显示的数值需保持一致,如存在3组数据包,则序号显示为3。③长度:长度是显示数据包中字节的主要部分,在整个数据传输过程中,同样发挥着重要的作用。④数据:数据即计算机网络通信过程中,所需要传输的各类型的信息,是传输的主体以及主要传输对象。⑤校验码:校验码处于整个数据包的尾部,是纠正整个数据传输中发生的错误的主要部分。数据传输过程中,出现差错在所难免,如何降低差错出现的几率,是有关人员研究的重点。作为数据包主要组成部分之一,校验码的功能在于对数据传输过程中出现的差错进行检验,以使差错能够被有效控制,最终达到提高计算机网络通信可靠性的目的。需注意的是,校验码需对从“SOH”到“数据”的数据包中的每一部分进行校验,以全面降低网络通信出现差错的几率。
2CRC算法在计算机网络通信中的应用
从循环冗余校验算法的应用过程、校验码的生成以及该算法应用的优势与缺陷三方面入手,对算法在计算机网络通信中的应用情况进行了研究:
2.1CRC算法在计算机网络通信中的应用过程
与计算机网络通信所需传输的数据之间建立编码关系,是循环冗余校验算法的主要原理之一[4]。上述原理的实现,需要通过将校验码加入到数据包的末尾部分来达成。在与数据之间建立了联系之后,数据便能够从源地址正式开始传输。目的地地址在接收到数据之后,会通过“译码”这一过程,对本身加入了校验码的数据,进行反运算,如运算结果与源地址的结果相符,则说明在计算机网络通信过程中,未出现错误。相反,如通过对运算结果的对比,发现两者之间存在差异,则认为数据传输过程中,发生了差错,此时,数据接收目的地,会反复循环完成“译码”过程,直到结果一致为止。在循环冗余算法的应用过程中,数据包中的SOH及数据等,均以信息代码组的形式体现,其传输过程,均以二进制作为主要方式。在校验码检验计算过程中,需通过将代表数据包的二进制数据,与某一多项式相除,如计算发现,两者相除能够取整数,则认为本次网络通信过程中,未发生错误,所接收到的数据,与源地址所发送的数据相符。相反,如果计算发现,两者相除无法取整数,则证明传输过程中出现了错误。模2运算法,是完成该计算过程所应用的主要方法,实践证明,该方法计算效率高,且计算结果能够准确的反应通信情况[5]。
2.2校验码的生成
循环冗余算法在计算机网络通信中的应用,以算法校验码生成的过程为主,具体步骤如下:①完成初始化过程,并设置循环变量初始值。②信息被输送到余数单元。③余数单元向左移动8位。④余数单元向左移动1位。⑤将最高位与1对比,判断其是否等于1,如等于1,则需判断余数是否整除,同时判断是否循环8次,如循环8次,则可将余数存储,并完成256次计算,最终结束计算。⑥如将最高位与1对比,发现其不等于1,则需判断是否循环8次,如否,则应重新开始收集信息,并将其输送到余数单元,如是,则可存储余数,并在完成256次计算后,结束计算。⑦计算必须保证完成256次。采用上述校验码生成方法的原因在于能够有效纠正不同数量的错误,实践应用中,对于网络通信质量的提高,能够起到极大的促进作用。
2.3CRC算法在计算机网络通信中应用的优势与缺陷
循环冗余算法在计算机网络通信中的应用,优势较为显著,具体体现在纠错效率高这一方面,可在短时间内迅速完成计算,结束纠错过程,对于计算机网络通信速度的提高以及通信效率的保证,均具有重要价值,与传统检错码纠错的应用效果相比,优势显著。但需要认识到的是,该算法的应用同样具有一定的缺陷,主要体现在参数表的存储方面,必须具备较大的空间,以存储参数码,否则,算法的纠错效率则会受到影响。
3CRC算法的纠错条件与注意事项
3.1CRC算法的纠错条件
循环冗余校验算法在计算机网络通信纠错过程中的应用,必须保证具备一定的条件:①能够将所有奇数个的错误进行纠错处理。②单个突发性错误可被有效纠正。③两个错误可被有效纠正。如纠错满足上述条件,则认为循环冗余校验算法,可有效满足计算机网络通信对于通信可靠性以及通信效率的需求,可将其用于通信的纠错过程中,以使计算机通信整体水平得到进一步的提高。
3.2CRC算法应用注意事项
在循环冗余校验算法的应用过程中,需注意的问题包括多项式的选择以及算法编码方法的选择两种。
3.2.1多项式的选择
在算法执行过程中,判断通信是否存在错误,需要将以二进制为代表的数据包,与某一多项式相除,并通过对两者是否能够整除的判断,实现纠错的功能。在这一过程中,如何选择多项式,会对最终的计算结果产生极大的影响,进而影响纠错效果,因此,在循环冗余校验算法的应用过程中,必须重视多项式的选择问题。通常情况下,多项式会自动生成,而自动生成的多项式,往往具有一定的规律。差错以及误码检测的特点,是决定所生成的多项式的主要因素。为提高多项式生成的可靠性,必须确保所有发生错误的位数,其余数不为零。另外,如错误的位置较多,处于不同位置的错误,其余数应与其位置相互对应,且与余数循环的规律相符合。在满足上述条件的基础上,多项式选择的准确率更高。
3.2.2算法编码方法
在循环冗余算法的应用过程中,需要首先将数据包编码,目的主要在于使其第k位有效信息,能够实现左移r个单位的过程,进而得到余数。可将编码所包含与体现的信息,视为数值,并采用模2运算的方法,对其余数的多项式进行运算,最终获得相应校验码。
4结论
综上所述,CRC算法属于计算机网络通信纠错算法的一种,具有纠错效率高的优势,且能够有效发现数据传输过程中的错误,提高通信的可靠性。在该算法的应用过程中,应注意有关多项式以及算法编码方法等问题,同时,综合应用模2运算法,确保通信过程发生的差错,能够被有效发现与纠正,这对于计算机网络通信整体效率的提高以及效果的改善具有重要意义。
[参考文献]
[1]许伟,王晓燕.CRC算法在计算机网络通信中的应用[J].数字技术与应用,2014(02):119-121.
[2]程立辉,黄贻彬,付金华,徐洁.CRC算法在计算机网络通信中的漏检分析[J].河南科学,2007(03):473-475.
[3]万晓燕,陈姗.CRC算法在计算机网络通信中的应用策略探究[J].信息系统工程,2016(05):144.
[4]陶传会.浅议CRC算法在计算机网络通信中应用[J].信息与电脑(理论版),2011(05):136-138.
作者:李欣 单位:新疆工程学院