CN105471740A - 基于软件定义网络的网关迁徙处理方法及装置 - Google Patents
基于软件定义网络的网关迁徙处理方法及装置 Download PDFInfo
- Publication number
- CN105471740A CN105471740A CN201410325755.9A CN201410325755A CN105471740A CN 105471740 A CN105471740 A CN 105471740A CN 201410325755 A CN201410325755 A CN 201410325755A CN 105471740 A CN105471740 A CN 105471740A
- Authority
- CN
- China
- Prior art keywords
- vxlanipgw
- priority
- route
- order
- configuration order
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- 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
- 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
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6464—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于软件定义网络的网关迁徙处理方法及装置,其中,该方法应用于至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW,该方法包括:将携带VTEPIP地址的路由的优先级降低后发布给VTEP,将到VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;在控制器监测到第一VXLANIPGW上没有VM与交换设备之间的数据流时,执行迁徙动作。
Description
技术领域
本申请涉及虚拟化技术领域,特别涉及一种基于SDN的网关迁徙处理方法及装置。
背景技术
目前,大型数据中心的内部布局都是采用大二层网络的布局,现有的大二层技术主要是overlay(交叠)技术,大二层网络需要与现有的传统三层网络进行通信,这样,就需要在SDN(SoftwareDefinedNetwork,软件定义网络)的边缘架设一台支持二三层转发的网关设备(Gateway)与外部的传统三层网络进行通信。
如图1所示,SDN中包括:控制器(Controller,图1中未示出)、服务器、VTEP(VXLANTunnelingEndPoint,VXLAN隧道终端)和VXLAN(VirtualeXtensibleLocalAreaNetwork,虚拟可扩展局域网)IP(InternetProtocol,因特网协议)网关(Gateway,GW),其中,服务器中包括:VM(VirtualMachine,虚拟机)及其连接的vSwitch(虚拟交换机)。VTEP通过现有网络与VXLANIPGW建立VXLAN隧道(Tunnel),从而形成VXLAN网络;服务器通过VTEP与VXLANIPGW连接;VXLANIPGW一端连接VXLAN网络,另一端连接传统三层网络(即,非虚拟化网络),从而,实现了VM与非虚拟化网络的数据通信。其中,控制器用于对SDN中的其它设备进行相关配置。
为了能够实现VXLANIPGW的负载分担和高可靠性,通常使用至少两台VXLANIPGW实现无状态网关功能,即,使用至少两台VXLANIPGW连接VXLAN网络和非虚拟化网络。以图1为例进行说明,VXLANIPGW1和VXLANIPGW2在同一VXLAN内。
控制器(Controller)在VXLANIPGW1和VXLANIPGW2上配置相同的VTEPIP地址,也称为环回口地址;以及,在VXLANIPGW1和VXLANIPGW2上配置cost(开销)值相同的到VM的静态路由。
VXLANIPGW1和VXLANIPGW2各自将本设备上的VTEPIP地址(为了描述方便,记为IP1)通过BGP(BorderGatewayProtocol,边界网关协议)等路由协议发布给VTEP1~VTEP3,发布的路由的cost值相同;而且,VXLANIPGW1和VXLANIPGW2各自将到VM的静态路由发布给非虚拟化网络中的交换机。
VTEP1~VTEP3中的任一VTEP接收到VXLANIPGW1和VXLANIPGW2中任一个GW发布来的VTEPIP地址IP1之后,均会在本地建立从本设备到IP1的路由,从而,最终得到了2条形成等价关系的从本设备到IP1的路由。
非虚拟化网络中的交换机接收到VXLANIPGW1和VXLANIPGW2中任一个GW发布来的到VM的静态路由之后,均会在本地建立从本设备到该VM的路由,从而,最终得到了2条形成等价关系的从本设备到该VM的路由。
这样,在VM→非虚拟化网络的数据通信过程中,任一VTEP接收到来自VM的数据报文之后,会从本设备到IP1的等价路由中选择一条转发给对应的VXLANIPGW,从而,实现了VM→非虚拟化网络方向数据流的负载分担;在非虚拟化网络→VM的数据通信过程中,非虚拟化网络交换机接收到发往VM的数据报文之后,会从本设备到该VM的等价路由中选择一条,将该数据报文转发给对应的VXLANIPGW,从而,实现了非虚拟化网络→VM方向数据流的负载分担。
但是,在上述过程中会存在以下问题:
当任一VXLANIPGW进行迁徙,即离开SDN或离开SDN后再重新加入该SDN时,如GW1进行迁徙,在路由收敛期间,由于VTEP上仍然存在从本设备到IP1的等价路由,因此,VTEP仍然可能会将来自VM的数据报文转发给GW1,从而,导致丢包现象的发生;同样,由于非虚拟化网络交换机上仍然存在从本设备到VM的等价路由,因此,该交换机仍然可能会将发往VM的数据报文转发给GW1,从而,导致丢包现象的发生;
而且,通常采用手动的方式实现GW1的迁徙,即,手动地在Controller上进行操作将GW1与P1设备之间的链路、以及GW1与非虚拟化网络中的交换机之间的链路断开,操作不便。
发明内容
本申请提供了一种基于SDN的网关迁徙处理方法及装置,旨在解决现有技术中存在的由于某一VXLANIPGW进行迁徙而导致的丢包问题以及手动操作不便的问题。
本申请的技术方案如下:
一方面,提供了一种基于SDN的网关迁徙处理方法,应用于至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW,该方法包括:
将携带VTEPIP地址的路由的优先级降低后发布给VTEP,将到VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
在SDN中的控制器监测到第一VXLANIPGW上没有VM与交换设备之间的数据流时,执行迁徙动作。
另一方面,还提供了一种基于SDN的网关迁徙处理方法,应用于SDN中的控制器,该方法包括:
向至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW发送第一配置命令和第二配置命令,第一配置命令中包括:将携带VTEPIP地址的路由的优先级降低,第二配置命令中包括:将到VM的静态路由的优先级降低;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
在监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令。
又一方面,还提供了一种基于SDN的网关迁徙处理装置,应用于至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW中,该装置包括:
路由发布模块,用于将携带VTEPIP地址的路由的优先级降低后发布给VTEP,将到VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
迁徙模块,用于在SDN中的控制器监测到第一VXLANIPGW上没有VM与交换设备之间的数据流时,执行迁徙动作。
又一方面,还提供了一种基于SDN的网关迁徙处理装置,应用于SDN中的控制器,该装置包括:
第一命令发送模块,用于向至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW发送第一配置命令和第二配置命令,第一配置命令中包括:将携带VTEPIP地址的路由的优先级降低,第二配置命令中包括:将到VM的静态路由的优先级降低;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
监测模块,用于监测第一VXLANIPGW上是否存在VM与非虚拟化网络的交换设备之间的数据流;
第二命令发送模块,用于在监测模块监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令。
本申请上述实施例的技术方案中,在基于SDN的网络架构中,当有N个(N不小于2)VXLANIPGW共同实现负载分担时,如果某一VXLANIPGW(称为第一VXLANIPGW)需要进行迁徙,在进行迁徙之前,控制器降低第一VXLANIPGW上携带VTEPIP地址的路由的优先级,这样,第一VXLANIPGW重新将携带VTEPIP地址的路由以降低后的优先级发布给VTEP之后,VTEP会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到VTEPIP地址的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到VTEPIP地址的路由,从而,VM→非虚拟化网络方向的数据流在经过VTEP时不会再通过第一VXLANIPGW转发;另外,在第一VXLANIPGW进行迁徙之前,控制器还降低第一VXLANIPGW上到VM的静态路由的优先级,这样,第一VXLANIPGW重新将从本设备到该VM的静态路由发布给非虚拟化网络中的交换设备之后,该交换设备会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到该VM的路由,从而,非虚拟化网络→VM方向的数据流在经过该交换设备时不会再通过第一VXLANIPGW转发;上述路由发布完之后,非虚拟化网络与VM之间的数据流就会切换到其它VXLANIPGW上进行转发,在控制器监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,第一VXLANIPGW执行迁徙动作。
在第一VXLANIPGW迁徙之前,通过修改第一VXLANIPGW上携带VTEPIP地址的路由的优先级和到VM的静态路由的优先级,使得修改后的优先级低于其它VXLANIPGW上对应路由的优先级,这样,VTEP和非虚拟化网络中的交换设备上不再存在经过第一VXLANIPGW的路由,使得VM与非虚拟化网络之间的数据流能够切换到除第一VXLANIPGW以外的其它VXLANIPGW上进行转发,第一VXLANIPGW再执行迁徙动作,从而,避免了丢包的问题。
而且,在第一VXLANIPGW完成迁徙并重新加入SDN之后,控制器再将第一VXLANIPGW上携带VTEPIP地址的路由和到VM的静态路由的优先级分别恢复为降低前的优先级,这样,VTEP再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VTEPIP地址的路由,非虚拟化网络中的交换设备上再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VM的路由,从而,包括第一VXLANIPGW在内的N个VXLANIPGW重新实现负载分担。
另外,通过控制器与需要迁徙的第一VXLANIPGW之间的交互,实现了VXLANIPGW迁徙的自动化控制,适用于多种SDN组网。
附图说明
图1是基于SDN的基于SDN的网络架构示意图;
图2是本申请实施例的基于SDN的网关迁徙处理方法的流程图;
图3是本申请实施例的第一VXLANIPGW完成迁徙动作之后的网关迁徙处理方法的流程图;
图4是本申请另一实施例的一种基于SDN的实际网络架构示意图;
图5是本申请实施例又一实施例的包含网关迁徙处理装置的第一VXLANIPGW的硬件结构示意图;
图6是本申请实施例又一实施例的包含网关迁徙处理装置的控制器的硬件结构示意图。
具体实施方式
为了解决现有技术中存在的由于某一VXLANIPGW进行迁徙而导致的丢包问题,本申请以下实施例中提供了一种基于SDN的网关迁徙处理方法,以及一种可以应用该方法的装置。
本申请实施例中的方法及装置适用于如图1所示的基于SDN的网络架构中。如图1所示,SDN中包括:控制器(图1中未示出)、服务器、VTEP和N(N为不小于2的自然数)个VXLANIPGW(图1中以2个VXLANIPGW为例),其中,服务器中包括:VM及其连接的vSwitch。VTEP通过现有网络与VXLANIPGW建立VXLAN隧道,从而形成VXLAN网络;服务器通过VTEP与VXLANIPGW连接;VXLANIPGW一端连接VXLAN网络,另一端连接传统三层网络(即,非虚拟化网络),具体连接非虚拟化网络中的交换设备,如交换机等。
在如图1所示的网络架构形成之后,SDN中的控制器在各个VXLANIPGW上配置相同的VTEPIP地址,并配置用于发布该VTEPIP地址的路由的优先级,各个VXLANIPGW上配置的优先级相同,为了描述方便称为第二优先级;另外,控制器还在各个VXLANIPGW上配置优先级相同的到VM的静态路由,为了描述方便,静态路由的优先级称为第四优先级。在实际实施过程中,优先级具体可以通过cost值来反映,cost值越大,优先级越低,本申请实施例对此不做限定。
每一个VXLANIPGW各自将VTEPIP地址以路由的形式发布给VTEP,发布的路由的优先级相同,均为第二优先级;而且,每一个VXLANIPGW各自将从本设备到VM的静态路由发布给非虚拟化网络中的交换设备,静态路由的优先级均为第四优先级。
VTEP接收到任一VXLANIPGW发布来的携带有VTEPIP地址的路由之后,通过路由计算在本地建立一条从本设备经过该VXLANIPGW到该VTEPIP地址的路由,由于各个VXLANIPGW发布的携带有VTEPIP地址的路由的优先级相等,因此,VTEP最终会在本地建立N条形成等价关系的从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VTEPIP地址的路由,即,这N条路由的下一跳是N个VXLANIPGW中的不同VXLANIPGW。
非虚拟化网络中的交换设备接收到任一VXLANIPGW发布来的从该VXLANIPGW到VM的静态路由之后,经过路由计算在本地建立从本交换设备经过该VXLANIPGW到该VM的路由,由于各个VXLANIPGW发布来的静态路由的优先级相等,因此,该交换设备最终会在本地建立N条形成等价关系的从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由,即,这N个到该VM的路由中的下一跳是N个VXLANIPGW中的不同VXLANIPGW。
另外,控制器还会向服务器中的vSwitch发送N个从VM到非虚拟化网络中的交换设备的流表项,不同流表项中的目的IP地址是该交换设备上连接不同VXLANIPGW的端口的IP地址,各个流表项中的下一跳均是本服务器连接的VTEP。
从而,VM与非虚拟化网络之间可以进行数据通信。
显然,控制器还会对VM、vSwitch、VTEP、VXLANIPGW进行其它的相关配置,具体可参见现有技术,本申请实施例对此不做限定。
当N个VXLANIPGW中的任一VXLANIPGW(为了描述方便,称为第一VXLANIPGW)需要进行迁徙(迁徙指的是离开SDN,或者,离开SDN后再重新加入SDN)时,例如,第一VXLANIPGW由于需要进行设备升级、设备迁移、设备扩容和设备替换等原因,而需要进行迁徙,此时,本申请实施例的基于SDN的网关迁徙处理方法如图2所示包括以下步骤:
步骤S102,当第一VXLANIPGW需要进行迁徙时,控制器向第一VXLANIPGW发送网关迁徙命令;
步骤S104,第一VXLANIPGW保存本设备上的相关配置信息,将该相关配置信息发送给控制器进行保存;
步骤S106,控制器向第一VXLANIPGW发送第一配置命令;其中,第一配置命令中包括:将携带VTEPIP地址的路由的优先级降低,为了描述方便,将降低后的优先级称为第一优先级;
显然,第一优先级的优先级低于第二优先级。
在实际实施过程中,控制器可以采用多种方式向第一VXLANIPGW发送配置命令,例如:控制器在接收到用户的配置命令之后,将这些配置命令写入XML(eXtensibleMarkupLanguage,可扩展标记语言)文件中,然后,调用Netconf(网络配置)工具将该XML文件中的配置命令解析为VXLANIPGW可识别的格式后,发送给第一VXLANIPGW;VXLANIPGW接收到该配置命令后,直接将本地的对应配置修改为接收到的配置命令中的内容。
步骤S108,第一VXLANIPGW根据控制器的第一配置命令,将携带VTEPIP地址的路由降低为第一优先级,之后,将该路由发布给VTEP;
这样,VTEP在接收到第一VXLANIPGW发布来的携带有VTEPIP地址的路由之后,重新进行路由计算,将本地原有的形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到VTEPIP地址的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到VTEPIP地址的路由,即,这N-1个到VTEPIP地址的路由的下一跳是除第一VXLANIPGW以外的不同VXLANIPGW;从而,VM→非虚拟化网络方向的数据流在经过该VTEP时,该VTEP可以从这N-1个到VTEPIP地址的路由中选择一条进行转发,而不再通过要进行迁徙的第一VXLANIPGW转发给非虚拟化网络中的交换设备。
步骤S110,控制器向第一VXLANIPGW发送第二配置命令;其中,第二配置命令中包括:将从第一VXLANIPGW到VM的静态路由的优先级降低,为了描述方便,将降低后的优先级称为第三优先级;
显然,第三优先级的优先级低于第四优先级。
步骤S112,第一VXLANIPGW根据控制器的第二配置命令,将从本设备到VM的静态路由的优先级降低为第三优先级,之后,将该静态路由发布给非虚拟化网络中的交换设备;
这样,交换设备在接收到第一VXLANIPGW发布来的静态路由之后,重新进行路由计算,将本地原有的形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到该VM的路由,即,这N-1个到该VM的路由的下一跳是除第一VXLANIPGW以外的不同VXLANIPGW;从而,非虚拟化网络→VM方向的数据流在经过该交换设备时,该交换设备可以从这N-1个路由中选择一条进行转发,而不再通过要进行迁徙的第一VXLANIPGW转发给该VM。
步骤S114,控制器在监测到第一VXLANIPGW上没有VM与非虚拟化网络中的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令;
在实际实施过程中,控制器监测第一VXLANIPGW上是否有VM与非虚拟化网络中的交换设备之间的数据流的方式可以有很多种,例如,通过监测第一VXLANIPGW的各个端口上的流量来实现,本申请对此不做限定。具体的,控制器向第一VXLANIPGW发送监控命令,第一VXLANIPGW接收到该监控命令后,向控制器上报本设备的各个端口上的流量;控制器接收到后,可以根据实际需要统计出VM与非虚拟化网络中的交换设备之间的数据流量并显示出来。
步骤S116,第一VXLANIPGW根据控制器的迁徙动作执行命令,执行迁徙动作。
在实际实施过程中,上述步骤S106和步骤S110没有一定的执行先后顺序。
另外,如图3所示,在第一VXLANIPGW完成迁徙动作并重新加入SDN之后,基于SDN的网关迁徙处理方法还包括以下步骤:
步骤S202,控制器向第一VXLANIPGW发送第三配置命令;其中,第三配置命令中包括:将携带VTEPIP地址的路由的优先级恢复为降低前的优先级,即第二优先级;
由于控制器上保存有第一VXLANIPGW在迁徙之前的相关配置信息,其中包括携带VTEPIP地址的路由的优先级以及到VM的静态路由的优先级,因此,可以执行步骤S202和步骤S206。
步骤S204,第一VXLANIPGW根据控制器的第三配置命令,将携带VTEPIP地址的路由的优先级恢复为第二优先级,之后,将该路由发布给VTEP;
这样,VTEP在接收到该路由后,重新进行路由计算,将本地形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到VTEPIP地址的路由,更新为形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到所述VTEPIP地址的路由;从而,VM→非虚拟化网络方向的数据流在经过VTEP时,该VTEP可以从这N个路由中选择一条进行转发,从而,在第一VXLANIPGW完成迁徙后,VM→非虚拟化网络方向的数据流会再次通过第一VXLANIPGW转发给非虚拟化网络中的交换设备。
步骤S206,控制器向第一VXLANIPGW发送第四配置命令;其中,第四配置命令中包括:将从第一VXLANIPGW到VM的静态路由的优先级恢复为降低前的优先级,即第四优先级;
步骤S208,第一VXLANIPGW根据控制器的第四配置命令,将从本设备到VM的静态路由的优先级恢复为第四优先级,之后,将该静态路由发布给非虚拟化网络中的交换设备。
这样,非虚拟化网络中的交换设备在接收到该静态路由后,重新进行路由计算,将本地形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到该VM的路由,更新为形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由;从而,非虚拟化网络→VM方向的数据流在经过该交换设备时,该交换设备可以从这N个路由中选择一条进行转发,从而,在第一VXLANIPGW完成迁徙后,非虚拟化网络→VM方向的数据流会再次通过第一VXLANIPGW转发给该VM。
显然,第一优先级、第二优先级、第三优先级和第四优先级只是为了描述方便而做出的命名,并不表示先后顺序,同样,第一配置命令、第二配置命令、第三配置命令和第四配置命令也是为了描述方便而做出的命名。
本申请上述实施例的技术方案中,在基于SDN的网络架构中,当有N个(N不小于2)VXLANIPGW共同实现负载分担时,如果某一VXLANIPGW(称为第一VXLANIPGW)需要进行迁徙,在进行迁徙之前,控制器降低第一VXLANIPGW上携带VTEPIP地址的路由的优先级,这样,第一VXLANIPGW重新将携带VTEPIP地址的路由以降低后的优先级发布给VTEP之后,VTEP会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到VTEPIP地址的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到VTEPIP地址的路由,从而,VM→非虚拟化网络方向的数据流在经过VTEP时不会再通过第一VXLANIPGW转发;另外,在第一VXLANIPGW进行迁徙之前,控制器还降低第一VXLANIPGW上到VM的静态路由的优先级,这样,第一VXLANIPGW重新将从本设备到该VM的静态路由发布给非虚拟化网络中的交换设备之后,该交换设备会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到该VM的路由,从而,非虚拟化网络→VM方向的数据流在经过该交换设备时不会再通过第一VXLANIPGW转发;上述路由发布完之后,非虚拟化网络与VM之间的数据流就会切换到其它VXLANIPGW上进行转发,在控制器监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,第一VXLANIPGW执行迁徙动作。
在第一VXLANIPGW迁徙之前,通过修改第一VXLANIPGW上携带VTEPIP地址的路由的优先级和到VM的静态路由的优先级,使得修改后的优先级低于其它VXLANIPGW上对应路由的优先级,这样,VTEP和非虚拟化网络中的交换设备上不再存在经过第一VXLANIPGW的路由,使得VM与非虚拟化网络之间的数据流能够切换到除第一VXLANIPGW以外的其它VXLANIPGW上进行转发,第一VXLANIPGW再执行迁徙动作,从而,避免了丢包的问题。
而且,在第一VXLANIPGW完成迁徙并重新加入SDN之后,控制器再将第一VXLANIPGW上携带VTEPIP地址的路由和到VM的静态路由的优先级分别恢复为降低前的优先级,这样,VTEP再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VTEPIP地址的路由,非虚拟化网络中的交换设备上再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VM的路由,从而,包括第一VXLANIPGW在内的N个VXLANIPGW重新实现负载分担。
另外,通过控制器与需要迁徙的第一VXLANIPGW之间的交互,实现了VXLANIPGW迁徙的自动化控制,适用于多种SDN组网。
下面以图3所示的简化的网络架构为例,详细说明上述实施例中的方法。如图3所示,VM的IP地址是1.2.3.4,VXLANIP网关GW1上连接VTEP的端口的IP地址是110.0.0.1、连接非虚拟化网络中的交换机的端口的IP地址是58.0.0.1,GW2上连接VTEP的端口的IP地址是111.1.1.1、连接非虚拟化网络中的交换机的端口的IP地址是58.1.1.1,非虚拟化网络中的交换机上连接GW1的端口的IP地址是58.0.0.2、连接GW2的端口的IP地址是58.1.1.2。
1、控制器向GW1和GW2配置到VM1.2.3.4的静态路由,如下所示:
GW1和GW2各自通过路由协议将本地的到该VM的静态路由发布给非虚拟化网络中的交换机,该交换机收到后,在本地建立了形成等价关系的2条从本交换机到VM1.2.3.4的路由,如下所示:
由上述路由可见,从交换机到VM1.2.3.4的2条路由的下一跳分别是GW1和GW2。这样,从非虚拟化网络发往VM1.2.3.4的数据流经过该交换机时,会选择GW1和GW2中的一个向该VM转发。
控制器向vSwitch下发2条目的IP地址分别是58.0.0.2和58.1.1.2的流表项,下一跳均是VTEP,可以如表1所示:
表1
这样,所有发往非虚拟化网络的数据流都会通过VTEP进行转发。
控制器启动GW1和GW2的无状态网关功能,向GW1和GW2配置相同的VTEPIP地址:125.125.125.125,并配置用于发布125.125.125.125的路由的cost值相同,如均为0;GW1和GW2各自通过BGP将125.125.125.125发布给VETP设备,发布的路由的cost值均为0;VTEP收到后,在本地建立了2条形成等价关系的到125.125.125.125的路由,如下所示:
由上述路由可见,从VTEP到125.125.125.125的2条路由的下一跳分别是GW1和GW2。这样,来自VM1.2.3.4的数据流经过VTEP时,会选择GW1和GW2中的一个向非虚拟化网络转发。
2、当GW1需要进行迁徙时,在GW1进行迁徙之前,控制器对GW1进行如下配置:
A、修改GW1上到VM的静态路由的cost值,修改后的cost值大于0,例如,修改后的cost值=1,由于cost值越大,优先级越低,此时,GW1上到VM1.2.3.4的静态路由的优先级低于GW2;
GW1接收到如上配置后,将本设备到VM1.2.3.4的静态路由重新发布给非虚拟化网络中的交换机;该交换机接收到该静态路由后,重新进行路由计算,将本地形成等价关系的2条到VM1.2.3.4的路由,更新为如下所示:
由更新后的路由可见,在非虚拟化网络中的交换机上不再存在从该交换机到VM1.2.3.4的等价路由,只有经过GW2到达VM1.2.3.4的1条路由。
B、修改GW1用于发布VTEPIP地址125.125.125.125的BGP路由的cost值,修改后的cost值大于0,例如,修改后的cost值=1,由于cost值越大,优先级越低,此时,GW1上用于发布VTEPIP地址125.125.125.125的GBP路由的优先级低于GW2;
GW1接收到如上配置后,将VTEPIP地址125.125.125.125通过BGP路由重新发布给VTEP,该BGP路由的cost值=1;VTEP收到该BGP路由后,重新进行路由计算,将本地形成等价关系的2条到VTEPIP地址125.125.125.125的路由,更新为如下所示:
由更新后的路由可见,在VTEP上不再存在从该VTEP到VTEPIP地址125.125.125.125的等价路由,只有经过GW2到达VTEPIP地址125.125.125.125的1条路由。
3、在GW1进行路由的重新发布之后,VM与非虚拟化网络之间的双向数据流仅会通过GW2进行转发,但是由于路由收敛需要一定的时间,还会有部分数据流通过GW1进行转发,所以需要监测GW1上VM与非虚拟化网络之间的数据流量。当控制器监测到GW1上没有VM与非虚拟化网络之间的数据流之后,说明数据流已经完全切换到了GW2上,此时控制器可以进行GW1的网关迁徙了,即,向GW1发送执行迁徙动作的配置信息。GW1接收到该配置信息后,执行迁徙动作。
4、当GW1迁徙完成之后,控制器还会对GW1进行如下配置:
首先,控制器需要启动GW1的无状态网关的功能,配置VTEPIP地址125.125.125.125,用于发布VTEPIP地址125.125.125.125的BGP路由的cost值为0,GW1到VM1.2.3.4的静态路由,该静态路由的cost值为0,等。
GW1会再次将VTEPIP地址125.125.125.125通过BGP路由向VTEP发布,该BGP路由的cost值为0,从而,使得VTEP将本地的从本设备经过GW2到VTEPIP地址125.125.125.125的1条路由,更新为形成等价关系的2条到VTEPIP地址125.125.125.125的路由,这2条路由的下一跳分别为GW1和GW2;以及,GW1再次将到VM1.2.3.4的静态路由发布给非虚拟化网络中的交换机,以使得该交换机将本地的从本设备经过GW2到VM1.2.3.4的1条路由,更新为形成等价关系的2条到VM1.2.3.4的路由,这2条路由的下一跳分别为GW1和GW2。这样,在GW1完成迁徙之后,GW1和GW2重新实现负载分担。
针对上述实施例中的方法,本申请实施例中提供了一种可以应用该方法的基于SDN的网关迁徙处理装置。
本申请具体实施例中的第一VXLANIPGW是可以软硬件结合的可编程设备,从硬件层面而言,具体参见图5,图5为本申请具体实施例中包含网关迁徙处理装置的第一VXLANIPGW的硬件结构示意图。第一VXLANIPGW中包括:非易失性存储器、CPU(中央处理器)、转发芯片和内存;其中:
非易失性存储器,用于存储指令代码;所述指令代码被CPU读取到内存中执行时完成的操作主要为内存中的网关迁徙处理装置完成的功能。
CPU,用于与转发芯片通信,进行各种数据的收发,例如:发送携带VTEPIP地址的路由给VTEP,发送第一VXLANIPGW到VM的静态路由给非虚拟化网络的交换设备,接收控制器发来的各种命令,如网关迁徙命令、各种配置命令、迁徙动作执行命令;用于与非易失性存储器通信,读取和执行非易失性存储器中存储的所述指令代码,完成网关迁徙处理装置完成的功能,以及对从转发芯片上送的网关迁徙命令、各种配置命令、以及迁徙动作执行命令的处理。
转发芯片,用于各种数据的收发处理,例如,将CPU发来的携带VTEPIP地址的路由发送给VTEP,将第一VXLANIPGW到VM的静态路由发送给非虚拟化网络的交换设备,将控制器发来的各种命令,如网关迁徙命令、各种配置命令、迁徙动作执行命令上送给CPU。
从软件层面而言,应用于第一VXLANIPGW中的网关迁徙处理装置包括以下模块:路由发布模块301和迁徙模块302,其中:
路由发布模块301,用于将携带VTEPIP地址的路由的优先级降低后发布给VTEP,将到VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
迁徙模块302,用于在SDN中的控制器监测到第一VXLANIPGW上没有VM与交换设备之间的数据流时,执行迁徙动作。
其中,路由发布模块301,还用于在本设备完成迁徙动作并重新加入SDN之后,将携带VTEPIP地址的路由的优先级恢复为降低前的优先级后发布给VTEP,将到该VM的静态路由的优先级恢复为降低前的优先级后发布给交换设备。
另外,路由发布模块301中可以包括:命令接收单元、降低单元和发送单元;迁徙模块302中可以包括:迁徙命令接收单元和迁徙动作执行单元;其中:
命令接收单元,用于接收控制器发来的网关迁徙命令;还用于接收控制器发来的第一配置命令;还用于接收控制器发来的第二配置命令;
降低单元,用于根据命令接收单元接收到的第一配置命令将携带VTEPIP地址的路由的优先级降低;还用于根据命令接收单元接收到的第二配置命令将到VM的静态路由的优先级降低;
发送单元,用于在命令接收单元接收到控制器发来的网关迁徙命令之后,将本设备的相关配置信息发送给控制器进行保存;在降低单元将携带VTEPIP地址的路由的优先级降低后,将该路由发布给VTEP;在降低单元将到VM的静态路由的优先级降低后,将该静态路由发布给非虚拟化网络的交换设备;
迁徙命令接收单元,用于接收控制器在检测到第一VXLANIPGW上没有VM与交换设备之间的数据流时发来的迁徙动作执行命令;
迁徙动作执行单元,用于根据迁徙动作执行命令执行迁徙动作。
其中,命令接收单元,还用于接收控制器发来的第三配置命令;还用于接收控制器发来的第四配置命令;
降低单元,还用于根据命令接收单元接收到的第三配置命令,将携带VTEPIP地址的路由的优先级恢复为降低前的优先级;还用于根据命令接收单元接收到的第四配置命令,将到VM的静态路由的优先级恢复为降低前的优先级;
发送单元,还用于在降低单元将携带VTEPIP地址的路由的优先级恢复为降低前的优先级之后,将该路由发布给VTEP;在降低单元将到VM的静态路由的优先级恢复为降低前的优先级之后,将该静态路由发布给交换设备。
上述的网关迁徙处理装置作为一个逻辑意义上的装置,其是通过CPU将非易失性非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。当对应的计算机程序指令被执行时,形成的网关迁徙处理装置用于按照上述方法执行相应操作。
此外,本申请另一具体实施例中的控制器也是可以软硬件结合的可编程设备,从硬件层面而言,具体参见图6,图6为本申请具体实施例中包含网关迁徙处理装置的控制器的硬件结构示意图。控制器中包括:非易失性存储器、CPU、转发芯片和内存;其中:
非易失性存储器,用于存储指令代码;所述指令代码被CPU读取到内存中执行时完成的操作主要为内存中的网关迁徙处理装置完成的功能。
CPU,用于与转发芯片通信,进行各种数据的收发,例如:发送各种命令,如网关迁徙命令、各种配置命令、迁徙动作执行命令给第一VXLANIPGW,接收第一VXLANIPGW发来的第一VXLANIPGW的相关配置信息;用于与非易失性存储器通信,读取和执行非易失性存储器中存储的所述指令代码,完成网关迁徙处理装置完成的功能,以及对从转发芯片上送的第一VXLANIPGW的相关配置信息的处理。
转发芯片,用于各种数据的收发处理,例如,将CPU发来的各种命令,如网关迁徙命令、各种配置命令、迁徙动作执行命令发送给第一VXLANIPGW,将第一VXLANIPGW发来的第一VXLANIPGW的相关配置信息上送给CPU。
从软件层面而言,应用于控制器中的网关迁徙处理装置包括以下模块:第一命令发送模块401、监测模块402和第二命令发送模块403,其中:
第一命令发送模块401,用于向至少两个VXLANIPGW中要进行迁徙的第一VXLANIPGW发送第一配置命令和第二配置命令,第一配置命令中包括:将携带VTEPIP地址的路由的优先级降低,第二配置命令中包括:将到VM的静态路由的优先级降低;其中,在第一VXLANIPGW上的路由的优先级降低之前,至少两个VXLANIPGW上携带VTEPIP地址的路由的优先级相同,且至少两个VXLANIPGW到VM的静态路由的优先级相同;
监测模块402,用于监测第一VXLANIPGW上是否存在VM与非虚拟化网络的交换设备之间的数据流;
第二命令发送模块403,用于在监测模块402监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令。
其中,第一命令发送模块,还用于在第一VXLANIPGW完成迁徙动作并重新加入SDN之后,向第一VXLANIPGW发送第三配置命令和第四配置命令,其中,第三配置命令中包括:将携带VTEPIP地址的路由的优先级恢复为降低前的优先级,第四配置命令中包括:将到该VM的静态路由的优先级恢复为降低前的优先级。
另外,该网关迁徙处理装置中还可以包括:第三命令发送模块404、接收模块405和保存模块406;其中:
第三命令发送模块404,用于在第一命令发送模块401向第一VXLANIPGW发送第一配置命令和第二配置命令之前,向第一VXLANIPGW发送网关迁徙命令;
接收模块405,用于接收第一VXLANIPGW在接收到网关迁徙命令之后发来的第一VXLANIPGW的相关配置信息;
保存模块406,用于保存接收模块405接收到的第一VXLANIPGW的相关配置信息;
第一命令发送模块401具体用于根据保存模块406保存的第一VXLANIPGW的相关配置信息,向第一VXLANIPGW发送第三配置命令和第四配置命令。
综上,本申请以上实施例可以达到以下技术效果:
本申请上述实施例的技术方案中,在基于SDN的网络架构中,当有N个(N不小于2)VXLANIPGW共同实现负载分担时,如果某一VXLANIPGW(称为第一VXLANIPGW)需要进行迁徙,在进行迁徙之前,控制器降低第一VXLANIPGW上携带VTEPIP地址的路由的优先级,这样,第一VXLANIPGW重新将携带VTEPIP地址的路由以降低后的优先级发布给VTEP之后,VTEP会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到VTEPIP地址的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到VTEPIP地址的路由,从而,VM→非虚拟化网络方向的数据流在经过VTEP时不会再通过第一VXLANIPGW转发;另外,在第一VXLANIPGW进行迁徙之前,控制器还降低第一VXLANIPGW上到VM的静态路由的优先级,这样,第一VXLANIPGW重新将从本设备到该VM的静态路由发布给非虚拟化网络中的交换设备之后,该交换设备会将本地形成等价关系的N个从本设备经过N个VXLANIPGW中不同VXLANIPGW到该VM的路由,更新为形成等价关系的N-1个从本设备经过除第一VXLANIPGW以外的不同VXLANIPGW到该VM的路由,从而,非虚拟化网络→VM方向的数据流在经过该交换设备时不会再通过第一VXLANIPGW转发;上述路由发布完之后,非虚拟化网络与VM之间的数据流就会切换到其它VXLANIPGW上进行转发,在控制器监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,第一VXLANIPGW执行迁徙动作。
在第一VXLANIPGW迁徙之前,通过修改第一VXLANIPGW上携带VTEPIP地址的路由的优先级和到VM的静态路由的优先级,使得修改后的优先级低于其它VXLANIPGW上对应路由的优先级,这样,VTEP和非虚拟化网络中的交换设备上不再存在经过第一VXLANIPGW的路由,使得VM与非虚拟化网络之间的数据流能够切换到除第一VXLANIPGW以外的其它VXLANIPGW上进行转发,第一VXLANIPGW再执行迁徙动作,从而,避免了丢包的问题。
而且,在第一VXLANIPGW完成迁徙并重新加入SDN之后,控制器再将第一VXLANIPGW上携带VTEPIP地址的路由和到VM的静态路由的优先级分别恢复为降低前的优先级,这样,VTEP再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VTEPIP地址的路由,非虚拟化网络中的交换设备上再次生成形成等价关系的N个从本设备经过包括第一VXLANIPGW在内的不同VXLANIPGW到VM的路由,从而,包括第一VXLANIPGW在内的N个VXLANIPGW重新实现负载分担。
另外,通过控制器与需要迁徙的第一VXLANIPGW之间的交互,实现了VXLANIPGW迁徙的自动化控制,适用于多种SDN组网。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (14)
1.一种基于软件定义网络SDN的网关迁徙处理方法,其特征在于,应用于至少两个虚拟可扩展局域网因特网协议网关VXLANIPGW中要进行迁徙的第一VXLANIPGW,所述方法包括:
将携带虚拟可扩展局域网隧道终端VTEPIP地址的路由的优先级降低后发布给VTEP,将到虚拟机VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,所述至少两个VXLANIPGW上携带所述VTEPIP地址的路由的优先级相同,且所述至少两个VXLANIPGW到VM的静态路由的优先级相同;
在所述SDN中的控制器监测到第一VXLANIPGW上没有VM与所述交换设备之间的数据流时,执行迁徙动作。
2.根据权利要求1所述的方法,其特征在于,在完成迁徙动作并重新加入所述SDN之后,还包括:
将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级后发布给VTEP,将到该VM的静态路由的优先级恢复为降低前的优先级后发布给所述交换设备。
3.根据权利要求2所述的方法,其特征在于,所述将携带VTEPIP地址的路由的优先级降低后发布给VTEP,将到VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备的方法具体包括:接收所述控制器发来的网关迁徙命令;将本设备的相关配置信息发送给所述控制器进行保存;接收所述控制器发来的第一配置命令,根据所述第一配置命令将携带VTEPIP地址的路由的优先级降低,之后,将该路由发布给VTEP;接收所述控制器发来的第二配置命令,根据所述第二配置命令将到VM的静态路由的优先级降低,之后将该静态路由发布给非虚拟化网络的交换设备;
所述在控制器监测到第一VXLANIPGW上没有VM与所述交换设备之间的数据流时,执行迁徙动作的具体方法包括:接收所述控制器在检测到第一VXLANIPGW上没有VM与所述交换设备之间的数据流时发来的迁徙动作执行命令,根据所述迁徙动作执行命令执行迁徙动作。
4.根据权利要求3所述的方法,其特征在于,将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级后发布给VTEP,将到该VM的静态路由的优先级恢复为降低前的优先级后发布给所述交换设备的具体方法包括:
接收所述控制器发来的第三配置命令,根据所述第三配置命令将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级,之后将该路由发布给VTEP;
接收所述控制器发来的第四配置命令,根据所述第四配置命令将到VM的静态路由的优先级恢复为降低前的优先级,之后将该静态路由发布给所述交换设备。
5.一种基于软件定义网络SDN的网关迁徙处理方法,其特征在于,应用于所述SDN中的控制器,所述方法包括:
向至少两个虚拟可扩展局域网因特网协议网关VXLANIPGW中要进行迁徙的第一VXLANIPGW发送第一配置命令和第二配置命令,第一配置命令中包括:将携带虚拟可扩展局域网隧道终端VTEPIP地址的路由的优先级降低,第二配置命令中包括:将到虚拟机VM的静态路由的优先级降低;其中,在第一VXLANIPGW上的路由的优先级降低之前,所述至少两个VXLANIPGW上携带所述VTEPIP地址的路由的优先级相同,且所述至少两个VXLANIPGW到VM的静态路由的优先级相同;
在监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令。
6.根据权利要求5所述的方法,其特征在于,还包括:
在第一VXLANIPGW完成迁徙动作并重新加入所述SDN之后,向第一VXLANIPGW发送第三配置命令和第四配置命令,其中,第三配置命令中包括:将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级,第四配置命令中包括:将到该VM的静态路由的优先级恢复为降低前的优先级。
7.根据权利要求6所述的方法,其特征在于,在向第一VXLANIPGW发送第一配置命令和第二配置命令之前,还包括:向第一VXLANIPGW发送网关迁徙命令;接收并保存第一VXLANIPGW发来的第一VXLANIPGW的相关配置信息;
所述向第一VXLANIPGW发送第三配置命令和第四配置命令的具体方法包括:根据保存的第一VXLANIPGW的相关配置信息,向第一VXLANIPGW发送第三配置命令和第四配置命令。
8.一种基于软件定义网络SDN的网关迁徙处理装置,其特征在于,应用于至少两个虚拟可扩展局域网因特网协议网关VXLANIPGW中要进行迁徙的第一VXLANIPGW中,所述装置包括:
路由发布模块,用于将携带虚拟可扩展局域网隧道终端VTEPIP地址的路由的优先级降低后发布给VTEP,将到虚拟机VM的静态路由的优先级降低后发布给非虚拟化网络的交换设备;其中,在第一VXLANIPGW上的路由的优先级降低之前,所述至少两个VXLANIPGW上携带所述VTEPIP地址的路由的优先级相同,且所述至少两个VXLANIPGW到VM的静态路由的优先级相同;
迁徙模块,用于在所述SDN中的控制器监测到第一VXLANIPGW上没有VM与所述交换设备之间的数据流时,执行迁徙动作。
9.根据权利要求8所述的装置,其特征在于,
所述路由发布模块,还用于在本设备完成迁徙动作并重新加入所述SDN之后,将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级后发布给VTEP,将到该VM的静态路由的优先级恢复为降低前的优先级后发布给所述交换设备。
10.根据权利要求9所述的装置,其特征在于,所述路由发布模块包括:命令接收单元、降低单元和发送单元;所述迁徙模块包括:迁徙命令接收单元和迁徙动作执行单元;其中:
所述命令接收单元,用于接收所述控制器发来的网关迁徙命令;还用于接收所述控制器发来的第一配置命令;还用于接收所述控制器发来的第二配置命令;
所述降低单元,用于根据所述命令接收单元接收到的第一配置命令将携带VTEPIP地址的路由的优先级降低;还用于根据所述命令接收单元接收到的第二配置命令将到VM的静态路由的优先级降低;
所述发送单元,用于在所述命令接收单元接收到所述控制器发来的网关迁徙命令之后,将本设备的相关配置信息发送给所述控制器进行保存;在所述降低单元将携带VTEPIP地址的路由的优先级降低后,将该路由发布给VTEP;在所述降低单元将到VM的静态路由的优先级降低后,将该静态路由发布给非虚拟化网络的交换设备;
所述迁徙命令接收单元,用于接收所述控制器在检测到第一VXLANIPGW上没有VM与所述交换设备之间的数据流时发来的迁徙动作执行命令;
所述迁徙动作执行单元,用于根据所述迁徙动作执行命令执行迁徙动作。
11.根据权利要求10所述的装置,其特征在于,
所述命令接收单元,还用于接收所述控制器发来的第三配置命令;还用于接收所述控制器发来的第四配置命令;
所述降低单元,还用于根据所述命令接收单元接收到的第三配置命令,将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级;还用于根据所述命令接收单元接收到的第四配置命令,将到VM的静态路由的优先级恢复为降低前的优先级;
所述发送单元,还用于在所述降低单元将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级之后,将该路由发布给VTEP;在所述降低单元将到VM的静态路由的优先级恢复为降低前的优先级之后,将该静态路由发布给所述交换设备。
12.一种基于软件定义网络SDN的网关迁徙处理装置,其特征在于,应用于SDN中的控制器,所述装置包括:
第一命令发送模块,用于向至少两个虚拟可扩展局域网因特网协议网关VXLANIPGW中要进行迁徙的第一VXLANIPGW发送第一配置命令和第二配置命令,第一配置命令中包括:将携带虚拟可扩展局域网隧道终端VTEPIP地址的路由的优先级降低,第二配置命令中包括:将到虚拟机VM的静态路由的优先级降低;其中,在第一VXLANIPGW上的路由的优先级降低之前,所述至少两个VXLANIPGW上携带所述VTEPIP地址的路由的优先级相同,且所述至少两个VXLANIPGW到VM的静态路由的优先级相同;
监测模块,用于监测第一VXLANIPGW上是否存在VM与非虚拟化网络的交换设备之间的数据流;
第二命令发送模块,用于在所述监测模块监测到第一VXLANIPGW上没有VM与非虚拟化网络的交换设备之间的数据流时,向第一VXLANIPGW发送迁徙动作执行命令。
13.根据权利要求12所述的装置,其特征在于,
所述第一命令发送模块,还用于在第一VXLANIPGW完成迁徙动作并重新加入所述SDN之后,向第一VXLANIPGW发送第三配置命令和第四配置命令,其中,第三配置命令中包括:将携带所述VTEPIP地址的路由的优先级恢复为降低前的优先级,第四配置命令中包括:将到该VM的静态路由的优先级恢复为降低前的优先级。
14.根据权利要求13所述的装置,其特征在于,还包括:第三命令发送模块、接收模块和保存模块;其中:
所述第三命令发送模块,用于在所述第一命令发送模块向第一VXLANIPGW发送第一配置命令和第二配置命令之前,向第一VXLANIPGW发送网关迁徙命令;
所述接收模块,用于接收第一VXLANIPGW在接收到网关迁徙命令之后发来的第一VXLANIPGW的相关配置信息;
所述保存模块,用于保存所述接收模块接收到的第一VXLANIPGW的相关配置信息;
所述第一命令发送模块具体用于根据所述保存模块保存的第一VXLANIPGW的相关配置信息,向第一VXLANIPGW发送第三配置命令和第四配置命令。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410325755.9A CN105471740B (zh) | 2014-07-09 | 2014-07-09 | 基于软件定义网络的网关迁徙处理方法及装置 |
PCT/CN2015/083575 WO2016004874A1 (en) | 2014-07-09 | 2015-07-08 | Software defined network-based gateway migration processing |
US15/324,978 US10243830B2 (en) | 2014-07-09 | 2015-07-08 | Software defined network-based gateway migation processing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410325755.9A CN105471740B (zh) | 2014-07-09 | 2014-07-09 | 基于软件定义网络的网关迁徙处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105471740A true CN105471740A (zh) | 2016-04-06 |
CN105471740B CN105471740B (zh) | 2018-10-12 |
Family
ID=55063592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410325755.9A Active CN105471740B (zh) | 2014-07-09 | 2014-07-09 | 基于软件定义网络的网关迁徙处理方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10243830B2 (zh) |
CN (1) | CN105471740B (zh) |
WO (1) | WO2016004874A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147580A (zh) * | 2017-06-23 | 2017-09-08 | 北京佰才邦技术有限公司 | 一种隧道建立的方法及通信系统 |
CN107306215A (zh) * | 2016-04-18 | 2017-10-31 | 中国移动通信集团江西有限公司 | 一种数据处理方法、系统及节点 |
CN107547373A (zh) * | 2017-07-17 | 2018-01-05 | 新华三技术有限公司 | 一种报文转发方法、装置、设备及机器可读存储介质 |
CN107682275A (zh) * | 2016-08-01 | 2018-02-09 | 新华三技术有限公司 | 报文监控方法及装置 |
CN107911250A (zh) * | 2017-11-28 | 2018-04-13 | 新华三技术有限公司 | 一种堆叠系统及其防止流量丢失的方法 |
CN108574635A (zh) * | 2017-03-09 | 2018-09-25 | 华为技术有限公司 | 一种路由优先级配置方法、设备以及控制器 |
CN107846342B (zh) * | 2016-09-20 | 2020-11-06 | 华为技术有限公司 | 一种vxlan报文的转发方法、设备及系统 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9647883B2 (en) | 2014-03-21 | 2017-05-09 | Nicria, Inc. | Multiple levels of logical routers |
US10129180B2 (en) | 2015-01-30 | 2018-11-13 | Nicira, Inc. | Transit logical switch within logical router |
US10129142B2 (en) | 2015-08-11 | 2018-11-13 | Nicira, Inc. | Route configuration for logical router |
US10075363B2 (en) | 2015-08-31 | 2018-09-11 | Nicira, Inc. | Authorization for advertised routes among logical routers |
US10095535B2 (en) | 2015-10-31 | 2018-10-09 | Nicira, Inc. | Static route types for logical routers |
EP3437259B1 (en) * | 2016-03-31 | 2024-06-19 | Alibaba Group Holding Limited | Interworking between physical network and virtual network |
CN107332812B (zh) * | 2016-04-29 | 2020-07-07 | 新华三技术有限公司 | 网络访问控制的实现方法及装置 |
US10153973B2 (en) | 2016-06-29 | 2018-12-11 | Nicira, Inc. | Installation of routing tables for logical router in route server mode |
US10454758B2 (en) * | 2016-08-31 | 2019-10-22 | Nicira, Inc. | Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP |
KR102168047B1 (ko) | 2016-09-26 | 2020-10-20 | 난트 홀딩스 아이피, 엘엘씨 | 클라우드 네트워크들에서의 가상 회로들 |
CN108418740B (zh) * | 2018-02-28 | 2020-09-08 | 新华三技术有限公司 | 报文处理方法及装置 |
US11252192B1 (en) * | 2018-09-28 | 2022-02-15 | Palo Alto Networks, Inc. | Dynamic security scaling |
CN111736958B (zh) * | 2020-06-29 | 2023-06-30 | 中国联合网络通信集团有限公司 | 虚拟机迁移方法、系统、计算机设备及存储介质 |
US11178041B1 (en) * | 2020-07-07 | 2021-11-16 | Juniper Networks, Inc. | Service chaining with physical network functions and virtualized network functions |
CN114374637B (zh) * | 2021-12-23 | 2023-12-26 | 新华三技术有限公司合肥分公司 | 一种路由处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546351A (zh) * | 2012-03-15 | 2012-07-04 | 北京邮电大学 | openflow网络和现有IP网络互联的系统和方法 |
CN102821023A (zh) * | 2012-08-07 | 2012-12-12 | 杭州华三通信技术有限公司 | 一种vlan配置动态迁移的方法及装置 |
CN103200094A (zh) * | 2013-03-14 | 2013-07-10 | 成都卫士通信息产业股份有限公司 | 一种实现网关动态负载分配的方法 |
US20130266015A1 (en) * | 2012-04-09 | 2013-10-10 | Futurewei Technologies, Inc. | L3 Gateway for VXLAN |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022328B (zh) * | 2007-03-26 | 2011-07-20 | 杭州华三通信技术有限公司 | 一种实现冗余网关路径开销动态调整的方法及网关设备 |
US9191262B2 (en) * | 2013-02-22 | 2015-11-17 | Dell Products L.P. | Network communication protocol processing optimization system |
US9001666B2 (en) * | 2013-03-15 | 2015-04-07 | Twilio, Inc. | System and method for improving routing in a distributed communication platform |
US20140376550A1 (en) * | 2013-06-24 | 2014-12-25 | Vmware, Inc. | Method and system for uniform gateway access in a virtualized layer-2 network domain |
US9716687B2 (en) * | 2014-06-19 | 2017-07-25 | Cisco Technology, Inc. | Distributed gateways for overlay networks |
US9419897B2 (en) * | 2014-06-30 | 2016-08-16 | Nicira, Inc. | Methods and systems for providing multi-tenancy support for Single Root I/O Virtualization |
-
2014
- 2014-07-09 CN CN201410325755.9A patent/CN105471740B/zh active Active
-
2015
- 2015-07-08 US US15/324,978 patent/US10243830B2/en active Active
- 2015-07-08 WO PCT/CN2015/083575 patent/WO2016004874A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546351A (zh) * | 2012-03-15 | 2012-07-04 | 北京邮电大学 | openflow网络和现有IP网络互联的系统和方法 |
US20130266015A1 (en) * | 2012-04-09 | 2013-10-10 | Futurewei Technologies, Inc. | L3 Gateway for VXLAN |
CN102821023A (zh) * | 2012-08-07 | 2012-12-12 | 杭州华三通信技术有限公司 | 一种vlan配置动态迁移的方法及装置 |
CN103200094A (zh) * | 2013-03-14 | 2013-07-10 | 成都卫士通信息产业股份有限公司 | 一种实现网关动态负载分配的方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107306215A (zh) * | 2016-04-18 | 2017-10-31 | 中国移动通信集团江西有限公司 | 一种数据处理方法、系统及节点 |
CN107682275B (zh) * | 2016-08-01 | 2020-08-04 | 新华三技术有限公司 | 报文监控方法及装置 |
CN107682275A (zh) * | 2016-08-01 | 2018-02-09 | 新华三技术有限公司 | 报文监控方法及装置 |
US10938679B2 (en) | 2016-08-01 | 2021-03-02 | New H3C Technologies Co., Ltd. | Packet monitoring |
CN107846342B (zh) * | 2016-09-20 | 2020-11-06 | 华为技术有限公司 | 一种vxlan报文的转发方法、设备及系统 |
US10917262B2 (en) | 2016-09-20 | 2021-02-09 | Huawei Technologies Co., Ltd. | VXLAN packet forwarding method, device, and system |
CN108574635A (zh) * | 2017-03-09 | 2018-09-25 | 华为技术有限公司 | 一种路由优先级配置方法、设备以及控制器 |
US11018990B2 (en) | 2017-03-09 | 2021-05-25 | Huawei Technologies Co., Ltd. | Route priority configuration method, device, and controller |
CN108574635B (zh) * | 2017-03-09 | 2021-06-22 | 华为技术有限公司 | 一种路由优先级配置方法、设备以及控制器 |
CN107147580A (zh) * | 2017-06-23 | 2017-09-08 | 北京佰才邦技术有限公司 | 一种隧道建立的方法及通信系统 |
CN107147580B (zh) * | 2017-06-23 | 2020-09-25 | 北京佰才邦技术有限公司 | 一种隧道建立的方法及通信系统 |
CN107547373A (zh) * | 2017-07-17 | 2018-01-05 | 新华三技术有限公司 | 一种报文转发方法、装置、设备及机器可读存储介质 |
CN107911250A (zh) * | 2017-11-28 | 2018-04-13 | 新华三技术有限公司 | 一种堆叠系统及其防止流量丢失的方法 |
CN107911250B (zh) * | 2017-11-28 | 2021-08-24 | 新华三技术有限公司 | 一种堆叠系统及其防止流量丢失的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20170207992A1 (en) | 2017-07-20 |
US10243830B2 (en) | 2019-03-26 |
CN105471740B (zh) | 2018-10-12 |
WO2016004874A1 (en) | 2016-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105471740A (zh) | 基于软件定义网络的网关迁徙处理方法及装置 | |
US10142127B2 (en) | Methods and systems to offload overlay network packet encapsulation to hardware | |
CN104584491B (zh) | 提供分布式虚拟路由和交换(dvrs)的系统和方法 | |
CN102726007B (zh) | 用于实现和管理虚拟交换机的方法和装置 | |
CN105577548B (zh) | 一种软件定义网络中报文处理方法和装置 | |
CN105577417B (zh) | 基于vxlan网络的报文转发方法及装置 | |
CN105656796B (zh) | 实现虚拟扩展局域网三层转发的方法和装置 | |
CN104170331B (zh) | 用于vxlan的l3网关 | |
JP5991424B2 (ja) | パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム | |
US9686179B2 (en) | Network relay system and switching device | |
CN105323136A (zh) | 信息的处理方法及装置 | |
EP3054634B1 (en) | Scheme for performing one-pass tunnel forwarding function on two-layer network structure | |
US20150163072A1 (en) | Virtual Port Extender | |
US11509581B2 (en) | Flow-based local egress in a multisite datacenter | |
CN106209553A (zh) | 报文处理方法、设备及系统 | |
CN103905325B (zh) | 二层网络数据传送方法及网络节点 | |
CN103929367B (zh) | 一种负载均衡的方法和装置 | |
CN112511432B (zh) | 一种Overlay网络虚拟化SFC路由配置、传输方法及系统 | |
CN111556110B (zh) | 一种用于私有云系统的不同物理业务网络自动化适配方法 | |
CN118592014A (zh) | 基于标签的跨区域区段管理 | |
CN105917617A (zh) | 针对校园网中的线路速率性能的单跳叠加架构 | |
JP6402078B2 (ja) | ネットワークシステムおよびパケット転送方法 | |
EP3018866A1 (en) | Signaling aliasing capability in data centers | |
US10205682B2 (en) | Fabric access tunnels | |
CN103428252B (zh) | 一种云计算虚拟机迁移的方法、设备及系统 |
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 |
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. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |