Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
VIRTUAL MACHINE MIGRATION METHOD, SWITCH, VIRTUAL MACHINE SYSTEM
Document Type and Number:
WIPO Patent Application WO/2012/094898
Kind Code:
A1
Abstract:
Provided are a virtual machine (VM) migration method, a switch, and a virtual machine system, which belong to the field of communications technologies. The method according to the embodiment of the present invention comprises: receiving a message sent from a server, wherein the message is used to enable a switch to find a connected virtual machine interface; acquiring, from the message, an identification for indicating that the virtual machine is migrated; judging, according to the identification for indicating that the virtual machine is migrated, whether the virtual machine is a virtual machine that is migrated into the server. The switch comprises a receiving module and a first acquisition module. The virtual machine system comprises a server and a switch. In the embodiment of the present invention, the message sent from the server is received, and whether a newly added virtual machine is one that is newly established or migrated is judged according to an identification field in the message. In this way, compared with the prior art, it can be accurately known whether a virtual machine is migrated into the server, and a service binding relation is pre-established for the migrated virtual machine, thereby improving the real-timeliness of accessing services after migration of the VM.

Inventors:
LI, Guang (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
李光 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
ZHENG, Ming (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
郑明 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
LI, Yizhou (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
Application Number:
CN2011/078932
Publication Date:
July 19, 2012
Filing Date:
August 25, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECHNOLOGIES CO., LTD. (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
华为技术有限公司 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
LI, Guang (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
李光 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
ZHENG, Ming (Huawei Administration Building, Bantian Longgang Distric, Shenzhen Guangdong 9, 518129, CN)
郑明 (中国广东省深圳市龙岗区坂田华为总部办公楼, Guangdong 9, 518129, CN)
International Classes:
H04L12/56
Attorney, Agent or Firm:
BEIJING SAN GAO YONG XIN INTELLECTUAL PROPERTY AGENCY CO., LTD. (A-1-102, He Jing Yuan Ji Men Li,Xueyuan Road,Haidian District, Beijing 8, 100088, CN)
Download PDF:
Claims:
权利要求

1、 一种虚拟机迁移方法, 其特征在于, 包括:

接收服务器发送的消息, 所述消息用于使交换机发现连接的虚拟机接口; 获取所述消息中的用于指示虚拟机发生迁移的标识;

根据所述指示虚拟机发生迁移的标识判断所述虚拟机是否为迁入所述服务器的虚 拟机。

2、 根据权利要求 1所述的虚拟机迁移方法, 其特征在于, 所述消息为虚拟站点接 口发现配置协议报文;

其中,所述消息的类型长度内容信息串中至少包括用于指示虚拟机发生迁移的标识 字段;

或,所述消息的类型长度内容信息串的原因字段中至少包括一个用于指示虚拟机发 生迁移的标识位。

3、 根据权利要求 1或 2所述的虚拟机迁移方法, 其特征在于, 当确定所述虚拟机 为迁入所述服务器的虚拟机时, 所述方法还包括:

获取所述消息中的介质访问控制 /虚拟局域网信息和 /或虚拟站点接口实例标识信 息;

根据所述介质访问控制 /虚拟局域网信息和 /或虚拟站点接口实例标识信息生成动 态主机配置协议续租质询消息并发送到动态主机配置协议服务器;

接收动态主机配置协议服务器返回的应答消息, 并根据所述应答消息对动态主机配 置协议侦听用户绑定表进行更新。

4、 根据权利要求 1或 2所述的虚拟机迁移方法, 其特征在于, 当确定所述虚拟机 为迁入所述服务器的虚拟机时, 所述方法还包括:

向所述服务器发送协助请求消息, 以使该服务器获得该虚拟机的虚拟网络接口的介 质访问控制地址、 IP地址、动态主机配置协议服务器的 IP地址, 并使服务器向该动态 主机配置协议服务器发送动态主机配置协议请求消息;

侦听动态主机配置协议服务器返回的动态主机配置协议响应消息, 并根据动态主机 配置协议响应消息对动态主机配置协议侦听用户绑定表进行更新。

5、 根据权利要求 1或 2所述的虚拟机迁移方法, 其特征在于, 当确定所述虚拟机 为迁入所述服务器的虚拟机时, 所述方法还包括:

向所述虚拟机发送互联网组管理协议查询报文, 以使所述虚拟机通过向组播服务器 发送互联网组管理协议报告报文加入组播组。

6、 一种交换机, 其特征在于, 包括:

接收模块, 用于接收服务器发送的消息, 所述消息用于使交换机发现连接的虚拟机 接口;

第一获取模块, 用于获取所述消息中的用于指示虚拟机发生迁移的标识; 根据所述 指示虚拟机发生迁移的标识判断所述虚拟机是否为迁入所述服务器的虚拟机。

7、 根据权利要求 6所述的交换机, 其特征在于, 所述消息为虚拟站点接口发现配 置协议报文;

其中,所述消息的类型长度内容信息串中至少包括用于指示虚拟机发生迁移的标识 字段;

或,所述消息的类型长度内容信息串的原因字段中至少包括一个用于指示虚拟机发 生迁移的标识位。

8、 根据权利要求 6或 7所述的交换机, 其特征在于, 所述交换机还包括: 第二获取模块, 用于获取所述消息中的介质访问控制 /虚拟局域网信息和 /或虚拟站 点接口实例标识信息;

第一发送模块, 用于根据所述介质访问控制 /虚拟局域网信息和 /或虚拟站点接口实 例标识信息生成动态主机配置协议续租质询消息并发送到动态主机配置协议服务器; 更新模块, 用于接收动态主机配置协议服务器返回的应答消息, 并根据所述应答消 息对动态主机配置协议侦听用户绑定表进行更新。

9、 根据权利要求 6或 7所述的交换机, 其特征在于, 所述交换机还包括: 第二发送模块, 用于向所述服务器发送协助请求消息, 以使该服务器获得该虚拟机 的虚拟网络接口的介质访问控制地址、 IP地址、 动态主机配置协议服务器的 IP地址, 并使服务器向该动态主机配置协议服务器发送动态主机配置协议请求消息;

侦听模块, 用于侦听动态主机配置协议服务器返回的动态主机配置协议响应消息, 并根据动态主机配置协议响应消息对动态主机配置协议侦听用户绑定表进行更新。

10、 根据权利要求 6或 7所述的交换机, 其特征在于, 所述交换机还包括: 第三发送模块, 用于向所述虚拟机发送互联网组管理协议查询报文, 以使所述虚拟 机通过向组播服务器发送互联网组管理协议报告报文加入组播组。 11、 一种虚拟机系统, 包括服务器和交换机; 其特征在于,

所述服务器用于当有虚拟机迁入时, 向所述交换机发送消息, 所述消息用于使所述 交换机发现连接的虚拟机接口; 所述消息中至少包括用于指示所述虚拟机迁入的标识; 所述交换机用于接收所述消息; 获取所述消息中的用于指示虚拟机发生迁移的标 识; 根据所述指示虚拟机发生迁移的标识判断所述虚拟机是否为迁入所述服务器的虚拟 机。

12、 根据权利要求 11所述的虚拟机系统, 其特征在于, 所述消息为虚拟站点接口 发现配置协议报文;

其中,所述消息的类型长度内容信息串中至少包括用于指示虚拟机发生迁移的标识 字段;

或,所述消息的类型长度内容信息串的原因字段中至少包括一个用于指示虚拟机发 生迁移的标识位。

13、 根据权利要求 11或 12所述的虚拟机系统, 其特征在于, 当确定所述虚拟机为 迁入所述服务器的虚拟机时, 所述交换机还用于解析所述消息, 以获取介质访问控制 / 虚拟局域网信息和 /或虚拟站点接口实例标识信息; 并根据所述介质访问控制 /虚拟局域 网字段信息和 /或虚拟站点接口实例标识信息生成动态主机配置协议续租质询消息并发 送到动态主机配置协议服务器; 接收动态主机配置协议服务器返回的应答消息, 并根据 所述应答消息对动态主机配置协议侦听绑定表进行更新。

14、 根据权利要求 11或 12所述的虚拟机系统, 其特征在于, 当确定所述虚拟机为 迁入所述服务器的虚拟机时, 所述交换机还用于向所述服务器发送协助请求消息, 以使 服务器获得该虚拟机的虚拟网络接口的介质访问控制地址、 IP地址、动态主机配置协议 服务器的 IP地址, 并使服务器向该动态主机配置协议服务器发送动态主机配置协议请 求消息; 还用于侦听动态主机配置协议服务器返回的动态主机配置协议响应消息, 并根 据动态主机配置协议响应消息对动态主机配置协议侦听用户绑定表进行更新。

15、 根据权利要求 11或 12所述的虚拟机系统, 其特征在于, 当确定所述虚拟机为 迁入所述服务器的虚拟机时,所述交换机还用于向所述虚拟机发送互联网组管理协议查 询报文, 以使所述虚拟机通过向组播服务器发送互联网组管理协议报告报文加入组播 组。

Description:
一种虚拟机迁移方法、 交换机、 虚拟机系统

本申请要求于 2011年 1月 13日提交中国专利局、 申请号为 201110006732. 8、发明 名称为 "一种虚拟机迁移方法、 交换机、 虚拟机系统"的中国专利申请的优先权, 其全 部内容通过引用结合在本申请中。 技术领域

本发明涉及通信技术领域, 特别涉及一种虚拟机迁移方法、 交换机、 虚拟机系统。 背景技术

VM (Virtual Machine, 虚拟机) 技术是指将一台服务器虚拟为多台相互隔离的 虚 拟机, 或是将多台服务器虚拟为一台虚拟机, 以提高资源的利用率并简化系统管理。

VM 实时迁移是指将正在运行的整个虚拟机从一台 服务器实时迁移到另一台服务器 中, 为了实现 VM 实时迁移的网络化配置, 可以通过 VDP 协议 (VSI Discovery and Configuration Protocol , 虚拟站点接口发现配置协议; VSI, Virtual Station Interface, 虚拟站点接口) 来进行 VM的迁入和迁出。 现有的 VDP协议的一般流程为: 当服务器创建 VM或有 VM迁入时, 服务器向交换机发送 Pre-associate (预关联) 消息。 交换机根据 pre-associate消息获得 VSI type (VSI类型) 的消息, 然后根据该 消息到 VSI数据库里获取参数配置交换机。 在收到服务器发送的 associate (关联) 消 息时, 使能交换机的配置。

当服务器销毁 VM或有 VM迁出时, 服务器向交换机发送 de-associate (解除关联) 消息。

现有技术中的 VDP协议的消息格式如图 1所示, 包括 TLV ( Type Length Value, 类 型长度内容) 数据包头及 TLV information string (类型长度内容信息串)。 如图 1所 示的, TLV数据包头包括以下字段:

TLV type字段, 用于标识该消息的类型; 该类型可以包括: Pre-associate消息、 associate消息、 de-associate消息;

TLV information string length, 用于标识 TLV信息串的长度。

如图 2所示的, 现有的 TLV information string中可以包括以下字段:

Reason (原因)、 VSI Mgr ID (虚拟站点接口管理编号)、 VSI Type ID (虚拟站点 接口类型编号)、 VSI Type Version (虚拟站点接口类型版本)、 VSI Instance ID (虚 拟站点接口实例编号)、 MAC/VLAN Format (MAC/VLAN格式)、 MAC/VLANs (Media Access

Control , 介质访问控制; VLAN, Virtual Local Area Network, 虚拟局域网)。

在实现本发明的过程中, 发明人发现现有技术至少存在以下问题:

现有技术中服务器在迁入或创建 VM时都会向交换机发送 VDP消息, 导致交换机无 法从 VDP消息中准确获知 VM发生迁移, 不能够及时为迁移的 VM建立业务绑定关系, 影 响了业务的实时性。

发明内容

为了解决现有技术中交换机无法获知虚拟机发 生迁移的问题,本发明实施例提出了 一种虚拟机迁移方法、 交换机、 虚拟机系统。 所述技术方案如下:

本发明实施例提出了一种虚拟机迁移方法, 包括: 接收服务器发送的消息, 所述消 息用于使交换机发现连接的虚拟机接口; 获取所述消息中的用于指示虚拟机发生迁移的 标识; 根据所述指示虚拟机发生迁移的标识判断所述 虚拟机是否为迁入所述服务器的虚 拟机。

本发明实施例还提出了一种交换机,包括:接 收模块,用于接收服务器发送的消息; 所述消息用于使交换机发现连接的虚拟机接口 ; 第一获取模块, 用于获取所述消息中的 用于指示虚拟机发生迁移的标识; 根据所述指示虚拟机发生迁移的标识判断所述 虚拟机 是否为迁入所述服务器的虚拟机。

本发明实施例还提出了一种虚拟机系统, 包括服务器和交换机; 所述服务器用于当 有虚拟机迁入时, 向所述交换机发送消息, 所述消息用于使交换机发现连接的虚拟机接 口;所述交换机用于接收所述消息;获取所述 消息中的用于指示虚拟机发生迁移的标识; 根据所述指示虚拟机发生迁移的标识判断所述 虚拟机是否为迁入所述服务器的虚拟机。

本发明实施例中, 可以通过接收服务器发送的消息, 并根据其中的标识字段来判断 该服务器上新增的虚拟机是新建的还是迁入的 。 这样相比较现有技术, 可以精确地获知 服务器是否有虚拟机迁入。 附图说明

为了更清楚地说明本发明实施例的技术方案, 下面将对实施例中使用的附图作一简 单地介绍, 显而易见地, 下面所列附图仅仅是本发明的一些实施例, 对于本领域普通技 术人员来讲, 在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图, 图 1为现有的 VDP消息报文格式;

图 2为图 1中的 VDP消息中的 TLV information string的格式;

图 3为本发明第一实施例的流程示意图;

图 4为本发明第二实施例中一种业务迁移的方法 流程示意图;

图 5为本发明第二实施例中另一种业务迁移的方 的流程示意图;

图 6为本发明第二实施例中又一种业务迁移的方 的流程示意图;

图 7本发明第三实施例的结构示意图;

图 8本发明第四实施例中一种交换机的结构示意 ;

图 9本发明第四实施例中另一种交换机的结构示 图;

图 10本发明第四实施例中又一种交换机的结构示 图;

图 11为本发明第五实施例的虚拟机系统的结构示 图。 具体实施方式

为使本发明的目的、 技术方案和优点更加清楚, 下面将结合附图对本发明实施方式 作进一步地详细描述。

实施例 1

本发明第一实施例提出了一种虚拟机迁移方法 , 其流程如图 3所示, 包括: 步骤 101、接收服务器发送的消息,所述消息用于使 交换机发现连接的虚拟机接口; 获取所述消息中的用于指示虚拟机发生迁移的 标识;

步骤 102、 根据所述指示虚拟机发生迁移的标识判断所述 虚拟机是否为迁入所述服 务器的虚拟机。

本发明实施例中, 可以通过接收服务器发送的消息, 并根据其中的标识字段来判断 该服务器上新增的虚拟机是新建的还是迁入的 。 这样相比较现有技术, 可以精确地获知 服务器是否有虚拟机迁入。 实施例 2

本发明第二实施例提出了一种虚拟机迁移方法 , 是在第一实施例的基础上改进而 来。 进一步的, 在交换机获知服务器中有虚拟机迁入时, 可以进一步的对交换机端口上 绑定的该虚拟机对应的业务进行迁移。 下面以 DHCP Snooping技术 (DHCP侦听; DHCP, Dynamic Host Configurat ion Protocol , 动态主机配置协议) 的迁移为例对本发明实 施例进行进一步说明。

DHCP Snooping是 DHCP协议安全特性, 通过建立和维护 DHCP Snooping用户绑定表 过滤不可信任的 DHCP信息。 DHCP Snooping用户绑定表包含不信任区域的用户 MAC地址、 IP地址、 租用期、 VLAN-ID接口等参数。 现有的交换机开启了 DHCP-Snooping后, 会对 DHCP报文进行侦听, 并可以从接收到的 DHCP Request或 DHCP Ack报文中提取并记录 IP地址和 MAC地址参数。 在本发明的一个实施例中,可以由交换机触发 DHCP服务器返回应答消息,以对 DHCP Snooping用户绑定表进行更新。 其流程如图 4所示, 包括:

步骤 201、 当 VM进行迁移时, 该 VM迁入的服务器向交换机发送消息, 以通知交换 机 VM发生了迁移。 该消息用于使交换机发现连接的虚拟机接口, 且该消息中至少包括 用于指示 VM进行迁移的标识字段或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV informat ion string中增加 一个用于表示 VM进行迁移的 VSI property ( VSI特性) 字段。 现有的 TLV informat ion string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV informat ion string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV informat ion string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

步骤 202、 交换机从该消息中获取 MAC/VLAN信息和 /或 VSI instance ID信息, 并 生成 DHCP lease query ( DHCP续租质询) 消息。

现有技术中, VDP消息中的 MAC/VLAN字段中存储有该 VM的 6字节的 MAC地址和 2 字节的 VLAN ID; VSI instance ID中存储有该 VM在全局中的唯一标识。 交换机可以 根据这两个字段中的任意一个生成对应的 DHCP lease query ( DHCP续租质询) 消息。 此为现有技术, 在此不再赘述。

步骤 203、 交换机向 DHCP服务器发送 DHCP lease query消息。

步骤 204、交换机接收 DHCP服务器返回的应答消息,并以现有技术中 方式对 DHCP Snooping用户绑定表进行更新。

其中, 根据 DHCP服务器返回的应答消息对 DHCP Snooping用户绑定表进行更新的 方法为现有技术, 在此不再赘述。 其中, 在现有的 IETF ( Internet Engineering Task Force, 互联网工程任务组) 的 RFC4388 标准中, 允许 DHCP lease relay 消息通过 MAC 地址、 IP 地址、 Cl ient-Identifier (客户端标识符) 中的任何一个参数向 DHCP服务器查询 DHCP的租 期信息。 还可以通过 RFC4388标准的扩展协议的 option 82选项下的 remote-id子选项 来查找 VM的 DHCP的租期信息。 在本发明的另一个实施例中, 还可以由服务器发送 DHCP Request (DHCP请求) 消 息, 并通过解析 DHCP服务器返回的 DHCP Ack (DHCP响应) 消息对 DHCP Snooping用户 绑定表进行更新。 其流程如图 5所示, 包括:

步骤 301、 当 VM进行迁移时, 该 VM迁入的服务器向交换机发送消息, 以通知交换 机 VM发生了迁移。 该消息用于使交换机发现连接的虚拟机接口, 且该消息中至少包括 用于表示 VM进行迁移的标识字段或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

步骤 302、 交换机向该 VM迁入的服务器发送协助请求消息, 以使该服务器获取该 VM的虚拟网络接口的 MAC地址、 IP地址、 DHCP服务器的 IP地址, 并使该服务器向该 DHCP服务器发送 DHCP Request消息。

其中,服务器可以通过任何方式获取该虚拟机 的虚拟网络接口的 MAC地址、 IP地址、 DHCP服务器的 IP地址, 本发明实施例并不对此做出限定。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示请求服务器进行协助的标识字段 。 现有的 TLV information string如图 2 所示的, 本发明实施例可以在如图 2所示的 VDP消息报文中的 TLV information string 的任意位置添加一个标识字段。 当服务器接收到 VDP消息后, 解析该 VDP消息以根据该 标志位判断是否向 DHCP服务器发送 DHCP Request消息。

步骤 303、 交换机侦听 DHCP服务器返回的 DHCP Ack消息, 并根据 DHCP Ack消息对 DHCP Snooping用户绑定表进行更新。 其中, 根据 DHCP Ack消息对 DHCP Snooping用户绑定表进行更新的方法为现有技 术, 在此不再赘述。

下面以该 VM对应的组播组的迁移为例对本发明实施例进 进一步说明。

在本发明的又一个实施例中,可以由交换机通 知 VM向组播路由器发送 IGMP report ( IGMP报告; IGMP, Internet Group Message Protocol , 互联网组管理协议) 报文, 以使 VM立即加入组播组。 在现有技术中, 当交换机在使用一些视频服务的网络程序如 IPTV、 视频流及游戏的时候, 视频流量可以分发到所有连接的端口, 因为这类流量通常 有一个组播以太网地址。 IGMP侦听可以启用来创建一个组播群用来定位 些流量到有需 要的用户。 交换机的 IGMP query ( IGMP查询议) 可以发起 IGMP成员查询并让有需要的 节点做出回应。

因此本实施例的流程如图 6所示, 包括:

步骤 401、 当 VM进行迁移时, 该 VM迁入的服务器向交换机发送消息, 以通知交换 机 VM发生了迁移。 该消息用于使交换机发现连接的虚拟机接口, 且该消息中至少包括 用于表示 VM进行迁移的标识字段或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

步骤 402、 交换机向所述迁入的 VM发送 IGMP query报文。

步骤 403、 VM向组播服务器发送 IGMP report ( IGMP报告) 报文, 以加入组播组。 其中, 步骤 403为现有技术。 现有技术中, VM在接收到 IGMP query报文后会发送 IGMP report; 组播服务器在接收到该 IGMP report后会将该 VM加入组播组。 本发明实施例可以通过对 VDP 协议的消息进行扩展, 在 VDP 协议报文的 TLV information string中增加一个标识字段或标识位, 以通知交换机 VM发生迁移。 进一 步的, 本发明实施例还可以对该 VM的端口绑定的业务进行迁移, 以降低维护成本, 提 高 VM迁移后接入业务的实时性。 实施例 3

本发明第三实施例提出了一种交换机, 其结构如图 7所示, 包括:

接收模块 1, 用于接收服务器发送的消息; 该消息用于使交换机发现连接的虚拟机 接口;

第一获取模块 2, 用于获取所述消息中的用于指示虚拟机发生迁 移的标识; 根据所 述指示虚拟机发生迁移的标识判断所述虚拟机 是否为迁入所述服务器的虚拟机。

本发明实施例中, 可以通过接收服务器发送的消息, 并根据其中的标识字段来判断 该服务器上新增的虚拟机是新建的还是迁入的 。 这样相比较现有技术, 可以精确地获知 服务器是否有虚拟机迁入。 实施例 4

本发明第四实施例提出了一种交换机, 是在第三实施例的基础上改进而来。 进一步 的, 在交换机精确获知服务器中有虚拟机迁入时, 可以进一步的对交换机端口上绑定的 该虚拟机对应的业务进行迁移。下面以 DHCP Snooping (DHCP侦听; DHCP, Dynamic Host Configuration Protocol , 动态主机配置协议) 技术的迁移为例对本发明实施例进行进 一步说明。

DHCP Snooping是 DHCP协议安全特性, 通过建立和维护 DHCP Snooping用户绑定表 过滤不可信任的 DHCP信息。 DHCP Snooping用户绑定表包含不信任区域的用户 MAC地址、 IP地址、 租用期、 VLAN-ID接口等参数。 现有的交换机开启了 DHCP-Snooping后, 会对 DHCP报文进行侦听, 并可以从接收到的 DHCP Request或 DHCP Ack报文中提取并记录 IP地址和 MAC地址参数。 在本发明的一个实施例中,可以由交换机触发 DHCP服务器返回应答消息,以对 DHCP Snooping用户绑定表进行更新。 BP : 本发明实施例的交换机, 其结构可以如图 8所示, 包括:

接收模块 1, 用于接收服务器发送的消息; 所述消息用于使交换机发现连接的虚拟 机接口;

第一获取模块 2, 用于获取所述消息中的用于指示虚拟机发生迁 移的标识; 根据所 述指示虚拟机发生迁移的标识判断所述虚拟机 是否为迁入所述服务器的虚拟机。

在本发明实施例中, 当 VM进行迁移时, 可以使该 VM迁入的服务器向交换机发送消 息, 以通知交换机 VM发生了迁移。 该消息中至少包括用于表示 VM进行迁移的标识字段 或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

当交换机解析该 VDP消息以获知服务器中有 VM迁入时, 可以将端口上绑定的 DHCP Snooping进行迁移。 即所述交换机如图 8所示的, 还包括:

第二获取模块 3, 用于获取所述消息中的 MAC/VLAN信息和 /或 VSI instance ID信 息;

第一发送模块 4, 用于根据 MAC/VLAN信息和 /或 VSI instance ID信息生成 DHCP lease query并发送到 DHCP服务器;

更新模块 5, 用于接收 DHCP 服务器返回的应答消息, 并根据应答消息对 DHCP

Snooping用户绑定表进行更新。

其中, 在现有的 IETF ( Internet Engineering Task Force, 互联网工程任务组) 的 RFC4388 标准中, 允许 DHCP lease relay 消息通过 MAC 地址、 IP 地址、 Cl ient-Identifier (客户端标识符) 中的任何一个参数向 DHCP服务器查询 DHCP的租 期信息。 还可以通过 RFC4388标准的扩展协议的 option 82选项下的 remote-id子选项 来查找 VM的 DHCP的租期信息。 在本发明的另一个实施例中, 还可以由服务器发送 DHCP Request消息, 并通过解 析 DHCP服务器返回的 DHCP Ack消息以对 DHCP Snooping用户绑定表进行更新。 即: 本 发明实施例的交换机, 其结构可以如图 9所示, 包括:

接收模块 1, 用于接收服务器发送的消息; 所述消息用于使交换机发现连接的虚拟 机接口;

第一获取模块 2, 用于获取所述消息中的用于指示虚拟机发生迁 移的标识; 根据所 述指示虚拟机发生迁移的标识判断所述虚拟机 是否为迁入所述服务器的虚拟机。

在本发明实施例中, 当 VM进行迁移时, 可以使该 VM迁入的服务器向交换机发送消 息, 以通知交换机 VM发生了迁移。 该消息中至少包括用于表示 VM进行迁移的标识字段 或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

当交换机解析该 VDP消息以获知服务器中有 VM迁入时, 可以将端口上绑定的 DHCP Snooping进行迁移。 即所述交换机如图 9所示的, 还包括:

第二发送模块 6, 用于向所述服务器发送协助请求消息, 以使该服务器获得该虚拟 机的虚拟网络接口的 MAC地址、 IP地址、 DHCP服务器的 IP地址, 并使服务器向 DHCP 服务器发送 DHCP Request消息。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示请求服务器进行协助的标识字段 。 现有的 TLV information string如图 2 所示的, 本发明实施例可以在如图 2所示的 VDP消息报文中的 TLV information string 的任意位置添加一个标识字段。 当服务器接收到 VDP消息后, 解析该 VDP消息以根据该 标志位判断是否向 DHCP服务器发送 DHCP Request消息。

侦听模块 7, 用于侦听 DHCP服务器返回的 DHCP Ack消息, 并根据 DHCP Ack消息对 DHCP Snooping用户绑定表进行更新。 下面以该 VM对应的组播组的迁移为例对本发明实施例进 进一步说明。

在本发明的又一个实施例中,可以由交换机通 知 VM向组播路由器发送 IGMP report 报文, 以使 VM立即加入组播组。 在现有技术中, 当交换机在使用一些视频服务的网络 程序如 IPTV、视频流及游戏的时候, 视频流量可以分发到所有连接的端口, 因为这类流 量通常有一个组播以太网地址。 IGMP侦听可以启用来创建一个组播群用来定位 些流量 到有需要的用户。 交换机的 IGMP query ( IGMP查询器; IGMP, Internet Group Message Protocol , 互联网组管理协议) 可以发起 IGMP成员查询并让有需要的节点做出回应。

因此本实施例的交换机, 其结构可以如图 10所示, 包括:

接收模块 1, 用于接收服务器发送的消息; 所述消息用于使交换机发现连接的虚拟 机接口;

第一获取模块 2, 用于获取所述消息中的用于指示虚拟机发生迁 移的标识; 根据所 述指示虚拟机发生迁移的标识判断所述虚拟机 是否为迁入所述服务器的虚拟机。

在本发明实施例中, 当 VM进行迁移时, 可以使该 VM迁入的服务器向交换机发送消 息, 以通知交换机 VM发生了迁移。 该消息中至少包括用于表示 VM进行迁移的标识字段 或标识位。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

当交换机解析该 VDP消息以获知服务器中有 VM迁入时, 可以使该 VM加入组播组。 即所述交换机如图 10所示的, 还包括:

第三发送模块 8, 用于向所述虚拟机发送 IGMP query报文, 以使所述虚拟机通过向 组播服务器发送 IGMP report报文加入组播组。

其中, VM向组播服务器发送 IGMP report现有技术。现有技术中, VM在接收到 IGMP query报文后会发送 IGMP report ; 组播服务器在接收到该 IGMP report后会将该 VM加 入组播组。 本发明实施例可以通过对 VDP 协议的消息进行扩展, 在 VDP 协议报文的 TLV information string中增加一个标识字段或标识位, 以通知交换机 VM发生迁移。 进一 步的, 本发明实施例还可以并对该 VM的端口绑定的业务进行迁移, 以降低维护成本, 提高 VM迁移后接入业务的实时性。

需要说明的是: 上述第三、 第四实施例仅以上述各功能模块的划分进行举 例说明, 实际应用中, 可以根据需要而将上述功能分配由不同的功能 模块完成, 即将装置的内部 结构划分成不同的功能模块, 以完成以上描述的全部或者部分功能。 上述第三、 第四实 施例与第一、 第二实施例提出的方法属于同一构思; 因此相同部分不再赘述。 实施例 5 本发明第五实施例提出了一种虚拟机系统, 其结构如图 11所示, 包括用于承载虚 拟机的服务器 501和用于连接服务器的交换机 502;

所述服务器 501用于当有虚拟机迁入时, 向所述交换机 502发送消息, 所述消息用 于使交换机 502发现连接的虚拟机接口;

所述交换机 502用于接收所述消息; 获取所述消息中的用于指示虚拟机发生迁移的 标识; 根据所述指示虚拟机发生迁移的标识判断所述 虚拟机是否为迁入所述服务器 501 的虚拟机。

本发明实施例中, 可以通过由交换机接收服务器发送的消息, 并根据其中的标识字 段来判断该服务器上新增的虚拟机是新建的还 是迁入的。 这样相比较现有技术, 可以精 确地获知服务器是否有虚拟机迁入, 并为迁入的虚拟机预先建立业务绑定关系, 提高了 VM迁移后接入业务的实时性。 实施例 6

本发明第六实施例提出了一种交换机, 是在第五实施例的基础上改进而来。 在交换 机精确获知服务器中有虚拟机迁入时,可以进 一步的对交换机端口上绑定的该虚拟机对 应的业务进行迁移。 下面以 DHCP Snooping ( DHCP 侦听; DHCP , Dynamic Host Configurat ion Protocol , 动态主机配置协议) 技术的迁移为例对本发明实施例进行进 一步说明。

DHCP Snooping是 DHCP协议安全特性, 通过建立和维护 DHCP Snooping用户绑定表 过滤不可信任的 DHCP信息。 DHCP Snooping用户绑定表包含不信任区域的用户 MAC地址、 IP地址、租用期、 VLAN-ID接口等参数有的交换机开启了 DHCP-Snooping后, 会对 DHCP 报文进行侦听, 并可以从接收到的 DHCP Request或 DHCP Ack报文中提取并记录 IP地 址和 MAC地址参数。 在本发明的一个实施例中,可以由交换机触发 DHCP服务器返回应答消息,以对 DHCP

Snooping用户绑定表进行更新。 BP : 本发明实施例的系统包括: 用于承载虚拟机的服务 器 501和用于连接服务器的交换机 502;

所述服务器 501用于当有虚拟机迁入时, 向所述交换机 502发送消息, 所述消息用 于请求为所述服务器 501上的虚拟机配置参数; 所述消息中至少包括用于指示所述虚拟 机迁入的标识字段。 其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

当确定所述虚拟机为迁入所述服务器的虚拟机 时, 所述交换机 502用于从该消息中 获取 MAC/VLAN信息和 /或 VSI instance ID信息, 并生成 DHCP lease query (DHCP续 租质询) 消息并发送到 DHCP服务器; 接收 DHCP服务器返回的应答消息, 并根据应答 消息对 DHCP Snooping用户绑定表进行更新。

其中, 在现有的 IETF ( Internet Engineering Task Force, 互联网工程任务组) 的 RFC4388 标准中, 允许 DHCP lease relay 消息通过 MAC 地址、 IP 地址、 Cl ient-Identifier (客户端标识符) 中的任何一个参数向 DHCP服务器查询 DHCP的租 期信息。 还可以通过 RFC4388标准的扩展协议的 option 82选项下的 remote-id子选项 来查找 VM的 DHCP的租期信息。 在本发明的另一个实施例中, 还可以由服务器发送 DHCP Request消息, 并通过解 析 DHCP服务器返回的 DHCP Ack消息以对 DHCP Snooping用户绑定表进行更新。 即: 本 发明实施例的系统包括:用于承载虚拟机的服 务器 501和用于连接服务器的交换机 502; 其中,

所述服务器 501用于当有虚拟机迁入时, 向所述交换机 502发送消息, 所述消息用 于请求为所述服务器 501上的虚拟机配置参数; 所述消息中至少包括用于指示所述虚拟 机迁入的标识字段。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string的任意位置添力口一个 VSI property字段。

当确定所述虚拟机为迁入所述服务器的虚拟机 时, 所述交换机 502用于向该 VM迁 入的服务器发送协助请求消息, 以使该服务器获取该 VM的虚拟网络接口的 MAC地址、 IP地址、 DHCP服务器的 IP地址, 并使该服务器向该 DHCP服务器发送 DHCP Request消 息。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示请求服务器进行协助的标识字段 。 现有的 TLV information string如图 2 所示的, 本发明实施例可以在如图 2所示的 VDP消息报文中的 TLV information string 的任意位置添加一个标识字段。 当服务器接收到 VDP消息后, 解析该 VDP消息以根据该 标志位判断是否向 DHCP服务器发送 DHCP Request消息。

所述交换机 502还用于侦听 DHCP服务器返回的 DHCP Ack消息, 并根据 DHCP Ack 消息对 DHCP Snooping用户绑定表进行更新。 下面以该 VM对应的组播组的迁移为例对本发明实施例进 进一步说明。

在本发明的又一个实施例中,可以由交换机通 知 VM向组播路由器发送 IGMP report 报文, 以使 VM立即加入组播组。 在现有技术中, 当交换机在使用一些视频服务的网络 程序如 IPTV、视频流及游戏的时候, 视频流量可以分发到所有连接的端口, 因为这类流 量通常有一个组播以太网地址。 IGMP侦听可以启用来创建一个组播群用来定位 些流量 到有需要的用户。 交换机的 IGMP query ( IGMP查询器; IGMP, Internet Group Message Protocol , 互联网组管理协议) 可以发起 IGMP成员查询并让有需要的节点做出回应。

即: 本发明实施例的系统包括: 用于承载虚拟机的服务器 501和用于连接服务器的 交换机 502; 其中,

所述服务器 501用于当有虚拟机迁入时, 向所述交换机 502发送消息, 所述消息用 于请求为所述服务器 501上的虚拟机配置参数; 所述消息中至少包括用于指示所述虚拟 机迁入的标识字段。

其中, 可以对现有的 VDP消息报文进行扩展, 在 TLV information string中增加 一个用于表示 VM进行迁移的 VSI property (VSI特性) 字段。 现有的 TLV information string 如图 2 所示的, 本发明实施例可以在如图 2 所示的 VDP 消息报文中的 TLV information string 的任意位置添加一个 VSI property 字段。 当然, 还可以在 TLV information string的 Reason字段中的一个 bit位作为标识位, 当该标识位为 0时则 表示该 VM是新建的, 当该标识位为 1时则表示该 VM是迁入的。

当确定所述虚拟机为迁入所述服务器的虚拟机 时,所述交换机 502用于向所述虚拟 机发送 IGMP query报文, 以使所述虚拟机通过向组播服务器发送 IGMP report报文加 入组播组。 其中, VM向组播服务器发送 IGMP report现有技术。现有技术中, VM在接收到 IGMP query报文后会发送 IGMP report; 组播服务器在接收到该 IGMP report后会将该 VM加 入组播组。 在本发明实施例中, 交换机 502可以为第三、 第四实施例中的交换机。

本发明实施例可以通过对 VDP 协议的消息进行扩展, 在 VDP 协议报文的 TLV information string中增加一个标识字段或标识位, 以通知交换机 VM发生迁移。 进一 步的, 本发明实施例还可以并对该 VM的端口绑定的业务进行迁移, 以降低维护成本, 提高 VM迁移后接入业务的实时性。

需要说明的是: 上述第五、 第六实施例仅以上述各功能模块的划分进行举 例说明, 实际应用中, 可以根据需要而将上述功能分配由不同的功能 模块完成, 即将装置的内部 结构划分成不同的功能模块, 以完成以上描述的全部或者部分功能。 上述第五、 第六实 施例与第一、 第二实施例提出的方法属于同一构思; 因此相同部分不再赘述。 本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤可以通 过程 序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读取存储介 质中, 该程序 在执行时, 执行包括上述方法实施例的步骤; 而前述的存储介质包括: 醒、 RAM, 磁碟 或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明的精神和原 则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。