LACP学习笔记.docx
- 文档编号:25886261
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:12
- 大小:276.13KB
LACP学习笔记.docx
《LACP学习笔记.docx》由会员分享,可在线阅读,更多相关《LACP学习笔记.docx(12页珍藏版)》请在冰豆网上搜索。
LACP学习笔记
LACP学习笔记
一、LACP简介
1、LACP协议简介
基于IEEE802.3ad标准的LACP(LinkAggregationControlProtocol,链路汇聚控
制协议)是一种实现链路动态汇聚与解汇聚的协议。
LACP协议通过LACPDU(Link
AggregationControlProtocolDataUnit,链路汇聚控制协议数据单元)与对端交互信息。
使能某端口的LACP协议后,该端口将通过发送LACPDU向对端通告自己的系统优
先级、系统MAC、端口优先级、端口号和操作Key。
对端接收到这些信息后,将这些信息与其它端口所保存的信息比较以选择能够汇聚的端口,从而双方可以对端口
加入或退出某个动态汇聚组达成一致。
2、LACP报文
主要字段介绍:
Actor_Port/Partner_Port:
本端/对端接口信息。
Actor_State/Partner_State:
本端/对端状态。
Actor_System_Priority/Partner_System_Priority:
本端/对端系统优先级。
Actor_System/Partner_System:
本端/对端系统ID。
Actor_Key/Partner_Key:
本端/对端操作Key,各接口的该值相同才能够聚合。
Actor_Port_Priority/Partner_Port_Priority:
本端/对端接口优先级。
二、链路聚合的分类
1、手工负载分担模式链路聚合
1)手工汇聚概述
手工负载分担模式是一种最基本的链路聚合方式,在该模式下,Eth-Trunk接口的建
立,成员接口的加入完全由手工来配置,没有链路聚合控制协议的参与。
该模式下所有成员接口(selected)都参与数据的转发,分担负载流量,因此称为手工负载分担模式。
手工汇聚端口的LACP协议为关闭状态,禁止用户使能手工汇聚端口的LACP协议。
2)手工汇聚组中的端口状态
在手工汇聚组中,端口可能处于两种状态:
Selected或Standby。
处于Selected状
态且端口号最小的端口为汇聚组的主端口,其他处于Selected状态的端口为汇聚组
的成员端口。
由于设备所能支持的汇聚组中的最大端口数有限制,如果处于Selected状态的端口
数超过设备所能支持的汇聚组中的最大端口数,系统将按照端口号从小到大的顺序
选择一些端口为Selected端口,其他则为Standby端口。
3)手工汇聚对端口配置的要求
一般情况下,手工汇聚对汇聚前的端口速率和双工模式不作限制。
但对于以下情况,
系统会作特殊处理:
对于初始就处于DOWN状态的端口,在汇聚时对端口的速率和双工模式没有限制;
对于曾经处于UP状态,并协商或强制指定过端口速率和双工模式,而当前处于DOWN状态的端口,在汇聚时要求速率和双工模式一致;
对于一个汇聚组,当汇聚组中某个端口的速率和双工模式发生改变时,系统不进行解汇聚,汇聚组中的端口也都处于正常工作状态。
但如果是主端口出现速率降低和双工模式变化,则该端口的转发可能出现丢包现象。
2、LACP协议链路聚合
LACP(LinkAggregationControlProtocol)链路聚合包含两种类型:
1)静态LACP模式链路聚合
a)静态LACP模式链路聚合简介
静态LACP模式下,Eth-Trunk接口的建立,成员接口的加入,都是由手工配置完成的。
但与手工负载分担模式链路聚合不同的是,该模式下LACP协议报文参与活动接口的选择。
也就是说,当把一组接口加入Eth-Trunk接口后,这些成员接口中哪些接口作为活动接口,哪些接口作为非活动接口还需要经过LACP协议报文的协商确定。
静态汇聚端口的LACP协议为使能状态,当一个静态汇聚组被删除时,其成员端口
将形成一个或多个动态LACP汇聚,并保持LACP使能。
禁止用户关闭静态汇聚端口的LACP协议。
b)静态汇聚组中的端口状态
在静态汇聚组中,端口可能处于两种状态:
Selected或Standby。
Selected端口和
Standby端口都能收发LACP协议,但Standby端口不能转发用户报文。
说明:
在一个汇聚组中,处于Selected状态且端口号最小的端口为汇聚组的主端口,其他
处于Selected状态的端口为汇聚组的成员端口。
在静态汇聚组中,系统按照以下原则设置端口处于Selected或者Standby状态:
系统按照端口全双工/高速率、全双工/低速率、半双工/高速率、半双工/低速率的优先次序,选择优先次序最高的端口处于Selected状态,其他端口则处于Standby状态。
与处于Selected状态的最小端口所连接的对端设备不同,或者连接的是同一个对端设备但端口在不同的汇聚组内的端口将处于Standby状态。
端口因存在硬件限制(如不能跨板汇聚)无法汇聚在一起,而无法与处于Selected状态的最小端口汇聚的端口将处于Standby状态。
与处于Selected状态的最小端口的基本配置不同的端口将处于Standby状态。
由于设备所能支持的汇聚组中的Selected端口数有限制,如果当前的成员端口数超过了设备所能支持的最大Selected端口数,系统将按照端口号从小到大的顺序选择一些端口为Selected端口,其他则为Standby端口。
2)动态LACP模式链路聚合
a)动态LACP模式链路聚合简介
动态LACP模式下,Eth-Trunk接口的建立,成员接口的加入,活动接口的选择完
全由LACP协议通过协商完成。
这就意味着启用了动态LACP协议的两台直连设备上,不需要创建Eth-Trunk接口,也不需要指定哪些接口作为聚合组成员接口,两台设备会通过LACP协商自动完成链路的聚合操作。
动态LACP汇聚是一种系统自动创建/删除的汇聚,不允许用户增加或删除动态LACP汇聚中的成员端口。
只有速率和双工属性相同、连接到同一个设备、有相同基本配置的端口才能被动态汇聚在一起。
即使只有一个端口也可以创建动态汇聚,此时为单端口汇聚。
动态汇聚中,端口的LACP协议处于使能状态。
b)动态汇聚组中的端口状态
在动态汇聚组中,端口可能处于两种状态:
Selected或Standby。
Selected端口和
Standby端口都能收发LACP协议,但Standby端口不能转发用户报文。
由于设备所能支持的汇聚组中的最大端口数有限制,如果当前的成员端口数量超过了最大端口数的限制,则本端系统和对端系统会进行协商,根据设备ID优的一端的
端口ID的大小,来决定端口的状态。
具体协商步骤如下:
比较设备ID(系统优先级+系统MAC地址)。
先比较系统优先级,如果相同再比较系统MAC地址。
设备ID小的一端被认为优。
比较端口ID(端口优先级+端口号)。
对于设备ID优的一端的各个端口,首先比较端口优先级,如果优先级相同再比较端口号。
端口ID小的端口为
Selected端口,剩余端口为Standby端口。
在一个汇聚组中,处于Selected状态且端口号最小的端口为汇聚组的主端口,其他处于Selected状态的端口为汇聚组的成员端口。
说明:
与手工汇聚组不同的是,在静态汇聚组和动态汇聚组中,处于DOWN的端口为
Standby状态。
三、LACP实现原理
1、手工汇聚原理
手工负载分担模式链路聚合是应用比较广泛的一种链路聚合,大多数运营级网络设备
均支持该特性,当需要在两个直连设备间提供一个较大的链路带宽而对端设备又不支
持LACP协议时,可以使用手工负载分担模式
说明:
手工负载分担模式的Eth-Trunk接口可以聚合不同单板、不同双工模式的成员接口。
2、静态汇聚原理
a)基本概念
静态LACP模式链路聚合是一种利用LACP协议进行参数协商选取活动链路的聚合模
式。
该模式由LACP协议确定聚合组中的活动和非活动链路,又称为M∶N模式,即
M条活动链路与N条备份链路的模式。
这种模式提供了更高的链路可靠性,并且可以
在M条链路中实现不同方式的负载均衡。
M:
N模式的Eth-Trunk接口中M和N的值可以通过配置活动接口数上限阈值来确定。
b)系统LACP优先级
静态LACP模式下,两端设备所选择的活动接口必须保持一致,否则链路聚合组就无法建立。
而要想使两端活动接口保持一致,可以使其中一端具有更高的优先级,另一端根据高优先级的一端来选择活动接口即可。
系统LACP优先级就是为了区分两端优先级的高低而配置的参数。
系统LACP优先级值越小优先级越高,缺省系统LACP优先级值为32768。
c)接口LACP优先级
接口LACP优先级是为了区别不同接口被选为活动接口的优先程度。
接口LACP优先级值越小,优先级越高。
缺省情况下,接口LACP优先级为32768。
d)静态模式Eth-Trunk接口建立过程
静态模式Eth-Trunk接口建立过程如下所示:
①两端互相发送LACPDU报文。
②两端设备根据系统LACP优先级确定主动端。
③两端设备根据接口LACP优先级确定活动接口,最终以主动端设备的活动接口确定两端的活动接口。
e)互发LACPDU报文
在两端设备CX-A和CX-B上创建Eth-Trunk接口并配置为静态LACP模式,然后向Eth-Trunk接口中手工加入成员接口。
此时成员接口上便启用了LACP协议,两端互相发出LACPDU报文,如下图所示。
f)确定主动端
Eth-Trunk两端设备均会收到对端发来的LACP报文,根据报文中的优先级字段,确认
活动接口。
优先级字段的值越小,优先级越高。
如下图所示,当CX-B收到CX-A发送LACP报文时,CX-B会查看并记录对端信息,并且比较系统优先级字段。
CX-A的系统优先级为10,高于CX-B的系统优先级,所以选择CX-A为主动端。
此时CX-B将按照CX-A的接口优先级选择活动接口。
如果Eth-Trunk链路两端设备的系统优先级一致,系统将选择系统ID字段较小的作为主动端。
系统ID由设备的MAC地址产生。
g)选择活动接口
选出主动端后,两端都会以主动端的接口优先级来选择活动接口。
如上图所示,CX-A为主动端,CX-A的接口GE1/0/1、GE1/0/2的优先级高于接口GE2/0/1,此时接口GE1/0/1、GE1/0/2被选为活动接口,组成LACP聚合组,以负载分担的方式转发数据。
2、静态汇聚原理
动态汇聚和静态汇聚原理类似,只是动态汇聚中所有端口都是通过协议确定,而不是像静态汇聚通过协议在指定端口中确定汇聚相关端口。
四、实现细节
1、链路聚合控制的相关参数
a)LACP协议如何唯一的标识聚合组:
系统ID(SystemID),由“系统优先级+系统MAC地址”组成,其中,之所以要有“系统优先级”,是因为LACP协议中,链路聚合两端设备扮演不同角色,有了“系统优先级”,管理员可以通过配置干预角色选举。
b)端口ID(PortID):
对于参与链路聚合的各个端口,也需要在设备内部唯一标识,端口ID由“端口优先级+端口号”组成,之所以需要“端口优先级”,也是因为涉及端口的不同角色选举
c)AggregatorID:
在一个设备上,能进行多组聚合,即有多个Aggregator,为了区分这些Aggregator,给每个Aggregator分配了一个聚合ID(AggregatorID),为一个16位整数
2、端口key
聚合端口中有两种key:
一种是操作key,一种是管理key。
操作key是为形成聚合当前使用的key,管理key是允许管理者对key值进行操作的key。
3、操作key
在动态LACP聚合中,只有操作KEY相同的端口才能属于同一个聚合组,你可以认为操作KEY相同的端口,其属性相同。
在手工聚合和静态LACP聚合中,虽然同一个聚合组中的端口的操作KEY不一定相同(因端口由管理员手工加入),但是Selected端口的操作KEY一定相同。
操作Key是在端口汇聚时,系统根据端口的配置(即速率、双工、基本配置、管理
Key)生成的一个配置组合。
(1)对于手工汇聚组和静态汇聚组,Selected的端口有相同的操作Key。
(2)静态汇聚端口在使能LACP后,端口的管理Key与汇聚组ID相同。
(3)动态汇聚端口在使能LACP协议后,其管理Key缺省为零。
(4)对于动态汇聚组,同组成员一定有相同的操作Key。
4、六要素
a)四个要素:
一个聚合组来说,如果需要进行唯一标识的话,需要包含四个元素:
本端系统ID、本端操作KEY、对端系统ID、对端操作KEY
b)两个要素:
系统中并不是所有聚合组都包含多个链路,为了区分只包含单个链路的聚合组的情况,还需要额外加上两个元素:
本端端口ID和对端端口ID。
c)结论:
这六个元素唯一确定了一个聚合组,称为聚合组ID(LinkAggregationGroupID,LAGID)。
如果一个聚合组中包含多个链路,那么LAGID中,本端端口ID和对端端口ID为0,相当于只用四元组就可以刻画包含多个链路的聚合组。
5、端口类型:
a)Selectet和Unselected:
参与流量转发的端口称为Selected端口,否则称为Unselected端口
b)主端口(master端口)
处于Selected状态且端口号最小的端口称为主端口(MasterPort),可以形象的认为,聚合组中的所有端口被汇聚到了主端口,主端口在逻辑上代表了整个聚合组,对于GVRP/GMRP、STP/RSTP/MSTP等二层协议,都只从主端口发送,其他数据报文则在各个Selected端口间分担。
c)补充:
由于Selected与Unselected端口在实际状态下的选取受到硬件的影响,所以不同厂家产品的具体表现形式可能有差异
5、LACP绑定端口
判断将一个端口绑定到Aggregator的关键依据是LAGID,判断方法是:
(1)Aggregator的操作KEY和端口的操作KEY相同。
(2)已经绑定到这个Aggregator的其他端口和这个端口有相同的链路LAGID,即与Aggregator关联的LAGID必须和端口的LAGID相同。
(3)“LAGID”则指的是聚合组ID(LinkAggregationGroupID),“聚合ID”则指的是AggregatorID.(LAGID就是指属于同一个聚合中的所有port包括selected和Standby,对于手工和静态比较好理解,就是指用户所指定的所有port,对于动态汇聚,指所有port)
6、端口离开Aggregator
(1)如果Actor端口在一定时间内(使用longtimeout时是90s,使用shorttimeout是3秒)收不到Partner端口发送的LACP报文,就宣告自己处于超时状态,如果在下一个shorttimeout时间(3秒)内还没有收到Partner的报文,就会离开这个Aggregator。
(2)如果从Partner端口收到的LACP报文,发现LAGID发生了改变(系统ID或操作KEY发生了变化,系统ID改变说明连接到的对端设备发生了变化,操作KEY发生了变化可能是对端端口的属性发生了变化),这时端口也会离开这个Aggregator。
(3)还有一种导致端口离开Aggregator的情况:
Actor端口本身的属性发生了变化,设备通过动态操作KEY功能给它分配的操作KEY发生变化,导致和Aggregator的LAGID不匹配,从而离开聚合组。
7、Active模式和Passive模式
(1)Active模式下,端口正常周期性的发送LACP报文;
(2)Passive模式下,端口平时不发送LACP报文,不过,一旦收到了对端的LACP报文,就会正常发送LACP报文了。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LACP 学习 笔记
![提示](https://static.bdocx.com/images/bang_tan.gif)