CN113590268B - 虚拟机迁移方法、arp代理网关及vtep - Google Patents

虚拟机迁移方法、arp代理网关及vtep Download PDF

Info

Publication number
CN113590268B
CN113590268B CN202110903306.8A CN202110903306A CN113590268B CN 113590268 B CN113590268 B CN 113590268B CN 202110903306 A CN202110903306 A CN 202110903306A CN 113590268 B CN113590268 B CN 113590268B
Authority
CN
China
Prior art keywords
virtual machine
vtep
mac address
migration
information
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
Application number
CN202110903306.8A
Other languages
English (en)
Other versions
CN113590268A (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 CN202110903306.8A priority Critical patent/CN113590268B/zh
Publication of CN113590268A publication Critical patent/CN113590268A/zh
Application granted granted Critical
Publication of CN113590268B publication Critical patent/CN113590268B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • 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/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种虚拟机迁移方法、ARP代理网关及VTEP,该方法包括:接收云管理平台发送的虚拟机迁移信息,所述虚拟机迁移信息为所述云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括所述虚拟机的IP地址;根据所述IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定所述虚拟机所在的VNI内所有的VTEP;向所述虚拟机所在的VNI内所有的VTEP发送至少包括所述IP地址的MAC地址生成信息。能够提高虚拟机迁移效率。

Description

虚拟机迁移方法、ARP代理网关及VTEP
技术领域
本发明涉及可扩展虚拟局域网技术领域,具体涉及一种虚拟机迁移方法、ARP代理网关及VTEP。
背景技术
在VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网)网络中,当VM1(VirtualMachine,虚拟机)从VTEP1(VXLAN Tunnel End Point,VXLAN隧道端点)迁徙到VTEP3下后,VTEP3将VM1对应的迁徙扩展团体属性值(即number值)加1,再将携带有该number值的EVPN路由信息同步给VTEP1和其他VTEP,VTEP1和其他VTEP在接收到EVPN路由信息后,将EVPN路由信息中number值与自身维护的number值进行比较,当EVPN路由信息中number值大于维护的number值时,进行VM1迁徙的转发表项切换动作。但是,当VM在多个VTEP之间反复迁徙时,若VTEP之间发生网络阻塞,各VTEP无法准确地同步number值,则可能会出现VM1迁徙后所归属的VTEP下发的number值小于VM1迁移前所归属的VTEP以及其他VTEP当前所记录的number值,进而导致迁徙功能失败。
发明内容
为此,本发明提供一种虚拟机迁移方法、ARP代理网关及VTEP,以解决现有技术中由于虚拟机迁移方法不合理而导致的虚拟机迁移失败杂的问题。
第一方面,本发明提供一种虚拟机迁移方法,所述方法包括:
接收云管理平台发送的虚拟机迁移信息,所述虚拟机迁移信息为所述云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括所述虚拟机的IP地址;
根据所述IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定所述虚拟机所在的VNI内所有的VTEP;
向所述虚拟机所在的VNI内所有的VTEP发送至少包括所述IP地址的MAC地址生成信息。
进一步的,所述接收云管理平台发送的虚拟机迁移信息之后,所述方法还包括:
根据所述IP地址确定所述虚拟机迁移前归属的VTEP;
向所述虚拟机迁移前归属的VTEP发送至少包括所述虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供所述虚拟机迁移前归属的VTEP在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
第二方面,本发明提供一种虚拟机迁移方法,所述方法包括:
接收ARP代理网关发送的虚拟机的MAC地址生成信息;
根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口;
根据所述虚拟机的MAC地址生成信息和所述端口在本地MAC地址表项中生成所述虚拟机的地址表项。
进一步的,所述根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口,包括:
根据所述MAC地址生成信息中携带的IP地址确定所述虚拟机归属的虚拟可扩展局域网网络标识符VNI;
在所述VNI范围内广播地址解析协议ARP请求消息;
接收所述虚拟机发送的ARP响应消息;
根据所述ARP响应消息确定本VTEP上与所述虚拟机对应的端口。
进一步的,所述方法还包括:
接收所述ARP代理网关发送的所述虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识;
在所述VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
第三方面,本发明提供一种ARP代理网关,所述ARP代理网关包括:
接收模块,用于接收云管理平台发送的虚拟机迁移信息,所述虚拟机迁移信息为所述云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括所述虚拟机的IP地址;
处理模块,用于根据所述IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定所述虚拟机所在的VNI内所有的VTEP;
发送模块,用于向所述虚拟机所在的VNI内所有的VTEP发送至少包括所述IP地址的MAC地址生成信息。
进一步的,所述处理模块还用于,根据所述IP地址确定所述虚拟机迁移前归属的VTEP;
所述发送模块还用于,向所述虚拟机迁移前归属的VTEP发送至少包括所述虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供所述虚拟机迁移前归属的VTEP在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
第四方面,本发明提供一种VTEP,所述VTEP包括:
接收模块,用于接收ARP代理网关发送的虚拟机的MAC地址生成信息;
处理模块,用于根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口;以及用于根据所述虚拟机的MAC地址生成信息和所述端口在本地MAC地址表项中生成所述虚拟机的地址表项。
进一步的,所述处理模块用于:
根据所述MAC地址生成信息中携带的IP地址确定所述虚拟机归属的虚拟可扩展局域网网络标识符VNI;
在所述VNI范围内广播地址解析协议ARP请求消息;
接收所述虚拟机发送的ARP响应消息;
根据所述ARP响应消息确定本VTEP上与所述虚拟机对应的端口。
进一步的,所述接收模块还用于,接收所述ARP代理网关发送的所述虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识;
所述处理模块还用于,在所述VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
本发明提供的虚拟机迁移方法,接收云管理平台在将虚拟机从第一物理主机迁移至第二物理主机后发送的、至少包括虚拟机的IP地址的虚拟机迁移信息,根据IP地址以及本ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与VTEP之间的对应关系,确定虚拟机所在的VNI内所有的VTEP,向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息。虚拟机迁移后归属的VTEP能够根据MAC地址生成信息生成虚拟机的MAC地址表项,无需通过虚拟机迁移前归属的VTEP所同步的迁徙扩展团体属性值进行虚拟机迁徙的转发表项切换动作,也就避免了无法准确地同步number值而导致的虚拟机迁移失败问题,能够提高虚拟机迁移效率。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
图1为本发明实施例1提供的虚拟机迁移方法应用于ARP代理网关时的流程示意图一;
图2为本发明实施例2提供的虚拟机迁移方法应用于ARP代理网关时的流程示意图二;
图3为本发明实施例3提供的虚拟机迁移方法应用于VTEP时的流程示意图一;
图4为本发明实施例4提供的VTEP根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口的流程示意图;
图5为本发明实施例5提供的虚拟机迁移方法应用于VTEP时的流程示意图二;
图6为本发明实施例6提供的ARP代理网关的模块示意图;
图7为本发明实施例7提供的VTEP的模块示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
本发明提供一种虚拟机迁移方法,可以应用于包括ARP(Address ResolutionProtocol,地址解析协议)代理网关、VTEP、VM、云管理平台等设备的虚拟机迁移系统。
如图1所示,本发明实施例提供一种虚拟机迁移方法,当应用于ARP代理网关时,该方法可以包括以下步骤:
步骤11,接收云管理平台发送的虚拟机迁移信息,虚拟机迁移信息为云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括虚拟机的IP(InternetProtocol,网际协议)地址。
步骤12,根据IP地址以及本ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与VTEP之间的对应关系,确定虚拟机所在的VNI内所有的VTEP。
步骤13,向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息。
ARP代理网关可以通过TCP(Transmission Control Protocol,传输控制协议)协议与云管理平台实现对接,选择一个未定义端口作为与云管理平台传输TCP数据包的端口。并且与云管理平台之间通过心跳信息保持连接。云管理平台在将虚拟机从第一物理主机迁移至第二物理主机后,可以向ARP代理网关发送虚拟机迁移信息,除包括虚拟机的IP地址之外,虚拟机迁移信息还可以包括虚拟机的物理MAC地址、VLAN(Virtual Local AreaNetwork,虚拟局域网)信息和第二物理主机的标识。
ARP代理网关预先配置有虚拟机的IP地址与VNI之间的对应关系以及各个VTEP的VNI信息,可以根据虚拟机的IP地址查询IP地址与VNI之间的对应关系,确定虚拟机归属的VNI,然后根据各个VTEP信息的VNI信息,确定虚拟机归属的VNI内所有的VTEP。
本ARP代理网关可以通过TCP协议与VXLAN中的所有VTEP实现对接,选择一个未定义端口作为与VTEP传输TCP数据包的端口。并且与VTEP之间通过心跳信息保持连接。ARP代理网关向虚拟机所在的VNI内所有的VTEP发送至少包括虚拟机的IP地址的MAC地址生成信息,以供虚拟机所在的VNI内所有的VTEP均通过在下联的VNI内发送ARP请求来尝试获取虚拟机的ARP响应消息,由于在虚拟机所在的VNI内所有的VTEP中,必然包括虚拟机迁移后归属的VTEP,则虚拟机迁移后归属的VTEP能够获取到虚拟机的ARP响应消息以重新生成虚拟机的MAC地址表项,虚拟机能够成功完成迁移。
应当理解,所述虚拟机所在的VNI内所有的VTEP,既包括虚拟机迁移前归属的VTEP,也包括虚拟机迁移后归属的VTEP。
通过上述步骤11-13可以看出,本发明实施例提供的虚拟机迁移方法,接收云管理平台在将虚拟机从第一物理主机迁移至第二物理主机后发送的、至少包括虚拟机的IP地址的虚拟机迁移信息,根据IP地址以及本ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与VTEP之间的对应关系,确定虚拟机所在的VNI内所有的VTEP,向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息。虚拟机迁移后归属的VTEP能够根据MAC地址生成信息生成虚拟机的MAC地址表项,无需通过虚拟机迁移前归属的VTEP所同步的迁徙扩展团体属性值进行虚拟机迁徙的转发表项切换动作,也就避免了无法准确地同步number值而导致的虚拟机迁移失败问题,能够提高虚拟机迁移效率。
如图2所示,在一些实施例中,本发明实施例提供的虚拟机迁移方法,所述接收云管理平台发送的虚拟机迁移信息(即步骤11)之后,还可以包括如下步骤:
步骤21,根据IP地址确定虚拟机迁移前归属的VTEP。
步骤22,向虚拟机迁移前归属的VTEP发送至少包括虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供虚拟机迁移前归属的VTEP在本地MAC地址表项中删除虚拟机的MAC地址表项。
云管理平台与ARP代理网关之间通信的信息类型还可以包括虚拟机关闭信息、虚拟机删除信息和虚拟机生成信息。虚拟机关闭信息可以包括MAC地址、IP地址和VLAN信息。虚拟机删除信息可以包括MAC地址、IP地址和VLAN信息。虚拟机生成信息可以包括MAC地址、IP地址、VLAN信息和虚拟机归属的物理主机标识。
云管理平台可以向ARP代理网关发送虚拟机生成信息和虚拟机迁移信息,并且虚拟机在迁移前后的IP地址通常不会发生变化,因此ARP代理网关可以根据虚拟机迁移信息中携带的虚拟机的IP地址确定出虚拟机迁移前归属的VTEP。
ARP代理网关可以向虚拟机迁移前归属的VTEP发送虚拟机的MAC地址删除信息,该虚拟机归属的VTEP接收到虚拟机的MAC地址删除信息之后,在本地MAC地址表项中删除该虚拟机的地址表项,以及向同一VXLAN的其他VTEP发送虚拟机路由撤销信息,其他VTEP也将在本地MAC地址表项中删除该虚拟机的地址表项。
需要说明的是,除包括虚拟机迁移前归属的VTEP的标识之外,MAC地址删除信息还可以包括该虚拟机的MAC地址、IP地址、VLAN信息。除包括虚拟机的IP地址之外,MAC地址生成信息还可以包括虚拟机的MAC地址和VLAN信息。ARP代理网关与VTEP之间通信的信息类型除了虚拟机的MAC地址删除信息和MAC地址生成信息之外,还可以包括虚拟机的MAC地址迁移信息。MAC地址迁移信息可以包括MAC地址、IP地址、VLAN信息、迁移前归属的VTEP的标识。
如图3所示,本发明实施例提供一种虚拟机迁移方法,当应用于VTEP时,该方法可以包括以下步骤:
步骤31,接收ARP代理网关发送的虚拟机的MAC地址生成信息。
步骤32,根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口。
步骤33,根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项。
其中,虚拟机的MAC地址生成信息可以包括虚拟机的IP地址、MAC地址和VLAN信息。虚拟机迁移后所归属的VTEP可以根据虚拟机的MAC地址生成信息确定本VTEP上与虚拟机对应的端口,虚拟机迁移后所归属的VTEP与虚拟机之间即通过该端口进行通信。虚拟机迁移后所归属的VTEP可以根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项,在与该虚拟机通信时,可以查询本地MAC地址表项得到该虚拟机的MAC地址以及端口等信息。
需要说明的是,由于ARP代理网关向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息,除虚拟机迁移后所归属的VTEP之外的其他VTEP也会接收到ARP代理网关发送的虚拟机的MAC地址生成信息,并且也将尝试根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口,但虚拟机迁移后并不归属于其他VTEP,其他VTEP最终无法成功确定本VTEP上与虚拟机对应的端口。
通过上述步骤31-33可以看出,本发明实施例提供的虚拟机迁移方法,虚拟机迁移后所归属的VTEP,接收ARP代理网关发送的虚拟机的MAC地址生成信息,根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口,根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项,无需通过虚拟机迁移前归属的VTEP所同步的迁徙扩展团体属性值进行虚拟机迁徙的转发表项切换动作,也就避免了无法准确地同步number值而导致的虚拟机迁移失败问题,能够提高虚拟机迁移效率。
在根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项(即步骤33)之后,虚拟机迁移后所归属的VTEP将该虚拟机的地址信息发送给同一VXLAN的其他VTEP,以使其他VTEP在本地MAC地址表项中生成该虚拟机的MAC地址表项,能够使得其他VTEP下联的虚拟机在要与该虚拟机通信但没有该虚拟机的MAC地址时,可以直接向上联的VTEP查询得到该虚拟机的MAC地址信息,而其他VTEP无需在VXLAN范围内广播ARP请求,节约了ARP广播流量,减少了网络资源的消耗。
如图4所示,在一些实施例中,所述根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口(即步骤32),可以包括以下步骤:
步骤321,根据MAC地址生成信息中携带的IP地址确定虚拟机归属的VNI。
步骤322,在VNI范围内广播ARP请求消息。
步骤323,接收虚拟机发送的ARP响应消息。
步骤324,根据ARP响应消息确定本VTEP上与虚拟机对应的端口。
ARP代理网关向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息,所有VTEP均根据该IP地址确定虚拟机归属的VNI,并在VNI范围内广播ARP请求消息,以尝试获取虚拟机的ARP响应消息。但只有虚拟机迁移后归属的VTEP将接收到虚拟机发送的ARP响应消息,虚拟机迁移后归属的VTEP根据ARP响应消息确定本VTEP上与虚拟机对应的端口,从而可以根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项。
如图5所示,在一些实施例中,所述方法还可以包括以下步骤:
步骤41,接收ARP代理网关发送的虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识。
步骤42,在VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除虚拟机的MAC地址表项。
当ARP代理网关接收到云管理平台发送的虚拟机迁移信息时,ARP代理网关将向虚拟机迁移前归属的VTEP发送MAC地址删除信息。因此当接收到ARP代理网关发送的虚拟机的MAC地址删除信息且其中携带本VTEP的标识时,说明该虚拟机迁移前归属于本VTEP,本VTEP可以直接在本地MAC地址表项中删除虚拟机的MAC地址表项。
以下结合一个具体实施例对本发明实施例提供的虚拟机迁移方法进行简要描述。
1、ARP代理网关配置虚拟机的IP地址与VNI之间的对应关系以及各个VTEP的VNI信息。
2、ARP代理网关通过TCP协议与云管理平台实现对接,并选择一个未定义端口作为TCP数据包的端口。ARP代理网关与云管理平台之间通过心跳信息保持连接。
3、定义ARP代理网关与云管理平台之间通信的信息类型:虚拟机生成信息、虚拟机关闭信息、虚拟机删除信息和虚拟机迁移信息。其中,虚拟机生成信息包括虚拟机的IP地址、MAC地址、VLAN信息、虚拟机归属的物理主机的标识,虚拟机关闭信息包括虚拟机的IP地址、MAC地址和VLAN信息,虚拟机删除信息包括虚拟机的IP地址、MAC地址和VLAN信息,虚拟机迁移信息包括虚拟机的IP地址、MAC地址、VLAN信息和迁移后对应的物理主机标识。
4、ARP代理网关通过TCP与VXLAN网络中所有的VTEP实现对接,并选择一个未定义端口作为TCP数据包的端口。
5、ARP代理网关与VTEP之间通过心跳信息保持连接。
6、定义ARP代理网关与VTEP之间通信的信息类型:MAC地址生成信息、MAC地址删除信息和MAC地址迁移信息。其中,MAC地址生成信息包括虚拟机的IP地址、MAC地址、VLAN信息。MAC地址删除信息可以包括MAC地址、IP地址、VLAN信息和虚拟机归属的VTEP的标识。MAC地址迁移信息可以包括MAC地址、IP地址、VLAN信息、迁移前归属的VTEP的标识。
7、云管理平台将虚拟机从第一物理主机迁移至第二物理主机。
8、云管理平台向ARP代理网关发送虚拟机迁移信息。
9、ARP代理网关接收虚拟机迁移信息,向虚拟机迁移前归属的VTEP1发送MAC地址删除信息。
10、VTEP1接收到MAC地址生成信息后,判断MAC地址删除信息中携带的VTEP标识与本VTEP的标识是否一致。
11、如果不一致,则丢弃数据包。
12、如果一致,则在本地MAC地址表项中删除虚拟机的MAC地址表项。
13、VTEP1向其他VTEP发送虚拟机路由撤销信息。
14、其他VTEP在本地MAC地址表项中删除虚拟机的MAC地址表项。
15、ARP代理网关根据云管理平台发送的虚拟机迁移信息中携带的IP地址以及本地配置的IP地址与VNI之间的对应关系以及各个VTEP的VNI信息,确定虚拟机所在的VNI内所有的VTEP。
16、ARP代理网关向虚拟机所在的VNI内所有的VTEP发送MAC地址生成信息。
17、所有的VTEP根据IP地址确定虚拟机归属的VNI,并在该VNI范围内广播ARP请求消息。
18、虚拟机上联到VTEP2,向VTEP2发送ARP响应消息。
19、VTEP2根据ARP响应消息确定本VTEP上与虚拟机对应的端口。
20、VTEP2根据该端口以及ARP代理网关发送的MAC地址生成信息在本地MAC地址表项中生成虚拟机的地址表项。
21、VTEP2向同一VXLAN内的其他VTEP发送虚拟机的地址信息,该地址信息至少包括虚拟机的MAC地址以及VTEP2的标识。
22、其他VTEP接收到虚拟机的地址信息后,在本地MAC地址表项中生成虚拟机的地址表项。
23、当VM1要与同一个网段内的VM2通信时,VM1向上联的VTEP发送ARP请求信息。
24、VTEP在本地MAC地址表项中查询到VM2的MAC地址,向VM1发送ARP响应消息。
25、VM1获得VM2的MAC地址。
如图6所示,本发明实施例还提供一种ARP代理网关,该ARP代理网关可以包括:
接收模块101,用于接收云管理平台发送的虚拟机迁移信息,虚拟机迁移信息为云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括虚拟机的IP地址。
处理模块102,用于根据IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定虚拟机所在的VNI内所有的VTEP。
发送模块103,用于向虚拟机所在的VNI内所有的VTEP发送至少包括IP地址的MAC地址生成信息。
在一些实施例中,所述处理模块102还用于,根据所述IP地址确定所述虚拟机迁移前归属的VTEP。
所述发送模块103还用于,向所述虚拟机迁移前归属的VTEP发送至少包括所述虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供所述虚拟机迁移前归属的VTEP在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
如图7所示,本发明实施例还提供一种VTEP,该VTEP可以包括:
接收模块201,用于接收ARP代理网关发送的虚拟机的MAC地址生成信息。
处理模块202,用于根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口;以及用于根据虚拟机的MAC地址生成信息和端口在本地MAC地址表项中生成虚拟机的地址表项。
在一些实施例中,所述处理模块202用于:
根据所述MAC地址生成信息中携带的IP地址确定所述虚拟机归属的虚拟可扩展局域网网络标识符VNI;
在所述VNI范围内广播地址解析协议ARP请求消息;
接收所述虚拟机发送的ARP响应消息;
根据所述ARP响应消息确定本VTEP上与所述虚拟机对应的端口。
在一些实施例中,所述接收模块201还用于,接收所述ARP代理网关发送的虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识。
所述处理模块202还用于,在VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除虚拟机的MAC地址表项。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (10)

