CN111736958A - 虚拟机迁移方法、系统、计算机设备及存储介质 - Google Patents

虚拟机迁移方法、系统、计算机设备及存储介质 Download PDF

Info

Publication number
CN111736958A
CN111736958A CN202010605934.3A CN202010605934A CN111736958A CN 111736958 A CN111736958 A CN 111736958A CN 202010605934 A CN202010605934 A CN 202010605934A CN 111736958 A CN111736958 A CN 111736958A
Authority
CN
China
Prior art keywords
virtual machine
vtep
address table
mac address
belongs
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
CN202010605934.3A
Other languages
English (en)
Other versions
CN111736958B (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202010605934.3A priority Critical patent/CN111736958B/zh
Publication of CN111736958A publication Critical patent/CN111736958A/zh
Application granted granted Critical
Publication of CN111736958B publication Critical patent/CN111736958B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • 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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Abstract

本公开提供一种虚拟机迁移方法、系统、计算机设备及存储介质,所述方法包括:ARP代理网关在虚拟机迁移后获知虚拟机迁移后所归属的VTEP;更新ARP表项中虚拟机的VTEP信息;发送第一消息到原VTEP,使原VTEP在MAC地址表项中删除该虚拟机的地址表项,并使其发送第二消息到其余VTEP,使其余VTEP同样进行删除;发送第三消息到迁移后所归属的VTEP,使迁移后所归属VTEP在MAC地址表项中生成迁移后虚拟机的地址表项,并使其发送第四消息到其余VTEP,使其余VTEP同样生成迁移后虚拟机的地址表项。本公开的技术方案可以使VTEP更新虚拟机的地址表项,保障虚拟机迁移后的正常使用。

Description

虚拟机迁移方法、系统、计算机设备及存储介质
技术领域
本公开属于通信技术领域,具体涉及一种虚拟机迁移方法,一种虚拟机迁移系统,一种计算机设备,以及一种计算机可读存储介质。
背景技术
VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)是基于IP网络、采用“MAC(Media Access Control Address,媒体存取控制位址)in UDP(User Datagram Protocol,用户数据报协议)”封装形式的二层VPN(Virtual Private Network,虚拟专用网络)技术。VXLAN可以基于已有的服务提供商或企业IP网络,为分散的物理站点提供二层互联,并能够为不同的租户提供业务隔离。VXLAN主要应用于数据中心网络。
EVPN(Ethernet Virtual Private Network,以太网虚拟专用网络)是一种二层VPN技术,控制平面采用MP-BGP(Multiprotocol Extension-Border Gateway Protocol多协议扩展边界网关协议)通告EVPN路由信息,数据平面采用VXLAN封装方式转发报文。在EVPN运行过程中,当某个物理服务器上虚拟的主机过多时,就会发生资源不足,运行缓慢的情况。为了避免此情形的产生,就需要进行虚拟机迁移,将虚拟机从负荷较大的服务器迁移到负荷小的服务器,进而实现资源的充分利用。
在现有的虚拟机迁移技术中,需要通过迁徙扩展团体属性值即number值,来获知虚拟机最新迁移到的服务器;例如,当VM(Virtual Machine,虚拟机)1从VTEP(VXLANTunnel End Point,VXLAN隧道端点)1迁徙到VTEP3之后,VTEP3将对应于VM1的携带有迁徙扩展团体属性值的EVPN路由信息同步给VTEP1和VTEP2;VM1每次发生1次迁徙,VTEP维护number加1。VTEP1和VTEP2在接收到EVPN路由信息后,将EVPN路由信息中number值与自身维护的number值进行比较,当EVPN路由信息中number值大于维护的number值时,进行VM1迁徙的转发表项切换动作。但是,当VM在多个VTEP之间反复迁徙时,若VTEP之间发生网络阻塞时,则可能会导致迁徙的number值不能很好进行同步记录,这样就会出现VM1迁徙之后,VM1当前所在的目标VTEP下发的number值小于源VTEP和同步VTEP(简称其他VTEP)当前记录的number值,VTEP无法进行VM1迁徙的转发表项切换动作,VTEP保存的VM1的信息与VM1的实际信息不符,进而导致迁徙后功能失败的问题。
因此,亟需寻找一种新的虚拟机迁移方案。
发明内容
本公开提供一种虚拟机迁移方法、系统、计算机设备及计算机可读存储介质,能够使所有VTEP及时在本地MAC地址表项中更新关于迁移虚拟机的地址表项,保障虚拟机迁移后的正常使用。
第一方面,本公开实施例提供一种虚拟机迁移方法,应用于ARP(AddressResolution Protocol,地址解析协议)代理网关,包括:
当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;
发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
第二方面,本公开实施例提供一种虚拟机迁移系统,包括:地址解析协议ARP代理网关,所述ARP代理网关包括获取模块、更新模块和发送模块;
所述获取模块设置为当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
所述更新模块设置为基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
所述发送模块设置为发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;以及,
发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
第三方面,本公开实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行如第一方面中任一所述的虚拟机迁移方法。
第四方面,本公开实施例还提供一种计算机可读存储介质,包括:计算机程序,当其在计算机上运行时,使得计算机执行如第一方面中任一所述的虚拟机迁移方法。
有益效果:
本公开提供的虚拟机迁移方法、系统、计算机设备及计算机可读存储介质,通过ARP代理网关在虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;更新ARP表项中虚拟机的地址表项中的VTEP信息;然后发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;再发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。本公开技术方案提供一种新的虚拟机迁移方法,在获取虚拟机迁移信息后,修改虚拟机ARP地址表项,并及时通知原归属VTEP和迁移后归属的VTEP,使所有VTEP及时在本地MAC地址表项中更新关于迁移虚拟机的地址表项,解决了VTEP无法进行VM迁徙的转发表项切换动作导致迁徙后功能失败的问题;保障虚拟机迁移后的正常使用。
附图说明
图1为本公开实施例一提供的一种虚拟机迁移方法的流程图;
图2为本公开实施例三提供的一种虚拟机迁移系统的架构图。
具体实施方式
为使本领域技术人员更好地理解本公开的技术方案,下面结合附图和实施例对本公开作进一步详细描述。
其中,在本公开实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚的表示其他含义。
VXLAN技术将已有的三层物理网络作为Underlay(基础架构层)网络,在其上构建出虚拟的二层网络,即Overlay(用户层)网络。Overlay网络通过封装技术、利用Underlay网络提供的三层转发路径,实现租户二层报文跨越三层网络在不同站点间传递。对于租户来说,Underlay网络是透明的,同一租户的不同站点就像工作在一个局域网中。VXLAN的典型网络模型包括如下几部分:
1、VM(Virtual Machine,虚拟机):在一台服务器上可以创建多台虚拟机,不同的虚拟机可以属于不同的VXLAN。属于相同VXLAN的虚拟机处于同一个逻辑二层网络,彼此之间二层互通;属于不同VXLAN的虚拟机之间二层隔离。VXLAN通过VXLAN ID来标识,VXLAN ID又称VNI(VXLAN Network Identifier,VXLAN网络标识符),其长度为24比特。
2、VTEP(VXLAN Tunnel End Point,VXLAN隧道端点):VXLAN的边缘设备。VXLAN的相关处理都在VTEP上进行,例如识别以太网数据帧所属的VXLAN、基于VXLAN对数据帧进行二层转发、封装/解封装报文等。VTEP可以是一台独立的物理设备,也可以是虚拟机所在的服务器。
3、VXLAN隧道:两个VTEP之间的点到点逻辑隧道。VTEP为数据帧封装VXLAN头、UDP头和IP头后,通过VXLAN隧道将封装后的报文转发给远端VTEP,远端VTEP对其进行解封装。
4、核心设备:IP核心网络中的设备。核心设备不参与VXLAN处理,仅需要根据封装后报文的目的IP地址对报文进行三层转发。
5、VSI(Virtual Switch Instance,虚拟交换实例):VTEP上为一个VXLAN提供二层交换服务的虚拟交换实例。VSI可以看作是VTEP上的一台基于VXLAN进行二层转发的虚拟交换机,它具有传统以太网交换机的所有功能,包括源MAC地址学习、MAC地址老化、泛洪等。VSI与VXLAN一一对应。
6、AC(Attachment Circuit,接入电路):VTEP连接本地站点的物理电路或虚拟电路。在VTEP上,与VSI关联的三层接口或以太网服务实例(service instance)称为AC。其中,以太网服务实例在二层以太网接口上创建,它定义了一系列匹配规则,用来匹配从该二层以太网接口上接收到的数据帧。1个二层物理口下面配置了服务实例AC。
EVPN是一种二层VPN技术,在数据平面采用VXLAN封装方式转发报文,EVPN相比较VXLAN的优势在于:
A、简化配置:通过MP-BGP实现VTEP自动发现、VXLAN隧道自动建立、VXLAN隧道与VXLAN自动关联,无需用户手工配置,降低网络部署难度。
B、分离控制平面与数据平面:控制平面负责发布路由信息,数据平面负责转发报文,分工明确,易于管理。
在EVPN运行过程中,常常需要进行虚拟机的迁移,而在现有的虚拟机迁移技术中,需要通过迁徙扩展团体属性值即number值,来获知虚拟机最新迁移到的服务器;将EVPN路由信息中number值与自身维护的number值进行比较,当EVPN路由信息中number值大于维护的number值时,进行VM迁徙的转发表项切换动作;但是,当VM在多个VTEP之间反复迁徙时,若VTEP之间发生网络阻塞时,则可能会导致迁徙的number值不能很好进行同步记录,出现VM迁徙之后,VM当前所在的目标VTEP下发的number值小于源VTEP和同步VTEP(简称其他VTEP)当前记录的number值,VTEP无法进行VM迁徙的转发表项切换动作,VTEP保存的VM1的信息与VM的实际信息不符,进而导致迁徙后功能失败的问题。
下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图1为本公开实施例一提供的一种虚拟机迁移方法的流程图,所述方法应用于地址解析协议ARP代理网关,如图1所示,包括:
步骤S101:当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
步骤S102:基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
步骤S103:发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;
步骤S104:发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
VXLAN是一种网络虚拟化技术,可以改进大型云计算在部署时的扩展问题,是对VLAN的一种扩展。VXLAN是一种功能强大的工具,可以穿透三层网络对二层进行扩展。它可通过封装流量并将其扩展到第三层网关,以此来解决VMS(Virtual Memory System,虚拟内存系统)的可移植性限制,使其可以访问在外部IP子网上的服务器;VXLAN具有如下特点:
a、支持大量的租户:使用24位的标识符,最多可支持2的24次方(16777216)个VXLAN,使支持的租户数目大规模增加,解决了传统二层网络VLAN资源不足的问题。
b、易于维护:基于IP网络组建大二层网络,使得网络部署和维护更加容易,并且可以充分地利用现有的IP网络技术,例如利用等价路由进行负载分担等;只有IP核心网络的边缘设备需要进行VXLAN处理,网络中间设备只需根据IP头转发报文,降低了网络部署的难度和费用。
EVPN是一种二层VPN技术,控制平面采用MP-BGP通告EVPN路由信息,数据平面采用VXLAN封装方式转发报文;在EVPN运行过程中,常常需要进行虚拟机的迁移,以实现资源的充分利用。由于现有技术中存在虚拟机迁移后,VTEP无法进行迁徙虚拟机迁徙的转发表项切换动作,导致迁移后虚拟机功能无法使用的问题,因此,本实施例提供一种新的虚拟机迁移技术,在虚拟机迁移后使用新的虚拟机迁徙的转发表项切换方案。
ARP是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。代理ARP是ARP协议的一个变种。对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的ARP请求会使用自己的MAC地址与目标计算机的IP地址对源计算机进行应答。
依据ARP协议,几乎所有的以太网通信都以ARP开始,所以任何以太网主机设备都支持这个协议,而且IP地址到以太网MAC地址的解析主要也是动态生成,无须网络管理员手工处理。一般情况下,如果收到的ARP报文满足以下条件中的任何一条,系统将创建或更新ARP表项,所述条件包括:ARP报文的源IP地址与入接口IP地址在同一网段,且不是广播地址,目的IP地址是本接口IP地址;或ARP报文的源IP地址与入接口IP地址在同一网段,且不是广播地址,目的IP地址是本接口的VRRP(Virtual Router Redundancy Protocol)虚拟IP地址。
ARP代理网关和云管理平台保持连接,在虚拟机迁移后,获取到迁移后的虚拟机所归属的VTEP。在ARP代理网关中具有ARP表项;获知到虚拟机迁移后,更新ARP表项中该迁移的虚拟机的地址表项中的VTEP信息;由此可以及时通知迁移前的虚拟机的原归属VTEP和迁移后虚拟机所归属的VTEP进行VM迁徙的转发表项切换动作。并同步到其余VTEP。
例如,VM1为迁移的虚拟机,VTEP1为VM1的原VTEP,VTEP3为VM1的迁移后所归属的VTEP,在系统中还具有VTEP2;当VM1从VTEP1迁徙到VTEP3之后,ARP代理网关获取VM1迁移后的VTEP,即VTEP3,将ARP表项中VM1的地址表项中的VTEP信息由VTEP1更新为VTEP3,并向VTEP1发送第一消息,告知VM1发生迁移,使VTEP1在本地媒体存取控制MAC地址表项中删除VM1的地址表项;并由VTEP1同步到其余VTEP,包括VTEP2和VTEP3,使其余VTEP在本地MAC地址表项中删除VM1的地址表项;ARP代理网关再向VTEP3发送第三消息,在VTEP3获取到VM1的入端口后,在本地媒体存取控制MAC地址表项中生成VM1的地址表项;并同步到其余VTEP,包括VTEP1和VTEP2,使其余VTEP在本地MAC地址表项中生成VM1的地址表项;当VM1要与同一个网段内的VM2通信时,VM1向上联的VTEP3发送ARP请求信息;VTEP3在本地MAC地址表项中查询到VM2的MAC地址,向VM1发送ARP响应。实现VM1与VM2的通信。
本实施例通过在获取虚拟机迁移信息后,修改ARP地址表项,并及时通知原归属VTEP和迁移后归属的VTEP,由原归属VTEP在本地MAC地址表项中删除迁移前的虚拟机的地址表项,并通知其余VTEP进行删除,由迁移后归属的VTEP在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并通知其余VTEP进行生成,使所有VTEP及时在本地MAC地址表项中更新关于迁移虚拟机的地址表项,保障虚拟机迁移后的正常使用。
进一步的,所述当虚拟机迁移后获得迁移后的虚拟机所归属的VTEP,具体包括:
当ARP代理网关在云管理平台完成虚拟机迁移后,接收所述云管理平台发送的虚拟机迁移信息,其中所述虚拟机迁移信息包括迁移后所归属的物理主机设备标识号;
根据所述迁移后所归属的物理主机设备标识号以及配置的物理主机与VTEP的连接关系表,获得迁移后的虚拟机所归属的VTEP。
云管理平台将一台主机上的虚拟机迁移到另外一台主机后向ARP代理网关发送虚拟机迁移信息;信息中包括迁移虚拟机IP地址、MAC地址、VLAN、迁移后所归属的物理主机设备标识号,ARP代理网关配置有物理机与VTEP的连接关系表,接收虚拟机迁移信息后,根据迁移后所归属的物理主机设备标识号可以从配置的物理主机与VTEP的连接关系表中推导出迁移后虚拟机所归属的VTEP。
进一步的,所述方法还包括:
ARP代理网关与所述云管理平台通过传输控制协议TCP实现对接,并通过心跳信息保持连接,同时选择一个未定义端口作为TCP数据包的端口。
传输控制协议TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,TCP将用户数据打包构成报文段,它发送数据时启动一个定时器,另一端收到数据进行确认,对失序的数据重新排序,丢弃重复的数据。有下列特点:基于流的方式;面向连接;可靠通信方式;在网络状况不佳的时候尽量降低系统由于重传带来的带宽开销;通信连接维护是面向通信的两个端点的,而不考虑中间网段和节点。ARP代理网关与云管理平台通过TCP实现对接,并通过心跳信息保存连接,使ARP代理网关可以稳定可靠的在第一时间获取云管理平台发送的消息。
进一步的,所述方法还包括:
预先定义与所述云管理平台之间通信的信息类型;
根据已定义的信息类型,与所述云管理平台之间进行通信;
其中,所述信息类型包括虚拟机生成信息、虚拟机关闭信息、虚拟机删除信息和虚拟机迁移信息;
所述虚拟机生成信息的内容包括:虚拟机IP地址、MAC地址、虚拟局域网VLAN和当前所归属物理主机设备标识号;
所述虚拟机关闭信息的内容包括:虚拟机IP地址、MAC地址和VLAN;
所述虚拟机删除信息的内容包括:虚拟机IP地址、MAC地址和VLAN;
所述虚拟机迁移信息的内容包括:虚拟机IP地址、MAC地址、VLAN和迁移后所归属的物理主机设备标识号。
ARP代理网关与云管理平台之间可以实现各种通信目标,通过定义通信的信息类型,获得不同的信息内容,并获取不同动作时的关键信息。在本实施例中,主要关注虚拟机迁移信息。
进一步的,所述ARP表项内容包括:
虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP;
所述基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息,具体包括:
将ARP表项中虚拟机的地址表项中的当前所归属的VTEP修改为迁移后的虚拟机所归属的VTEP。
ARP表项内容可以创建或更新,内容包括虚拟机IP地址、MAC地址、VLAN和所归属VTEP。
MAC地址也称为局域网地址(LAN Address)、MAC位址、以太网地址(EthernetAddress)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。在OSI模型中,第三层网络层负责IP地址,第二层数据链路层则负责MAC位址。MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址。
将将ARP表项中虚拟机的地址表项中的当前所归属的VTEP修改为迁移后的虚拟机所归属的VTEP后,ARP代理网关就可以根据表项将不同的消息发送给对应的VTEP。
进一步的,所述方法还包括:
ARP代理网关与所有VTEP通过TCP实现对接,并通过心跳信息保持连接,同时选择一个未定义端口作为TCP数据包的端口。
ARP代理网关与所有VTEP都可进行通信,并且ARP表项中可以获知VM的归属VTEP。
ARP代理网关与所有VTEP通过TCP实现对接,并通过心跳信息保存连接,使ARP代理网关可以稳定可靠的在第一时间发送消息到相应的VTEP。
进一步的,所述方法还包括:
预先定义与所有VTEP之间通信的信息类型;
根据已定义的信息类型,与相应VTEP之间进行通信;
其中,所述信息类型包括:MAC地址生成信息和MAC地址删除信息;
所述MAC地址生成信息的内容包括:虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP;
所述MAC地址删除信息的内容包括:虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP;
ARP代理网关与所有VTEP之间通信的信息类型还包括MAC地址迁移信息,所述MAC地址迁移信息的内容包括:虚拟机IP地址、MAC地址、VLAN、迁移前所归属的VTEP和迁移后所归属的VTEP,但在本实施例中并未使用。
根据不同的情况,ARP代理网关发送不同的消息类型到VTEP,使VTEP进行不同的操作,例如MAC地址生成信息使VTEP在本地MAC地址表项中生成虚拟机的地址表项;MAC地址删除信息使VTEP在本地MAC地址表项中删除虚拟机的地址表项。
进一步的,所述第一消息为所述MAC地址删除信息,所述第二消息为虚拟机路由撤销信息;
所述发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项,包括:
向迁移前的虚拟机所归属的原VTEP发送MAC地址删除信息,以使所述原VTEP在接收到所述MAC地址删除信息后,判断所述MAC地址删除信息内的当前所归属的VTEP是否为所述原VTEP;
如果不是,则丢弃接收到的数据包;
如果是,则在本地MAC地址表项中删除迁移前的虚拟机的地址表项,并向其余VTEP发送虚拟机路由撤销信息,以使所述其余VTEP在接收到虚拟机路由撤销信息后,分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项。
当ARP代理网关修改一个ARP表项中的所归属VTEP信息后,向迁移前的虚拟机所归属的VTEP如VTEP1发送MAC地址删除信息;VTEP1先判断信息中归属VTEP是否为VTEP1,防止虚拟机迁徙的转发表项切换动作出现错误,并且保证虚拟机路由撤销信息正确。在确认是VTEP1后,在本地MAC地址表项中删除迁移前的虚拟机的地址表项,并发送虚拟机路由撤销信息到其余VTEP,包括VTEP2和VTEP3。使其余VTEP都在本地MAC地址表项中删除迁移前的虚拟机的地址表项。
进一步的,所述第三消息为所述MAC地址生成信息,所述第四消息为虚拟机路由信息;
所述发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项,包括:
向迁移后的虚拟机所归属的VTEP发送MAC地址生成信息,以使迁移后的虚拟机所归属的VTEP接收到所述MAC地址生成信息后,判断所述MAC地址生成信息内的当前所归属VTEP是否为迁移后的虚拟机所归属的VTEP;
如果不是,则丢弃接收的数据包;
如果是,则在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并向其余VTEP发送虚拟机路由信息,以使其余VTEP接收到虚拟机路由信息后,分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
迁移后虚拟机所归属的VTEP3删除了本地MAC地址表项中该迁移前的虚拟机的地址表项,再接收到ARP代理网关发送的MAC地址生成信息后,判断生成信息内的所归属VTEP是否是本VTEP,即是否为VTEP3,在确认后,在本地MAC地址表项中生成迁移后的虚拟机的地址表项;并向其余VTEP发送虚拟机路由信息;包括VM1和VM2,使其余VTEP接收到虚拟机路由信息后,在本地MAC地址表项中生成迁移后的虚拟机的地址表项,由此所有的所有VTEP及时在本地MAC地址表项中更新关于迁移虚拟机的地址表项。保证虚拟机迁移后能够正常使用。
进一步的,所述在本地MAC地址表项中生成迁移后的虚拟机的地址表项,具体包括:
根据虚拟机IP地址和VLAN确定迁移后的虚拟机所归属的VXLAN网络标识符VNI;
在VNI二层广播域内向虚拟机发送因特网控制报文协议ICMP请求;
当虚拟机向其迁移后所归属的VTEP回应ICMP响应后,根据所述ICMP响应推导出虚拟机的入端口;
基于所述虚拟机的入端口在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
ICMP是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。由于迁移后归属的VTEP并未获知VM迁移到本VTEP,需要通过ICMP请求获得虚拟机的入端口,再在在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
本公开实施例通过ARP代理网关配置物理机与VTEP的连接关系;在获取虚拟机迁移信息后,修改虚拟机ARP地址表项,并及时通知原归属VTEP和迁移后归属的VTEP,使所有VTEP及时在址表项中更新关于迁移虚拟机的地址表项,解决了VTEP无法进行VM迁徙的转发表项切换动作导致迁徙后功能失败的问题;保障虚拟机迁移后的正常使用。
为了更清楚完整的描述本公开技术方案,本公开实施例二提供一种虚拟机迁移的方法,包括:
步骤S1:ARP代理网关与云管理平台通过TCP协议实现对接,选择一个未定义端口作为TCP数据包的端口,ARP代理网关与云管理平台之间通过心跳信息保持连接;
步骤S2:定义ARP代理网关与云管理平台之间通信的信息类型:包括虚拟机生成信息,虚拟机关闭信息,虚拟机删除信息,虚拟机迁移信息;虚拟机生成信息内容包括虚拟机IP地址、MAC地址、VLAN、所归属物理主机设备标识号,虚拟机关闭信息内容包括虚拟机IP地址、MAC地址、VLAN,虚拟机删除信息内容包括虚拟机IP地址、MAC地址、VLAN,虚拟机迁移信息内容包括虚拟机IP地址、MAC地址、VLAN、迁移后的所归属的物理主机设备标识号;
步骤S3:云管理平台将一台主机上的虚拟机迁移到另外一台主机后,向ARP代理网关发送虚拟机迁移信息;
步骤S4:ARP代理网关接收到虚拟机迁移信息后,根据配置的物理主机与VTEP的连接关系表,推导出虚拟机迁移后所归属的VTEP;
步骤S5:ARP代理网关将ARP表项中该虚拟机的地址表项中的当前所归属的VTEP信息修改为迁移后的虚拟机所归属的VTEP;ARP代理网关的ARP表项内容包括虚拟机IP地址、MAC地址、VLAN和当前所归属VTEP;
步骤S6:ARP代理网关与所有VTEP通过TCP实现对接,选择一个未定义端口作为TCP数据包的端口,ARP代理网关与VTEP之间通过心跳信息保持连接;
步骤S7:定义ARP代理网关与VTEP之间通信的信息类型:包括MAC地址生成信息,MAC地址删除信息和MAC地址迁移信息;MAC地址生成信息内容包括虚拟机IP地址、MAC地址、VLAN、所归属VTEP;MAC地址删除信息内容包括虚拟机IP地址、MAC地址、VLAN、所归属VTEP;MAC地址迁移信息内容包括虚拟机IP地址、MAC地址、VLAN、迁移前所归属的VTEP、迁移后所归属的VTEP;
步骤S8:当ARP代理网关修改一个ARP表项中的所归属VTEP信息后,向该迁移前的虚拟机原来所归属的VTEP如VTEP1发送MAC地址删除信息;
步骤S9:VTEP1接收到MAC地址删除信息后,首先判断删除信息内的所归属VTEP是否是本VTEP,如果删除信息内的所归属VTEP不是本VTEP则丢弃数据包,如果是则在本地MAC地址表项中删除迁移前的虚拟机的地址表项;
步骤S10:VTEP1向其余VTEP发送虚拟机路由撤销信息;
步骤S11:其余VTEP接收到虚拟机路由撤销信息后在本地MAC地址表项中删除迁移前的虚拟机的地址表项;
步骤S12:ARP代理网关向该虚拟机迁移后所归属的VTEP如VTEP3发送MAC地址生成信息;
步骤S13:VTEP3接收到MAC地址生成信息后,首先判断生成信息内的所归属VTEP是否是本VTEP,如果生成信息内的所归属VTEP不是本VTEP则丢弃数据包,如果是则根据虚拟机IP地址和VLAN信息判断虚拟机所归属的VNI;
步骤S14:VTEP3在下联的VNI二层广播域内向虚拟机发送ICMP请求;
步骤S15:虚拟机向VTEP3回应ICMP响应;
步骤S16:VTEP3接收到虚拟机的ICMP响应后,推导出虚拟机的入端口,在本地MAC地址表项中生成迁移后的虚拟机的地址表项;
步骤S17:VTEP3向其余VTEP发送虚拟机路由信息;
步骤S18:其余VTEP接收到虚拟机路由信息后在本地MAC地址表项中生成迁移后的虚拟机的地址表项;
步骤S19:当VM1要与同一个网段内的VM2通信时,VM1向上联的VTEP发送ARP请求信息;
步骤S20:VTEP在本地MAC地址表项中查询到VM2的MAC地址,向VM1发送ARP响应。
图2为本公开实施例三提供的一种虚拟机迁移系统,包括:地址解析协议ARP代理网关,所述ARP代理网关包括获取模块11、更新模块12和发送模块13;
所述获取模块11设置为当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
所述更新模块12设置为基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
所述发送模块13设置为发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;以及,
发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
进一步的,所述ARP代理网关还包括接收模块14;
所述接收14模块设置为在云管理平台完成虚拟机迁移后,接收云管理平台发送的虚拟机迁移信息;所述虚拟机迁移信息包括迁移后所归属的物理主机设备标识号;
所述获取模块11具体设置为根据所述迁移后所归属的物理主机设备标识号和配置的物理主机与可扩展虚拟局域网络的隧道端点VTEP的连接关系表,获得迁移后虚拟机所归属的VTEP。
进一步的,所述ARP代理网关还包括管理模块15,所述管理模块15包括第一TCP数据包的端口;所述第一TCP数据包的端口由一个未定义端口定义而成;设置为使ARP代理网关与云管理平台通过传输控制协议TCP实现对接,并通过心跳信息保持连接。
进一步的,所述管理模块15还包括设置单元;
所述设置单元设置为定义ARP代理网关与云管理平台之间通信的信息类型,使ARP代理网关根据已定义的信息类型,与所述云管理平台之间进行通信;
所述信息类型包括虚拟机生成信息,虚拟机关闭信息,虚拟机删除信息和虚拟机迁移信息;
所述虚拟机生成信息内容包括:虚拟机IP地址、MAC地址、虚拟局域网VLAN、所当前所归属物理主机设备标识号;
所述虚拟机关闭信息的内容包括:虚拟机IP地址、MAC地址、VLAN;
所述虚拟机删除信息的内容包括:虚拟机IP地址、MAC地址、VLAN;
所述虚拟机迁移信息的内容包括:虚拟机IP地址、MAC地址、VLAN和迁移后所归属的物理主机设备标识号。
进一步的,所述更新模块12具体设置为:
将ARP表项中该迁移的虚拟机的地址表项中的当前所归属的VTEP修改为迁移后的虚拟机所归属的VTEP。
进一步的,所述管理模块15包括第二TCP数据包的端口;所述第二TCP数据包的端口设置为使ARP代理网关与所有VTEP通过TCP实现对接,并通过心跳信息保持连接。
进一步的,所述设置单元还设置为定义ARP代理网关与VTEP之间通信的信息类型,使ARP代理网关根据已定义的信息类型,与相应VTEP之间进行通信;
所述信息类型包括:MAC地址生成信息和MAC地址删除信息;
所述MAC地址生成信息内容包括:虚拟机IP地址、MAC地址、VLAN、当前所归属VTEP;
所述MAC地址删除信息内容包括:虚拟机IP地址、MAC地址、VLAN、当前所归属VTEP。
进一步的所述发送模块13具体设置为:
向迁移前的虚拟机所归属的原VTEP发送MAC地址删除信息,以使所述原VTEP在接收到所述MAC地址删除信息后,判断所述MAC地址删除信息内的当前所归属的VTEP是否为所述原VTEP;
如果不是,则丢弃接收到的数据包;
如果是,则在本地MAC地址表项中删除迁移前的虚拟机的地址表项,并向其余VTEP发送虚拟机路由撤销信息,以使所述其余VTEP在接收到虚拟机路由撤销信息后,分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项。
进一步的所述发送模块13还设置为:
向迁移后的虚拟机所归属的VTEP发送MAC地址生成信息,以使迁移后的虚拟机所归属的VTEP接收到所述MAC地址生成信息后,判断所述MAC地址生成信息内的当前所归属VTEP是否为迁移后的虚拟机所归属的VTEP;
如果不是,则丢弃接收的数据包;
如果是,则在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并向其余VTEP发送虚拟机路由信息,以使其余VTEP接收到虚拟机路由信息后,分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
本公开实施例的虚拟机迁移系统用于实施方法实施例一中的虚拟机迁移方法,所以描述的较为简单,具体可以参见前面方法实施例一和实施例二中的相关描述,此处不再赘述。
此外,本公开实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行上述各种可能的方法。
此外,本公开实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当用户设备的至少一个处理器执行该计算机执行指令时,用户设备执行上述各种可能的方法。
其中,计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC(Application Specific Integrated Circuit,专用集成电路)中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。
可以理解的是,以上实施方式仅仅是为了说明本公开的原理而采用的示例性实施方式,然而本公开并不局限于此。对于本领域内的普通技术人员而言,在不脱离本公开的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本公开的保护范围。

