CN116320052B - 用于通用验证方法学验证平台的网络报文自动生成方法 - Google Patents

用于通用验证方法学验证平台的网络报文自动生成方法 Download PDF

Info

Publication number
CN116320052B
CN116320052B CN202310582800.8A CN202310582800A CN116320052B CN 116320052 B CN116320052 B CN 116320052B CN 202310582800 A CN202310582800 A CN 202310582800A CN 116320052 B CN116320052 B CN 116320052B
Authority
CN
China
Prior art keywords
network
network message
header
message
data
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
CN202310582800.8A
Other languages
English (en)
Other versions
CN116320052A (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.)
Zhuhai Xingyun Zhilian Technology Co Ltd
Original Assignee
Zhuhai Xingyun Zhilian Technology Co Ltd
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 Zhuhai Xingyun Zhilian Technology Co Ltd filed Critical Zhuhai Xingyun Zhilian Technology Co Ltd
Priority to CN202310582800.8A priority Critical patent/CN116320052B/zh
Publication of CN116320052A publication Critical patent/CN116320052A/zh
Application granted granted Critical
Publication of CN116320052B publication Critical patent/CN116320052B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • 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/14Multichannel or multilink protocols
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供用于通用验证方法学验证平台的网络报文自动生成方法。该方法利用通用验证方法学下的通用验证方法学对象类和通用验证方法学枚举类型,从而生成通用验证方法学激励类用于自动生成随机化网络报文数据,利用通用验证方法学验证平台对网络报文数据的随机化约束控制可以自动生成对应的网络报文数据,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。

Description

用于通用验证方法学验证平台的网络报文自动生成方法
技术领域
本申请涉及计算机技术领域,尤其涉及用于通用验证方法学验证平台的网络报文自动生成方法。
背景技术
芯片一般指的是将数量巨大的晶体管、二极管、电阻、电容和电感等各种元件以及布线通过半导体工艺集成在晶圆片上成为具有特定功能的电路。芯片设计流程一般从规格制定开始也就是对芯片的目的和效能以及需要满足的协定标准等作出设定,并进行功能分配和单元划分;接着用硬件描述语言(hardware description language,HDL)对电路系统的硬件行为、结构及数据流进行描述;然后通过电子设计自动化(electronic designautomation,EDA)工具,将HDL代码转换成逻辑电路图,并进行仿真验证;最后通过EDA工具的自动综合功能将逻辑电路图转换到门级电路网表,进行电路布局和绕线从而得到具体电路布线结构。功能验证有助于在芯片生产之前验证芯片设计是否符合需求。芯片验证的基本步骤包括根据待测设计(design under test,DUT)制定验证方案,通过验证平台所提供的平台工具对环境框图进行绘制和配置并生成验证环境。一种验证平台是基于通用验证方法学(universal verification methodology,UVM),也叫做通用验证方法学验证平台或者说UVM验证平台。其中,对网络芯片例如用在数据中心、智能网卡、数据处理单元的网络报文处理方面的芯片,需要在设计阶段进行充分的仿真验证,以便降低流片失败风险和提早发现电路设计上的缺陷。现有技术中,为了进行网络芯片验证,需要了解网络报文相关协议,人工地定义细节繁多的内容来手动生成用于通用验证方法学验证平台的激励数据,这样效率低下且成本高。
为此,本申请提供了用于通用验证方法学验证平台的网络报文自动生成方法,以便解决现有技术中的技术难题。
发明内容
第一方面,本申请提供了一种用于通用验证方法学验证平台的网络报文自动生成方法。所述网络报文自动生成方法包括:针对多个网络报文协议中的第一网络报文协议,确定与所述第一网络报文协议对应的第一网络报文头的多个域段以及所述多个域段各自的属性信息,所述第一网络报文协议是所述多个网络报文协议中的任一网络报文协议,所述多个网络报文协议与多个网络报文头一一对应;生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,其中,第一通用验证方法学对象类对应所述第一网络报文头,所述第一通用验证方法学对象类按照第一次序定义所述第一网络报文的所述多个域段各自的位宽属性和随机属性从而得到多个字段,并且,所述第一通用验证方法学对象类还包括与所述多个域段相关联的第一打包函数,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的第一数据序列;生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,其中,第一报文组合是所述至少一个报文组合中的任一报文组合,所述第一报文组合由所述多个网络报文头中的一个或者多个网络报文头按照第一组合方式组合得到;生成通用验证方法学激励类,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成随机化网络报文数据,所述随机化网络报文数据作为所述通用验证方法学验证平台的激励信号。
通过本申请的第一方面,考虑到了网络芯片的实际工作环境以及复杂多样化的业务需求,对于复杂多样的各种网络报文协议、网络报文类型、数据格式等,利用构建通用验证方法学平台的通用验证方法学下的通用验证方法学对象类和通用验证方法学枚举类型,从而生成通用验证方法学激励类用于自动生成随机化网络报文数据。这样的自动生成随机化网络报文数据的方式,可以利用自动脚本或者软件来自动地解析特定网络报文协议的域段及属性信息,给相关域段赋上位宽属性和随机属性,以及按照组合规则根据各类报文头进行最终的网络数据的组合。如此,利用通用验证方法学验证平台对网络报文数据的随机化约束控制,可以自动生成对应的网络报文数据,再通过相关接口驱动网络数据,就能实现对网络芯片数据的输入,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。
在本申请的第一方面的一种可能的实现方式中,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的所述第一数据序列,包括:所述第一打包函数用于将所述多个字段按照所述第一次序打包成具有第一数据位宽的字节流从而生成与所述第一网络报文头对应的所述第一数据序列。
在本申请的第一方面的一种可能的实现方式中,所述多个通用验证方法学对象类均基于所述通用验证方法学验证平台的配置。
在本申请的第一方面的一种可能的实现方式中,所述第一网络报文头可用于生成基于所述第一网络报文协议的网络报文数据。
在本申请的第一方面的一种可能的实现方式中,所述多个网络报文协议包括IPV4协议、IPV6协议、TCP协议、UCP协议、ETH协议、ICMPV6协议、RDMA协议、DHCP协议、VXLAN协议、GENEVE协议。
在本申请的第一方面的一种可能的实现方式中,与所述多个网络报文协议一一对应的所述多个网络报文头包括IPV4报文头、IPV6报文头、TCP报文头、UCP报文头、ETH报文头、ICMPV6报文头、RDMA报文头、DHCP报文头、VXLAN报文头、GENEVE报文头。
在本申请的第一方面的一种可能的实现方式中,所述至少一个报文组合包括第二报文组合,所述第二报文组合由所述ETH报文头、所述IPV6协议和所述ICMPV6报文头先后组合得到。
在本申请的第一方面的一种可能的实现方式中,所述第一组合方式指示所述第一报文组合的组合规则。
在本申请的第一方面的一种可能的实现方式中,所述至少一个报文组合包括第三报文组合,所述第三报文组合的组合规则包括二层以太网头、三层IP头、四层头以及网络数据载荷部分,所述四层头包括TCP头和UDP头。
在本申请的第一方面的一种可能的实现方式中,所述随机化网络报文数据包括随机化网络报文头数据和随机化网络数据载荷部分,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成所述随机化网络报文数据,包括:基于所述通用验证方法学激励类,定义所述随机化网络报文数据的字节流;基于随机化类型组合,从与所述至少一个通用验证方法学枚举类型一一对应的所述至少一个报文组合中确定与所述随机化类型组合对应的特定报文组合,调用与所述特定报文组合对应的通用验证方法学枚举类型从而生成所述随机化网络报文数据的枚举类型对象;从与所述多个通用验证方法学对象类一一对应的所述多个网络报文头中确定与所述特定报文组合对应的特定网络报文头,将调用所述特定网络报文头的打包函数所生成的数据序列整合到所述随机化网络报文数据的字节流;添加所述随机化网络数据载荷部分到所述随机化网络报文数据的字节流从而生成所述随机化网络报文数据。
在本申请的第一方面的一种可能的实现方式中,所述网络报文自动生成方法还包括:对所述随机化网络报文数据进行校验以确定所述随机化网络报文数据符合标准网络数据要求。
在本申请的第一方面的一种可能的实现方式中,所述标准网络数据要求包括确定所述随机化网络报文数据是否包括检验和以及基于所述检验和校验所述随机化网络报文数据。
在本申请的第一方面的一种可能的实现方式中,所述随机化类型组合和所述随机化网络数据载荷部分均满足预设的随机化约束条件。
在本申请的第一方面的一种可能的实现方式中,所述随机化约束条件用于确定所述特定网络报文头的相关域段的随机属性。
第二方面,本申请实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
第四方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于通用验证方法学验证平台对网络芯片验证的示意图;
图2为本申请实施例提供的一种用于通用验证方法学验证平台的网络报文自动生成方法的流程示意图;
图3为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
图1为本申请实施例提供的一种基于通用验证方法学验证平台对网络芯片验证的示意图。如图1所示,激励信号生成器102用于生成激励信号,激励信号被分别导入网络芯片110和参考模型120,网络芯片110和参考模型120分别提供输出结果到比较器130。比较器130对来自网络芯片110和参考模型120各自的输出结果进行比较,从而生成比较结果。这里,网络芯片110代表了要进行仿真验证的网络芯片110,例如待测设计(design undertest,DUT)。网络芯片110可以用于如数据中心、智能网卡、数据处理单元等任意合适的应用场景下提供网络处理功能,例如提供流表匹配、报文转发、流量控制等功能。参考模型120代表了网络芯片110要实现的预期设计目的和功能。通过让同一个激励信号被分别导入网络芯片110和参考模型120,可以通过比较来自网络芯片110和参考模型120各自的输出结果,对网络芯片110的逻辑设计、功能、时序性等各方面进行仿真验证以便发现设计缺陷和风险。其中,激励信号生成器102生成激励信号,应该模拟网络芯片110的实际工作环境,也就是需要模拟生成各种网络报文数据,例如通过网络芯片110收发的网络报文等。图1所示的是基于通用验证方法学验证平台对网络芯片110验证,这里,通用验证方法学验证平台是利用通用验证方法学(Universal Verification Methodology,UVM)构建的验证平台。为了验证网络芯片110的功能设计,需要生成用于测试的网络报文数据也就是激励信号。为了达到更好的仿真验证效果,生成的网络报文数据也就是用于测试网络芯片110的功能设计的激励信号,应该尽可能模拟实际应用环境中的情况,因此用于仿真验证的网络报文数据需要考虑复杂多样的各种网络报文协议、网络报文类型、数据格式等。一般来说,一个网络报文数据包包括网络报文头、报文内容以及有效载荷三个部分。各种网络报文协议可能定义了不同的网络报文头格式也定义了不同的网络报文类型。实际应用中可能面临多种不同的网络报文协议,还有新旧版本的同一种网络报文协议,这些考量都应体现在生成的网络报文数据上。并且,为了更好的仿真验证效果,需要引入足够的随机性,这样才能更好地模拟网络芯片110的实际应用中将要面临的复杂多样的业务需求。下面结合图2进一步详细说明本申请实施例提供的用于通用验证方法学验证平台的网络报文自动生成方法的各项改进。
图2为本申请实施例提供的一种用于通用验证方法学验证平台的网络报文自动生成方法的流程示意图。如图2所示,所述网络报文自动生成方法包括以下步骤。
步骤S202:针对多个网络报文协议中的第一网络报文协议,确定与所述第一网络报文协议对应的第一网络报文头的多个域段以及所述多个域段各自的属性信息,所述第一网络报文协议是所述多个网络报文协议中的任一网络报文协议,所述多个网络报文协议与多个网络报文头一一对应。
步骤S204:生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,其中,第一通用验证方法学对象类对应所述第一网络报文头,所述第一通用验证方法学对象类按照第一次序定义所述第一网络报文的所述多个域段各自的位宽属性和随机属性从而得到多个字段,并且,所述第一通用验证方法学对象类还包括与所述多个域段相关联的第一打包函数,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的第一数据序列。
步骤S206:生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,其中,第一报文组合是所述至少一个报文组合中的任一报文组合,所述第一报文组合由所述多个网络报文头中的一个或者多个网络报文头按照第一组合方式组合得到。
步骤S208:生成通用验证方法学激励类,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成随机化网络报文数据,所述随机化网络报文数据作为所述通用验证方法学验证平台的激励信号。
在步骤S202,针对多个网络报文协议中的第一网络报文协议,确定与所述第一网络报文协议对应的第一网络报文头的多个域段以及所述多个域段各自的属性信息。为了达到更好的仿真验证效果,用于通用验证方法学验证平台的网络报文数据应该尽可能模拟实际应用环境中的情况,因此需要考虑复杂多样的各种网络报文协议、网络报文类型、数据格式等。一般来说,一个网络报文数据包包括网络报文头、报文内容以及有效载荷三个部分。各种网络报文协议可能定义了不同的网络报文头格式也定义了不同的网络报文类型。实际应用中可能面临多种不同的网络报文协议,还有新旧版本的同一种网络报文协议。这里,多个网络报文协议代表了实际应用中可能遇到的复杂多样化的业务需求,包括不同类型的网络报文协议、不同版本的网络报文协议等。其中,所述第一网络报文协议是所述多个网络报文协议中的任一网络报文协议,所述多个网络报文协议与多个网络报文头一一对应。对于每一个网络报文协议,存在与之对应的网络报文头。其中,对于第一网络报文协议,确定与所述第一网络报文协议对应的第一网络报文头的多个域段以及所述多个域段各自的属性信息。多个域段可以是第一网络报文头中包括的具体信息。以第一网络报文协议是传输控制协议(Transmission Control Protocol,TCP)为例,第一网络报文头是TCP报文头,其中包含的多个域段可以是例如sport、dport、seq、ack等在传输控制协议定义的域段且具有相应的属性信息。例如,可以通过调用加载了自动脚本的模块,将所需要的报文头信息通过函数调用显示打印出来,如通过调用模块内部函数,得到TCP报文头中包括的具体信息,然后依次从上至下定义且自带每个域段的属性信息。
接着,在步骤S204,生成与所述多个网络报文头一一对应的多个通用验证方法学对象类。这里,通用验证方法学对象类是构建通用验证方法学验证平台所依赖的通用验证方法学下的对象类。例如,根据打印得到的报文信息,结合该报文头,定义生成一份通用验证方法学对象类的扩展文件,将该报文头类扩展自通用验证方法学对象类,将得到的报文头的相关域段定义在该类内部,并且给相关域段赋上位宽属性和随机属性,随机属性是为了后续在产生该报文头的数据中可以随机化生成数据。其中,第一通用验证方法学对象类对应所述第一网络报文头,所述第一通用验证方法学对象类按照第一次序定义所述第一网络报文的所述多个域段各自的位宽属性和随机属性从而得到多个字段,并且,所述第一通用验证方法学对象类还包括与所述多个域段相关联的第一打包函数,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的第一数据序列。这里,在生成的通用验证方法学对象类的内部还要定义一份报文头所有域段的打包函数,打包函数的作用是将所有的报文头数据按照定义的顺序打包成例如8位数据位宽的字节流,生成该报文头的数据序列。例如,TCP报文头可以打包得到TCP报文头的数据序列,从左到右依次为sport、dport、seq、ack等,这样与上面定义的TCP报文头所包含的多个域段对应。在一些实施例中,基于每个报文头都要有一份通用验证方法学对象类组件去单独管理。
然后,在步骤S206,生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型。上面在步骤S202和步骤S204,得到了多份报文头类,每份报文头类都是基于通用验证方法学对象类的配置类。然后通过自动脚本定义各类报文组合的枚举类型,由于网络报文是按照一定的顺序组合而成的。例如,先是二层以太网头,然后是三层互联网协议(Internet Protocol,IP)头也叫IP头,再是四层TCP等头信息,最后是网络数据载荷部分。为此,可以定义一份组合规则,方便根据各类报文头进行最终的网络数据的组合。设定义了某个枚举类型为“ETH_IPV4_TCP”。该枚举类型“ETH_IPV4_TCP”表示该报文类型的组合中,先包含了ETH报文头,再次包含了IPV4报文头以及最后是TCP报文头。再设定义了某个枚举类型为“ETH_IPV6_ICMPV6”。该枚举类型“ETH_IPV6_ICMPV6”表示该报文类型的组合中,先包含了ETH头,再包含了IPV6头以及最后是ICMPV6头。如此,根据需要的报文类型在自动脚本中列举好各类报文头的组合方法,生成一份通用验证方法学枚举类型。其中,第一报文组合是所述至少一个报文组合中的任一报文组合,所述第一报文组合由所述多个网络报文头中的一个或者多个网络报文头按照第一组合方式组合得到。应当理解的是,通用验证方法学枚举类型的生成是为了便于穷举所有报文类型,并根据这个报文类型将所有报文头依次打包成字节流,恢复成具体的网络数据。
在步骤S208,生成通用验证方法学激励类,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成随机化网络报文数据,所述随机化网络报文数据作为所述通用验证方法学验证平台的激励信号。上面在步骤S202和步骤S204,生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,因此得到了多份报文头类,每份报文头类都是基于通用验证方法学对象类的配置类。然后在步骤S206,生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,因此实现了方便根据各类报文头进行最终的网络数据的组合。因此,在步骤S208,利用通用验证方法学验证平台对网络报文数据的随机化约束控制,可以自动生成对应的网络报文数据,再通过相关接口驱动网络数据,就能实现对网络芯片数据的输入,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。例如,可以利用自动脚本生成一份激励类,该类扩展自构建通用验证方法学验证平台所依赖的通用验证方法学下的用于生成激励信号和控制的类。这样生成的激励类用于利用通用验证方法学来产生驱动并将其产生的数据驱动到待测设计如图1的网络芯片110对应的端口上。在一些实施例中,为了将生成的以太网报文数据驱动到芯片的以太口端口上,可以先在该激励类中定义字节流以及载荷流(均以队列的形式保存数据),并利用生成的枚举类型对象,再根据枚举对象进行分类,利用脚本解析各个枚举类型。然后,在激励类中,基于各个枚举类型的解析结果,依次调用解析出来的报文头类型。因为在步骤S202和步骤S204,生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,因此得到了多份报文头类,以及在步骤S206,生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,因此,在步骤S208,可以便利地调用已经生成的多个通用验证方法学对象类和至少一个通用验证方法学枚举类型,从而可以便利地在步骤S208中创建并且使用报文头类型并且进行随机化,也就是利用通用验证方法学验证平台对网络报文数据的随机化约束控制,这样可以随机生成报文头数据,然后调用报文头内定义的打包函数,将报文头打包到该激励类的字节流中,再将随机化载荷部分也打包到该激励类的字节流中,从而得到了模拟出来的网络报文数据。再基于各类报文类型,依次进行解析就可以得到所有报文类型的网络数据。例如:当枚举类型对象为ETH_IPV4_TCP,其中包含了ETH头,IPV4头,TCP头信息,并且可以看出,该枚举类型对象所包含的各个报文头信息在上述步骤S204中已经生成相应的通用验证方法学对象类,因此这里可以便利地调用。因此,在该激励类中,基于对枚举类型对象的解析结果,依次创建解析出来的报文头类型并对此进行随机化,可以随机生成报文头的数据,然后调用报文头内定义的打包函数,将报文头打包到该激励类的字节流中,再将随机化载荷部分也打包到该类的字节流中,从而得到模拟出来的一手网络报文数据,也就是与该枚举类型对象对应的网络报文数据。为了提高网络报文数据的准确性,还可以根据报文头中是否含有checksum字段重新计算报文的checksum,使其符合标准的网络数据要求。为此,可以定义一个解析函数,对上述在步骤S208中得到的一手网络数据进行解析,重算其中的checksum内容,从而提高准确性。
图2所示的用于通用验证方法学验证平台的网络报文自动生成方法,考虑到了网络芯片的实际工作环境以及复杂多样化的业务需求,对于复杂多样的各种网络报文协议、网络报文类型、数据格式等,利用构建通用验证方法学平台的通用验证方法学下的通用验证方法学对象类和通用验证方法学枚举类型,从而生成通用验证方法学激励类用于自动生成随机化网络报文数据。这样的自动生成随机化网络报文数据的方式,可以利用自动脚本或者软件来自动地解析特定网络报文协议的域段及属性信息,给相关域段赋上位宽属性和随机属性,以及按照组合规则根据各类报文头进行最终的网络数据的组合。如此,利用通用验证方法学验证平台对网络报文数据的随机化约束控制,可以自动生成对应的网络报文数据,再通过相关接口驱动网络数据,就能实现对网络芯片数据的输入,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。
参阅图2,应当理解的是,报文内容可以借助通用验证方法学验证平台的随机化约束控制或者随机机制来随机生成,但是还需要根据随机生成的报文内容,结合网络报文协议、网络报文类型、网络报文数据格式来整合得到网络报文数据,从而使得可以自动生成用于对网络芯片进行仿真验证的激励信号。上述的用于通用验证方法学验证平台的网络报文自动生成方法,具备自动整合的优点,这是因为定义了组合规则从而可以方便根据各类报文头进行最终的网络数据的组合,而且生成的通用验证方法学激励类扩展自构建通用验证方法学验证平台所依赖的通用验证方法学下的用于生成激励信号和控制的类。并且,所述第一通用验证方法学对象类还包括与所述多个域段相关联的第一打包函数,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的第一数据序列。因此在整合得到网络报文数据的过程中可以便利地调用打包函数来生成数据序列,进而可以整合到激励类的字节流中,有利于提高自动化效率和节省时间。图2所示的用于通用验证方法学验证平台的网络报文自动生成方法,为了发送这样生成的网络报文数据,可以在激励类中创建生成好的类型,然后在该类型中约束报文类型,例如约束为“ETH_IPV4_TCP“。该类型中自动关联了打包的功能,只要定义了相关类型,就会创建好各个报文头文件,因此可以对创建好的报文头进行相关字段的随机化约束,再约束相关的载荷内容,随后调用发送相关任务就可以发送生成好的报文数据。另外,报文类型的组合需要符合具体的协议规则,例如基于生成好的报文头可以给定其组合的方式。例如,可能只包含二层头,可能包含二层头和三层头,或者二层头、三层头和四层头。另外,通过对报文头的相关字段进行约束,可以给出符合协议字段的网络数据类型。
在一种可能的实施方式中,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的所述第一数据序列,包括:所述第一打包函数用于将所述多个字段按照所述第一次序打包成具有第一数据位宽的字节流从而生成与所述第一网络报文头对应的所述第一数据序列。如此,利用打包函数有利于后续自动整合生成网络报文数据,在整合得到网络报文数据的过程中可以便利地调用打包函数来生成数据序列,进而可以整合到激励类的字节流中,有利于提高自动化效率和节省时间。
在一种可能的实施方式中,所述多个通用验证方法学对象类均基于所述通用验证方法学验证平台的配置。如此,利用构建通用验证方法学平台的通用验证方法学下的通用验证方法学对象类,从而生成通用验证方法学激励类用于自动生成随机化网络报文数据。这样的自动生成随机化网络报文数据的方式,可以利用自动脚本或者软件来自动地解析特定网络报文协议的域段及属性信息,给相关域段赋上位宽属性和随机属性,以及按照组合规则根据各类报文头进行最终的网络数据的组合。如此,利用通用验证方法学验证平台对网络报文数据的随机化约束控制,可以自动生成对应的网络报文数据,再通过相关接口驱动网络数据,就能实现对网络芯片数据的输入,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。
在一种可能的实施方式中,所述第一网络报文头可用于生成基于所述第一网络报文协议的网络报文数据。在一种可能的实施方式中,所述多个网络报文协议包括IPV4协议、IPV6协议、TCP协议、UCP协议、ETH协议、ICMPV6协议、RDMA协议、DHCP协议、VXLAN协议、GENEVE协议。在一些实施例中,与所述多个网络报文协议一一对应的所述多个网络报文头包括IPV4报文头、IPV6报文头、TCP报文头、UCP报文头、ETH报文头、ICMPV6报文头、RDMA报文头、DHCP报文头、VXLAN报文头、GENEVE报文头。在一些实施例中,所述至少一个报文组合包括第二报文组合,所述第二报文组合由所述ETH报文头、所述IPV6协议和所述ICMPV6报文头先后组合得到。如此,考虑到了网络芯片的实际工作环境以及复杂多样化的业务需求,对于复杂多样的各种网络报文协议、网络报文类型、数据格式等,利用构建通用验证方法学平台的通用验证方法学下的通用验证方法学对象类和通用验证方法学枚举类型,从而生成通用验证方法学激励类用于自动生成随机化网络报文数据。
在一种可能的实施方式中,所述第一组合方式指示所述第一报文组合的组合规则。在一些实施例中,所述至少一个报文组合包括第三报文组合,所述第三报文组合的组合规则包括二层以太网头、三层IP头、四层头以及网络数据载荷部分,所述四层头包括TCP头和用户数据报协议(User Datagram Protocol,UDP)头也叫UDP头。其中,所述四层头还可能包括隧道头。如此,报文类型的组合需要符合具体的协议规则,所述第一组合方式可以对应任意其他合适的组合规则,在此不做具体限定。
在一种可能的实施方式中,所述随机化网络报文数据包括随机化网络报文头数据和随机化网络数据载荷部分,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成所述随机化网络报文数据,包括:基于所述通用验证方法学激励类,定义所述随机化网络报文数据的字节流;基于随机化类型组合,从与所述至少一个通用验证方法学枚举类型一一对应的所述至少一个报文组合中确定与所述随机化类型组合对应的特定报文组合,调用与所述特定报文组合对应的通用验证方法学枚举类型从而生成所述随机化网络报文数据的枚举类型对象;从与所述多个通用验证方法学对象类一一对应的所述多个网络报文头中确定与所述特定报文组合对应的特定网络报文头,将调用所述特定网络报文头的打包函数所生成的数据序列整合到所述随机化网络报文数据的字节流;添加所述随机化网络数据载荷部分到所述随机化网络报文数据的字节流从而生成所述随机化网络报文数据。上面在步骤S202和步骤S204,生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,因此得到了多份报文头类,每份报文头类都是基于通用验证方法学对象类的配置类。然后在步骤S206,生成与至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,因此实现了方便根据各类报文头进行最终的网络数据的组合。因此,在步骤S208,利用通用验证方法学验证平台对网络报文数据的随机化约束控制,可以自动生成对应的网络报文数据,再通过相关接口驱动网络数据,就能实现对网络芯片数据的输入,从而节省了学习网络协议的时间和开发成本,并且具有很好的拓展性,如果要追加更多的协议类型,只要调用相关脚本就可以自动实现网络类型的添加及数据的产生,具有方便高效的优点。可以便利地调用已经生成的多个通用验证方法学对象类和至少一个通用验证方法学枚举类型,从而可以便利地在步骤S208中创建并且使用报文头类型并且进行随机化,也就是利用通用验证方法学验证平台对网络报文数据的随机化约束控制,这样可以随机生成报文头数据,然后调用报文头内定义的打包函数,将报文头打包到该激励类的字节流中,再将随机化载荷部分也打包到该激励类的字节流中,从而得到了模拟出来的网络报文数据。再基于各类报文类型,依次进行解析就可以得到所有报文类型的网络数据。
在一种可能的实施方式中,所述网络报文自动生成方法还包括:对所述随机化网络报文数据进行校验以确定所述随机化网络报文数据符合标准网络数据要求。在一些实施例中,所述标准网络数据要求包括确定所述随机化网络报文数据是否包括检验和以及基于所述检验和校验所述随机化网络报文数据。在一些实施例中,所述随机化类型组合和所述随机化网络数据载荷部分均满足预设的随机化约束条件。在一些实施例中,所述随机化约束条件用于确定所述特定网络报文头的相关域段的随机属性。为了提高网络报文数据的准确性,还可以根据报文头中是否含有检验和也即checksum字段重新计算报文的checksum,使其符合标准的网络数据要求。为此,可以定义一个解析函数,对上述在步骤S208中得到的一手网络数据进行解析,重算其中的checksum内容,从而提高准确性。
图3是本申请实施例提供的一种计算设备的结构示意图,该计算设备300包括:一个或者多个处理器310、通信接口320以及存储器330。所述处理器310、通信接口320以及存储器330通过总线340相互连接。可选地,该计算设备300还可以包括输入/输出接口350,输入/输出接口350连接有输入/输出设备,用于接收用户设置的参数等。该计算设备300能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器310还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备300执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器310用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备300可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口320具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器310具体可用于为了实现这些装置、部件的功能所必须的处理功能等。
应当理解的是,图3的计算设备300可以包括一个或者多个处理器310,并且多个处理器310可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器310可以构成处理器序列或者处理器阵列,或者多个处理器310之间可以分成主处理器和辅助处理器,或者多个处理器310之间可以具有不同的架构如采用异构计算架构。另外,图3所示的计算设备300,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备300可以包括比图3所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
处理器310可以有多种具体实现形式,例如处理器310可以包括中央处理器(central processing unit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural-network processing unit,NPU)、张量处理器(tensor processingunit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器310还可以是单核处理器或多核处理器。处理器310可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器310也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口320可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(local interconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。
存储器330可以是非易失性存储器,例如,只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器330也可以是易失性存储器,易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器330也可用于存储程序代码和数据,以便于处理器310调用存储器330中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备300可能包含相比于图3展示的更多或者更少的组件,或者有不同的组件配置方式。
总线340可以是快捷外围部件互连标准(peripheral component interconnectexpress,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线340可以分为地址总线、数据总线、控制总线等。总线340除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述所描述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (14)

1.一种用于通用验证方法学验证平台的网络报文自动生成方法,其特征在于,所述网络报文自动生成方法包括:
针对多个网络报文协议中的第一网络报文协议,确定与所述第一网络报文协议对应的第一网络报文头的多个域段以及所述多个域段各自的属性信息,所述第一网络报文协议是所述多个网络报文协议中的任一网络报文协议,所述多个网络报文协议与多个网络报文头一一对应,所述多个网络报文协议包括不同类型且不同版本的网络报文协议;
生成与所述多个网络报文头一一对应的多个通用验证方法学对象类,其中,第一通用验证方法学对象类对应所述第一网络报文头,所述第一通用验证方法学对象类按照第一次序定义所述第一网络报文的所述多个域段各自的位宽属性和随机属性从而得到多个字段,并且,所述第一通用验证方法学对象类还包括与所述多个域段相关联的第一打包函数,所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的第一数据序列;
利用在自动脚本中被列举的至少一个报文组合,生成与所述至少一个报文组合一一对应的至少一个通用验证方法学枚举类型,其中,第一报文组合是所述至少一个报文组合中的任一报文组合,所述第一报文组合由所述多个网络报文头中的一个或者多个网络报文头按照第一组合方式组合得到;
生成通用验证方法学激励类,所述通用验证方法学激励类用于所述通用验证方法学验证平台利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型施加随机化约束控制从而自动生成随机化网络报文数据,所述随机化网络报文数据作为所述通用验证方法学验证平台的激励信号,
所述第一打包函数用于将所述多个字段按照所述第一次序打包生成与所述第一网络报文头对应的所述第一数据序列,包括:所述第一打包函数用于将所述多个字段按照所述第一次序打包成具有第一数据位宽的字节流从而生成与所述第一网络报文头对应的所述第一数据序列,
所述随机化网络报文数据包括随机化网络报文头数据和随机化网络数据载荷部分,所述通用验证方法学激励类用于利用所述多个通用验证方法学对象类和所述至少一个通用验证方法学枚举类型自动生成所述随机化网络报文数据,包括:
基于所述通用验证方法学激励类,定义所述随机化网络报文数据的字节流;
基于随机化类型组合,从与所述至少一个通用验证方法学枚举类型一一对应的所述至少一个报文组合中确定与所述随机化类型组合对应的特定报文组合,调用与所述特定报文组合对应的通用验证方法学枚举类型从而生成所述随机化网络报文数据的枚举类型对象;
从与所述多个通用验证方法学对象类一一对应的所述多个网络报文头中确定与所述特定报文组合对应的特定网络报文头,将调用所述特定网络报文头的打包函数所生成的数据序列整合到所述随机化网络报文数据的字节流;
添加所述随机化网络数据载荷部分到所述随机化网络报文数据的字节流从而生成所述随机化网络报文数据。
2.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述多个通用验证方法学对象类均基于所述通用验证方法学验证平台的配置。
3.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述第一网络报文头可用于生成基于所述第一网络报文协议的网络报文数据。
4.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述多个网络报文协议包括IPV4协议、IPV6协议、TCP协议、UCP协议、ETH协议、ICMPV6协议、RDMA协议、DHCP协议、VXLAN协议、GENEVE协议。
5.根据权利要求4所述的网络报文自动生成方法,其特征在于,与所述多个网络报文协议一一对应的所述多个网络报文头包括IPV4报文头、IPV6报文头、TCP报文头、UCP报文头、ETH报文头、ICMPV6报文头、RDMA报文头、DHCP报文头、VXLAN报文头、GENEVE报文头。
6.根据权利要求5所述的网络报文自动生成方法,其特征在于,所述至少一个报文组合包括第二报文组合,所述第二报文组合由所述ETH报文头、所述IPV6协议和所述ICMPV6报文头先后组合得到。
7.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述第一组合方式指示所述第一报文组合的组合规则。
8.根据权利要求7所述的网络报文自动生成方法,其特征在于,所述至少一个报文组合包括第三报文组合,所述第三报文组合的组合规则包括二层以太网头、三层IP头、四层头以及网络数据载荷部分,所述四层头包括TCP头和UDP头。
9.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述网络报文自动生成方法还包括:
对所述随机化网络报文数据进行校验以确定所述随机化网络报文数据符合标准网络数据要求。
10.根据权利要求9所述的网络报文自动生成方法,所述标准网络数据要求包括确定所述随机化网络报文数据是否包括检验和以及基于所述检验和校验所述随机化网络报文数据。
11.根据权利要求1所述的网络报文自动生成方法,其特征在于,所述随机化类型组合和所述随机化网络数据载荷部分均满足预设的随机化约束条件。
12.根据权利要求11所述的网络报文自动生成方法,其特征在于,所述随机化约束条件用于确定所述特定网络报文头的相关域段的随机属性。
13.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据权利要求1至12中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据权利要求1至12中任一项所述的方法。
CN202310582800.8A 2023-05-23 2023-05-23 用于通用验证方法学验证平台的网络报文自动生成方法 Active CN116320052B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310582800.8A CN116320052B (zh) 2023-05-23 2023-05-23 用于通用验证方法学验证平台的网络报文自动生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310582800.8A CN116320052B (zh) 2023-05-23 2023-05-23 用于通用验证方法学验证平台的网络报文自动生成方法

Publications (2)

Publication Number Publication Date
CN116320052A CN116320052A (zh) 2023-06-23
CN116320052B true CN116320052B (zh) 2023-09-05

Family

ID=86817182

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310582800.8A Active CN116320052B (zh) 2023-05-23 2023-05-23 用于通用验证方法学验证平台的网络报文自动生成方法

Country Status (1)

Country Link
CN (1) CN116320052B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209830A (zh) * 2016-07-08 2016-12-07 中国人民解放军国防科学技术大学 一种基于xml网络协议表示的报文构造方法
CN108933787A (zh) * 2018-07-02 2018-12-04 深圳市风云实业有限公司 报文生成方法及装置
CN114994499A (zh) * 2022-05-18 2022-09-02 广芯微电子(广州)股份有限公司 一种芯片测试方法及装置
CN115632976A (zh) * 2022-10-25 2023-01-20 深圳市楠菲微电子有限公司 一种pcie事务层报文生成方法、装置及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209830A (zh) * 2016-07-08 2016-12-07 中国人民解放军国防科学技术大学 一种基于xml网络协议表示的报文构造方法
CN108933787A (zh) * 2018-07-02 2018-12-04 深圳市风云实业有限公司 报文生成方法及装置
CN114994499A (zh) * 2022-05-18 2022-09-02 广芯微电子(广州)股份有限公司 一种芯片测试方法及装置
CN115632976A (zh) * 2022-10-25 2023-01-20 深圳市楠菲微电子有限公司 一种pcie事务层报文生成方法、装置及存储介质

Also Published As

Publication number Publication date
CN116320052A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
RU2430409C2 (ru) Методология измерения покрытия в структурном состоянии взаимного соединения
US20210365253A1 (en) Heterogeneity-agnostic and topology-agnostic data plane programming
CN113342583B (zh) 芯片验证系统、方法、装置、设备和存储介质
CN112861468B (zh) 一种软硬件协同仿真验证的方法、装置和介质
CN111428462A (zh) 通讯协议模板构建的方法及终端设备
CN111209203B (zh) 一种基于源代码的模型验证方法
CN116028292A (zh) 用于远程直接内存访问仿真验证的仿真验证系统及方法
CN112286746A (zh) 针对axi从设备接口的通用验证平台及方法
CN108228754A (zh) 流程生成方法及终端设备
CN112528307A (zh) 服务请求校验方法、装置、电子设备及存储介质
CN107293330B (zh) 对随机存取存储器ram进行仿真验证的方法和仿真验证系统
CN112486490A (zh) 前端代码打包方法、装置、电子设备及存储介质
CN114995878A (zh) 一种自动生成网络数据转发面驱动代码的方法
CN114968864A (zh) 验证环境的搭建方法、芯片的验证方法及系统
CN117312215B (zh) 一种服务器系统、作业执行方法、装置及设备和介质
CN116956801B (zh) 芯片验证方法、装置、计算机设备和存储介质
CN117749682A (zh) 报文编辑模块验证系统、平台、方法、设备、集群及介质
CN116320052B (zh) 用于通用验证方法学验证平台的网络报文自动生成方法
CN116670660A (zh) 片上网络的仿真模型生成方法、装置、电子设备及计算机可读存储介质
CN115904852B (zh) 一种用于数据处理器的自动化测试方法、设备及介质
US20220158895A1 (en) Testing framework for adaptive virtual services
CN112306466A (zh) Aar包生成方法、电子设备及存储介质
US11914564B1 (en) Merkle tree-based data management method and apparatus
CN110134843A (zh) 一种目标文件的生成方法以及装置
CN117724984B (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
GR01 Patent grant
GR01 Patent grant