[发明专利]报文修改方法、装置、计算机设备、介质在审
申请号: | 202010980734.6 | 申请日: | 2020-09-17 |
公开(公告)号: | CN114205415A | 公开(公告)日: | 2022-03-18 |
发明(设计)人: | 谭铜磊;周峰;徐金林;刘衡祁 | 申请(专利权)人: | 深圳市中兴微电子技术有限公司 |
主分类号: | H04L67/565 | 分类号: | H04L67/565 |
代理公司: | 北京天昊联合知识产权代理有限公司 11112 | 代理人: | 姜春咸;刘悦晗 |
地址: | 518055 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 修改 方法 装置 计算机 设备 介质 | ||
本公开提供了一种报文修改方法、装置、计算机设备及介质,所述方法包括:将与报文封装信息相关的待修改字段划分为M个容器;对执行修改命令的超长指令集进行指令提取,得出N组初始指令,其中,2≤N≤M;对N组所述初始指令进行处理,得到N组源操作数和N组修改字段配置信息;根据所述N组修改字段配置信息分别确定N组源操作数匹配的N个容器;根据所述N组源操作数分别修改匹配的N个容器。在可编程技术的基础上,N组初始指令间为互不交叉的直接寻址,实现对连续的待修改字段进行并行修改,完成对报文封装信息的修改。使得一个周期可以执行一个超长指令集,采用并行修改,相较于串行修改能够明显降低指令操作延时。
技术领域
本公开涉及以太网转发和传输通讯领域,具体涉及一种报文修改方法、一种报文修改装置、一种计算机设备及一种计算机可读介质。
背景技术
通信网络的实质是数据交换,SDN(Network Defined Software,软件定义网络)提出三层架构,即应用层、控制层和转发层,SDN具有可编程性。openflow(使用类似于应用程序接口进程配置网络交换机的协议)协议运行在控制层和转发层之间。在Openflow架构的以太网转发交换系统中,报文的转发下一跳路径由SDN控制器和流表决策,并通过微引擎的指令进行报文的封装信息更新,实现不同网络设备之间的报文交换。
Openflow架构的微引擎设计通常采用VLIW(超长指令集,Very Long InstructionWord),实现单条指令集索引触发多个指令单元的执行。VLIW是一种非常长的指令组合,它把许多条指令连在一起,增加了运算的速度。报文的封装信息更新时,指令一般采用串行执行,指令的串行执行周期会随着超长指令集中总指令个数的增多而加速增加。这里的串行执行是指一条微码指令只能对与报文封装信息相关的字段的某一段连续的内容进行修改,对不同位置字段的修改需要多条微码指令。微码指令指的是用软件技术来实现硬件设计的一种技术,它一般驻留在高速存储器中并将机器指令翻译成详细的电路操作序列。
如何对与报文封装信息相关的字段进行修改是本领域亟待解决的技术问题。
发明内容
本公开针对现有技术中存在的上述不足,提供一种报文修改方法、一种报文修改装置、一种计算机设备及一种计算机可读介质。
第一方面,本公开实施例提供一种报文修改方法,包括:
将与报文封装信息相关的待修改字段划分为M个容器;
对执行修改命令的超长指令集进行指令提取,得出N组初始指令,其中,2≤N≤M;
对N组所述初始指令进行处理,得到N组源操作数和N组修改字段配置信息;
根据所述N组修改字段配置信息分别确定N组源操作数匹配的N个容器;
根据所述N组源操作数分别修改匹配的N个容器。
在一些实施例中,将与报文封装信息相关的待修改字段划分为M个容器,包括:
将所述待修改字段划分为M个字段,并将每个字段配置成一个容器。
在一些实施例中,所述初始指令包括算数逻辑运算单元ALU指令,对执行修改命令的超长指令集进行指令提取,得到N组初始指令,包括:
根据所述超长指令集的索引查询ALU bitmap ram,得到多组N位宽ALU bitmap信息;
对所述多组N位宽ALU bitmap信息进行同位数拼接,得到N组同位数的第一拼接结果;
根据所述第一拼接结果,确定相应的指令索引;
根据所述指令索引和动态配置ram指令表,得到N组ALU指令。
在一些实施例中,所述待修改字段包括报文字段,对初始指令进行处理,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市中兴微电子技术有限公司,未经深圳市中兴微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010980734.6/2.html,转载请声明来源钻瓜专利网。