华三链路聚合原理及实验

以太网链路聚合简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效地提高链路的可靠性。

基本概念:

聚合组、成员端口和聚合接口
将多个以太网接口捆绑在一起所形成的组合称为聚合组,而这些被捆绑在一起的以太网接口就称为该聚合组的成员端口。每个聚合组唯一对应着一个逻辑接口,我们称之为聚合接口。聚合组/聚合接口可以分为以下两种类型:
二层聚合组/二层聚合接口:二层聚合组的成员端口全部为二层以太网接口,其对应的聚合接口称为二层聚合接口(Bridge-aggregation Interface,BAGG)。
三层聚合组/三层聚合接口:三层聚合组的成员端口全部为三层以太网接口,其对应的聚合接口称为三层聚合接口(Route-aggregation Interface,RAGG)
注:在创建了三层聚合接口之后,还可以继续创建该三层聚合接口的子接口(简称三层聚合子接口)。三层聚合子接口也是一种逻辑接口,工作在网络层,主要用来在三层聚合接口上支持收发携带VLAN Tag的报文。
聚合接口的速率和双工模式取决于对应聚合组内的选中端口:聚合接口的速率等于所有选中端口的速率之和,聚合接口的双工模式则与选中端口的双工模式相同
聚合组与聚合接口的编号是一一对应的,譬如聚合组1对应于聚合接口1。

成员端口的状态
聚合组内的成员端口具有以下两种状态:
选中(Selected)状态:此状态下的成员端口可以参与用户数据的转发,处于此状态的成员端口简称为“选中端口”。
非选中(Unselected)状态:此状态下的成员端口不能参与用户数据的转发,处于此状态的成员端口简称为“非选中端口”。

操作Key
操作Key是系统在进行链路聚合时用来表征成员端口聚合能力的一个数值,它是根据成员端口上的一些信息(包括该端口的速率、双工模式等)的组合自动计算生成的,这个信息组合中任何一项的变化都会引起操作Key的重新计算。在同一聚合组中,所有的选中端口都必须具有相同的操作Key。

配置分类
根据对成员端口状态的影响不同,我们可以将成员端口上的配置分为以下三类:
(1)端口属性类配置:包含速率、双工模式和链路状态(up/down)这三项配置内容,是成员端口上最基础的配置内容。
(2)第二类配置:包含的配置内容如下表所示。在聚合组中,只有与对应聚合接口的第二类配置完全相同的成员端口才能够成为选中端口。

 

注:在聚合接口上所作的第二类配置,将被自动同步到对应聚合组内的所有成员端口上。当聚合接口被删除后,这些配置仍将保留在这些成员端口上。
由于成员端口上第二类配置的改变可能导致其选中/非选中状态发生变化,进而对业务产生影响,因此当在成员端口上进行此类配置时,系统将给出提示信息,由用户来决定是否继续执行该配置。

(3)第一类配置:是相对于第二类配置而言的,包含的配置内容有GVRP、MSTP等。在聚合组中,即使某成员端口与对应聚合接口的第一类配置存在不同,也不会影响该成员端口成为选中端口。
注:在成员端口上所作的第一类配置,只有当该成员端口退出聚合组后才能生效。

参考端口
参考端口从成员端口中选出,其端口属性类配置和第二类配置将作为同一聚合组内的其它成员端口的参照,以确定这些成员端口的状态。

LACP协议
基于IEEE802.3ad标准的LACP(Link Aggregation Control Protocol,链路聚合控制协议)协议是一种实现链路动态聚合的协议,运行该协议的设备之间通过互发LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元)来交互链路聚合的相关信息。
(1)LACP协议的功能
根据所使用的LACPDU字段的不同,可将LACP协议的功能分为基本功能和扩展功能两大类,如下表所示。

 

(2)LACP优先级
根据作用的不同,可以将LACP优先级分为系统LACP优先级和端口聚合优先级两类,如下表

 

(3)LACP超时时间
LACP超时时间是指成员端口等待接收LACPDU的超时时间。在三倍LACP超时时间之后,如果本端成员端口仍未收到来自对端的LACPDU,则认为对端成员端口已失效。LACP超时时间只有短超时(1秒)和长超时(30秒)两种取值。

聚合模式
根据成员端口上是否启用了LACP协议,可以将链路聚合分为静态聚合和动态聚合两种模式,它们各自的特点如下表所示。

 

处于静态聚合模式和动态聚合模式下的聚合组分别称为静态聚合组和动态聚合组,动态聚合组内的选中端口以及处于up状态、与对应聚合接口的第二类配置相同的非选中端口均可以收发LACPDU。

静态聚合模式
在静态聚合模式下,聚合组内的成员端口上不启用LACP协议,其端口状态通过手工进行维护。静态聚合模式的工作机制如下:

选择参考端口
当聚合组内有处于up状态的端口时,先比较端口的聚合优先级,优先级数值最小的端口作为参考端口;如果优先级相同,再按照端口的全双工/高速率->全双工/低速率->半双工/高速率->半双工/低速率的优先次序,选择优先次序最高、且第二类配置与对应聚合接口相同的端口作为该组的参考端口;如果优先次序也相同,则选择端口号最小的端口作为参考端口。

确定成员端口的状态
静态聚合组内成员端口状态的确定流程如图

 

注:当一个成员端口的端口属性类配置或第二类配置改变时,其所在静态聚合组内各成员端口的选中/非选中状态可能会发生改变。
当静态聚合组内选中端口的数量已达到上限时,后加入的成员端口即使满足成为选中端口的所有条件,也不会立刻成为选中端口。这样能够尽量维持当前选中端口上的流量不中断,但是由于设备重启时会重新计算选中端口,因此可能导致设备重启前、后各成员端口的选中/非选中状态不一致。

3 动态聚合模式
在动态聚合模式下,聚合组内的成员端口上均启用LACP协议,其端口状态通过该协议自动进行维护。动态聚合模式的工作机制如下:

选择参考端口
(1)首先,从聚合链路的两端选出设备ID(由系统的LACP优先级和系统的MAC地址共同构成)较小的一端:先比较两端的系统LACP优先级,优先级数值越小其设备ID越小;如果优先级相同再比较其系统MAC地址,MAC地址越小其设备ID越小。
(2)其次,对于设备ID较小的一端,再比较其聚合组内各成员端口的端口ID(由端口的聚合优先级和端口的编号共同构成):先比较端口的聚合优先级,优先级数值越小其端口ID越小;如果优先级相同再比较其端口号,端口号越小其端口ID越小。端口ID最小的端口作为参考端口。

确定成员端口的状态
在设备ID较小的一端,动态聚合组内成员端口状态的确定流程如图

 

与此同时,设备ID较大的一端也会随着对端成员端口状态的变化,随时调整本端各成员端口的状态,以确保聚合链路两端成员端口状态的一致。
注:1.当动态聚合组内同时存在全双工端口和半双工端口时,全双工端口将优先成为选中端口;只有当所有全双工端口都无法成为选中端口,或动态聚合组内只有半双工端口时,才允许从半双工端口中选出一个成为选中端口,且只有一个半双工端口可成为选中端口。
2.当一个成员端口的端口属性类配置或第二类配置改变时,其所在动态聚合组内各成员端口的选中/非选中状态可能会发生改变。
3.当本端端口的选中/非选中状态发生改变时,其对端端口的选中/非选中状态也将随之改变。
4.当动态聚合组内选中端口的数量已达到上限时,后加入的成员端口一旦满足成为选中端口的所有条件,就会立刻取代已不满足条件的端口成为选中端口。
聚合负载分担类型
通过采用不同的聚合负载分担类型及其组合,可以灵活地实现对聚合组内流量的负载分担。聚合负载分担的类型包括以下几种:
1.根据报文的MAC地址进行聚合负载分担
2.根据报文的服务端口号进行聚合负载分担
3. 根据报文的入端口进行聚合负载分担
4. 根据报文的IP地址进行聚合负载分担
5. 根据报文的MPLS标签进行聚合负载分担

用户可以指定系统按照上述聚合负载分担类型的其中之一或其组合来进行负载分担,此外用户也可以指定系统按照报文类型(如二层、IPv4、IPv6、MPLS等)自动选择聚合负载分担的类型,还可以指定系统对每个报文逐包进行聚合负载分担

配置描述:

 

配置聚合组注意事项:
1.配置或使能了下列功能的端口将不能加入二层聚合组:RRPP、MAC地址认证、端口安全模式、IP Source Guard功能、802.1X功能以及Portal免认证规则源接口。
2.配置或使能了下列功能的接口将不能加入三层聚合组:IP地址、DHCP客户端、BOOTP客户端、VRRP功能和Portal功能。
3.用户删除聚合接口时,系统将自动删除对应的聚合组,且该聚合组内的所有成员端口将全部离开该聚合组。
4.对于静态聚合模式,用户需要保证在同一链路两端端口的选中/非选中状态的一致性,否则聚合功能无法正常使用。
5.对于动态聚合模式,聚合链路两端的设备会自动协商同一链路两端的端口在各自聚合组内的选中/非选中状态,用户只需保证本端聚合在一起的端口的对端也同样聚合在一起,聚合功能即可正常使用。

配置二层静态聚合组命令:
interface bridge-aggregation 1创建聚合口1
interface g1/0/1
port link-aggregation group 1将接口g1/0/1加入聚合口1
link-aggregation port-priority 32768 配置端口优先级(默认32768)

配置三层静态聚合组命令:
interface route-aggregation 1创建聚合口1
interface g1/0/1
port link-aggregation group 1将接口g1/0/1加入聚合口1
link-aggregation port-priority 32768配置端口优先级(默认32768)

配置二层动态聚合组命令:
lacp system-priority 32768配置系统LACP优先级(默认32768)
interface bridge-aggregation 1
link-aggregation mode dynamic
interface g1/0/1
port link-aggregation group 1
link-aggregation port-priority 32768配置端口LACP优先级(默认32768)
lacp period short配置端口的LACP超时时间为短超时(即1秒),缺省情况下,端口的LACP超时时间为长超时(即30秒)

配置三层动态聚合组命令:
lacp system-priority 32768配置系统LACP优先级(默认32768)
interface route-aggregation 1
link-aggregation mode dynamic
interface g1/0/1
port link-aggregation group 1
link-aggregation port-priority 32768配置端口LACP优先级(默认32768)
lacp period short配置端口的LACP超时时间为短超时(即1秒),缺省情况下,端口的LACP超时时间为长超时(即30秒)

其他命令:
1.interface route-aggregation 1
mtu 1500配置三层聚合口/子接口的MTU值(默认1500)
2.【h3c】snmp-agent trap enable 开启聚合接口链路状态变化Trap功能(缺省情况下,全局接口链路状态变化Trap功能处于开启状态)
在聚合接口上开启了接口链路状态变化Trap功能后,可以使聚合接口在链路状态发生改变时生成并发送端口Link up和Link down的Trap报文
interface route-aggregation/bridge-aggregation 1
enable snmp trap updown开启接口链路状态变化Trap功能(缺省情况下,接口链路状态变化Trap功能处于开启状态)
3.限制聚合组内选中端口的数量
聚合链路的带宽取决于聚合组内选中端口的数量,用户通过配置聚合组中的最小选中端口数,可以避免由于选中端口太少而造成聚合链路上的流量拥塞。当聚合组内选中端口的数量达不到配置值时,对应的聚合接口将不会up,从而使流量可以切换到备份链路上。具体实现如下:
如果聚合组内能够被选中的成员端口数小于配置值,这些成员端口都将变为非选中状态,对应聚合接口的链路状态也将变为down。
当聚合组内能够被选中的成员端口数增加至不小于配置值时,这些成员端口都将变为选中状态,对应聚合接口的链路状态也将变为up。
interface route-aggregation/bridge-aggregation 1
link-aggregation selected-port minimum 2配置聚合组中的最小选中端口数为2(缺省情况下,聚合组中的最小选中端口数不受限制)
注:针对静态聚合组进行本配置时,必须在聚合链路两端进行相同的配置,并保证两端聚合组的配置一致。
配置聚合组中的最小选中端口数可能导致聚合组内的所有成员端口都变为非选中状态。
4.关闭/开启聚合接口
对聚合接口的开启/关闭操作,将会影响聚合接口对应的聚合组内成员端口的选中/非选中状态和链路状态:
关闭聚合接口时,将使对应聚合组内所有处于选中状态的成员端口都变为非选中端口,且所有成员端口的链路状态都将变为down。
开启聚合接口时,系统将重新计算对应聚合组内成员端口的选中/非选中状态,且所有成员端口的链路状态都将变为up。
注:由于聚合子接口不存在对应的聚合组,所以关闭聚合子接口对聚合组没有影响。
interface route-aggregation/bridge-aggregation 1
shutdown
interface route-aggregation/bridge-aggregation 1
undo shutdown
5.interface route-aggregation/bridge-aggregation 1
default恢复聚合接口的缺省配置
6.配置聚合负载分担类型
通过改变负载分担的类型,可以灵活地实现聚合组流量的负载分担。用户既可以指定系统按照报文携带的MAC地址、服务端口号、报文入端口、IP地址、MPLS标签等信息之一或其组合来选择所采用的负载分担类型,也可以指定系统按照报文类型(如二层、IPv4、IPv6、MPLS等)自动选择所采用的聚合负载分担类型,还可以指定系统对每个报文逐包进行聚合负载分担。
用户可以根据需要,选择全局配置或在聚合组内配置聚合负载分担类型。全局的配置对所有聚合组都有效,而聚合组内的配置只对当前聚合组有效。对于某聚合组来说,优先采用该聚合组内的配置,只有该聚合组内未进行配置时,才采用全局的配置。
注:改变负载分担的类型仅对单播报文生效,即可以改变单播报文的聚合负载分担类型。对广播和组播报文无效,其分担类型只能是缺省模式。
link-aggregation load-sharing mode { destination-ip | destination-mac | destination-port | ingress-port | source-ip | source-mac | source-port } *全局配置聚合负载分担类型
缺省情况下,系统按照报文类型自动选择所采用的聚合负载分担类型
目前,在系统视图下进行全局聚合负载分担类型配置,交换机只支持:
根据源IP地址进行聚合负载分担;
根据目的IP地址进行聚合负载分担;
根据源MAC地址进行聚合负载分担;
根据目的MAC地址进行聚合负载分担;
根据源IP地址与目的IP地址进行聚合负载分担;
根据源IP地址与源端口进行聚合负载分担;
根据目的IP地址与目的端口进行聚合负载分担;
根据报文入端口、源MAC地址、目的MAC地址之间不同的组合进行聚合负载分担。
7.interface bridge-aggregation 1
link-aggregation load-sharing mode { { destination-ip | destination-mac | mpls-label1 | mpls-label2 | source-ip | source-mac } * | flexible }在聚合组内配置聚合负载分担类型
缺省情况下,聚合组内采用的聚合负载分担类型与全局采用的聚合负载分担类型一致
目前,在二层聚合接口视图下进行聚合组的聚合负载分担模式配置,交换机只支持:
根据报文类型自动匹配负载分担类型;
根据源IP地址进行聚合负载分担;
根据目的IP地址进行聚合负载分担;
根据源MAC地址进行聚合负载分担;
根据目的MAC地址进行聚合负载分担;
根据mpls-label1标签进行聚合负载分担;
根据目的IP地址与源IP地址进行聚合负载分担;
根据目的MAC地址与源MAC地址进行聚合负载分担;
根据mpls-label1和mpls-label2标签进行聚合负载分担。
8.【H3C】link-aggregation load-sharing mode local-first配置聚合负载分担为本地转发优先
缺省情况下,聚合负载分担为本地转发优先
聚合负载分担的本地转发优先机制可以降低数据流量对IRF物理端口间链路的冲击,采用与未采用该机制时的聚合负载分担方式如图

 


9.【H3C】link-aggregation lacp traffic-redirect-notification enable使能聚合流量重定向功能
缺省情况下,聚合流量重定向功能处于关闭状态
在使能了聚合流量重定向功能后,当重启分布式设备上的某块单板或IRF中的某台成员设备时,系统可以将待重启单板/设备上的聚合成员端口的流量重定向到其它单板/设备上,从而实现聚合链路上流量的不中断。
注:聚合流量重定向功能只支持动态聚合组,且仅对已知单播报文生效。
必须在聚合链路两端都使能聚合流量重定向功能才能实现聚合链路上流量的不中断。
如果同时使能聚合流量重定向功能和MSTP功能,在重启单板/设备时会出现少量的丢包,因此不建议同时使能上述两个功能。

链路聚合实验:
二层静态聚合配置:
实验需求:SW1和SW2之间做链路聚合,pc3和pc4通信,pc5和pc6通信


SW1配置:

 

 

[H3C]link-aggregation load-sharing mode source-mac destination-mac聚合负载分担模式
SW2配置:同SW1

 

查看链路聚合组,发现有三个成员端口

 

[H3C]link-aggregation load-sharing mode source-mac destination-mac聚合负载分担模式
SW1将pc端的接口划入相应的vlan


SW2将pc端的接口划入相应的vlan

 

 

配置pc地址:pc3为192.168.1.1,pc4为192.168.1.2,pc5为192.168.1.3,pc6为192.168.1.4

测试pc连通性:pc3 ping pc4通,pc3 ping pc5和pc6不通,因为不在一个vlan,同理,pc5可以ping通pc6,但是不可以ping通pc3和pc4
pc3 ping pc4通:

二层动态链路聚合配置
只需要在聚合接口视图里将模式改为动态即可:
SW1:

 

SW2:在这里插入图片描述

 

查看活动链路和备份链路:
SW1:在这里插入图片描述

 

SW2:在这里插入图片描述

 


版权声明:本文为CSDN博主「读者,」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45123715/article/details/120402688

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值