CN110381050B - 数据包的多协议转化校验方法和装置 - Google Patents

数据包的多协议转化校验方法和装置 Download PDF

Info

Publication number
CN110381050B
CN110381050B CN201910631864.6A CN201910631864A CN110381050B CN 110381050 B CN110381050 B CN 110381050B CN 201910631864 A CN201910631864 A CN 201910631864A CN 110381050 B CN110381050 B CN 110381050B
Authority
CN
China
Prior art keywords
packet
protocol
content information
information
data packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910631864.6A
Other languages
English (en)
Other versions
CN110381050A (zh
Inventor
沈剑良
高琛
张帆
刘冬培
陈艇
汪欣
张文建
虎艳宾
张丽
于洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Information Engineering University of PLA Strategic Support Force
Original Assignee
Information Engineering University of PLA Strategic Support Force
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Information Engineering University of PLA Strategic Support Force filed Critical Information Engineering University of PLA Strategic Support Force
Priority to CN201910631864.6A priority Critical patent/CN110381050B/zh
Publication of CN110381050A publication Critical patent/CN110381050A/zh
Application granted granted Critical
Publication of CN110381050B publication Critical patent/CN110381050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

本发明提供了数据包的多协议转化校验方法和装置,包括:交换芯片接收第一校验设备发送的第一数据包;从解析的第一数据包中提取源协议的包头信息和包内容信息;将源协议的包头信息转化为第二校验设备中目的协议的包头信息;将目的协议的包头信息和源协议的所述包内容信息进行封装,得到第二数据包;将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;可以对数据包的包头信息及包内容信息进行双重检测,更加全面的检测协议转化后的数据包是否正确,从而提高验证效率和验证可信度。

Description

数据包的多协议转化校验方法和装置
技术领域
本发明涉及嵌入式系统技术领域,尤其是涉及数据包的多协议转化校验方法和装置。
背景技术
随着互联网、物联网和人工智能的快速发展,当前网络互联的自动化、智能化水平不断提升,这种情况促进了嵌入式处理技术的快速发展,给高性能嵌入式系统的互联互通方面带来了严峻的挑战。SRIO协议是面向嵌入式系统开发提出的高可靠、高性能、基于包交换的新一代高速互联技术,是未来十几年中嵌入式系统互联的最佳选择协议之一。FC-AE-ASM标准本身是一个FC应用到航空电子环境中的一组协议集,主要用于航空电子环境下各设备之间的数据通信、传输视频、指控等数据。在国内FC-AE-ASM协议已经开始预研和验证,并对国际标准协议进行了一些特定的改进,是将来国内应用的一个重点方向。以太网(ETH)标准是一个古老而又充满活力的标准,在ETH提出后的这几十年中,ETH技术得到了不断的发展,时至今日,千兆ETH和万兆ETH得以推广,在局域网范围市场占有率超过90%。因此实现嵌入式系统与ETH的互联互通具有重大意义。
在芯片的研发阶段,如何正确验证协议转换芯片是否成功具备协议转换的功能是一个十分重要的课题。通常采用两种方式,第一种方式是对发送端发送的数据包和接收端收到的数据包的数量进行统计与对比,来检验转换芯片的协议转发功能是否正确。第二种方式是对发送端发送的数据内容和接收端收到的数据内容进行统计与对比,来检验转换芯片的协议转发功能是否正确。但是,第一种方式只能从表面上验证转换芯片能否将数据包转发到目的设备,并不能验证转发到目的设备的数据包携带的数据内容是否正确。第二种方式只能从表面上验证转换芯片能否将数据包正确转发到目的设备,并不能验证转发到目的设备的Header(包头信息)是否正确。
总的来说,上述两种方式都不能准确地验证转换芯片是否将数据包正确发送到目的设备。
发明内容
有鉴于此,本发明的目的在于提供数据包的多协议转化校验方法和装置,可以对数据包的包头信息及包内容信息进行双重检测,更加全面的检测协议转化后的数据包是否正确,从而提高验证效率和验证可信度。
第一方面,本发明实施例提供了数据包的多协议转化校验方法,应用于交换芯片,所述方法包括:
接收第一校验设备发送的第一数据包;
将所述第一数据包进行解析,得到解析的第一数据包;
从所述解析的第一数据包中提取源协议的包头信息和包内容信息;
将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息;
将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装,得到第二数据包;
将所述第二数据包发送给所述第二校验设备,以使所述第二校验设备对所述第二数据包进行校验,生成校验结果;
其中,所述校验结果包括协议转换成功结果和协议转换失败结果。
进一步的,所述第一数据包由所述源协议的所述包头信息和所述包内容信息封装的数据包,或者,由所述源协议的所述包头信息、所述包内容信息和循环冗余校验CRC校验码封装的数据包,其中,所述CRC校验码是通过所述包内容信息进行多项式计算得到的。
进一步的,当所述源协议为FC-AE-ASM或ETH协议,所述目的协议为SRIO协议时,在将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息之后,在将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装之前,所述方法还包括:
将所述源协议的所述包内容信息进行切包,得到多个子包内容信息;
其中,所述子包内容信息的长度不大于256B。
第二方面,本发明实施例提供了数据包的多协议转化校验方法,应用于第二校验设备,所述方法包括:
接收交换芯片发送的第二数据包;
将所述第二数据包进行解析,得到解析的第二数据包;
从所述解析的第二数据包中提取目的协议的包头信息和字段信息;
将所述目的协议的字段信息按照预设方式进行匹配,以及将所述目的协议的包头信息与源协议的包头信息进行匹配;
如果匹配成功,则生成协议转换成功结果;
如果匹配不成功,则生成协议转换失败结果;
其中,所述字段信息包括包内容信息和/或CRC校验码,所述预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与所述CRC校验码的匹配。
进一步的,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述包内容信息与预存的包内容信息进行匹配。
进一步的,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述包内容信息与预设条件中的所述初始包内容信息和/或所述结束包内容信息进行匹配,其中,所述预设条件为所述包内容信息以递增或递减的形式进行排列。
进一步的,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述CRC校验码进行解析,得到所述CRC校验码对应的包内容信息;
将所述CRC校验码对应的包内容信息与所述包内容信息进行匹配。
进一步的,在所述从所述解析的第二数据包中提取目的协议的包头信息和字段信息之后,在将所述目的协议的字段信息按照预设方式进行匹配之前,所述方法还包括:
将所述目的协议的字段信息中的包内容信息进行整合,得到整合的包内容信息。
第三方面,本发明实施例提供了数据包的多协议转化校验装置,应用于交换芯片,所述装置包括:
第一接收单元,用于接收第一校验设备发送的第一数据包;
第一解析单元,用于将所述第一数据包进行解析,得到解析的第一数据包;
第一提取单元,用于从所述解析的第一数据包中提取源协议的包头信息和包内容信息;
转化单元,用于将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息;
封装单元,用于将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装,得到第二数据包;
校验单元,用于将所述第二数据包发送给所述第二校验设备,以使所述第二校验设备对所述第二数据包进行校验,生成校验结果;
其中,所述校验结果包括协议转换成功结果和协议转换失败结果。
第四方面,本发明实施例提供了数据包的多协议转化校验装置,应用于第二校验设备,所述装置包括:
第二接收单元,用于接收交换芯片发送的第二数据包;
第二解析单元,用于将所述第二数据包进行解析,得到解析的第二数据包;
第二提取单元,用于从所述解析的第二数据包中提取目的协议的包头信息和字段信息;
匹配单元,用于将所述目的协议的字段信息按照预设方式进行匹配,以及将所述目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;
其中,所述字段信息包括包内容信息和/或CRC校验码,所述预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与所述CRC校验码的匹配。
本发明实施例提供了数据包的多协议转化校验方法和装置,包括:交换芯片接收第一校验设备发送的第一数据包;将第一数据包进行解析,得到解析的第一数据包;从解析的第一数据包中提取源协议的包头信息和包内容信息;将源协议的包头信息转化为第二校验设备中目的协议的包头信息;将目的协议的包头信息和源协议的所述包内容信息进行封装,得到第二数据包;将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;第二校验设备接收交换芯片发送的第二数据包;将第二数据包进行解析,得到解析的第二数据包;从解析的第二数据包中提取目的协议的包头信息和字段信息;将目的协议的字段信息按照预设方式进行匹配,以及将目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;其中,字段信息包括包内容信息和/或CRC校验码,预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与CRC校验码的匹配,可以对数据包的包头信息及包内容信息进行双重检测,更加全面的检测协议转化后的数据包是否正确,从而提高验证效率和验证可信度。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的数据包的多协议转化校验方法流程图;
图2为本发明实施例二提供的另一数据包的多协议转化校验方法流程图;
图3为本发明实施例二提供的数据包格式示意图;
图4为本发明实施例二提供的另一数据包格式示意图;
图5为本发明实施例二提供的又一数据包格式示意图;
图6为本发明实施例三提供的数据包的FC-AE-ASM或ETH协议转化SRIO协议的校验装置示意图;
图7为本发明实施例四提供的数据包的多协议转化校验装置示意图;
图8为本发明实施例五提供的另一数据包的多协议转化校验装置示意图。
图标:
21-第一接收单元;22-第一解析单元;23-第一提取单元;24-转化单元;25-封装单元;26-校验单元;31-第二接收单元;32-第二解析单元;33-第二提取单元;34-匹配单元。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本实施例进行理解,下面对本发明实施例进行详细介绍。
实施例一:
图1为本发明实施例一提供的数据包的多协议转化校验方法流程图。
参照图1,执行主体为交换芯片,该方法包括以下步骤:
步骤S101,接收第一校验设备发送的第一数据包;
步骤S102,将第一数据包进行解析,得到解析的第一数据包;
步骤S103,从解析的第一数据包中提取源协议的包头信息和包内容信息;
这里,交换芯片接收第一校验设备发送的第一数据包,第一数据包中包括的协议为源协议。交换芯片对第一数据包进行解析,并从解析的第一数据包括中提取源协议的包头信息和包内容信息,并存储在缓存中。
步骤S104,将源协议的包头信息转化为第二校验设备中目的协议的包头信息;
步骤S105,将目的协议的包头信息和源协议的所述包内容信息进行封装,得到第二数据包;
这里,为了更好的验证协议转换的正确性,先将源协议的包头信息转化为目的协议的包头信息,再将目的协议的包头信息和包内容信息进行封装,从而得到目的协议的第二数据包。
步骤S106,将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;
其中,校验结果包括协议转换成功结果和协议转换失败结果。
这里,第二校验设备接收交换芯片发送的第二数据包,将第二数据包括进行解析,提取包头信息和包内容信息,将包头信息和包内容信息分别进行校验,从而验证源协议转化为目的协议的正确性。
进一步的,第一数据包由源协议的包头信息和包内容信息封装的数据包,或者,由源协议的包头信息、包内容信息和循环冗余校验CRC校验码封装的数据包,其中,CRC校验码是通过包内容信息进行多项式计算得到的。
具体地,第一数据包可以由源协议的包头信息和包内容信息封装而成,也可以根据包内容信息进行多项式计算,得到一个CRC校验码,并将CRC校验码插入到包内容信息的后面,第一数据包由源协议的包头信息、包内容信息和CRC校验码封装而成。
进一步的,当源协议为FC-AE-ASM或ETH协议,目的协议为SRIO协议时,在步骤S104之后,在步骤S105之前,该方法还包括:
将源协议的包内容信息进行切包,得到多个子包内容信息;
其中,子包内容信息的长度不大于256B。
具体地,交换芯片将FC-AE-ASM/EHT协议格式的第一数据包转换成第二校验设备可识别的SRIO协议的第二数据包,由于FC-AE-ASM/ETH协议格式的第一数据包中包内容信息的长度比SRIO协议的第二数据包中包内容信息的长度要大得多,所以在转议转换的过程中,对第一数据包中的包内容信息进行切包,即将包内容信息切包成多个子包内容信息,每个子包内容信息的长度不大于256B。
实施例二:
图2为本发明实施例二提供的另一数据包的多协议转化校验方法流程图。
参照图2,执行主体为第二校验设备,该方法包括以下步骤:
步骤S201,接收交换芯片发送的第二数据包;
步骤S202,将第二数据包进行解析,得到解析的第二数据包;
步骤S203,从解析的第二数据包中提取目的协议的包头信息和字段信息;
步骤S204,将目的协议的字段信息按照预设方式进行匹配,以及将目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则执行步骤S205;如果匹配失败,则执行步骤S206;
步骤S205,生成协议转换成功结果;
步骤S206,生成协议转换失败结果;
其中,字段信息包括包内容信息和/或CRC校验码,预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与CRC校验码的匹配。
这里,将目的协议的包头信息与源协议的包头信息进行匹配,即判断目的协议的包头信息与源协议的包头信息中是否存在相同字段,其中,相同字段包括destID、ftype和srcID,也就是判断相同字段中的destID、ftype和srcID是否相同。
进一步的,步骤S204包括:
将包内容信息与预存的包内容信息进行匹配。
具体地,参照如图3所示的数据包的格式示意图,应用于FC-AE-ASM/ETH协议转化为SRIO协议,SRIO协议转化为FC-AE-ASM/ETH协议,以及SRIO协议和FC-AE-ASM/ETH协议的多协议转换。
在源协议为FC-AE-ASM或ETH协议,目的协议为SRIO协议,FC-AE-ASM协议转化为SRIO协议的过程中:
第一校验设备随机生成大量的数据作为包内容信息,然后按照FC-AE-ASM协议的包格式、封装扩展包头、包头信息Header及起止符号组成第一数据包,并将第一数据包发送给交换芯片进行协议转换,为了正确校验协议转换后的数据包,将预存的包内容信息存储在第二校验设备,以校验协议转换结果。
第二校验设备在接收到第二数据包后,将包内容信息与预存的包内容信息进行匹配,以及将SRIO协议的包头信息与FC-AE-ASM或ETH协议的包头信息进行匹配,从而校验协议转换的正确性。
在源协议为SRIO协议,目的协议为FC-AE-ASM或ETH协议,SRIO协议转化为FC-AE-ASM或ETH协议的过程中:
第一校验设备随机生成大量的数据作为包内容信息,然后按照SRIO协议的包格式、封装包头信息Header组成第一数据包,包头信息Header所携带的信息包括ftype,ftype为固定值。将第一数据包发送给交换芯片进行协议转换,为了正确校验协议转换后的数据包,将预存的包内容信息存储在第二校验设备,以校验协议转换结果。
第二校验设备接收来自交换芯片发送的第一数据包后,将包内容信息与预存的包内容信息进行匹配,以及将FC-AE-ASM或ETH协议的包头信息与SRIO协议的包头信息进行匹配,从而校验协议转换的正确性。
在SRIO协议和FC-AE-ASM/ETH协议的多协议转换过程中:
第一校验设备和第二校验设备分别随机生成大量的数据作为包内容信息,包头信息中的关键字段信息,然后按照各协议的包格式,将包内容信息和包头信息封装成数据包,并从第一校验设备和第二校验设备发送给交换芯片。本次应用中,需要区分SRIO协议和FC-AE-ASM/ETH协议中的包头信息的关键字段。
两端校验设备在接收到来自交换芯片转换后的目的协议数据包以后,将数据包的包头信息Header及包内容信息payload进行解析,并进行两级校验。
进一步的,步骤S204包括:
将包内容信息与预设条件中的初始包内容信息和/或结束包内容信息进行匹配,其中,预设条件为包内容信息以递增或递减的形式进行排列。
具体地,参照图如4所示的另一数据包的格式示意图,应用于FC-AE-ASM/ETH协议转化为SRIO协议,SRIO协议转化为FC-AE-ASM/ETH协议,以及SRIO协议和FC-AE-ASM/ETH协议的多协议转换。
在源协议为FC-AE-ASM/ETH协议,目的协议为SRIO协议,FC-AE-ASM/ETH协议转化为SRIO协议的过程中:
第一校验设备(FC-AE-ASM流量模型)生成有规律的数据作为包内容信息,有规律的数据可以为递增、递减或其他有规律的类型;然后按照FC-AE-ASM/ETH协议的包格式,将包头信息Header和包内容信息payload组成第一数据包,并将第一数据包发送给交换芯片进行协议转换得到第二数据包。
SRIO校验设备在接收到第二数据包后,将包内容信息与预设条件进行匹配,例如,包内容信息的初始包内容信息与预设条件中的初始包内容信息相同,或者,包内容信息的初始包内容信息和结束包内容信息与预设条件中的初始包内容信息和结束包内容信息相同;以及将SRIO协议的包头信息与FC-AE-ASM协议的包头信息进行匹配,从而校验协议转换的正确性。
在源协议为SRIO协议,目的协议为FC-AE-ASM/ETH协议,SRIO协议转化为FC-AE-ASM/ETH协议的过程中:
第一校验设备(SRIO流量模型)生成有规律的数据作为包内容信息,有规律的数据可以为递增、递减或其他有规律的类型;然后按照FC-AE-ASM/ETH协议的包格式,将包头信息Header和包内容信息payload组成第一数据包,并将第一数据包发送给交换芯片进行协议转换得到第二数据包。
第二校验设备(FC-AE-ASM校验设备)将第二数据包中的包内容信息和包头信息进行解析并进行两级校验,从而校验协议转换的正确性。
在SRIO协议和FC-AE-ASM/ETH协议的多协议转换过程中:
第一校验设备和第二校验设备同时生成有规律的数据作为包内容信息payload,但两端的数据规律不一样,其结果是为了方便接收端设备的协议转换校验。然后固定Header中关键字段,按照SRIO协议、FC-AE-ASM/ETH协议的包格式,将这些payload、Header封装成数据包,发送到交换芯片中进行协议转换;对端设备接收来自交换芯片转换后的数据包,将数据包的Header及payload进行分离并进行两级校验。将分离后的payload按照已定义的规律进行对比以校验payload是否准确无误的转发;将接收到的Header按照目的协议的包格式对Header进行信息提取与源协议中的包头信息进行对比以校验协议转换的正确性。
进一步的,步骤S204包括:
将CRC校验码进行解析,得到CRC校验码对应的包内容信息;
将CRC校验码对应的包内容信息与包内容信息进行匹配。
具体地,参照图如5所示的又一数据包的格式示意图,
应用于FC-AE-ASM/ETH协议转化为SRIO协议,SRIO协议转化为FC-AE-ASM/ETH协议,以及SRIO协议和FC-AE-ASM/ETH协议的多协议转换。
在源协议为FC-AE-ASM/ETH协议,目的协议为SRIO协议,FC-AE-ASM/ETH协议转化为SRIO协议的过程中:
第一校验设备(FC流量模型)生成有规律的或无规律的数据作为包内容信息payload,对包内容信息payload进行多项式计算,得到CRC校验码,将CRC校验码插入到包内容信息payload的后面,按照FC-AE-ASM/ETH协议的包格式,将包头信息Header、包内容信息payload和CRC校验码封装成第一数据包,发送到交换芯片中进行协议转换。
SRIO校验设备在接收到第二数据包后,提取包头信息Header、包内容信息payload和CRC校验码,然后对CRC校验码进行解析,将解析得到的CRC校验码对应的包内容信息与提取得到的包内容信息进行匹配,从而校验包内容信息在经过协议转换后是否发生错误。
在本实施例中,对包内容信息payload进行多项式计算,得到CRC校验码。例如,包内容信息包括原始数据帧,原始数据帧为1010,生成多项式为:,将生成的多项式转化为对应的二进制除数1011;将原始数据帧1010左移3位变成1010 000,即获取原始数据帧生成的多项式的最高次方,根据最高次方在原始数据帧的后面补相应数量的0。再将二进制除数与1010 000进行模2除(高位对齐),即求异或,得到余位为011,故为1010(payload)011(CRC),从而计算得到CRC校验码。
在源协议为SRIO协议,目的协议为FC-AE-ASM/ETH协议,SRIO协议转化为FC-AE-ASM/ETH协议的过程中:
第一校验设备(SRIO设备)生成有规律的或无规律的数据作为包内容信息payload,对包内容信息payload进行多项式计算,得到CRC校验码,将CRC校验码插入到包内容信息payload的后面,按照SRIO协议的包格式,将包头信息Header、包内容信息payload和CRC校验码封装成第一数据包,发送到交换芯片中进行协议转换。
第二校验设备(FC-AE-ASM/ETH校验设备)在接收到第二数据包后,提取包头信息Header、包内容信息payload和CRC校验码,然后对CRC校验码进行解析,将解析得到的CRC校验码对应的包内容信息与提取得到的包内容信息进行匹配,从而校验包内容信息在经过协议转换后是否发生错误。
在SRIO协议和FC-AE-ASM/ETH协议的多协议转换过程中:
第一校验设备和第二校验设备同时按照源协议的包格式,将CRC校验码、payload、包头信息Header封装成数据包,发送到交换芯片中进行协议转换;对端设备将接收到的数据包的Header、payload及CRC校验码进行分离,并将CRC校验码解析,将解析后的内容与所收到的包的payload内容进行对比校验。
上述方法不需要在接收设备中备份包内容信息,校验设备按照CRC的解码算法可实现自动的对接收到的数据包进行包头信息Header及数据包的自动对比,但在两端的设备中都需要设计CRC解码模块。
进一步的,在步骤S203之后,在步骤S204之前,该方法还包括:
将目的协议的字段信息中的包内容信息进行整合,得到整合的包内容信息。
这里,当源协议为FC-AE-ASM/ETH协议,目的协议为SRIO协议时,由于FC-AE-ASM/ETH协议格式的第一数据包中包内容信息的长度比SRIO协议的第二数据包中包内容信息的长度要大得多,所以在转议转换的过程中,对第一数据包中的包内容信息进行切包,即将包内容信息切包成多个子包内容信息,故SRIO校验设备在接收到第二数据包后,需要对第二数据包括中提取得到的包内容信息进行整合,得到整合的包内容信息,并根据整合的包内容信息进行校验。
本发明实施例提供了数据包的多协议转化校验方法和装置,包括:交换芯片接收第一校验设备发送的第一数据包;将第一数据包进行解析,得到解析的第一数据包;从解析的第一数据包中提取源协议的包头信息和包内容信息;将源协议的包头信息转化为第二校验设备中目的协议的包头信息;将目的协议的包头信息和源协议的所述包内容信息进行封装,得到第二数据包;将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;第二校验设备接收交换芯片发送的第二数据包;将第二数据包进行解析,得到解析的第二数据包;从解析的第二数据包中提取目的协议的包头信息和字段信息;将目的协议的字段信息按照预设方式进行匹配,以及将目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;其中,字段信息包括包内容信息和/或CRC校验码,预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与CRC校验码的匹配,可以对数据包的包头信息及包内容信息进行双重检测,更加全面的检测协议转化后的数据包是否正确,从而提高验证效率和验证可信度。
实施例三:
图6为本发明实施例三提供的数据包的FC-AE-ASM或ETH协议转化SRIO协议的校验装置示意图。
参照图6,该装置包括FC/ETH校验设备、交换芯片和SRIO校验设备,FC/ETH校验设备、交换芯片和SRIO校验设备依次连接;其中,FC即为FC-AE-ASM。
FC/ETH校验设备包括配置模块,配置模块用于对包头信息中所携带信息、包括数量进行配置。
交换芯片中的FC/ETH端口接收FC/ETH校验设备发送的源协议为FC-AE-ASM/ETH的第一数据包,将第一数据包进行解析,得到解析的第一数据包,从解析的第一数据包中提取FC-AE-ASM/ETH协议的包头信息和包内容信息,并存储在缓存中;将FC-AE-ASM/ETH协议的包头信息转化为SRIO协议的包头信息;将SRIO协议的包头信息和包内容信息进行封装,得到第二数据包;将第二数据包通过SRIO端口发送给SRIO校验设备,SRIO校验设备将第二数据包解析出包头信息和包内容信息,然后将包头信息中携带的信息以及包内容信息进行两级校验,以验证目的协议转换的正确性。
实施例四:
图7为本发明实施例四提供的数据包的多协议转化校验装置示意图。
参照图7,执行主体为交换芯片,该装置包括:
第一接收单元21,用于接收第一校验设备发送的第一数据包;
第一解析单元22,用于将第一数据包进行解析,得到解析的第一数据包;
第一提取单元23,用于从解析的第一数据包中提取源协议的包头信息和包内容信息;
转化单元24,用于将源协议的包头信息转化为第二校验设备中目的协议的包头信息;
封装单元25,用于将目的协议的包头信息和源协议的包内容信息进行封装,得到第二数据包;
校验单元26,用于将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;
其中,校验结果包括协议转换成功结果和协议转换失败结果。
实施例五:
图8为本发明实施例五提供的另一数据包的多协议转化校验装置示意图。
参照图8,执行主体为第二校验设备,该装置包括:
第二接收单元,用于接收交换芯片发送的第二数据包;
第二解析单元,用于将所述第二数据包进行解析,得到解析的第二数据包;
第二提取单元,用于从所述解析的第二数据包中提取目的协议的包头信息和字段信息;
匹配单元,用于将所述目的协议的字段信息按照预设方式进行匹配,以及将所述目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;
其中,所述字段信息包括包内容信息和/或CRC校验码,所述预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与所述CRC校验码的匹配。
本发明实施例提供了数据包的多协议转化校验方法和装置,包括:交换芯片接收第一校验设备发送的第一数据包;将第一数据包进行解析,得到解析的第一数据包;从解析的第一数据包中提取源协议的包头信息和包内容信息;将源协议的包头信息转化为第二校验设备中目的协议的包头信息;将目的协议的包头信息和源协议的所述包内容信息进行封装,得到第二数据包;将第二数据包发送给第二校验设备,以使第二校验设备对第二数据包进行校验,生成校验结果;第二校验设备接收交换芯片发送的第二数据包;将第二数据包进行解析,得到解析的第二数据包;从解析的第二数据包中提取目的协议的包头信息和字段信息;将目的协议的字段信息按照预设方式进行匹配,以及将目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;其中,字段信息包括包内容信息和/或CRC校验码,预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与CRC校验码的匹配,可以对数据包的包头信息及包内容信息进行双重检测,更加全面的检测协议转化后的数据包是否正确,从而提高验证效率和验证可信度。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例提供的数据包的FC协议转化SRIO协议的校验方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述实施例的数据包的FC协议转化SRIO协议的校验方法的步骤。
本发明实施例所提供的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (9)

1.一种数据包的多协议转化校验方法,其特征在于,应用于交换芯片,所述方法包括:
接收第一校验设备发送的第一数据包;所述第一数据包是第一校验设备将源协议的包头信息和包内容信息进行封装后得到的数据包,或者,是第一校验设备将源协议的包头信息、包内容信息和循环冗余校验CRC校验码进行封装后得到的数据包,其中,所述包内容信息是由第一校验设备生成的,所述CRC校验码是通过对所述包内容信息进行多项式计算得到的;
将所述第一数据包进行解析,得到解析的第一数据包;
从所述解析的第一数据包中提取源协议的包头信息和包内容信息;
将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息;
将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装,得到第二数据包;
将所述第二数据包发送给所述第二校验设备,以使所述第二校验设备对所述第二数据包的包头信息及包内容信息进行解析,并进行两级校验,生成校验结果;
其中,所述校验结果包括协议转换成功结果和协议转换失败结果。
2.根据权利要求1所述的数据包的多协议转化校验方法,其特征在于,当所述源协议为FC-AE-ASM或ETH协议,所述目的协议为SRIO协议时,在将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息之后,在将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装之前,所述方法还包括:
将所述源协议的所述包内容信息进行切包,得到多个子包内容信息;
其中,所述子包内容信息的长度不大于256B。
3.一种数据包的多协议转化校验方法,其特征在于,应用于第二校验设备,所述方法包括:
接收交换芯片发送的第二数据包;所述第二数据包是交换芯片通过对第一数据包进行协议转换后得到的;所述第一数据包是第一校验设备将源协议的包头信息和包内容信息进行封装后得到的数据包,或者,是第一校验设备将源协议的包头信息、包内容信息和循环冗余校验CRC校验码进行封装后得到的数据包,其中,所述包内容信息是由第一校验设备生成的,所述CRC校验码是通过对所述包内容信息进行多项式计算得到的;
将所述第二数据包进行解析,得到解析的第二数据包;
从所述解析的第二数据包中提取目的协议的包头信息和字段信息;
对提取到的目的协议的包头信息和字段信息进行两级校验,具体为:将所述目的协议的字段信息按照预设方式进行匹配,以及将所述目的协议的包头信息与源协议的包头信息进行匹配;
如果匹配成功,则生成协议转换成功结果;
如果匹配不成功,则生成协议转换失败结果;
其中,所述字段信息包括包内容信息和/或CRC校验码,所述预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与所述CRC校验码的匹配。
4.根据权利要求3所述的数据包的多协议转化校验方法,其特征在于,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述包内容信息与预存的包内容信息进行匹配。
5.根据权利要求3所述的数据包的多协议转化校验方法,其特征在于,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述包内容信息与预设条件中的所述初始包内容信息和/或所述结束包内容信息进行匹配,其中,所述预设条件为所述包内容信息以递增或递减的形式进行排列。
6.根据权利要求3所述的数据包的多协议转化校验方法,其特征在于,所述将所述目的协议的字段信息按照预设方式进行匹配,包括:
将所述CRC校验码进行解析,得到所述CRC校验码对应的包内容信息;
将所述CRC校验码对应的包内容信息与所述包内容信息进行匹配。
7.根据权利要求3所述的数据包的多协议转化校验方法,其特征在于,在所述从所述解析的第二数据包中提取目的协议的包头信息和字段信息之后,在将所述目的协议的字段信息按照预设方式进行匹配之前,所述方法还包括:
将所述目的协议的字段信息中的包内容信息进行整合,得到整合的包内容信息。
8.一种数据包的多协议转化校验装置,其特征在于,应用于交换芯片,所述装置包括:
第一接收单元,用于接收第一校验设备发送的第一数据包;所述第一数据包是第一校验设备将源协议的包头信息和包内容信息进行封装后得到的数据包,或者,是第一校验设备将源协议的包头信息、包内容信息和循环冗余校验CRC校验码进行封装后得到的数据包,其中,所述包内容信息是由第一校验设备生成的,所述CRC校验码是通过对所述包内容信息进行多项式计算得到的;
第一解析单元,用于将所述第一数据包进行解析,得到解析的第一数据包;
第一提取单元,用于从所述解析的第一数据包中提取源协议的包头信息和包内容信息;
转化单元,用于将所述源协议的包头信息转化为第二校验设备中目的协议的包头信息;
封装单元,用于将所述目的协议的包头信息和所述源协议的所述包内容信息进行封装,得到第二数据包;
校验单元,用于将所述第二数据包发送给所述第二校验设备,以使所述第二校验设备对所述第二数据包的包头信息及包内容信息进行解析,并进行两级校验,生成校验结果;
其中,所述校验结果包括协议转换成功结果和协议转换失败结果。
9.一种数据包的多协议转化校验装置,其特征在于,应用于第二校验设备,所述装置包括:
第二接收单元,用于接收交换芯片发送的第二数据包;所述第二数据包是交换芯片通过对第一数据包进行协议转换后得到的;所述第一数据包是第一校验设备将源协议的包头信息和包内容信息进行封装后得到的数据包,或者,是第一校验设备将源协议的包头信息、包内容信息和循环冗余校验CRC校验码进行封装后得到的数据包,其中,所述包内容信息是由第一校验设备生成的,所述CRC校验码是通过对所述包内容信息进行多项式计算得到的;
第二解析单元,用于将所述第二数据包进行解析,得到解析的第二数据包;
第二提取单元,用于从所述解析的第二数据包中提取目的协议的包头信息和字段信息;
匹配单元,用于对提取到的目的协议的包头信息和字段信息进行两级校验;具体用于将所述目的协议的字段信息按照预设方式进行匹配,以及将所述目的协议的包头信息与源协议的包头信息进行匹配;如果匹配成功,则生成协议转换成功结果;如果匹配不成功,则生成协议转换失败结果;
其中,所述字段信息包括包内容信息和/或CRC校验码,所述预设方式包括与预存的包内容信息的匹配、与初始包内容信息和/或结束包内容信息的匹配,或与所述CRC校验码的匹配。
CN201910631864.6A 2019-07-12 2019-07-12 数据包的多协议转化校验方法和装置 Active CN110381050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910631864.6A CN110381050B (zh) 2019-07-12 2019-07-12 数据包的多协议转化校验方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910631864.6A CN110381050B (zh) 2019-07-12 2019-07-12 数据包的多协议转化校验方法和装置

Publications (2)

Publication Number Publication Date
CN110381050A CN110381050A (zh) 2019-10-25
CN110381050B true CN110381050B (zh) 2022-01-21

Family

ID=68252974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910631864.6A Active CN110381050B (zh) 2019-07-12 2019-07-12 数据包的多协议转化校验方法和装置

Country Status (1)

Country Link
CN (1) CN110381050B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941800A (zh) * 2022-11-07 2023-04-07 中国电子科技集团公司第五十二研究所 一种基于意图的数据包结构、数据传输方法和系统
CN115580665B (zh) * 2022-11-18 2023-03-10 中国信息通信研究院 基于区块链的传输协议转化方法、装置、存储介质和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143010A (zh) * 2010-08-24 2011-08-03 华为软件技术有限公司 检测报文被修改的方法、发送方设备和接收方设备
CN108737259A (zh) * 2018-05-08 2018-11-02 平安证券股份有限公司 网关设备、数据传输方法及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6894979B1 (en) * 2001-04-24 2005-05-17 Crossroads Systems, Inc. Network analyzer/sniffer with multiple protocol capabilities
CN101459654A (zh) * 2007-12-14 2009-06-17 联想移动通信科技有限公司 一种多协议业务数据封装解析方法、接收端和发送端
US8589776B2 (en) * 2010-06-04 2013-11-19 International Business Machines Corporation Translation between a first communication protocol and a second communication protocol
CN103634300A (zh) * 2013-11-14 2014-03-12 广州三瑞医疗器械有限公司 用于中央监护网络的协议转换方法及系统
WO2017058143A1 (en) * 2015-09-28 2017-04-06 Hewlett Packard Enterprise Development Lp Protocol conversion for servers and chassis
CN106657149B (zh) * 2017-01-24 2020-03-17 恒生电子股份有限公司 通讯协议转换方法与装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143010A (zh) * 2010-08-24 2011-08-03 华为软件技术有限公司 检测报文被修改的方法、发送方设备和接收方设备
CN108737259A (zh) * 2018-05-08 2018-11-02 平安证券股份有限公司 网关设备、数据传输方法及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
串行数据传输接口技术;曹钢等;《有线电视技术》;20060110(第13期);全文 *

Also Published As

Publication number Publication date
CN110381050A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
US9253062B2 (en) Byte by byte received data integrity check
CN110798480B (zh) 安全仪表系统间的数据通讯方法及系统
CN110381050B (zh) 数据包的多协议转化校验方法和装置
CN111083161A (zh) 数据传输的处理方法及装置、物联网设备
CN106330483B (zh) 信息获取方法、客户端设备和服务端设备
Crain et al. Bolt-on security extensions for industrial control system protocols: A case study of dnp3 sav5
CN102291408B (zh) 对iSCSI协议报文的处理方法及装置
CN105897689B (zh) 嵌入式系统及其方法
CN101123485A (zh) iSCSI报文处理方法和装置、错误恢复方法和装置
CN110138635B (zh) 一种支持fc与以太网的协议转换功能验证装置及方法
CN104579605B (zh) 一种数据传输方法及装置
US20100309908A1 (en) Method and system for communicating with a network device
US20150113363A1 (en) Communication device and communication method
US20090210770A1 (en) Method, system and computer program product for end to end error checking in ethernet
CN110149242B (zh) 一种支持srio与以太网的协议转换功能验证装置及方法
US8565229B2 (en) Systems and methods for data packet transmission
US9577669B2 (en) Methods, systems, and computer readable media for optimized message decoding
CN113872826B (zh) 网卡端口稳定性测试方法、系统、终端及存储介质
US20150067455A1 (en) Communication device and communication method
CN115085867A (zh) 一种can总线报文的e2e校验方法及装置
CN110198202B (zh) 一种afdx总线消息数据源的校验方法及装置
US20150058707A1 (en) Communication device and communication method
CN113626405A (zh) Hdfs网络数据传输优化方法、系统、终端及存储介质
WO2015169049A1 (zh) 一种微波传输的容错性方法和装置、计算机可读存储介质
CN115484084B (zh) 单向数据传输方法及相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Shen Jianliang

Inventor after: Yu Hong

Inventor after: Gao Chen

Inventor after: Zhang Fan

Inventor after: Liu Dongpei

Inventor after: Chen Ting

Inventor after: Wang Xin

Inventor after: Zhang Wenjian

Inventor after: Tiger gorgeous guest

Inventor after: Zhang Li

Inventor before: Gao Chen

Inventor before: Yu Hong

Inventor before: Zhang Fan

Inventor before: Liu Dongpei

Inventor before: Shen Jianliang

Inventor before: Chen Ting

Inventor before: Wang Xin

Inventor before: Zhang Wenjian

Inventor before: Tiger gorgeous guest

Inventor before: Zhang Li

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant