[发明专利]一种基于网络数据包的校验方法及系统在审
申请号: | 202010578596.9 | 申请日: | 2020-06-23 |
公开(公告)号: | CN111835587A | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 何骏;武元杰;余军;李鹏展;乔绍虎 | 申请(专利权)人: | 郑州信大捷安信息技术股份有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L1/00 |
代理公司: | 北京鑫浩联德专利代理事务所(普通合伙) 11380 | 代理人: | 李荷香 |
地址: | 450003 河南省*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 网络 数据包 校验 方法 系统 | ||
本发明涉及一种基于网络数据包的校验方法及系统,所述方法包括:由发送端形成一帧数据内容,并预将所述数据内容发送给接收端;发送端通过反码求和算法对数据内容进行计算,并得出校验和A1;发送端将校验和A1填入数据报文头的校验和字段中,并将其与所述数据内容按照时钟节拍顺序依次发送给接收端;接收端接收到数据报文头和数据内容,并从数据报文头的校验和字段中提取出校验和A1,通过反码求和算法对所述数据内容进行计算得出校验和B1;由接收端判断计算得到的校验和B1是否与接收到的校验和A1相一致,如果一致,则继续后续对数据内容的处理流程,如果不一致,则舍弃该数据内容,本发明采用多路并行计算方式,实现对校验和的高速计算。
技术领域
本发明属于数据传输技术领域,尤其涉及一种采用多路并行计算方式并可以实现对校验和的高速计算的基于网络数据包的校验方法及系统。
背景技术
检验和(checksum),在数据处理和数据通信领域中,用于校验目的地一组数据项的和。校验和是指传输位数的累加,当传输结束时,接收者可以根据这个数值判断是否接到了所有的数据。如果数值匹配,那么说明传送已经完成。 TCP和UDP传输层都提供了该功能。检验和通常用来在通信中,尤其是远距离通信中保证数据的完整性和准确性。
在FPGA上进行网络协议的解析处理过程中,多采用流水线式处理模式;由于传输层要对整个数据包进行校验和计算,然后添加到数据包的头部,传统的校验和计算方式多采用横向累计求和方法,该方法如果要跟上流水线的速度,必须在一个时钟节拍内完成一个AXIS数据单元的内部累加和,随着AXIS位宽变大,累加单元变多,采用组合逻辑导致的负的时序余量和(tns)会更大,进而导致计算功能错误。
发明内容
为了解决上述问题,本发明的目的在于有必要提供一种可以保证数据的完整性和准确性的基于网络数据包的校验方法及系统。
本发明的目的是这样实现的:
本发明第一方面提出一种基于网络数据包的校验方法,所述方法包括以下步骤:
步骤1)、由发送端形成一帧数据内容,并预将所述数据内容发送给接收端;
步骤2)、所述发送端通过反码求和算法对数据内容进行计算,并得出校验和A1;
步骤3)、所述发送端将校验和A1填入数据报文头的校验和字段中,并将其与所述数据内容按照时钟节拍顺序依次发送给所述接收端;
步骤4)、所述接收端接收到数据报文头和数据内容,并从数据报文头的校验和字段中提取出校验和A1,通过反码求和算法对所述数据内容进行计算得出校验和B1;
步骤5)、由所述接收端判断计算得到的校验和B1是否与接收到的校验和 A1相一致,如果一致,则继续后续对数据内容的处理流程,如果不一致,则舍弃该数据内容。
进一步的,所述发送端通过反码求和算法对数据内容进行计算,并得出校验和A1,具体包括:
发送端将所述数据内容按照时钟节拍划分为n个数据段a1,a2,a3,…,an;所述发送端将每个数据段a1,a2,a3,…,an按照k比特划分为m个数据单元 a11,a12,a13,…,a1m;a21,a22,a23,…,a2m;a31,a32,a33,…,a3m;…;an1,an2,an3,…,anm;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州信大捷安信息技术股份有限公司,未经郑州信大捷安信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010578596.9/2.html,转载请声明来源钻瓜专利网。