以硬件加速产生和处理VXLAN数据包及移除VXLAN报头的方法与流程

文档序号:38072074发布日期:2024-05-21 20:07阅读:15来源:国知局
以硬件加速产生和处理VXLAN数据包及移除VXLAN报头的方法与流程

本发明涉及虚拟可扩展局域网数据包(virtual extensible local areanetwork(vxlan)packets)的处理,尤其涉及以硬件加速vxlan数据包的处理。


背景技术:

1、虚拟局域网(virtual local area network(vlan))报头(header)的vlan识别符(vlan id)栏位的长度只有12位,最多只支持212=4096个vlan,这对于某些应用(例如:云端计算)而言不敷使用。为了解决这个问题,虚拟可扩展局域网(virtual extensiblelocal area network(vxlan))近年来被广泛地应用。vxlan数据包的报头有虚拟网络标识符(virtual network identifier(vni)),其相当于vlan id,该vni的长度有24位,可支持224个vlan,这足以满足多数应用。

2、然而,目前技术多半以软件来解析数据包以及转换数据包格式,以实现vxlan,但软件的处理速度不理想。而硬件(例如:专用集成电路(application specific integratedcircuit(asic)))难以用来实现vxlan的原因包括:除了对下行数据包需移除vxlan报头外,对于不同的上行数据包(upstream packets),需分别添加不同内容的vxlan报头至该些不同的上行数据包。简言之,硬件难以对所有数据包执行一致化的处理。


技术实现思路

1、本发明的目的之一在于提供以硬件加速产生虚拟可扩展局域网数据包(virtualextensible local area network(vxlan)packets)的方法、以硬件加速移除vxlan报头的方法以及以硬件加速处理vxlan数据包的方法。

2、本发明的以硬件加速产生vxlan数据包的方法的一实施例包括下列步骤:判断一原始数据包是否为一上行数据包;当该原始数据包为该上行数据包时,判断该原始数据包是否指向一vxlan外出接口;当该原始数据包指向该vxlan外出接口,加入一原型外部报头在该原始数据包之前,以产生一vxlan数据包;以及在产生该vxlan数据包后,判断是否修改该vxlan数据包的该原型外部报头的内容。

3、本发明的以硬件加速移除vxlan报头的方法的一实施例包括下列步骤:判断一原始数据包是否为一下行数据包;当该原始数据包为该下行数据包时,判断该原始数据包是否为一vxlan数据包且包括一匹配的vxlan网络标识符(vxlan network identifier(vni));当该原始数据包为该vxlan数据包且包括该匹配的vni时,判断该原始数据包是否指向一vxlan进入接口;以及当该原始数据包指向该vxlan进入接口时,移除一外部报头,以产生一输入数据包,其中该外部报头包括一vxlan报头。

4、本发明的以硬件加速处理vxlan数据包的方法的一实施例包括:以该硬件加速产生一vxlan数据包的多个数据包产生步骤;以及以该硬件加速移除一vxlan报头的多个报头移除步骤。该多个数据包产生步骤包括:判断一上行数据包是否指向一vxlan外出接口;当该上行数据包指向该vxlan外出接口,加入一原型外部报头在该上行数据包之前,以产生该vxlan数据包;以及在产生该vxlan数据包后,判断是否修改该vxlan数据包的该原型外部报头的内容。该多个报头移除步骤包括:判断一下行数据包是否为一vxlan数据包且包括一匹配的vxlan网络标识符(vxlan network identifier(vni));当该下行数据包为该vxlan数据包且包括该匹配的vni时,判断该下行数据包是否指向一vxlan进入接口;以及当该下行数据包指向该vxlan进入接口时,移除一外部报头,以产生一输入数据包,其中该外部报头包括该vxlan报头。

5、有关本发明的特征、实施与功效,现结合附图对优选实施例详细说明如下。



技术特征:

1.一种以硬件加速产生虚拟可扩展局域网数据包的方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,还包括:当所述原型外部报头未储存在所述硬件的一内容表的一内容缓存时,从一上层电路取得所述原型外部报头的内容的至少一部分,并将所述原型外部报头储存在所述内容缓存。

3.根据权利要求2所述的方法,其特征在于,判断是否修改所述vxlan数据包的所述原型外部报头的步骤包括:从所述上层电路取得多个栏位值,并将所述多个栏位值分别储存在一控制表的一控制条目的多个栏位;以及根据所述控制条目判断是否修改所述vxlan数据包的所述原型外部报头。

4.根据权利要求3所述的方法,其特征在于,所述原型外部报头包括m个栏位,所述m为大于一的一整数;以及根据所述控制表判断是否修改所述vxlan数据包的所述原型外部报头的步骤包括:根据所述控制条目的所述多个栏位值检查所述原型外部报头的k个栏位的内容,以决定是否修改所述k个栏位的内容,所述k为小于所述m的一正整数。

5.根据权利要求4所述的方法,其特征在于,所述k个栏位包括:一通过以太网传输点对点协议栏位;一互联网通信协议第4版栏位或一互联网通信协议第6版栏位;以及一用户数据报协议栏位。

6.根据权利要求1所述的方法,其特征在于,还包括:当所述原型外部报头储存在所述硬件的一内容表的一内容缓存时,从所述内容缓存取得所述原型外部报头。

7.根据权利要求6所述的方法,其特征在于,判断是否修改所述vxlan数据包的所述原型外部报头的步骤包括:根据所述硬件的一控制表的一控制条目判断是否修改所述vxlan数据包的所述原型外部报头,其中所述控制条目包括多个栏位值。

8.根据权利要求7所述的方法,其特征在于,所述原型外部报头包括m个栏位,所述m为大于一的一整数;以及根据所述控制表判断是否修改所述vxlan数据包的所述原型外部报头的步骤包括:根据所述控制条目的所述多个栏位值检查所述原型外部报头的k个栏位的内容,以决定是否修改所述k个栏位的内容,所述k为小于所述m的一正整数。

9.一种以硬件加速移除虚拟可扩展局域网报头的方法,其特征在于,包括:

10.一种以硬件加速处理虚拟可扩展局域网数据包,其特征在于,包括:


技术总结
本发明提供一种以一专用集成电路加速产生虚拟可扩展局域网数据包(Virtual Extensible Local Area Network(VXLAN)packets)的方法,包括下列步骤:判断一原始数据包是否为一上行数据包;当该原始数据包为该上行数据包时,判断该原始数据包是否指向一VXLAN外出接口;当该原始数据包指向该VXLAN外出接口,加入一原型外部报头在该原始数据包之前,以产生一VXLAN数据包;以及在产生该VXLAN数据包后,判断是否修改该VXLAN数据包的该原型外部报头的内容。

技术研发人员:苏宗崟,陈骥
受保护的技术使用者:瑞昱半导体股份有限公司
技术研发日:
技术公布日:2024/5/20
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1