实现虚拟可扩展局域网多域并存的方法和系统与流程

文档序号:14847698发布日期:2018-06-30 16:56阅读:262来源:国知局
实现虚拟可扩展局域网多域并存的方法和系统与流程

本发明涉及智能管道领域与软件定义网络SDN领域,特别涉及一种实现虚拟可扩展局域网多域并存的方法和系统。



背景技术:

随着技术发展,通信网络正在步入以SDN与NFV(Network Function Virtualization,网络功能虚拟化)技术为核心的新一代网络架构中。而在这个过程中,数据中心是第一个突破点,而第二个突破点则以IP城域网的虚拟化为重点。

对于IP城域网的虚拟化过程中,业务的集中化与机房的DC(data center,数据中心)化是两大方向。业务集中化是指将原来按地域划分的业务接入控制层集中起来,向按业务类型或用户类型划分的方向演进,也就是说可根据业务属性,将大流量的业务按属地原则进行处理,而对于小流量或者新兴业务则按省或者全国构建统一的业务运营及控制中心,在业务管控成本与业务灵活性方面取得平衡。而机房DC化是指将原来的城域网汇聚机房逐步改造为符合通用设备要求的小型数据中心机房,并将这些DC化后的机房通过统一的云平台关联起来,形成一个跨多个物理机房的虚拟数据中心,实现虚拟数据中心的集中管控与资源自由调度。

由于同一个用户在同一个接入点接入的不同业务会根据业务属性归属到不同的业务接入控制单元来处理,也就是该用户的业务流量一部分会在本地进行处理,而另一部分会穿透城域网或骨干网到异地进行处理。这样就需要在IP城域网中根据业务属性进行分流,并将部分流量通过二层隧道传送到对应的业务接入控制单元所在位置。这个过程中,采用VxLAN(Virtual Extensible LAN,虚拟可扩展局域网)方案是一种被广泛接受的方式。

VxLAN采用MAC(Medium Access Control,媒体访问控制)in UDP(User Datagram Protocol,用户数据报协议)的方法进行封装,固定采用4798为目的端口,VxLAN作为VLAN(Virtual Local Area Network,虚拟局域网)技术的扩充,将4k个VLAN扩展到16M个VxLAN,突破了传统网络架构限制与租户数量限制等难题,可以在不用改变现有网络架构条件下支撑新的云计算业务,方便用户部署。

但在实际应用中,我们发现VxLAN毕竟是一种二层技术,它所能提供的VNI号(VxLAN Network Identifier,VxLAN网络标识)虽然能到16777215,但毕竟这只有24位,参照IPv4的32位地址都不够使用的情况来看,显然不能在一个大范围内只使用一个地址空间(VxLAN域)。而且在大范围内只使用一个地址空间(VxLAN域),也违背了VxLAN作为二层组网的设计原则。

为了避免不同地址空间的冲突的问题,一种方案是将VNI分段,比如第一段是全国性VNI,也称全局VNI,即这部分VNI是全国范围内有效,只能由全国业务运营中心分配和使用,而第二段是本地VNI,也称私有VNI,由本地业务运营中心分配和使用,不同地方可以使用相同的VNI,但两个不同地方的相同VNI号的VxLAN不能互通。但这样的方法并不能从根本上解决问题,参照现有的IPv4地址不足的情况来看,仅24位的VNI将更快出现不够用的情况。此外,这种方式也不够灵活,当用户需求发生变化时,比如原来只有本地业务,现在要申请全局业务,按照上述方案,只能更换VNI,需要大量的配置和调整工作,影响客户感知。

而另外一种方案是采用VxLAN GW(VxLAN网关设备),作为不同VxLAN域的互通节点。由VxLAN GW负责在不同VxLAN域之间进行翻译,比如当本地VTEP(VXLAN Tunneling End Point,VXLAN隧道终端)计划访问全国资源池的VTEP时,其流量先到VxLAN GW,将本地VNI翻译成对应的全国VNI,再通过骨干网达到远端的VTEP。所有全局流量都需要经过VxLAN GW的翻译,对VxLAN GW的性能要求高,通常需要高端路由器,其网络建设与维护成本高,可实现性较差。

此外,现有的IP城域网设备并不支持VxLAN功能,需要更换硬件设备或板卡,才能实现VxLAN GW功能。因此需要在全国范围内进行大量的设备替换,网络建设成本高昂,短期内实现难度很大。



技术实现要素:

鉴于以上技术问题,本发明提供了一种实现虚拟可扩展局域网多域并存的方法和系统,在单个VTEP上同时支持多个VxLAN域,能够减少对VxLAN GW设备的需求。

根据本发明的一个方面,提供一种实现虚拟可扩展局域网多域并存的方法,包括:

在单个VxLAN隧道终端VTEP节点上同时支持多个虚拟可扩展局域网VxLAN域;

VxLAN域内一个软件定义网络SDN控制器的VxLAN网络标识VNI分配表有更新时,向所述VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目。

在本发明的一个实施例中,所述VxLAN域内一个软件定义网络SDN控制器的VxLAN网络标识VNI分配表有更新时,向所述VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目包括:

发起地SDN控制器根据业务输入,对在虚拟可扩展局域网VxLAN域内新增加的VNI信息,生成相应的VNI分配表条目;

发起地SDN控制器根据VxLAN域标识,确定找到所述VxLAN域内所有对等SDN控制器信息;

发起地SDN控制器向域内所有对等SDN控制器广播所述VNI分配表条目,以保持域内所有SDN控制器的针对所述VxLAN域的VNI分配表的一致性。

在本发明的一个实施例中,所述发起地SDN控制器向域内所有对等的SDN控制器广播所述VNI分配表条目之后,所述方法还包括:

发起地SDN控制器判断是否在预定时间内收到所有对等SDN控制器的同步回应;

若在预定时间内收到所有对等SDN控制器的同步回应,则判断是否出现VNI号冲突;

若出现VNI号冲突,则发起地SDN控制器重新分配新的VNI号,之后执行发起地SDN控制器向域内所有对等SDN控制器广播所述VNI分配表条目的步骤;

若未出现VNI号冲突,发起地SDN控制器向域内所有SDN控制器确认所述VNI分配表条目有效。

在本发明的一个实施例中,所述发起地SDN控制器判断是否在预定时间内收到所有对等SDN控制器的同步回应之后,所述方法还包括:

若未在预定时间内收到所有对等SDN控制器的同步回应,则发出故障报警信号。

在本发明的一个实施例中,所述方法还包括:

VTEP节点下的主机发出地址解析协议ARP请求的情况下,只能在所述主机所述的VxLAN域内实施泛洪。

在本发明的一个实施例中,所述一个VTEP节点下的主机发出地址解析协议ARP请求的情况下,只能在所述主机所述的VxLAN域内实施泛洪包括:

VTEP节点下的主机发出地址解析协议ARP请求;

所述VTEP节点将所述ARP请求转发给所述VTEP节点对应的近端SDN控制器;

近端SDN控制器通过ARP请求报文中的源地址信息查询所述主机对应的VxLAN域标识;

在所述VxLAN域范围内进行ARP请求泛洪,以完成MAC地址学习。

在本发明的一个实施例中,所述在所述VxLAN域范围内进行ARP请求泛洪,以完成MAC地址学习包括:

近端SDN控制器根据所述VxLAN域标识,查询所述VxLAN域内的VTEP节点信息;

近端SDN控制器向远端VTEP节点所对应的远端SDN控制器发送ARP请求;

远端SDN控制器收到ARP请求后,向其管理范围内的VTEP节点转发ARP请求;

远端VTEP节点在对应的VxLAN域内对ARP请求进行泛洪;

当远端SDN控制器经过VTEP节点收到ARP回应后,更新域内MAC地址信息表;

远端SDN控制器将ARP回应转发给源地址,完成ARP学习过程。

根据本发明的另一方面,提供一种实现虚拟可扩展局域网多域并存的系统,包括虚拟可扩展局域网隧道终端VTEP节点和软件定义网络SDN控制器,其中:

单个VTEP节点,用于同时支持多个虚拟可扩展局域网VxLAN域;

SDN控制器,用于在VxLAN网络标识VNI分配表有更新时,向所述SDN控制器所属VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目。

在本发明的一个实施例中,发起地SDN控制器,用于根据业务输入,对在虚拟可扩展局域网VxLAN域内新增加的VNI信息,生成相应的VNI分配表条目;根据VxLAN域标识,确定找到所述VxLAN域内所有对等SDN控制器信息;并向域内所有对等SDN控制器广播所述VNI分配表条目,以保持域内所有SDN控制器的针对所述VxLAN域的VNI分配表的一致性。

在本发明的一个实施例中,发起地SDN控制器还用于判断是否在预定时间内收到所有对等SDN控制器的同步回应;在预定时间内收到所有对等SDN控制器的同步回应的情况下,判断是否出现VNI号冲突;在出现VNI号冲突的情况下,重新分配新的VNI号,之后执行发起地SDN控制器向域内所有对等SDN控制器广播所述VNI分配表条目的步骤;在未出现VNI号冲突的情况下,向域内所有SDN控制器确认所述VNI分配表条目有效。

在本发明的一个实施例中,发起地SDN控制器还用于在在预定时间内未收到所有对等SDN控制器的同步回应的情况下,发出故障报警信号。

在本发明的一个实施例中,所述系统还包括VTEP节点下的主机,其中:

主机,用于发出地址解析协议ARP请求的情况下,只能在所述主机所述的VxLAN域内实施泛洪。

在本发明的一个实施例中,主机用于发出地址解析协议ARP请求;

所述主机对应的VTEP节点,用于将所述ARP请求转发给所述VTEP节点对应的近端SDN控制器;

近端SDN控制器,用于通过ARP请求报文中的源地址信息查询所述主机对应的VxLAN域标识,以便在所述VxLAN域范围内进行ARP请求泛洪,以完成MAC地址学习。

在本发明的一个实施例中,近端SDN控制器用于根据所述VxLAN域标识,查询所述VxLAN域内的VTEP节点信息;和向远端VTEP节点所对应的远端SDN控制器发送ARP请求;

远端SDN控制器,用于在收到ARP请求后,向其管理范围内的VTEP节点转发ARP请求;

远端VTEP节点,用于在对应的VxLAN域内对ARP请求进行泛洪;在经过VTEP节点收到ARP回应后,更新域内MAC地址信息表;以及将ARP回应转发给源地址,完成ARP学习过程。

本发明通过在单个VTEP上同时支持多个VxLAN域,能够减少对VxLAN GW设备的需求;可以尽可能将业务分流点下沉,减少网络投资,降低网络管理复杂度,并有助于实现基于VxLAN信息的网络流量灵活调度能力。

附图说明

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

图1为本发明实现虚拟可扩展局域网多域并存的系统第一实施例的示意图。

图2为本发明实现虚拟可扩展局域网多域并存的方法第一实施例的示意图。

图3为本发明实现虚拟可扩展局域网多域并存的方法第二实施例的示意图。

图4为本发明一个实施例中域内VNI分配表同步的流程示意图。

图5为本发明一个实施例中ARP泛洪流程的流程示意图。

图6为本发明实现虚拟可扩展局域网多域并存的系统第二实施例的示意图。

图7是本发明图6实施例中所得到VNI分配表项的示意。

图8是本发明图6实施例中所得到MAC地址信息表项的示意。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图1为本发明实现虚拟可扩展局域网多域并存的系统第一实施例的示意图。如图1所示,所述实现虚拟可扩展局域网多域并存的系统可以包括VTEP节点和SDN控制器,其中:

具体到图1实施例中,VTEP节点包括VTEP1、VTEP2、VTEP3和VTEP4,SDN控制器包括SDN控制器1和SDN控制器2。

单个VTEP节点,用于同时支持多个虚拟可扩展局域网VxLAN域。例如:图1实施例中VTEP1可以同时支持域内VxLAN隧道10和跨域VxLAN隧道20。

SDN控制器,用于在VxLAN网络标识VNI分配表有更新时,向所述SDN控制器所属VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目。

所述实现虚拟可扩展局域网多域并存的系统还包括系统内配置和维护的VxLAN域标识、VNI分配表和MAC地址信息表,其中:

所述VxLAN域标识,是指一个独立的VxLAN地址空间的标识,用以区分某个VLAN对应的VNI是属于哪个VxLAN域。当一个VTEP节点发出ARP(Address Resolution Protocol,地址解析协议)请求时,只能在其所属的VxLAN域内实施泛洪。

例如:对于图1实施例中而言,VTEP1同时支持VxLAN域标识为10和20的VxLAN域。VTEP2支持VxLAN域标识为10的VxLAN域。VTEP4支持VxLAN域标识为20的VxLAN域。

所述VNI分配表,是指每个VxLAN域所分配的VxLAN网络信息,包括VxLAN域标识、VTEP节点信息、SDN控制器信息、VNI信息和VLAN信息等。

所述MAC地址信息表,是指由SDN控制器所记录的MAC地址表项,包括MAC地址、VLAN信息、VTEP接入端口信息、VTEP信息、VNI信息、VxLAN域标识等。

