一种最优链路选择方法和设备的制作方法

文档序号:7972182阅读:238来源:国知局
专利名称:一种最优链路选择方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种最优链路选择方法和设备。
背景技术
大多数网络中,通过链路聚合技术来提高逻辑链路带宽,并提供链路的可靠性。而可用于链路聚合的端口速率可以是IOGE端口、GE端口、100M端口,目前的网络中,以IOGE 和GE居多。一般情况下,链路聚合不会考虑不同速率端口的聚合方式。但某些情况下可能会将不同速率端口进行聚合,这是因为IOGE单板与IOGE光模块价格过高,很多企业因此保有数量较少,而采用大量的GE链路聚合来提高逻辑链路带宽,势必会影响设备用于接入的端口数量,一般来说,可能的组网1个IOGE端口与多个GE端口聚合,IOGE端口成为选中端口,多个GE端口为未被选中端口,用于IOGE端口的链路备份。当IOGE端口出现故障时,多个GE端口成为选中端口。若采用动态聚合模式,即采用链路聚合控制协议(LACP)时,首先,从聚合链路的两端选出设备ID较小的一端,其中,设备ID由系统的LACP优先级和系统的MAC地址共同组成,先比较两端的系统LACP优先级,优先级越小其设备ID越小;若优先级相同再比较其系统MAC地址,MAC地址越小其设备ID越小。其次,对于设备ID较小的一端,再比较其聚合组内各成员端口的端口 ID,其中,成员端口的端口 ID由端口的LACP优先级和端口的编号共同组成,先比较端口的端口 LACP优先级,优先级越小其端口 ID越小;若优先级相同再比较其端口号,端口号越小其端口 ID越小。端口 ID最小的端口作为参考端口。与此同时,设备ID较大的一端会随着对端成员端口状态的变化,随时调整本端各成员端口的状态,以确保聚合链路两端成员端口状态的一致。此时,分布式设备因IOGE单板的槽位号,可能导致 IOGE端口的编号反而更大,而未被选为参考端口,这会导致GE端口成为选中端口,IOGE端口未被选中而不能用于流量的转发。在现有实现中,用户无法修改两端设备的设备ID、MAC地址前提下,用户无法将两端设备中的某台设备指定为主设备,由其选择最优链路。

发明内容
有鉴于此,本发明提供一种最优链路选择方法和设备,能够灵活确定主设备,选择最优链路。为解决上述技术问题,本发明的技术方案是这样实现的—种最优链路选择方法,所述方法包括本端设备接收对端设备发送的链路聚合控制协议LACP报文;本端设备确定接收的所述LACP报文中携带的系统LACP优先级不低于本端设备的系统LACP优先级,则将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级, 并将调整后的自身的系统LACP优先级通过LACP报文发送给对端设备;本端设备在聚合组的成员端口中选择选中端口,并根据选择的所述选中端口选择最优链路。一种最优链路选择设备,所述设备包括接收单元、控制单元、调整单元、发送单元、端口选择单元以及链路选择单元;所述接收单元,用于接收对端设备发送的链路聚合控制协议LACP报文;所述控制单元,用于确定所述接收单元接收的LACP报文中携带的系统LACP优先级不低于自身的系统LACP优先级,则发送优先级调整触发信号所述调整单元;所述调整单元,用于根据所述优先级调整触发信号,将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级,分别发送调整后的自身的系统LACP优先级至所述发送单元以及端口选择触发信号至所述端口选择单元;所述发送单元,用于将调整后的系统LACP优先级携带在LACP报文中发送给对端设备;所述端口选择单元,用于所述调整单元的端口选择触发信号在本设备的聚合组中选择选中端口,并通知给链路选择单元;所述链路选择单元,根据所述选中端口选择最优链路。综上所述,本发明通过调整自身的系统LACP优先级高于对端设备的系统LACP优先级,并交互使本端设备成为主设备,本端设备选择选中端口,并根据选中端口选择最优链路。能够灵活确定主设备,选择最优链路。


图1为本发明实施例中最优链路选择方法流程图;图2为本发明具体实施例中最优链路选择设备的结构示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。参见图1,图1为本发明实施例中最优链路选择方法流程图。具体步骤为步骤101,本端设备接收对端设备发送的LACP报文。本步骤中,本端设备与对端设备对接时,通过交互LACP报文选择主设备,本端设备接收对端设备发送的LACP报文中携带对端设备的系统LACP优先级以及其他用于主设备选择的参数。步骤102,本端设备确定接收的LACP报文中携带的系统LACP优先级不低于本端设备的系统LACP优先级,则将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级,并将调整后的自身的系统LACP优先级通过LACP报文发送给对端设备。用户在任一设备上执行本实施例技术方案,则该设备总能将自身选择为主设备以执行最优链路选择,因此用户即使无法修改设备上用于主设备选择的参数,仍然能够主动指定某台设备成为主设备,提供了更为灵活的最优链路的选择方法。本步骤中若对端设备的系统LACP的优先级不低于自身的系统LACP优先级包括对端设备的系统LACP的优先级高于或等于本端设备自身的系统LACP优先级的情况。如果具体实现中,两端设备的系统LACP优先级值越小所对应的LACP优先级越高,则本端设备可以将自身的系统LACP优先级值调整为对端设备的系统LACP优先级值减1,如果两端设备的系统LACP优先级值越大所对应的LACP优先级越高,则本端设备可以将自身的系统LACP优先级值调整为对端设备的系统LACP优先级值加1,使本端设备被选为主设备。本实施例对其他调整系统LACP优先级方式不再穷举。步骤103,本端设备在聚合组的成员端口中选择选中端口,并根据选择的选中端口选择最优链路。在现有实现中,本端设备在聚合组的UP的成员端中,依据不同的原则选择参考端口(如选择端口 ID最小的成员端口作为参考端口),任一成员端口的特征值与参考端口的特征值相同,则该成员端口作为选中端口的候选端口 ;任一成员端口的特征值不同于参考端口的特征值,则该成员端口作为非选中端口。在本实施例中,除上述已有的选中端口的选择方式外,还进一步提供了选中端口的优化选择方案本端设备根据成员端口速率将聚合组中UP的高速率和低速率成员端口划分为高速子组和低速子组,根据高速子组和低速子组中的成员端口数量、带宽和预设规则分别确定高速子组和低速子组的优先级,将优先级高的子组中成员端口作为选中端口。本步骤中将聚合组中速率高的成员端口加入高速子组,将聚合组中速率低的成员端口加入低速子组。若IOGE成员端口和GE成员端口聚合,IOGE成员端口作为高速率成员端口,GE成员端口作为低速率成员端口。该聚合组中DOWN成员端口不属于任何子组,为未选中端口。本端设备在聚合组的成员端口中选择选中端口的步骤进一步包括本端设备将聚合组的成员端口按照端口带宽划分为不同的子组的成员端口 ;本端设备根据各子组的成员端口的端口数量和/或端口带宽确定各子组的子组优先级;本端设备将具有最高子组优先级的子组的全部成员端口选择为选中端口。用户可以根据网络环境或业务需求,使本端设备将选择某个子组的所有端口选择为选中端口。譬如,本端设备可以根据各子组的端口数量对应的优先级,将选择某个子组的所有端口选择为选中端口 ;或者本端设备可以根据各子组的端口带宽对应的优先级,将选择某个子组的所有端口选择为选中端口 ;或者本端设备可以根据各子组的端口带宽的总和对应优先级,将选择某个子组的所有端口选择为选中端口 ;或者本端设备将各子组的端口优先级值设置为相同值,将各子组的端口权重值设置为不同值,根据各子组的端口优先级值和端口权重值以及预设的子组优先级计算公式,计算各子组的子组优先级。其中,预设的子组优先级计算公式是用户根据需求设置的。譬如,用户为满足应用需求,综合考虑子组中的端口数量和端口带宽,而希望子组选择符合以下规则规则1,若高速子组中包括1个IOGE端口,低速子组中包括小于等于3个GE端口, 则确定高速子组优先级高,该子组中的成员端口作为选中端口 ;低速子组中的成员端口作为非选中端口。规则2,若高速子组中包括1个IOGE端口,低速子组中包括大于3个GE端口,则确定低速子组优先级高,该子组中的成员端口作为选中端口 ;高速子组中的成员端口作为非选中端口。
规则3,若高速子组中包括2个IOGE端口,低速子组中包括小于等于7个GE端口, 则确定高速子组优先级高,该子组中的成员端口作为选中端口 ;低速子组中的成员端口作为非选中端口。规则4,若高速子组中包括7个IOGE端口,低速子组中包括大于7个GE端口,则确定低速子组优先级高,该子组中的成员端口作为选中端口 ;高速子组中的成员端口作为非选中端口。规则5,若高速子组中包括3个IOGE端口,低速子组中包括任意个数的GE端口,则确定高速子组优先级高,该子组中的成员端口作为选中端口 ;低速子组中的成员端口作为非选中端口。用户可以预设相应的子组优先级计算公式,来符合上述规则。譬如,聚合链路采用 IOGE端口和GE端口聚合。将IOGE端口称为高速率成员端口,GE端口称为低速率端口,聚合组中UP的IOGE端口加入高速率子组,聚合组中UP的GE端口加入低速率子组。预设端口的系统优先级为32768。下述提到的聚合组中的、高速子组中的、低速子组中的成员端口均为UP状态的成员端口,由于DOWN状态的成员端口均为未选中端口,不再确定其是否可能被选中为选中端口。若高速子组中包含1个IOGE端口时,单个IOGE端口的权重为4,则高速子组的优先级为32768/4+1 = 8193 ;若高速子组中包含2个IOGE端口时,2个端口的权重进行累加, 为8,则高速子组的优先级为32768/8+1 = 4097 ;若高速子组中包含3个及以上的IOGE端口时,高速子组的权重直接设置为16,则高速子组的优先级为32768/16+1 = 2049。若低速子组中包含1个GE端口时,单个GE端口的权重为1,则低速子组的优先级为32768/1 = 32768 ;依次计算,2个端口时低速子组的优先级为32768/2 = 16384 ;3个端口时低速子组的优先级为32768/3 = 10923 ;4个端口时低速子组的优先级为32768/4 = 8192 ;5个端口时低速子组的优先级为32768/5 = 6554 ;6个端口时低速子组的优先级为 32768/6 = 5461 ;7个端口时低速子组的优先级为32768/7 = 4681 ;8个端口时低速子组的优先级为327688 = 4096 ;当低速子组包含的GE端口的数量大于8时,低速子组的权重直接设置为15,则低速子组的优先级为32768/15 = 2185。根据上述计算方法,若动态聚合组中包括1个IOGE端口和小于等于3个GE端口, 高速子组优先级为8193,而低速子组可能的优先级别分别为32768、16384、10923,则高速子组更优先,则选择IOGE端口为参考端口,即成为选中端口,GE端口不被选中。若动态聚合组中包括1个IOGE端口和大于等于4个GE端口,高速子组优先级为 8193,而低速子组可能的优先级别分别为8192、6554、M61、4681、4096、2185,则优选4个GE 端口为选中端口,其中一个编号最小的GE端口成为参考端口,IOG端口为未选中端口。若动态聚合组中包括2个IOGE端口和小于等于7个GE端口,高速子组优先级为 4097,而低速子组可能的优先级别分别为32768、16384、10923、8192、6554、M61、4681,则选择IOGE端口为选中端口,其中一个编号最小的IOGE端口成为参考端口,GE端口为未选中端□。若动态聚合组中包括2个IOGE端口和大于等于8个GE端口,高速子组优先级为 4097,而低速子组可能的优先级别分别为4096、2185,则选择GE端口为选中端口,其中一个编号最小的GE端口成为参考端口,IOGE端口为未选中端口。
若动态聚合组中包括大于等于3个IOGE端口和任意个数的GE端口,高速子组优先级为2049,而低速子组可能的优先级别分别为32768、16384、10923、8192、65M、5461、 4681、4096、2185,所以此时只会选择IOGE端口为选中端口,其中一个编号最小的IOGE端口成为参考端口,GE端口为未选中端口。上述实施例中,求商计算不能整除时对余数进行四舍五入。由上述实施例可知,当高速子组和低速子组的优先级高的子组被选出后,在优先级高的子组中按现有实现选出参考端口。需要说明的是,本实施例中子组优先级计算公式是用户根据自己选择子组的规则实现的。但是,网络环境以及应用需求的差异会使用户需要实现不同选择子组的规则,因此相应的子组优先级计算公司各不相同。由于选择子组的规则根据用户需求有各种变化,由此对应子组选择规则的计算公式无法穷举。基于上述同样的发明构思,本发明还提出一种最优链路选择设备。参见图2,图2为本发明具体实施例中最优链路选择设备的结构示意图。该设备包括接收单元201、控制单元202、调整单元203、发送单元204、端口选择单元 205以及链路选择单元206。接收单元201,用于接收对端设备发送的LACP报文。控制单元202,用于确定接收单元201接收的LACP报文中携带的系统LACP优先级不低于自身的系统LACP优先级,则发送优先级调整触发信号调整单元203。控制单元202确定接收单元201接收的LACP报文中携带的系统LACP优先级低于自身的系统LACP优先级时,则直接触发端口选择单元选择选中端口,与已有方式处理相同。调整单元203,用于根据优先级调整触发信号,将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级,分别发送调整后的自身的系统LACP优先级至发送单元 204以及端口选择触发信号至端口选择单元205。发送单元204,用于将调整后的系统LACP优先级携带在LACP报文中发送给对端设备。端口选择单元205,用于调整单元203的端口选择触发信号在本设备的聚合组中选择选中端口,并通知给链路选择单元206。链路选择单元206,根据选中端口选择最优链路。较佳地,端口选择单元205进一步包括第一选择子单元215,用于将聚合组的成员端口按照端口带宽划分为不同的子组的成员端口。第二选择子单元225,用于根据各子组的成员端口的端口数量和/或端口带宽确定各子组的子组优先级。第三选择子单元235,用于将具有最高子组优先级的子组的全部成员端口选择为选中端口。较佳地,第二选择子单元225,用于根据各子组的成员端口的端口数量,确定各子组的子组优先级;或用于根据各子组的成员端口的端口带宽,确定各子组的子组优先级;或用于根据各子组的成员端口的端口数量和端口带宽计算各子组的成员端口的带宽总和,根据各子组的成员端口的带宽总和确定各子组的子组优先级。较佳地,第二选择子单元225,用于将各子组的端口优先级值设置为相同值,将各子组的端口权重值设置为不同值,根据各子组的端口优先级值和端口权重值以及预设的子组优先级计算公式,确定各子组的子组优先级。上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。综上所述,本发明通过调整本端设备的系统LACP优先级,使本端设备成为主设备,能够灵活确定主设备,解决对不支持本方案的不同厂商设备的兼容性问题。引入高速子组和低速子组及子组优先级,通过对不同速率端口分组及对子组优先级的计算得出最佳子组。最佳子组中的所有端口成为选中端口,并从中选出参考端口通告给对端,未被选中的子组中的端口成为非选中端口。能够选择出高速率链路或数量多冗余性更强的低速率链路。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种最优链路选择方法,其特征在于,所述方法包括 本端设备接收对端设备发送的链路聚合控制协议LACP报文;本端设备确定接收的所述LACP报文中携带的系统LACP优先级不低于本设备的系统 LACP优先级,则将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级,并将调整后的自身的系统LACP优先级通过LACP报文发送给对端设备;本端设备在聚合组的成员端口中选择选中端口,并根据选择的所述选中端口选择最优链路。
2.根据权利要求1所述的方法,其特征在于,所述本端设备在聚合组的成员端口中选择选中端口的步骤进一步包括本端设备将聚合组的成员端口按照端口带宽划分为不同的子组的成员端口; 本端设备根据各子组的成员端口的端口数量和/或端口带宽确定各子组的子组优先级;本端设备将具有最高子组优先级的子组的全部成员端口选择为选中端口。
3.根据权利要求2所述的方法,其特征在于,所述方法进一步包括本端设备根据各子组的成员端口的端口数量,确定各子组的子组优先级;或者, 本端设备根据各子组的成员端口的端口带宽,确定各子组的子组优先级;或者本端设备根据各子组的成员端口的端口数量和端口带宽计算各子组的成员端口的带宽总和,根据各子组的成员端口的带宽总和确定各子组的子组优先级。
4.根据权利要求2所述的方法,其特征在于,所述方法进一步包括本端设备将各子组的端口优先级值设置为相同值,将各子组的端口权重值设置为不同值,根据各子组的端口优先级值和端口权重值以及预设的子组优先级计算公式,计算各子组的子组优先级。
5.一种最优链路选择设备,其特征在于,所述设备包括接收单元、控制单元、调整单元、发送单元、端口选择单元以及链路选择单元;所述接收单元,用于接收对端设备发送的链路聚合控制协议LACP报文; 所述控制单元,用于确定所述接收单元接收的LACP报文中携带的系统LACP优先级不低于自身的系统LACP优先级,则发送优先级调整触发信号所述调整单元;所述调整单元,用于根据所述优先级调整触发信号,将自身的系统LACP优先级调整至高于对端设备的系统LACP优先级,分别发送调整后的自身的系统LACP优先级至所述发送单元以及端口选择触发信号至所述端口选择单元;所述发送单元,用于将调整后的系统LACP优先级携带在LACP报文中发送给对端设备;所述端口选择单元,用于所述调整单元的端口选择触发信号在本设备的聚合组中选择选中端口,并通知给链路选择单元;所述链路选择单元,根据所述选中端口选择最优链路。
6.根据权利要求5所述的设备,其特征在于,所述端口选择单元进一步包括第一选择子单元,用于将聚合组的成员端口按照端口带宽划分为不同的子组的成员端Π ;第二选择子单元,用于根据各子组的成员端口的端口数量和/或端口带宽确定各子组的子组优先级;第三选择子单元,用于将具有最高子组优先级的子组的全部成员端口选择为选中端
7.根据权利要求5所述的设备,其特征在于,所述第二选择子单元,用于根据各子组的成员端口的端口数量,确定各子组的子组优先级;或用于根据各子组的成员端口的端口带宽,确定各子组的子组优先级;或用于根据各子组的成员端口的端口数量和端口带宽计算各子组的成员端口的带宽总和,根据各子组的成员端口的带宽总和确定各子组的子组优先级。
8.根据权利要求5所述的设备,其特征在于,所述第二选择子单元,用于将各子组的端口优先级值设置为相同值,将各子组的端口权重值设置为不同值,根据各子组的端口优先级值和端口权重值以及预设的子组优先级计算公式,确定各子组的子组优先级。
全文摘要
本发明公开了一种最优链路选择方法,该方法包括若接收的LACP报文中携带的系统LACP优先级不低于自身的系统LACP优先级时,调整自身的系统LACP优先级至高于对端设备的系统LACP优先级,并通知对端设备;本端设备选择选中端口,并根据所述选中端口选择最优链路。基于同样的发明构思还提出一种设备,能够灵活确定主设备,选择最优链路。
文档编号H04L12/56GK102447621SQ20111035994
公开日2012年5月9日 申请日期2011年11月14日 优先权日2011年11月14日
发明者孙策, 聂明顺, 顾雷雷 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1