Vxlan报文处理方法以及装置的制造方法

文档序号:8365272阅读:1024来源:国知局
Vxlan报文处理方法以及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种VXLAN报文处理方法以及装置。
【背景技术】
[0002]目前的VXLAN(Virtual extensible Local Area Network,可扩展虚拟局域网络)中包括核心设备、对等的多个VTEP (VXLAN Tunnel End Point,VXLAN隧道端点)设备以及分别与VTEP设备连接的VM(Virtual Machine,虚拟机)。在VXLAN网络中的各VM之间相互通信时,可由与源VM连接的VTEP设备将接收的数据报文封装为VXLAN报文后,通过建立的隧道直接转发至与目的VM连接的VTEP设备,这样一来,可有效提高数据报文的转发效率。
[0003]然而,在需要对通信的数据报文进行监管、统计时,正是由于VTEP之间可以直接通信,则无法对相应的数据报文进行统一管理。

【发明内容】

[0004]针对现有技术的缺陷,本发明提供了一种VXLAN报文处理方法以及装置。
[0005]本发明提供一种VXLAN报文处理方法,应用于VXLAN网络的本地VTEP设备,其中,该方法包括:
[0006]若所述本地VTEP设备为分支(SPOKE)设备,确定所述本地VTEP设备所在实例中是否存在作为中心(HUB)设备的VTEP设备;
[0007]若是,在接收到主机发送的数据报文后,将所述数据报文封装为VXLAN报文发送至作为HUB设备的VTEP设备,以使所述作为HUB设备的VTEP设备将所述VXLAN报文进行解封装后得到数据报文,并将数据报文发送至管理服务器进行处理。
[0008]本发明还提供一种VXLAN报文处理装置,应用于VXLAN网络的本地VTEP设备,所述装置包括:
[0009]确定单元,用于在所述本地VTEP设备为SPOKE设备时,确定所述本地VTEP设备所在实例中是否存在作为HUB设备的VTEP设备;
[0010]收发单元,用于在所述本地VTEP设备所在实例中存在作为HUB设备的VTEP设备时,若接收到主机发送的数据报文,将所述数据报文封装为VXLAN报文发送至所述作为HUB设备的VTEP设备,以使所述作为HUB设备的VTEP设备将所述VXLAN报文进行解封装后得到数据报文,并将数据报文发送至管理服务器进行处理。
[0011]本发明提供的VXLAN报文处理方法以及装置,在本地的VTEP设备为SPOKE设备时,可将接收的数据报文发送至作为HUB设备的VTEP设备,以使作为HUB设备的VTEP设备将数据报文上送至服务器进行统一管理。
【附图说明】
[0012]图1是本发明实施例中的组网环境示意图;
[0013]图2是本发明实施例中一种VXLAN报文处理方法流程示意图;
[0014]图3是本发明实施例中一种VXLAN报文处理装置的逻辑结构示意图;
[0015]图4是本发明实施例中另一种VXLAN报文处理装置的逻辑结构示意图;
[0016]图5是本发明实施例中VXLAN报文处理装置所在本地VTEP设备的硬件架构示意图。
【具体实施方式】
[0017]为使本申请的目的,技术方案及优点更加清楚明白,以下参照附图对本申请方案做进一步的详细说明。
[0018]为了解决现有技术中存在的问题,本发明提供了一种VXLAN报文处理方法以及装置。
[0019]图1为本发明VXLAN报文处理方法所应用的组网示意图,该组网中包括多个VTEP设备(例如VTEPl、VTEP2以及VTEP3),其中,一个VTEP设备与管理服务器相连接,其它VETP设备分别与主机(例如VMl以及VM2)相连接。
[0020]请参考图2,为本发明提供的VXLAN报文处理方法的处理流程示意图,该VXLAN报文处理方法可应用于VXLAN网络的本地VTEP设备(如图1所示组网中的VTEP设备),该VXLAN报文处理方法包括以下步骤:
[0021]步骤201,若本地VTEP设备为SPOKE设备,确定本地VTEP设备所在实例中是否存在作为HUB设备的VTEP设备。
[0022]实际应用中,通过VXLAN 网络中运行的 ENDP(Enhanced Neighbor DiscoveryProtocol,增强的邻居发现协议)可以将VXLAN网络划分出不同的多个实例?;箍梢越皇道械乃械?VTEP 设备配置为一个 ENDS (Enhanced Neighbor Discovery Server,增强的邻居发现服务器),以及多个ENDC(Enhanced Neighbor Discovery Client,增强的邻居发现客户端)。
[0023]ENDS可以作为信息收集设备来收集VXLAN网络中同一实例的所有VTEP设备的设备信息,以发现同一个实例中所有的VTEP设备,并向同一实例中的所有作为ENDC的VTEP设备通过本实例中所有VTEP设备的设备信息,以使各VTEP设备之间自动创建VXLAN隧道。
[0024]本发明中的设备信息可以包括VTEP标识、实例ID以及地址信息。
[0025]其中,可以通过该实例ID确定出与本地VTEP设备位于同一实例的其他VTEP设备。即,在为VXLAN网络划分出不同的多个实例后,具有一致的实例ID的VTEP设备则是位于同一实例的其他VTEP设备。
[0026]另外,本发明VXLAN网络中的VTEP设备还可以被配置为HUB-SP0KE架构中的HUB设备或者SPOKE设备。
[0027]通常情况下,为了简化操作流程,可以将作为ENDS的VTEP设备设置为HUB设备,这样一来,在作为ENDS的VTEP设备接收到作为ENDC的VTEP设备发送的用于获取其他VTEP设备的设备信息的注册请求报文时,即可根据自身保存的各VTEP的设备信息生成注册回应报文回复至作为ENDC的VTEP设备,同时通过注册回应报文告知ENDC作为ENDS的VTEP设备为HUB设备。
[0028]相应的,确定本地VTEP设备所在实例中是否存在作为HUB设备的VTEP设备可以具体为:
[0029]当本地VTEP设备为ENDC,且被配置为SPOKE设备时,向作为ENDS的VTEP设备发送具有自身设备信息的注册请求报文后,可以接收到作为ENDS的VTEP设备回复的注册回应报文。
[0030]进而,本地VTEP设备还可以根据作为ENDS的VTEP设备回复的注册回应报文,判断该本地VTEP设备所在实例中作为信息收集设备(ENDS)的VTEP设备是否为HUB设备。
[0031]具体地,若作为ENDS的VTEP设备被设置为HUB设备,则在注册回应报文中添加HUB设备标识。例如,本发明中可以将注册回应报文中的指定字段设置为“ I”时,表示该注册回应报文携带HUB设备标识。在本地VTEP设备接收到作为ENDS的VTEP设备回复的注册回应报文时,若注册回应报文携带HUB设备标识,则可以确定作为ENDS的VTEP设备为HUB设备。
[0032]然而,若注册回应报文未携带HUB设备标识,则确定作为ENDS的VTEP设备不是HUB设备,那么结束本流程。
[0033]步骤202,若本地VTEP设备所在实例中存在作为HUB设备的VTEP设备,在接收到主机发送的数据报文后,将该数据报文封装为VXLAN报文发送至作为HUB设备的VTEP设备,以使作为HUB设备的VTEP设备将该VXLAN报文进行解封装后得到数据报文,并将数据报文发送至管理服务器进行处理。
[0034]其中,本发明中作为HUB设备的VTEP设备与管理服务器连接。
[0035]在同一实例中的各个作为SPOKE的VTEP设备接收到主机发送的数据报文,都可以将该数据报文发送至作为HUB设备的VTEP设备,由作为HUB设备的VTEP设备将该数据报文发送至管理服务器进行统一管理,例如,将数据报文发送给管理服务器进行计费、流量统计或者其他应用处理等。
[0036]在一个例子中,在作为SPOKE的本地VTEP设备接收到与自身连接的主机发送的数据报文后,学习该数据报文的源地址信息,并将该数据报文的源地址信息以及接收数据报文的端口的端口信息保存至本地转发表项中。其中,该源地址信息可以是发送数据报文的主机的MAC地址。
[0037]并且,本地VTEP设备将该数据报文封装为VXLAN报文后,通过本地VTEP设备到HUB设备之间的隧道将VXLAN报文发送至作为HUB设备的VTEP设备,由作为HUB设备的VTEP设备将VXLAN报文进行解封装后得到数据报文,并发送至与该作为HUB设备的VTEP设备连接的管理服务器进行统一管理。
[0038]在管理服务器对该数据报文进行处理后,还可以将该数据报文发送至作为HUB设备的VTEP设备,由作为HUB设备的VTEP设备再将该数据报文封装为VXLAN报文后进行转发。
[0039]在一个例子中,若作为SPOKE设备的本地VTEP设备在接收到作为HUB设备的VTEP设备发送的VXLAN报文,将该VXLAN报文进行解封装后得到数据报文,并确定自身的本地转发表项中是否有与该数据报文的目的地址对应的端口信息,若有,根据该目的地址对应的端口信息将该数据报文转发至对应的主机,否则,将该数据报文发送至与该本地VTEP设备连接的所有主机。
[0040]为了防止之前学习的主机的源地址信息频繁的在私网端口以及公网端口之间来回迀移,此时,作为SPOKE设备的各个VTEP设备并不会学习从作为HUB设备的VTEP设备接收的数据报文的源地址信息。
[0041]在本发明的一个实施例中,本地VTEP设备还可以是HUB设备,在作为HUB设备的本地VTEP设备接收到作为SPOKE设备的VTEP设备发送的VXLAN报文后,对该VXLAN报文进行解封装后得到数据报文,学习该数据报文的源地址信息,将该数据报文的源地址信息与接收该VXLAN报文的端口的端口信息保存至本地转发表项中,并将得到的数据报文发送至管理服务器进行处理。
[0042]在作为HUB设备的本地VTEP设备接收到管理服务器发送的数据报文时,可以说明该数据报文是经管理服务器处理后的数据报文。为了防止之前学习到的主机的源地址信息频繁的在与管理服务器连接的端口以及公网端口之间来回迀移,此时,作为HUB设备的本地VTEP设备并不会学习从管理服务器接收的数据报文的源地址信息。
[0043]之后,作为H
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1
imtoken助记词怎么填-imtoken钱包没有收益-imtoken矿工费太贵了-im钱包官网:token.im