所述实现虚拟可扩展局域网多域并存的系统还用于执行域内VNI分配表同步流程和ARP泛洪流程,其中:

所述域内VNI分配表同步流程,是指SDN控制器根据业务输入,对在某个VxLAN域内新增加的VNI信息,生成相应的VNI分配表条目,再通过SDN控制器东西向接口协议或者协同层,在该VxLAN域内广播该VNI分配表条目,保持域内所有SDN控制器的针对该域的VNI分配表的一致性。

所述ARP泛洪流程,是指当某个VTEP节点下的某台主机发起ARP请求时,ARP报文先发送到SDN控制器,SDN控制器通过ARP请求报文中的源地址信息,查询MAC地址信息表,得到该主机所属的VxLAN标识,确认该主机是属于哪个VxLAN域,再查找VNI分配表,在该VxLAN域内范围内进行ARP请求泛洪从而完成MAC地址学习流程。

基于本发明上述实施例提供的实现虚拟可扩展局域网多域并存的系统,通过在单个VTEP上同时支持多个VxLAN域,能够减少对VxLAN GW设备的需求;可以尽可能将业务分流点下沉,减少网络投资,降低网络管理复杂度,并有助于实现基于VxLAN信息的网络流量灵活调度能力。

下面对本发明实施例中所述实现虚拟可扩展局域网多域并存的系统执行域内VNI分配表同步流程和ARP泛洪流程的过程进行进一步描述。

所述系统完成域内VNI分配表同步的功能:

在本发明的一个实施例中,发起地SDN控制器,用于根据业务输入,对在虚拟可扩展局域网VxLAN域内新增加的VNI信息,生成相应的VNI分配表条目;根据VxLAN域标识,确定找到所述VxLAN域内所有对等SDN控制器信息;并向域内所有对等SDN控制器广播所述VNI分配表条目,以保持域内所有SDN控制器的针对所述VxLAN域的VNI分配表的一致性。

在本发明的一个实施例中,发起地SDN控制器还用于判断是否在预定时间内收到所有对等SDN控制器的同步回应;在预定时间内收到所有对等SDN控制器的同步回应的情况下,判断是否出现VNI号冲突;在出现VNI号冲突的情况下,重新分配新的VNI号,之后执行发起地SDN控制器向域内所有对等SDN控制器广播所述VNI分配表条目的步骤;在未出现VNI号冲突的情况下,向域内所有SDN控制器确认所述VNI分配表条目有效。

在本发明的一个实施例中,发起地SDN控制器还用于在在预定时间内未收到所有对等SDN控制器的同步回应的情况下,发出故障报警信号。

所述系统完成ARP泛洪功能:

在本发明的一个实施例中,所述系统还包括VTEP节点下的主机,其中:

主机,用于发出地址解析协议ARP请求的情况下,只能在所述主机所述的VxLAN域内实施泛洪。

在本发明的一个实施例中,主机用于发出地址解析协议ARP请求;

所述主机对应的VTEP节点,用于将所述ARP请求转发给所述VTEP节点对应的近端SDN控制器;

近端SDN控制器,用于通过ARP请求报文中的源地址信息查询所述主机对应的VxLAN域标识,以便在所述VxLAN域范围内进行ARP请求泛洪,以完成MAC地址学习。

在本发明的一个实施例中,近端SDN控制器用于根据所述VxLAN域标识,查询所述VxLAN域内的VTEP节点信息;和向远端VTEP节点所对应的远端SDN控制器发送ARP请求;

远端SDN控制器,用于在收到ARP请求后,向其管理范围内的VTEP节点转发ARP请求;

远端VTEP节点,用于在对应的VxLAN域内对ARP请求进行泛洪;在经过VTEP节点收到ARP回应后,更新域内MAC地址信息表;以及将ARP回应转发给源地址,完成ARP学习过程。

和现有技术相比后,主要优势在于:

目前主要有两类解决方案,一是公网VNI与私有VNI方案,即全网为一个VxLAN域,需要统一管理VNI号分配,规划其中一部分为全局VNI,由集团统一管理,并预留一部分为本地VNI,可以按省或本地网为单位复用,此方案类似于IPv4地址分配,显然24位VNI号的数量还远下于32位的IPv4地址,所以此方案将很快面临VNI数量不足的问题,会对网络建设带来很大的限制。而另外一种方案是VxLAN隧道拼接方案,即将VxLAN分为全国VxLAN域与本地VxLAN域,两个域通过VxLAN GW进行互通,当本地VTEP计划访问全国资源池的VTEP时,其流量先到VxLAN GW,将本地VNI翻译成对应的全国VNI,再通过骨干网达到远端的VTEP,由于在该方案中,所有全局流量都需要经过VxLAN GW的翻译,对VxLAN GW的性能要求高,导致网络建设与维护成本居高不下。

