CN109218301B - 多协议间软件定义的帧头映射的方法和装置 - Google Patents
多协议间软件定义的帧头映射的方法和装置 Download PDFInfo
- Publication number
- CN109218301B CN109218301B CN201811032492.7A CN201811032492A CN109218301B CN 109218301 B CN109218301 B CN 109218301B CN 201811032492 A CN201811032492 A CN 201811032492A CN 109218301 B CN109218301 B CN 109218301B
- Authority
- CN
- China
- Prior art keywords
- keyword
- hash
- keywords
- field
- frame header
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种多协议间软件定义的帧头映射方法与装置,属于数据通信技术领域。本发明实施例提供的多协议间软件定义的帧头映射方法与装置,将原协议的数据帧拆分为帧头字段和数据字段;根据目标协议制定转换规则,将帧头字段转换为关键字;根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值;根据目标协议制定转换规则,将关键字值转换为目标协议的帧头字段;将目标协议的帧头字段与数据字段组合为目标协议的数据帧,根据目标协议的不同,重新定义转换规则和表项内容,实现支持多种协议的转换,使协议转换也不再与具体协议绑定,具有很强的灵活性。
Description
技术领域
本发明涉及数据通信技术领域,具体而言,涉及一种多协议间软件定义的帧头映射方法和装置。
背景技术
随着物联网、大数据的快速发展,网络规模越来越大,在不同设备、网络、协议间的进行相互通信的需求也越来越高,在一些大型的网络系统中,每个设备所采用的网络协议和通信接口并不相同,但不同的网络协议,虽然都可以按照OSI的分层结构来看,但是各层的帧格式和访问方式并不相同,因此如果要实现网络融合,就必须解决核心的协议转换问题。采用协议映射的方式实现协议转换可以解决异构协议端点之间通信的问题,也能提高带宽利用率,但在通常的设计应用中,考虑到不同协议之间的对等性,人们通常将协议映射的方式只是针对某类相对通用的应用场景来设计,设计完后协议映射方式相对固定,如UDP与FC的协议映射中,有人将UDP的端口号与FC的exchange ID对等映射起来,将IP地址与FCID对等映射起来,当该设计完成后,这种不同该协议之间的映射方式也就固定了。
然而在实际的异构协议应用当中,异构协议的组网场景和组网模式非常复杂,这种对等映射方式就会变的不合时宜,如在一个小型局域网络中,完全可以将mac地址与FC的ID进行映射,而在一个集中管控的工控网络中,又需要将端口号与FC ID进行映射,显然此时,这种传统的异构协议映射处理方法已经不能满足应用的需求。
发明内容
针对上述现有技术中存在的问题,本发明提供了一种多协议间软件定义的帧头映射方法和装置,根据目标协议的不同,重新定义转换规则和表项内容,实现支持多种协议的转换,使协议转换也不再与具体协议绑定,具有很强的灵活性。
第一方面,本发明实施例提供了一种多协议间软件定义的帧头映射方法,所述方法包括:
将原协议的数据帧拆分为帧头字段和数据字段;
根据目标协议制定转换规则,将所述帧头字段转换为关键字;
根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值;
根据所述转换规则,将所述关键字值转换为目标协议的帧头字段;
将所述目标协议的帧头字段与所述数据字段组合为目标协议的数据帧。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述根据目标协议制定转换规则,将所述帧头字段转换为关键字的步骤,包括:
根据所述关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器对应所述关键字的不同位段;
根据目标协议确定待转换的所述帧头字段的位段;
根据所述转换规则,将所述待转换的位段通过所述字段映射选择器转换为关键字。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值的步骤,包括:
将所述关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;所述指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;
根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值。
结合第一方面第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值的步骤,包括:
将所述指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;所述哈希存储器与所述哈希函数生成器一一对应;
将所述指定个数的哈希地址中存放的指定个数的哈希关键字输出;
将所述指定个数的哈希关键字与所述关键字进行比较;
若有与所述关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到所述关键字值。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述根据软件定义的转换规则,将所述关键字值转换为目标协议的帧头字段的步骤,包括:
根据所述关键字值的位宽,设定第二字段映射选择器的个数和宽度;
根据目标协议确定待转换的所述关键字值的位段;
根据所述转换规则,将所述待转换的关键字的位段通过字段映射选择器转换为目标协议的帧头字段。
第二方面,本发明实施例还提供了一种多协议间软件定义的帧头映射装置,所述装置包括:
拆分模块,用于将原协议的数据帧拆分为帧头字段和数据字段;
数据字段存储器,用于将所述数据字段输入数据字段存储器,得到存储的数据字段;
映射模块,用于根据目标协议制定转换规则,将所述帧头字段转换为关键字;
查找模块,用于根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值;
重映射模块,用于根据所述转换规则,将所述关键字值转换为目标协议的帧头字段;
组合模块,用于将所述目标协议的帧头字段与所述数据字段组合为目标协议的数据帧。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述映射模块,还用于:
根据所述关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器对应所述关键字的不同位段;
根据目标协议确定待转换的所述帧头字段的位段;
根据所述转换规则,将所述待转换的位段通过所述字段映射选择器转换为关键字。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述查找模块,还用于:
将所述关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;所述指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;
根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值。
结合第二方面第二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述查找模块,还用于:
将所述指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;所述哈希存储器与所述哈希函数生成器一一对应;
将所述指定个数的哈希地址中存放的指定个数的哈希关键字输出;
将所述指定个数的哈希关键字与所述关键字进行比较;
若有与所述关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到所述关键字值。
结合第二方面,本发明实施例提供了第二方面的第四种可能的实施方式,其中,所述重映射模块,还用于:
根据所述关键字值的位宽,设定第二字段映射选择器的个数和宽度;
根据目标协议确定待转换的所述关键字值的位段;
根据所述转换规则,将所述待转换的关键字值的位段通过字段映射选择器转换为目标协议的帧头字段。
本发明实施例带来了以下有益效果:
本发明实施例提供的多协议间软件定义的帧头映射方法与装置,将原协议的数据帧拆分为帧头字段和数据字段;根据目标协议制定转换规则,将帧头字段转换为关键字;根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值;根据目标协议制定转换规则,将关键字值转换为目标协议的帧头字段;将目标协议的帧头字段与数据字段组合为目标协议的数据帧,根据目标协议的不同,重新定义转换规则和表项内容,实现支持多种协议的转换,使协议转换也不再与具体协议绑定,具有很强的灵活性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的多协议间软件定义的帧头映射方法的流程图;
图2为本发明实施例所提供的原协议的帧头字段转换为关键字的工作原理示意图;
图3为本发明实施例所提供的查找关键字对应的关键字值的工作原理示意图;
图4为本发明实施例所提供的将关键字值转换为目标协议的帧头字段的工作原理示意图;
图5为本发明实施例所提供的多协议间软件定义的帧头映射装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对现有的异构协议映射处理方法已经不能满足应用的需求的问题,本发明实施例提供了一种多协议间软件定义的帧头映射方法和装置,以下首先对本发明的多协议间软件定义的帧头映射方法进行详细介绍。
实施例一
本实施例提供了一种多协议间软件定义的帧头映射方法,如图1所示,该方法包括以下步骤:
步骤S101,将原协议的数据帧拆分为帧头字段和数据字段。
其中,帧头字段可能包含源mac地址,目的mac地址,VLAN层数,VLANID,源IP地址,目的IP地址,源端口号,目的端口号,协议类型等五元组信息和内容;数据字段可以输入数据字段存储器进行存储。
步骤S102,根据目标协议制定转换规则,将帧头字段转换为关键字。
具体地,根据关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器关键字的不同位段;根据目标协议确定待转换的帧头字段的位段;根据转换规则,将待转换的位段通过字段映射选择器转换为关键字。其中,第一字段映射选择器的控制端均通过第一寄存器来控制,第一寄存器中的内容包括:10位位宽的地址字段(Addr),用来指示每个字段映射选择器从原协议的帧头字段中提取字段的位置;8位位宽的掩码字段(Mask),用来指示所提取原协议的帧头字段的8位中,哪一位的值需要替换;8位位宽掩码值字段(Mask_value),用来指示某一位需替换的新值。该步骤的工作原理如图2所示。
例如,关键字(Key)的位宽为128位,则可以在映射模块中设计15个8位位宽的字段映射选择器(Mux8),和8个1位位宽的字段映射选择器(Mux1),这23个字段映射选择器构成了128位位宽的关键字,通过改变每个字段映射选择器的控制端,可以从原先协议的帧头字段(head_a_info)的任意位段提取关键字。所有的字段映射选择器的控制端均通过第一寄存器来控制,通过对第一寄存器中的内容的改写,确定要提取到关键字的原协议的帧头字段的位段
若原协议的帧头字段的内容为,第0~47位为源mac地址,第48~95位为目的mac地址,第96~127位为目的IP地址,第128~159位为源IP地址,需要将原协议的帧头字段中的目的mac地址(第48~79位)和目的IP地址(第80~111位)提出到关键字中,需要将目的mac地址的高8位设置为0x21,表1示出了将原协议帧头字段转换为关键字的配置信息。
表1
步骤S103,根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值。
具体地,可以选择通过哈希表来进行查找,将关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;将指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;哈希存储器与所述哈希函数生成器一一对应;将指定个数的哈希地址中存放的指定个数的哈希关键字输出;将指定个数的哈希关键字与关键字进行比较;若有与关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到关键字值。
例如,关键字的位宽为128位,可以设置3个不同规则的哈希函数生成器,相对应的,设置3个哈希存储器,关键字经过3个不同规则的哈希函数生成器压缩后,作为哈希存储器的地址,输入哈希存储器,哈希存储器找到输入的地址中保存的哈希关键字,并将哈希关键字输出,与映射模块输出的关键字进行比较,如果有任何一个哈希关键字与映射模块输出的关键字相等,则将哈希关键字对应的哈希关键字值输出,作为与映射模块输出的关键字相对应的关键字值。哈希表的工作原理如图3所示。
步骤S104,根据转换规则,将关键字值转换为目标协议的帧头字段。
具体地,根据关键字值的位宽,设定第二字段映射选择器的个数和宽度;根据目标协议确定待转换的关键字值的位段;根据转换规则,将待转换的关键字值的位段通过字段映射选择器转换为目标协议的帧头字段。其中,由关键字值(Key_value)转换的到的目标协议的帧头字段(head_b_mdy)和目标协议帧头字段寄存器(head_b_ram)通过一个选择器(mux1)选择之后,形成最终的目标协议的帧头字段;所有的第二字段映射选择器均由第二寄存器控制,第二寄存器的内容包括:10位位宽的源地址字段(S-addr),用于指示每个字段映射选择器从关键字值字段中提取字段的位置;10位位宽的目的地址字段(D-addr),用于指示目标协议帧头字段中需要替换的字段的位置;8位位宽的掩码字段(Mask),用于指示所提取的关键字值字段的8位中,哪一位的值需要替换;8位位宽的掩码值字段(Mask_value),用于指示某一位需替换的新值;1位位宽的选择字段(En),用于控制选择器选择目标协议帧头数据的来源,当选择字段的值为1时,选择器选择由关键字值转换的目标协议的帧头字段,当选择字段的值为0时,选择器选择目标协议帧头寄存器中的帧头字段。该步骤的工作原理如图4所示。
例如,将以太网协议转换为FC协议中,假设关键字值的位宽为128位,则也需要设计15个8位位宽的字段映射选择器(Mux8),和8个1位位宽的字段映射选择器(Mux1),来进行关键字值到FC协议帧头字段的转换,并且在哈希表中已配置关键字值的第0~23位为FC帧的源ID,第24~47位为FC帧的目的ID,其他位不用。FC协议的帧头信息为160位,若FC帧头中除源ID和目的ID外,其他位均可由FC帧头寄存器预存,则通过如下表所示的配置,就可将关键字值的字段替换到FC帧头中适当的位置,表2示出了将关键字值转换为FC帧头字段的配置信息。
表2
步骤S105,将目标协议的帧头字段与数据字段组合为目标协议的数据帧。
具体地,将目标协议的帧头字段与数据字段存储器中存储的数据字段组合到一起,形成目标协议的数据帧。
本发明实施例提供的多协议间软件定义的帧头映射方法,将原协议的数据帧拆分为帧头字段和数据字段;根据目标协议制定转换规则,将帧头字段转换为关键字;根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值;根据目标协议制定转换规则,将关键字值转换为目标协议的帧头字段;将目标协议的帧头字段与数据字段组合为目标协议的数据帧,根据目标协议的不同,重新定义转换规则和表项内容,实现支持多种协议的转换,使协议转换也不再与具体协议绑定,具有很强的灵活性。
实施例二
与上述方法实施例相对应地,本实施例提供了一种多协议间软件定义的帧头映射装置,如图5所示,该装置包括:
拆分模块51,用于将原协议的数据帧拆分为帧头字段和数据字段。
具体的,将拆分的数据字段输入数据字段存储器进行存储。
映射模块52,用于根据目标协议制定转换规则,将帧头字段转换为关键字。
具体地,根据所述关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器对应所述关键字的不同位段;根据目标协议确定待转换的所述帧头字段的位段;根据所述转换规则,将所述待转换的位段通过所述字段映射选择器转换为关键字。
查找模块53,用于根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值。
具体地,可以选择通过哈希表来进行查找,将关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;将指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;哈希存储器与所述哈希函数生成器一一对应;将指定个数的哈希地址中存放的指定个数的哈希关键字输出;将指定个数的哈希关键字与关键字进行比较;若有与关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到关键字值。
重映射模块54,用于根据转换规则,将关键字值转换为目标协议的帧头字段。
根据所述关键字值的位宽,设定第二字段映射选择器的个数和宽度;根据目标协议确定待转换的所述关键字值的位段;根据所述转换规则,将所述待转换的关键字的位段通过与字段映射选择器转换为目标协议的帧头字段。
组合模块55,用于将目标协议的帧头字段与数据字段组合为目标协议的数据帧。
具体地,将目标协议的帧头字段与数据字段存储器中存储的数据字段组合到一起,形成目标协议的数据帧。
本发明实施例提供的多协议间软件定义的帧头映射装置,将原协议的数据帧拆分为帧头字段和数据字段;根据目标协议制定转换规则,将帧头字段转换为关键字;根据预存的关键字与关键字值的对应关系,找到关键字相对应的关键字值;根据目标协议制定转换规则,将关键字值转换为目标协议的帧头字段;将目标协议的帧头字段与数据字段组合为目标协议的数据帧,根据目标协议的不同,重新定义转换规则和表项内容,实现支持多种协议的转换,使协议转换也不再与具体协议绑定,具有很强的灵活性。
进一步地,本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述的多协议间软件定义的帧头映射方法。
本发明实施例提供的多协议间软件定义的帧头映射方法和装置具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
需要说明的是,在本发明所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种多协议间软件定义的帧头映射方法,其特征在于,所述方法包括:
将原协议的数据帧拆分为帧头字段和数据字段;
根据目标协议制定转换规则,将所述帧头字段转换为关键字;
根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值;
根据所述转换规则,将所述关键字值转换为目标协议的帧头字段;
将所述目标协议的帧头字段与所述数据字段组合为目标协议的数据帧;
所述根据目标协议制定转换规则,将所述帧头字段转换为关键字的步骤,包括:
根据所述关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器对应所述关键字的不同位段;
根据目标协议确定待转换的所述帧头字段的位段;
根据所述转换规则,将所述待转换的位段通过所述字段映射选择器转换为关键字;
其中,所述第一字段映射选择器的控制端均通过第一寄存器来控制。
2.根据权利要求1所述的方法,其特征在于,所述根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值的步骤,包括:
将所述关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;所述指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;
根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值的步骤,包括:
将所述指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;所述哈希存储器与所述哈希函数生成器一一对应;
将所述指定个数的哈希地址中存放的指定个数的哈希关键字输出;
将所述指定个数的哈希关键字与所述关键字进行比较;
若有与所述关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到所述关键字值。
4.根据权利要求1所述的方法,其特征在于,所述根据软件定义的转换规则,将所述关键字值转换为目标协议的帧头字段的步骤,包括:
根据所述关键字值的位宽,设定第二字段映射选择器的个数和宽度;
根据目标协议确定待转换的所述关键字值的位段;
根据所述转换规则,将所述待转换的关键字值的位段通过字段映射选择器转换为目标协议的帧头字段。
5.一种多协议间软件定义的帧头映射装置,其特征在于,所述装置包括:
拆分模块,用于将原协议的数据帧拆分为帧头字段和数据字段;
映射模块,用于根据目标协议制定转换规则,将所述帧头字段转换为关键字;
查找模块,用于根据预存的关键字与关键字值的对应关系,找到所述关键字相对应的关键字值;
重映射模块,用于根据所述转换规则,将所述关键字值转换为目标协议的帧头字段;
组合模块,用于将所述目标协议的帧头字段与所述数据字段组合为目标协议的数据帧;
所述根据目标协议制定转换规则,将所述帧头字段转换为关键字的步骤,包括:
根据所述关键字的位宽,设定第一字段映射选择器的个数和宽度;每个字段映射选择器对应所述关键字的不同位段;
根据目标协议确定待转换的所述帧头字段的位段;
根据所述转换规则,将所述待转换的位段通过所述字段映射选择器转换为关键字;
其中,所述第一字段映射选择器的控制端均通过第一寄存器来控制。
6.根据权利要求5所述的装置,其特征在于,所述查找模块,还用于:
将所述关键字输入到指定个数的不同规则的哈希函数生成器中进行压缩,得到指定个数的压缩后的关键字;所述指定个数指根据关键字的不同,指定所需个数的哈希函数生成器;
根据所述指定个数的压缩后的关键字,查找所述关键字对应的关键字值。
7.根据权利要求6所述的装置,其特征在于,所述查找模块,还用于:
将所述指定个数的压缩后的关键字作为哈希存储器的哈希地址,输入指定个数的哈希存储器中;所述哈希存储器与所述哈希函数生成器一一对应;
将所述指定个数的哈希地址中存放的指定个数的哈希关键字输出;
将所述指定个数的哈希关键字与所述关键字进行比较;
若有与所述关键字相等的哈希关键字,则将哈希关键字相对应的哈希关键字值输出,得到所述关键字值。
8.根据权利要求5所述的装置,其特征在于,所述重映射模块,还用于:
根据所述关键字值的位宽,设定第二字段映射选择器的个数和宽度;
根据目标协议确定待转换的所述关键字值的位段;
根据所述转换规则,将所述待转换的关键字值的位段通过字段映射选择器转换为目标协议的帧头字段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811032492.7A CN109218301B (zh) | 2018-09-05 | 2018-09-05 | 多协议间软件定义的帧头映射的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811032492.7A CN109218301B (zh) | 2018-09-05 | 2018-09-05 | 多协议间软件定义的帧头映射的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109218301A CN109218301A (zh) | 2019-01-15 |
CN109218301B true CN109218301B (zh) | 2021-01-15 |
Family
ID=64987595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811032492.7A Active CN109218301B (zh) | 2018-09-05 | 2018-09-05 | 多协议间软件定义的帧头映射的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109218301B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110177046B (zh) * | 2019-04-18 | 2021-04-02 | 中国人民解放军战略支援部队信息工程大学 | 基于拟态思想的安全交换芯片、实现方法及网络交换设备 |
CN110225061B (zh) * | 2019-06-26 | 2021-12-28 | 天津市滨海新区信息技术创新中心 | 基于流表驱动的异构协议转换方法和装置 |
CN110471776B (zh) * | 2019-06-27 | 2022-02-08 | 浙江口碑网络技术有限公司 | 应用数据通信方法、装置及系统 |
CN112825065B (zh) * | 2019-11-21 | 2024-10-18 | 广州希姆半导体科技有限公司 | 数据处理电路、装置以及方法 |
CN112291195A (zh) * | 2020-09-27 | 2021-01-29 | 杭州云创智联科技有限公司 | Art-Net数据处理的方法和系统 |
CN113489686B (zh) * | 2021-06-16 | 2023-01-10 | 杭州深渡科技有限公司 | 一种基于knx协议的数据转换方法和系统 |
CN114338393B (zh) * | 2021-12-28 | 2024-04-26 | 深圳市汇川技术股份有限公司 | 升级数据的传输方法、透传设备、装置、通信系统及介质 |
CN115314157B (zh) * | 2022-07-19 | 2023-10-24 | 烽火通信科技股份有限公司 | 一种以太网成帧方法及装置 |
CN116055589B (zh) * | 2023-01-28 | 2023-06-06 | 北京国科天迅科技有限公司 | 数据管理方法、装置及计算机设备 |
CN117040590B (zh) * | 2023-08-08 | 2024-06-25 | 北京和德宇航技术有限公司 | 一种数据帧确定方法、装置、设备及存储介质 |
CN117640783B (zh) * | 2024-01-25 | 2024-04-09 | 富瀚微电子(成都)有限公司 | 一种数据传输方法、系统、电子设备以及可读介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277293A (zh) * | 2007-06-25 | 2008-10-01 | 广东中大讯通软件科技有限公司 | 一种实现数字家庭设备间多协议互联互通的适配器及其方法 |
CN102387082A (zh) * | 2011-11-25 | 2012-03-21 | 西安电子科技大学 | 基于流分类的分组流量控制系统及控制方法 |
CN103957139A (zh) * | 2014-05-09 | 2014-07-30 | 天津市德力电子仪器有限公司 | 一种基于fpga的万兆以太网帧解析方法 |
CN104702588A (zh) * | 2013-12-04 | 2015-06-10 | 联发科技股份有限公司 | 解析器、分组处理装置以及相关方法 |
-
2018
- 2018-09-05 CN CN201811032492.7A patent/CN109218301B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277293A (zh) * | 2007-06-25 | 2008-10-01 | 广东中大讯通软件科技有限公司 | 一种实现数字家庭设备间多协议互联互通的适配器及其方法 |
CN102387082A (zh) * | 2011-11-25 | 2012-03-21 | 西安电子科技大学 | 基于流分类的分组流量控制系统及控制方法 |
CN104702588A (zh) * | 2013-12-04 | 2015-06-10 | 联发科技股份有限公司 | 解析器、分组处理装置以及相关方法 |
CN103957139A (zh) * | 2014-05-09 | 2014-07-30 | 天津市德力电子仪器有限公司 | 一种基于fpga的万兆以太网帧解析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109218301A (zh) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109218301B (zh) | 多协议间软件定义的帧头映射的方法和装置 | |
US7782859B2 (en) | Enhanced packet classification | |
JP4452183B2 (ja) | プログラマブル状態マシンのデータ構造を作成して入力単語連鎖を構文解析する方法、プログラマブル状態マシンのデータ構造を使用して入力単語連鎖に対応する結果として得られた値を検索する方法、ワイヤスピードのディープ・パケット処理を行う方法、ディープ・パケット処理のための装置、チップ埋め込み装置、およびプログラミング・コード命令を含むコンピュータ・プログラム(ディープ・パケット処理のための方法および装置) | |
US20150242429A1 (en) | Data matching based on hash table representations of hash tables | |
US20090185568A1 (en) | Method and system for packet classification with reduced memory space and enhanced access speed | |
US20200267081A1 (en) | Forwarding Table Management | |
US20050018683A1 (en) | IP address storage technique for longest prefix match | |
US8543528B2 (en) | Exploitation of transition rule sharing based on short state tags to improve the storage efficiency | |
US20090282167A1 (en) | Method and apparatus for bridging | |
WO2020119310A1 (zh) | 查找表存储方法、装置及计算机可读存储介质 | |
US9485179B2 (en) | Apparatus and method for scalable and flexible table search in a network switch | |
CN111131050A (zh) | 流表的匹配方法及装置 | |
CN111131049B (zh) | 路由表项的处理方法及装置 | |
US11888743B1 (en) | Network device storage of incremental prefix trees | |
CN106878308A (zh) | 一种icmp报文匹配系统及方法 | |
CN109039911B (zh) | 一种基于hash查找方式共享ram的方法及系统 | |
US9544226B1 (en) | Efficient address-based rule resolution in a network employing a bit-mapped index | |
US9032142B2 (en) | System and method for storing integer ranges in a memory | |
CN107547409B (zh) | 一种路由查找方法、装置和路由设备 | |
CN109525503A (zh) | 一种压缩方法及装置、计算机可读存储介质 | |
CN116600031B (zh) | 报文处理方法、装置、设备及存储介质 | |
CN117540071B (zh) | 一种针对查找引擎的属性表项的配置方法和装置 | |
CN111506553B (zh) | 数据库的功能设定方法及装置 | |
KR102229554B1 (ko) | 해시 키 생성 방법 및 그 장치 | |
US10887221B2 (en) | Methods of synchronization mode of flow table and apparatus using the same |
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 |