[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN105471744B - 一种虚拟机迁移方法和装置 - Google Patents

一种虚拟机迁移方法和装置 Download PDF

Info

Publication number
CN105471744B
CN105471744B CN201410482536.1A CN201410482536A CN105471744B CN 105471744 B CN105471744 B CN 105471744B CN 201410482536 A CN201410482536 A CN 201410482536A CN 105471744 B CN105471744 B CN 105471744B
Authority
CN
China
Prior art keywords
address
neighborhood
source
port
vce
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
CN201410482536.1A
Other languages
English (en)
Other versions
CN105471744A (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.)
New H3C Technologies Co Ltd
Original Assignee
New 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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201410482536.1A priority Critical patent/CN105471744B/zh
Priority to US15/511,433 priority patent/US10296374B2/en
Priority to PCT/CN2015/089946 priority patent/WO2016041521A1/en
Publication of CN105471744A publication Critical patent/CN105471744A/zh
Application granted granted Critical
Publication of CN105471744B publication Critical patent/CN105471744B/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种虚拟机迁移方法,该方法包括:VCE接收到因VM迁移而上送的新增端口的信息时,若将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址,则根据全局端口表以及匹配到的目的IP地址向其管理的VFE下发到该目的IP地址的转发流表;并向其它VCE发送迁移成功消息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。基于同样的发明构思,本申请还提出一种虚拟机迁移装置,简化了SDN中控制设备的处理流程,避免了资源的浪费。

Description

一种虚拟机迁移方法和装置
技术领域
本发明涉及通信技术领域,特别涉及一种虚拟机迁移方法和装置。
背景技术
叠加(Overlay)网络,是指在一种网络架构上叠加虚拟化技术模式。其大体框架是对基础网络不进行大规模修改的条件下,实现应用在网络上的承载,并能与其它网络业务分离,并且以基于因特网协议(Internet Protocol,IP)的基础网络技术为主。Overlay的基本原理就是通过一种隧道封装技术,使得虚拟机在隧道中进行通信。
目前主要的Overlay技术主要有虚拟可扩展局域网(Virtual eXtensible LocalArea Network,VXLAN)、使用通用路由封装实现网络虚拟化(Network Virtualizationusing Generic Routing Encapsulation,NVGRE)、无状态传输协议(Stateless TransportTunneling Protocol,STT)三种。这三种二层Overlay技术的差异性就在于选择和构造隧道的不同,而底层均是IP转发。
软件定义网络(Software Defined Network,SDN)技术,是一种新型的网络通信架构,实现了对网络设备的集中控制、分布转发。在SDN技术概念中,将网络功能分为控制设备和数据通道两个部分,这两部分之间通过一个安全通道进行交互。在控制设备上,可以对其控制的网络设备进行集中管理,对网络行为进行统一编排,然后规定数据通路的转发行为。SDN技术大大增加了网络管理的可控性、灵活性。目前,SDN的具体实现有各种不同的技术,其中最主流的是OpenFlow技术。
OpenFlow使传统的二层和三层交换机具备了细粒度流转发能力,即传统的基于MAC的网包转发,基于IP的路由转发,被拓展到了基于多域网包包头描述的流转发。同时,传统的控制层面从转发设备中剥离出来,所有转发行为的决策从交换机自身“迁移”到了某个集中控制设备上。
在分布式虚拟SDN中,虚拟控制引擎(Virtual Control Engine,VCE)在向主机设备上的虚拟转发引擎(Virtual Forwarding Engine,VFE)下发转发流表时,会在VCE上也保存一份转发流表,当VCE控制的主机设备上的虚拟机迁移时,VCE能够通过查询其上保存的转发流表,重新下发转发流表到迁移的目的主机设备上的VFE。
现有实现的这种处理方式需要将VCE下发的所有的转发流表都在本地保存一份,这样会大量占用VCE的内存,造成不必要的资源浪费。
发明内容
有鉴于此,本申请提供一种虚拟机迁移方法和装置,以解决VCE上存储大量转发流表,造成的资源浪费问题。
为解决上述技术问题,本申请的技术方案是这样实现的:
一种虚拟机迁移方法,应用于分布式软件定义网络SDN中的任一虚拟控制引擎VCE上,该方法包括:
该VCE接收到因虚拟机VM迁移而上送的新增端口的信息时,若将该信息中的因特网协议IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址,则根据全局端口表以及匹配到的目的IP地址向其管理的虚拟转发引擎VFE下发到该目的IP地址的转发流表;所述第一邻居关系表为各VCE根据VFE上报的报文的源IP地址和目的IP地址生成的;
并向其它VCE发送迁移成功消息,且携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。
一种虚拟机迁移装置,应用于分布式软件定义网络SDN中的任一虚拟控制引擎VCE上,该装置包括:接收单元、生成单元、确定单元和发送单元;
所述接收单元,用于接收新增端口的信息;接收报文;
所述生成单元,用于根据所述接收单元接收到的虚拟转发引擎VFE上报的报文的源因特网协议IP地址和目的IP地址生成第一邻居关系表;
所述确定单元,用于将所述接收单元接收到的因虚拟机VM迁移而上送的新增端口的信息中的IP地址作为源IP地址在所述生成单元生成的第一邻居关系表中是否匹配到对应的目的IP地址;
所述发送单元,用于当所述确定单元确定将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,根据全局端口表以及匹配到的目的IP地址向其管理的VFE下发到该目的IP地址的转发流表;并向其它VCE发送迁移成功消息,且携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。
综上所述,本申请通过在VCE上建立并存储各VM的邻居关系,当VM迁移时,在VCE上不备份为主机下发的转发流表情况下,通过存储的邻居关系在目的主机上预先下发相关转发流表,并更新其他VCE管理的VFE上的相关转发流表,从而简化了SDN中控制设备的处理流程,避免了资源的浪费。
附图说明
图1为分布式SDN示意图;
图2为各VCE上的第一邻居关系表示意图;
图3为各VCE上的第二邻居关系表示意图;
图4为本申请具体实施例中虚拟机迁移方法流程示意图;
图5为图1中VM1-1由主机设备1迁移到主机设备4的分布式SDN示意图;
图6为本申请具体实施例中应用于上述技术的装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
本申请应用于SDN中,并在SDN中叠加虚拟化技术,该SDN包括多个VFE和VCE,每个VFE同虚拟机虚拟在一个主机设备上,VCE可以是独立的物理设备,也可以是物理设备上的虚拟设备,其中,在SDN中,VFE对应交换设备,VCE对应控制设备。
SDN中的各主机设备之间通过建立的隧道能够直接通信。
在具体实现时,各VCE还可以存在备VCE,一个VCE可以在作为一个主机设备的主VCE的同时,作为另一个主机设备的备VCE,各备VCE均同步主VCE上存储的信息即可,本申请实施例中均只描述主VCE的情况,不再描述备VCE的处理情况。
控制设备如果配置多个虚拟分布式交换机(Virtual Distributed switch,VDS)网络,对于每个VDS网络预先配置多个子网,每个子网配置对应的网段。
控制设备手工配置或者通过虚拟机管理平台获知新创建的虚拟机与VDS网络标识和子网标识的对应关系。
虚拟机管理平台在创建(Virtual Machine,VM)时,先获取控制设备上配置的VDS标识,在该VDS标识对应的VDS网络下创建VM。并将创建的VM的信息以及对应的VDS标识发送给控制设备。
VCE接收到虚拟机管理平台发送的VM信息和对应的VDS标识时,确定该VM信息中的IP地址在该VDS标识对应的VDS网络中对应的子网标识。具体为,确定该IP地址所属的网段对应的子网标识为哪个子网标识,则该IP地址对应的子网标识即属于那个子网标识,从而确定该VM信息中的MAC地址对应的子网标识。
在SDN中,VM首次上线时,与其连接的VFE会向对应的VCE上报新增端口的相关信息,具体包括:IP地址、MAC地址、端口号、主机设备标识、本端隧道IP地址等。
各VCE接收到其管理的VFE上报的新增端口的信息时,在本地的全局端口表中生成该VFE上报的端口的全局端口表项,并确定该新增端口的信息中的MAC地址对应的子网标识。生成的全局端口表项包含的内容为:IP地址、MAC地址、端口号、子网标识、主机设备标识、隧道IP地址。
其中,IP地址为通过该新增端口连接的VM的IP地址,MAC地址为该VM的MAC地址,端口号为该VM与VFE连接的端口的端口号,即新增端口的端口号,主机设备标识为该VFE所在的主机设备的标识,隧道IP地址为该VFE所在主机设备与其它主机设备建立的隧道的本端隧道IP地址。
各VCE将本地生成的全局端口表项同步给其它VCE;在接收到其它VCE同步的全局端口表项时,将该全局端口表项增加到本地的全局端口表中;同步完成后,各VCE上都存储了相同的全局端口表。
参见图1,图1为分布式SDN示意图。图1中以VCE为独立的物理设备为例,描述全局端口表的生成过程。图1中各VCE之间能够进行邻居关系同步,各VCE与其管理的VFE通过开放流(OpenFlow,OF)通道进行通信。
图1中,假设VM1-1、VM2-1、VM2-2和VM3-1均为在一个VDS网络下创建的VM,且VM1-1的MAC1-1对应子网标识1,VM2-1的MAC2-1对应子网标识1,VM2-2的MAC2-2对应子网标识2,VM3-1的MAC3-1对应子网标识2。
以VM1-1、VM2-1、VM2-2和VM3-1首次上线为例。VFE1感知到VM1-1上线时,向VCE1上报端口1-1的信息(IP1-1、MAC1-1、端口1-1、主机设备标识1、隧道IPT1);VFE2感知到VM2-1上线时,向VCE2上报端口2-1的信息(IP2-1、MAC2-1、端口2-1、主机设备标识2、隧道IPT2);VFE2感知到VM2-2上线时,向VCE2上报端口2-2的信息(IP2-2、MAC2-2、端口2-2、主机设备标识2、隧道IPT2);VFE3感知到VM3-1上线时,向VCE3-1上报端口3-1的信息(IP3-1、MAC3-1、端口3-1、主机设备标识3、隧道IPT3)。
VCE1、VCE2和VCE3接收到管理的VEF上报的端口信息时,确定上报的端口信息中的MAC地址对应的子网标识,并在全局端口表中生成全局端口表项,并同步给其它VCE,该网络中的各VCE上的全局端口表相同,具体参见表1,表1为VCE上全局端口表包含的内容。
IP地址 MAC地址 端口号 子网标识 主机设备标识 隧道IP地址
IP1-1 MAC1-1 1-1 1 1 IPT1
IP2-1 MAC2-1 2-1 1 2 IPT2
IP2-2 MAC2-2 2-2 2 2 IPT2
IP3-1 MAC3-1 3-1 2 3 IPT3
表1
主机设备上的VM发起通信时,若与该VM连接的VFE根据该VM发送的报文匹配不到转发流表,则该VFE会通过安全通道(如OpenFlow安全通道)将该VM发送的报文或该报文的报头相关信息上送给VCE。本文的实施例中以将VM发送的报文上送VCE为例。
本申请在具体实现时,VCE不仅同现有实现向该VFE下发转发流表,还会根据该VFE上送的报文生成邻居关系表,生成的邻居关系表为第一邻居关系表和第二邻居关系表,其中,第一邻居关系表为上送的报文的源IP地址和目的IP地址的对应关系,即第一邻居关系表包括源IP地址和目的IP地址;第二邻居关系表为上送的报文的目的IP地址和源IP地址的对应关系,即第二邻居关系表包括目的IP地址和源IP地址。
当该分布式SDN中的主机设备上的VM的IP地址全局不唯一,即存在相同的时候,本申请实施例还给出了在生成第一邻居关系表时,增加接收的报文的源MAC地址;则生成的第一邻居关系表包括:源IP地址、源MAC地址和目的IP地址;
在第一邻居关系表中进行匹配时,根据IP地址和MAC地址进行匹配;
在生成第二邻居关系表时,还将接收到的报文的目的IP地址对应的子网标识增加到第二邻居关系表中;则生成的第二邻居关系表包括:目的IP地址、子网标识和源IP地址;
在第二邻居关系表中进行匹配时,根据IP地址以及该IP地址对应的子网标识进行匹配。
本实施例中根据接收到的报文的目的IP地址获取对应的子网标识,具体为:根据该目的IP地址在全局端口表中匹配对应的子网标识,如果匹配到一个子网标识,则该匹配到的子网标识即为该目的IP地址对应的子网标识。
若控制层面配置多个VDS网络,在使用IP地址匹配子网标识时,可能匹配到多个子网标识。
如果匹配到多个子网标识,则确定能够与该接收到的报文的源IP地址和源MAC地址对应的子网通信的子网,再确定该目的IP地址属于哪个能够通信的子网所在网段,则该目的IP地址所在网段对应的子网的标识为该目的IP地址对应的子网标识。
也可以先根据该报文的源IP地址和源MAC地址确定该报文所属的VDS,并在该VDS对应的全局端口表项中进行匹配,则能匹配到唯一的子网标识。
下面仍以图1为例,给出邻居关系生成过程:
假设VCE1接收到过VM1-1发送给VM2-1的报文、VM2-2和VM3-1的报文;则VCE1生成的第一邻居关系表包含的内容见表2。VCE1生成的第二邻居关系表包含的内容见表3。其中,表3中的目的IP地址对应的子网标识为,根据该目的IP地址在全局端口表中查找到的子网标识。
源IP地址 源MAC地址 目的IP地址
IP1-1 MAC1-1 IP2-1
IP1-1 MAC1-1 IP2-2
IP1-1 MAC1-1 IP3-1
表2
目的IP地址 子网标识 源IP地址
IP2-1 1 IP1-1
IP2-2 2 IP1-1
IP3-1 2 IP1-1
表3
VCE2生成的第一邻居关系表包含的内容见表4。VCE2生成的第二邻居关系表包含的内容见表5。
源IP地址 源MAC地址 目的IP地址
IP2-1 MAC2-1 IP1-1
表4
目的IP地址 子网标识 源IP地址
IP1-1 1 IP2-1
表5
各VCE上生成了新的邻居表项后,都会向其它VCE上同步,VCE1会向VCE2、VCE3和VCE4同步本地生成的邻居关系表(第一邻居关系表和第二邻居关系表),VCE2会向VCE1、VCE3和VCE4同步本地生成的邻居关系表(第一邻居关系表和第二邻居关系表)。
各VCE新增的邻居关系表同步完成后,各VCE上的邻居关系表相同,各VCE上的第一邻居关系表包含的内容见表6;各VCE上的第二邻居关系表包含的内容见表7。
源IP地址 源MAC地址 目的IP地址
IP1-1 MAC1-1 IP2-1
IP1-1 MAC1-1 IP2-2
IP1-1 MAC1-1 IP3-1
IP2-1 MAC2-1 IP1-1
表6
目的IP地址 子网标识 源IP地址
IP2-1 1 IP1-1
IP2-2 2 IP1-1
IP3-1 2 IP1-1
IP1-1 1 IP2-1
表7
在具体实现时,为了提高遍历邻居关系表的效率,可以使用哈希表的形式分别存储生成的第一邻居关系表和第二邻居关系表。本实施例中以哈希表的形式给出邻居关系表。参见图2,图2为各VCE上的第一邻居关系表示意图。图2中的第一邻居关系表对应表6中内容。参见图3,图3为各VCE上的第二邻居关系表示意图。图3中的第二邻居关系表对应表7中的内容。
下面给出两种邻居关系表更新的情况:
1、当任一VFE上的某个转发流表老化时,通知管理该VFE的VCE该转发流表已删除,并携带该转发流表的相关信息,相关信息如进行流表匹配时的源IP地址和源MAC地址,以及目的IP地址。
该VCE接收到其管理的主机设备的VFE发送的转发流表已删除的通知时,根据该通知中携带的该转发流表的相关信息中的源IP地址和源MAC地址,在第一邻居关系表中查找到对应的邻居关系表项并删除;使用该转发流表的相关信息中的目的IP地址从全局端口表中获取对应的子网标识,并根据该子网标识以及该目的IP地址在第二邻居关系表中查找到对应的邻居关系表项并删除。
其中,所述使用该转发流表的相关信息中的目的IP地址从全局端口表中获取对应的子网标识,包括:
根据该目的IP地址在全局端口表中匹配,当匹配到一个子网标识时,确定该子网标识为该目的IP地址对应的子网标识;
当匹配到多个子网标识时,根据该相关信息中的源IP地址和源MAC地址在全局端口表中获取对应的子网标识(假设为第一子网标识),则确定与获取的子网标识(第一子网标识)对应的子网(第一子网)能够通信的子网(第二子网、第三子网、第四子网),并确定该目的IP地址所属的能够通信的子网(第二子网、第四子网),则该目的IP地址所属的网段对应的子网(如第二子网)的子网标识为该目的IP地址对应的子网标识。
该VCE在更新第一邻居关系表以及第二邻居关系表之后,通知其他VCE更新第一邻居关系表和第二邻居关系表。
如图1中VFE1上源IP地址IP1-1、源MAC地址MAC1-1和目的IP地址IP2-1对应的转发流表老化时,向VCE上送删除该转发流表的通知,携带源MAC地址MAC1-1和目的IP地址IP2-1。
VEC1接收到该通知时,使用IP1-1和MAC1-1在第一邻居关系表中匹配,匹配到一条邻居关系表项(IP1-1、MAC1-1、IP2-1),并将该邻居关系表项删除;使用IP2-1在全局端口表中获取子网标识1,则使用IP2-1和子网标识1在第二邻居关系表中进行匹配,匹配到一条邻居关系表(IP2-1、1、IP1-1),则将该邻居关系表项删除。
VCE1在更新第一邻居关系表和第二邻居关系表之后,通知其他VCE(VCE2、VCE3、VCE4)更新本地的第一邻居关系表和第二邻居关系表。
在通知时可以通知其他VCE已删除的转发流表的相关信息,也可以直接通知删除的对应转发表项,保持各VCE上的邻居关系表相同。
2、当任一VM删除时,与该VM连接的VFE会通过端口删除感知到,则向管理其的VCE上送端口删除消息,并在该消息中携带该端口的信息,与增加端口时上报的信息相同。
该VCE接收到VFE发送的端口删除消息时,根据该消息中携带的端口的信息删除与该端口的信息相关的邻居关系表,以及该VFE上的转发流表;并将该端口删除消息发送给其它VCE,使其他VCE删除与该端口删除消息中携带的端口的信息匹配的第一邻居关系表项和第二邻居关系表项,并通知其管理的主机设备上的VFE删除相关的转发流表。
该VCE根据该消息中携带的端口的信息删除与该端口的信息相关的邻居关系表,包括:
该VCE根据端口的信息中的IP地址和MAC地址在第一邻居关系表中匹配,若匹配到对应的邻居表项则删除;
根据端口的信息中的IP地址和MAC地址在全局端口表中查找对应的子网标识,并根据查找的子网标识和端口信息中的IP地址在第二邻居关系表中匹配,若匹配到对应的邻居关系表项则删除。
假设图1中的VM2-1删除,则VFE2向VCE2上送端口2-1删除消息,并携带端口的信息(IP地址IP2-1、MAC地址MAC2-1、端口号2-1)。
VCE2接收到该删除消息时,根据端口信息中的IP地址和MAC地址在第一邻居关系表中匹配,将匹配到的表项(IP2-1、MAC2-1、IP1-1)删除;并根据该端口信息中的IP地址在全局端口表中获取子网标识1,使用IP2-1和子网标识1在第二邻居关系表中匹配到对应表项(IP2-1、1、IP1-1),则将该表项删除。
VCE2通知VFE2删除与IP2-1和MAC2-1相关的所有转发流表;并将该端口删除消息发送给VCE1、VCE3和VCE4。
VCE1、VCE3和VCE4接收到端口删除消息时,同VCE2处理一致删除对应的邻居关系表项,并确定本VCE管理的主机上的VM是否向VM2-1发送过报文,如果是,则通知对应的VFE删除对应的转发流表。
下面结合附图,详细说明本申请具体实施例中如何实现虚拟机迁移,具体如下:
参见图4,图4为本申请具体实施例中虚拟机迁移方法流程示意图。具体步骤为:
步骤401,VCE接收到因VM迁移而上送的新增端口的信息时,若将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,则根据全局端口表以及匹配到的目的IP地址向本VCE管理的VFE下发到该目的IP地址的转发流表。
本步骤中该VCE根据全局端口表以及匹配到的目的IP地址向该VFE下发转发流表时,端口号和隧道IP地址为匹配到的目的IP地址在全局端口表中对应的端口号和隧道IP地址。
在具体实现时,还需根据上报的新增端口的信息更新对应的全局端口表项,此为现有实现,不再详细描述。
步骤402,该VCE向其它VCE发送迁移成功消息,并携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。
具体实现时,任一VCE接收到其它VCE发送的迁移成功消息时,若确定迁移的源主机设备为本VCE管理的主机设备,则通知VFE删除与该迁移成功消息携带的新增端口的信息中的IP地址相关的转发流表;
若确定迁移的源主机设备不为本VCE管理的主机设备,则将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配,当匹配到对应的源IP地址,且确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识时,通知其管理的VFE将与该新增端口的信息中的IP地址相关的转发流表的入端口号和隧道IP地址修改为该新增端口信息中的端口号和隧道IP地址。
VCE确定迁移的源主机设备是否为本VCE管理的主机设备的方法为:
VCE从虚拟机管理系统中获取VM迁移的源主机设备,并根据自身管理的主机设备的标识确定与VM迁移的源主机设备的标识是否相同,如果是,则确定迁移的源主机设备为本VCE管理的主机设备;否则,确定迁移的源主机设备不为本VCE管理的主机设备。
本申请实施例中VCE确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识,包括:
VCE根据该源IP地址在全局端口表中匹配,当匹配到一个子网标识时,该源IP地址和匹配到的子网标识对应的主机设备标识若与本VCE管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识;
当匹配到多个子网标识时,VCE确定该新增端口信息中的IP地址和MAC地址在全局端口表中对应的子网标识,根据该源IP地址以及与确定的子网标识对应的子网能通信的子网,确定该源IP地址对应的子网标识;若该源IP地址与确定的该源IP地址对应的子网标识在全局端口表中对应的主机设备标识与本VCE管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识。
其中,所述根据该源IP地址以及与该确定的子网标识对应的子网能通信的子网,确定该源IP地址对应的子网标识,包括:
VCE根据该相关信息中的IP地址和MAC地址在全局端口表中获取对应的子网标识(假设为第一子网标识),则确定与获取的子网标识(第一子网标识)对应的子网(第一子网)能通信的子网(第二子网、第三子网、第四子网),并确定该源IP地址所属的能够通信的子网的标识(第二子网),则该源IP地址对应的子网标识为该第二子网的子网标识。
在具体实现时,当匹配到多个子网标识时,VCE根据该新增端口信息中的MAC地址确定该VM所属的VDS网络,并在确定的VDS网络中进行该源IP地址的匹配,则能匹配到唯一的子网标识。
本实施例以VM的IP地址全局唯一为例,当各VM的IP地址全局不唯一时,VM迁移的处理过程具体如下:
参见图5,图5为图1中VM1-1由主机设备1迁移到主机设备4的分布式SDN示意图。
图5中,当主机设备1上的VM1-1迁移到主机设备4上时,主机设备4中的VFE4向VCE4上报新增端口4-2的信息,新增端口的信息包括:IP地址IP1-1、MAC地址MAC1-1、端口号4-2,隧道IP地址IPT4,其中,IP地址IP1-1和MAC地址1-1为VM1-1的IP地址和MAC地址,端口号4-2为VFE4与VM1-1相连的端口的端口号,隧道IP地址为主机设备4与其它主机设备建立的隧道的本地隧道IP地址IPT4。
VCE4根据上报的新增端口的信息中的IP地址和MAC地址在第一邻居关系表中匹配,即使用IP地址IP1-1和MAC地址MAC1-1在表6中匹配,由表6可见匹配到3条对应的表项,这3条表项中对应的目的IP地址分别为IP2-1、IP2-2和IP3-1。因此,向VFE分别下发到IP2-1、IP2-2和IP3-1的转发流表,即下发由VM1-1向VM2-1、VM2-1和VM3-1发送报文的转发流表。
在具体实现时,可以匹配到一条对应的邻居关系表项,下发一条转发流表,也可以匹配到所有对应的邻居关系表项,再分别下发对应的转发关系表项。
VCE4向其它VCE(VCE1、VCE2和VCE3)发送迁移成功消息,并携带该新增端口4-2的信息。
VCE2和VCE3接收到端口迁移成功消息时,通过VM管理系统获知本设备管理的主机设备不是VM迁移的源主机设备,则根据端口迁移成功消息中新增端口4-2中的IP地址从全局端口表中获取子网标识1,并使用获取的子网标识1和该IP地址IP1-1在第二邻居关系表中匹配,即使用IP地址IP1-1作为目的IP地址,以及子网标识1在表7中匹配,由表7可见匹配到1条对应的表项,这条表项中对应的源IP地址为IP2-1。
VCE2和VCE3分别根据该源IP地址IP2-1在全局端口表中获取对应的主机设备标识2。
VCE2确定主机设备2为本VCE管理的主机设备,则向其管理的VCE下发修改转发表项的消息,将与IP地址IP1-1和MAC地址MAC1-1相关的转发流表中对应的端口号1-1和隧道IP地址IPT1,修改为端口号4-1和隧道IP地址IPT4。修改转发表项的消息中携带:目的IP地址IP1-1、目的MAC地址1-1、端口号4和隧道IP地址IPT4,即将目的IP地址IP1-1和目的MAC地址1-1对应的转发流表中对应的端口号和隧道IP地址修改为端口号4和隧道IP地址IPT4。
VCE3确定主机设备2不为本VCE管理的主机设备,则不做处理。
VCE1接收到端口迁移成功消息时,通过VM管理系统获知本设备管理的主机设备为迁移的源主机设备,则通知VFE1删除与端口信息中的IP地址IP1-1和MAC地址MAC1-1相关的所有转发流表。
具体同样的发明构思,本申请还提出一种虚拟机迁移装置,该装置应用于分布式SDN中的任一VCE上。参见图6,图6为本申请具体实施例中应用于上述技术的装置结构示意图。该装置包括:接收单元601、生成单元602、确定单元603和发送单元604;
接收单元601,用于接收新增端口的信息;接收报文;
生成单元602,用于根据接收单元601接收到的VFE上报的报文的源IP地址和目的IP地址生成第一邻居关系表;
确定单元603,用于将接收单元接收到的新增端口的信息中的IP地址作为源IP地址在生成单元602中的第一邻居关系表中是否匹配到对应的目的IP地址;
发送单元604,用于当确定单元603确定将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,根据全局端口表以及匹配到的目的IP地址向本装置管理的VFE下发到该目的IP地址的转发流表;并向其它VCE发送迁移成功消息,且携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。
较佳地,
接收单元601,进一步用于接收迁移成功消息;
确定单元603,进一步用于确定迁移的源主机设备是否为本装置管理的主机设备;
生成单元602,进一步用于根据接收单元601接收到的VFE上报的报文的目的IP地址和源IP地址生成第二邻居关系表;
发送单元604,用于当确定单元603确定迁移的源主机设备为本装置管理的主机设备时,通知VFE删除与该迁移成功消息携带的新增端口信息中的IP地址相关的转发流表;当确定单元603确定迁移的源主机设备不为本装置管理的主机设备时,触发确定单元将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配,当匹配到对应的源IP地址,且确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识时,通知其管理的VFE将与该新增端口的信息中的IP地址相关的转发流表的入端口号和隧道IP地址修改为该新增端口信息中的端口号和隧道IP地址。
较佳地,
接收单元601,进一步用于接收其他VCE同步的第一邻居关系表项和第二邻居关系表项;
生成单元602,具体用于生成第一邻居关系表时,在接收单元601接收到VFE上送的报文时,根据该报文的源IP地址和目的IP地址在第一邻居关系表中生成第一邻居关系表项,并触发发送单元604将该第一邻居关系表项同步给其它VCE;当接收单元601接收到其它VCE同步的第一邻居关系表项时,增加到本地的第一邻居关系表中;在生成第二邻居关系表时,根据接收单元601接收到的报文的目的IP地址和源IP地址在第二邻居关系表中生成第二邻居关系表项,并触发发送单元604将该第二邻居关系表项同步给其它VCE;在接收单元601接收到其它VCE同步的第二邻居关系表项时,增加到本地生成的第二邻居关系表中。
较佳地,
生成单元602,用于当所述分布式SDN中的主机设备上的VM的IP地址全局不唯一时,在生成第一邻居关系表时,将该报文的源MAC地址增加到第一邻居关系表中,所述第一邻居关系表包括:源IP地址、源MAC地址和目的IP地址;在生成第二邻居关系表时,还根据报文的目的IP地址在全局端口表中获取对应的子网标识,将该获取的子网标识增加到第二邻居关系表中;所述第二邻居关系表包括:目的IP地址、子网标识和源IP地址;
确定单元603,具体用于将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,将该信息中的IP地址作为源IP地址,MAC地址作为源MAC地址在第一邻居关系表中匹配到对应的目的IP地址;将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配时,根据该迁移成功消息携带的新增端口的信息中的IP地址和MAC地址在全局端口表中获取该IP地址对应的子网标识,并使用获取的子网标识,以及将该IP地址作为目的IP地址在第二邻居关系表中进行匹配。
较佳地,
接收单元601,用于接收转发流表已删除的通知,接收端口删除消息;
生成单元602,用于当接收单元601接收到VFE上送的转发流表已删除的通知时,根据该通知中携带的该转发流表的相关信息中的源IP地址和源MAC地址,在第一邻居关系表中查找到对应的邻居关系表项并删除;使用该转发流表的相关信息中的目的IP地址从全局端口表中获取对应的子网标识,并根据该子网标识以及该目的IP地址在第二邻居关系表中查找到对应的邻居关系表项并删除;当接收单元601接收到VFE发送的端口删除消息时,根据该消息中携带的端口的信息删除与该端口的信息相关的第一邻居关系表项和第二邻居关系表项;
发送单元604,进一步用于通知VFE删除相关的转发流表;并将该端口删除消息发送给其它VCE,使其他VCE删除与该端口删除消息中携带的端口的信息相关的第一邻居关系表项和第二邻居关系表项,并通知其管理的主机设备上的VFE删除相关的转发流表。
较佳地,
确定单元603,具体用于确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识时,根据该源IP地址在全局端口表中匹配,当匹配到一个子网标识时,该源IP地址和匹配到的子网标识对应的主机设备标识若与本装置管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识;当匹配到多个子网标识时,确定该新增端口信息中的IP地址和MAC地址在全局端口表中对应的子网标识,根据该源IP地址以及与该确定的子网标识对应的子网通信的子网,确定该源IP地址对应的子网标识;若该源IP地址和确定的该源IP地址对应的子网标识在全局端口表中对应的主机设备标识若与本装置管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本申请通过在VCE上建立并存储各VM的邻居关系,当VM迁移时,在VCE上不备份为主机下发的转发流表情况下,通过存储的邻居关系在目的主机上预先下发相关转发流表,并更新其他VCE管理的VFE上的相关转发流表,从而简化了SDN中控制设备的处理流程,避免了资源的浪费。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (12)

1.一种虚拟机迁移方法,应用于分布式软件定义网络SDN中的任一虚拟控制引擎VCE上,其特征在于,该方法包括:
该VCE接收到因虚拟机VM迁移而上送的新增端口的信息时,若将该信息中的因特网协议IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址,则根据全局端口表以及匹配到的目的IP地址向本VCE管理的虚拟转发引擎VFE下发到该目的IP地址的转发流表;所述第一邻居关系表为各VCE根据VFE上报的报文的源IP地址和目的IP地址生成的;其中,所述全局端口表为VCE根据管理的虚拟转发引擎VFE上报的端口信息生成的端口表项;
并向其它VCE发送迁移成功消息,且携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
该VCE接收到其它VCE发送的迁移成功消息时,若确定迁移的源主机设备为本VCE管理的主机设备,则通知VFE删除与该迁移成功消息携带的新增端口信息中的IP地址相关的转发流表;
若确定迁移的源主机设备不为本VCE管理的主机设备,则将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配,当匹配到对应的源IP地址,且确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识时,通知其管理的VFE将与该新增端口的信息中的IP地址相关的转发流表的入端口号和隧道IP地址修改为该新增端口信息中的端口号和隧道IP地址;所述第二邻居关系表为各VCE根据VFE上报的报文的目的IP地址和源IP地址生成的。
3.根据权利要求2所述的方法,其特征在于,
所述第一邻居关系表为各VCE根据VFE上报的报文的源IP地址和目的IP地址生成的,包括:
该VCE接收到VFE上送的报文时,根据该报文的源IP地址和目的IP地址在第一邻居关系表中生成第一邻居关系表项,并将该第一邻居关系表项同步给其它VCE;
该VCE接收到其它VCE同步的第一邻居关系表项时,增加到本地的第一邻居关系表中;
所述第二邻居关系表为各VCE根据VFE上报的报文的目的IP地址和源IP地址生成的,包括:
该VCE接收到VFE上送的报文时,根据该报文的目的IP地址和源IP地址在第二邻居关系表中生成第二邻居关系表项,并将该第二邻居关系表项同步给其它VCE;
该VCE接收到其它VCE同步的第二邻居关系表项时,增加到本地生成的第二邻居关系表中。
4.根据权利要求3所述的方法,其特征在于,
当所述分布式SDN中的主机设备上的VM的IP地址全局不唯一时,在生成第一邻居关系表时,将该报文的源MAC地址增加到第一邻居关系表中,所述第一邻居关系表包括:源IP地址、源媒体访问控制MAC地址和目的IP地址;
所述将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,包括:将该信息中的IP地址作为源IP地址,MAC地址作为源MAC地址在第一邻居关系表中匹配到对应的目的IP地址;
在生成第二邻居关系表时,还根据报文的目的IP地址在全局端口表中获取对应的子网标识,将该获取的子网标识增加到第二邻居关系表中;所述第二邻居关系表包括:目的IP地址、子网标识和源IP地址;
所述将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配,包括:根据该迁移成功消息携带的新增端口的信息中的IP地址和MAC地址在全局端口表中获取该IP地址对应的子网标识,并使用获取的子网标识,以及将该IP地址作为目的IP地址在第二邻居关系表中进行匹配。
5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:
该VCE接收到其管理的主机设备的VFE发送的转发流表已删除的通知时,根据该通知中携带的该转发流表的相关信息中的源IP地址和源MAC地址,在第一邻居关系表中查找到对应的邻居关系表项并删除;使用该转发流表的相关信息中的目的IP地址从全局端口表中获取对应的子网标识,并根据该子网标识以及该目的IP地址在第二邻居关系表中查找到对应的邻居关系表项并删除;
该VCE接收到VFE发送的端口删除消息时,根据该消息中携带的端口的信息删除与该端口的信息相关的第一邻居关系表项和第二邻居关系表项,以及通知该VFE删除相关的转发流表;并将该端口删除消息发送给其它VCE,使其他VCE删除与该端口删除消息中携带的端口的信息匹配的第一邻居关系表项和第二邻居关系表项,并通知其管理的主机设备上的VFE删除相关的转发流表。
6.根据权利要求4或5所述的方法,其特征在于,所述确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识,包括:
根据该源IP地址在全局端口表中匹配,当匹配到一个子网标识时,该源IP地址和匹配到的子网标识对应的主机设备标识若与本VCE管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识;
当匹配到多个子网标识时,确定该新增端口信息中的IP地址和MAC地址在全局端口表中对应的子网标识,根据该源IP地址以及与该确定的子网标识对应的子网能通信的子网,确定该源IP地址对应的子网标识;若该源IP地址和确定的该源IP地址对应的子网标识在全局端口表中对应的主机设备标识与本VCE管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识。
7.一种虚拟机迁移装置,应用于分布式软件定义网络SDN中的任一虚拟控制引擎VCE上,其特征在于,该装置包括:接收单元、生成单元、确定单元和发送单元;
所述接收单元,用于接收新增端口的信息;接收报文;
所述生成单元,用于根据所述接收单元接收到的虚拟转发引擎VFE上报的报文的源因特网协议IP地址和目的IP地址生成第一邻居关系表;
所述确定单元,用于将所述接收单元接收到的因虚拟机VM迁移而上送的新增端口的信息中的IP地址作为源IP地址在所述生成单元生成的第一邻居关系表中是否匹配到对应的目的IP地址;
所述发送单元,用于当所述确定单元确定将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,根据全局端口表以及匹配到的目的IP地址向本装置管理的VFE下发到该目的IP地址的转发流表;并向其它VCE发送迁移成功消息,且携带新增端口的信息,使所述其它VCE根据该新增端口的信息更新其管理的VFE上的转发流表;其中,所述全局端口表为VCE根据管理的虚拟转发引擎VFE上报的端口信息生成的端口表项。
8.根据权利要求7所述的装置,其特征在于,
所述接收单元,进一步用于接收迁移成功消息;
所述确定单元,进一步用于确定迁移的源主机设备是否为本装置管理的主机设备;
所述生成单元,进一步用于根据所述接收单元接收到的VFE上报的报文的目的IP地址和源IP地址生成第二邻居关系表;
所述发送单元,用于当所述确定单元确定迁移的源主机设备为本装置管理的主机设备时,通知VFE删除与该迁移成功消息携带的新增端口信息中的IP地址相关的转发流表;当所述确定单元确定迁移的源主机设备不为本装置管理的主机设备时,触发确定单元将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配,当匹配到对应的源IP地址,且确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识时,通知其管理的VFE将与该新增端口的信息中的IP地址相关的转发流表的入端口号和隧道IP地址修改为该新增端口信息中的端口号和隧道IP地址。
9.根据权利要求8所述的装置,其特征在于,
所述接收单元,进一步用于接收其他VCE同步的第一邻居关系表项和第二邻居关系表项;
所述生成单元,具体用于生成第一邻居关系表时,在所述接收单元接收到VFE上送的报文时,根据该报文的源IP地址和目的IP地址在第一邻居关系表中生成第一邻居关系表项,并触发所述发送单元将该第一邻居关系表项同步给其它VCE;当所述接收单元接收到其它VCE同步的第一邻居关系表项时,增加到本地的第一邻居关系表中;在生成第二邻居关系表时,根据所述接收单元接收到的报文的目的IP地址和源IP地址在第二邻居关系表中生成第二邻居关系表项,并触发所述发送单元将该第二邻居关系表项同步给其它VCE;在所述接收单元接收到其它VCE同步的第二邻居关系表项时,增加到本地生成的第二邻居关系表中。
10.根据权利要求9所述的装置,其特征在于,
所述生成单元,用于当所述分布式SDN中的主机设备上的VM的IP地址全局不唯一时,在生成第一邻居关系表时,将该报文的源媒体访问控制MAC地址增加到第一邻居关系表中,所述第一邻居关系表包括:源IP地址、源MAC地址和目的IP地址;在生成第二邻居关系表时,还根据报文的目的IP地址在全局端口表中获取对应的子网标识,将该获取的子网标识增加到第二邻居关系表中;所述第二邻居关系表包括:目的IP地址、子网标识和源IP地址;
所述确定单元,具体用于将该信息中的IP地址作为源IP地址在第一邻居关系表中匹配到对应的目的IP地址时,将该信息中的IP地址作为源IP地址,MAC地址作为源MAC地址在第一邻居关系表中匹配到对应的目的IP地址;将该迁移成功消息携带的新增端口的信息中的IP地址作为目的IP地址在第二邻居关系表中进行匹配时,根据该迁移成功消息携带的新增端口的信息中的IP地址和MAC地址在全局端口表中获取该IP地址对应的子网标识,并使用获取的子网标识,以及将该IP地址作为目的IP地址在第二邻居关系表中进行匹配。
11.根据权利要求10所述的装置,其特征在于,
所述接收单元,用于接收转发流表已删除的通知,接收端口删除消息;
所述生成单元,用于当所述接收单元接收到VFE上送的转发流表已删除的通知时,根据该通知中携带的该转发流表的相关信息中的源IP地址和源MAC地址,在第一邻居关系表中查找到对应的邻居关系表项并删除;使用该转发流表的相关信息中的目的IP地址从全局端口表中获取对应的子网标识,并根据该子网标识以及该目的IP地址在第二邻居关系表中查找到对应的邻居关系表项并删除;当所述接收单元接收到VFE发送的端口删除消息时,根据该消息中携带的端口的信息删除与该端口的信息相关的第一邻居关系表项和第二邻居关系表项;
所述发送单元,进一步用于通知VFE删除相关的转发流表;并将该端口删除消息发送给其它VCE,使其他VCE删除与该端口删除消息中携带的端口的信息相关的第一邻居关系表项和第二邻居关系表项,并通知其管理的主机设备上的VFE删除相关的转发流表。
12.根据权利要求10或11所述的装置,其特征在于,
所述确定单元,具体用于确定该源IP地址在全局端口表中对应的主机设备标识为本VCE管理的主机设备的标识时,根据该源IP地址在全局端口表中匹配,当匹配到一个子网标识时,该源IP地址和匹配到的子网标识对应的主机设备标识若与本装置管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识;当匹配到多个子网标识时,确定该新增端口信息中的IP地址和MAC地址在全局端口表中对应的子网标识,根据该源IP地址以及与该确定的子网标识对应的子网通信的子网,确定该源IP地址对应的子网标识;若该源IP地址和确定的该源IP地址对应的子网标识在全局端口表中对应的主机设备标识若与本装置管理的主机设备的标识相同,则确定该源IP地址在全局端口表中对应的主机设备标识为本装置管理的主机设备的标识。
CN201410482536.1A 2014-09-19 2014-09-19 一种虚拟机迁移方法和装置 Active CN105471744B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410482536.1A CN105471744B (zh) 2014-09-19 2014-09-19 一种虚拟机迁移方法和装置
US15/511,433 US10296374B2 (en) 2014-09-19 2015-09-18 Migration of virtual machines
PCT/CN2015/089946 WO2016041521A1 (en) 2014-09-19 2015-09-18 Migration of virtual machines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410482536.1A CN105471744B (zh) 2014-09-19 2014-09-19 一种虚拟机迁移方法和装置

Publications (2)

Publication Number Publication Date
CN105471744A CN105471744A (zh) 2016-04-06
CN105471744B true CN105471744B (zh) 2018-10-09

Family

ID=55532574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410482536.1A Active CN105471744B (zh) 2014-09-19 2014-09-19 一种虚拟机迁移方法和装置

Country Status (3)

Country Link
US (1) US10296374B2 (zh)
CN (1) CN105471744B (zh)
WO (1) WO2016041521A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9785455B2 (en) 2013-10-13 2017-10-10 Nicira, Inc. Logical router
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US9226217B2 (en) * 2014-04-17 2015-12-29 Twilio, Inc. System and method for enabling multi-modal communication
US10511458B2 (en) * 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10348625B2 (en) 2015-06-30 2019-07-09 Nicira, Inc. Sharing common L2 segment in a virtual distributed router environment
CN108293001B (zh) * 2015-12-31 2020-10-23 华为技术有限公司 一种软件定义数据中心及其中的服务集群的部署方法
CN107465626A (zh) 2016-06-03 2017-12-12 阿里巴巴集团控股有限公司 一种虚拟机热迁移方法及装置
US10742498B2 (en) 2016-06-22 2020-08-11 Amazon Technologies, Inc. Application migration system
CN112486627B (zh) * 2016-08-30 2022-04-12 华为技术有限公司 一种虚拟机迁移的方法和装置
CN106998297B (zh) * 2017-03-22 2019-11-08 新华三技术有限公司 一种虚拟机迁移方法和装置
CN107612834A (zh) * 2017-09-13 2018-01-19 杭州迪普科技股份有限公司 一种基于虚拟设备迁移的evpn路由更新方法
JP7003562B2 (ja) * 2017-10-16 2022-01-20 富士通株式会社 ミラーパケット制御プログラム、ミラーパケット制御方法、およびミラーパケット制御装置
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10680831B2 (en) * 2018-08-14 2020-06-09 Juniper Networks, Inc. Single point of management for multi-cloud environment including route propagation, security, and application deployment
US10860368B2 (en) 2018-09-28 2020-12-08 Juniper Networks, Inc. Migrating workloads in multicloud computing environments
CN109412925B (zh) * 2018-09-30 2021-06-18 锐捷网络股份有限公司 基于vtep的转发表项更新方法及vtep
US11206243B2 (en) * 2019-03-04 2021-12-21 Cyxtera Cybersecurity, Inc. Multiple gateway controllers to establish network access
US11323552B2 (en) * 2019-04-19 2022-05-03 EMC IP Holding Company LLC Automatic security configurations in disaster recovery
US11520612B2 (en) * 2019-11-13 2022-12-06 International Business Machines Corporation Virtual machine migration detection by a hosted operating system
US11436043B2 (en) 2019-11-13 2022-09-06 International Business Machines Corporation Operating system code patching during live migration
CN112804095B (zh) * 2020-12-31 2022-07-12 迈普通信技术股份有限公司 端口信息管理方法、装置及电子设备
JP7150110B1 (ja) * 2021-08-06 2022-10-07 サイボウズ株式会社 アプリ移動システム、アプリ移動方法、及びプログラム
CN114143252B (zh) * 2021-11-29 2022-11-01 中电信数智科技有限公司 一种虚拟机迁移时组播流量不间断的实现方法
CN116319354B (zh) * 2023-01-30 2023-11-28 杭州优云科技有限公司 基于云实例迁移的网络拓扑更新方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316001A (zh) * 2011-10-13 2012-01-11 杭州华三通信技术有限公司 一种虚拟网络连接配置实现方法和网络设备
CN102457583A (zh) * 2010-10-19 2012-05-16 中兴通讯股份有限公司 一种虚拟机移动性的实现方法及系统
EP2562973A1 (en) * 2011-01-13 2013-02-27 Huawei Technologies Co., Ltd. Virtual machine migration method, switch, virtual machine system
CN103905303A (zh) * 2012-12-28 2014-07-02 中国移动通信集团公司 一种虚拟机vm跨网迁移后的数据处理方法、装置及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2651423A1 (en) * 2006-03-23 2007-10-04 The Regents Of The University Of Michigan Compositions and methods for generating transgenic animals
KR101272612B1 (ko) 2009-12-01 2013-06-10 한국전자통신연구원 공유 메모리 통신 환경에서의 통신 채널 전환 방법 및 장치
JP5776337B2 (ja) * 2011-06-02 2015-09-09 富士通株式会社 パケット変換プログラム、パケット変換装置、及びパケット変換方法
US20130014865A1 (en) * 2011-07-13 2013-01-17 Hanusiak William M Method of Making High Strength-High Stiffness Beta Titanium Alloy
US20130107889A1 (en) 2011-11-02 2013-05-02 International Business Machines Corporation Distributed Address Resolution Service for Virtualized Networks
US8995435B2 (en) * 2011-12-09 2015-03-31 Brocade Communication Systems, Inc. Port profile analytics
NL2008237C2 (nl) * 2012-02-06 2013-08-08 Sck Machinery Voertuig voorzien van een voertuigdeel.
CN103259727B (zh) * 2012-08-31 2016-12-28 杭州华三通信技术有限公司 一种报文转发方法及设备
HK1193540A2 (zh) * 2013-07-26 2014-09-19 Cardmatix Co Ltd 製造智能咭的方法
WO2015074182A1 (zh) * 2013-11-19 2015-05-28 华为技术有限公司 一种基于流表的表项寻址方法、交换机及控制器
US9674042B2 (en) * 2013-11-25 2017-06-06 Amazon Technologies, Inc. Centralized resource usage visualization service for large-scale network topologies
WO2015100656A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
TWI531908B (zh) * 2014-04-24 2016-05-01 A method of supporting virtual machine migration with Software Defined Network (SDN)
EP2977912A1 (de) * 2014-07-25 2016-01-27 Franz-Peter Dr. Liebel Automatisierte Diagnostik
CN104798342B (zh) * 2014-11-17 2017-11-24 华为技术有限公司 数据中心的业务迁移方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102457583A (zh) * 2010-10-19 2012-05-16 中兴通讯股份有限公司 一种虚拟机移动性的实现方法及系统
EP2562973A1 (en) * 2011-01-13 2013-02-27 Huawei Technologies Co., Ltd. Virtual machine migration method, switch, virtual machine system
CN102316001A (zh) * 2011-10-13 2012-01-11 杭州华三通信技术有限公司 一种虚拟网络连接配置实现方法和网络设备
CN103905303A (zh) * 2012-12-28 2014-07-02 中国移动通信集团公司 一种虚拟机vm跨网迁移后的数据处理方法、装置及系统

Also Published As

Publication number Publication date
US20170286158A1 (en) 2017-10-05
WO2016041521A1 (en) 2016-03-24
US10296374B2 (en) 2019-05-21
CN105471744A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
CN105471744B (zh) 一种虚拟机迁移方法和装置
CN102857416B (zh) 一种实现虚拟网络的方法、控制器和虚拟网络
CN109257265B (zh) 一种泛洪抑制方法、vxlan网桥、网关及系统
CN106936777B (zh) 基于OpenFlow的云计算分布式网络实现方法、系统
US9325615B2 (en) Method and apparatus for implementing communication between virtual machines
CN109561033B (zh) Overlay网络中组播复制的方法及装置
CN107733793B (zh) 一种转发表项维护方法及装置
CN103139037B (zh) 用于实现灵活的虚拟局域网的方法和装置
CN105577548B (zh) 一种软件定义网络中报文处理方法和装置
US20180351858A1 (en) Virtual machine migration
CN104243630B (zh) Vxlan网络中的mac地址学习方法及装置
JP6619096B2 (ja) ファイアウォールクラスタ
WO2014136864A1 (ja) パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム
CN106572021B (zh) 一种实现网络虚拟化叠加的方法与网络虚拟化边缘节点
CN104823405A (zh) 对于基于mpls的虚拟私有云联网的ip组播服务离开过程
CN104871483A (zh) 对于基于mpls的虚拟私有云联网的ip组播服务加入过程
CN106878288B (zh) 一种报文转发方法及装置
CN104917682B (zh) 一种叠加网络的配置方法和装置
CN106850380B (zh) 实现多协议标签交换的三层虚拟专用网络的方法和系统
CN105591907B (zh) 一种路由获取方法和装置
CN108156067B (zh) 一种实现基于以太网虚拟专用网络的方法和系统
CN103731349A (zh) 一种以太网虚拟化互联邻居间报文转发方法和边缘设备
CN108540386B (zh) 一种防止业务流中断方法及装置
CN110191042B (zh) 一种报文转发方法及装置
Bruschi et al. A scalable SDN slicing scheme for multi-domain fog/cloud services

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