最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能装备

数控总线的消息安全通信方法

发布时间:2014-04-06 作者:胡毅 于东 郭锐锋 岳东峰 刘明烈 何平  来源:万方数据
关键字:数控 总线 消息安全 
针对数控总线的异步及同步通信特点,提出一种在数控总线应用层之上对所传输消息采用动态循环冗余校验(Cyclical redundancy check,CRC)的消息安全通信方法。给出数控总线安全报文结构,设计出基于动态CRC校验的安全通信方法及相应算法。采用数学手段及试验测试对所提出方法与传统方法进行性能比较,证明该方法满足通信实时性要求,同时剩余错误率有明显降低,并能完全满足消息完整性等级要求。结果表明,该方法适合于数控总线消息安全通信的应用。
 

  3.3剩余错误率

  剩余错误率P1是指在解码校验之后仍然没有被检测到的已经被破坏的传输数据所占的比例,即没有被检测出的错误位的数量与所有传输位的总数的比值。计算公式如下

   

  通常来讲,剩余错误率尸1与消息长度n、生成多项式加)以及位错误率P有关。位错误率P表示通信过程中发生错误的位的数量与所有传输的位的数量比值,即

   

  最坏情况下p=0.5,意味着每两位中有一位出现错误,实际应用中P的取值范围在。0

  剩余错误率P1的计算方法主要有直接代码分析法、Monte-Carlo模拟法以及代码转化分析法等几种,本文从降低算法复杂度的角度出发采用了直接代码分析法。

   

  对于传统的CRC校验,无法检测的错误主要分为两种情况,一种是只有安全数据发生错误,而CRC校验值却没有发生错误;第二种是安全数据和CRC校验值都发生了错误。因此,对于本文提出的方法,由于即将用于传输的校验值是由上一个校验值与即将用于传输的安全数据Sd,i共同产生的,而CRC的校验也是由上一个CRC和安全数据凡,共同完成的,所以当上一个CRC校验值发生传输错误时,一般都会造成当前CRC校验无法通过。根据本文所述方法,这种情况下是需要重传安全数据Sd,i-1与上一个CRC校验值,因此在很大程度上降低了剩余错误率。本方法的剩余错误率P2的计算方程式为

   

   

4 试验测试与评价

  4.1实时性

  本方法使用查表法计算CRC校验码,以字节为单位进行循环计算,循环次数为被校验字符串的字节长度n。每一次循环计算过程只涉及一次左移运算、一次查表运算和两次异或运算,时间复杂度为O(1),因此本方法时间复杂度为O(n)。由此可知,从理论上分析,本方法的时间复杂度不高。在此基础上,本文对增加安全通信层后该层对总线通信所增加的时延进行了测试。

   

  测试用工控机硬件环境为1.6 GHz x86 CPU、512 MB RAM, 40 GB硬盘,所用数控总线是基于之RS485、传输速率为16 MB/s的同步串行总线。试}验包括1个主站点和1个从站点。试验过程中,主站点发送10 000帧给从站点,每帧大小16 B。通过总线分析仪累加记录通信总时延和安全通信层所耗时间,取每帧平均耗时得:td=48.26μstms=1.23μs。

  测试结果表明,安全通信层时延开销占整个总线时延的3%左右,在可接受范围之内。因此,本方法在实时性方面可满足数控总线要求。

6
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。