基于SDN的链路聚合方法技术

技术编号:12074203 阅读:133 留言:0更新日期:2015-09-18 10:07
本发明专利技术提供一种基于SDN的链路聚合方法,包括SDN控制器感知整个SDN网络的网络拓扑结构,接收SDN交换机上报来的链路状态信息;根据链路状态信息和网络拓扑结构,计算汇聚组和成员端口;计算负载均衡并下发流表;转发首报文,以便SDN交换机根据流表内容线速转发数据。本发明专利技术的基于SDN的链路聚合方法能够通过SDN控制器根据LLDP协议获得全网络拓扑结构,并在SDN控制器发现某报文通过SDN网络有多条属性一致的链路时,智能地基于某种策略选择最优链路进行转发,从而动态地实现负载分担;还能够在此链路出现故障时重新动态选择链路进行转发。

【技术实现步骤摘要】

本专利技术涉及网络通信的
,特别是涉及一种基于SDN(Software Defined Network,软件定义网络)的链路聚合方法。
技术介绍
随着以太网技术在城域网和广域网领域的广泛应用,运营商对采用以太网技术的骨干链路带宽和可靠性提出越来越高的要求。在现有技术中,常用的增加带宽的方式是通过更换高速率的接口板或更换支持高速率接口板的设备来实现的。但是,这种方案需要付出高额的费用,而且不够灵活。采用链路聚合技术可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口来实现增大链路带宽的目的。在实现增大带宽目的的同时,链路聚合采用备份链路的机制,可以有效的提高设备之间链路的可靠性。具体地,现有技术中的链路聚合算法包括以下两种:(1)手工负载分担模式链路聚合手工负载分担模式是一种最基本的链路聚合方式。在该模式下,Eth-Trunk接口的建立、成员接口的加入完全由手工来配置,没有链路聚合控制协议的参与。该模式下所有成员接口都参与数据的转发,分担负载流量,因此称为手工负载分担模式。(2)LACP协议链路聚合该模式下,Eth-Trunk接口的建立、成员接口的加入以及活动接口的选择完全由LACP协议通过协商完成。这就意味着启用了动态LACP协议的两台直连设备上,不需要创建Eth-Trunk接口,也不需要指定哪些接口作为聚合组成员接口,两台设备会通过LACP协商自动完成链路的聚合操作。如图1所示,现有技术中的静态Trunk技术和LACP技术,虽然可以达到将多个物理接口捆绑为一个逻辑接口实现增大链路带宽的目的。但是,多个物理端口必须属于同一个交换机,因此无法实现网络资源的最大利用化。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种基于SDN的链路聚合方法,基于SDN架构,通过SDN控制器根据LLDP协议获得全网络拓扑结构,并在SDN控制器发现某报文通过SDN网络有多条属性一致的链路时,智能地基于某种策略选择最优链路进行转发,从而动态地实现负载分担;还能够在此链路出现故障时重新动态选择链路进行转发。为实现上述目的及其他相关目的,本专利技术提供一种基于SDN的链路聚合方法,包括以下步骤:步骤S1、SDN控制器根据LLDP协议感知整个SDN网络的网络拓扑结构;步骤S2、SDN控制器接收SDN交换机上报来的链路状态信息;步骤S3、SDN控制器根据链路状态信息和网络拓扑结构,计算汇聚组和成员端口;步骤S4、SDN控制器计算负载均衡并下发流表;步骤S5、SDN控制器转发首报文,以便SDN交换机根据流表内容线速转发数据。根据上述的基于SDN的链路聚合方法,其中:所述步骤S2中,所述链路状态信息包含系统MAC地址、端口数、端口号、端口速率、双工模块、端口STP状态以及端口状态。根据上述的基于SDN的链路聚合方法,其中:所述步骤S2包括以下步骤:SDN交换机与SDN控制器建立控制通道,并上报当前的链路状态信息;在一定的时间间隔,SDN交换机检测链路状态;若检测到链路发生变化,则上报变更后的链路状态信息;若没有检测到链路发生变化,则不执行任何操作。根据上述的基于SDN的链路聚合方法,其中:所述步骤S3包括以下步骤:a)SDN控制器根据链路状态信息和网络拓扑结构,选择主设备并创建汇聚组;b)SDN控制器选择候选端口;c)若候选端口的数量小于等于上限,则候选端口变为被选端口;d)若候选端口的数量大于上限,则候选端口变为备选端口。进一步地,根据上述的基于SDN的链路聚合方法,其中:所述步骤a)中,SDN控制器选择主设备包括以下步骤:SDN控制器比较SDN交换机的LACP协议优先级;若LACP协议的优先级不同,则选择优先级较小的SDN交换机为主设备;若LACP协议的优先级相同,则再比较系统MAC地址,选择MAC地址较小的SDN交换机为主设备。进一步地,根据上述的基于SDN的链路聚合方法,其中:所述步骤b)又包括以下步骤:SDN控制器比较端口的LACP协议优先级;若端口的LACP协议优先级不同,则选择优先级较小的端口为候选端口;若端口的LACP协议优先级相同,则比较端口号的大小;若端口号不同,则选择端口号较小的端口为候选端口;若端口号相同,则选择主设备上的端口为候选端口。根据上述的基于SDN的链路聚合方法,其中:所述步骤S4包括以下步骤:SDN控制器接收SDN交换机发送来的首报文;SDN控制器根据负载均衡的配置策略,选择合适的转发端口;SDN控制器下发流表到报文转发路径上的所有SDN交换机。根据上述的基于SDN的链路聚合方法,其中:还包括步骤S6、在链路出现故障时重新动态选择链路进行转发。进一步地,根据上述的基于SDN的链路聚合方法,其中:所述步骤S6包括以下步骤:SDN控制器SDN交换机发送来的汇聚组的被选端口变关闭的消息,判断此端口是否为被选端口;若不是被选端口,则SDN控制器不执行任何操作;若是被选端口,SDN控制器将该端口变为未被选端口,移除相关流表项,重新计算被选端口;再根据接收的首报文,重新计算负载均衡,下发流表并转发首报文,进行基于新端口的转发。根据上述的基于SDN的链路聚合方法,其中:所述SDN交换机通过私有扩展Experimenter报文向SDN控制器上报链路状态信息。如上所述,本专利技术的基于SDN的链路聚合方法,具有以下有益效果:(1)能够通过SDN控制器根据LLDP协议获得全网络拓扑结构;(2)能够在SDN控制器发现某报文通过SDN网络有多条属性(如相同链路速率)一致的链路时,智能地基于某种策略(如目的MAC、目的IP等)选择最优链路进行转发,从而动态地实现负载分担;(3)能够在链路出现故障时重新动态选择链路进行转发。附图说明图1显示为现有技术中实现链路聚合的结构示意图;图2显示为本专利技术的实现基于SDN的链路聚合算法的结构示意图;图3显示为本专利技术的基于SDN的链路聚合方法的流程图;图4显示为本专利技术的SDN交换机上报链路状态信息的流程图;图5显示为本专利技术的私有的OLT到SDN控制器的私有扩展Experimenter报文的格式示意图;图6显示为本专利技术的SDN控制器计算汇聚组和成员端口的流程图;图7显示为本专利技术中SDN控制器选择主设备的流程图;图8显示为本专利技术中SDN控制器选择候选端口的流程图;图9显示为本专利技术中SDN控制器进行负载分担的流程图;图10显示为本专利技术中链路聚合变化时的处理流程图;本文档来自技高网
...
基于SDN的链路聚合方法

【技术保护点】
一种基于SDN的链路聚合方法,其特征在于:包括以下步骤:步骤S1、SDN控制器根据LLDP协议感知整个SDN网络的网络拓扑结构;步骤S2、SDN控制器接收SDN交换机上报来的链路状态信息;步骤S3、SDN控制器根据链路状态信息和网络拓扑结构,计算汇聚组和成员端口;步骤S4、SDN控制器计算负载均衡并下发流表;步骤S5、SDN控制器转发首报文,以便SDN交换机根据流表内容线速转发数据。

【技术特征摘要】
1.一种基于SDN的链路聚合方法,其特征在于:包括以下步骤:
步骤S1、SDN控制器根据LLDP协议感知整个SDN网络的网络拓扑结构;
步骤S2、SDN控制器接收SDN交换机上报来的链路状态信息;
步骤S3、SDN控制器根据链路状态信息和网络拓扑结构,计算汇聚组和成员端口;
步骤S4、SDN控制器计算负载均衡并下发流表;
步骤S5、SDN控制器转发首报文,以便SDN交换机根据流表内容线速转发数据。
2.根据权利要求1所述的基于SDN的链路聚合方法,其特征在于:所述步骤S2中,所述链
路状态信息包含系统MAC地址、端口数、端口号、端口速率、双工模块、端口STP状态
以及端口状态。
3.根据权利要求1所述的基于SDN的链路聚合方法,其特征在于:所述步骤S2包括以下步
骤:
SDN交换机与SDN控制器建立控制通道,并上报当前的链路状态信息;
在一定的时间间隔,SDN交换机检测链路状态;
若检测到链路发生变化,则上报变更后的链路状态信息;
若没有检测到链路发生变化,则不执行任何操作。
4.根据权利要求1所述的基于SDN的链路聚合方法,其特征在于:所述步骤S3包括以下步
骤:
a)SDN控制器根据链路状态信息和网络拓扑结构,选择主设备并创建汇聚组;
b)SDN控制器选择候选端口;
c)若候选端口的数量小于等于上限,则候选端口变为被选端口;
d)若候选端口的数量大于上限,则候选端口变为备选端口。
5.根据权利要求4所述的基于SDN的链路聚合方法,其特征在于:所述步骤a)中,SDN
控制器选择主设备包括以下步骤:
SDN控制器比较SDN交换机的LACP协议优先级;
若LACP协议的优先级不同,则选择优先级较小的SD...

【专利技术属性】
技术研发人员:翟跃
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1