Claims (10)

1.一种虚拟机迁移方法,其特征在于,应用于地址解析协议ARP代理网关,包括:
当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;
发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
2.根据权利要求1所述的方法,其特征在于,所述当虚拟机迁移后获得迁移后的虚拟机所归属的VTEP,具体包括:
当云管理平台完成虚拟机迁移后,接收所述云管理平台发送的虚拟机迁移信息,其中所述虚拟机迁移信息包括虚拟机迁移后所归属的物理主机设备标识号;
根据所述迁移后所归属的物理主机设备标识号从已配置的物理主机与VTEP的连接关系表中推导出迁移后的虚拟机所归属的VTEP。
3.根据权利要求1所述的方法,其特征在于,所述ARP表项内容包括:
虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP;
所述基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息,具体包括:
将ARP表项中虚拟机的地址表项中的当前所归属的VTEP修改为迁移后的虚拟机所归属的VTEP。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
预先定义与所有VTEP之间通信的信息类型;
根据已定义的信息类型,与相应VTEP之间进行通信;
其中,所述信息类型包括:MAC地址生成信息和MAC地址删除信息;
所述MAC地址生成信息的内容包括:虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP;
所述MAC地址删除信息的内容包括:虚拟机IP地址、MAC地址、VLAN和当前所归属的VTEP。
5.根据权利要求4所述的方法,其特征在于,所述第一消息为所述MAC地址删除信息,所述第二消息为虚拟机路由撤销信息;
所述发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项,包括:
向迁移前的虚拟机所归属的原VTEP发送MAC地址删除信息,以使所述原VTEP在接收到所述MAC地址删除信息后,判断所述MAC地址删除信息内的当前所归属的VTEP是否为所述原VTEP;
如果不是,则丢弃接收到的数据包;
如果是,则在本地MAC地址表项中删除迁移前的虚拟机的地址表项,并向其余VTEP发送虚拟机路由撤销信息,以使所述其余VTEP在接收到虚拟机路由撤销信息后,分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项。
6.根据权利要求4所述的方法,其特征在于,所述第三消息为所述MAC地址生成信息,所述第四消息为虚拟机路由信息;
所述发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项,包括:
向迁移后的虚拟机所归属的VTEP发送MAC地址生成信息,以使迁移后的虚拟机所归属的VTEP接收到所述MAC地址生成信息后,判断所述MAC地址生成信息内的当前所归属VTEP是否为迁移后的虚拟机所归属的VTEP;
如果不是,则丢弃接收的数据包;
如果是,则在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并向其余VTEP发送虚拟机路由信息,以使其余VTEP接收到虚拟机路由信息后,分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
7.根据权利要求6所述的方法,其特征在于,所述在本地MAC地址表项中生成迁移后的虚拟机的地址表项,具体包括:
根据虚拟机IP地址和VLAN确定迁移后的虚拟机所归属的VXLAN网络标识符VNI;
在VNI二层广播域内向虚拟机发送因特网控制报文协议ICMP请求;
当虚拟机向其迁移后所归属的VTEP回应ICMP响应后,根据所述ICMP响应推导出虚拟机的入端口;
基于所述虚拟机的入端口在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
8.一种虚拟机迁移系统,其特征在于,包括:地址解析协议ARP代理网关,所述ARP代理网关包括获取模块、更新模块和发送模块;
所述获取模块设置为当虚拟机迁移后获得迁移后的虚拟机所归属的可扩展虚拟局域网络的隧道端点VTEP;
所述更新模块设置为基于迁移后的虚拟机所归属的VTEP,更新ARP表项中虚拟机的地址表项中的VTEP信息;
所述发送模块设置为发送第一消息到迁移前的虚拟机所归属的原VTEP,以使所述原VTEP根据所述第一消息在本地媒体存取控制MAC地址表项中删除迁移前的虚拟机的地址表项,并使所述原VTEP发送第二消息到其余VTEP,以使所述其余VTEP根据所述第二消息分别在本地MAC地址表项中删除迁移前的虚拟机的地址表项;以及,
发送第三消息到迁移后的虚拟机所归属的VTEP,以使迁移后的虚拟机所归属的VTEP根据所述第三消息在本地MAC地址表项中生成迁移后的虚拟机的地址表项,并使迁移后的虚拟机所归属的VTEP发送第四消息到其余VTEP,以使其余VTEP根据所述第四消息分别在本地MAC地址表项中生成迁移后的虚拟机的地址表项。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行根据权利要求1-7中任一项中所述的虚拟机迁移方法。
10.一种计算机可读存储介质,包括:计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-7中任一项所述的虚拟机迁移方法。
CN202010605934.3A 2020-06-29 2020-06-29 虚拟机迁移方法、系统、计算机设备及存储介质 Active CN111736958B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010605934.3A CN111736958B (zh) 2020-06-29 2020-06-29 虚拟机迁移方法、系统、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010605934.3A CN111736958B (zh) 2020-06-29 2020-06-29 虚拟机迁移方法、系统、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN111736958A true CN111736958A (zh) 2020-10-02
CN111736958B CN111736958B (zh) 2023-06-30

Family

ID=72652125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010605934.3A Active CN111736958B (zh) 2020-06-29 2020-06-29 虚拟机迁移方法、系统、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN111736958B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565476A (zh) * 2020-12-01 2021-03-26 中国联合网络通信集团有限公司 虚拟机创建方法、arp代理网关及vtep
CN112948057A (zh) * 2021-03-08 2021-06-11 中国联合网络通信集团有限公司 虚拟机迁移控制方法、云管理平台、sdn管理器
CN112994928A (zh) * 2021-02-04 2021-06-18 中国联合网络通信集团有限公司 一种虚拟机的管理方法、装置及系统
CN113037883A (zh) * 2021-02-23 2021-06-25 中国联合网络通信集团有限公司 一种mac地址表项的更新方法及装置
CN113220413A (zh) * 2021-04-21 2021-08-06 新浪网技术(中国)有限公司 虚拟机迁移后清除交换机旧端口arp表项的方法及系统
CN113254148A (zh) * 2021-05-12 2021-08-13 中国联合网络通信集团有限公司 一种虚拟机的迁移方法及云管理平台
CN113590268A (zh) * 2021-08-06 2021-11-02 中国联合网络通信集团有限公司 虚拟机迁移方法、arp代理网关及vtep
CN113703921A (zh) * 2021-08-30 2021-11-26 中国联合网络通信集团有限公司 虚拟机迁移方法、装置及交换机
CN113938354A (zh) * 2021-10-12 2022-01-14 中国联合网络通信集团有限公司 路由信息更新方法、装置、电子设备和计算机可读介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218260A (zh) * 2013-03-06 2013-07-24 中国联合网络通信集团有限公司 虚拟机迁移方法和装置
CN104243265A (zh) * 2014-09-05 2014-12-24 华为技术有限公司 一种基于虚拟机迁移的网关控制方法、装置及系统
CN104243630A (zh) * 2014-09-29 2014-12-24 杭州华三通信技术有限公司 Vxlan网络中的mac地址学习方法及装置
JP2017034431A (ja) * 2015-07-31 2017-02-09 日本電信電話株式会社 通信システムおよび通信方法
US20170207992A1 (en) * 2014-07-09 2017-07-20 Hangzhou H3C Technologies Co., Ltd. Software Defined Network-Based Gateway Migration Processing
CN106998297A (zh) * 2017-03-22 2017-08-01 新华三技术有限公司 一种虚拟机迁移方法和装置
CN107579900A (zh) * 2017-10-13 2018-01-12 锐捷网络股份有限公司 从vlan网络接入vxlan网络的方法、装置及系统
CN107783815A (zh) * 2016-08-30 2018-03-09 华为技术有限公司 一种确定虚拟机迁移的方法和装置
CN107786677A (zh) * 2016-08-24 2018-03-09 迈普通信技术股份有限公司 一种arp表项更新方法及vtep设备
CN108777663A (zh) * 2018-05-31 2018-11-09 新华三技术有限公司 一种路由信息的同步方法及装置
CN109189549A (zh) * 2018-08-01 2019-01-11 新华三技术有限公司 虚拟机迁移方法及装置
CN109412925A (zh) * 2018-09-30 2019-03-01 锐捷网络股份有限公司 基于vtep的转发表项更新方法及vtep
CN110768905A (zh) * 2019-10-25 2020-02-07 新华三信息安全技术有限公司 一种路由追踪方法以及设备

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218260A (zh) * 2013-03-06 2013-07-24 中国联合网络通信集团有限公司 虚拟机迁移方法和装置
US20170207992A1 (en) * 2014-07-09 2017-07-20 Hangzhou H3C Technologies Co., Ltd. Software Defined Network-Based Gateway Migration Processing
CN104243265A (zh) * 2014-09-05 2014-12-24 华为技术有限公司 一种基于虚拟机迁移的网关控制方法、装置及系统
CN104243630A (zh) * 2014-09-29 2014-12-24 杭州华三通信技术有限公司 Vxlan网络中的mac地址学习方法及装置
JP2017034431A (ja) * 2015-07-31 2017-02-09 日本電信電話株式会社 通信システムおよび通信方法
CN107786677A (zh) * 2016-08-24 2018-03-09 迈普通信技术股份有限公司 一种arp表项更新方法及vtep设备
CN107783815A (zh) * 2016-08-30 2018-03-09 华为技术有限公司 一种确定虚拟机迁移的方法和装置
CN106998297A (zh) * 2017-03-22 2017-08-01 新华三技术有限公司 一种虚拟机迁移方法和装置
CN107579900A (zh) * 2017-10-13 2018-01-12 锐捷网络股份有限公司 从vlan网络接入vxlan网络的方法、装置及系统
CN108777663A (zh) * 2018-05-31 2018-11-09 新华三技术有限公司 一种路由信息的同步方法及装置
CN109189549A (zh) * 2018-08-01 2019-01-11 新华三技术有限公司 虚拟机迁移方法及装置
CN109412925A (zh) * 2018-09-30 2019-03-01 锐捷网络股份有限公司 基于vtep的转发表项更新方法及vtep
CN110768905A (zh) * 2019-10-25 2020-02-07 新华三信息安全技术有限公司 一种路由追踪方法以及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HYUNJEONG CHO 等: "Centralized ARP proxy server over SDN controller to cut down ARP broadcast in large-scale data center networks", 《2015 INTERNATIONAL CONFERENCE ON INFORMATION NETWORKING (ICOIN)》, pages 301 - 306 *
常德成 等: "虚拟机动态迁移方法", 《计算机应用研究》, pages 971 - 976 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565476A (zh) * 2020-12-01 2021-03-26 中国联合网络通信集团有限公司 虚拟机创建方法、arp代理网关及vtep
CN112994928B (zh) * 2021-02-04 2023-07-25 中国联合网络通信集团有限公司 一种虚拟机的管理方法、装置及系统
CN112994928A (zh) * 2021-02-04 2021-06-18 中国联合网络通信集团有限公司 一种虚拟机的管理方法、装置及系统
CN113037883B (zh) * 2021-02-23 2022-06-10 中国联合网络通信集团有限公司 一种mac地址表项的更新方法及装置
CN113037883A (zh) * 2021-02-23 2021-06-25 中国联合网络通信集团有限公司 一种mac地址表项的更新方法及装置
CN112948057B (zh) * 2021-03-08 2023-07-21 中国联合网络通信集团有限公司 虚拟机迁移控制方法、云管理平台、sdn管理器
CN112948057A (zh) * 2021-03-08 2021-06-11 中国联合网络通信集团有限公司 虚拟机迁移控制方法、云管理平台、sdn管理器
CN113220413A (zh) * 2021-04-21 2021-08-06 新浪网技术(中国)有限公司 虚拟机迁移后清除交换机旧端口arp表项的方法及系统
CN113220413B (zh) * 2021-04-21 2023-11-21 新浪技术(中国)有限公司 虚拟机迁移后清除交换机旧端口arp表项的方法及系统
CN113254148A (zh) * 2021-05-12 2021-08-13 中国联合网络通信集团有限公司 一种虚拟机的迁移方法及云管理平台
CN113590268A (zh) * 2021-08-06 2021-11-02 中国联合网络通信集团有限公司 虚拟机迁移方法、arp代理网关及vtep
CN113590268B (zh) * 2021-08-06 2023-11-24 中国联合网络通信集团有限公司 虚拟机迁移方法、arp代理网关及vtep
CN113703921A (zh) * 2021-08-30 2021-11-26 中国联合网络通信集团有限公司 虚拟机迁移方法、装置及交换机
CN113938354A (zh) * 2021-10-12 2022-01-14 中国联合网络通信集团有限公司 路由信息更新方法、装置、电子设备和计算机可读介质

