CN105656796A - 实现虚拟扩展局域网三层转发的方法和装置 - Google Patents

实现虚拟扩展局域网三层转发的方法和装置 Download PDF

Info

Publication number
CN105656796A
CN105656796A CN201410690750.6A CN201410690750A CN105656796A CN 105656796 A CN105656796 A CN 105656796A CN 201410690750 A CN201410690750 A CN 201410690750A CN 105656796 A CN105656796 A CN 105656796A
Authority
CN
China
Prior art keywords
gateway
vxlan
message
destination node
forwarding
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.)
Granted
Application number
CN201410690750.6A
Other languages
English (en)
Other versions
CN105656796B (zh
Inventor
黄李伟
王伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201410690750.6A priority Critical patent/CN105656796B/zh
Priority to PCT/CN2015/095403 priority patent/WO2016082739A1/en
Priority to US15/529,783 priority patent/US20170317850A1/en
Publication of CN105656796A publication Critical patent/CN105656796A/zh
Application granted granted Critical
Publication of CN105656796B publication Critical patent/CN105656796B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L2012/4629LAN 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(VirtualeXtensibleLocalAreaNetwork,虚拟扩展局域网)三层转发的方法和装置。
背景技术
云计算已经成为当前企业信息技术建设的常规形态,而在云计算中大量采用和部署的虚拟化几乎成为一个基本的技术模式。SDN(SoftwareDefinedNetworking,软件定义网络)是当前盛行的一种虚拟化解决方案,其核心理念是将网络的控制平面和转发平面相分离,把网络的控制平面,如所有转发行为的决策都迁移到集中式的控制器(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(VXLANTunnelEndPoint,VXLAN隧道端点)131和VTEP132,VXLAN网关161连接交换机120,VXLAN网关162连接VTEP132。服务器141连接VTEP131和VTEP132,服务器142连接VTEP132,非VXLAN网络中的路由器180与VXLAN网关161和162连接,非VXLAN网络中的主机190连接到路由器180。其中,VTEP132运行在一台交换机上。
服务器141上运行VM(VirtualMachine,虚拟机)1、VM2和vSwitch(VirtualSwitch,虚拟交换机)151,VTEP131作为VM1和VM2的接入设备,通过vSwitch151将VM1和VM2连接到VXLAN网络;服务器142上运行VM3和VM4,VTEP132作为VM3和VM4的接入设备,将VM3和VM4连接到VXLAN网络。VM1和VM2接入VXLAN10,VM3和VM4接入VXLAN20。接入同一个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(MediaAccessControl,媒体接入控制)地址为本地配置的缺省网关(设VM1上配置的缺省网关为VXLAN网关161)的MAC地址MAC-161。VM1发送的报文经过vSwitch151后到达VTEP131。
VTEP131在本地的流表中未发现与VM1发送给主机190的报文匹配的流表,将该报文上送到SDN控制器110。
SDN控制器110上保存有其管理域内各个VM、vSwitch、VXLAN网关、以及其他被管理设备的信息,如VM的IP地址、MAC地址、所连接的vSwitch、所在的VXLAN等信息,VXLAN网关的VTEPIP地址、所在的各个VXLAN、与非VXLAN网络的路由信息等。根据这些信息,SDN控制器110得知VM1属于VXLAN10,其缺省网关的VTEPIP为IP-161,向VTEP131下发流表,令VTEP131对该报文进行VXLAN封装,封装的外层目的IP地址为IP-161,VNI(VXLANNetworkIdentifier,VXLAN网络标识符)为10,并发送到下一跳交换机120。
VTEP131根据下发的流表将该报文封装为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地址,以该对应的一个转发网关的VTEPIP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至该对应的一个转发网关。
VXLAN采用将以太网报文封装在UDP传输层上的隧道转发模式,是全连接组网。也就是说,一个VXLAN的所有边缘设备(包括VTEP和VXLAN网关)之间通过点到点的逻辑隧道互连,其中,VXLAN网关以其VTEPIP地址与VTEP建立逻辑隧道。封装后的VXLAN报文由源端的边缘设备经过逻辑隧道发送给目的端的边缘设备,在一些应用中,源端的边缘设备通过VXLAN报文中的VNI、内层目的MAC地址(封装前原始报文内的目的MAC地址)、外层目的IP地址(封装在原始报文外的目的IP地址)来确定要发送给哪个目的端边缘设备。对本例中需要进行三层转发的VXLAN报文而言,其内层目的MAC地址是转发网关的MAC地址、外层目的IP地址是转发网关的VTEPIP地址,才能通过逻辑隧道到达转发网关。
如前所述,源节点发出的需要三层转发的报文,其目的MAC地址是源节点本地配置的缺省网关的MAC地址。而在本例中,转发网关不一定是源节点上配置的缺省网关。因此,在这些应用中,SDN控制器在下发的流表用于指示VTEP将报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以该对应的一个转发网关的VTEPIP地址作为外层目的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发送的报文到达VTEP131。VTEP131在本地的流表中未发现与VM1发送给VM3的报文匹配的流表,将该报文上送到SDN控制器110。
SDN控制器110提取该报文中的目的IP地址IP-VM3,在可用网关表中查找到与IP-VM3流量可达的VXLAN网关为VXLAN网关161和VXLAN网关162,由于这两个VXLAN网关都属于源节点VM1所在的VXLAN10,则将这两个VXLAN网关作为转发网关,生成两条流表下发给VTEP131,每条流表对应于一个转发网关:
对应于VXLAN网关161的流表指示VTEP131把源IP地址为IP-VM1、目的IP地址为IP-VM3的报文中的目的MAC地址替换为MAC-161,以10为VNI、以IP-161为外层目的IP地址、以MAC-120为外层目的MAC地址将该报文封装为VXLAN报文后从到VXLAN网关161的逻辑隧道发送。其中,MAC-120为VXLAN报文下一跳节点,即连接VTEP131的交换机120的MAC地址。
对应于VXLAN网关162的流表指示VTEP131把源IP地址为IP-VM1、目的IP地址为IP-VM3的报文中的目的MAC地址替换为MAC-162,以10为VNI、以IP-162为外层目的IP地址、以MAC-120为外层目的MAC地址将该报文封装为VXLAN报文后从到VXLAN网关162的逻辑隧道发送。其中,MAC-120为VXLAN报文下一跳节点的MAC地址。
VTEP131收到SDN控制器下发的上述两条流表,保存在本地。对VM1发送给VM3的报文,由于与该报文匹配的流表有两条,VTEP131将这两条流表作为等价路由的两条路径轮流使用,对每个报文采用其中的一条流表来处理和转发。这样,VM1发送给VM3的多条报文将分散在两个转发网关上进行三层转发,形成的两条转发路径如图4所示。
设某个报文采用对应于VXLAN网关162的流表,VTEP131根据对应于VXLAN网关162的流表对VM1发送的报文进行目的MAC更改和封装后,将VXLAN报文发送。
封装后报文到达VM3的过程与现有技术相同,具体而言,其过程包括:VTEP131根据该VXLAN报文的VNI、内层目的MAC地址(MAC-162)、外层目的IP地址(IP-162),将该VXLAN报文通过VTEP131与VXLAN网关162之间的隧道发送到VXLAN网关162。VXLAN网关162收到该VXLAN报文,解封装得到原始的报文,由于目的节点VM3在VXLAN20中,再将该报文进行VXLAN封装后从VXLAN20的隧道发送到VTEP132,由VTEP132解封装后转发给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地址,以所述对应的一个转发网关的VTEPIP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
一个例子中,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;这个例子中,所述转发网关确定单元520具体用于:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
所述转发网关确定单元520可以包括运行状态获取模块和转发网关选择模块,其中:运行状态获取模块用于获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;转发网关选择模块用于根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种实现虚拟扩展局域网VXLAN三层转发的方法,应用在软件定义网络SDN控制器上,其特征在于,所述方法包括:
接收VXLAN隧道终点VTEP上送的需要进行三层转发的报文;
确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
2.根据权利要求1所述的方法,其特征在于,所述每条流表具体用于:指示所述VTEP将从所述源节点发往所述目的节点的报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以所述对应的一个转发网关的VTEPIP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
3.根据权利要求1所述的方法,其特征在于,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;
所述确定至少一个与报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关,包括:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
4.根据权利要求1或3所述的方法,其特征在于,所述确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关,包括:
获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;
根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
5.根据权利要求1所述的方法,其特征在于,所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
6.一种实现虚拟扩展局域网VXLAN三层转发的装置,应用在软件定义网络SDN控制器上,其特征在于,所述装置包括:
上送报文接收单元,用于接收VXLAN隧道终点VTEP上送的需要进行三层转发的报文;
转发网关确定单元,用于确定至少一个与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关作为转发网关;
流表下发单元,用于向所述VTEP下发至少一条流表;每条流表对应至少一个转发网关,所述每条流表用于:指示所述VTEP将从所述源节点发往所述目的节点的报文,发送到该流表对应的一个转发网关进行三层转发。
7.根据权利要求6所述的装置,其特征在于,所述每条流表具体用于:指示所述VTEP将对从所述源节点发往所述目的节点的报文,将报文的目的MAC地址修改为该流表对应的一个转发网关的MAC地址,以所述对应的一个转发网关的VTEPIP地址作为外层目的IP地址将报文进行VXLAN封装后,发送至所述对应的一个转发网关。
8.根据权利要求6所述的装置,其特征在于,所述SDN控制器上保存有可用网关表,所述可用网关表的表项包括目的节点、与目的节点流量可达的VXLAN网关;
所述转发网关确定单元具体用于:在可用网关表中查找与目的节点流量可达的VXLAN网关,将其中至少一个与报文的源节点在同一个VXLAN内的VXLAN网关作为转发网关。
9.根据权利要求6或8所述的装置,其特征在于,所述转发网关确定单元包括:
运行状态获取模块,用于获取与所述报文的源节点在同一个VXLAN内、并且与所述报文的目的节点流量可达的VXLAN网关的运行状态信息;
转发网关选择模块,用于根据运行状态信息在其中选择至少一个VXLAN网关作为转发网关。
10.根据权利要求6所述的装置,其特征在于,所述需要进行三层转发的报文,包括:目的节点在非VXLAN网络内的报文,或目的节点与源节点在不同VXLAN内的报文。
CN201410690750.6A 2014-11-25 2014-11-25 实现虚拟扩展局域网三层转发的方法和装置 Active CN105656796B (zh)

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 true CN105656796A (zh) 2016-06-08
CN105656796B 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)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850304A (zh) * 2017-02-15 2017-06-13 郑州云海信息技术有限公司 一种基于sdn框架的网关组方法及系统
CN106992918A (zh) * 2017-03-30 2017-07-28 杭州迪普科技股份有限公司 报文转发方法和装置
CN107547242A (zh) * 2017-05-24 2018-01-05 新华三技术有限公司 Vm配置信息的获取方法及装置
CN107770062A (zh) * 2016-08-16 2018-03-06 北京金山云网络技术有限公司 一种数据包发送方法、装置及网络架构
CN107846358A (zh) * 2016-09-19 2018-03-27 北京金山云网络技术有限公司 一种数据传输方法、装置及网络系统
CN108023801A (zh) * 2016-10-31 2018-05-11 中国电信股份有限公司 异构网络的资源调度方法及系统
CN108092890A (zh) * 2017-12-26 2018-05-29 新华三技术有限公司 路由建立方法和装置
CN111669309A (zh) * 2019-03-05 2020-09-15 华为技术有限公司 一种建立VxLAN的方法及无线控制器、交换机
CN113114565A (zh) * 2021-04-09 2021-07-13 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107317832B (zh) * 2016-04-27 2020-01-03 新华三技术有限公司 报文转发方法及装置
CN107332812B (zh) * 2016-04-29 2020-07-07 新华三技术有限公司 网络访问控制的实现方法及装置
CN109952744B (zh) 2016-09-26 2021-12-14 河谷控股Ip有限责任公司 云网络中提供虚拟电路的方法和设备
US10587507B2 (en) * 2017-11-09 2020-03-10 International Business Machines Corporation Routing between software defined networks and physical networks
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

Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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 华为技术有限公司 一种实现虚拟机通信的方法和装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107770062A (zh) * 2016-08-16 2018-03-06 北京金山云网络技术有限公司 一种数据包发送方法、装置及网络架构
CN107846358A (zh) * 2016-09-19 2018-03-27 北京金山云网络技术有限公司 一种数据传输方法、装置及网络系统
CN108023801B (zh) * 2016-10-31 2020-11-10 中国电信股份有限公司 异构网络的资源调度方法及系统
CN108023801A (zh) * 2016-10-31 2018-05-11 中国电信股份有限公司 异构网络的资源调度方法及系统
CN106850304B (zh) * 2017-02-15 2020-02-04 苏州浪潮智能科技有限公司 一种基于sdn框架的网关组方法及系统
CN106850304A (zh) * 2017-02-15 2017-06-13 郑州云海信息技术有限公司 一种基于sdn框架的网关组方法及系统
CN106992918B (zh) * 2017-03-30 2019-12-06 杭州迪普科技股份有限公司 报文转发方法和装置
CN106992918A (zh) * 2017-03-30 2017-07-28 杭州迪普科技股份有限公司 报文转发方法和装置
CN107547242A (zh) * 2017-05-24 2018-01-05 新华三技术有限公司 Vm配置信息的获取方法及装置
CN108092890A (zh) * 2017-12-26 2018-05-29 新华三技术有限公司 路由建立方法和装置
CN108092890B (zh) * 2017-12-26 2020-01-07 新华三技术有限公司 路由建立方法和装置
CN111669309A (zh) * 2019-03-05 2020-09-15 华为技术有限公司 一种建立VxLAN的方法及无线控制器、交换机
CN111669309B (zh) * 2019-03-05 2022-02-11 华为技术有限公司 一种建立VxLAN的方法及无线控制器、交换机
CN113114565A (zh) * 2021-04-09 2021-07-13 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备
CN113114565B (zh) * 2021-04-09 2023-05-12 北京汇钧科技有限公司 数据报文转发方法及装置、存储介质及电子设备

Also Published As

Publication number Publication date
WO2016082739A1 (en) 2016-06-02
CN105656796B (zh) 2019-01-22
US20170317850A1 (en) 2017-11-02

Similar Documents

Publication Publication Date Title
CN105656796A (zh) 实现虚拟扩展局域网三层转发的方法和装置
CA3106407C (en) Multi-cloud connectivity using srv6 and bgp
CN107624240B (zh) 用于自动的基于策略的路由的网络元件的配置
US9306837B1 (en) Source IP-based pruning of traffic toward dually-connected overlay hosts in a data communications environment
CN105812294B (zh) 开流交换器、包交换方法、sdn控制器及数据流控制方法
US20140029412A1 (en) Systems and methods for providing anycast mac addressing in an information handling system
TWI531908B (zh) A method of supporting virtual machine migration with Software Defined Network (SDN)
US10848432B2 (en) Switch fabric based load balancing
CN113302898B (zh) 通信系统、通信方法、非暂时性计算机可读介质
WO2012033041A1 (ja) コンピュータシステム、及びコンピュータシステムにおける通信方法
EP2533472A1 (en) Method and system of frame forwarding with link aggregation in distributed ethernet bridges
US20190238509A1 (en) Providing networking and security to workloads via a control virtual private cloud shared across multiple virtual private clouds
CN104780088A (zh) 一种业务报文的传输方法和设备
CN103905523A (zh) 一种基于sdn的云计算网络虚拟化实现方法及系统
KR20160056191A (ko) 가상 네트워크 기반 분산 다중 도메인 라우팅 제어 시스템 및 라우팅 제어 방법
CN103763367A (zh) 一种云计算数据中心分布式虚拟网络设计方法及系统
CN104468394A (zh) 一种vxlan网络中报文转发方法及装置
US20140226525A1 (en) Safe Multicast Distribution with Predictable Topology Changes
CN104283756A (zh) 一种实现分布式多租户虚拟网络的方法和装置
CN103078794B (zh) 一种报文处理控制方法及装置
CN106656905A (zh) 防火墙集群实现方法及装置
US11218336B2 (en) Hardware based packet replication at tail end node
US20160277251A1 (en) Communication system, virtual network management apparatus, communication node, communication method, and program
US8675669B2 (en) Policy homomorphic network extension
JP7127537B2 (ja) トランスポートネットワーク制御装置、通信システム、転送ノードの制御方法及びプログラム

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