虚拟网络的实现方法、装置及系统的制作方法

文档序号:10666392阅读:592来源:国知局
虚拟网络的实现方法、装置及系统的制作方法
【专利摘要】本发明公开了一种虚拟网络的实现方法,包括:EVB站接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;所述EVB站根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;若是,则所述EVB站处理所述VDP报文并将所述VM接入所述VN;若否,则所述EVB站将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN。所述带命令类型指示信息的加入VN的VDP报文是对现有VDP报文的扩展。所述EVB站支持EVB桥和NVE功能。本发明还公开了一种虚拟网络的实现装置。本发明扩展了EVB的适用范围,并进一步提高了VN的实现效率。
【专利说明】
虚拟网络的实现方法、装置及系统
技术领域
[0001]本发明涉及数据中心技术领域,尤其涉及虚拟网络的实现方法、装置及系统。
【背景技术】
[0002]数据中心是全球协作的特定设备网络,用来在internet网络基础设施上传递、加速、展示、计算、存储数据信息。在数据中心中,如何通过虚拟化技术,例如,虚拟机提供VN(Virtual Network,虚拟网络)是一个热门的话题。虚拟网络涉及到网络的虚拟化等众多方面,引起设备供应商和运营商的多方关注,例如,IEEE推出802.1Qbg(边缘虚拟桥),支持VM(Virtual Machine,虚拟机){(IEEE术语为虚拟站,需要区分提供虚拟站的平台,称为 EVB (Edge Virtual Bridging,边缘虚拟桥)站,通过 EVB 站将 VSI (Virtual Stat1nInterface,虚拟机接口)连接到虚拟化平台外的交换机(EVB桥)}。图1,是EVB的体系结构示意图。通过 VDP(VSI discovery and configurat1n protocol,虚拟机接口发现和配置协议),⑶CP和ECP等一系列协议,实现VSI到EVB桥的连接。另外,在IETF中也专门成立了一个工作组 NV03 (Network Virtualizat1n Overlay Based-on L3Network,基于层 3的网络虚拟化)对虚拟网络进行研究。经过讨论,对具体如何实现VN的提供,有了一致的认识,即NV03确定了虚拟网络提供的架构,如图2所示。
[0003]图2 中,有一个集中的 NVA(Network Virtualizat1n Authority,网络虚拟化控制设备),实现对业务提供的控制,VN中的多个VM连接到NVE (Network Virtualizat1nEdge,网络虚拟化边缘设备),并进一步与NVE中的所述VN的VRF (Virtual Routing andForwarding,虚拟路由转发功能)进行关联,多个不同NVE中同一 VN的不同VRF,通过NVE直接的重叠网络隧道实现连接,从而实现VN。当然,VN可以通过NVE和互联网实现连接。
[0004]具体的,在实现过程中,特别是对VM如何接入NVE这一段的控制协议,一种观点认为,可以通过IEEE的VDP来承担,直观的,VDP是实现VM到EVB桥的关联工作,这和VM加入NVE的VN非常相似,因为VDP是一种L2的协议,为了实现NV03的虚拟网络,需要进行L3地址信息的支持,以及需要支持VN-1D信息的传递等。但是,仅仅有这些扩展,还是不够的,由于EVB本身应用场景和NV03不完全相同,EVB具有其特有的状态机处理机制,在具体的应用中,还会遇到问题。例如,在典型的NV03应用环境中,如图3所示,TOR (Top of Rack,架顶交换机)和VMM(virtual machine monitor,服务器)都可以作为NVE使用,同时相互连接。为了满足那些对网络处理要求较高的用户,将他们接到架顶交换机的NVE中;对普通的用户而言,可以直接使用VMM/NVE进行处理。在这种情况下EVB会遇到困难,即如果将VDP的关联信息按照EVB体制都发送给EVB桥,即架顶交换机处理,则需要将处理后的信息进一步关联到EVB站。这里在实现上,也比较困难;或者,可以将EVB桥的功能配置在EVB站中,可以实现。但是,对需要接入EVB桥用户的VDP请求,则不能直接到达架顶交换机的EVB桥。针对此种限制,本发明提供了一种解决方案。

【发明内容】

[0005]本发明的主要目的在于提供一种虚拟网络的实现方法、装置及系统,旨在解决目前现有VDP技术不支持EVB站/NVE-EVB桥/NVE的NV03典型应用环境的问题。
[0006]为实现上述目的,本发明提供的一种虚拟网络的实现方法,包括步骤:
[0007]虚拟网络的实现方法,其特征在于,包括步骤:
[0008]EVB站接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;
[0009]所述EVB站根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;
[0010]若是,则所述EVB站处理所述VDP报文并将所述VM接入所述VN ;
[0011]若否,则所述EVB站将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN0
[0012]优选地,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义。
[0013]优选地,所述EVB站,支持EVB桥和NVE。
[0014]优选地,所述EVB站/EVB桥将所述VM接入所述VN的步骤包括:
[0015]所述EVB站/EVB桥接收所述VM是否通过所述VN的身份认证的验证信息;
[0016]所述EVB站/EVB桥在所述VM验证通过后,判断所述VN的上下文/VRF转发表是否存在;
[0017]若不存在,则所述EVB站/EVB桥生成所述VN的VRF转发表;
[0018]若在所述VRF转发表中所述VM对应的VRF表项不存在,则所述EVB站/EVB桥在所述VRF转发表中生成所述VM对应的VRF转发表表项。
[0019]此外,为实现上述目的,本发明还提供一种虚拟网络的实现装置,包括:
[0020]接收模块,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;
[0021]判断模块,用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;
[0022]发送模块,用于若不在所述EVB站处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN ;
[0023]处理模块,用于若在所述EVB站处理所述VDP报文,则处理所述VDP报文并将所述VM接入所述VN ;还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应VRF转发表表项。
[0024]优选地,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义。
[0025]优选地,所述实现装置是EVB站,同时支持EVB桥和NVE功能。
[0026]此外,为实现上述目的,本发明还提供一种虚拟网络的实现系统,包括如上所述的虚拟网络实现装置及EVB桥,其中:
[0027]所述的虚拟网络实现装置,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;还用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述虚拟网络实现装置处理所述VDP报文;还用于若是在所述虚拟网络实现装置处理所述VDP报文,则将所述VM接入所述VN ;还用于若不在所述虚拟网络实现装置处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理;
[0028]所述EVB桥,用于对所述VDP报文进行处理,实现所述VM接入所述VN ;
[0029]所述的虚拟网络实现装置,还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应表项。
[0030]优选地,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义;所述虚拟网络实现装置为EVB站,同时支持EVB桥和NVE功能。
[0031]本发明通过在接收到的虚拟机VM加入虚拟网络VN的VDP报文中添加命令类型指示信息,通过命令类型指示信息指示是EVB站处理所述VDP报文,或者EVB桥处理所述VDP报文,以将所述VM接入虚拟网络。有效避免目前在基于VDP的VN的实现过程中,实现过程复杂、操作繁杂,使得VN实现的效率差的问题。所述带命令类型指示信息的加入VN的VDP报文是对现有VDP报文的扩展。所述EVB站支持EVB桥和NVE功能。本发明扩展了 EVB的适用范围,并进一步提高了 VN的实现效率。
【附图说明】
[0032]图1为本发明一实施例中EVB的体系结构示意图;
[0033]图2为本发明一实施例中虚拟网络提供的架构示意图;
[0034]图3为本发明一实施例中典型的NV03应用环境的架构示意图;
[0035]图4为本发明虚拟网络的实现方法的较佳实施例的流程示意图;
[0036]图5为本发明一实施例的网络功能结构示意图;
[0037]图6本发明一实施例中基于过滤信息格式的命令类型指示的过滤信息格式定义示意图;
[0038]图7为本发明对所述VDP报文进行处理一实施例的流程示意图;
[0039]图8为本发明虚拟网络的实现过程一实施例的流程示意图;
[0040]图9为本发明虚拟网络的实现过程另一实施例的流程示意图;
[0041]图10为本发明虚拟网络的实现装置的较佳实施例的功能模块示意图。
[0042]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0043]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0044]本发明实施例的主要解决方案是:EVB站接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;所述EVB站根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;若是,则所述EVB站处理所述VDP报文并将所述VM接入所述VN ;若否,则所述EVB站将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN0通过在接收到的虚拟机VM加入虚拟网络VN的VDP报文中添加命令类型指示信息,通过命令类型指示信息指示是EVB站处理所述VDP报文,或者EVB桥处理所述VDP报文,以将所述VM接入虚拟网络。有效避免目前在基于VDP的VN的实现过程中,实现过程复杂、操作繁杂,使得VN实现的效率差的问题。所述带命令类型指示信息的加入VN的VDP报文是对现有VDP报文的扩展。所述EVB站支持EVB桥和NVE功能。本发明扩展了 EVB的适用范围,并进一步提高了 VN的实现效率。
[0045]由于目前在基于VDP的VN的实现过程中,实现过程复杂、操作繁杂,使得VN实现的效率差。
[0046]基于上述问题,本发明提供一种虚拟网络的实现方法。
[0047]参照图4,图4为本发明虚拟网络的实现方法的较佳实施例的流程示意图。
[0048]在一实施例中,所述虚拟网络的实现方法包括:
[0049]步骤S10,EVB站接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;
[0050]本发明实施例优先为基于VDP的虚拟网络的实现方法,且优先为适用于典型的NV03应用环境中。但也不限于上述的应用环境和基于VDP的虚拟网络的实现。
[0051]参考图5,为本发明实施例的网络功能结构示意图。其中VMM/EVB站和EVB桥都需要支持NVE的功能。NVA是核心控制设备,完成VN部署的用户认证和路由信息交互等相关功能。
[0052]VMM/Hypervisor准备、生成VM,并设置VM的初始参数。
[0053]VM的生成,触发VM对应的VNIC/VSI的EVB站开始运行。在EVB站开始运行后,接收加入虚拟网络的VDP报文,所述VDP报文包括命令类型指示信息。所述加入虚拟网络的VDP报文可以由ER代表VM发出。虚拟机发送报文:报文封装可选的使用虚拟网络ID,或者进一步通过L2协议进行封装,例如,包括VLAN封装,或者Q-1n-Q封装等。
[0054]所述命令类型指示信息用以指示所述VDP报文的处理信息,通过该指示信息,指示VDP命令在哪里进行处理,例如,可以在EVB桥进行处理,或在EVB站进行处理,即所述命令类型指示信息携带指示命令在在EVB站处理或EVB桥处理的字段。
[0055]步骤S20,所述EVB站根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;
[0056]为在VMM/NVE-T0R/NVE环境下实现通过VDP支持的VN的实现,需要扩展EVB架构功能,即新增加一种EVB角色,混合EVB (EVB Hybrid或者EVB站&桥),它既需要实现EVB站功能(或者,首先是EVB站),也需要实现EVB桥功能,当然也要支持NVE功能的实现。
[0057]在VDP关联TLV定义中,增加命令指示位。所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者通过保留的VDP类型值进行定义。1、可以通过现有命令中的过滤信息格式值的保留值,来进行命令指示位的定义。例如,可以选择保留值0x00,0x50through OxFF中的一种加以定义。而具体的信息格式中,需要包括命令指示位。2、可选的,可以利用保留值:0x66-0x7E,定义新的命令指示代码。S卩,通过代码本身来区分时EVB站还是EVB桥来对VDP信息进行处理。
[0058]进一步地,图6为本发明的基于过滤信息格式的命令类型指示的过滤信息格式定义示意图。该指示位(如图中的H位,当然,也可以使用不同于H其他的标识来进行指示),用于指示:是优选VMM/Hypervisor来进行VDP报文处理,还是EVB桥来进行VDP报文处理;在接收到EVB桥优先处理的VDP报文,则EVB站/混合EVB不进行处理,而是直接转发给EVB桥,通过EVB桥处理VDP报文。
[0059]需要进一步说明的是,本发明中,涉及到2种VDP命令扩展,一个是加入命令,另外一个是指示命令,从简化和高效定义VDP命令角度看,一种优化的方案是,可以通过过滤信息字段中定义2个不同的位,分别用于指示加入VN命令和命令类型指示。S卩,通过过滤信息字段中定义不同的位来区分VDP报文和命令类型指示信息。
[0060]步骤S30,若否,则所述EVB站将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN ;
[0061 ] 步骤S40,若是,则所述EVB站处理所述VDP报文并将所述VM接入所述VN0
[0062]通过判断是否为所述EVB站处理所述VDP报文,实现在前端EVB站处理VDP报文,或者后端EVB桥处理VDP报文。
[0063]具体的,参考图7,所述对所述VDP报文进行处理的过程可以是:
[0064]步骤S31,所述EVB站/EVB桥接收所述VM是否通过所述VN的身份认证的验证信息;
[0065]步骤S32,所述EVB站/EVB桥在所述VM验证通过后,判断所述VN的上下文/VRF转发表是否存在;
[0066]步骤S33,若所述VN的上下文/VRF转发表不存在,则所述EVB站/EVB桥生成所述VN的VRF转发表;
[0067]步骤S34,若在所述VRF转发表中所述VM对应的VRF表项不存在,则所述EVB站/EVB桥在所述VRF转发表中生成所述VM对应的VRF转发表表项。
[0068]所述EVB站在处理所述VDP报文过程中,需要对所述VM进行身份验证,并获得所述VM的身份认证结果信息。在返回的认证结果信息中,可选的,进一步包括附加信息,所述附加信息包括但不限于:虚拟网络ID(VN-1D),IP地址信息,建立虚拟网络上下文/VRF转发表(或者统称为虚拟网络实例VNI)信息等。在认证通过后,所述EVB站判断所述VN的上下文/VRF转发表是否存在,若所述VN的上下文/VRF转发表不存在,则生成所述VN的VRF转发表;进一步,若在所述VRF转发表中所述VM对应的VRF表项不存在,则所述EVB站生成所述VM对应的VRF转发表表项,并将所述VM对应的VRF转发表表项增加到所述VRF转发表中。
[0069]具体的,所述发送端以VM为例,如果VM通过了 VN的身份认证,且VM是所述VN在EVB站/NVE中的第一个连接VM,则NVE创建VN的上下文/虚拟网络实例VNI,包括VRF表。并针对VM,可选的,分配对应的VLAN-1D信息,并将该VLAN-1D和对应的物理接口信息,作为转发表表项的内容,在VRF中形成VM对应的VN转发表项。如果VN的上下文已经存在但是VM的对应表项不存在,同样针对VM,可选的,分配对应的VLAN-1D信息,并将该VLAN-1D和对应的物理接口信息,作为表项的内容,在VRF中形成VM对应的VN转发表项。可选的,如果所述VM对应的转发表表项已经存在,则可以不做处理,或者如果有关的参数,例如分配的VLAN-1D有变化,则对对应的表项做相应的修改。
[0070]具体的,VRF表项包括但不限于:VM的IP/MAC地址,接口和/或子接口(例如VLANID),虚拟网络号/标识(VN-1D)。
[0071]在NVE生成新的VRF转发表,或者VRF转发表中的内容发生变化时,NVE通过NVE-NVA协议进行虚拟网络的信息同步。具体的,NVE可以通过协议自动地同步虚拟网络的其他NVE的路由信息,即,将本地的路由信息,或者是新更新的路由信息通过NVA同步到虚拟网络中的其他所有NVE中。而不同的路由信息的发布,通过虚拟网络ID来进行区分,从而不至于发生不同虚拟网络之间的路由更新发生错误。
[0072]在本发明其他实施例中也还可以是NVE发送报文到其他NVE:—般通过虚拟网络ID进行封装区分不同的虚拟网络,目的VNE发送报文给所述虚拟网络的虚拟机,也可以作为目的端NVE从其他NVE接收报文。
[0073]为了进一步说明本发明技术方案,参考图8和图9,图8和图9是典型的处理流程。
[0074]第一个处理流程:
[0075]步骤700、生成VM并设置初始化参数;
[0076]步骤701、VM的生成,触发VM对应的EVB站开始运行;这里,EVB站为支持VM及VM所对应的虚拟网络适配器(VNIC)/VSI的EVB站。
[0077]步骤702、VM通过ER发送带命令指示信息的加入VN的扩展VDP命令;如果指示信息指示VDP命令,由本地处理,则处理该VDP命令;
[0078]步骤703、对VM进行接入VN的身份认证;
[0079]步骤704、NVA返回身份认证的结果信息。如果认证通过,进一步反馈EVB桥VN-1D、IP地址(可选的,该IP地址是新针对VM新分配的IP地址,或者是对VM的IP地址的确认)、VN上下文/VRF转发表生成命令;如果认证不通过,则处理过程结束。
[0080]步骤705、EVB站在VN上下文/VRF转发表不存在时,生成VN对应的上下文/VRF转发表;针对VM形成对应的VN转发表项。
[0081 ] 这里,如果VM通过了 VN的身份认证且VM是该VN在该NVE上的第一个连接VM,则NVE自动创建VN的上下文包括相应的VRF表。这个过程,也可以由NVA来实现判断,并通过VN上下文/VRF转发表生成命令来明确指示NVE进行该VN的上下文/VRF转发表的创建。
[0082]如果VRF转发表已经存在,则不用生成转发表,而判断VM所对应的转发表项是否存在,如果不存在,则在该VN的VRF表中形成对应的转发表项。
[0083]步骤707、EVB站/NVE经由网络虚拟化控制设备NVA实现将该NVE的新增加的转发表条目/转发表更新信息同步到该NV中的所有其他EVB桥/NVE中。
[0084]这里通过NVA同步到VN中的其他所有NVE中。而不同VN的路由信息的通告,通过VN-1D来进行区分,从而不至于发生不同VN之间的路由更新发生错误。
[0085]步骤708、VM进行报文转发。具体的,使用VN-1D进行IP报文封装;或,进一步,封装后的IP报文,进一步通过预先设置的第二层协议L2进行报文的封装。
[0086]另外一个处理流程:
[0087]步骤800、生成VM并设置初始化参数;
[0088]步骤801、VM的生成,触发VM对应的EVB站开始运行;这里,EVB站为支持VM及VM所对应的虚拟网络适配器(VNIC)/VSI的EVB站。
[0089]步骤802、VM通过ER发送带命令指示信息的加入VN的扩展VDP命令;如果指示信息指示VDP命令,不由本地处理,则转发该VDP命令至EVB桥;
[0090]步骤803、对VM进行接入VN的身份认证;
[0091]步骤804、NVA返回身份认证的结果信息。如果认证通过,进一步反馈EVB桥VN-1D、IP地址(可选的,该IP地址是新针对VM新分配的IP地址,或者是对VM的IP地址的确认)、VN上下文/VRF转发表生成命令;如果认证不通过,则处理过程结束。
[0092]步骤805、EVB桥在VN上下文/VRF转发表不存在时,生成VN对应的上下文/VRF转发表;针对VM形成对应的VN转发表项。
[0093]这里,如果VM通过了 VN的身份认证且VM是该VN在该NVE上的第一个连接VM,则NVE自动创建VN的上下文包括相应的VRF表。这个过程,也可以由NVA来实现判断,并通过VN上下文/VRF转发表生成命令来明确指示NVE进行该VN的上下文/VRF转发表的创建。
[0094]如果VRF转发表已经存在,则不用生成转发表,而判断VM所对应的转发表项是否存在,如果不存在,则在该VN的VRF表中形成对应的转发表项。
[0095]步骤806、EVB桥反馈处理的确认信息至VM/ER/EVB站,包括可选的:VN_ID信息,及IP地址信息。
[0096]步骤807、EVB桥/NVE经由网络虚拟化控制设备NVA实现将该NVE的新增加的转发表条目/转发表更新信息同步到该NV中的所有其他EVB桥/NVE中。
[0097]这里通过NVA同步到VN中的其他所有NVE中。而不同VN的路由信息的通告,通过VN-1D来进行区分,从而不至于发生不同VN之间的路由更新发生错误。
[0098]步骤808、VM进行报文转发。具体的,
[0099]使用VN-1D进行IP报文封装;或,进一步,封装后的IP报文,进一步通过预先设置的第二层协议L2进行报文的封装。
[0100]通过本发明实施例的方案,可以实现VMM/NVE和EVB桥/NVE的典型应用场景下的VDP的适应性,保证了基于VDP的虚拟网络功能得以顺利实现。
[0101]本实施例通过在接收到的虚拟机VM加入虚拟网络VN的VDP报文中添加命令类型指示信息,通过命令类型指示信息指示是EVB站处理所述VDP报文,或者EVB桥处理所述VDP报文,以将所述VM接入虚拟网络。有效避免目前在基于VDP的VN的实现过程中,实现过程复杂、操作繁杂,使得VN实现的效率差的问题。所述带命令类型指示信息的加入VN的VDP报文是对现有VDP报文的扩展。所述EVB站支持EVB桥和NVE功能。本发明扩展了 EVB的适用范围,并进一步提高了 VN的实现效率。
[0102]上述实施例虚拟网络的实现方法的执行主体均可以为终端。更进一步地,该虚拟网络的实现方法可以由安装在终端上的虚拟网络的实现程序(例如,虚拟网络的实现软件,或EVB站等)实现,其中,该终端包括但不限于手机、pad、笔记本电脑等。
[0103]本发明进一步提供一种虚拟网络的实现装置。
[0104]参照图10,图10为本发明装置的较佳实施例的功能模块示意图。
[0105]在一实施例中,所述虚拟网络的实现装置包括:接收模块10、生成模块20、设置模块30、判断模块40、构建模块50、发送模块60及处理模块70。
[0106]所述实现装置是EVB站,同时支持EVB桥和NVE功能。
[0107]所述接收模块10,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;
[0108]参考图5,为本发明实施例的网络功能结构示意图。其中VMM/EVB站和EVB桥都需要支持NVE的功能。NVA是核心控制设备,完成VN部署的用户认证和路由信息交互等相关功能。
[0109]VMM/Hypervisor准备、生成VM,并设置VM的初始参数。
[0110]VM的生成,触发VM对应的VNIC/VSI的EVB站开始运行。在EVB站开始运行后,接收加入虚拟网络的VDP报文,所述VDP报文包括命令类型指示信息。所述加入虚拟网络的VDP报文可以由ER代表VM发出。虚拟机发送报文:报文封装可选的使用虚拟网络ID,或者进一步通过L2协议进行封装,例如,包括VLAN封装,或者Q-1n-Q封装等。
[0111]所述命令类型指示信息用以指示所述VDP报文的处理信息,通过该指示信息,指示VDP命令在哪里进行处理,例如,可以在EVB桥进行处理,或在EVB站进行处理,即所述命令类型指示信息携带指示命令在在EVB站处理或EVB桥处理的字段。
[0112]所述判断模块20,用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文;
[0113]为在VMM/NVE-T0R/NVE环境下实现通过VDP支持的VN的实现,需要扩展EVB架构功能,即新增加一种EVB角色,混合EVB (EVB Hybrid或者EVB站&桥),它既需要实现EVB站功能(或者,首先是EVB站),也需要实现EVB桥功能,当然也要支持NVE功能的实现。
[0114]在VDP关联TLV定义中,增加命令指示位。所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者通过保留的VDP类型值进行定义。1、可以通过现有命令中的过滤信息格式值的保留值,来进行命令指示位的定义。例如,可以选择保留值0x00,0x50through OxFF中的一种加以定义。而具体的信息格式中,需要包括命令指示位。2、可选的,可以利用保留值:0x66-0x7E,定义新的命令指示代码。S卩,通过代码本身来区分时EVB站还是EVB桥来对VDP信息进行处理。
[0115]进一步地,图6为本发明的基于过滤信息格式的命令类型指示的过滤信息格式定义示意图。该指示位(如图中的H位,当然,也可以使用不同于H其他的标识来进行指示),用于指示:是优选VMM/Hypervisor来进行VDP报文处理,还是EVB桥来进行VDP报文处理;在接收到EVB桥优先处理的VDP报文,则EVB站/混合EVB不进行处理,而是直接转发给EVB桥,通过EVB桥处理VDP报文。
[0116]需要进一步说明的是,本发明中,涉及到2种VDP命令扩展,一个是加入命令,另外一个是指示命令,从简化和高效定义VDP命令角度看,一种优化的方案是,可以通过过滤信息字段中定义2个不同的位,分别用于指示加入VN命令和命令类型指示。S卩,通过过滤信息字段中定义不同的位来区分VDP报文和命令类型指示信息。
[0117]所述发送模块30,用于若不在所述EVB站处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN ;
[0118]所述处理模块40,若在所述EVB站处理所述VDP报文,则处理所述VDP报文并将所述VM接入所述VN0
[0119]通过判断是否为所述EVB站处理所述VDP报文,实现在前端EVB站处理VDP报文,或者后端EVB桥处理VDP报文。
[0120]所述处理模块40,还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应VRF转发表表项。
[0121]所述EVB站在处理所述VDP报文过程中,需要对所述VM进行身份验证,并获得所述VM的身份认证结果信息。在返回的认证结果信息中,可选的,进一步包括附加信息,所述附加信息包括但不限于:虚拟网络ID(VN-1D),IP地址信息,建立虚拟网络上下文/VRF转发表(或者统称为虚拟网络实例VNI)信息等。在认证通过后,所述EVB站判断所述VN的上下文/VRF转发表是否存在,若所述VN的上下文/VRF转发表不存在,则生成所述VN的VRF转发表;进一步,若在所述VRF转发表中所述VM对应的VRF表项不存在,则所述EVB站生成所述VM对应的VRF转发表表项,并将所述VM对应的VRF转发表表项增加到所述VRF转发表中。
[0122]具体的,所述发送端以VM为例,如果VM通过了 VN的身份认证,且VM是所述VN在EVB站/NVE中的第一个连接VM,则NVE创建VN的上下文/虚拟网络实例VNI,包括VRF表。并针对VM,可选的,分配对应的VLAN-1D信息,并将该VLAN-1D和对应的物理接口信息,作为转发表表项的内容,在VRF中形成VM对应的VN转发表项。如果VN的上下文已经存在但是VM的对应表项不存在,同样针对VM,可选的,分配对应的VLAN-1D信息,并将该VLAN-1D和对应的物理接口信息,作为表项的内容,在VRF中形成VM对应的VN转发表项。可选的,如果所述VM对应的转发表表项已经存在,则可以不做处理,或者如果有关的参数,例如分配的VLAN-1D有变化,则对对应的表项做相应的修改。
[0123]具体的,VRF表项包括但不限于:VM的IP/MAC地址,接口和/或子接口(例如VLANID),虚拟网络号/标识(VN-1D)。
[0124]在NVE生成新的VRF转发表,或者VRF转发表中的内容发生变化时,NVE通过NVE-NVA协议进行虚拟网络的信息同步。具体的,NVE可以通过协议自动地同步虚拟网络的其他NVE的路由信息,即,将本地的路由信息,或者是新更新的路由信息通过NVA同步到虚拟网络中的其他所有NVE中。而不同的路由信息的发布,通过虚拟网络ID来进行区分,从而不至于发生不同虚拟网络之间的路由更新发生错误。
[0125]在本发明其他实施例中也还可以是NVE发送报文到其他NVE:—般通过虚拟网络ID进行封装区分不同的虚拟网络,目的VNE发送报文给所述虚拟网络的虚拟机,也可以作为目的端NVE从其他NVE接收报文。
[0126]为了进一步说明本发明技术方案,提出本发明方案典型的处理流程。
[0127]第一个处理流程:生成VM并设置初始化参数;VM的生成,触发VM对应的EVB站开始运行;这里,EVB站为支持VM及VM所对应的虚拟网络适配器(VNIC) /VSI的EVB站。VM通过ER发送带命令指示信息的加入VN的扩展VDP命令;如果指示信息指示VDP命令,由本地处理,则处理该VDP命令JiVM进行接入VN的身份认证;NVA返回身份认证的结果信息。如果认证通过,进一步反馈EVB桥VN-1D、IP地址(可选的,该IP地址是新针对VM新分配的IP地址,或者是对VM的IP地址的确认)、VN上下文/VRF转发表生成命令;如果认证不通过,则处理过程结束。EVB站在VN上下文/VRF转发表不存在时,生成VN对应的上下文/VRF转发表;针对VM形成对应的VN转发表项。
[0128]这里,如果VM通过了 VN的身份认证且VM是该VN在该NVE上的第一个连接VM,则NVE自动创建VN的上下文包括相应的VRF表。这个过程,也可以由NVA来实现判断,并通过VN上下文/VRF转发表生成命令来明确指示NVE进行该VN的上下文/VRF转发表的创建。
[0129]如果VRF转发表已经存在,则不用生成转发表,而判断VM所对应的转发表项是否存在,如果不存在,则在该VN的VRF表中形成对应的转发表项。
[0130]EVB站/NVE经由网络虚拟化控制设备NVA实现将该NVE的新增加的转发表条目/转发表更新信息同步到该NV中的所有其他EVB桥/NVE中。
[0131]这里通过NVA同步到VN中的其他所有NVE中。而不同VN的路由信息的通告,通过VN-1D来进行区分,从而不至于发生不同VN之间的路由更新发生错误。
[0132]VM进行报文转发。具体的,
[0133]使用VN-1D进行IP报文封装;或,进一步,封装后的IP报文,进一步通过预先设置的第二层协议L2进行报文的封装。
[0134]另外一个处理流程:
[0135]生成VM并设置初始化参数;VM的生成,触发VM对应的EVB站开始运行;这里,EVB站为支持VM及VM所对应的虚拟网络适配器(VNIC) /VSI的EVB站。VM通过ER发送带命令指示信息的加入VN的扩展VDP命令;如果指示信息指示VDP命令,不由本地处理,则转发该VDP命令至EVB桥;对VM进行接入VN的身份认证;NVA返回身份认证的结果信息。如果认证通过,进一步反馈EVB桥VN-1D、IP地址(可选的,该IP地址是新针对VM新分配的IP地址,或者是对VM的IP地址的确认)、VN上下文/VRF转发表生成命令;如果认证不通过,则处理过程结束。EVB桥在VN上下文/VRF转发表不存在时,生成VN对应的上下文/VRF转发表;针对VM形成对应的VN转发表项。
[0136]这里,如果VM通过了 VN的身份认证且VM是该VN在该NVE上的第一个连接VM,则NVE自动创建VN的上下文包括相应的VRF表。这个过程,也可以由NVA来实现判断,并通过VN上下文/VRF转发表生成命令来明确指示NVE进行该VN的上下文/VRF转发表的创建。
[0137]如果VRF转发表已经存在,则不用生成转发表,而判断VM所对应的转发表项是否存在,如果不存在,则在该VN的VRF表中形成对应的转发表项。
[0138]EVB桥反馈处理的确认信息至VM/ER/EVB站,包括可选的:VN_ID信息,及IP地址信息。EVB桥/NVE经由网络虚拟化控制设备NVA实现将该NVE的新增加的转发表条目/转发表更新信息同步到该NV中的所有其他EVB桥/NVE中。
[0139]这里。通过NVA同步到VN中的其他所有NVE中。而不同VN的路由信息的通告,通过VN-1D来进行区分,从而不至于发生不同VN之间的路由更新发生错误。VM进行报文转发。具体的,
[0140]使用VN-1D进行IP报文封装;或,进一步,封装后的IP报文,进一步通过预先设置的第二层协议L2进行报文的封装。
[0141]通过本发明实施例的方案,可以实现VMM/NVE和EVB桥/NVE的典型应用场景下的VDP的适应性,保证了基于VDP的虚拟网络功能得以顺利实现。
[0142]本实施例通过在接收到的虚拟机VM加入虚拟网络VN的VDP报文中添加命令类型指示信息,通过命令类型指示信息指示是EVB站处理所述VDP报文,或者EVB桥处理所述VDP报文,以将所述VM接入虚拟网络。有效避免目前在基于VDP的VN的实现过程中遇到的问题。扩展了 EVB的适用范围,降低基于VDP的VN的实现过程的复杂度,进而提高VN实现的效率。
[0143]对应上述虚拟网络的实现装置的实施例,本发明还提出一种虚拟网络的实现系统,包括如上所述的虚拟网络实现装置及EVB桥,其中:
[0144]所述的虚拟网络实现装置,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;还用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述虚拟网络实现装置处理所述VDP报文;还用于若是在所述虚拟网络实现装置处理所述VDP报文,则将所述VM接入所述VN ;还用于若不在所述虚拟网络实现装置处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理;
[0145]所述EVB桥,用于对所述VDP报文进行处理,实现所述VM接入所述VN ;
[0146]所述的虚拟网络实现装置,还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应表项。所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义;所述虚拟网络实现装置为EVB站,同时支持EVB桥和NVE功能。
[0147]所述虚拟网络的实现装置的功能和实现过程如上所述,在此不再一一赘述。
[0148]本实施例通过在接收到的虚拟机VM加入虚拟网络VN的VDP报文中添加命令类型指示信息,通过命令类型指示信息指示是EVB站处理所述VDP报文,或者EVB桥处理所述VDP报文,以将所述VM接入虚拟网络。有效避免目前在基于VDP的VN的实现过程中遇到的问题。所述带命令类型指示信息的加入VN的VDP报文是对现有VDP报文的扩展。本发明扩展了 EVB的适用范围,并进一步提高了 VN的实现效率。扩展了 EVB的适用范围,降低基于VDP的VN的实现过程的复杂度,进而提高VN实现的效率。
[0149]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种虚拟网络的实现方法,其特征在于,包括步骤: EVB站接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息; 所述EVB站根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文; 若是,则所述EVB站处理所述VDP报文并将所述VM接入所述VN ; 若否,则所述EVB站将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN。2.如权利要求1所述的方法,其特征在于,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义。3.如权利要求1所述的方法,其特征在于,所述EVB站,支持EVB桥和NVE。4.如权利要求1至3任一项所述的虚拟网络的实现方法,其特征在于,所述EVB站/EVB桥将所述VM接入所述VN的步骤包括: 所述EVB站/EVB桥接收所述VM是否通过所述VN的身份认证的验证信息; 所述EVB站/EVB桥在所述VM验证通过后,判断所述VN的上下文/VRF转发表是否存在; 若不存在,则所述EVB站/EVB桥生成所述VN的VRF转发表; 若在所述VRF转发表中所述VM对应的VRF表项不存在,则所述EVB站/EVB桥在所述VRF转发表中生成所述VM对应的VRF转发表表项。5.一种虚拟网络的实现装置,其特征在于,包括: 接收模块,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息; 判断模块,用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述EVB站处理所述VDP报文; 发送模块,用于若不在所述EVB站处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理,以在EVB桥中实现所述VM接入所述VN ; 处理模块,用于若在所述EVB站处理所述VDP报文,则处理所述VDP报文并将所述VM接入所述VN ;还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应VRF转发表表项。6.如权利要求5所述的虚拟网络的实现装置,其特征在于,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义。7.如权利要求5或6所述的虚拟网络的实现装置,其特征在于,所述实现装置是EVB站,同时支持EVB桥和NVE功能。8.一种虚拟网络的实现系统,其特征在于,包括如权利要求5至7任一项所述的虚拟网络实现装置及EVB桥,其中: 所述的虚拟网络实现装置,用于接收所述EVB站中的ER代表VM发出的加入虚拟网络VN的VDP报文,所述VDP报文包括命令类型指示信息;还用于根据所述VDP报文中包括的命令类型指示信息判断是否在所述虚拟网络实现装置处理所述VDP报文;还用于若是在所述虚拟网络实现装置处理所述VDP报文,则将所述VM接入所述VN ;还用于若不在所述虚拟网络实现装置处理所述VDP报文,则将所述VDP报文发送至EVB桥进行处理; 所述EVB桥,用于对所述VDP报文进行处理,实现所述VM接入所述VN ; 所述的虚拟网络实现装置,还用于实现对所述VM的VN身份认证;在所述VM通过所述VN的身份认证后,若所述VN的上下文/VRF转发表不存在则生成所述VN的上下文/VRF转发表;若所述VM在所述VRF转发表中没有对应的表项,则在所述VRF转发表中生成所述VM的对应表项。9.如权利要求8所述的虚拟网络实现系统,其特征在于,所述命令类型指示信息,通过VDP命令报文的过滤信息字段进行定义;或者,通过保留的VDP类型值进行定义;所述虚拟网络实现装置为EVB站,同时支持EVB桥和NVE功能。
【文档编号】H04L29/06GK106034115SQ201510111334
【公开日】2016年10月19日
【申请日】2015年3月13日
【发明人】顾忠禹
【申请人】中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1