基于VXLAN网络的流量转发控制方法及装置与流程

文档序号:11138337阅读:814来源:国知局
基于VXLAN网络的流量转发控制方法及装置与制造工艺

本发明涉及通信技术领域,尤指一种基于虚拟可扩展局域网(Virtual eXtensible Local Area Network,VXLAN)网络的流量转发控制方法及装置。



背景技术:

VXLAN网络中的叶(Leaf)脊(Spine)模型是典型的数据中心组网模型,如图1所示,企业一般拥有多个部门(例如,部门1和部门2),每个部门拥有多个虚拟机(Virtual Machine,VM),图中示出的部门1拥有VM1和VM2,部门2拥有VM3和VM4。通常企业中要求同一部门的VM之间、不同部门的VM之间、VM与互联网协议(Internet Protocol,IP)网络之间可以互相访问。

如图1所示,Spine是VXLAN网络中的网关设备,Leaf1和Leaf2是VXLAN网络中的桥设备,Leaf1、Leaf2和Spine作为VXLAN网络的虚拟可扩展局域网隧道终端(Virtual eXtensible Local Area Network Tunnel End Point,VTEP),Leaf1和Spine之间、Leaf2和Spine之间分别建立了VXLAN隧道,并在Spine上部署VXLAN的三层网关,即可实现不同部门之间的VM互相通讯。

在现有的数据中心组网中,数据中心的规模较大,需要多台Spine作为VXLAN网络的任播(Anycast)网关组进行转发,这就需要合理控制多台Spine的流量转发,以确保VXLAN整网的转发效率最优。



技术实现要素:

本发明实施例提供一种基于VXLAN网络的流量转发控制方法及装置,用以合理控制多台Spine的流量转发,以确保VXLAN整网的转发效率最优。

根据本发明实施例,提供一种基于VXLAN网络的流量转发控制,所述VXLAN网络包括任播网关组与VXLAN桥设备,所述方法应用在所述任播网关组包括的网关设备中,所述方法包括:

确定自身设备在所述任播网关组的角色,所述角色为通告设备或者应答设备;

若所述自身设备在所述任播网关组的角色为通告设备,则以第一设定周期向所述任播网关组的应答设备发送资源请求,以使所述应答设备提供所述应答设备的设备资源信息和本地VXLAN隧道列表,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;接收所述应答设备发送的携带所述设备资源信息和所述本地VXLAN隧道列表的资源应答后,根据所述本地VXLAN隧道列表更新整网VXLAN隧道列表,以及根据所述设备资源信息确定所述应答设备的能力值;若所述能力值超过设定阈值,则向所述应答设备发送携带所述整网VXLAN隧道列表的繁忙通告,以使所述应答设备根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发;

若所述自身设备在所述任播网关组的角色为应答设备,则监控在第二设定周期内是否接收到所述任播网关组的通告设备发送的资源请求,若在所述第二设定周期内接收到所述通告设备发送的资源请求,则将所述应答设备的设备资源信息和本地VXLAN隧道列表携带在资源应答中发送给所述通告设备,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;若接收到所述通告设备发送的携带整网VXLAN隧道列表的繁忙通告,根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发。

具体的,确定所述自身设备在所述任播网关组的角色,具体包括:

在所述任播网关组中广播携带自身设备标识的选取请求,并接收所述任播网关组中的其他网关设备发送的携带对应网关设备的设备标识的选取请求;

将所述其他网关设备的设备标识分别与所述自身设备标识进行比较;

若所述自身设备标识最大,则确定所述自身设备在所述任播网关组中的角色为通告设备;

若所述自身设备标识不是最大,则确定所述自身设备在所述任播网关组中的角色为应答设备。

可选的,若所述自身设备在所述任播网关组的角色为通告设备,所述方法还包括:

若所述能力值未超过所述设定阈值,则确定之前是否向所述应答设备发送过繁忙通告;

若之前向所述应答设备发送过繁忙通告,则向所述应答设备发送恢复通告,以使所述应答设备恢复之前终止的流量转发。

可选的,根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发,具体包括:

根据所述整网VXLAN隧道列表确定与所述应答设备建立VXLAN隧道的桥设备,得到候选桥设备;

从所述候选桥设备中选取与所述任播网关组的至少一个其他网关建立VXLAN隧道连接的桥设备,得到选定桥设备;

若接收到所述选定桥设备发送的保活请求,则不向所述选定桥设备发送保活应答,以使所述选定桥设备不向所述应答设备发送流量。

可选的,若所述自身设备在所述任播网关组的角色为应答设备,所述方法还包括:

若在所述第二设定周期内未接收到所述通告设备发送的资源请求,确定所述通告设备失效;

重新执行所述确定在所述任播网关组的角色的步骤。

根据本发明实施例,还提供一种基于VXLAN网络的流量控制装置,所述VXLAN网络包括任播网关组与VXLAN桥设备,所述装置应用在所述任播网关组包括的网关设备中,所述装置包括:

确定模块,用于确定自身设备在所述任播网关组的角色,所述角色为通告设备或者应答设备;

第一控制模块,用于若所述自身设备在所述任播网关组的角色为通告设备,则以第一设定周期向所述任播网关组的应答设备发送资源请求,以使所述应答设备提供所述应答设备的设备资源信息和本地VXLAN隧道列表,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;接收所述应答设备发送的携带所述设备资源信息和所述本地VXLAN隧道列表的资源应答后,根据所述本地VXLAN隧道列表更新整网VXLAN隧道列表,以及根据所述设备资源信息确定所述应答设备的能力值;若所述能力值超过设定阈值,则向所述应答设备发送携带所述整网VXLAN隧道列表的繁忙通告,以使所述应答设备根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发;

第二控制模块,用于若所述自身设备在所述任播网关组的角色为应答设备,则监控在第二设定周期内是否接收到所述任播网关组的通告设备发送的资源请求,若在所述第二设定周期内接收到所述通告设备发送的资源请求,则将所述应答设备的设备资源信息和本地VXLAN隧道列表携带在资源应答中发送给所述通告设备,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;若接收到所述通告设备发送的携带整网VXLAN隧道列表的繁忙通告,根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发。

具体的,所述确定模块,具体用于:

在所述任播网关组中广播携带自身设备标识的选取请求,并接收所述任播网关组中的其他网关设备发送的携带对应网关设备的设备标识的选取请求;

将所述其他网关设备的设备标识分别与所述自身设备标识进行比较;

若所述自身设备标识最大,则确定所述自身设备在所述任播网关组中的角色为通告设备;

若所述自身设备标识不是最大,则确定所述自身设备在所述任播网关组中的角色为应答设备。

可选的,所述第一控制模块,还用于:

若所述能力值未超过所述设定阈值,则确定之前是否向所述应答设备发送过繁忙通告;

若之前向所述应答设备发送过繁忙通告,则向所述应答设备发送恢复通告,以使所述应答设备恢复之前终止的流量转发。

具体的,所述第二控制模块,具体包括:

根据所述整网VXLAN隧道列表确定与所述应答设备建立VXLAN隧道的桥设备,得到候选桥设备;

从所述候选桥设备中选取与所述任播网关组的至少一个其他网关建立VXLAN隧道连接的桥设备,得到选定桥设备;

若接收到所述选定桥设备发送的保活请求,则不向所述选定桥设备发送保活应答,以使所述选定桥设备不向所述应答设备发送流量。

可选的,所述第二控制模块,还用于:

若在所述第二设定周期内未接收到所述通告设备发送的资源请求,确定所述通告设备失效;

重新执行所述确定在所述任播网关组的角色的步骤。

本发明有益效果如下:

本发明实施例提供一种基于VXLAN网络的流量转发控制方法及装置,确定自身设备在所述任播网关组的角色,所述角色为通告设备或者应答设备;若所述自身设备在所述任播网关组的角色为通告设备,则以第一设定周期向所述任播网关组的应答设备发送资源请求,以使所述应答设备提供所述应答设备的设备资源信息和本地VXLAN隧道列表,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;接收所述应答设备发送的携带所述设备资源信息和所述本地VXLAN隧道列表的资源应答后,根据所述本地VXLAN隧道列表更新整网VXLAN隧道列表,以及根据所述设备资源信息确定所述应答设备的能力值;若所述能力值超过设定阈值,则向所述应答设备发送携带所述整网VXLAN隧道列表的繁忙通告,以使所述应答设备根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发;若所述自身设备在所述任播网关组的角色为应答设备,则监控在第二设定周期内是否接收到所述任播网关组的通告设备发送的资源请求,若在所述第二设定周期内接收到所述通告设备发送的资源请求,则将所述应答设备的设备资源信息和本地VXLAN隧道列表携带在资源应答中发送给所述通告设备,所述本地VXLAN隧道列表保存的是与所述应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;若接收到所述通告设备发送的携带整网VXLAN隧道列表的繁忙通告,根据所述整网VXLAN隧道列表选择性终止与所述应答设备建立VXLAN隧道的桥设备之间的流量转发。该方案中,通过在任播网关组中确定出通告设备和应答设备,并由通告设备确定每个应答设备的能力值,根据应答设备的能力值与设定阈值的大小关系确定对应的应答设备是否需要选择性终止流量转发,从而实现VXLAN整网的转发更加均衡,确保VXLAN整网的转发效率最优。

附图说明

图1为现有技术的数据中心组网模型的示意图;

图2为本发明实施例中基于VXLAN网络的流量转发控制方法的流程图;