1.一种虚拟机迁移方法,其特征在于,所述方法包括:
接收云管理平台发送的虚拟机迁移信息,所述虚拟机迁移信息为所述云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括所述虚拟机的IP地址;
根据所述IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定所述虚拟机所在的VNI内所有的VTEP;
向所述虚拟机所在的VNI内所有的VTEP发送至少包括所述IP地址的MAC地址生成信息;所述虚拟机迁移后归属的VTEP根据MAC地址生成信息生成虚拟机的MAC地址表项;其中,除所述虚拟机迁移后所归属的VTEP之外,其他VTEP接收到ARP代理网关发送的虚拟机的MAC地址生成信息,尝试根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口,所述虚拟机迁移后不归属于其他VTEP。
2.根据权利要求1所述的方法,其特征在于,所述接收云管理平台发送的虚拟机迁移信息之后,所述方法还包括:
根据所述IP地址确定所述虚拟机迁移前归属的VTEP;
向所述虚拟机迁移前归属的VTEP发送至少包括所述虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供所述虚拟机迁移前归属的VTEP在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述虚拟机迁移后归属的VTEP接收所述ARP代理网关发送的虚拟机的MAC地址生成信息;
所述虚拟机迁移后归属的VTEP根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口;
所述虚拟机迁移后归属的VTEP根据所述虚拟机的MAC地址生成信息和所述端口在本地MAC地址表项中生成所述虚拟机的地址表项。
4.根据权利要求3所述的方法,其特征在于,所述根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口,包括:
根据所述MAC地址生成信息中携带的IP地址确定所述虚拟机归属的虚拟可扩展局域网网络标识符VNI;
在所述VNI范围内广播地址解析协议ARP请求消息;
接收所述虚拟机发送的ARP响应消息;
根据所述ARP响应消息确定本VTEP上与所述虚拟机对应的端口。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收所述ARP代理网关发送的所述虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识;
在所述VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
6.一种虚拟机迁移装置,所述虚拟机迁移装置包括ARP代理网关,其特征在于,所述ARP代理网关包括:
接收模块,用于接收云管理平台发送的虚拟机迁移信息,所述虚拟机迁移信息为所述云管理平台将虚拟机从第一物理主机迁移至第二物理主机后发送的,至少包括所述虚拟机的IP地址;
处理模块,用于根据所述IP地址以及本地址解析协议ARP代理网关预先配置的IP地址与VNI之间的对应关系和VNI与可扩展虚拟局域网隧道端点VTEP之间的对应关系,确定所述虚拟机所在的VNI内所有的VTEP;
发送模块,用于向所述虚拟机所在的VNI内所有的VTEP发送至少包括所述IP地址的MAC地址生成信息;所述虚拟机迁移后归属的VTEP根据MAC地址生成信息生成虚拟机的MAC地址表项;其中,除所述虚拟机迁移后所归属的VTEP之外,其他VTEP接收到ARP代理网关发送的虚拟机的MAC地址生成信息,尝试根据MAC地址生成信息确定本VTEP上与虚拟机对应的端口,所述虚拟机迁移后不归属于其他VTEP。
7.根据权利要求6所述的虚拟机迁移装置,其特征在于,所述处理模块还用于,根据所述IP地址确定所述虚拟机迁移前归属的VTEP;
所述发送模块还用于,向所述虚拟机迁移前归属的VTEP发送至少包括所述虚拟机迁移前归属的VTEP的标识的MAC地址删除信息,以供所述虚拟机迁移前归属的VTEP在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
8.根据权利要求6所述的虚拟机迁移装置,所述迁移装置还包括VTEP,其特征在于,所述VTEP包括:
接收模块,用于所述虚拟机迁移后归属的VTEP接收ARP代理网关发送的虚拟机的MAC地址生成信息;
处理模块,用于所述虚拟机迁移后归属的VTEP根据所述MAC地址生成信息确定本VTEP上与所述虚拟机对应的端口;以及用于所述虚拟机迁移后归属的VTEP根据所述虚拟机的MAC地址生成信息和所述端口在本地MAC地址表项中生成所述虚拟机的地址表项。
9.根据权利要求8所述的虚拟机迁移装置,其特征在于,所述处理模块用于:
根据所述MAC地址生成信息中携带的IP地址确定所述虚拟机归属的虚拟可扩展局域网网络标识符VNI;
在所述VNI范围内广播地址解析协议ARP请求消息;
接收所述虚拟机发送的ARP响应消息;
根据所述ARP响应消息确定本VTEP上与所述虚拟机对应的端口。
10.根据权利要求8所述的虚拟机迁移装置,其特征在于,所述接收模块还用于,接收所述ARP代理网关发送的所述虚拟机的MAC地址删除信息,获取其中携带的VTEP的标识;
所述处理模块还用于,在所述VTEP的标识与本VTEP标识一致的情况下,在本地MAC地址表项中删除所述虚拟机的MAC地址表项。
CN202110903306.8A 2021-08-06 2021-08-06 虚拟机迁移方法、arp代理网关及vtep Active CN113590268B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110903306.8A CN113590268B (zh) 2021-08-06 2021-08-06 虚拟机迁移方法、arp代理网关及vtep

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110903306.8A CN113590268B (zh) 2021-08-06 2021-08-06 虚拟机迁移方法、arp代理网关及vtep

Publications (2)

Publication Number Publication Date
CN113590268A CN113590268A (zh) 2021-11-02
CN113590268B true CN113590268B (zh) 2023-11-24

Family

ID=78255974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110903306.8A Active CN113590268B (zh) 2021-08-06 2021-08-06 虚拟机迁移方法、arp代理网关及vtep

Country Status (1)

Country Link
CN (1) CN113590268B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016034014A1 (zh) * 2014-09-05 2016-03-10 华为技术有限公司 一种基于虚拟机迁移的网关控制方法、装置及系统
CN106998286A (zh) * 2017-05-05 2017-08-01 杭州迪普科技股份有限公司 一种vxlan报文转发方法及装置
CN111736958A (zh) * 2020-06-29 2020-10-02 中国联合网络通信集团有限公司 虚拟机迁移方法、系统、计算机设备及存储介质
CN111770035A (zh) * 2020-06-30 2020-10-13 中国联合网络通信集团有限公司 Mac地址表更新方法、装置、报文发送方法及电子设备
CN112565476A (zh) * 2020-12-01 2021-03-26 中国联合网络通信集团有限公司 虚拟机创建方法、arp代理网关及vtep
CN113132364A (zh) * 2021-04-07 2021-07-16 中国联合网络通信集团有限公司 Arp拟制表项的生成方法、电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016540448A (ja) * 2013-12-11 2016-12-22 華為技術有限公司Huawei Technologies Co.,Ltd. 仮想拡張lanの通信方法、装置、及びシステム
WO2015100656A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
US9733968B2 (en) * 2015-03-16 2017-08-15 Oracle International Corporation Virtual machine (VM) migration from switched fabric based computing system to external systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016034014A1 (zh) * 2014-09-05 2016-03-10 华为技术有限公司 一种基于虚拟机迁移的网关控制方法、装置及系统
CN106998286A (zh) * 2017-05-05 2017-08-01 杭州迪普科技股份有限公司 一种vxlan报文转发方法及装置
CN111736958A (zh) * 2020-06-29 2020-10-02 中国联合网络通信集团有限公司 虚拟机迁移方法、系统、计算机设备及存储介质
CN111770035A (zh) * 2020-06-30 2020-10-13 中国联合网络通信集团有限公司 Mac地址表更新方法、装置、报文发送方法及电子设备
CN112565476A (zh) * 2020-12-01 2021-03-26 中国联合网络通信集团有限公司 虚拟机创建方法、arp代理网关及vtep
CN113132364A (zh) * 2021-04-07 2021-07-16 中国联合网络通信集团有限公司 Arp拟制表项的生成方法、电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于VXLAN的跨数据中心虚拟机动态迁移组网设计实现;魏雪梅;《中国优秀硕士学位论文全文数据库 信息科技辑》(第1期);I137-11 *

Also Published As

Publication number Publication date
CN113590268A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
EP2905930B1 (en) Processing method, apparatus and system for multicast
EP3594808B1 (en) Virtual machine migration method, switch, and virtual machine system
CN111736958B (zh) 虚拟机迁移方法、系统、计算机设备及存储介质
WO2017137008A1 (zh) 一种虚拟网络设备及相关方法
EP2086178A1 (en) Link aggregation method, device, mac frame receiving/sending method and system
JP5653912B2 (ja) マルチキャスト・グループ管理のための方法及び装置
CN113872845B (zh) 建立vxlan隧道的方法及相关设备
CN112565476A (zh) 虚拟机创建方法、arp代理网关及vtep
US11917523B2 (en) Polymorphic network control system and method supporting mobile access of terminal
WO2023125151A1 (zh) 物联网设备数据迁移系统、方法、装置及存储介质
CN105634901A (zh) 基于cas vxlan的mac地址信息同步方法及装置
CN108200199B (zh) IPV4 over IPV6隧道场景中的负载均衡系统及方法
CN112948057A (zh) 虚拟机迁移控制方法、云管理平台、sdn管理器
US11929851B2 (en) Gateway selection method, device, and system
WO2020063466A1 (zh) 接入点管理
CN104486217A (zh) 跨网络的报文转发方法和设备
CN108667735B (zh) 一种组播数据的转发方法和装置
CN113254148A (zh) 一种虚拟机的迁移方法及云管理平台
CN105763444A (zh) 一种路由同步方法及装置
CN110661710B (zh) 一种虚拟化系统的报文传输方法及装置
CN113590268B (zh) 虚拟机迁移方法、arp代理网关及vtep
CN112994928B (zh) 一种虚拟机的管理方法、装置及系统
KR100423391B1 (ko) 고속 라우터 시스템에서 분산 포워딩 테이블 처리방법
CN110809033A (zh) 报文转发方法、装置及交换服务器
CN113300931B (zh) 一种虚拟机迁移发现方法及vtep

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