一种跨设备链路聚合方法及系统与流程

文档序号:26938680发布日期:2021-10-12 14:00阅读:535来源:国知局
一种跨设备链路聚合方法及系统与流程

1.本发明涉及数通设备可靠性领域,具体涉及一种跨设备链路聚合方法及系统。


背景技术:

2.无论是传统的企业网,或如今的数据中心,都有一个共通的需求:高可用性。但是同时也存在一个共同的问题:潜在的网络单点故障。而采用单点对单点网络传输,一旦端口故障,则整个网络瘫痪。采用一个设备下多个端口对多个端口的连接方式,一旦设备故障,则整个网络瘫痪。
3.因此,现有的数据连接,常常采用链路的方式,多个设备相互连接。采用链路聚合技术可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口,达到增加链路带宽的目的。在实现增大带宽目的的同时,链路聚合采用备份链路的机制,可以有效的提高设备之间链路的可靠性。链路聚合技术主要有以下三个优势:
4.1、增加带宽
5.链路聚合接口的最大带宽可以达到各成员接口带宽之和。
6.2、提高可靠性
7.当某条活动链路出现故障时,流量可以切换到其他可用成员链路上,从而提高链路聚合接口的可靠性。
8.3、负载分担
9.因此在一个链路聚合组内,可以实现在各成员活动链路上的负载分担。
10.跨设备链路聚合技术是链路聚合技术的升级版,它将不同成员交换机上的物理以太端口配置成一个聚合端口。这样即使某台成员交换机故障或聚合链路其中一条链路出现故障,也不会导致聚合链路完全失效,从而保证了数据流量的可靠传输,把增加带宽、提高可靠性、负载分担等优势从端口级别提高到了设备级别。
11.但是,目前跨设备链路聚合技术有两种主要的方式,一种是mc-lag多机框链路聚合技术,另一种是堆叠系统跨设备链路聚合。
12.mc-lag的技术优势是配置相对比较独立,成员设备间只共享聚合配置,不共享其他协议配置;其缺点是应用场景有限,使能mc-lag的聚合口,其流量仅在本地完成转发,当出现超带宽情况时,即便远端聚合口完全空闲,本地聚合口流量也会出现丢弃。
13.基于堆叠系统的跨设备链路聚合,其技术优势是成员设备共享所有配置,聚合口成员包括本地接口和远端接口,流量可以在聚合成员口上进行负载分担;其缺点是在本地带宽充足的情况下,流量也可能通过堆叠互联链路发送到远端聚合成员口进行转发,对堆叠互联链路的带宽造成浪费,在同时存在多个跨设备链路聚合组的情况下,最终可能导致互联链路成为带宽瓶颈。


技术实现要素:

