数据中心网络中的报文转发方法及装置的制造方法

文档序号:8285109阅读:324来源:国知局
数据中心网络中的报文转发方法及装置的制造方法
【技术领域】
[0001] 本申请涉及网络通信技术领域,特别涉及一种数据中心网络中的报文转发方法及 装直。
【背景技术】
[0002] VXLAN(VirtualextensibleLocalAreaNetwork,虚拟扩展局域网)是一种在 UDP(UserDataProtocol,用户数据报协议)中封装MAC(MediaAccessControl,媒体 访问控制)的简单机制,可以创建跨多个物理IP(InternetProtocol,因特网协议)子网 的虚拟二层子网。VXLAN可以通过一个24比特的租户ID(S卩,VXLANID或VXLAN网络ID (VXLANNetworkIdentifierorVXLANSegmentID,VNI)),在一个数据中心内部署百万个 虚拟网。而且,VXLAN报文的格式很容易在硬件中实现,所以将来VXLAN也许可以更紧密地 与物理网络设备集成。
[0003] 如图1所示,VXLAN报文是在以太帧的前面又封装一个VXLAN头,其中,VXLAN头 是VXLAN报文的外层报头,VXLAN头开销50字节,以太帧的以太头是内层报头。VXLAN头中 包括:外层MACDA(DestinationAddress,目的地址)、外层MACSA(SourceAddress,源 地址)、外层802. 1Q、外层IPDA、外层IPSA和VNI;以太帧中包括:内层MACDA、内层MAC SA、内层 802.IQ和CRC(CyclicRedundancyCheck)。
[0004] 以如图2所示的数据中心网络为例,简要说明VXLAN的基础应用原理。
[0005] 如图2所示,vSwitch(虚拟交换机)启用VXLAN功能,作为VTEP(VXLANTunnel EndPoint,VXLAN隧道的起点/终点)。
[0006] (I)MAC地址学习
[0007] 作为VTEP的vSwitch的MAC地址学习与二层交换机相似。VTEP接收到本设备直连 的VM(为了描述方便,称为源VM(虚拟机))发出的ARP(AddressResolutionProtocol,地 址解析协议)请求之后,根据源VM上的虚拟网卡vNIC对应的VNI,对该ARP请求进行VXLAN 封装得到VXLAN报文并发送给直连的物理交换机,由该物理交换机通过IP网络转发给其他 vSwitch,其中,该VXLAN报文的外层MACDA和外层IPDA分别是该VNI对应的组播组的 MAC地址和IP地址。从而,将该ARP请求转发给了对应VXLAN内的所有VM。
[0008] 其他vSwitch接收到该VXLAN报文之后,解封装得到其中的VXLAN头和ARP请求, 将该ARP请求广播给该VXLAN头中的VNI内的所有VM(为了描述方便,称为目的VM)。目 的VM接收到该ARP请求之后,返回ARP响应,通过以上方法最终单播给源VM。在此过程中, VTEP解封装得到ARP响应后,会学习该ARP响应的源MAC地址和源IP地址。
[0009] (2)单播报文转发
[0010] 源VTEP接收到VM发来的单播报文之后,根据该单播报文的目的MAC地址查找对 应的IP地址,查找到的IP地址即为该单播报文的目的IP地址;然后,根据该目的IP地址、 源IP地址和对应的VNI,对该单播报文进行VXLAN封装得到VXLAN报文,之后发送给直连 的物理交换机,由该物理交换机通过IP网络发送给目的VTEP。其中,IP网络中的网络设备 (例如,交换机、路由器)会根据路由转发该VXLAN报文给目的VTEP。
[0011] 目的VTEP解封装该VXLAN报文得到其中的单播报文后,根据该单播报文的目的 MAC地址,将该单播报文转发给目的VM。
[0012] 由上可见,现有技术中vSwitch作为VTEP,执行VXLAN报文的封装/解封装和转发 处理,但是,vSwitch是由软件实现的,其转发性能较低。

【发明内容】