本发明上述实施例的系统能够实现多个VxLAN域在一个VTEP节点共存,能够减少VxLAN GW的使用,去掉了一个昂贵而且复杂的设备节点,且VNI规划更为灵活,可根据业务需求任意调整,能够有效降低设备复杂度,成本相对较低,很容易在现网部署。

图2为本发明实现虚拟可扩展局域网多域并存的方法第一实施例的示意图。优选的,本实施例可由本发明实现虚拟可扩展局域网多域并存的系统执行。如图2,所述方法可以包括:

步骤100,在单个VxLAN隧道终端VTEP节点上同时支持多个虚拟可扩展局域网VxLAN域。

步骤200,域内VNI分配表同步。VxLAN域内一个软件定义网络SDN控制器的VxLAN网络标识VNI分配表有更新时,向所述VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目。

图3为本发明实现虚拟可扩展局域网多域并存的方法第二实施例的示意图。优选的,本实施例可由本发明实现虚拟可扩展局域网多域并存的系统执行。如图3,所述方法可以包括:

步骤100,在单个VxLAN隧道终端VTEP节点上同时支持多个虚拟可扩展局域网VxLAN域。

步骤200,域内VNI分配表同步。VxLAN域内一个软件定义网络SDN控制器的VxLAN网络标识VNI分配表有更新时,向所述VxLAN域内所有对等SDN控制器广播所述VNI分配表更新条目。

步骤300,ARP泛洪。VTEP节点下的主机发出地址解析协议ARP请求的情况下,只能在所述主机所述的VxLAN域内实施泛洪。

图4为本发明一个实施例中域内VNI分配表同步的流程示意图。优选的,本实施例可由本发明实现虚拟可扩展局域网多域并存的系统执行。如图4所示,图2或图3实施例中的步骤200可以包括:

步骤201:网络管理者在某个SDN控制器上录入新的VNI分配条目,包括该VNI所属的VxLAN域标识、该VNI所存在的VTEP节点信息、所对应的SDN控制器信息等,该SDN控制器也称为发起地SDN控制器。

步骤202:发起地SDN控制器根据VxLAN域标识找到该域内所有对等SDN控制器信息。

步骤203:发起地SDN控制器向域内所有对等的SDN控制器广播该VNI预分配信息。

步骤204:在预定时间内,所有对等的SDN控制器应向发起SDN控制器回应同步是否成功。如果有回应,则进入步骤205,如果超过一段时间,仍有SDN控制器未回应此消息,则进入步骤208。

步骤205:发起地SDN控制器检查所有同步回应。如果未发现异常,则进入步骤206;如果发现出现VNI号冲突,即在本VxLAN域内已经分配过此VNI号,不能再次分配,则进入步骤207;

步骤206:发起地SDN控制器向域内所有SDN控制器确认该VNI分配信息有效,所有SDN控制器更新其保存的VNI分配表。

步骤207:由于VNI已经被占用,由发起地SDN控制器重新分配新的VNI号,再进入步骤20。

步骤208:在当规定时间内未收到回应,意味着SDN控制器之间的连接中断,因此系统将自动发出故障告警,进入网络故障定位与维护状态。

图5为本发明一个实施例中ARP泛洪流程的流程示意图。优选的,本实施例可由本发明实现虚拟可扩展局域网多域并存的系统执行。如图5所示,图3实施例中的步骤300可以包括:

步骤301:某个VTEP节点下的主机设备发出ARP请求。

步骤302:VTEP收到该ARP请求后,再转发至其对应的SDN控制器(近端SDN控制器)。

步骤303:由近端SDN控制器根据ARP请求报文的源地址查询其VxLAN域标识。

步骤304:近端SDN控制器再根据VxLAN域标识,查询该域内的VTEP节点信息。

步骤305:向远端VTEP节点所对应的远端SDN控制器发送ARP请求。

步骤306:远端SDN控制器收到ARP请求后,向其管理范围内的VTEP节点转发ARP请求。

步骤307:由远端VTEP节点负责在对应的VxLAN域内对ARP请求进行泛洪。

