时间:2023-03-21 17:35:38
序论:在您撰写CRC漏检原因分析及算法研究时,参考他人的优秀作品可以开阔视野,小编为您整理的1篇范文,希望这些建议能够激发您的创作热情,引导您走向新的创作高度。
CRC校验是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来做错误侦测,其特征是信息字段和校验字段的长度可以任意选定,可以对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。CRC校验的基本思想是先在要发送的帧后面附加一个数(即用来校验的校验码),生成一个新帧发送给接收端。要使生成的新帧能与发送端和接收端共同选定的某个数整除,校验时采用“模2除法”。所以,在发送端附加的这个数,主要作用是使该数“去余”,故在两端的运算结果应该没有余数,如果有余数,则表明该数在传输过程中出现了差错。C3列控系统车地间传输的数据若不发生变化,也就不存在漏检的可能性。在车地间数据通信时,若存在干扰或发生越区切换,且车地间正在进行数据交互,则可能导致HDLC(高级数据链路控制)帧内容发生改变,从而存在漏检的可能性。我国铁路无线通信采用CRC-16,即使用16位校验码检查数据的正确性,漏检概率为1/216=1/65536。CTCS-3车载设备、GSM-R网络、CTCS-3地面设备及监测接口如图1所示。
1CRC漏检案例分析
(1)案例1。问题现象:2021年2月12日6时39分,徐兰高铁线DJ5732次(CRH380B-3761-01)运行至三门峡南站至渑池南站间上行线K761+450m处无线连接超时,C3转C2触发常用制动降速至280km/h,未停车,6时41分运行至渑池南站至洛阳龙门站间上行线K752+190m处恢复C3模式。①PRI接口数据分析由PRI接口数据可知,车地间数据交互异常,拆链异常。06∶39∶14.314和06∶39∶14.514上行方向连续发送了3个FRMR(帧拒绝),数据内容为038760D2D2,经过解析,被拒绝的HDLC帧控制字段为0×60D2;通过查看为06∶39∶13.640,RBC向ATP(列车超速防护系统)发送的NS∶48,NR∶105数据内容为0360D20180,包含60D2(见图2),说明被拒绝的HDLC帧控制字段由RBC向车载发送。②Igsm-r接口数据分析由Igsm-r接口监测数据可知,06∶39∶13.806,上行方向发送了FRMR帧,经过解析,被拒绝的HDLC帧控制字段为0×60D2;查看数据可知06∶39∶13.762,RBC发送的NS:48,NR:105数据中包含0×60D2,而且此帧字段长达75个字节,超过设定的最大长度的I帧(41个字节),且通过了CRC校验(见图3),06∶39∶14.369,下行方向发送DISC拆链指令,断开无线连接,导致无线连接超时。通过Um接口测量报告可知,列车切换前后,车地数据传输下行链路通信质量和电平值均正常,电台正常发送测量报告,基站正常发送系统消息,可以排除无线干扰。车地间数据传输异常,06∶39∶13.806,上行方向发送了FRMR帧,经过解析,被拒绝的HDLC帧控制字段为0×60D2;查看数据可知06∶39∶13.762,RBC发送的NS:48,NR:105数据中包含0×60D2,在Igsm-r接口收到此帧字段长达75个字节,超过设定的最大长度的I帧,且此时正处于切换过程中,由于信道不稳定,数据字段发生变化,导致I帧通过了CRC校验,进而ATP发送FRMR帧,最终影响了车地间数据的正常交互,06∶39∶14.369,下行方向发送DISC(拆链指令)。(2)案例2。问题现象:2021年3月2日7时10分,郑阜高铁G7787次(CRH380B-3770-01)运行至临泉至阜阳西间K298+590处报无线连接超时降C2触发B7制动,7时33分恢复C3运行。①Igsm-r接口数据分析Igsm-r接口数据显示,车地间数据交互正常,但在07∶09∶48.879,上行方向发送的NS:108,NR∶109的I帧,数据内容为03D8DA0158A341E1831B320F85,网络位控制字段显示异常(见图4),正常应为0100。上行方向发送DRTPDU(断开传送协议数据单元)信令拆链。②Um接口数据分析Um接口信令显示,车地间数据交互正常,07∶09∶49.407MT成功从BCCH(广播控制信道)=1011小区切换至BCCH=1009小区,在切换期间07∶09∶49.246,RBC发送的NS:108,NR∶109的I帧,数据内容为03D8DA0100264070A0F64C81E141E91905C283显示正常(见图5),07∶09∶51.658,ATP在链路层发送HDLC_DISC信令拆链。72从C3数据可知,Um接口数据与Igsm-r接口数据显示不一致,07∶09∶49.246,RBC发送的NS∶108,NR∶109的I帧,在Um接口上网络控制字段第4、5字节显示为0×0100,但在Igsm-r接口显示为0×0158显示异常。从切换过程分析,ATP发送NS:108号I帧时正好处于切换过程中,切换时易发生误码,导致数据在传输出现异常。ATP在网络层组包时判断该数据存在异常,于07∶09∶50.310发送DRTPDU信令拆链,导致无线连接超时。从以上两件案例可以看出,CRC漏检均发生于小区切换过程中,在数据长度和内容方面均可能发生变化。假定动车组速度为300km/h、每个小区覆盖范围为3km,每次越区切换产生1次误包。CRC校验漏检的概率为1/65536,即65536个误包才会发生一个漏检的错误。速度为300km/h、小区覆盖范围为3km,则1h最多经过100个小区。每次越区切换产生一个误包,则1h最多产生100个误包,故产生CRC漏检需要的最少时间为65536/100=655.36h,约为27.31天。说明动车组连续以300km/h的速度持续运行至少27.31天会发生一次CRC漏检的错误。
2校验原理及存在的问题
根据CRC校验原理[1]:含CRC校验码的数据由两部分组成,前一部分是K+1个bit的待发送信息,后一部分是R个bit的冗余码。计算过程中要用到两个多项式:f(x)和G(x),f(x)是K阶多项式,G(x)是r阶的生成多项式,由发收双方预先约定。设实际要发送的信息序列为1010001101(10个bit,K=9),则:f(x)=1×X9+0×X8+1×X7+0×X6+0×X5+0×X4+1×X3+1×X2+0×X+1再假设发收双方预先预订了一个5阶(r=5)的生成多项式:G(x)=X5+X4+X2+1=1×X5+1×X4+0×X3+1×X2+0×X+1则其序数序列为110101。(1)CRC校验码的产生方法如下:生成r个bit的冗余码:用模2除法进行X5f(x)/G(x)运算,得余数R(x),即为CRC校验码。(模2加法:1+1=0,0+1=1,0+0=0;模2减法:1-1=0,0-1=1,1-0=1,0-0=0)f(x)/G(x)=1101010110……01110(2)用模2减法进行X5f(x)-R(x)运算,得到带CRC校验的发送序列:X5f(x)-R(x)=101000110101110(3)在接收方,用生成多项式G(x)除所接收到的序列。若余数为0,则表示传输无差错,否则说明传输过程出现差错。从以上可以看出,因采用16位校验码,漏检的概率较大,只要选择足够的冗余位,就可以使得漏检率减少到任意小的程度[2]。以上案例中,PRI接口中的数据帧长度为39个字节,到达Igsm-r接口时,数据帧长度变为75个字节,超过设定的最大长度的I帧(41个字节),且通过了CRC校验。
3解决方案及建议
结合CRC校验原理和实际发生的故障案例分析,CRC校验机制存在一定的漏检概率,可通过以下3种方式减少系统漏检的发生。(1)增加长度检查和校验冗余位,提高校验的准确率。目前采用CRC-16校验,若使用CRC-32校验,漏检率将从216降低至232,可大幅降低漏检率,漏检的情况基本不会发生。但要求全路配属C3级动车组的ATP、RBC、MSC设备同时改变校验方式,必须停用全路动车组C3级控车功能进行设备硬件改造、软件升级,不但实施难度大,而且影响范围广,任何一个环节出现问题均会导致失败。(2)既有CRC校验过程中未纳入数据序列长度检查条件,进行长度检查后,可有效避免因帧长度变化发生的漏检现象[3]。I帧最大帧长为41,RR帧长最大为5。若接收的I帧长超过41、RR帧长超过5可直接丢弃不进行处理,请求重传。此种方式改动小,可分步实施,通过逐个改造设备或升级其运算方式的方法实现,不影响其他处理机制,兼容性强。(3)增加系统容错时间门限和重传次数[4]。在数据链路层进行组帧、传输与拆帧时,若CRC校验过程中,发现信息帧出现错误,在目前探寻帧请求重发的既有时长、频次机制下,增加请求上一个节点重传帧的时间门限和发送次数,使正确的帧信息能够被接收直至使用[5],减少数据的误传和组帧错误概率,进一步减少无线连接超时发生的次数。在降低漏检率方面,虽然方案(2)和方案(3)不如方案(1)理想,(若HDLC帧长符合规定,但内容发生改变,则仍可能漏检,如案例2),但易于实现,实施难度小,建议采用方案(2)和方案(3)。通过在算法中增加数据序列长度、控制帧检查的判断条件,将不符合帧长度和控制字段的帧丢弃,同时增加系统容错时间门限和重传次数,可减少因部分帧的长度、控制字段发生改变而导致发生CRC的漏检,提高数据传输的准确性,进一步压减无线连接超时故障。
参考文献:
[1]钟章队.吴昊.铁路数字移动通信系统(GSM-R)无线网络规划与优化[M].北京:清华大学出版社.2012.
[2]李明军.CRC的漏检率分析和铁路信号产品的安全性改进[J].铁道通信信号,2013,49(Z2):91-94.
[3]张志斌.空口监测在CTCS-3级列控系统无线超时分析中的应用研究[J].铁道通信信号,2022,58(10):71-75.
[4]李兵.多径干扰引起的CTCS-3级无线通信超时分析及电台优化方案[J].铁道通信信号,2022,58(10):65-70.
[5]方诚.CTCS-3级列控系统无线通信超时车载侧软件优化建议[J].铁道通信信号,2022,58(9):14-19.
作者:黄春生 徐唐桥 单位:西安高铁基础设施段 青藏铁路集团公司电务部(援藏)