[0013] 本申请提供了一种数据中心网络中的报文转发方法及装置,以解决现有技术中存 在的vSwitch作为VTEP,转发性能较低的问题。
[0014] 本申请的技术方案如下:
[0015] 一方面,提供了一种数据中心网络中的报文转发方法,该数据中心网络中包括:至 少一个服务器,服务器上设置有VSwitch和VM,VM通过vSwitch连接至服务器外部的物理 交换机,该方法应用于物理交换机,该方法包括:
[0016] 针对直连服务器中的每一个VM,获取该VM的VNIC的相关信息,将获取到的相关 信息与本地虚拟端口关联,其中,该相关信息包括:该vNIC的MAC地址、该vNIC所在VXLAN 的VNI、以及该vNIC所在VXLAN关联的VLAN的VLANID;
[0017] 在接收到直连服务器发来的以太报文之后,根据以太报文中的源MC地址和VLAN ID,查找到对应的VNI;
[0018] 根据查找到的VNI,对以太报文进行VXLAN封装得到VXLAN报文并转发出去。
[0019] 另一方面,还提供了一种数据中心网络中的报文转发装置,该数据中心网络中包 括:至少一个服务器,服务器上设置有vSwitch和VM,VM通过vSwitch连接至服务器外部的 物理交换机,该装置应用于物理交换机,该装置包括:
[0020] 处理模块,用于针对本物理交换机的直连服务器中的每一个VM,获取该VM的vNIC 的相关信息,将获取到的相关信息与本地虚拟端口关联,其中,该相关信息包括:该vNIC的 MAC地址、该vNIC所在VXLAN的VNI、以及该vNIC所在VXLAN关联的VLAN的VLANID;
[0021] 接收模块,用于接收直连服务器发来的以太报文;
[0022] 查找模块,用于在接收模块接收到直连服务器发来的以太报文之后,根据以太报 文中的源MAC地址和VLANID,查找到对应的VNI;
[0023] 封装解封装模块,用于根据查找模块查找到的VNI,对接收模块接收到的以太报文 进行VXLAN封装得到VXLAN报文;
[0024] 发送模块,用于将封装解封装模块封装得到的VXLAN报文转发出去。
[0025] 通过本申请的技术方案,物理交换机获取直连的服务器中的每一个VM的虚拟网 卡的相关信息,并将获取到的相关信息与本地虚拟端口关联,后续,当接收到直连服务器发 来的以太报文后,就可以根据该以太报文中的源MAC地址和VLAN,识别出对应的本地虚拟 端口,以及查找到对应的VNI,最后,根据该VNI对该以太报文进行VXLAN封装,从而将VLAN 数据流映射入VXLAN内做转发。本方案中,在物理交换机上启动例如VXLAN的overlay技 术,物理交换机作为VPET,由于物理交换机是硬件转发,性能要高于软件的vSwitch。而且, VXLAN数据流仅在物理交换机上可见,物理交换机和服务器之间仍然运行VLAN数据流;在 业务层面上,用户仅看到VXLAN,根据VXLAN划分租户,对VLAN不可见;VLAN作为局部业务 划分手段,VLAN标签是系统自动分配,对最终用户不可见。
【附图说明】
[0026] 图1是VXLAN报文的报文格式示意图;
[0027] 图2是数据中心网络的架构示意图;
[0028] 图3是本申请实施例一的数据中心网络以及VM管理中心和网络管理服务器组成 的网络不意图;
[0029] 图4是本申请实施例一的数据中心网络中的报文转发方法的流程图;
[0030] 图5是本申请实施例一的VDP报文中的TLV的格式示意图;
[0031] 图6是图5中的FilterFormat域的取值为0x03时,FilterInfo域的格式示意 图;
[0032] 图7是图5中的FilterFormat域的取值为0x04时,FilterInfo域的格式示意 图;
[0033] 图8是本申请实施例一的获取vNIC的相关/[目息的方法二的流程图;
[0034] 图9是本申请实施例一的获取vNIC的相关信息的方法四的流程图;
[0035] 图10是本申请实施例二的数据中心网络中的报文转发装置的结构示意图;
[0036] 图11是本申请实施例三的数据中心网络中的报文转发装置的硬件结构示意图。
【具体实施方式】
[0037] 为了解决现有技术中存在的vSwitch作为VTEP,转发性能较低的问题,以下实施 例中提供了一种数据中心网络中的报文转发方法,以及一种可以应用该方法的装置。
[0038] 本申请以下实施例中,如图3所示,数据中心网络中包括:至少一个物理服务器, 服务器上设置有vSwitch和VM,VM通过vSwitch连接至服务器外部的物理交换机。物理 交换机上启用Overlay(二层报文承载于三层网络)功能,Overlay例如可以是:VXLAN和 NVGRE(GenericRoutingEncapsulation,通用路由封装)等。
[0039] 以下实施例中,以物理交换机上启用VXLAN功能为例进行说明,此时,物理交换 机作为VTEP。VM上连接vSwitch的虚拟网卡(vNIC)也可以称为VSI(VirtualStation Interface,虚拟站接口)。
[0040] 实施例一
[0041] 本申请实施例中的报文转发方法由如图3所示的数据中心网络中的物理交换机 来执行。如图4所示,该方法包括以下步骤:
[0042] 步骤S102,针对直连服务器中的每一个VM,获取该VM的vNIC的相关信息,将获取 到的相关信息与本地虚拟端口关联;
[0043] 其中,该相关信息包括:该vNIC的MAC地址、该vNIC所在VXLAN的VNI、以及该 vNIC所在VXLAN关联的VLAN(虚拟局域网)的VLANID。
[0044] 在实际实施过程中,获取vNIC的相关信息的方法可以有多种,本实施例中例举了 以下四种方法进行说明。
[0045]方法一:
[0046] 该方法一中包括以下步骤:
[0047] 步骤S202,物理交换机预先创建VXLAN,指定该VXLAN对应的VNI;
[0048] 步骤S204,网络管理服务器对VM的业务类型进行分组,分组得到的每一个业务类 型组对应一个端口策略;为每一个端口策略分配一个vNIC类别,每一个vNIC类别具有一个 vNIC类别号(VTID)和一个版本号;将上述对应关系保存在网络管理服务器中的VTDB数据 库中,即,将业务类型组、端口策略与vNIC类别之间的对应关系保存到VTDB数据库中;
[0049] 其中,VM的业务类型例如:Webserver(网页服务器)、db(database,数据库)、 e-mail(电子邮件)等。
[0050] 端口策略中可以包括限速、允许数据流通过的VLAN等端口行为。
[0051] 步骤S206,VM管理中心(VMManager,也可称为VM管理装置)通过与网络管理服 务器进行通信,在VTDB数据库中查询可用的vNIC类别,将VM的vNIC与查询到的vNIC类 别关联,同时指定该vNIC所在的租户,S卩,指定该vNIC所在VXLAN;<
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1