图3为本发明实施例中S21的流程图;

图4为本发明实施例中S22的流程图;

图5为本发明实施例中基于VXLAN网络的流量转发控制装置的结构示意图。

具体实施方式

为了实现合理控制多台Spine的流量转发,以确保VXLAN整网的转发效率最优,本发明实施例提供一种基于VXLAN网络的流量转发控制方法,VXLAN网络包括任播网关组与VXLAN桥设备,该方法应用在任播网关组包括的网关设备中,流程如图2所示,执行步骤如下:

S20:流程开始。

S21:确定自身设备在任播网关组的角色,若在任播网关组的角色为通告设备,则执行S22;若在任播网关组的角色为应答设备,则执行S23。

在任播网关组的网关设备的角色为通告设备或者应答设备。如图1所示,任播网关组包含多个网关设备,为了便于进行流量转发控制,可以在其中选出通过设备和应答设备。因此,对于每一台网关设备,首先需要确定在任播网关组中的角色。

S22:以第一设定周期向任播网关组的应答设备发送资源请求,以使应答设备提供应答设备的设备资源信息和本地VXLAN隧道列表;接收应答设备发送的携带设备资源信息和本地VXLAN隧道列表的资源应答后,根据本地VXLAN隧道列表更新整网VXLAN隧道列表,以及根据设备资源信息确定应答设备的能力值;若能力值超过设定阈值,则向应答设备发送携带整网VXLAN隧道列表的繁忙通告,以使应答设备根据整网VXLAN隧道列表选择性终止与应答设备建立VXLAN隧道的桥设备之间的流量转发。

若网关设备确定在任播网关组的角色为通告设备,可以通过确定任播网关组中的应答设备的能力值是否超过设定阈值来确定该应答设备是否需要进行选择性终止流量转发,并向确定出的应答设备发送繁忙通告。

其中,设备资源信息包括网关设备的出口带宽、中央处理器(Central Processing Unit,CPU)、内存使用率等;本地VXLAN隧道列表保存的是与应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识,整网VXLAN隧道列表保存的是与各个网关设备建立的VXLAN隧道状态为存活的桥设备的设备标识;桥设备的设备标识可以但不限于为互联网协议(Internet Protocol,IP)地址;应答设备的能力值是根据应答设备的设备资源信息计算得到的,能力值越高,代表设备越繁忙,能力值越低,代表设备越空闲;第一设定周期和设定阈值可以根据实际需要进行设定。

一种可选的实施方式,若能力值未超过设定阈值,则确定之前是否向应答设备发送过繁忙通告;若之前向应答设备发送过繁忙通告,则向应答设备发送恢复通告,以使应答设备恢复之前终止的流量转发。由于应答设备的能力值未超过设定阈值,说明该应答设备不够繁忙,可以恢复之前终止的流量转发,从而调整VXLAN整网的转发流量。

S23:监控在第二设定周期内是否接收到任播网关组的通告设备发送的资源请求,若在第二设定周期内接收到通告设备发送的资源请求,则将应答设备的设备资源信息和本地VXLAN隧道列表携带在资源应答中发送给通告设备;若接收到通告设备发送的携带整网VXLAN隧道列表的繁忙通告,根据整网VXLAN隧道列表选择性终止与应答设备建立VXLAN隧道的桥设备之间的流量转发。

若网关设备确定在任播网关组的角色为应答设备,则可以根据任播网关组中的通告设备发送的繁忙通告来进行选择性终止流量转发。

其中,繁忙通告用于通知应答设备在VXLAN整网中是最繁忙的,已超过设定阈值,由于繁忙通告中携带整网VXLAN隧道列表,因此应答设备可以根据整网VXLAN隧道列表进行选择性终止流量转发。

一种可选的实施方式,接收通告设备发送的恢复通告;恢复之前终止的流量转发。从而可以实现恢复之前终止的流量转发,调整VXLAN整网的转发流量。

一种可选的实施方式,若在第二设定周期内未接收到通告设备发送的资源请求,确定通告设备失效;重新执行S21。其中,第二设定周期可以根据实际需要进行设定。

该方案中,通过在任播网关组中确定出通告设备和应答设备,并由通告设备确定每个应答设备的能力值,根据应答设备的能力值与设定阈值的大小关系确定对应的应答设备是否需要选择性终止流量转发,从而实现VXLAN整网的转发更加均衡,确保VXLAN整网的转发效率最优。

具体的,上述S21中确定自身设备在任播网关组的角色的实现过程,如图3所示,具体包括:

S211:在任播网关组中广播携带自身设备标识的选取请求,并接收任播网关组中的其他网关设备发送的携带对应网关设备的设备标识的选取请求。

S212:将其他网关设备的设备标识分别与自身设备标识进行比较,若自身设备标识最大,则执行S213;若自身设备标识不是最大,则执行S214。

S213:确定自身设备在任播网关组中的角色为通告设备。

S214:确定自身设备在任播网关组中的角色为应答设备。

在任播网关组中,一般包含多台的网关设备,可以通过发送携带自身设备标识的选取请求的方式来选取应答设备和通告设备。具体的,可以将设备标识最大选取为通告设备,任播网关组内的其他网关设备为应答设备。

具体的,上述S22中根据整网VXLAN隧道列表选择性终止与应答设备建立VXLAN隧道的桥设备之间的流量转发的实现过程,如图4所示,具体包括:

S221:根据整网VXLAN隧道列表确定与应答设备建立VXLAN隧道的桥设备,得到候选桥设备。

可以从整网VXLAN隧道列表中获取与应答设备建立的VXLAN隧道为存活的桥设备的设备标识,这些设备标识对应的桥设备即为候选桥设备。

S222:从候选桥设备中选取与任播网关组的至少一个其他网关建立VXLAN隧道连接的桥设备,得到选定桥设备。

VXLAN网络中的桥设备可能不止与一个网关设备监理VXLAN隧道,为了保证桥设备正常处理业务,可以从候选桥设备中选取出还与其他网关设备监理VXLAN隧道的桥设备,得到选定桥设备。

S223:若接收到选定桥设备发送的保活请求,则不向选定桥设备发送保活应答,以使选定桥设备不向应答设备发送流量。

由于不对选定桥设备发送的保活请求进行应答,选定桥设备就会认为该应答设备已经失效,从而不再向该应答设备发送流量,从而实现应答设备终止与该桥设备之间的流量转发。

基于同一发明构思,本发明实施例提供一种基于VXLAN网络的流量转发控制装置,VXLAN网络包括任播网关组与VXLAN桥设备,装置应用在任播网关组包括的网关设备中,该装置的结构如图5所示,包括:

确定模块51,用于确定自身设备在任播网关组的角色,角色为通告设备或者应答设备;

第一控制模块52,用于若自身设备在任播网关组的角色为通告设备,则以第一设定周期向任播网关组的应答设备发送资源请求,以使应答设备提供应答设备的设备资源信息和本地VXLAN隧道列表,本地VXLAN隧道列表保存的是与应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;接收应答设备发送的携带设备资源信息和本地VXLAN隧道列表的资源应答后,根据本地VXLAN隧道列表更新整网VXLAN隧道列表,以及根据设备资源信息确定应答设备的能力值;若能力值超过设定阈值,则向应答设备发送携带整网VXLAN隧道列表的繁忙通告,以使应答设备根据整网VXLAN隧道列表选择性终止与应答设备建立VXLAN隧道的桥设备之间的流量转发;

第二控制模块53,用于若自身设备在任播网关组的角色为应答设备,则监控在第二设定周期内是否接收到任播网关组的通告设备发送的资源请求,若在第二设定周期内接收到通告设备发送的资源请求,则将应答设备的设备资源信息和本地VXLAN隧道列表携带在资源应答中发送给通告设备,本地VXLAN隧道列表保存的是与应答设备建立的VXLAN隧道状态为存活的桥设备的设备标识;若接收到通告设备发送的携带整网VXLAN隧道列表的繁忙通告,根据整网VXLAN隧道列表选择性终止与应答设备建立VXLAN隧道的桥设备之间的流量转发。

具体的,确定模块51,具体用于:

在任播网关组中广播携带自身设备标识的选取请求,并接收任播网关组中的其他网关设备发送的携带对应网关设备的设备标识的选取请求;

将其他网关设备的设备标识分别与自身设备标识进行比较;

若自身设备标识最大,则确定自身设备在任播网关组中的角色为通告设备;

若自身设备标识不是最大,则确定自身设备在任播网关组中的角色为应答设备。

可选的,第一控制模块52,还用于:

若能力值未超过设定阈值,则确定之前是否向应答设备发送过繁忙通告;

若之前向应答设备发送过繁忙通告,则向应答设备发送恢复通告,以使应答设备恢复之前终止的流量转发。

具体的,第二控制模块53,具体包括:

根据整网VXLAN隧道列表确定与应答设备建立VXLAN隧道的桥设备,得到候选桥设备;

从候选桥设备中选取与任播网关组的至少一个其他网关建立VXLAN隧道连接的桥设备,得到选定桥设备;

若接收到选定桥设备发送的保活请求,则不向选定桥设备发送保活应答,以使选定桥设备不向应答设备发送流量。

可选的,第二控制模块53,还用于:

接收通告设备发送的恢复通告;

恢复之前终止的流量转发。

可选的,第二控制模块53,还用于:

若在第二设定周期内未接收到通告设备发送的资源请求,确定通告设备失效;

重新执行确定在任播网关组的角色的步骤。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的可选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括可选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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