一种报文处理方法、装置、设备及机器可读存储介质与流程

未命名 07-14 阅读:148 评论:0


1.本公开涉及通信技术领域,尤其是涉及一种报文处理方法、装置、设备及机器可读存储介质。


背景技术:

2.服务器虚拟化后,数据中心内部vm的数量相比原有的物理机发生了数量级的变化,与之对应的虚拟机虚拟网卡的mac地址数量也相应的增加,这对原有的tor交换机的地址容量能力产生了很大冲击。
3.另一方面,原有的数据中心用来划分虚拟网络的vlan只有4094个虚拟网络标识可用,大规模数据中心以及公有云的场景下,vlan技术不再能够满足需求。
4.此外,云数据中心中虚拟机可以进行一定范围的迁移,在vlan网络下,虚拟机只能在二层网络下迁移,并且为了能够支持虚拟机的迁移,需要对二层网络进行vlan预配置,因而造成vlan配置的滥用,影响vlan广播域的隔离,降低了网络的效率。
5.vxlan(virtual extensible local area network,虚拟扩展局域网),一种隧道技术,能在三层网络的基础上建立二层以太网网络隧道,从而实现跨地域的二层互连。vni(vxlan network identifier,vxlan网络标识),用于区分vxlan段。bd(bridge domain,广播域),用于连接两个不同的网段。nat(network address translation,网络地址转换),一种在ip数据包通过路由器或防火墙时重写来源ip地址或目的ip地址的技术。


技术实现要素:

6.有鉴于此,本公开提供一种报文处理方法、装置及电子设备、机器可读存储介质,以改善上述网络标识容量不足影响网络效率的问题。
7.具体地技术方案如下:
8.本公开提供了一种报文处理方法,应用于网关设备,所述方法包括:接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。
9.作为一种技术方案,所述私网网关是sdn网关,所述网关设备是nat网关设备。
10.作为一种技术方案,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。
11.作为一种技术方案,接收关联于所述vgre会话的来自公网的应答报文;根据vni信息封装应答报文生成vgre报文;向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。
12.本公开同时提供了一种报文处理装置,应用于网关设备,所述装置包括:接收模块,用于接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;处理模块,用于解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;发送模块,用于根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。
13.作为一种技术方案,所述私网网关是sdn网关,所述网关设备是nat网关设备。
14.作为一种技术方案,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。
15.作为一种技术方案,接收模块还用于接收关联于所述vgre会话的来自公网的应答报文;处理模块还用于根据vni信息封装应答报文生成vgre报文;发送模块还用于向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。
16.本公开同时提供了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现前述的报文处理方法。
17.本公开同时提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现前述的报文处理方法。
18.本公开提供的上述技术方案至少带来了以下有益效果:
19.通过vgre报文和vgre隧道,在报文中携带相应标识和vni信息以区分不同的租户vm,得以区分地址重叠的不同租户vm,实现在无需增加网络设备和改动网络架构的情况下,不经过二次nat转换改善租户vm地址重叠的问题,不受到网络设备vlan标识资源容量的限制。
附图说明
20.为了更加清楚地说明本公开实施方式或者现有技术中的技术方案,下面将对本公开实施方式或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开中记载的一些实施方式,对于本领域普通技术人员来讲,还可以根据本公开实施方式的这些附图获得其他的附图。
21.图1是本公开一种实施方式中的报文处理方法的流程图;
22.图2是本公开一种实施方式中的报文处理装置的结构图;
23.图3是本公开一种实施方式中的电子设备的硬件结构图。
具体实施方式
24.在本公开实施方式使用的术语仅仅是出于描述特定实施方式的目的,而非限制本公开。本公开和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数
形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
25.应当理解,尽管在本公开实施方式可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
26.在一种技术方案中,使用vxlan技术改善以上技术问题,vxlan是一种overlay网络技术,使用mac over udp封装实现多租户公有云数据中心虚拟二层网络,vxlan具有24位vxlan网络标识符,可以支持多达16m的vxlan网络隔离,mac over udp报文封装,二层网络叠加在三层网络之上,实现二层网络在三层网络上的延伸,物理网络和虚拟网络解耦,租户可以独立规划自己的ip地址空间。
27.vxlan是一种隧道技术,将原始的二层报文封装在udp报文中(目的端口号4789),在外部网络看来,转发的是一个普通udp报文。报文转发按照外层封装的ip地址和mac地址指导转发。能够封装和解封装的设备称为vtep(vxlan tunnel end point),vtep设备是vxlan隧道的端点。vxlan报文转发至vtep时,vtep将报文解封装,然后按照内层ip和内层mac指导转发。vni(vxlan network identifier)是vxlan网络标识符,类似vlan tag,vxlan使用vni标识不同的网段。
28.一个典型的vxlan组网,vxlan将vm发出的原始报文进行封装后通过vxlan隧道进行传输,隧道两端的vm不需感知传输网络的物理架构。这样,对于具有同一网段ip地址的vm而言,即使其物理位置不在同一个二层网络中,但从逻辑上看,相当于处于同一个二层域。即vxlan技术在三层网络之上,构建出了一个虚拟的大二层网络,只要虚拟机路由可达,就可以将其规划到同一个大二层网络中。基于overlay的vxlan技术,不感知当前的物理网络,能够在任意路由可达的网络上叠加二层虚拟网络,实现站点与站点之间的二层互联。而vxlan网络标识vni(vxlan network identifie)有效得解决了云计算中海量租户隔离的问题。同时,基于vxlan三层网关,也能够实现站点与站点之间的三层互联。因此,通过vxlan技术可实现租户不同站点之间的互联,更加快速、灵活。
29.类似传统网络中采用vlan划分广播域方法,在vxlan网络中通过bd(bridge domain)划分广播域。在vxlan网络中,将vni以1:1方式映射到广播域bd,一个bd就表示一个广播域,同一个bd内的主机可以进行二层互通。
30.类似vlan中想要实现vlan之间互访就需要vlanif接口转发。vxlan也需要一个vbdif接口转发vni之间的数据,vbdif是基于bd创建的三层逻辑接口。不同bd无法直接互相访问,vxlan网络也无法直接访问外部网络,此时需要部署三层vxlan网关,用于vxlan虚拟网络的跨子网通信以及外部网络的访问。
31.业务pod内的虚机发起外网访问,流量经过pod内的交换机,到达pod互联层,如果是南北向流量,会到达南北向汇聚交换机,该南北向汇聚交换机将流量经由vxlan送至旁挂的sdn网关,sdn网关终结vxlan后,将流量送回至南北向汇聚交换机,随后由交换机送至网络出口层的sdn nat网关,在sdn nat网关上完成云内私网地址到公网地址的转换,最后进入公网。公网访问云内虚机的流量为上述反向路径。
32.但以上技术方案,在vxlan网络访问外部网络时,需要将vxlan隧道解封装。而原始报文可能来自不同租户,解封装后原始vm地址都是私网地址,不同租户间必然存在重叠的地址。
33.若通过vlan或vrf区分不同的租户,vxlan的vni字段有24位,即最多支持2^24=1600万个租户,而流量路径上的网络设备(如交换机、sdn网关)最多只能支持4k vlan或vrf,这导致单个资源池无法支持4k以上的租户。
34.若在vm发出的报文进入vxlan隧道之前先做一次nat,将租户地址先转换为不重叠的地址,之后在出公网的网关上不需要再通过vrf隔离租户,流量在进入vxlan封装以前,已经先行做过一次nat转换,将虚机地址转换为云内使用的“公网地址”,然后在sdn nat网关上做第二次nat转换,将虚机地址转换为真正的公网地址,则不重叠的地址需要事先由管理员规划,且需要和后续真正的网关绑定,无法自由迁移,给运维增加了复杂度,各租户通过vxlan网络完全隔离的机制会被破坏,有可能造成租户之间的无权限访问,带来安全隐患。
35.有鉴于此,本公开提供一种报文处理方法、装置及电子设备、机器可读存储介质,以改善上述技术问题。
36.具体地技术方案如后述。
37.在一种实施方式中,本公开提供了一种报文处理方法,应用于网关设备,所述方法包括:接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。
38.具体地,如图1,包括以下步骤:
39.步骤s11,接收通过vgre隧道发送的vgre报文;
40.步骤s12,解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;
41.步骤s13,根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。
42.通过vgre报文和vgre隧道,在报文中携带相应标识和vni信息以区分不同的租户vm,得以区分地址重叠的不同租户vm,实现在无需增加网络设备和改动网络架构的情况下,不经过二次nat转换改善租户vm地址重叠的问题,不受到网络设备vlan标识资源容量的限制。
43.在一种实施方式中,所述私网网关是sdn网关,所述网关设备是nat网关设备。
44.在一种实施方式中,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。
45.在一种实施方式中,接收关联于所述vgre会话的来自公网的应答报文;根据vni信息封装应答报文生成vgre报文;向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。
46.在一种示例性的实施方式中,以简化的报文转发路径为pod(租户vm,私网设备)、南北汇聚交换机、sdn网关、南北汇聚交换机、sdn nat网关、出口路由器、互联网(公网)为例。
47.扩展定义gre隧道为vgre隧道,vgre隧道用于传输vgre报文,即特定gre报文,将还有vni信息的vxlan的vni字段封装在该特定gre报文的报文头中,并在报文中加入特定标志位以标识该报文经vxlan解封装后,进入vgre隧道转发。
48.在sdn网关和nat网关之间建立上述vgre隧道,在sdn网关上配置路由,当sdn网关收到来自南北向汇聚交换机的vxlan流量时,查询路由发现下一跳是vgre隧道,则解封装后进入隧道转发流程。
49.nat网关通过vgre隧道收到报文后,对报文进行解封装,查路由之后发现是待转发至公网的报文,则生成一个vgre会话,记录下报文的五元组信息、隧道信息、vni信息,并匹配nat配置进行nat转换后转发至公网。当nat收到从公网返回的报文时,匹配vgre会话,根据得到的信息,对报文进行nat转换、加封装操作,封装后的报文携带vni信息从vgre隧道口转发至sdn网关。sdn网关收到报文后解封装,根据vgre隧道报文头中的vni字段为原始报文加上vxlan封装,后续进行正常的vxlan转发。
50.在一种实施方式中,租户业务pod中有一个虚拟机vm1,地址为1.1.1.1,需要访问互联网的web网站,该网站的公网地址为39.156.69.79,该租户的vm1属于vxlan10。sdn网关和sdn nat网关之间建立vgre隧道,sdn网关上配置vgre隧道的源地址为2.2.2.2,目的地址为3.3.3.3,sdn nat网关上配置vgre隧道的源地址为3.3.3.3,目的地址为2.2.2.2。sdn nat网关上配置公网地址池,用于将租户vm1的私网地址转换为可以进入互联网的公网地址,地址池范围为30.1.1.1~30.1.1.10。
51.当租户vm1发起访问39.156.69.79时,源ip为1.1.1.1,目的ip为39.156.69.79,协议为tcp,将该报文发往南北汇聚交换机。
52.南北汇聚交换机收到vm1发来的报文,识别此报文属于vxlan 10,查找目的mac表项,将报文进行vxlan封装后发至sdn网关。其中,vxlan头中的vni为10;外层源ip地址为交换机vxlan隧道的ip,外层目的ip地址为sdn网关的vxlan隧道ip;外层源mac地址为交换机的mac,外层目的mac地址为去往目的ip的网络中下一跳设备的mac地址。封装后的报文,根据外层mac和ip信息,在ip网络中进行传输,直至到达sdn网关。
53.sdn网关上配置相应的路由策略,所有去往公网的报文下一跳为vgre隧道接口。sdn网关收到来自南北汇聚交换机的报文,发现外层目的ip是自己,于是对报文进行解封装,解封装后,通过查找路由,识别到这是去往公网的报文,需要进入vgre隧道。于是将原始报文进行封装,内层源ip为1.1.1.1,内层目的ip为39.156.69.79,协议为tcp,vgre隧道外层报文源ip为2.2.2.2,外层报文目的ip为3.3.3.3,报文头中vni字段填写为10,外层源mac地址为vgre隧道的mac地址,而外层目的mac地址为去往目的ip的网络中下一跳设备的mac地址。封装后的报文,根据外层mac和ip信息,在ip网络中进行传输,直至到达对端sdn nat网关。
54.sdn nat网关通过vgre隧道收到来自sdn网关的报文,解封装后得到内层报文,通过查找路由表发现是去往公网的报文,将该报文发往公网口,并在设备上记录相关的会话表项。
55.在公网出口处匹配上nat策略,从配置的公网地址池中选择一个未被占用的公网地址对报文的源ip进行nat转换,并将报文发往出口路由器,同时将会话填充完整并正式化。
56.从公网返回的报文匹配上述会话,将报文的ip地址进行相应的转换,封装vgre,并经由vgre隧道口转发至sdn网关,sdn网关对vgre报文解封装后,进行vxlan加封装流程,后续转发路径为正向报文的反向路径,不再赘述。
57.若vm1还使用公网地址31.1.1.1对外提供访问,则需要在sdn nat网关的公网口配置nat server,指定公网地址31.1.1.1、私网地址1.1.1.1、协议tcp、vni 10的对应关系。
58.sdn nat网关根据配置对报文进行相应的地址端口转换,和vgre封装,vgre封装时,使用配置中的vni填写vgre的报文头部vni字段。后续转发流程与上述相同。
59.本实施方式对无需新增网络设备,无需进行网络架构变动,可以满足云场景下超过4k的大规模租户的南北向访问需求,且不会破坏各租户通过vxlan网络完全隔离的机制。无需进行二次nat转换也可以处理vm地址重叠问题。在sdn nat网关上,不同租户vm的地址即使有重叠,但不同租户的vni的不同,在sdn nat网关上生成的会话表项不会是同一个,vm主动访问公网时,源地址进行公网地址转换,得到的公网ip+端口必然不同;当公网主动访问vm时,目的地址进行转换,即使转换后的私网ip重叠,也可以通过vni区分不同的租户vm。该方案通过vgre隧道机制,可以携带vni,无需通过vrf或vlan区分不同租户,即使流量路径上的网络设备(如交换机、sdn网关)最多只能支持4k vlan或vrf,单个资源池也可以达到4k以上的租户规模。
60.在一种实施方式中,本公开同时提供了一种报文处理装置,如图2,应用于网关设备,所述装置包括:接收模块21,用于接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;处理模块22,用于解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;发送模块23,用于根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。
61.在一种实施方式中,所述私网网关是sdn网关,所述网关设备是nat网关设备。
62.在一种实施方式中,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。
63.在一种实施方式中,接收模块还用于接收关联于所述vgre会话的来自公网的应答报文;处理模块还用于根据vni信息封装应答报文生成vgre报文;发送模块还用于向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。
64.装置实施方式与对应的方法实施方式相同或相似,在此不再赘述。
65.在一种实施方式中,本公开提供了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现前述的报文处理方法,从硬件层面而言,硬件架构示意图可以参见图3所示。
66.在一种实施方式中,本公开提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现前述的报文处理方法。
67.这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radom access memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
68.上述实施方式阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
69.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本公开时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
70.本领域内的技术人员应明白,本公开的实施方式可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本公开实施方式可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
71.本公开是参照根据本公开实施方式的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
72.而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
73.这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
74.本领域技术人员应明白,本公开的实施方式可提供为方法、系统或计算机程序产品。因此,本公开可以采用完全硬件实施方式、完全软件实施方式、或者结合软件和硬件方面的实施方式的形式。而且,本公开可以采用在一个或者多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、cd-rom、光学存储器等)上实
施的计算机程序产品的形式。
75.以上所述仅为本公开的实施方式而已,并不用于限制本公开。对于本领域技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的权利要求范围之内。

技术特征:
1.一种报文处理方法,其特征在于,应用于网关设备,所述方法包括:接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。2.根据权利要求1所述的方法,其特征在于,所述私网网关是sdn网关,所述网关设备是nat网关设备。3.根据权利要求1所述的方法,其特征在于,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。4.根据权利要求1所述的方法,其特征在于,接收关联于所述vgre会话的来自公网的应答报文;根据vni信息封装应答报文生成vgre报文;向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。5.一种报文处理装置,其特征在于,应用于网关设备,所述装置包括:接收模块,用于接收通过vgre隧道发送的vgre报文,所述vgre报文是私网网关将下一跳是vgre隧道私网的vxlan报文解封装后通过vgre隧道向网关设备发送的待转发报文;处理模块,用于解析vgre报文获取vgre报文携带的vni信息,根据vgre报文的五元组信息、隧道信息和vni信息建立vgre会话;发送模块,用于根据vgre会话及匹配的nat配置,对vgre报文进行nat转换处理,并根据处理结果转发vgre报文至公网。6.根据权利要求5所述的装置,其特征在于,所述私网网关是sdn网关,所述网关设备是nat网关设备。7.根据权利要求5所述的装置,其特征在于,所述vgre隧道用于转发vgre报文,所述vgre报文包括特定gre报文头,所述特定gre报文头包括特定标志位和vni字段,所述特定标志位用于标识该特定gre报文头的报文是vxlan解封装后通过vgre隧道转发的报文,所述vni字段用于记录关联的vxlan终端的vni信息。8.根据权利要求5所述的装置,其特征在于,接收模块还用于接收关联于所述vgre会话的来自公网的应答报文;处理模块还用于根据vni信息封装应答报文生成vgre报文;发送模块还用于向所述私网网关转发生成的vgre报文,以使私网网关根据vgre报文的vni信息生成vxlan报文并转发。9.一种电子设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令,以实现权利要求1-4任一所述的方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-4任一所述的方法。

技术总结
本公开提供一种报文处理方法、装置、设备及机器可读存储介质,该方法包括:接收通过vGRE隧道发送的vGRE报文;解析vGRE报文获取报文携带的VNI信息,根据报文的五元组信息、隧道信息和VNI信息建立vGRE会话;根据vGRE会话及匹配的NAT配置,对vGRE报文进行NAT转换处理,并根据处理结果转发vGRE报文至公网。通过本公开的技术方案,通过vGRE报文和vGRE隧道,在报文中携带相应标识和VNI信息以区分不同的租户VM,得以区分地址重叠的不同租户VM,实现在无需增加网络设备和改动网络架构的情况下,不经过二次NAT转换改善租户VM地址重叠的问题,不受到网络设备VLAN标识资源容量的限制。受到网络设备VLAN标识资源容量的限制。受到网络设备VLAN标识资源容量的限制。


技术研发人员:谢林芳
受保护的技术使用者:新华三信息技术有限公司
技术研发日:2023.03.23
技术公布日:2023/7/13
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