CN104995600A - 虚拟网络迁移方法、装置及设备 - Google Patents
虚拟网络迁移方法、装置及设备 Download PDFInfo
- Publication number
- CN104995600A CN104995600A CN201380003680.6A CN201380003680A CN104995600A CN 104995600 A CN104995600 A CN 104995600A CN 201380003680 A CN201380003680 A CN 201380003680A CN 104995600 A CN104995600 A CN 104995600A
- Authority
- CN
- China
- Prior art keywords
- virtual network
- network entity
- migration
- controller
- sent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network 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)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
公开一种虚拟网络迁移方法、装置及设备,所述方法包括:第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文信息;第一虚拟网络实体根据所述上下文信息,断开与各个控制器和各个交换机的连接,去激活与各个控制器和各个交换机的连接接口设置,以便第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置,与各个控制器和各个交换机建立连接。该方法、装置及设备能够实现虚拟网络实体构成的虚拟网络的迁移。
Description
虚拟网络迁移方法、 装置及设备
技术领域
[01] 本发明涉及通信领域, 尤其涉及虚拟网络迁移方法、 装置及设备。 背景技术 [02] 交换机作为网络中的关键节点,在现有设备提供商的垄断之下开放的接口十 分有限, 网络中的很多开放想法和协议都无法进行测试与验证。 OpenFlow 作为 一套开放接口、 支持多控制的交换标准应运而生。 OpenFlow 将传统的物理固定 的硬件改造成为动态可变的软件可定义网络 (SDN, Software Defined Network), 实现了控制面与转发面的分离。
[03] OpenFlow交换机 (Switch) 的组成部分包括流表 (Flow Table ) 安全通道 ( Secure Channel) 和 OpenFlow协议 (OF Protocol ) 0 交换机在流表中存储最核 心的信息来实现查找、 转发、 统计和过滤等功能, 通过 OpenFlow协议经过一个 安全通道 (Secure Channel) 连接到外部的控制器 (Controller), 控制器对流表进 行查询和管理。 流表包含匹配域字段 (match field ) 计数器 (counters) 和指令 集 (instructions), 不同的厂商可以根据各自的需求设计功能各异的流表。
[04] 在现有 OpenFlow网络的基础上, 虚拟网络实体例如 FlowVisor提供了一种 网络虚拟化的技术。 FlowVisor 通过采用网络分片的方式, 在控制器和交换机之 间实现了网络虚拟化。
[05] 参见图 1, 为 FlowVisor的网络结构示意图。 其中, 从控制器的角度来说, 以为自己连接的是真实的交换机; 而对交换机而言, 则以为自己连接的是真实的 控制器。 实际上, 无论是控制器还是交换机, 连接的都是 FlowVisor。 FlowVisor 在控制器和交换机之间分别充当交换机和控制器的功能, 同时分析 OpenFlow协 议报文, 并通过对流表进行分析, 然后为这些 OpenFlow协议报文连接不同的控 制器和交换机。
[06] 通过这样的处理, 同一个交换机实际上可以连接到多个不同的控制器上, 也 就是说多个控制器可以控制一个交换机上的报文。 同时, 一个控制设备也可以控 制多个交换机。 由于 FlowVisor的这种实现, 使得底层的传输数据可以通过分片 ( Slicing) 的方式来被控制器处理, 表现为网络虚拟化的功能。
[07] 当前网络虚拟化的一个技术是虚拟机迁移技术,也就是说可以将运行在一台 物理机上的虚拟机平滑的迁移到另一台物理机上去, 维持原来的互联协议 (IP ) 地址、 媒体访问控制 (MAC , Media Access Control) 地址等信息, 并且保持上层 的业务不中断。 由于计算机网络是通过多个虚拟机组成的, 所以可以通过单独的 迁移每个虚拟机来实现上面的虚拟计算机网络之间的迁移。 但是这种方法应用于 Flowvisor 组成的虚拟网络时, 如果只是通过单机迁移来实现对每个虚拟机的迁 移, 无法实现对 Flowvisor组成的虚拟网络的迁移。 发明内容
[08] 本发明实施例提供一种虚拟网络迁移方法、装置及设备, 能够实现虚拟网络 实体构成的虚拟网络的迁移。
[09] 第一方面, 提供一种虚拟网络迁移方法, 包括:
[10] 第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文信息;
[11] 第一虚拟网络实体根据所述上下文信息,断开与各个控制器和各个交换机的 连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟网络实 体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置, 与各个 控制器和各个交换机建立连接。
[12] 结合第一方面, 在第一方面第一种可能的实现方式中, 第一虚拟网络实体发 送所述上下文信息之后, 第一虚拟网络实体根据所述上下文信息断开与各个控制 器和交换机的连接之前, 还包括:
[13] 第一虚拟网络实体向自身所连接的各个控制器发送交换机迁移请求;所述交 换机迁移请求中包括: 第二虚拟网络实体的 IP 地址; 第一虚拟网络实体接收所 述控制器发送的交换机迁移响应; 并且,
[14] 第一虚拟网络实体向自身所连接的各个交换机发送控制器迁移请求;所述控 制器迁移请求中包括: 第二虚拟网络实体的 IP 地址; 第一虚拟网络实体接收所 述交换机发送的控制器迁移响应。
[15] 结合第一方面, 和 /或第一方面第一种可能的实现方式, 在第一方面第二种 可能的实现方式中, 第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下 文信息之前, 还包括:
[16] 第一虚拟网络实体向第二虚拟网络实体发送网络迁移请求;
[17] 第一虚拟网络实体接收第二虚拟网络实体发送的网络迁移响应;所述网络迁
移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络实体 的网络迁移请求时发送。
[18] 结合第一方面, 和 /或第一方面第一种可能的实现方式, 和 /或第一方面第二 种可能的实现方式, 在第一方面第三种可能的实现方式中, 第一虚拟网络实体向 第二虚拟网络实体发送虚拟网络的上下文信息之后, 断开与各个控制器和交换机 的连接之前, 还包括:
[19] 第一虚拟网络实体确定所述上下文信息传输完毕时,向第二虚拟网络实体发 送迁移完成请求;
[20] 第一虚拟网络实体接收所述第二虚拟网络实体发送的迁移完成响应。
[21] 第二方面, 提供一种虚拟网络迁移方法, 包括:
[22] 第二虚拟网络实体接收第一虚拟网络实体发送的虚拟网络的上下文信息;
[23] 第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的 连接接口设置, 与各个控制器和各个交换机建立连接。
[24] 结合第二方面, 在第二方面第一种可能的实现方式中, 第二虚拟网络实体接 收所述上下文信息之前还包括:
[25] 第二虚拟网络实体接收第一虚拟网络实体发送的网络迁移请求;
[26] 第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络实体的请 求时, 第二虚拟网络实体向第一虚拟网络实体发送网络迁移响应。
[27] 结合第二方面, 和 /或第二方面第一种可能的实现方式, 在第二方面第二种 可能的实现方式中, 第二虚拟网络实体接收所述上下文信息之后, 与各个控制器 和各个交换机建立连接之前, 还包括:
[28] 第二虚拟网络实体接收第一虚拟网络实体在确定所述上下文信息传输完毕 时发送的迁移完成请求;
[29] 第二虚拟网络实体向所述第一虚拟网络实体发送迁移完成响应。
[30] 第三方面, 提供一种虚拟网络迁移装置, 包括:
[31] 第一发送单元, 用于向第二虚拟网络实体发送虚拟网络的上下文信息;
[32] 第一连接单元, 用于根据第一发送单元发送的所述上下文信息, 断开与各个 控制器和各个交换机的连接;
[33] 第一处理单元, 用于去激活与各个控制器和各个交换机的连接接口设置, 以 便第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的连 接接口设置, 与各个控制器和各个交换机建立连接。
[34] 结合第三方面,在第三方面第一种可能的实现方式中,第一发送单元还用于: 向所述装置所连接的各个控制器发送交换机迁移请求; 所述交换机迁移请求中包 括: 第二虚拟网络实体的 IP 地址; 向所述装置所连接的各个交换机发送控制器 迁移请求; 所述控制器迁移请求中包括: 第二虚拟网络实体的 IP地址;
[35] 该装置还包括:第一接收单元,用于接收所述控制器发送的交换机迁移响应; 并且, 接收所述控制器发送的交换机迁移响应。
[36] 结合第三方面, 和 /或第三方面第一种可能的实现方式, 在第三方面第二种 可能的实现方式中, 第一发送单元还用于: 向第二虚拟网络实体发送网络迁移请 求;
[37] 第一接收单元还用于: 接收第二虚拟网络实体发送的网络迁移响应; 所述网 络迁移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络 实体的网络迁移请求时发送。
[38] 结合第三方面, 和 /或第三方面第一种可能的实现方式, 和 /或第三方面第二 种可能的实现方式,在第三方面第三种可能的实现方式中,第一发送单元还用于: 确定所述上下文信息传输完毕时, 向第二虚拟网络实体发送迁移完成请求;
[39] 第一接收单元还用于: 接收所述第二虚拟网络实体发送的迁移完成响应。
[40] 第四方面, 提供一种虚拟网络迁移装置, 包括:
[41] 第二接收单元, 用于接收第一虚拟网络实体发送的虚拟网络的上下文信息;
[42] 第二处理单元,用于根据第二接收单元接收的所述上下文信息激活与各个控 制器和各个交换机的连接接口设置;
[43] 第二连接单元,用于根据第二接收单元接收的所述上下文信息与各个控制器 和各个交换机建立连接。
[44] 结合第四方面,在第四方面第一种可能的实现方式中,第二接收单元还用于: 接收第一虚拟网络实体发送的网络迁移请求;
[45] 该装置还包括: 第二发送单元, 用于根据所述网络迁移请求确定接受第一虚 拟网络实体的请求时, 向第一虚拟网络实体发送网络迁移响应。
[46] 结合第四方面, 和 /或第四方面第一种可能的实现方式, 在第四方面第二种 可能的实现方式中, 第二接收单元还用于: 接收第一虚拟网络实体在确定所述上 下文信息传输完毕时发送的迁移完成请求;
[47] 第二发送单元还用于: 向所述第一虚拟网络实体发送迁移完成响应。
[48] 第五方面, 提供一种第一虚拟网络实体, 包括: 处理器和收发器; 其中,
[49] 收发器, 用于向第二虚拟网络实体发送虚拟网络的上下文信息; 根据所述上 下文信息, 断开与各个控制器和各个交换机的连接;
[50] 处理器, 用于去激活与各个控制器和各个交换机的连接接口设置。
[51] 结合第五方面, 在第五方面第一种可能的实现方式中, 所述收发器还用于:
[52] 发送所述上下文信息之后,根据所述上下文信息断开与各个控制器和交换机 的连接之前, 向自身所连接的各个控制器发送交换机迁移请求; 所述交换机迁移 请求中包括: 第二虚拟网络实体的 IP 地址; 接收所述控制器发送的交换机迁移 响应; 并且, 向自身所连接的各个交换机发送控制器迁移请求; 所述控制器迁移 请求中包括: 第二虚拟网络实体的 IP 地址; 接收所述交换机发送的控制器迁移 响应。
[53] 结合第五方面, 和 /或第五方面第一种可能的实现方式, 在第五方面第二种 可能的实现方式中, 所述收发器还用于: 向第二虚拟网络实体发送虚拟网络的上 下文信息之前, 向第二虚拟网络实体发送网络迁移请求; 接收第二虚拟网络实体 发送的网络迁移响应; 所述网络迁移响应由第二虚拟网络实体根据所述网络迁移 请求确定接受第一虚拟网络实体的网络迁移请求时发送。
[54] 结合第五方面, 和 /或第五方面第一种可能的实现方式, 和 /或第五方面第二 种可能的实现方式, 在第五方面第三种可能的实现方式中, 所述收发器还用于: 向第二虚拟网络实体发送虚拟网络的上下文信息之后, 断开与各个控制器和交换 机的连接之前, 确定所述上下文信息传输完毕时, 向第二虚拟网络实体发送迁移 完成请求; 接收所述第二虚拟网络实体发送的迁移完成响应。
[55] 第六方面, 提供一种第二虚拟网络实体, 包括收发器和处理器, 其中,
[56] 收发器, 用于接收第一虚拟网络实体发送的虚拟网络的上下文信息; 与各个 控制器和各个交换机建立连接;
[57] 处理器, 用于激活与各个控制器和各个交换机的连接接口设置。
[58] 结合第六方面, 在第六方面第一种可能的实现方式中, 所述收发器还用于: 接收所述上下文信息之前, 接收第一虚拟网络实体发送的网络迁移请求; 根据所 述网络迁移请求确定接受第一虚拟网络实体的请求时, 向第一虚拟网络实体发送 网络迁移响应。
[59] 结合第六方面, 和 /或第六方面第一种可能的实现方式, 在第六方面第二种 可能的实现方式中, 所述收发器还用于: 接收所述上下文信息之后, 与各个控制 器和各个交换机连接之前, 接收第一虚拟网络实体在确定所述上下文信息传输完
毕时发送的迁移完成请求; 向所述第一虚拟网络实体发送迁移完成响应。
[60] 本发明实施例中,第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上 下文信息; 第一虚拟网络实体根据所述上下文信息, 断开与各个控制器和各个交 换机的连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟 网络实体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置, 与各个控制器和各个交换机建立连接, 从而实现了虚拟网络的迁移。 附图说明
[61] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例 或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的 附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造 性劳动性的前提下, 还可以根据这些附图获得其他的附图。
[62] 图 1为现有技术 Flow Visor的网络结构示意图;
[63] 图 2为本发明虚拟网络迁移方法第一实施例示意图;
[64] 图 3为本发明虚拟网络迁移方法第二实施例示意图;
[65] 图 4为本发明虚拟网络迁移方法第三实施例示意图;
[66] 图 5为本发明虚拟网络迁移方法第四实施例示意图;
[67] 图 6为本发明虚拟网络迁移装置第一实施例示意图;
[68] 图 7为本发明虚拟网络迁移装置第二实施例示意图;
[69] 图 8为本发明第一虚拟网络实体示意图;
[70] 图 9为本发明第二虚拟网络实体示意图。 具体实施方式
[71] 为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发 明实施例的上述目的、 特征和优点能够更加明显易懂, 下面结合附图对本发明实 施例中技术方案作进一步详细的说明。
[72] 参见图 2, 为本发明虚拟网络迁移方法第一实施例示意图, 该方法包括:
[73] 步骤 201 : 第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文信 息;
[74] 步骤 202: 第一虚拟网络实体根据所述上下文信息, 断开与各个控制器和各
个交换机的连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二 虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的连接接口 设置, 与各个控制器和各个交换机建立连接。
[75] 本实施例中,第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文 信息; 第一虚拟网络实体根据所述上下文信息, 断开与各个控制器和各个交换机 的连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟网络 实体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置, 与各 个控制器和各个交换机建立连接, 从而实现了虚拟网络的连接;
[76] 并且, 第一虚拟网络实体断开与各个控制器和各个交换机的连接, 第二虚拟 网络实体与各个控制器和各个交换机建立连接, 保证了虚拟网络业务的连续性。
[77] 参见图 3, 为本发明虚拟网络迁移方法第二实施例示意图, 该方法包括:
[78] 步骤 301 : 第二虚拟网络实体接收第一虚拟网络实体发送的虚拟网络的上下 文信息;
[79] 步骤 302: 第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个 交换机的连接接口设置, 与各个控制器和各个交换机建立连接。
[80] 本实施例中, 第二虚拟网络实体接收所述上下文信息, 根据所述上下文信息 激活与各个控制器和各个交换机的连接接口设置, 与各个控制器和各个交换机建 立连接, 从而实现了虚拟网络的迁移。
[81] 参见图 4, 为本发明虚拟网络迁移方法第三实施例示意图, 该方法包括:
[82] 步骤 401 : 第一虚拟网络实体向第二虚拟网络实体发送网络迁移请求;
[83] 所述网络迁移请求可以通过普通的传输控制协议(TCP , Transmission Control Protocol ) 或流控制传输协议 (SCTP , Stream Control Transmission Protocol)请求 消息实现, 也可以通过虚拟网络实体之间定制的消息实现。
[84] 其中, 在网络迁移请求中可以包含: 第一虚拟网络实体的 IP地址信息、 网 络规格大小、迁移原因等相关信息,这些相关信息可以提供给第二虚拟网络实体, 以便第二虚拟网络实体决定是否接受第一虚拟网络实体向其进行虚拟网络迁移。
[85] 步骤 402: 第二虚拟网络实体根据所述网络迁移请求确定接受虚拟网络的迁 移时, 向第一虚拟网络实体发送网络迁移响应。
[86] 其中, 所述网络迁移响应可以通过普通的 TCP或 SCTP请求消息实现, 也
可以通过虚拟网络实体之间定制的消息实现。
[87] 所述网络迁移响应用于告知第一虚拟网络实体所述第二虚拟网络实体接受 虚拟网络的迁移。
[88] 步骤 403 : 第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文信 息;
[89] 其中, 上下文信息包括: 虚拟网络所连接的控制器信息、 虚拟网络所连接的 交换机信息、 流分片信息、 第一虚拟网络实体的控制信息等, 还包括: 第一虚拟 网络实体与各个控制器和各个交换机的接口信息等。
[90] 步骤 404: 第一虚拟网络实体确定所述上下文信息传输完毕时, 向第二虚拟 网络实体发送迁移完成请求;
[91] 其中, 所述迁移完成请求可以通过普通的 TCP或 SCTP请求消息实现, 也 可以通过虚拟网络实体之间定制的消息实现。
[92] 当第二虚拟网络实体接收到所述迁移完成请求,表明第二虚拟网络实体已经 完成了上下文信息的接收。
[93] 步骤 405 : 第二虚拟网络实体向所述第一虚拟网络实体发送迁移完成响应。
[94] 其中, 所述迁移完成响应可以通过普通的 TCP或 SCTP请求消息实现, 也 可以通过虚拟网络实体之间定制的消息实现。
[95] 所述迁移完成响应用于向第一虚拟网络实体告知所述第二虚拟网络实体接 收到了上下文信息和迁移完成请求。
[96] 步骤 406: 第一虚拟网络实体根据所述上下文信息, 断开与各个控制器和各 个交换机的连接, 去激活与各个控制器和各个交换机的连接接口设置; 并且, 第 二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的连接接 口设置, 与各个控制器和各个交换机建立连接。
[97] 在步骤 404中, 已经完成了所有的虚拟网络上下文信息的迁移, 也即是完成 了虚拟网络的迁移; 在步骤 405中, 第一虚拟网络实体断开与各个控制器和各个 交换机的连接, 去激活与各个控制器和各个交换机连接的接口设置, 并且, 第二 虚拟网络实体激活与各个控制器和各个交换机的接口设置, 与各个控制器和各个 交换机建立连接, 从此由第二虚拟网络实体来维护原来的虚拟网络的上下文信 息, 从而完成整个虚拟网络的迁移。 由于第二虚拟网络实体完全复制了第一虚拟 网络实体维护的虚拟网络的上下文信息, 后续控制器和交换机与虚拟网络所在的 第二虚拟网络实体的通信将继续保持。
[98] 本实施例尤其适用于以下场景: 在整个网络设备初始化的时候, 第一虚拟网 络实体与控制器和交换机之间建立连接, 构建了一个虚拟网络; 而第二虚拟网络 实体启动后, 等待第一虚拟网络实体的迁移申请, 来完成虚拟网络的迁移过程。 [99] 参见图 5, 为本发明虚拟网络迁移方法第四实施例示意图, 该方法包括:
[100]步骤 501 505与步骤 401 405相同, 这里不赘述。
[101]步骤 506: 第一虚拟网络实体向自身所连接的各个控制器发送交换机迁移请 求; 所述交换机迁移请求中包括: 第二虚拟网络实体的 IP地址;
[102]所述交换机迁移请求用于向控制器告知需要将与控制器连接的交换机迁移 至所述请求所携带的 IP地址对应的设备上。
[103]步骤 507: 第一虚拟网络实体接收所述控制器发送的交换机迁移响应。
[104]所述交换机迁移响应用于向第一虚拟网络实体告知控制器接受了交换机的 迁移请求。
[105]步骤 508: 第一虚拟网络实体向自身所连接的各个交换机发送控制器迁移请 求; 所述控制器迁移请求中包括: 第二虚拟网络实体的 IP地址;
[106]所述控制器迁移请求用于向交换机告知需要将与交换机连接的控制器迁移 至所述请求所携带的 IP地址对应的设备上。
[107]步骤 509: 第一虚拟网络实体接收所述交换机发送的控制器迁移响应。
[108]所述控制器迁移响应用于向第一虚拟网络实体告知交换机接受了控制器的 迁移请求。
[109]其中, 步骤 506 507步骤 508 509之间的执行顺序不限制。
[110]其中, 所述控制器迁移请求、 控制器迁移响应、 交换机迁移请求、 交换机迁 移响应均可以通过普通的 TCP或 SCTP请求消息实现,也可以通过虚拟网络实体 之间定制的消息实现。
[111]步骤 510与步骤 406相同, 这里不赘述。
[112]其中,第二虚拟网络实体激活与各个控制器和各个交换机的连接接口设置的 步骤可以在步骤 504 510之间的任意时刻执行, 这里不限制。
[113]本发明实施例尤其可以适用于以下场景: 在整个网络设备初始化的时候, 两 个虚拟网络实体是对等的虚拟网络实体。 具体的, 第一虚拟网络实体与控制器和 交换机之间建立连接, 构建一个虚拟网络; 而且, 第二虚拟网络实体同样与控制 器和交换机建立连接, 构建一个虚拟网络, 图 5所示的本发明实施例中没有示出
和第二虚拟网络实体连接的控制器和交换机。
[114]本实施例中, 通过上述步骤完成了所有的虚拟网络上下文信息的迁移, 也即 是完成了虚拟网络的迁移; 进而, 第一虚拟网络实体断开与各个控制器和各个交 换机的连接, 去激活与各个控制器和各个交换机连接的接口设置, 并且, 第二虚 拟网络实体激活与各个控制器和各个交换机的接口设置, 与各个控制器和各个交 换机建立连接, 从此由第二虚拟网络实体来维护原来的虚拟网络的上下文信息, 从而完成整个虚拟网络的迁移。 由于第二虚拟网络实体将第一虚拟网络实体维护 的虚拟网络根据需要迁移或者整合到了第二虚拟网络实体维护的虚拟网络上, 之 前连接第一虚拟网络实体的控制器和交换机后续将与第二虚拟网络实体保持通 信。
[115]参见图 6,为本发明虚拟网络迁移装置第一实施例示意图,该装置 600包括:
[116]第一发送单元 610, 用于向第二虚拟网络实体发送虚拟网络的上下文信息;
[117]第一连接单元 620, 用于根据第一发送单元 610发送的所述上下文信息, 断 开与各个控制器和各个交换机的连接;
[118]第一处理单元 630, 用于根据第一发送单元 610发送的所述上下文信息, 去 激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟网络实体根据所 述上下文信息激活与各个控制器和各个交换机的连接接口设置, 与各个控制器和 各个交换机建立连接。
[119]其中, 第一发送单元 610还可以用于: 向所述装置所连接的各个控制器发送 交换机迁移请求; 所述交换机迁移请求中包括: 第二虚拟网络实体的 IP 地址; 向所述装置所连接的各个交换机发送控制器迁移请求; 所述控制器迁移请求中包 括: 第二虚拟网络实体的 IP地址;
[120]该装置 600还可以包括: 第一接收单元, 用于接收所述控制器发送的交换机 迁移响应; 并且, 接收所述控制器发送的交换机迁移响应。
[121]其中, 第一发送单元 610还可以用于: 向第二虚拟网络实体发送网络迁移请 求;
[122]第一接收单元还可以用于: 接收第二虚拟网络实体发送的网络迁移响应; 所 述网络迁移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟 网络实体的网络迁移请求时发送。
[123]其中, 第一发送单元 610还可以用于: 确定所述上下文信息传输完毕时, 向
第二虚拟网络实体发送迁移完成请求;
[124]第一接收单元还可以用于: 接收所述第二虚拟网络实体发送的迁移完成响 应。
[125]本实施例中, 向第二虚拟网络实体发送虚拟网络的上下文信息; 根据所述上 下文信息, 断开与各个控制器和各个交换机的连接, 去激活与各个控制器和各个 交换机的连接接口设置, 以便第二虚拟网络实体根据所述上下文信息激活与各个 控制器和各个交换机的连接接口设置, 与各个控制器和各个交换机建立连接, 从 而实现了虚拟网络的连接;
[126]并且, 第一虚拟网络实体断开与各个控制器和各个交换机的连接, 第二虚拟 网络实体与各个控制器和各个交换机的连接, 保证了虚拟网络业务的连续性。
[127]参见图 7,为本发明虚拟网络迁移装置第二实施例示意图,该装置 700包括:
[128]第二接收单元 710, 用于接收第一虚拟网络实体发送的虚拟网络的上下文信 息;
[129]第二处理单元 720, 用于根据第二接收单元 710接收的所述上下文信息激活 与各个控制器和各个交换机的连接接口设置;
[130]第二连接单元 730, 用于根据第二接收单元 710接收的所述上下文信息与各 个控制器和各个交换机建立连接。
[131]其中, 第二接收单元 710还可以用于: 接收第一虚拟网络实体发送的网络迁 移请求;
[132]还包括: 第二发送单元, 用于根据所述网络迁移请求确定接受第一虚拟网络 实体的请求时, 向第一虚拟网络实体发送网络迁移响应。
[133]其中, 第二接收单元 710还可以用于: 接收第一虚拟网络实体在确定所述 上下文信息传输完毕时向第二虚拟网络实体发送的迁移完成请求;
[134]第二发送单元还可以用于: 向所述第一虚拟网络实体发送迁移完成响应。
[135]本实施例中, 接收所述上下文信息, 根据所述上下文信息激活与各个控制器 和各个交换机的连接接口设置, 与各个控制器和各个交换机建立连接, 从而实现 了虚拟网络的迁移。 [136]参见图 8, 为本发明实施例第一虚拟网络实体结构示意图, 该第一虚拟网络 实体 800包括: 处理器 810、 存储器 820、 收发器 830和总线 840 ;
[137]处理器 810、 存储器 820、 收发器 830通过总线 840相互连接; 总线 840可 以是 ISA总线、 PCI总线或 EISA总线等。 所述总线可以分为地址总线、 数据总 线、 控制总线等。 为便于表示, 图 8中仅用一条粗线表示, 但并不表示仅有一根 总线或一种类型的总线。
[138]存储器 820, 用于存放程序。 具体地, 程序可以包括程序代码, 所述程序代 码包括计算机操作指令。 存储器 820可能包含高速 RAM存储器, 也可能还包括 非易失性存储器 (non- volatile memory) , 例如至少一个磁盘存储器。
[139]收发器 830用于连接其他设备, 并与其他设备进行通信。 收发器 830用于: 向第二虚拟网络实体发送虚拟网络的上下文信息; 根据所述上下文信息, 断开与 各个控制器和各个交换机的连接。
[140]所述处理器 810执行所述程序代码,用于去激活与各个控制器和各个交换机 的连接接口设置。
[141]所述收发器 830还用于: 发送所述上下文信息之后, 根据所述上下文信息断 开与各个控制器和交换机的连接之前, 向自身所连接的各个控制器发送交换机迁 移请求; 所述交换机迁移请求中包括: 第二虚拟网络实体的 IP 地址; 接收所述 控制器发送的交换机迁移响应; 并且, 向自身所连接的各个交换机发送控制器迁 移请求; 所述控制器迁移请求中包括: 第二虚拟网络实体的 IP 地址; 接收所述 交换机发送的控制器迁移响应。
[142]其中, 所述收发器 830还可以用于: 向第二虚拟网络实体发送虚拟网络的上 下文信息之前, 向第二虚拟网络实体发送网络迁移请求; 接收第二虚拟网络实体 发送的网络迁移响应; 所述网络迁移响应由第二虚拟网络实体根据所述网络迁移 请求确定接受第一虚拟网络实体的网络迁移请求时发送。
[143]其中, 所述收发器 830还可以用于: 向第二虚拟网络实体发送虚拟网络的上 下文信息之后, 断开与各个控制器和交换机的连接之前, 确定所述上下文信息传 输完毕时, 向第二虚拟网络实体发送迁移完成请求; 接收所述第二虚拟网络实体 发送的迁移完成响应。
[144]本实施例中,第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文 信息; 第一虚拟网络实体根据所述上下文信息, 断开与各个控制器和各个交换机 的连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟网络 实体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置, 与各 个控制器和各个交换机的连接, 从而实现了虚拟网络的连接;
[145]并且, 第一虚拟网络实体断开与各个控制器和各个交换机的连接, 第二虚拟 网络实体与各个控制器和各个交换机的连接, 保证了虚拟网络业务的连续性。
[146]参见图 9, 为本发明实施例第一虚拟网络实体结构示意图, 该第一虚拟网络 实体 900包括: 处理器 910、 存储器 920、 收发器 930和总线 940;
[147]处理器 910、 存储器 920、 收发器 930通过总线 940相互连接; 总线 940可 以是 ISA总线、 PCI总线或 EISA总线等。 所述总线可以分为地址总线、 数据总 线、 控制总线等。 为便于表示, 图 9中仅用一条粗线表示, 但并不表示仅有一根 总线或一种类型的总线。
[148]存储器 920, 用于存放程序。 具体地, 程序可以包括程序代码, 所述程序代 码包括计算机操作指令。 存储器 920可能包含高速 RAM存储器, 也可能还包括 非易失性存储器 (non- volatile memory) , 例如至少一个磁盘存储器。
[149]收发器 930用于连接其他设备, 并与其他设备进行通信。 收发器 930用于: 接收第一虚拟网络实体发送的虚拟网络的上下文信息; 与各个控制器和各个交换 机建立连接。
[150]所述处理器 910执行所述程序代码,用于激活与各个控制器和各个交换机的 连接接口设置。
[151]其中, 所述收发器 930还可以用于: 接收所述上下文信息之前, 接收第一虚 拟网络实体发送的网络迁移请求; 根据所述网络迁移请求确定接受第一虚拟网络 实体的请求时, 向第一虚拟网络实体发送网络迁移响应。
[152]其中, 所述收发器 930还可以用于: 接收所述上下文信息之后, 与各个控制 器和各个交换机连接之前, 接收第一虚拟网络实体在确定所述上下文信息传输完 毕时发送的迁移完成请求; 向所述第一虚拟网络实体发送迁移完成响应。
[153]本实施例中, 第二虚拟网络实体接收所述上下文信息, 根据所述上下文信息 激活与各个控制器和各个交换机的连接接口设置, 与各个控制器和各个交换机建 立连接, 从而实现了虚拟网络的迁移。
[154]本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加 必需的通用硬件平台的方式来实现。 基于这样的理解, 本发明实施例中的技术方 案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来, 该 计算机软件产品可以存储在存储介质中, 如 ROM/RAM、 磁碟、 光盘等, 包括若 干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等)
执行本发明各个实施例或者实施例的某些部分所述的方法。
[155]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似 的部分互相参见即可, 每个实施例重点说明的都是与其他实施例的不同之处。 尤 其, 对于系统实施例而言, 由于其基本相似于方法实施例, 所以描述的比较简单, 相关之处参见方法实施例的部分说明即可。
[156]以上所述的本发明实施方式, 并不构成对本发明保护范围的限定。任何在本 发明的精神和原则之内所作的修改、 等同替换和改进等, 均应包含在本发明的保 护范围之内。
Claims (1)
- 权 利 要 求1、 一种虚拟网络迁移方法, 其特征在于, 包括:第一虚拟网络实体向第二虚拟网络实体发送虚拟网络的上下文信息; 第一虚拟网络实体根据所述上下文信息,断开与各个控制器和各个交换机的 连接, 去激活与各个控制器和各个交换机的连接接口设置, 以便第二虚拟网络实 体根据所述上下文信息激活与各个控制器和各个交换机的连接接口设置,与各个 控制器和各个交换机建立连接。2、 根据权利要求 1所述的方法, 其特征在于, 第一虚拟网络实体发送所述 上下文信息之后,第一虚拟网络实体根据所述上下文信息断开与各个控制器和交 换机的连接之前, 还包括:第一虚拟网络实体向自身所连接的各个控制器发送交换机迁移请求;所述交 换机迁移请求中包括: 第二虚拟网络实体的 IP地址; 第一虚拟网络实体接收所 述控制器发送的交换机迁移响应; 并且,第一虚拟网络实体向自身所连接的各个交换机发送控制器迁移请求;所述控 制器迁移请求中包括: 第二虚拟网络实体的 IP地址; 第一虚拟网络实体接收所 述交换机发送的控制器迁移响应。3、 根据权利要求 1或 2所述的方法, 其特征在于, 第一虚拟网络实体向第 二虚拟网络实体发送虚拟网络的上下文信息之前, 还包括:第一虚拟网络实体向第二虚拟网络实体发送网络迁移请求;第一虚拟网络实体接收第二虚拟网络实体发送的网络迁移响应;所述网络迁 移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络实体 的网络迁移请求时发送。4、 根据权利要求 1至 3任一项所述的方法, 其特征在于, 第一虚拟网络实 体向第二虚拟网络实体发送虚拟网络的上下文信息之后,断开与各个控制器和交 换机的连接之前, 还包括:第一虚拟网络实体确定所述上下文信息传输完毕时,向第二虚拟网络实体发 送迁移完成请求;第一虚拟网络实体接收所述第二虚拟网络实体发送的迁移完成响应。 5、 一种虚拟网络迁移方法, 其特征在于, 包括:第二虚拟网络实体接收第一虚拟网络实体发送的虚拟网络的上下文信息; 第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的 连接接口设置, 与各个控制器和各个交换机建立连接。6、 根据权利要求 5所述的方法, 其特征在于, 第二虚拟网络实体接收所述 上下文信息之前还包括:第二虚拟网络实体接收第一虚拟网络实体发送的网络迁移请求;第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络实体的请 求时, 第二虚拟网络实体向第一虚拟网络实体发送网络迁移响应。7、 根据权利要求 5或 6所述的方法, 其特征在于, 第二虚拟网络实体接收 所述上下文信息之后, 与各个控制器和各个交换机建立连接之前, 还包括: 第二虚拟网络实体接收第一虚拟网络实体在确定所述上下文信息传输完毕 时发送的迁移完成请求;第二虚拟网络实体向所述第一虚拟网络实体发送迁移完成响应。8、 一种虚拟网络迁移装置, 其特征在于, 包括:第一发送单元, 用于向第二虚拟网络实体发送虚拟网络的上下文信息; 第一连接单元, 用于根据第一发送单元发送的所述上下文信息, 断开与各个 控制器和各个交换机的连接;第一处理单元, 用于去激活与各个控制器和各个交换机的连接接口设置, 以 便第二虚拟网络实体根据所述上下文信息激活与各个控制器和各个交换机的连 接接口设置, 与各个控制器和各个交换机建立连接。9、 根据权利要求 8所述的装置, 其特征在于, 第一发送单元还用于: 向所 述装置所连接的各个控制器发送交换机迁移请求; 所述交换机迁移请求中包括: 第二虚拟网络实体的 IP地址; 向所述装置所连接的各个交换机发送控制器迁移 请求; 所述控制器迁移请求中包括: 第二虚拟网络实体的 IP地址;该装置还包括:第一接收单元,用于接收所述控制器发送的交换机迁移响应; 并且, 接收所述控制器发送的交换机迁移响应。10、 根据权利要求 8或 9所述的装置, 其特征在于, 第一发送单元还用于: 向第二虚拟网络实体发送网络迁移请求;第一接收单元还用于: 接收第二虚拟网络实体发送的网络迁移响应; 所述网 络迁移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网络 实体的网络迁移请求时发送。11、 根据权利要求 8至 10任一项所述的装置, 其特征在于, 第一发送单元 还用于: 确定所述上下文信息传输完毕时, 向第二虚拟网络实体发送迁移完成请 求;第一接收单元还用于: 接收所述第二虚拟网络实体发送的迁移完成响应。 12、 一种虚拟网络迁移装置, 其特征在于, 包括:第二接收单元, 用于接收第一虚拟网络实体发送的虚拟网络的上下文信息; 第二处理单元,用于根据第二接收单元接收的所述上下文信息激活与各个控 制器和各个交换机的连接接口设置;第二连接单元,用于根据第二接收单元接收的所述上下文信息与各个控制器 和各个交换机建立连接。13、 根据权利要求 12所述的装置, 其特征在于, 第二接收单元还用于: 接 收第一虚拟网络实体发送的网络迁移请求;该装置还包括: 第二发送单元, 用于根据所述网络迁移请求确定接受第一虚 拟网络实体的请求时, 向第一虚拟网络实体发送网络迁移响应。14、根据权利要求 12或 13所述的装置,其特征在于,第二接收单元还用于: 接收第一虚拟网络实体在确定所述上下文信息传输完毕时发送的迁移完成请求; 第二发送单元还用于: 向所述第一虚拟网络实体发送迁移完成响应。15、 一种第一虚拟网络实体, 其特征在于, 包括: 处理器和收发器; 其中, 收发器, 用于向第二虚拟网络实体发送虚拟网络的上下文信息; 根据所述上 下文信息, 断开与各个控制器和各个交换机的连接;处理器, 用于去激活与各个控制器和各个交换机的连接接口设置。16、 根据权利要求 15所述的第一虚拟网络实体, 其特征在于, 所述收发器 还用于:发送所述上下文信息之后,根据所述上下文信息断开与各个控制器和交换机 的连接之前, 向自身所连接的各个控制器发送交换机迁移请求; 所述交换机迁移 请求中包括: 第二虚拟网络实体的 IP地址; 接收所述控制器发送的交换机迁移 响应; 并且, 向自身所连接的各个交换机发送控制器迁移请求; 所述控制器迁移 请求中包括: 第二虚拟网络实体的 IP地址; 接收所述交换机发送的控制器迁移 响应。17、 根据权利要求 15或 16所述的第一虚拟网络实体, 其特征在于, 所述收 发器还用于: 向第二虚拟网络实体发送虚拟网络的上下文信息之前, 向第二虚拟 网络实体发送网络迁移请求; 接收第二虚拟网络实体发送的网络迁移响应; 所述 网络迁移响应由第二虚拟网络实体根据所述网络迁移请求确定接受第一虚拟网 络实体的网络迁移请求时发送。18、 根据权利要求 15至 17任一项所述的第一虚拟网络实体, 其特征在于, 所述收发器还用于: 向第二虚拟网络实体发送虚拟网络的上下文信息之后, 断开 与各个控制器和交换机的连接之前, 确定所述上下文信息传输完毕时, 向第二虚 拟网络实体发送迁移完成请求; 接收所述第二虚拟网络实体发送的迁移完成响 应。 19、 一种第二虚拟网络实体, 其特征在于, 包括收发器和处理器, 其中, 收发器, 用于接收第一虚拟网络实体发送的虚拟网络的上下文信息; 与各个 控制器和各个交换机建立连接;处理器, 用于激活与各个控制器和各个交换机的连接接口设置。20、 根据权利要求 19所述的第二虚拟网络实体, 其特征在于, 所述收发器 还用于:接收所述上下文信息之前,接收第一虚拟网络实体发送的网络迁移请求; 根据所述网络迁移请求确定接受第一虚拟网络实体的请求时,向第一虚拟网络实 体发送网络迁移响应。21、 根据权利要求 19或 20所述的第二虚拟网络实体, 其特征在于, 所述收 发器还用于: 接收所述上下文信息之后, 与各个控制器和各个交换机连接之前, 接收第一虚拟网络实体在确定所述上下文信息传输完毕时发送的迁移完成请求; 向所述第一虚拟网络实体发送迁移完成响应。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/085106 WO2015051548A1 (zh) | 2013-10-12 | 2013-10-12 | 虚拟网络迁移方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104995600A true CN104995600A (zh) | 2015-10-21 |
CN104995600B CN104995600B (zh) | 2018-01-16 |
Family
ID=52812467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380003680.6A Active CN104995600B (zh) | 2013-10-12 | 2013-10-12 | 虚拟网络迁移方法、装置及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104995600B (zh) |
WO (1) | WO2015051548A1 (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306381A1 (en) * | 2009-05-31 | 2010-12-02 | Uri Lublin | Mechanism for migration of client-side virtual machine system resources |
CN102118458A (zh) * | 2011-03-10 | 2011-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种虚拟机热迁移的方法及系统 |
-
2013
- 2013-10-12 WO PCT/CN2013/085106 patent/WO2015051548A1/zh active Application Filing
- 2013-10-12 CN CN201380003680.6A patent/CN104995600B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306381A1 (en) * | 2009-05-31 | 2010-12-02 | Uri Lublin | Mechanism for migration of client-side virtual machine system resources |
CN102118458A (zh) * | 2011-03-10 | 2011-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种虚拟机热迁移的方法及系统 |
Non-Patent Citations (1)
Title |
---|
许逸飞: "《Openflow网络中虚拟网络分片的动态迁移》", <网络安全应用与技术> * |
Also Published As
Publication number | Publication date |
---|---|
CN104995600B (zh) | 2018-01-16 |
WO2015051548A1 (zh) | 2015-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107544841B (zh) | 虚拟机热迁移方法和系统 | |
CN103026660A (zh) | 网络策略配置方法、管理设备以及网络管理中心设备 | |
CN104106303A (zh) | 用于在无线网络中在设备之间建立隧道式直接链路设立(tdls)会话的方法和装置 | |
CN104468368B (zh) | 配置bgp邻居的方法及装置 | |
CN103634419B (zh) | 终端的远程控制方法及终端 | |
CN109743244A (zh) | 一种基于sdn与nfv技术实现高速互联互通的系统和方法 | |
CN105450779A (zh) | 一家电设备连接多服务器的方法 | |
CN106101297B (zh) | 一种报文应答方法及装置 | |
CN103401954B (zh) | 虚拟dhcp的实现方法 | |
CN105025063A (zh) | 面向大规模终端设备的在线数据传输方法 | |
CN104426816B (zh) | 一种虚拟机通信方法及装置 | |
CN112217680B (zh) | 基于软件定义广域网的控制器能力基准测试方法和装置 | |
CN106063169A (zh) | 一种数据处理方法及装置 | |
CN115550377B (zh) | 一种nvmf存储集群节点互联方法、装置、设备及介质 | |
KR101341470B1 (ko) | 서비스 품질 파라미터를 구성하기 위한 방법, 원격 액세스 서버 및 시스템 | |
CN109587749A (zh) | 数据发送方法和系统 | |
CN104040950A (zh) | 一种对虚拟机进行网络配置的方法和设备 | |
CN104995600A (zh) | 虚拟网络迁移方法、装置及设备 | |
CN109981437A (zh) | 一种基于vpc的多数据中心互通方法及相关设备 | |
CN115483985A (zh) | 一种模拟实现两级指控系统间无线通信链路的系统和方法 | |
CN112351089B (zh) | 一种虚拟机与加速器间的数据传输方法、系统及装置 | |
CN112532506B (zh) | 混合组网方法、装置、服务器和计算机可读存储介质 | |
CN111654390B (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN109413118A (zh) | 一种实现会话同步的方法、装置及存储介质、程序产品 | |
CN104780106B (zh) | 多实例实现方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |