06-链路聚合操作
本章节下载 (214.29 KB)
目 录
链路聚合是将多个物理以太网端口聚合在一起形成一个逻辑上的聚合组,使用链路聚合服务的上层实体把同一聚合组内的多条物理链路视为一条逻辑链路。
链路聚合可以实现流量在聚合组中各个成员端口之间进行分担,以增加带宽。同时,同一聚合组的各个成员端口之间彼此动态备份,提高了连接可靠性。
LACP(Link Aggregation Control Protocol,链路聚合控制协议)是一种基于IEEE802.3ad标准的协议。LACP协议通过LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元)与对端交互信息。
使能某端口的LACP协议后,该端口将通过发送LACPDU向对端通告自己的系统LACP协议优先级、系统MAC、端口的LACP协议优先级、端口号和操作Key。对端接收到LACPDU后,将其中的信息与其它端口所收到的信息进行比较,以选择能够处于Selected状态的端口,从而双方可以对端口处于Selected状态达成一致。
操作Key是在链路聚合时,聚合控制根据端口的配置(即速率、双工模式、up/down状态、基本配置等信息)自动生成的一个配置组合。在聚合组中,处于Selected状态的端口有相同的操作Key。
在同一个聚合组中,能进行负载分担的成员端口必须有一致的配置。这些配置主要包括STP、QoS、GVRP、QinQ、BPDU TUNNEL、VLAN、端口属性、MAC地址学习等,如表1-1所示。
表1-1 链路聚合对端口配置的要求
分类 |
具体内容 |
STP配置一致 |
端口的STP使能/关闭状态、与端口相连的链路属性(如点对点或非点对点)、端口路径开销、STP优先级、报文发送速率限制、是否配置环路保护、是否配置根保护、是否为边缘端口。 |
QoS配置一致 |
流量监管、端口限速、SP队列、WRR队列调度、端口优先级、端口信任模式、策略应用。 |
GVRP配置一致 |
端口的GVRP开启/关闭状态、GVRP注册类型、GARP定时器的值。 |
QinQ配置一致 |
端口的QinQ功能开启/关闭状态、添加的外层VLAN Tag、不同内层VLAN ID添加外层VLAN Tag的策略。 |
BPDU TUNNEL配置一致 |
端口的BPDU TUNNEL功能开启/关闭状态、端口的STP协议的BPDU TUNNEL功能开启/关闭状态。 |
VLAN配置一致 |
端口上允许通过的VLAN、端口缺省VLAN ID、端口的链路类型(即Trunk、Hybrid、Access类型)、子网VLAN配置、协议VLAN配置、VLAN报文是否带Tag配置。 |
端口属性配置一致 |
端口是否加入隔离组、端口的速率、双工模式、up/down状态。 |
MAC地址学习配置一致 |
端口是否具有最大学习MAC地址个数的限制。 |
按照聚合方式的不同,链路聚合可以分为两类:
l 手工聚合;
l 静态LACP聚合;
手工聚合由用户手工配置,手工聚合端口的LACP协议为关闭状态。
在手工聚合组中,端口可能处于两种状态:Selected和Unselected。只有Selected端口能够收发用户业务报文,Unselected端口不能收发用户业务报文。
系统按照以下原则设置端口处于Selected或者Unselected状态:
l 当聚合组内有处于up状态的端口时,系统按照端口全双工/高速率、全双工/低速率、半双工/高速率、半双工/低速率的优先次序,选择优先次序最高且处于up状态的端口作为该组的参考端口(优先次序相同的情况下,端口号最小的端口为参考端口)。
l 与参考端口的速率、双工、链路状态和基本配置一致且处于up状态的端口成为可能处于Selected状态的候选端口,其他端口将处于Unselected状态。
l 手工聚合组中处于Selected状态的端口数是有限制的,当候选端口的数目未达到上限时,所有候选端口都为Selected状态,其他端口为Unselected状态;当候选端口的数目超过这一限制时,系统将按照端口号从小到大的顺序选择一些候选端口保持在Selected状态,端口号较大的端口则变为Unselected状态。
l 处于Selected状态且端口号最小的端口为聚合组的主端口,其他端口均为聚合组的子端口。
l 当聚合组中全部成员都处于down状态时,编号最小的端口为主端口,但此时全组成员均为Unselected状态。
需要特别指出的是,在手工聚合组中,当处于Selected状态的端口数已达到限制时,除非主端口需要更换,否则后加入的端口即使配置与当前主端口一致且端口号比已有的Selected端口小,也会成为Unselected状态。这样处理是为了尽量维持当前Selected端口上的流量不中断,但是可能会导致设备重启前后各端口的选中状态不一致。用户应注意避免这种情况的发生。
l 手工聚合组中,只有与参考端口配置一致的端口才允许成为Selected端口,这些配置包括端口的速率、双工、链路状态和基本配置(具体配置要求请参见“1.1.3 链路聚合对端口配置的要求”)。用户需要通过手工配置的方式保持各端口上基本配置一致。当聚合组内有多个端口而用户需要修改某一基本配置时,可能需要在多个端口上配置多次,此时用户可以通过聚合端口组的方式对端口进行批量配置,相关内容请参见“1.5 聚合端口组简介”。
l 在一个聚合组中,当某个端口的配置发生改变时,系统不进行解聚合,但会重新设置各端口的Selected/Unselected状态,并重新选择主端口。
静态LACP聚合由用户手工配置,当端口加入静态LACP聚合组后,端口的LACP协议自动使能。
在静态LACP聚合组中,端口可能处于两种状态:Selected和Unselected。
l Selected端口和处于up状态的Unselected端口都能收发LACP协议报文。
l 只有Selected端口能够收发用户业务报文,Unselected端口不能收发用户业务报文。
系统按照以下原则设置端口处于Selected或者Unselected状态:
(1) 本端系统和对端系统会进行协商,根据两端系统中设备ID较优的一端的端口ID的大小,来决定两端端口的状态。具体协商步骤如下:
l 比较两端系统的设备ID(设备ID=系统的LACP协议优先级+系统MAC地址)。先比较系统的LACP协议优先级,如果相同再比较系统MAC地址。设备ID小的一端被认为较优(系统的LACP协议优先级越小、系统MAC地址越小,则设备ID越小)。
l 比较设备ID较优的一端的端口ID(端口ID=端口的LACP协议优先级+端口号)。对于设备ID较优的一端的各个端口,首先比较端口的LACP协议优先级,如果优先级相同再比较端口号。端口ID小的端口作为参考端口(端口的LACP协议优先级越小、端口号越小,则端口ID越小)。
l 与参考端口的速率、双工、链路状态和基本配置一致且处于up状态的端口,并且该端口的对端端口与参考端口的对端端口的配置也一致时,该端口才成为可能处于Selected状态的候选端口。否则,端口将处于Unselected状态。
l 静态LACP聚合组中处于Selected状态的端口数是有限制的,当候选端口的数目未达到上限时,所有候选端口都为Selected状态,其他端口为Unselected状态;当候选端口的数目超过这一限制时,系统将按照端口ID从小到大的顺序选择一些端口保持在Selected状态,端口ID较大的端口则变为Unselected状态。同时,对端设备会感知这种状态的改变,相应端口的状态将随之变化。
(2) 处于Selected状态且端口号最小的端口为聚合组的主端口,其他端口均为聚合组的子端口。
l 静态LACP聚合组中,只有与参考端口配置一致的端口才允许成为Selected端口,这些配置包括端口的速率、双工、链路状态和基本配置(具体配置要求请参见“1.1.3 链路聚合对端口配置的要求”)。用户需要通过手工配置的方式保持各端口上基本配置一致。当聚合组内有多个端口而用户需要修改某一基本配置时,可能需要在多个端口上配置多次,此时用户可以通过聚合端口组的方式对端口进行批量配置,相关内容请参见“1.5 聚合端口组简介”。
l 在一个聚合组中,当某个端口的配置发生改变时,系统不进行解聚合,但会重新设置各端口的Selected/Unselected状态,并重新选择主端口。
链路聚合组可以分为两种类型:负载分担聚合组和非负载分担聚合组。系统按照以下原则设置聚合组的负载分担类型:
l 当存在聚合资源时,如果聚合组中有两个或两个以上的Selected端口,则系统创建的聚合组为负载分担类型;如果聚合组中只有一个Selected端口,则系统创建的聚合组为非负载分担类型。
l 当聚合资源分配完后,创建的聚合组将为非负载分担类型。
进行负载分担时,交换机通过聚合组中的Selected端口对报文进行负载分发,但交换机对不同类型的报文进行负载分发时所选择的转发端口不同:
l 对于目的MAC已知的二层单播报文,如果该报文中封装IP数据报,交换机将根据报文的源IP地址、目的IP地址来选择端口进行转发,否则交换机将根据报文的源MAC地址、目的MAC地址来选择端口进行转发;
l 对于目的IP地址已知的三层单播报文,交换机将根据报文的源IP地址和目的IP地址来选择端口进行转发;
l 对于二层已知组播报文,交换机将根据报文的源MAC地址、目的MAC地址和接收报文的端口信息等因素来选择端口进行转发;
l 对于三层已知组播报文,交换机将根据报文的源IP地址、目的IP地址和接收报文的端口信息等因素来选择端口进行转发;
l 对于未知单播报文、组播报文和广播报文,交换机将根据报文的源MAC地址、目的MAC地址和接收报文的端口信息等因素来选择端口进行转发。
& 说明:
l 当负载分担聚合组中删除至只有一个Selected端口的时候,该聚合组仍保持为负载分担聚合组。
l 负载分担聚合组中至少有1个Selected端口,而非负载分担聚合组中最多只有一个Selected端口,其余均为Unselected端口。
业务环回组借用环回端口的聚合组来实现。首先创建一个手工聚合组,然后为其指定支持的重定向业务类型,包括IPv6(用于支持IPv6单播业务)、IPv6mc(用于支持IPv6组播业务)、Tunnel和MPLS四种类型。
& 说明:
目前S5500-EI系列以太网交换机只支持Tunnel业务类型。
业务环回组创建之后,可将端口加入其中。加入的端口必须支持该环回组指定的业务类型。端口在加入业务环回组时必须满足如下配置条件:
l 只允许端口有速率、双工等物理配置和QoS、ACL配置,不允许有其他冲突配置,如STP协议不能使能。
l 要求端口必须在VLAN1中。
端口在加入业务环回组后,允许对端口进行不冲突的配置,例如QoS等。
用户还可以将端口从其所属的业务环回组中退出。当端口退出后,如果业务环回组原本为负载分担聚合组,此时只剩一个Selected端口时,为了确保流量不中断,该业务环回组仍为负载分担聚合组。
前面介绍手工聚合组和静态LACP聚合组时指出,只有与参考端口配置一致的端口才允许成为Selected端口。这些配置包括端口的速率、双工、链路状态和基本配置。用户需要通过手工配置的方式保持各端口基本配置一致。
当聚合组内有多个端口而用户需要修改某一基本配置时,可能需要在多个端口上配置多次。为了提高易用性,设备提供了端口组功能,其中一种类型的端口组称为聚合端口组。在聚合端口组模式下,用户只需输入一次配置命令,则该组内的所有成员端口都会配置该属性。
聚合端口组随着聚合组的创建或删除而自动生成或删除,用户不能通过命令直接创建或删除聚合端口组。聚合端口组的成员增删也不能使用端口组成员的添加或删除命令,只能通过聚合模块的添加或删除端口命令间接实现。
聚合端口组属于系统支持的端口组功能中的一种类型,关于端口组的相关内容,请参见“端口相关配置”。
用户可以通过下面的命令创建手工聚合组,并将以太网端口加入到聚合组中。
表2-1 配置手工聚合组
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建手工聚合组 |
link-aggregation group agg-id mode manual |
必选 |
进入以太网端口视图 |
interface interface-type interface-number |
- |
将以太网端口加入聚合组 |
port link-aggregation group agg-id |
必选 |
需要注意的是:
l 用户可以通过改变一个已经存在的静态LACP聚合组的聚合组类型,来创建一个手工聚合组。如果原来的聚合组中包含端口,则系统会自动将其包含端口上的LACP协议关闭;如果原来的聚合组中不包含端口,则直接将其聚合组类型改为手工。
l 配置了RRPP的端口、配置了静态MAC地址或者黑洞MAC地址的端口、使能Voice VLAN的端口以及使能802.1x的端口不能加入聚合组。
l 用户可以删除任何一个已经形成的手工聚合组,则该聚合组的端口将全部离开该聚合组。
l 当手工聚合组中只包含一个端口时,不能将该端口从聚合组中删除,而只能通过删除聚合组的方式将该端口从聚合组中删除。
l 用户要通过配置保证在同一链路上处在两台不同设备中的端口的选中状态要保持一致,否则聚合功能不能正确使用。
用户可以通过下面的命令创建静态LACP聚合组,并将以太网端口加入到聚合组中。
表2-2 配置静态LACP聚合组
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置系统的LACP协议优先级 |
lacp system-priority system-priority |
可选 缺省情况下,系统的LACP协议优先级为32768 改变系统的LACP协议优先级将会影响到静态LACP聚合组成员的Selected和Unselected状态 |
创建静态LACP聚合组 |
link-aggregation group agg-id mode static |
必选 |
进入以太网端口视图 |
interface interface-type interface-number |
- |
配置端口的LACP协议优先级 |
lacp port-priority port-priority |
可选 缺省情况下,端口的LACP协议优先级为32768 改变端口的LACP协议优先级,将会影响到静态LACP聚合组成员的Selected和Unselected状态 |
将以太网端口加入聚合组 |
port link-aggregation group agg-id |
必选 |
需要注意的是:
l 用户可以通过改变一个不包含任何端口的空手工聚合组的聚合组类型,来创建一个静态LACP聚合组。
l 配置了RRPP的端口、配置了静态MAC地址或者黑洞MAC地址的端口、使能Voice VLAN的端口以及使能802.1x的端口不能加入聚合组。
l 用户可以删除任何一个已经形成的静态LACP聚合组,则该聚合组的端口将全部离开该聚合组,同时LACP协议关闭。
l 当静态LACP聚合组中只包含一个端口时,不能将该端口从聚合组中删除,而只能通过删除聚合组的方式将该端口从聚合组中删除。
& 说明:
由于没有负载分担资源而导致负载分担组成为非负载分担组时,可能出现下列两种情况:一种情况是,对端的Selected端口数与本端的Selected端口数不相同,此时不能保证流量的正确转发;另一种情况是,主端口的对端是Unselected端口,此时会导致其它协议(比如GVRP)运行不正确。请用户配置的时候尽量避免上述情况的发生。
用户可以使用下面的命令为聚合组配置组描述符。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置聚合组描述符 |
link-aggregation group agg-id description agg-name |
必选 缺省情况下,聚合组没有描述符 |
用户可以通过以下操作创建一个业务环回组,并将以太网端口加入到业务环回组中。
表2-4 配置业务环回组
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建手工聚合组 |
link-aggregation group agg-id mode manual |
必选 |
将手工聚合组设定为指定类型的业务环回组 |
link-aggregation group agg-id service-type tunnel |
必选 |
进入以太网端口视图 |
interface interface-type interface-number |
- |
将以太网端口加入业务环回组 |
port link-aggregation group agg-id |
必选 |
注意:
l 用户可以删除任何一个已经形成的业务环回组,但当指定的业务环回组已被其它模块引用时,不允许删除。
l 当业务环回组中只包含一个端口时,不能将该端口从业务环回组中删除,而只能通过删除业务环回组的方式将该端口从业务环回组中删除。
用户可以通过以下操作进入一个聚合端口组视图。在聚合端口组模式下,用户可以对组内的所有成员端口进行批量配置操作。
表2-5 进入聚合端口组视图
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入聚合端口组视图 |
port-group aggregation agg-id |
- |
注意:
聚合端口组视图下,用户不能添加或删除端口组成员,只能进行与聚合相关的配置命令,包括STP、VLAN、QoS、GVRP、QinQ、BPDU TUNNEL、MAC地址学习等配置。
在完成上述配置后,在任意视图下执行display命令可以显示配置后链路聚合的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除端口的LACP统计信息。
表2-6 链路聚合显示与维护
操作 |
命令 |
显示本端系统的设备ID |
display lacp system-id |
显示端口的链路聚合详细信息 |
display link-aggregation interface interface-type interface-number [ to interface-type interface-number ] |
显示业务环回组的信息 |
display link-aggregation service-type [ agg-id ] |
显示所有聚合组的摘要信息 |
display link-aggregation summary |
显示指定聚合组的详细信息 |
display link-aggregation verbose [ agg-id ] |
清除端口的LACP统计信息 |
reset lacp statistics [ interface interface-type interface-number [ to interface-type interface-number ] ] |
l 设备Switch A用3个端口聚合接入设备Switch B,从而实现流量在各成员端口之间进行分担。
l Switch A的接入端口为GigabitEthernet1/0/1~GigabitEthernet1/0/3。
l 创建Tunnel业务环回组,并将端口GigabitEthernet1/0/1加入到业务环回组。
& 说明:
以下只列出对Switch A的配置,对Switch B也需要作相同的配置,才能实现链路聚合。
(1) 配置聚合组,实现端口的负载分担(下面两种方式任选其一)
l 采用手工聚合方式
# 创建手工聚合组1。
<SwitchA> system-view
[SwitchA] link-aggregation group 1 mode manual
# 将以太网端口GigabitEthernet1/0/1至GigabitEthernet1/0/3加入聚合组1。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] port link-aggregation group 1
[SwitchA-GigabitEthernet1/0/1] interface GigabitEthernet 1/0/2
[SwitchA-GigabitEthernet1/0/2] port link-aggregation group 1
[SwitchA-GigabitEthernet1/0/2] interface GigabitEthernet 1/0/3
[SwitchA-GigabitEthernet1/0/3] port link-aggregation group 1
l 采用静态LACP聚合方式
# 创建静态LACP聚合组1。
<SwitchA> system-view
[SwitchA] link-aggregation group 1 mode static
# 将以太网端口GigabitEthernet1/0/1至GigabitEthernet1/0/3加入聚合组1。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] port link-aggregation group 1
[SwitchA-GigabitEthernet1/0/1] interface GigabitEthernet 1/0/2
[SwitchA-GigabitEthernet1/0/2] port link-aggregation group 1
[SwitchA-GigabitEthernet1/0/2] interface GigabitEthernet 1/0/3
[SwitchA-GigabitEthernet1/0/3] port link-aggregation group 1
(2) 配置业务环回组
# 创建手工聚合组。
<SwitchA> system-view
[SwitchA] link-aggregation group 1 mode manual
# 在手工聚合组的基础上创建Tunnel业务环回组。
[SwitchA] link-aggregation group 1 service-type tunnel
# 将以太网端口GigabitEthernet1/0/1加入业务环回组。
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] undo stp
[SwitchA-GigabitEthernet1/0/1] port link-aggregation group 1
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!