步骤308:当远端SDN控制器经过VTEP节点收到ARP回应后,更新域内MAC地址信息表。

步骤309:最后由远端SDN控制器将ARP回应转发给源地址,完成ARP学习过程。

基于本发明上述实施例提供的实现虚拟可扩展局域网多域并存的方法,通过在单个VTEP上同时支持多个VxLAN域,能够减少对VxLAN GW设备的需求;可以尽可能将业务分流点下沉,减少网络投资,降低网络管理复杂度,并有助于实现基于VxLAN信息的网络流量灵活调度能力。

本发明上述实施例的方法能够实现多个VxLAN域在一个VTEP节点共存,能够减少VxLAN GW的使用,去掉了一个昂贵而且复杂的设备节点,且VNI规划更为灵活,可根据业务需求任意调整,能够有效降低设备复杂度,成本相对较低,很容易在现网部署。

下面通过具体实施例对本发明实现虚拟可扩展局域网多域并存的方法和系统进行说明。

图6为本发明实现虚拟可扩展局域网多域并存的系统第二实施例的示意图。

如图6所示,VETP1为本地接入侧业务分流点,其中下挂用户VM1,而VM1上有两类业务,分别以不同的VLAN作为标识。其中,VLAN100表示一种全局业务,需要上联到全局资源池中的VM3,而VLAN200表示一种本地业务,需要上联到本地资源池中的VM2.

VTEP1归属于SDN控制器1,即本地城域网SDN控制器,VTEP2归属于SDN控制器2,即本地业务控制SDN控制器,VTEP3归属于SDN3,即全局业务控制SDN控制器。三个SDN控制器建有东西向接口,当然也可以通过统一的协同层交互信息。本实施例中以东西向接口为例,协同层则类似。

第一步,创建VNI分配表。在本实施例中,存在两个VxLAN域,全局VxLAN域和本地VxLAN域,将会为两个VxLAN域分别创建VNI表,即全局VNI分配表和本地VNI分配表,如附图7所示。

根据SDN控制器的管理范围,SDN控制器1将保存并与SDN控制器2同步本地VNI分配表,同时,SDN控制器1将保存并与SDN控制器3同步全局VNI分配表。

第二步,创建VxLAN MAC表。下面就两种情况分别说明VxLANMAC表的创建过程。

第一种是本地发起对未知MAC地址的IP目的地址的ARP查询,比如SDN控制器1收到了VM1通过VLAN200发送的针对IP地址172.18.1.200/24的ARP请求。

SDN控制器1知道到此ARP请求是从VTEP1的VLAN200发送过来的,通过查询本地VNI表,知道该VTEP1的VLAN200是属于本地VNI,即VxLAN域标识为10。继续查询此表,知道远端VTEP为VTEP2,属于SDN控制器2管理。

此时SDN控制器1将ARP请求转发给SDN控制器2,SDN控制器2会将ARP请求转发给相应的VTEP节点,完成ARP泛洪。根据所收到的ARP回应,更新VxLAN MAC地址表现,并在VxLAN域内同步。

第二种情况,当本地资源池中的VTEP2要发起针对VM1的地址请求。比如SDN控制器2收到了VM1通过VLAN200发送的针对IP地址172.18.1.11/24的ARP请求。

SDN控制器2知道到此ARP请求是从VTEP2的VLAN100发送过来的,通过查询本地VNI表,知道该VTEP1的VLAN100是属于本地VxLAN域,即VxLAN域标识为10。继续查询此表,知道远端VTEP为VTEP1,属于SDN控制器1管理。

此时SDN控制器2将ARP请求转发给SDN控制器1,SDN控制器1将ARP请求转发给相应的VTEP节点,完成ARP泛洪。根据所收到的ARP回应,更新VxLAN MAC地址表现,并在VxLAN域内同步。

最后形成的VxLAN MAC表如附图8。

本发明上述实施例通过在单个VTEP上同时支持多个VxLAN域,能够减少对VxLAN GW设备的需求;可以尽可能将业务分流点下沉,减少网络投资,降低网络管理复杂度,并有助于实现基于VxLAN信息的网络流量灵活调度能力。

本发明上述实施例的方案能够实现多个VxLAN域在一个VTEP节点共存,能够减少VxLAN GW的使用,去掉了一个昂贵而且复杂的设备节点,且VNI规划更为灵活,可根据业务需求任意调整,能够有效降低设备复杂度,成本相对较低,很容易在现网部署。

在上面所描述的SDN控制器和VTEP可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。

至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1