Also Published As

Publication number Publication date
CN111736958B (zh) 2023-06-30

Similar Documents

Publication Publication Date Title
CN111736958B (zh) 虚拟机迁移方法、系统、计算机设备及存储介质
US11283707B2 (en) Segment routing with fast reroute for container networking
US11095558B2 (en) ASIC for routing a packet
US9448821B2 (en) Method and system for realizing virtual machine mobility
JP6475704B2 (ja) 適応オーバーレイネットワーキング
EP2982097B1 (en) Method and apparatus for exchanging ip packets among network layer 2 peers
EP2853066B1 (en) Layer-3 overlay gateways
US11743229B2 (en) Efficient ARP bindings distribution in VPN networks
US9100213B1 (en) Synchronizing VPLS gateway MAC addresses
US9300524B2 (en) Message forwarding between geographically dispersed network sites
US20220021586A1 (en) Multi-edge etherchannel (meec) creation and management
CN108199963B (zh) 报文转发方法和装置
US11509581B2 (en) Flow-based local egress in a multisite datacenter
CN113872845B (zh) 建立vxlan隧道的方法及相关设备
EP2584742B1 (en) Method and switch for sending packet
EP3605959B1 (en) Method, device and computer storage medium for implementing double control plane
CN113746717B (zh) 网络设备通信方法及网络设备通信装置
EP4033704A1 (en) Routing information transmission method and apparatus, and data center interconnection network
CN113037883B (zh) 一种mac地址表项的更新方法及装置
CN113254148A (zh) 一种虚拟机的迁移方法及云管理平台
Kempf et al. Zeppelin-A third generation data center network virtualization technology based on SDN and MPLS
CN111800327B (zh) Vxlan网络的流量分担方法、设备
CN108600073B (zh) 一种动态隧道建立方法和装置
CN108768845B (zh) 一种多归属主机路由同步方法及装置
US11700166B2 (en) Mac-sync based mechanism for bridge port failover

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant