一种软件定义网络中虚拟机ip地址分配方法及装置制造方法

文档序号:7817775阅读:130来源:国知局
一种软件定义网络中虚拟机ip地址分配方法及装置制造方法
【专利摘要】本发明公开了一种软件定义网络中虚拟机IP地址分配方法及装置,在控制器上配置有虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关系,SDN交换设备启动后,接收控制器下发的上送VM发送的动态主机配置协议DHCP报文到所述控制器的流表;当SDN交换设备接收到VM发送的DHCP报文时,匹配所述流表后将VM发送的DHCP报文上送所述控制器;当SDN交换设备接收到所述控制器向所述SDN交换设备下发的DHCP报文时,将控制器下发的DHCP报文转发给所述VM;所述控制器下发的DHCP报文中包含所述控制器根据配置的虚拟端口与虚拟机MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址。
【专利说明】一种软件定义网络中虚拟机IP地址分配方法及装置

【技术领域】
[0001] 本发明涉及软件定义网络领域,尤其涉及一种软件定义网络中虚拟机IP地址分 配方法及装置。

【背景技术】
[0002] 软件定义网络(Software Defined Networks, SDN)是一种新型网络创新架构,其核 心技术是通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为 核心网络及应用的创新提供了良好的平台。在传统网络中,每台交换机或路由器都需要独 立计算报文的转发路径,而在SDN网络中,网络设备只负责单纯的数据转发,而控制部分则 独立为一台集中的控制器,负责对不同业务逻辑、转发方式进行控制。控制平面与转发平面 之间提供开放可编程的接口,目前主流的协议为Openflow,转发平面通常使用开放虚拟交 换机(Open VSwitch,0VS)。典型的SDN网络架构如图1所示。
[0003] Openflow技术的核心是将原本完全由交换机/路由器控制的数据包转发过程转 化为由0VS和控制器(Controller)分别完成的独立过程。每个0VS都有一张流表,用以 进行报文的查找和转发;0VS和控制器通过Openf low协议的安全通道对流表进行查找和管 理。0VS通过用户定义的或者预设的规则来匹配和处理网络数据包;一条Openflow的规则 由匹配域(Match Fields)、优先级(Priority)、处理指令(Instructions)和统计数据(如 Counters)等字段组成。0VS对每个数据包进行查找,如果匹配则执行相应的处理指令,否 则通过Openflow通道上送到控制器,由控制器决定处理方式。
[0004] 控制器和0VS之间通过Openflow协议创建一个Openflow安全通道,该通道中主 要的协议报文如下:
[0005] a、Packet-In报文,用于0VS接收到数据报文后在本地无法查找到对应流表、或查 找到流表但流表中指定处理动作为上送控制器时,向控制器发送Packet-In报文请求控制 器决策接收到的数据报文的处理规则;
[0006] b、Packet-Out报文,用于控制器通过0VS将数据报文发送出去;控制器会将 需要发送的数据报文封装在Packet-Out报文中,并在报文中指定出端口,0VS接收到 Packet-Out报文后会将数据报文通过指定的出端口发送出去;
[0007] c、Port_status消息报文,用于0VS上端口事件变化时,通过该消息报文通知控制 器。
[0008] SDN网络中的一个VM需要对应控制器上的一个虚拟端口(vport)。在VM部署之 前,需要在控制器上配置相应的vport (包含该vport的MAC、IP信息),控制器必须知道所 有vport对应的虚拟机的媒体介入控制(Media Access Control, MAC)、IP信息才可以正常 的控制转发,该信息也可用于安全检测,比如检测是否伪造 IP或MAC与外界通信等。当部署 VM时,需要为该VM配置与相应vport相同的MAC、IP地址,VM启动后0VS会通过Openflow 协议的Port-status消息报文将端口信息上送到控制器,控制器接收后将该VM与配置的 vport相关联并完成VM的上线,如果上送的MAC或IP信息不匹配,则认为VM非法,不允许 VM上线且不处理该VM的事件、报文。
[0009] 相关技术中,从虚拟化管理平台部署VM时,只能设置VM的物理地址(即MAC地 址),而无法设置VM的IP地址;那么当VM启动后,需要用户手动为VM设置相应的IP地址, 并保证该VM的IP地址和MAC地址与控制器上相应的vport的IP地址和MAC地址匹配。 也就是说,相关技术中从虚拟化管理平台部署VM时,需要人工配置VM的IP地址,不仅无法 实现VM的自动化部署,而且人工配置给网络管理员带来很大的工作量,配置结果也容易出 错。


