CN105656796B - 实现虚拟扩展局域网三层转发的方法和装置 - Google Patents
实现虚拟扩展局域网三层转发的方法和装置 Download PDFInfo
- Publication number
- CN105656796B CN105656796B CN201410690750.6A CN201410690750A CN105656796B CN 105656796 B CN105656796 B CN 105656796B CN 201410690750 A CN201410690750 A CN 201410690750A CN 105656796 B CN105656796 B CN 105656796B
- Authority
- CN
- China
- Prior art keywords
- gateway
- vxlan
- message
- vtep
- destination node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000005538 encapsulation Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 description 8
- 230000006855 networking Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000686 essence Substances 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005191 phase separation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L2012/4629—LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种实现VXLAN三层转发的方法,应用在SDN控制器上,所述方法包括:接收VTEP上送的需要进行三层转发的报文;确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。通过本申请的技术方案,实现源节点三层流量的动态分配和负载分担,提高了网络性能。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种实现VXLAN(Virtual eXtensibleLocal Area Network,虚拟扩展局域网)三层转发的方法和装置。
背景技术
云计算已经成为当前企业信息技术建设的常规形态,而在云计算中大量采用和部署的虚拟化几乎成为一个基本的技术模式。SDN(Software Defined Networking,软件定义网络)是当前盛行的一种虚拟化解决方案,其核心理念是将网络的控制平面和转发平面相分离,把网络的控制平面,如所有转发行为的决策都迁移到集中式的控制器(Controller)上,转发设备采用控制器下发的流表进行转发。
SDN总体上有三种类型的实现方案:基于专用接口的方案、基于Overlay(叠加)网络的方案和基于开放协议的方案。其中,Overlay指的是一种网络架构上叠加的虚拟化技术模式,采用将一个报文(或数据帧)封装在另一个报文内的方式,来实现网络的虚拟化。
VXLAN是目前获得较多支持的Overlay协议,VXLAN网络成为构建大二层的数据中心的一种选择。鉴于数据中心往往承担着重要的业务功能,数据流量大,VXLAN网络的性能成为影响业务的关键因素。
发明内容
有鉴于此,本申请提供一种实现VXLAN三层转发的方法,应用在SDN控制器上,所述方法包括:
接收VXLAN隧道终点VTEP上送的需要进行三层转发的报文;
确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
本申请还提供了一种实现VXLAN三层转发的装置,应用在SDN控制器上,所述装置包括:
上送报文接收单元,用于接收VTEP上送的需要进行三层转发的报文;
转发网关确定单元,用于确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
流表下发单元,用于向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
由以上技术方案可见,本申请的实施例中将网络中到目的节点可达的一个到多个VXLAN网关作为转发网关来进行三层转发,实现了源节点三层流量的动态分配,避免了流量固定在某个VXLAN网关上造成的拥堵,提高了网络性能。
附图说明
图1是一个例子中一种VXLAN网络的组网结构图;
图2是一个例子中SDN控制器所在设备的硬件架构示意图;
图3是一个例子中一种实现VXLAN三层转发的方法的流程图;
图4是一个例子中图1所示的VXLAN网络中两个转发网关形成两条转发路径的示意图;
图5是一个例子中一种实现VXLAN三层转发的装置的逻辑结构图。
具体实施方式
图1所示是一种VXLAN网络可能具有的组网结构,交换机120连接VTEP(VXLANTunnel End Point,VXLAN隧道端点)131和VTEP 132,VXLAN网关161连接交换机120,VXLAN网关162连接VTEP 132。服务器141连接VTEP 131和VTEP 132,服务器142连接VTEP 132,非VXLAN网络中的路由器180与VXLAN网关161和162连接,非VXLAN网络中的主机190连接到路由器180。其中,VTEP 132运行在一台交换机上。
服务器141上运行VM(Virtual Machine,虚拟机)1、VM2和vSwitch(VirtualSwitch,虚拟交换机)151,VTEP 131作为VM1和VM2的接入设备,通过vSwitch 151将VM1和VM2连接到VXLAN网络;服务器142上运行VM3和VM4,VTEP 132作为VM3和VM4的接入设备,将VM3和VM4连接到VXLAN网络。VM1和VM2接入VXLAN 10,VM3和VM4接入VXLAN 20。接入同一个VXLAN的VM属于同一个逻辑二层网络,彼此之间二层互通;接入不同VXLAN的VM之间二层转发相互隔离,彼此间的通信需要进行三层转发。SDN控制器110与上述各个设备间分别建立安全通道,通过安全通道与各个设备进行消息交互,实现流表表项下发、查询以及状态上报等功能。需要说明的是,图1中仅示出SDN控制器110与交换机120的连接关系,SDN控制器110与其他设备的连接关系未示出。
以VM1向主机190第一次发送报文为例,在VM1上,通过比较主机190的IP地址和本地配置的子网掩码,得知到主机190的报文需要经过三层转发,则发送给主机190的报文的目的IP地址为主机190的IP地址IP-190、目的MAC(Media Access Control,媒体接入控制)地址为本地配置的缺省网关(设VM1上配置的缺省网关为VXLAN网关161)的MAC地址MAC-161。VM1发送的报文经过vSwitch 151后到达VTEP 131。
VTEP 131在本地的流表中未发现与VM1发送给主机190的报文匹配的流表,将该报文上送到SDN控制器110。
SDN控制器110上保存有其管理域内各个VM、vSwitch、VXLAN网关、以及其他被管理设备的信息,如VM的IP地址、MAC地址、所连接的vSwitch、所在的VXLAN等信息,VXLAN网关的VTEP IP地址、所在的各个VXLAN、与非VXLAN网络的路由信息等。根据这些信息,SDN控制器110得知VM1属于VXLAN 10,其缺省网关的VTEP IP为IP-161,向VTEP 131下发流表,令VTEP131对该报文进行VXLAN封装,封装的外层目的IP地址为IP-161,VNI(VXLAN NetworkIdentifier,VXLAN网络标识符)为10,并发送到下一跳交换机120。
VTEP 131根据下发的流表将该报文封装为VXLAN报文后,从连接交换机120的端口发送。封装后的VXLAN报文到达VXLAN网关161后,VXLAN网关161解封装后得到原始报文,由于该报文的目的节点主机190在非VXLAN网络中,按照到主机190的路由转发该报文。经过路由器180后,该报文到达目的节点主机190。
从上述过程可知,在已有的技术方案中,SDN控制器按照源节点本地配置的缺省网关向VTEP下发流表,将该源节点需要进行三层转发的报文发往缺省网关,由缺省网关做三层路由转发。在大二层网络中,通常保持虚拟机的网络配置不变,这样,配置了同一个缺省网关的若干个虚拟机上三层流量都要通过这个固定的VXLAN网关转发,当这些虚拟机的三层流量大时很容易造成该VXLAN网关的拥塞,严重的降低了网络性能。
在本申请的一个例子中,运行在SDN控制器上的VXLAN三层转发控制逻辑能够将三层流量动态分配到至少一个VXLAN网关上,从而避免三层流量集中在某个VXLAN网关上。请参考图2,SDN控制器所在的设备20可以包括处理器210、存储器220以及网络接口230,这些硬件通过内部总线240相互连接。处理器210在存储器220中运行VXLAN三层转发控制逻辑,其运行流程如图3所示。
步骤310,接收VTEP上送的需要进行三层转发的报文。
本例中,需要进行三层转发的报文包括目的节点与源节点在不同VXLAN内,即在两个VXLAN之间三层转发的报文;也包括目的节点在非VXLAN网络内的报文,如从VXLAN网络转发到普通三层物理网络的报文。
当VTEP收到源节点发送的报文,并且在本地的流表中未找到与该报文匹配的表项时,将该报文上送的SDN控制器。
步骤320,确定至少一个与上送报文的源节点在同一个VXLAN内、并且与上送报文的目的节点流量可达的VXLAN网关作为转发网关。
如前所述,SDN控制器上维护着其管理域内所有被管理设备的信息,包括被管理设备本身的地址、VXLAN等配置信息,也包括被管理设备的连接链路、路由等信息。根据这些信息,SDN控制器可以得知哪些VXLAN网关是与上送的报文的源节点在同一个VXLAN内,且与上送的报文的目的节点流量可达的VXLAN网关,并从中选择至少一个VXLAN网关作为转发网关。
对在两个VXLAN之间的三层转发,如果源节点所在VXLAN中的VXLAN网关能够把报文传输到将目的节点接入其所在VXLAN的VTEP,则该VXLAN网关与目的节点流量可达;对目的节点在非VXLAN网络内的三层转发,源节点所在VXLAN中的VXLAN网关与目的节点路由可达,即是该VXLAN网关与目的节点流量可达。
SDN控制器可以在每次收到上送的需要三层转发的报文时,根据其维护的管理域内被管理设备的信息来查找与上送的报文的源节点在同一个VXLAN内,且与上送的报文的目的节点流量可达的VXLAN网关,并从中选择至少一个VXLAN网关作为转发网关;也可以保存目的节点与流量可达的VXLAN网关的对应关系,通过查找保存的对应关系来获得与上送的报文的目的节点流量可达的VXLAN网关,并从中选择至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
一个例子中,在SDN控制器上保存可用网关表,其表项包括目的节点、与目的节点流量可达的VXLAN网关,此外还可以包括VXLAN网关的VTEPIP地址、所在的VXLAN等。这些表项可以由SDN控制器根据其维护的管理域信息自动生成。当SDN控制器收到VTEP上传的需要三层转发的报文时,可以在可用网关表中查找与报文的目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
SDN控制器可以根据保存的管理域信息生成包括所有可达的目的节点的可用网关表,并且在网路拓扑发生变化时自动更新可用网关表的表项。这样,在每次收到VTEP上送的需要三层转发的报文时,查找可用网关表即可得到所有与上送的报文的目的节点流量可达的VXLAN网关。
SDN控制器可以在收到VTEP上送的需要三层转发的报文时,先在可用网关表中查找包括目的节点的表项,如果找到则根据这些表项得到所有与上送的报文的目的节点流量可达的VXLAN网关;否则按照保存的管理域信息找到与上送的报文的目的节点流量可达的VXLAN网关,并且生成表项保存在可用网关表中。可以对可用网关表的表项启用老化机制,以及时反映网络状态变化并且避免表的规模过大。
SDN控制器可以将所有与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关都作为转发网关,也可以在其中选择一个至多个作为转发网关。在一个例子中,SDN控制器获取与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关的运行状态信息;根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。根据VXLAN网络的具体组网构成,SDN控制器可以直接从与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关得到其运行状态信息,也可以从网络管理服务器或者运行网络管理功能的逻辑模块获得与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关的运行状态信息。运行状态信息可以包括是否正常运行、报文流量、硬件设备使用率等中的一个到多个。根据这些所获取的运行状态信息,SDN控制器可以按照多种设定条件来选择转发网关,例如,如果与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关超过2个,则将使用率最低的两个与报文的源节点在同一个VXLAN内且与上送的报文的目的节点流量可达的VXLAN网关作为转发网关。
步骤330,向上送报文的VTEP下发至少一条流表,每条流表对应至少一个转发网关,每条流表用于:指示该VTEP将从上送报文的源节点发往目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
SDN控制器在为VTEP上送的报文确定转发网关后,向VTEP下发至少一条流表,每条流表对应于至少一个转发网关,用来指令VTEP将由该报文的源节点发往目的节点的报文,发送给该流表对应的一个转发网关,由该流表对应的这个转发网关来进行三层转发。
当转发网关超过1个时,SDN控制器可以向VTEP下发一条流表,指定这些转发网关中的一个到多个,也可以向VTEP下发多条流表,在各条流表中指定不同的转发网关。
在一个例子中,当转发网关不少于2个时,SDN控制器向上送报文的VTEP下发至少两条流表,每条流表对应至少一个转发网关,各条流表所对应的转发网关不同;每条流表用于指示VTEP将从该报文的源节点发送给目的节点的报文,发送给该流表对应的一个转发网关进行三层转发。例如,SDN控制器对每一个转发网关,向VTEP下发一条流表,指示VTEP将由该报文的源节点发往目的节点的报文,发送给这个转发网关来进行三层转发。
VTEP接收流表并保存在本地后,由该上送报文的源节点发往目的节点的报文将匹配至少一条流表表项。当匹配的表项超过一条时,换言之,当SDN控制器下发的流表中匹配该报文的表项超过一条时,根据现有的方式,VTEP将这些匹配的表项作为等价路由的多条路径,将多个报文分别采用不同的匹配表项进行处理和转发;可以通过在VTEP本地使能等价路由来实现上述功能,也可以由网络管理服务器或者SDN控制器对VTEP进行远程设置。这样,从源节点发往目的节点的若干个报文将分配到不同的转发网关,从而在转发网关之间实现负载分担。
SDN控制器向VTEP下发的每条流表,具体而言,该流表用于指示VTEP:对从上送报文的源节点发往目的节点的报文,将报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以该对应的一个转发网关的VTEP IP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至该对应的一个转发网关。
VXLAN采用将以太网报文封装在UDP传输层上的隧道转发模式,是全连接组网。也就是说,一个VXLAN的所有边缘设备(包括VTEP和VXLAN网关)之间通过点到点的逻辑隧道互连,其中,VXLAN网关以其VTEP IP地址与VTEP建立逻辑隧道。封装后的VXLAN报文由源端的边缘设备经过逻辑隧道发送给目的端的边缘设备,在一些应用中,源端的边缘设备通过VXLAN报文中的VNI、内层目的MAC地址(封装前原始报文内的目的MAC地址)、外层目的IP地址(封装在原始报文外的目的IP地址)来确定要发送给哪个目的端边缘设备。对本例中需要进行三层转发的VXLAN报文而言,其内层目的MAC地址是转发网关的MAC地址、外层目的IP地址是转发网关的VTEP IP地址,才能通过逻辑隧道到达转发网关。
如前所述,源节点发出的需要三层转发的报文,其目的MAC地址是源节点本地配置的缺省网关的MAC地址。而在本例中,转发网关不一定是源节点上配置的缺省网关。因此,在这些应用中,SDN控制器在下发的流表用于指示VTEP将报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以该对应的一个转发网关的VTEP IP地址作为外层目的IP地址将报文进行VXLAN封装,从而使封装后的VXLAN报文经由VTEP与转发网关之间的逻辑隧道到达转发网关。
本例中,在与报文的源节点在同一个VXLAN内且与报文的目的节点流量可达的VXLAN网关中选择一个到多个转发网关来进行三层转发,使得源节点的三层流量不必固定的从其缺省网关上经过,实现了源节点流量的动态分配,提高了网络性能;当下发的流表超过1条时,还实现了源节点流量的负载分担,进一步避免了流量集中在某个VXLAN网关上。此外,SDN控制器可以根据运行状态信息选择转发网关,从而能够将流量从负荷重的VXLAN网关动态的导向负荷轻的VXLAN网关,进一步提高了网络的性能。
本申请的另一个例子中,在SDN控制器上维护可用网关表,在收到VTEP上传的需要三层转发的报文后,将可用网关表中报文的目的节点的对应的网关确定为与报文的目的节点流量可达的VXLAN网关,再将与报文的目的节点流量可达的VXLAN网关中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关,来下发流表。
仍以图1所示的网络为例,SDN控制器110上的可用网关表中包括如表1所示的表项:
表1
表1中,目的IP地址为报文目的节点的IP地址。
当VM1第一次向VM3发送报文时,设VM1本地配置的缺省网关为VXLAN网关161,则报文的源MAC地址为MAC-VM1、源IP地址为IP-VM1、目的MAC地址为MAC-161、目的IP地址为IP-VM3。
VM1发送的报文到达VTEP 131。VTEP 131在本地的流表中未发现与VM1发送给VM3的报文匹配的流表,将该报文上送到SDN控制器110。
SDN控制器110提取该报文中的目的IP地址IP-VM3,在可用网关表中查找到与IP-VM3流量可达的VXLAN网关为VXLAN网关161和VXLAN网关162,由于这两个VXLAN网关都属于源节点VM1所在的VXLAN 10,则将这两个VXLAN网关作为转发网关,生成两条流表下发给VTEP 131,每条流表对应于一个转发网关:
对应于VXLAN网关161的流表指示VTEP 131把源IP地址为IP-VM1、目的IP地址为IP-VM3的报文中的目的MAC地址替换为MAC-161,以10为VNI、以IP-161为外层目的IP地址、以MAC-120为外层目的MAC地址将该报文封装为VXLAN报文后从到VXLAN网关161的逻辑隧道发送。其中,MAC-120为VXLAN报文下一跳节点,即连接VTEP 131的交换机120的MAC地址。
对应于VXLAN网关162的流表指示VTEP 131把源IP地址为IP-VM1、目的IP地址为IP-VM3的报文中的目的MAC地址替换为MAC-162,以10为VNI、以IP-162为外层目的IP地址、以MAC-120为外层目的MAC地址将该报文封装为VXLAN报文后从到VXLAN网关162的逻辑隧道发送。其中,MAC-120为VXLAN报文下一跳节点的MAC地址。
VTEP 131收到SDN控制器下发的上述两条流表,保存在本地。对VM1发送给VM3的报文,由于与该报文匹配的流表有两条,VTEP 131将这两条流表作为等价路由的两条路径轮流使用,对每个报文采用其中的一条流表来处理和转发。这样,VM1发送给VM3的多条报文将分散在两个转发网关上进行三层转发,形成的两条转发路径如图4所示。
设某个报文采用对应于VXLAN网关162的流表,VTEP 131根据对应于VXLAN网关162的流表对VM1发送的报文进行目的MAC更改和封装后,将VXLAN报文发送。
封装后报文到达VM3的过程与现有技术相同,具体而言,其过程包括:VTEP 131根据该VXLAN报文的VNI、内层目的MAC地址(MAC-162)、外层目的IP地址(IP-162),将该VXLAN报文通过VTEP 131与VXLAN网关162之间的隧道发送到VXLAN网关162。VXLAN网关162收到该VXLAN报文,解封装得到原始的报文,由于目的节点VM3在VXLAN 20中,再将该报文进行VXLAN封装后从VXLAN 20的隧道发送到VTEP 132,由VTEP 132解封装后转发给VM3。
对从VXLAN网络发送给非VXLAN网络的报文,该报文在到达转发网关之前在各个节点上的处理过程与上述过程类似,到达转发网关的处理过程与现有技术相同,不再赘述。
与上述流程实现对应,本申请还提供了实现VXLAN三层转发的装置,应用在SDN控制器上,该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,可以通过图2中的处理器210在存储器220中运行VXLAN三层转发控制逻辑而形成。
图5所示为本申请一个例子中的一种实现VXLAN三层转发的装置,位于SDN控制器上,从功能上划分,包括上送报文接收单元510、转发网关确定单元520和流表下发单元530,其中:上送报文接收单元510用于接收VTEP上送的需要进行三层转发的报文;转发网关确定单元520用于确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;流表下发单元530用于向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
所述每条流表可以具体用于:指示所述VTEP将从所述源节点发往所述目的节点的报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以所述对应的一个转发网关的VTEP IP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
一个例子中,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;这个例子中,所述转发网关确定单元520具体用于:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
所述转发网关确定单元520可以包括运行状态获取模块和转发网关选择模块,其中:运行状态获取模块用于获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;转发网关选择模块用于根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (8)
1.一种实现虚拟扩展局域网VXLAN三层转发的方法,应用在软件定义网络SDN控制器上,其特征在于,所述方法包括:
接收VXLAN隧道终点VTEP上送的需要进行三层转发的报文;
确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以所述对应的一个转发网关的VTEP IP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
2.根据权利要求1所述的方法,其特征在于,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;
所述确定至少一个与报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关,包括:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
3.根据权利要求1或2所述的方法,其特征在于,所述确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关,包括:
获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;
根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
4.根据权利要求1所述的方法,其特征在于,所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
5.一种实现虚拟扩展局域网VXLAN三层转发的装置,应用在软件定义网络SDN控制器上,其特征在于,所述装置包括:
上送报文接收单元,用于接收VXLAN隧道终点VTEP上送的需要进行三层转发的报文;
转发网关确定单元,用于确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
流表下发单元,用于向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以所述对应的一个转发网关的VTEP IP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
6.根据权利要求5所述的装置,其特征在于,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;
所述转发网关确定单元具体用于:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
7.根据权利要求5或6所述的装置,其特征在于,所述转发网关确定单元包括:
运行状态获取模块,用于获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;
转发网关选择模块,用于根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
8.根据权利要求5所述的装置,其特征在于,所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410690750.6A CN105656796B (zh) | 2014-11-25 | 2014-11-25 | 实现虚拟扩展局域网三层转发的方法和装置 |
PCT/CN2015/095403 WO2016082739A1 (en) | 2014-11-25 | 2015-11-24 | Layer-3 forwarding in vxlan |
US15/529,783 US20170317850A1 (en) | 2014-11-25 | 2015-11-24 | Layer-3 Forwarding in VXLAN |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410690750.6A CN105656796B (zh) | 2014-11-25 | 2014-11-25 | 实现虚拟扩展局域网三层转发的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105656796A CN105656796A (zh) | 2016-06-08 |
CN105656796B true CN105656796B (zh) | 2019-01-22 |
Family
ID=56073610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410690750.6A Active CN105656796B (zh) | 2014-11-25 | 2014-11-25 | 实现虚拟扩展局域网三层转发的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170317850A1 (zh) |
CN (1) | CN105656796B (zh) |
WO (1) | WO2016082739A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107317832B (zh) * | 2016-04-27 | 2020-01-03 | 新华三技术有限公司 | 报文转发方法及装置 |
CN107332812B (zh) * | 2016-04-29 | 2020-07-07 | 新华三技术有限公司 | 网络访问控制的实现方法及装置 |
CN107770062A (zh) * | 2016-08-16 | 2018-03-06 | 北京金山云网络技术有限公司 | 一种数据包发送方法、装置及网络架构 |
CN107846358B (zh) * | 2016-09-19 | 2020-07-10 | 北京金山云网络技术有限公司 | 一种数据传输方法、装置及网络系统 |
KR102168047B1 (ko) | 2016-09-26 | 2020-10-20 | 난트 홀딩스 아이피, 엘엘씨 | 클라우드 네트워크들에서의 가상 회로들 |
CN108023801B (zh) * | 2016-10-31 | 2020-11-10 | 中国电信股份有限公司 | 异构网络的资源调度方法及系统 |
CN106850304B (zh) * | 2017-02-15 | 2020-02-04 | 苏州浪潮智能科技有限公司 | 一种基于sdn框架的网关组方法及系统 |
CN106992918B (zh) * | 2017-03-30 | 2019-12-06 | 杭州迪普科技股份有限公司 | 报文转发方法和装置 |
CN107547242B (zh) * | 2017-05-24 | 2019-11-12 | 新华三技术有限公司 | Vm配置信息的获取方法及装置 |
US10587507B2 (en) * | 2017-11-09 | 2020-03-10 | International Business Machines Corporation | Routing between software defined networks and physical networks |
CN108092890B (zh) * | 2017-12-26 | 2020-01-07 | 新华三技术有限公司 | 路由建立方法和装置 |
CN111669309B (zh) * | 2019-03-05 | 2022-02-11 | 华为技术有限公司 | 一种建立VxLAN的方法及无线控制器、交换机 |
US10992496B2 (en) | 2019-05-14 | 2021-04-27 | International Business Machines Corporation | Tuning TCP largesend parameter in VXLan cloud environments |
US11178041B1 (en) * | 2020-07-07 | 2021-11-16 | Juniper Networks, Inc. | Service chaining with physical network functions and virtualized network functions |
CN113114565B (zh) * | 2021-04-09 | 2023-05-12 | 北京汇钧科技有限公司 | 数据报文转发方法及装置、存储介质及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025643A (zh) * | 2010-12-30 | 2011-04-20 | 华为技术有限公司 | 一种流表查找方法和装置 |
CN102970227A (zh) * | 2012-11-12 | 2013-03-13 | 盛科网络(苏州)有限公司 | 在asic中实现vxlan报文转发的方法和装置 |
CN103546374A (zh) * | 2012-07-10 | 2014-01-29 | 杭州华三通信技术有限公司 | 一种边缘二层网络中转发报文的方法和装置 |
CN104115453A (zh) * | 2013-12-31 | 2014-10-22 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
CN104170331A (zh) * | 2012-04-09 | 2014-11-26 | 华为技术有限公司 | 用于vxlan的l3网关 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8561627B1 (en) * | 2008-09-26 | 2013-10-22 | Intermolecular, Inc. | Calibration of a chemical dispense system |
US8659118B2 (en) * | 2011-07-29 | 2014-02-25 | Infineon Technologies Ag | Semiconductor device comprising a fuse structure and a method for manufacturing such semiconductor device |
US9036639B2 (en) * | 2012-11-29 | 2015-05-19 | Futurewei Technologies, Inc. | System and method for VXLAN inter-domain communications |
-
2014
- 2014-11-25 CN CN201410690750.6A patent/CN105656796B/zh active Active
-
2015
- 2015-11-24 US US15/529,783 patent/US20170317850A1/en not_active Abandoned
- 2015-11-24 WO PCT/CN2015/095403 patent/WO2016082739A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025643A (zh) * | 2010-12-30 | 2011-04-20 | 华为技术有限公司 | 一种流表查找方法和装置 |
CN104170331A (zh) * | 2012-04-09 | 2014-11-26 | 华为技术有限公司 | 用于vxlan的l3网关 |
CN103546374A (zh) * | 2012-07-10 | 2014-01-29 | 杭州华三通信技术有限公司 | 一种边缘二层网络中转发报文的方法和装置 |
CN102970227A (zh) * | 2012-11-12 | 2013-03-13 | 盛科网络(苏州)有限公司 | 在asic中实现vxlan报文转发的方法和装置 |
CN104115453A (zh) * | 2013-12-31 | 2014-10-22 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105656796A (zh) | 2016-06-08 |
WO2016082739A1 (en) | 2016-06-02 |
US20170317850A1 (en) | 2017-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105656796B (zh) | 实现虚拟扩展局域网三层转发的方法和装置 | |
US11343152B2 (en) | Traffic management for smart network interface cards | |
US10749742B2 (en) | Managing virtual port channel switch peers from software-defined network controller | |
CN105763512B (zh) | Sdn虚拟化网络的通信方法和装置 | |
US10187302B2 (en) | Source address translation in overlay networks | |
US10320664B2 (en) | Cloud overlay for operations administration and management | |
EP3533189B1 (en) | Rule-based network identifier mapping | |
JP5991424B2 (ja) | パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム | |
US8755377B2 (en) | Facilitating operation of one or more virtual networks | |
EP2982097B1 (en) | Method and apparatus for exchanging ip packets among network layer 2 peers | |
CN104283756B (zh) | 一种实现分布式多租户虚拟网络的方法和装置 | |
CN105634770B (zh) | 部署虚拟扩展局域网的方法和装置 | |
EP3629529B1 (en) | Ingress ecmp in virtual distributed routing environment | |
CN106331206B (zh) | 域名管理方法及装置 | |
US20140233569A1 (en) | Distributed Gateway in Virtual Overlay Networks | |
US10848432B2 (en) | Switch fabric based load balancing | |
CN104350467A (zh) | 用于使用sdn的云安全性的弹性实行层 | |
CN105681198B (zh) | 一种业务链处理方法、设备及系统 | |
US20150249565A1 (en) | Communication system, virtual network management apparatus, virtual network management method and program | |
US20180088972A1 (en) | Controller, control method and program | |
US8995398B2 (en) | System and method for efficient L3 mobility in a wired/wireless network | |
CN109729012A (zh) | 一种单播报文传输方法和装置 | |
Abujoda et al. | SDN-based source routing for scalable service chaining in datacenters | |
CN112822104A (zh) | 一种数据报文的处理方法、设备、存储介质及系统 | |
US20160277251A1 (en) | Communication system, virtual network management apparatus, communication node, communication method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |