一种sdn网络动态预留带宽的方法及控制器的制造方法

文档序号:7818591阅读:265来源:国知局
一种sdn网络动态预留带宽的方法及控制器的制造方法
【专利摘要】本发明公开了一种SDN网络动态预留带宽的方法和控制器,该方法包括:SDN控制器根据接收的虚拟交换机发来的业务流量的首报文携带的源地址和目的地址计算至少一条可选路径,业务流量的优先级不小于优先级阈值;确定至少一条可选路径上各交换机的剩余带宽;从至少一条可选路径中选择一条路径上所有交换机的剩余带宽均不小于转发业务流量所需的带宽的可选路径确定为用于转发业务流量的转发路径;向转发路径上的各交换机下发预留通知报文,预留通知报文携带转发业务流量所需的带宽,以使转发路径上的各交换机为业务流量预留转发业务流量所需的带宽,该方法为每一个业务流量计算的转发路径都确保预留有足够的带宽,有效避免了流量拥塞的问题。
【专利说明】-种SDN网络动态预留带宽的方法及控制器

【技术领域】
[0001] 本发明涉及通信【技术领域】,特别是涉及一种SDN网络动态预留带宽的方法及控制 器。

【背景技术】
[0002] 目前在大型的数据中心内部布局都是采用大二层网络的布局,当大二层网络跟现 有的传统三层网络进行通信时,需要在软件定义网络(Software Defined Network,SDN)边 缘架设一台支持二、三层转发的网关设备与外部进行通信。
[0003] 图1为典型的大二层网络结构示意图,如图1所示,SDN网络中的业务转发包括三 种类型:一是VM(Virtual Machine,虚拟机)通过VXLAN(Virtual Extensible Local Area Network,虚拟可扩展局域网)IP(Internet Protocol,互联网协议)GW(Gateway,网关)与 非虚拟化网络的互通,如VM2与非虚拟化网络的互通;二是VM通过SDN网络与相同VXLAN 的VM之间的互通,如VM2与VM4之间的互通;三是VM通过VXLAN IP GW与跨VXLAN的VM 之间的互通,如VM4和VM6之间的互通。其中,VXLAN隧道端点(VXLAN Tunnel End Point, VTEP)与VXLAN IP GW之间形成VXLAN隧道,用于SDN网络中第一种和第三种业务的转发; P设备为VXLAN网络中的交换机,负责报文在VXLAN网络中转发。
[0004] 目前在SDN网络中,对于上述三种类型的业务转发,采用在SDN网络边缘设备上配 置QoS(Quality of Service,服务质量)策略来进行优先级高低的配置,保证优先级较高的 业务能够在SDN网络中优先传输。但是该方案也存在着以下的缺点 :
[0005] 1、不利于全网络的布局。该方案都是通过在SDN网络的边缘设备入端口上手工静 态配置QoS策略来进行业务优先级的区分。当网络拓扑发生变化,需要人为手工再去重新 下发配置,下发配置完成以后,SDN控制器才能自动化地进行路径的计算。
[0006] 2、现在的技术方案只是在SDN网络的入端口处进行了 QoS策略的配置,当多个优 先级较高的业务同时进入SDN网络,同样会出现流量拥塞的情况,所以并不能完全解决客 户的需求。


【发明内容】

[0007] 有鉴于此,本发明提出了一种SDN网络动态预留带宽的方法及控制器,有效解决 了现有方案中人为手工下发QoS策略配置以及流量拥塞的缺陷。
[0008] 本发明提出的技术方案是:
[0009] -种SDN网络动态预留带宽的方法,该方法包括:
[0010] SDN控制器根据接收的虚拟交换机发来的业务流量的首报文携带的源地址和目的 地址计算至少一条可选路径,业务流量的优先级不小于优先级阈值;
[0011] SDN控制器确定至少一条可选路径上各交换机的剩余带宽;
[0012] SDN控制器从至少一条可选路径中选择一条路径上所有交换机的剩余带宽均不小 于转发该业务流量所需的带宽的可选路径确定为用于转发业务流量的转发路径;
[0013] SDN控制器向转发路径上的各交换机下发预留通知报文,预留通知报文携带转发 业务流量所需的带宽,以使转发路径上的各交换机为业务流量预留转发业务流量所需的带 宽。
[0014] 一种SDN控制器,该SDN控制器包括动态预列带宽装置,该动态预留带宽装置包 括:
[0015] 路径计算模块,用于根据接收的虚拟交换机发来的业务流量的首报文携带的源地 址和目的地址计算至少一条可选路径,业务流量的优先级不小于优先级阈值;
[0016] 带宽确认模块,用于确定至少一条可选路径上各交换机的剩余带宽;
[0017] 路径确认模块,用于从至少一条可选路径中选择一条路径上所有交换机的剩余 带宽均不小于转发该业务流量所需的带宽的可选路径确定为用于转发业务流量的转发路 径;
[0018] 带宽预留模块,用于向转发路径上的各交换机下发预留通知报文,预留通知报文 携带转发业务流量所需的带宽,以使转发路径上的各交换机为业务流量预留转发业务流量 所需的带宽。
[0019] 综上,本发明提出了一种SDN网络动态预留带宽的方法及控制器,在该方法中, SDN控制器为优先级不小于优先级阈值的业务流量进行转发路径的确认时,确定每条计算 得到的可选路径上各交换机的剩余带宽,将确定的剩余带宽与预先设置的转发该业务流量 所需带宽进行比较,选择一条路径上所有交换机的剩余带宽均不小于转发该业务流量所需 的带宽的可选路径确定为用于转发该业务流量的转发路径,下发携带转发该业务流量所需 的带宽的预留通知报文,使得转发路径上的各交换机为该业务流量预留转发该业务流量所 需的带宽。SDN控制器通过自动为优先级不小于优先级阈值的业务流量预留所需带宽来保 证其在SDN网络中优先传输,不受网络拓扑变化的影响,无需人为手工下发QoS配置;并且 当多个优先级不小于优先级阈值的业务流量同时进入SDN网络时,SDN控制器为每一个优 先级不小于优先级阈值的业务流量计算的转发路径都确保预留有足够的带宽,有效避免了 流量拥塞的问题。

【专利附图】

【附图说明】
[0020] 图1为典型的大二层网络结构示意图;
[0021] 图2为本发明技术方案的流程图;
[0022] 图3为本发明方法实施例的大二层网络结构图;
[0023] 图4为本发明方法实施例一的流程图;
[0024] 图5为本发明方法实施例二的流程图;
[0025] 图6为本发明实施例的动态预留带宽装置结构图;
[0026] 图7为本发明实施例的SDN控制器硬件结构连接图。

【具体实施方式】
[0027] 现有技术需要在VXLAN IP GW的入端口上手工静态配置QoS策略来进行业务优先 级高低的配置,保证优先级较高的业务能够在SDN网络中优先传输,如不做任何改进,该方 法在网络拓扑发生变化时,需要人为手工再去重新配置QoS策略,不利于全网络的布局;并 且当多个优先级较高的业务同时进入SDN网络时,根据QoS策略无法避免业务拥塞的问题。
[0028] 基于此,本发明提出了一种SDN网络动态预留带宽的方法。本发明将优先级不小 于优先级阈值的业务流量称为高优先级业务流量,通过SDN控制器为高优先级业务流量确 认转发路径时,自动为该高优先级业务流量分配一条各交换机的剩余带宽均不小于转发该 高优先级业务流量所需带宽的转发路径,并向该转发路径上的所有交换机下发预留通知报 文,使得该转发路径上的各交换机为该高优先级业务流量预留转发该高优先级业务流量所 需的带宽,从而保证该高优先级业务流量在SDN网络中优先传输。
[0029] 为使本发明的目的、技术方案和优点表达的更加清楚明白,下面结合附图及具体 实施例对本发明再作进一步详细的说明。
[0030] 本发明实施例的技术方案是:
[0031] 如图2所示,本发明一种SDN网络动态预留带宽的方法应用于SDN控制器,对于 SDN网络中的SDN控制器,执行以下步骤:
[0032] 步骤201 :SDN控制器根据接收的虚拟交换机发来的业务流量的首报文携带的源 地址和目的地址计算至少一条可选路径,业务流量的优先级不小于优先级阈值。
[0033] 本步骤中,将优先级不小于优先级阈值的业务流量称为高优先级业务流量,虚拟 交换机接收到虚拟机之间传输的高优先级业务流量的首报文时,查询不到匹配的流表项转 发该首报文,则将该首报文上送至SDN控制器进行转发路径的确认。
[0034] SDN控制器接收到该高优先级业务流量的首报文后,根据其携带的源地址和目的 地址,以及整个网络的拓扑结构,计算该高优先级业务流量在网络中的至少一条可选路径。
[0035] 其中,如果高优先级业务流量是跨VXLAN的两个VM之间传输的业务流量,或者是 VM访问非虚拟化网络的业务流量,则该高优先级业务流量的所有可选路径都要经过VXLAN IP GW ;如果高优先级业务流是相同VXLAN的两个VM之间传输的业务流量,则SDN控制器计 算得到的所有可选路径不经过VXLAN IP GW。
[0036] 步骤202 :SDN控制器确定至少一条可选路径上各交换机的剩余带宽。
[0037] 高优先级业务流量在网络中的至少一条可选路径确定以后,SDN控制器进一步确 定每条可选路径上各交换机的剩余带宽。其中,SDN控制器计算高优先级业务流量的至少 一条可选路径上交换机的剩余带宽可以通过如下方法实现:
[0038] SDN控制器根据至少一条可选路径上各交换机的交换机标识查询总带宽表项,确 定可选路径上各交换机的总带宽;如果在总带宽表项中查询不到交换机的总带宽,则向该 交换机发送总带宽请求报文,接收该交换机返回的携带自身总带宽的总带宽应答报文,并 将该交换机的总带宽记录在总带宽表项中;
[0039] SDN控制器根据各交换机的交换机标识查询业务带宽预留表项,确定各交换机的 已预留带宽,各交换机的已预留带宽包括:该交换机上已为各优先级不小于优先级阈值的 业务流量所预留的带宽之和;
[0040] SDN控制器将各交换机返回的总带宽与确定出的已预留带宽的差值确定为各交换 机的剩余带宽。
[0041] 步骤203 :SDN控制器从至少一条可选路径中选择一条路径上所有交换机的剩余 带宽均不小于转发该业务流量所需的带宽的可选路径确定为用于转发业务流量的转发路 径。
[0042] SDN控制器确定高优先级业务流量所有可选路径上各交换机的剩余带宽后,将可 选路径上每个交换机的剩余带宽与预先设置转发该高优先级业务流量所需的带宽进行比 较,选择一条路径上所有交换机的剩余带宽均不小于转发该高优先级业务流量所需的带宽 的可选路径确定为用于转发该高优先级业务流量的转发路径。
[0043] 这里还会存在一种特殊情况:SDN控制器计算出的高优先级业务流量的所有可选 路径上均存在至少一个剩余带宽小于转发该高优先级业务流量所需的带宽的交换机,即不 存在一条满足转发该高优先级业务流量所需带宽的可选路径作为转发路径。如果出现这种 情况,可以通过如下两种优选方案解决 :
[0044] SDN控制器通知至少一条可选路径上的为优先级高于优先级阈值、且优先级低于 所述业务流量的优先级的其他业务流量预留带宽的交换机释放为该其他业务流量所预留 的带宽,使该高优先级业务流量的至少一条可选路径存在至少一条满足转发该高优先级业 务流量所需的带宽的可选路径;
[0045] 或者,SDN控制器向网管软件发送错误码,使网管软件改变网络拓扑,进而SDN控 制器返回步骤201,重新计算该高优先级业务流量的至少一条可选路径,使得重新计算出的 至少一条可选路径中存在至少一条满足转发该高优先级业务流量所需的带宽的可选路径, 将其作为该高优先级业务流量的转发路径。
[0046] 步骤204 :SDN控制器向转发路径上的各交换机下发预留通知报文,预留通知报文 携带转发该高优先级业务流量所需的带宽,以使转发路径上的各交换机为该高优先级业务 流量预留转发该高优先级业务流量所需的带宽。
[0047] 本步骤中,SDN控制器确定出满足转发高优先级业务流量所需带宽的转发路径后, 向转发路径上的各交换机下发预留通知报文,该预留通知报文携带转发该高优先级业务流 量所需的带宽,以使转发路径上的各交换机为该高优先级业务流量预留转发该高优先级业 务流量所需的带宽,从而保证该高优先级业务流量在网络中优先传输。
[0048] 更进一步地,步骤204之后,SDN控制器在业务带宽预留表项中记录确定出的转发 路径上交换机的交换机标识、高优先级业务流量的名称以及转发该高优先级业务流量所需 带宽的对应关系。
[0049] 具体地,SDN控制器确定出高优先级业务流量的转发路径后,为该转发路径上的各 交换机创建对应的流表项,此处SDN控制器创建流表项的过程为现有技术,不再详述流表 项的创建方法。SDN控制器下发预留通知报文的同时,也将创建的流表项下发给转发路径上 的各交换机,使得转发路径上的各交换机为各自接收到的流表项中包含的入端口和出端口 预留转发高优先级业务流量所需的带宽。
[0050] 更进一步地,业务流量优先级的高低一般与时间有关系,当高优先级业务流量过 了优先级最高的时间段,即高优先级业务流量的优先级失效,为了便于后期为其他高优先 级业务流量预留带宽,SDN控制器会将高优先级失效的业务流量预留的带宽释放,具体方法 为:
[0051] SDN控制器分别向确定出的优先级失效的业务流量的转发路径上各交换机发送释 放通知报文,使转发路径上的各交换机释放为该优先级失效的业务流量预留的带宽,并且 SDN控制器删除业务带宽预留表项中包括优先级失效的业务流量标识的所有表项。
[0052] 下面结合具体实施例对上述SDN网络中动态预留带宽的方法进行详细说明。
[0053] 实施例一
[0054] 本实施例采用图3所示的组网图,VM1、VM2、VM4为VXLAN1内的虚拟机,VM6为 VXLAN2内的虚拟机;PI、P2、P3、P4、P5、P6是VXLAN网络的交换机,其中P1和P6与VXLAN IP GW1相连,P4与VXLAN IP GW2相连;VTEP1是与虚拟交换机1直连的VXLAN网络中的边 缘设备,VTEP2是与虚拟交换机2直连的VXLAN网络中的边缘设备,VTEP3是与虚拟交换机 3直连的VXLAN网络中的边缘设备。SDN控制器保存有业务带宽预留表项和总带宽表项。 其中,业务带宽预留表项用于记录VXALN网络中交换机为高优先级业务流量预留的带宽资 源,如表1所示,P2交换机已经预留了 20M带宽给高优先级业务流量T1。总带宽表项用于 记录SDN网络中的交换机可以提供的总带宽,如表2所示,P1的总带宽为90M,P2总带宽为 100M,P3总带宽为110M,P4总带宽为100M。
[0055] 表 1

【权利要求】
1. 一种SDN网络动态预留带宽的方法,其特征在于,该方法包括: SDN控制器根据接收的虚拟交换机发来的业务流量的首报文携带的源地址和目的地址 计算至少一条可选路径,所述业务流量的优先级不小于优先级阈值; 所述SDN控制器确定所述至少一条可选路径上各交换机的剩余带宽; 所述SDN控制器从所述至少一条可选路径中选择一条路径上所有交换机的剩余带宽 均不小于转发所述业务流量所需的带宽的可选路径确定为用于转发所述业务流量的转发 路径; 所述SDN控制器向所述转发路径上的各交换机下发预留通知报文,所述预留通知报文 携带所述转发所述业务流量所需的带宽,以使所述转发路径上的各交换机为所述业务流量 预留转发所述业务流量所需的带宽。
2. 根据权利要求1所述的方法,其特征在于,所述SDN控制器确定所述至少一条可选路 径上各交换机的剩余带宽包括以下步骤: 所述SDN控制器根据所述至少一条可选路径上各交换机的交换机标识查询总带宽表 项,确定所述各交换机的总带宽; 所述SDN控制器根据所述各交换机的交换机标识查询业务带宽预留表项,确定所述各 交换机的已预留带宽,所述各交换机的已预留带宽包括:该交换机上已为各优先级不小于 优先级阈值的业务流量所预留的带宽之和; 针对所述各交换机中的每一个交换机,所述SDN控制器将该交换机的总带宽与确定出 的该交换机的已预留带宽的差值确定为该交换机的剩余带宽。
3. 根据权利要求2所述的方法,其特征在于,如果所述SDN控制器在所述总带宽表项中 查询不到所述至少一条可选路径上交换机的总带宽,则所述SDN控制器向查询不到总带宽 的交换机发送总带宽请求报文,并接收查询不到总带宽的交换机返回的携带自身总带宽的 总带宽应答报文,并将查询不到总带宽的交换机的总带宽记录在所述总带宽表项中。
4. 根据权利要求1或2所述的方法,其特征在于,在所述SDN控制器从所述至少一条可 选路径中选择一条路径上所有交换机的剩余带宽均不小于转发所述业务流量所需的带宽 的可选路径确定为用于转发所述业务流量的转发路径之后,该方法进一步包括: SDN控制器在所述业务带宽预留表项中记录所述转发路径上交换机的交换机标识、所 述业务流量的名称以及转发所述业务流量所需带宽的对应关系。
5. 根据权利要求1所述的方法,其特征在于,在所述SDN控制器确定所述至少一条可选 路径上各交换机的剩余带宽之后,该方法进一步包括: 如果所述至少一条可选路径上均存在至少一个剩余带宽小于转发所述业务流量所需 的带宽的交换机,则所述SDN控制器通知所述至少一条可选路径上的为优先级高于优先级 阈值、且优先级低于所述业务流量的优先级的其他业务流量预留带宽的交换机释放为所述 其他业务流量所预留的带宽,使所述至少一条可选路径存在至少一条满足转发所述业务流 量所需的带宽的可选路径; 或者,所述SDN控制器向网管软件发送错误码,使所述网管软件改变网络拓扑,进而 SDN控制器返回根据接收的虚拟交换机发来的业务流量的首报文携带的源地址和目的地址 计算至少一条可选路径的步骤。
6. 根据权利要求1所述的方法,其特征在于,在所述SDN控制器向所述转发路径上的各 交换机下发预留通知报文之后,该方法进一步包括: 如果所述业务流量的优先级失效,所述SDN控制器向所述确定出的转发路径上各交换 机发送释放通知报文,使所述转发路径上的各交换机释放为所述业务流量预留的带宽。
7. -种SDN控制器,其特征在于,所述SDN控制器包括动态预留带宽装置,该动态预留 带宽装置包括: 路径计算模块,用于根据接收的虚拟交换机发来的业务流量的首报文携带的源地址和 目的地址计算至少一条可选路径,所述业务流量的优先级不小于优先级阈值; 带宽确认模块,用于确定所述至少一条可选路径上各交换机的剩余带宽; 路径确认模块,用于从所述至少一条可选路径中选择一条路径上所有交换机的剩余带 宽均不小于转发所述业务流量所需的带宽的可选路径确定为用于转发所述业务流量的转 发路径; 带宽预留模块,用于向所述转发路径上的各交换机下发预留通知报文,所述预留通知 报文携带所述转发所述业务流量所需的带宽,以使所述转发路径上的各交换机为所述业务 流量预留转发所述业务流量所需的带宽。
8. 根据权利要求6所述的控制器,其特征在于,所述带宽确认模块还包括: 总带宽确认模块,用于根据所述至少一条可选路径上各交换机的交换机标识查询总带 宽表项,确定所述各交换机的总带宽; 已预留带宽确认模块,用于根据所述各交换机的交换机标识查询业务带宽预留表项, 确定所述各交换机的已预留带宽,所述各交换机的已预留带宽包括:该交换机上已为各优 先级不小于优先级阈值的各业务流量所预留的带宽之和; 剩余带宽确认模块,用于针对所述各交换机中的每一个交换机,将该交换机的总带宽 与确定出的该交换机的已预留带宽的差值确定为该交换机的剩余带宽。
9. 根据权利要求8所述的控制器,其特征在于,所述总带宽确认模块在所述总带宽表 项中查询不到所述至少一条可选路径上交换机的总带宽时,还用于向查询不到总带宽的交 换机发送总带宽请求报文,并接收查询不到总带宽的交换机返回的携带自身总带宽的总带 宽应答报文,并将查询不到总带宽的交换机的总带宽记录在所述总带宽表项中。
10. 根据权利要求8所述的控制器,其特征在于,所述带宽预留模块还用于: 在所述业务带宽预留表项中记录所述转发路径上交换机的交换机标识、所述业务流量 的名称以及转发所述业务流量所需带宽的对应关系。
11. 根据权利要求7所述的控制器,其特征在于,如果所述至少一条可选路径上均存在 至少一个剩余带宽小于转发所述业务流量所需的带宽的交换机,所述控制器还包括带宽释 放模块,用于通知所述至少一条可选路径上的为优先级高于优先级阈值、且优先级低于所 述业务流量的优先级的其他业务流量预留带宽的交换机释放为所述其他业务流量所预留 的带宽,使所述至少一条可选路径存在至少一条满足转发所述业务流量所需的带宽的可选 路径; 所述带宽预留模块还用于,向网管软件发送错误码,使所述网管软件改变网络拓扑,进 而使所述路径计算模块重新计算所述业务流量的至少一条可选路径。
12. 根据权利要求7所述的控制器,其特征在于,如果所述业务流量的优先级失效,所 述带宽预留模块进一步用于: 向所述路径确认模块确定出的转发路径上各交换机发送释放通知报文,使所述转发路 径上的各交换机释放为所述业务流量预留的带宽。
【文档编号】H04L12/915GK104301256SQ201410606058
【公开日】2015年1月21日 申请日期:2014年10月31日 优先权日:2014年10月31日
【发明者】王海, 黄李伟 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1