14.针对现有技术中存在的缺陷,本发明的目的在于提供一种跨设备链路聚合方法及
系统,链路聚合变得灵活可变,可以发挥跨设备链路聚合的转发能力优势,又能降低链路聚合对互联链路带宽的影响。
15.为达到以上目的,第一方面,本发明实施例提供一种跨设备链路聚合方法,其包括:
16.周期性测量mc-lag链路聚合组本地端口的当前流量;
17.若当前流量超出预设阈值范围,则将链路聚合组远端成员的端口加入或移出所述mc-lag链路聚合组。
18.作为一个优选的实施方案,若当前流量高于预设阈值范围,则将所述链路聚合组远端成员的端口加入所述mc-lag链路聚合组。
19.作为一个优选的实施方案,若当前流量低于预设阈值范围,则将所述链路聚合组远端成员的端口移出所述mc-lag链路聚合组。
20.作为一个优选的实施方案,若当前流量处于所述预设阈值范围内,则保持当前链路聚合组不变。
21.作为一个优选的实施方案,通过软件模块控制链路聚合组的成员的端口下发到硬件的方式,实现流量在链路聚合组本地端口的优先转发。
22.作为一个优选的实施方案,通过fpga实时监控聚合链路组本地端口流量,一旦超出预设阈值范围向软件模块发出通告,所述软件模块根据所述通过进行所述链路聚合组远端成员的添加或移出。
23.作为一个优选的实施方案,所述软件模块确认预设的阈值范围,并与链路聚合组本地端口一起,下发至fpga,软件模块下发完成后,等待fpga的通知。
24.第二方面,本发明实施例还提供一种跨设备链路聚合系统,其包括:
25.检测模块,用于周期性测量mc-lag链路聚合组本地端口的当前流量;
26.比较模块,用于若当前流量超出预设阈值范围,则将链路聚合组远端成员的端口加入或移出所述mc-lag链路聚合组。
27.作为一个优选的实施方案,所述比较模块包括添加子模块,所述添加子模块用于若当前流量高于预设阈值范围,则将所述链路聚合组远端成员的端口加入所述mc-lag链路聚合组。
28.作为一个优选的实施方案,所述比较模块包括移除子模块,所述移除子模块用于若当前流量低于预设阈值范围,则将所述链路聚合组远端成员的端口移出所述mc-lag链路聚合组。
29.与现有技术相比,本发明的优点在于:
30.本发明一种跨设备链路聚合方法及系统中的通过mc-lag链路聚合组保持了一台接入设备可以同时通过链路捆绑接入上游两台物理设备。但是mc-lag链路聚合组在流量超出带宽的情况下,会丢弃部分本地聚合口流量。因此本发明进一步,在mc-lag链路聚合组上添加了基于堆叠系统跨设备链路聚合的方式,即在流量超出带宽的情况下,加入远端设备聚合成员口。保证了跨设备链路聚合的安全、稳定和高效。
附图说明
31.为了更清楚地说明本发明实施例中的技术方案,下面对实施例对应的附图作一简
单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
32.图1为本发明一种跨设备链路聚合方法实施例的步骤流程图;
33.图2为本发明一种跨设备链路聚合方法实施例的软件控制链路聚合组远端端口下硬件方法流程图;
34.图3为本发明一种跨设备链路聚合方法实施例的fpga流量通告流程图;
35.图4为本发明一种跨设备链路聚合系统实施例的结构示意图。
具体实施方式
36.以下结合附图对本发明的实施例作进一步详细说明。
37.本发明实施例提供一种跨设备链路聚合方法及系统,其通过选择性的将mc-lag多机框链路聚合中的部分技术与堆叠系统跨设备链路聚合的部分技术进行结合,使得跨设备的链路聚合变得灵活可变,可在最大程度上发挥跨设备链路聚合的转发能力优势,又能降低对互联链路带宽的影响。
38.为达到上述技术效果,本技术的总体思路如下:周期性测量mc-lag链路聚合组本地端口的当前流量;
39.若当前流量超出预设阈值范围,则将链路聚合组远端成员的端口加入或移出所述mc-lag链路聚合组。
40.综上所述,通过实时的检测检查mc-lag链路聚合组的总流量是否会超出其允许的流量范围,当该mc-lag链路聚合组超出了其范围,则添加或移出链路聚合组远端成员的端口,使得带宽进一步加大,进而满足流量变化以及成本控制的需求。
41.为了更好的理解上述技术方案,下面结合具体实施方式进行详细的说明。
42.参见图1所示,本发明实施例提供一种跨设备链路聚合方法,其包括:
43.s1:周期性测量mc-lag链路聚合组本地端口的当前流量。
44.实时测量当前流量,便于针对性的进行链路聚合组之间的流量进行管理。mc-lag链路中设备的配置是相对比较独立的,成员设备间只共享聚合配置,不共享其他协议配置,这样设置的mc-lag设备是便于管理的,但是其应用场景有限,其mc-lag的聚合口,流量仅在本地完成转发,当出现超带宽情况时,即便远端设备的聚合口完全空闲,本地聚合口流量也会出现丢弃。要改善该缺点需要针对流量进行监控。
45.s2:若当前流量超出预设阈值范围,则将链路聚合组远端成员的端口加入或移出所述mc-lag链路聚合组。
46.设置预设阈值范围,并根据当前流量与预设阈值的范围,选择性的加入或移出链路聚合组远端成员,能够及时有效的降低链路的转发负载,提高系统的可靠性,提高链路转发的效率。
47.优选的,若当前流量高于预设于阈值范围,则将链路聚合组远端成员的端口加入所述mc-lag链路聚合组。
48.当流量高出了预设阈值范围,mc-lag将有对流量进行筛选抛弃的可能,而本发明直接将链路聚合组远端成员的端口加入到mc-lag链路聚合组中,提供了更高的带宽,防止mc-lag对流量进行整形丢弃。
49.进一步的,若当前流量低于预设阈值范围,则将所述链路聚合组远端成员的端口移出所述mc-lag链路聚合组。
50.当流量过低,mc-lag链路聚合组一直使用链路聚合组远端成员的端口将造成互联口带宽浪费以及转发效率的下降。因此,优选将所述链路聚合组远端成员的端口移出所述mc-lag链路聚合组。
51.再进一步的,若当前流量处于所述预设阈值范围内,则保持当前链路聚合组不变。
52.若频繁的添加、移出链路聚合组远端设备的端口,对系统的稳定性是有影响的,因此,优选当流量处于预设阈值范围内的时候,保持当前的链路聚合组不变。
53.作为另一优选的实施例,通过软件模块控制链路聚合组的成员端口下发到硬件的方式,实现流量在链路聚合组本地端口的优先转发。
54.mc-lag作为设备聚合的协议,可以通过软件模块进行统合管理来实现。因此,可以通过软件模块控制链路聚合组的成员的端口下发到硬件的方式,实现流量在链路聚合组本地端口的优先转发。
55.进一步的,软件模块实现了mc-lag链路后,通过fpga实时监控聚合链路组本地端口流量,一旦超出预设阈值范围,fpga向软件模块发出通告,所述软件模块根据所述通过进行所述链路聚合组远端成员的添加或移出。
56.举例来说,如图2所示,软件模块创建跨设备链路聚合组之后,把聚合组本地成员端口下发到硬件,实现聚合组本地转发。然后把预设的流量上限阈值、下限阈值和聚合组本地端口下发到fpga,让fpga得到流量统计对象和监控的依据。
57.在此之后,软件启动进程,等待fpga发送消息,并根据fpga消息进行处理。一共有两种消息:流量高于上限阈值、流量低于下限阈值。如果收到流量高于上限阈值的消息,软件就把聚合组的远端成员端口下发到硬件,让聚合组远端成员端口参与聚合组的流量转发,避免聚合组流量超带宽。如果收到流量低于下限阈值的消息,表明流量低于聚合组的本地带宽,软件则把聚合组的远端成员端口从硬件删除,让流量仅仅在本地转发。综上所述,软件通过动态控制聚合组远端成员端口在硬件的加入、删除,实现了流量本地优先转发。
58.如图3所示,对于fpga来说,其流量信息通告流程如下:
59.步骤101:首先从软件获取预设的流量上限阈值、下限阈值和跨设备链路聚合组本地端口,并设置流量记录为低限。
60.步骤102:周期性获取聚合组本地端口的流量数据。
61.步骤103:判断流量是否大于预设上限阈值,查看流量记录是否为超限,若超出,则转步骤104;否则,转步骤105;
62.步骤104:向软件发送流量高于上限阈值的消息
63.步骤105:判断流量是否小于预设下限阈值,看流量记录是否为超限,若超出,则转步骤106;否则转步骤107
64.步骤106:向软件发送流量低于下限阈值的通告消息。
65.步骤107:不做处理等待超时时间,重复步骤102。
66.分别设置流量上限阈值和下限阈值,避免流量震荡导致频繁发送通告消息,这样就避免了在聚合组成员端口本地转发和聚合组成员端口全转发之间来回切换的风险。
67.如图4所示,本发明还提供一种跨设备链路聚合系统,其包括:
68.检测模块,用于周期性测量mc-lag链路聚合组本地端口的当前流量;
69.比较模块,用于若当前流量超出预设阈值范围,则将链路聚合组远端成员的端口加入或移出所述mc-lag链路聚合组。
70.优选的,所述比较模块包括添加子模块,所述添加子模块用于若当前流量高于预设阈值范围,则将所述链路聚合组远端成员的端口加入所述mc-lag链路聚合组。
71.进一步的,所述比较模块包括移除子模块,所述移除子模块用于若当前流量低于预设阈值范围,则将所述链路聚合组远端成员的端口移出所述mc-lag链路聚合组。
72.前述方法实施例中的各种变化方式和具体实例同样适用于本实施例的系统,通过前述方法的详细描述,本领域技术人员可以清楚的知道本实施例中系统的实施方法,所以为了说明书的简洁,在此不再详述。
73.总体来说,本发明实施例提供的一种跨设备链路聚合方法及系统,结合mc-lag以及堆叠系统的技术优势,形成最大程度上发挥跨设备链路聚合的转发能力优势,又能降低对互联链路带宽的影响的开设备链路聚合网络。
74.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
75.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
76.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
77.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
78.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1