05-以太网链路聚合配置
本章节下载: 05-以太网链路聚合配置 (372.55 KB)
目 录
以太网链路聚合通过将多条以太网物理链路捆绑在一起形成一条以太网逻辑链路,实现增加链路带宽的目的,同时这些捆绑在一起的链路通过相互动态备份,可以有效地提高链路的可靠性。
如图1-1所示,Device A与Device B之间通过三条以太网物理链路相连,将这三条链路捆绑在一起,就成为了一条逻辑链路Link aggregation 1。这条逻辑链路的带宽最大可等于三条以太网物理链路的带宽总和,增加了链路的带宽;同时,这三条以太网物理链路相互备份,当其中某条物理链路down,还可以通过其他两条物理链路转发报文。

链路捆绑是通过接口捆绑实现的,多个以太网接口捆绑在一起后形成一个聚合组,而这些被捆绑在一起的以太网接口就称为该聚合组的成员端口。每个聚合组唯一对应着一个逻辑接口,称为聚合接口。聚合组与聚合接口的编号是相同的,例如聚合组1对应于聚合接口1。二层聚合组的成员端口全部为二层以太网接口,其对应的聚合接口称为二层聚合接口。
聚合接口的速率和双工模式取决于对应聚合组内的选中端口(请参见“1.1 2. 成员端口的状态”):聚合接口的速率等于所有选中端口的速率之和,聚合接口的双工模式则与选中端口的双工模式相同。
聚合组内的成员端口具有以下两种状态:
· 选中(Selected)状态:此状态下的成员端口可以参与数据的转发,处于此状态的成员端口称为“选中端口”。
· 非选中(Unselected)状态:此状态下的成员端口不能参与数据的转发,处于此状态的成员端口称为“非选中端口”。
· 独立(Individual)状态:此状态下的成员端口可以作为普通物理口参与数据的转发。当聚合接口配置为聚合边缘接口,其成员端口未收到对端端口发送的LACP报文时,处于该状态。
操作Key是系统在进行链路聚合时用来表征成员端口聚合能力的一个数值,它是根据成员端口上的一些信息(包括该端口的速率、双工模式等)的组合自动计算生成的,这个信息组合中任何一项的变化都会引起操作Key的重新计算。在同一聚合组中,所有的选中端口都必须具有相同的操作Key。
根据对成员端口状态的影响不同,成员端口上的配置可以分为以下两类:
(1) 属性类配置:包含的配置内容如表1-1所示。在聚合组中,只有与对应聚合接口的属性类配置完全相同的成员端口才能够成为选中端口。
表1-1 属性类配置的内容
|
配置项 |
内容 |
|
端口隔离 |
端口是否加入隔离组、端口所属的端口隔离组 |
|
QinQ配置 |
端口的QinQ功能开启/关闭状态、VLAN Tag的TPID值、VLAN透传。关于QinQ配置的详细描述请参见“二层技术-以太网交换配置指导”中的“QinQ” |
|
VLAN映射 |
端口上配置的各种VLAN映射关系。有关VLAN映射配置的详细描述,请参见“二层技术-以太网交换配置指导”中的“VLAN映射” |
|
VLAN配置 |
端口上允许通过的VLAN、端口缺省VLAN、端口的链路类型(即Trunk、Hybrid、Access类型)、端口的工作模式(即promiscuous、trunk promiscuous、host)、VLAN报文是否带Tag配置。有关VLAN配置的详细描述,请参见“二层技术-以太网交换配置指导”中的“VLAN” |
![]()
· 在聚合接口上所作的属性类配置,将被自动同步到对应聚合组内的所有成员端口上。当聚合接口被删除后,这些配置仍将保留在这些成员端口上。
· 由于成员端口上属性类配置的改变可能导致其选中/非选中状态发生变化,进而对业务产生影响,因此当在成员端口上进行此类配置时,系统将给出提示信息,由用户来决定是否继续执行该配置。
(2) 协议类配置:是相对于属性类配置而言的,包含的配置内容有MAC地址学习、生成树等。在聚合组中,即使某成员端口与对应聚合接口的协议配置存在不同,也不会影响该成员端口成为选中端口。
![]()
在成员端口上所作的协议类配置,只有当该成员端口退出聚合组后才能生效。
链路聚合分为静态聚合和动态聚合两种模式,它们各自的优点如下所示:
· 静态聚合模式:一旦配置好后,端口的选中/非选中状态就不会受网络环境的影响,比较稳定。
· 动态聚合模式:能够根据对端和本端的信息调整端口的选中/非选中状态,比较灵活。
处于静态聚合模式下的聚合组称为静态聚合组,处于动态聚合模式下的聚合组称为动态聚合组。
静态聚合模式的工作机制如下所述。
参考端口从本端的成员端口中选出,其操作Key和属性类配置将作为同一聚合组内的其他成员端口的参照,只有操作Key和属性类配置与参考端口一致的成员端口才能被选中。
对于聚合组内处于up状态的端口,按照端口的高端口优先级->全双工/高速率->全双工/低速率->半双工/高速率->半双工/低速率的优先次序,选择优先次序最高、且属性类配置与对应聚合接口相同的端口作为参考端口;如果优先次序相同,首先选择原来的选中端口作为参考端口;如果此时有多个端口的优先次序相同且为原来的选中端口,则选择其中端口号最小的端口作为参考端口。
静态聚合组内成员端口状态的确定流程如图1-2所示。

确定静态聚合组内成员端口状态时,需要注意:
· 静态聚合组内选中端口的最大数量配置请参见1.4.3 限制聚合组内选中端口的数量。
· 当一个成员端口的操作Key或属性类配置改变时,其所在静态聚合组内各成员端口的选中/非选中状态可能会发生改变。
· 当静态聚合组内选中端口的数量已达到上限时,后加入的成员端口即使满足成为选中端口的所有条件,也不会立即成为选中端口。这样能够尽量维持当前选中端口上的流量不中断,但是由于设备重启时会重新计算选中端口,因此可能导致设备重启前后各成员端口的选中/非选中状态不一致。
动态聚合模式通过LACP(Link Aggregation Control Protocol,链路聚合控制协议)协议实现,LACP协议的内容及动态聚合模式的工作机制如下所述。
基于IEEE802.3ad标准的LACP协议是一种实现链路动态聚合的协议,运行该协议的设备之间通过互发LACPDU来交互链路聚合的相关信息。
动态聚合组内的成员端口可以收发LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元),本端通过向对端发送LACPDU通告本端的信息。当对端收到该LACPDU后,将其中的信息与所在端其他成员端口收到的信息进行比较,以选择能够处于选中状态的成员端口,使双方可以对各自接口的选中/非选中状态达成一致。
(1) LACP协议的功能
LACP协议的功能分为基本功能和扩展功能两大类,如表1-2所示。
表1-2 LACP协议的功能分类
|
类别 |
说明 |
|
基本功能 |
利用LACPDU的基本字段可以实现LACP协议的基本功能。基本字段包含以下信息:系统LACP优先级、系统MAC地址、端口优先级、端口编号和操作Key |
|
扩展功能 |
通过对LACPDU的字段进行扩展,可以实现对LACP协议的扩展。通过在扩展字段中定义一个新的TLV(Type/Length/Value,类型/长度/值)数据域,可以实现IRF(Intelligent Resilient Framework,智能弹性架构)中的LACP MAD(Multi-Active Detection,多Active检测)机制。有关IRF和LACP MAD机制的详细介绍,请参见“IRF配置指导”中的“IRF”。 本系列交换机可以作为成员设备或中间设备来参与LACP MAD |
(2) LACP优先级
根据作用的不同,可以将LACP优先级分为系统LACP优先级和端口优先级两类,如表1-3所示。
表1-3 LACP优先级的分类
|
类别 |
说明 |
比较标准 |
|
系统LACP优先级 |
用于区分两端设备优先级的高低。当两端设备中的一端具有较高优先级时,另一端将根据优先级较高的一端来选择本端的选中端口,这样便使两端设备的选中端口达成了一致 |
优先级数值越小,优先级越高 |
|
端口优先级 |
用于区分各成员端口成为选中端口的优先程度 |
(3) LACP超时时间
LACP超时时间是指成员端口等待接收LACPDU的超时时间,在LACP超时时间之后,如果本端成员端口仍未收到来自对端的LACPDU,则认为对端成员端口已失效。
LACP超时时间同时也决定了对端发送LACPDU的速率。LACP超时有短超时(3秒)和长超时(90秒)两种。若LACP超时时间为短超时,则对端将快速发送LACPDU(每1秒发送1个LACPDU);若LACP超时时间为长超时,则对端将慢速发送LACPDU(每30秒发送1个LACPDU)。
参考端口从聚合链路两端处于up状态的成员端口中选出,其操作Key和属性类配置将作为同一聚合组内的其他成员端口的参照,只有操作Key和属性类配置与参考端口一致的成员端口才能被选中。
· 首先,从聚合链路的两端选出设备ID(由系统的LACP优先级和系统的MAC地址共同构成)较小的一端:先比较两端的系统LACP优先级,优先级数值越小其设备ID越小;如果优先级相同再比较其系统MAC地址,MAC地址越小其设备ID越小。
· 其次,对于设备ID较小的一端,再比较其聚合组内各成员端口的端口ID(由端口优先级和端口的编号共同构成):先比较端口优先级,优先级数值越小其端口ID越小;如果优先级相同再比较其端口号,端口号越小其端口ID越小。端口ID最小、且属性类配置与对应聚合接口相同的端口作为参考端口。
(2) 确定成员端口的状态
在设备ID较小的一端,动态聚合组内成员端口状态的确定流程如图1-3所示。

与此同时,设备ID较大的一端也会随着对端成员端口状态的变化,随时调整本端各成员端口的状态,以确保聚合链路两端成员端口状态的一致。
确定动态聚合组内成员端口状态时,需要注意:
· 动态聚合组内选中端口的最大数量配置请参见1.4.3 限制聚合组内选中端口的数量。
· 当动态聚合组内同时存在全双工端口和半双工端口时,全双工端口将优先成为选中端口;只有当所有全双工端口都无法成为选中端口,或动态聚合组内只有半双工端口时,才允许从半双工端口中选出一个成为选中端口,且只有一个半双工端口可成为选中端口。
· 当一个成员端口的操作Key或属性类配置改变时,其所在动态聚合组内各成员端口的选中/非选中状态可能会发生改变。
· 当本端端口的选中/非选中状态发生改变时,其对端端口的选中/非选中状态也将随之改变。
· 当动态聚合组内选中端口的数量已达到上限时,后加入的成员端口一旦满足成为选中端口的所有条件,就会立刻取代已不满足条件的端口成为选中端口。
在网络设备与服务器等终端设备相连的场景中,当网络设备配置了动态聚合模式,而终端设备未配置动态聚合时,聚合链路不能成功建立,网络设备与该终端设备相连的多条链路中只能有一条作为普通链路正常转发报文,因而链路间也不能形成备份,可能会造成报文丢失。
若要求在终端设备未配置动态聚合模式时,该终端设备与网络设备间的链路可以形成备份,可通过配置网络设备与终端设备相连的聚合接口为聚合边缘接口,使该聚合组内的所有成员端口都可以作为普通物理口转发报文,从而保证终端设备与网络设备间的多条链路可以相互备份,增加可靠性。当终端设备完成动态聚合模式配置时,其聚合成员端口正常发送LACP报文后,网络设备上符合选中条件的聚合成员端口会自动被选中,从而使聚合链路恢复正常工作。
通过采用不同的聚合负载分担类型,可以实现灵活地对聚合组内流量进行负载分担。聚合负载分担的类型可以归为以下几类:
· 逐流负载分担:按照报文的源/目的MAC地址、源/目的服务端口、入端口、源/目的IP地址或MPLS标签中的一种或某几种的组合区分流,使属于同一数据流的报文从同一条成员链路上通过。
· 按照报文类型(如二层、IPv4、IPv6、MPLS等)自动选择所采用的聚合负载分担类型。
|
配置任务 |
说明 |
详细配置 |
|
|
配置聚合组 |
配置静态聚合组 |
二者必选其一 |
|
|
配置动态聚合组 |
|||
|
聚合接口相关配置 |
配置聚合接口的描述信息 |
可选 |
|
|
配置二层聚合接口的忽略VLAN |
可选 |
||
|
限制聚合组内选中端口的数量 |
可选 |
||
|
配置聚合接口的期望带宽 |
可选 |
||
|
关闭聚合接口 |
可选 |
||
|
恢复聚合接口的缺省配置 |
可选 |
||
|
配置聚合负载分担 |
配置聚合负载分担类型 |
可选 |
|
|
配置聚合负载分担采用本地转发优先 |
可选 |
||
|
配置聚合流量重定向功能 |
可选 |
||
配置聚合组时,需要注意:
· 配置了下列功能的端口将不能加入二层聚合组:MAC地址认证(请参见“安全配置指导”中的“MAC地址认证”)、端口安全(请参见“安全配置指导”中的“端口安全”)、802.1X(请参见“安全配置指导”中的“802.1X”)、AC与交叉连接关联(请参见“MPLS配置指导”中的“MPLS L2VPN”)以及AC与VSI关联(请参见“MPLS配置指导”中的“VPLS”)。
· 用户删除聚合接口时,系统将自动删除对应的聚合组,且该聚合组内的所有成员端口将全部离开该聚合组。
· 聚合链路的两端应配置相同的聚合模式。
对于静态聚合模式,用户需要保证在同一链路两端端口的选中/非选中状态的一致性,否则聚合功能无法正常使用。
|
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
创建二层聚合接口,并进入二层聚合接口视图 |
interface bridge-aggregation interface-number |
创建二层聚合接口后,系统将自动生成同编号的二层聚合组,且该聚合组缺省工作在静态聚合模式下 |
|
退回系统视图 |
quit |
- |
|
进入二层以太网接口视图 |
interface interface-type interface-number |
多次执行此步骤可将多个二层以太网接口加入聚合组 |
|
将二层以太网接口加入聚合组 |
port link-aggregation group number |
对于动态聚合模式,聚合链路两端的设备会自动协商同一链路两端的端口在各自聚合组内的选中/非选中状态,用户只需保证本端聚合在一起的端口的对端也同样聚合在一起,聚合功能即可正常使用。
|
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
配置系统的LACP优先级 |
lacp system-priority system-priority |
缺省情况下,系统的LACP优先级为32768 改变系统的LACP优先级,将会影响到动态聚合组成员端口的选中/非选中状态 |
|
创建二层聚合接口,并进入二层聚合接口视图 |
interface bridge-aggregation interface-number |
创建二层聚合接口后,系统将自动生成同编号的二层聚合组,且该聚合组缺省工作在静态聚合模式下 |
|
配置聚合组工作在动态聚合模式下 |
link-aggregation mode dynamic |
缺省情况下,聚合组工作在静态聚合模式下 |
|
退回系统视图 |
quit |
- |
|
进入二层以太网接口视图 |
interface interface-type interface-number |
多次执行此步骤可将多个二层以太网接口加入聚合组 |
|
将二层以太网接口加入聚合组 |
port link-aggregation group number |
|
|
配置端口优先级 |
link-aggregation port-priority port-priority |
缺省情况下,端口优先级为32768 |
|
配置端口的LACP超时时间为短超时(3秒),并使对端快速发送LACPDU |
lacp period short |
缺省情况下,端口的LACP超时时间为长超时(90秒),对端慢速发送LACPDU |