【发明内容】

[0010] 有鉴于此,本发明提供一种软件定义网络中虚拟机IP地址分配方法及装置,用于 解决SDN网络中VM的IP地址自动部署问题。
[0011] 基于本发明实施例的一方面,本发明提供一种软件定义网络中虚拟机IP地址分 配方法,在控制器上配置有虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关系, 该方法应用于SDN交换设备上,所述方法还包括:
[0012] 所述SDN交换设备启动后,接收控制器下发的上送VM发送的动态主机配置协议 DHCP报文到所述控制器的流表;
[0013] 当SDN交换设备接收到VM发送的DHCP报文时,匹配所述流表后将VM发送的DHCP 报文上送所述控制器;
[0014] 当SDN交换设备接收到所述控制器向所述SDN交换设备下发的DHCP报文时,将控 制器下发的DHCP报文转发给所述VM ;
[0015] 所述控制器下发的DHCP报文中包含所述控制器根据配置的虚拟端口与虚拟机 MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址。
[0016] 进一步地,所述VM发送的DHCP报文包括:DHCP Discover发现报文和DHCP Request请求报文;所述控制器下发的DHCP报文包括:与DHCP发现报文对应的DHCP Offer 提供报文和与DHCP请求报文对应的DHCP ACK确认报文;
[0017] 所述DHCP Offer报文用于为所述VM提供所述控制器根据配置的虚拟端口与虚拟 机MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址;所述DHCP ACK报文用于正 式确认将DHCP Request报文中的IP地址分配给所述VM。
[0018] 与上述方法相对应地,本发明还提供一种软件定义网络中虚拟机IP地址分配装 置,该装置应用于SDN交换设备中,该装置包括:
[0019] 流表接收单元,用于在所述SDN交换设备启动后,接收控制器下发的上送VM发送 的动态主机配置协议DHCP报文到所述控制器的流表;
[0020] 报文收发单元,用于在接收到VM发送的DHCP报文时,匹配所述流表后将VM发送 的DHCP报文上送所述控制器;在接收到所述控制器向所述SDN交换设备下发的DHCP报文 时,将控制器下发的DHCP报文转发给所述VM ;
[0021] 所述控制器下发的DHCP报文中包含所述控制器根据配置的虚拟端口与虚拟机 MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址。
[0022] 进一步地,所述报文收发单元接收的,所述VM发送的DHCP报文包括DHCP Discover发现报文和DHCP Request请求报文,所述控制器下发的DHCP报文包括:与DHCP 发现报文对应的DHCP Offer提供报文和与DHCP请求报文对应的DHCP ACK确认报文;所述 DHCP Offer报文用于为所述VM提供所述控制器根据配置的虚拟端口与虚拟机MAC地址和 IP地址的对应关系为所述虚拟机分配的IP地址;所述DHCP ACK报文用于正式确认将DHCP Request报文中的IP地址分配给所述VM。
[0023] 基于本发明实施例的一方面,本发明还提供一种软件定义网络中虚拟机IP地址 分配方法,在控制器上配置有虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关 系,该方法应用于控制器上,所述方法还包括:
[0024] 所述控制器在SDN交换设备启动时,向所述SDN交换设备下发要求所述SDN交换 设备将接收到的虚拟机VM发送的动态主机配置协议DHCP报文上送到控制器的流表;
[0025] 所述控制器接收到VM发送的DHCP报文后,基于所述虚拟机VM的虚拟端口与虚拟 机MAC地址和IP地址的对应关系,为所述虚拟机分配IP地址,并响应所述VM发送的DHCP 报文。
[0026] 进一步地,所述VM发送的DHCP报文包括DHCP Discover发现报文和DHCP Request 请求报文;所述控制器接收到DHCP Discover报文后,向所述VM发送DHCP Offer报文,为 所述VM提供所述控制器根据配置的虚拟端口与虚拟机MAC地址和IP地址的对应关系为 所述虚拟机分配的IP地址;所述控制器接收到DHCP Request报文后,向所述VM发送DHCP ACK报文,以确认将DHCP Request报文中的IP地址分配给所述VM。
[0027] 进一步地,所述方法还包括:
[0028] 所述控制器上预先配置安全IP地址区间;
[0029] 当所述控制器基于所述虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应 关系,未能为所述虚拟机成功分配IP地址时,所述控制器在所述配置的安全IP地址区间内 分配一个安全IP地址给所述VM。
[0030] 与上述方法对应地,本发明还提供一种软件定义网络中虚拟机IP地址分配装置, 该装置应用于控制器中,该装置包括:
[0031] 存储单元,用于存储虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关 系;
[0032] 流表发送单元,用于在SDN交换设备启动时,向所述SDN交换设备下发要求所述 SDN交换设备在接收到虚拟机VM发送的动态主机配置协议DHCP报文后上送到控制器的流 表;
[0033] IP地址分配单元,用于接收到VM发送的DHCP报文后,基于所述虚拟机VM的虚拟 端口与虚拟机MAC地址和IP地址的对应关系,为所述虚拟机分配IP地址,并响应所述VM 发送的DHCP报文。
[0034] 进一步地,所述IP地址分配单元进一步用于,
[0035] 所述IP地址分配单元接收到的所述VM发送的DHCP报文包括DHCP Discover 发现报文和DHCP Request请求报文;所述IP地址分配单元接收到所述VM发送的DHCP Discover报文后,向所述VM发送DHCP Offer报文,为所述VM提供所述控制器根据配置的 虚拟端口与虚拟机MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址;
[0036] 所述IP地址分配单元接收到DHCP Request报文后,向所述VM发送DHCP ACK报 文,以确认将DHCP Request报文中的IP地址分配给所述VM。
[0037] 进一步地,所述存储单元进一步用于,存储安全IP地址区间;
[0038] 所述IP地址分配单元还用于,在基于所述虚拟机VM的虚拟端口与虚拟机MAC地 址和IP地址的对应关系,未能为所述虚拟机成功分配IP地址时,在所述配置的安全IP地 址区间内分配一个安全IP地址给所述VM。
[0039] 本发明提供的一种软件定义网络中虚拟机IP地址分配方法及装置,由控制器、VM 和SDN交换设备之间基于DHCP的协议报文交互实现了在VM部署上线时为VM自动分配IP 地址;在VM部署上线时无需网络管理员手工配置VM的IP地址,实现了 VM的IP地址的自 动部署,减少了网络管理员的工作量,而且VM的IP地址分配工作的出错率得到了控制。

【专利附图】

【附图说明】
[0040] 图1为相关技术中的SDN网络架构示意图;
[0041] 图2为DHCP的工作基本流程示意图;
[0042] 图3为DHCP的报文封装示意图;
[0043] 图4为本发明实施例的软件定义网络中虚拟机IP地址分配方法流程图一;
[0044] 图5为本发明实施例的软件定义网络中虚拟机IP地址分配方法流程图二;
[0045] 图6为本发明实施例的软件定义网络中虚拟机IP地址分配方法流程图三;
[0046] 图7为本发明实施例VM IP地址分配的一具体应用场景示意图;
[0047] 图8为本发明实施例的一种SDN交换设备的组成结构示意图;
[0048] 图9为本发明实施例的一种控制器的组成结构示意图;
[0049] 图10为本发明实施例的一种VM的组成结构示意图。

【具体实施方式】
[0050] 下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
[0051] 为实现对VM的IP地址的自动部署,本发明实施例在VM上部署DHCP Client,控 制器上部署DHCP Server ;在SDN配置过程中实现VM部署时,所述控制器、VM之间通过SDN 交换设备并基于动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)报文的 交互来实现控制器自动为SDN中部署的VM自动分配IP地址。
[0052] 其中,DHCP是局域网的一个网络协议,DHCP基于Client/Server的工作模式,其工 作基本流程如图2所示,主要包括:
[0053] 步骤201,主机客户端(Client)发送DHCP Discover (发现)广播报文在网络上寻 找 DHCP 服务器(Server);
[0054] 步骤202,DHCP服务器向主机客户端发送DHCP offer (提供)广播报文,其中包含 IP地址、MAC地址、域名信息以及地址租期;
[0055] 步骤203,主机客户端发送DHCP Request (请求)广播报文,正式向DHCP服务器请 求分配已提供的IP地址;
[0056] 步骤204,DHCP服务器向主机客户端发送DHCP ACK(确认)单播报文,确认主机的 请求。
[0057] DHCP的报文封装如图3所示,DHCP是以用户数据报协议(User Datagram Protocol,UDP)封装的上层协议,DHCP Server 使用 UDP 端口号 67, DHCP Client 使用 UDP 端口号68。如DHCP Client发送给DHCP Server的报文使用协议号UDP、源端口号68、目的 端口号67 ;DHCP Server应答报文使用协议号UDP、源端口号67、目的端口号68。
[0058] DHCP报文格式如下表1所示:
[0059]
[0060]

【权利要求】
1. 一种软件定义网络中虚拟机IP地址分配方法,其特征在于,在控制器上配置有虚拟 机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关系,该方法应用于SDN交换设备上, 所述方法还包括: 所述SDN交换设备启动后,接收控制器下发的上送VM发送的动态主机配置协议DHCP 报文到所述控制器的流表; 当SDN交换设备接收到VM发送的DHCP报文时,匹配所述流表后将VM发送的DHCP报 文上送所述控制器; 当SDN交换设备接收到所述控制器向所述SDN交换设备下发的DHCP报文时,将控制器 下发的DHCP报文转发给所述VM ; 所述控制器下发的DHCP报文中包含所述控制器根据配置的虚拟端口与虚拟机MAC地 址和IP地址的对应关系为所述虚拟机分配的IP地址。
2. 根据权利要求1所述的方法,其特征在于, 所述VM发送的DHCP报文包括:DHCP Discover发现报文和DHCP Request请求报文; 所述控制器下发的DHCP报文包括:与DHCP发现报文对应的DHCP Offer提供报文和与 DHCP请求报文对应的DHCP ACK确认报文; 所述DHCP Offer报文用于为所述VM提供所述控制器根据配置的虚拟端口与虚拟机 MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址; 所述DHCP ACK报文用于正式确认将DHCP Request报文中的IP地址分配给所述VM。
3. -种软件定义网络中虚拟机IP地址分配方法,其特征在于,在控制器上配置有虚拟 机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关系,该方法应用于控制器上,所述方 法还包括: 所述控制器在SDN交换设备启动时,向所述SDN交换设备下发要求所述SDN交换设备 将接收到的虚拟机VM发送的动态主机配置协议DHCP报文上送到控制器的流表; 所述控制器接收到VM发送的DHCP报文后,基于所述虚拟机VM的虚拟端口与虚拟机 MAC地址和IP地址的对应关系,为所述虚拟机分配IP地址,并响应所述VM发送的DHCP报 文。
4. 根据权利要求3所述的方法,其特征在于, 所述VM发送的DHCP报文包括DHCP Discover发现报文和DHCP Request请求报文; 所述控制器接收到DHCP Discover报文后,向所述VM发送DHCP Offer报文,为所述VM 提供所述控制器根据配置的虚拟端口与虚拟机MAC地址和IP地址的对应关系为所述虚拟 机分配的IP地址; 所述控制器接收到DHCP Request报文后,向所述VM发送DHCP ACK报文,以确认将DHCP Request报文中的IP地址分配给所述VM。
5. 根据权利要求3或4所述的方法,其特征在于,所述方法还包括: 所述控制器上预先配置安全IP地址区间; 当所述控制器基于所述虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关 系,未能为所述虚拟机成功分配IP地址时,所述控制器在所述配置的安全IP地址区间内分 配一个安全IP地址给所述VM。
6. -种软件定义网络中虚拟机IP地址分配装置,其特征在于,该装置应用于SDN交换 设备中,该装置包括: 流表接收单元,用于在所述SDN交换设备启动后,接收控制器下发的上送VM发送的动 态主机配置协议DHCP报文到所述控制器的流表; 报文收发单元,用于在接收到VM发送的DHCP报文时,匹配所述流表后将VM发送的 DHCP报文上送所述控制器;在接收到所述控制器向所述SDN交换设备下发的DHCP报文时, 将控制器下发的DHCP报文转发给所述VM ; 所述控制器下发的DHCP报文中包含所述控制器根据配置的虚拟端口与虚拟机MAC地 址和IP地址的对应关系为所述虚拟机分配的IP地址。
7. 根据权利要求6所述装置,其特征在于, 所述报文收发单元接收的,所述VM发送的DHCP报文包括DHCP Discover发现报文和 DHCP Request请求报文,所述控制器下发的DHCP报文包括:与DHCP发现报文对应的DHCP Offer提供报文和与DHCP请求报文对应的DHCP ACK确认报文; 所述DHCP Offer报文用于为所述VM提供所述控制器根据配置的虚拟端口与虚拟机 MAC地址和IP地址的对应关系为所述虚拟机分配的IP地址; 所述DHCP ACK报文用于正式确认将DHCP Request报文中的IP地址分配给所述VM。
8. -种软件定义网络中虚拟机IP地址分配装置,其特征在于,该装置应用于控制器 中,该装置包括: 存储单元,用于存储虚拟机VM的虚拟端口与虚拟机MAC地址和IP地址的对应关系; 流表发送单元,用于在SDN交换设备启动时,向所述SDN交换设备下发要求所述SDN交 换设备在接收到虚拟机VM发送的动态主机配置协议DHCP报文后上送到控制器的流表; IP地址分配单元,用于接收到VM发送的DHCP报文后,基于所述虚拟机VM的虚拟端口 与虚拟机MAC地址和IP地址的对应关系,为所述虚拟机分配IP地址,并响应所述VM发送 的DHCP报文。
9. 根据权利要求8所述的装置,其特征在于,所述IP地址分配单元进一步用于, 所述IP地址分配单元接收到的所述VM发送的DHCP报文包括DHCP Discover发现报 文和DHCP Request请求报文; 所述IP地址分配单元接收到所述VM发送的DHCP Discover报文后,向所述VM发送 DHCP Offer报文,为所述VM提供所述控制器根据配置的虚拟端口与虚拟机MAC地址和IP 地址的对应关系为所述虚拟机分配的IP地址; 所述IP地址分配单元接收到DHCP Request报文后,向所述VM发送DHCP ACK报文,以 确认将DHCP Request报文中的IP地址分配给所述VM。
10. 根据权利要求8或9所述的装置,其特征在于, 所述存储单元进一步用于,存储安全IP地址区间; 所述IP地址分配单元还用于,在基于所述虚拟机VM的虚拟端口与虚拟机MAC地址和 IP地址的对应关系,未能为所述虚拟机成功分配IP地址时,在所述配置的安全IP地址区间 内分配一个安全IP地址给所述VM。
【文档编号】H04L29/12GK104283983SQ201410582508
【公开日】2015年1月14日 申请日期:2014年10月27日 优先权日:2014年10月27日
【发明者】林涛, 温涛, 任维春, 程行峰 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1