端口通道( port channel ) 是一种聚合多个物理接口 ( that ) 创建一个逻辑接口。你可以捆扎( bundle ) 八个单独的活动链接到一个信道端口,以提供更高的带宽和冗余。端口通道也负载平衡这些物理接口上的通信量。只要端口通道中的至少一个物理接口可操作,端口通道就可以保持运行。——摘自: Configuring a Port Channel
至於 LACP 是 IEEE Standard,玩法與 PAgP 大致相同,只不過把兩個 Mode 的名稱由 Desirable 改成 Active 以及由 Auto 改成 Passive。所以,只要最少有一邊是 Active,EtherChannel 就成立。
Active
Passive
Active
✔
✔
Passive
✔
✖
SW1(config)#interface range ethernet 0/0 - 1
SW1(config-if-range)#channel-group1 mode active
Creating a port-channel interface Port-channel 1
SW1(config-if-range)#
SW2(config)#interface range ethernet 0/0 - 1
SW2(config-if-range)#channel-group1 mode passive
Creating a port-channel interface Port-channel 1
SW2(config-if-range)#
不過 LACP 多了一個叫 Hot Standby 的功能,就是除了 8 個 Port 設成 EtherChannel 之外,還可以最多把 8 個 Port 加進去做 Hot Standby Port。Hot Standby Port 的意思是當有 Active Port 因為某些原因 Down 時,Hot Standby Port 可以即時補上,所以,LACP 最多可以容納 16 port (8 個 Active + 8 個 Hot Standby) 在一個 EtherChannel 之中。至於那個 Port 會被選擇成為 Active 則會按 Port Priority 決定,LACP 會先選 Port Priority 較小的做 Active,如 Port Priority 相同則選 Port ID 較小的。請看以下例子:
假設現時有 16 個 Port 在同一個 EtherChannel,由於所有 Port Priority 預設都是 32768,因此系統選擇 Port ID 最小的 8 個 Port 成為 Active Port,其他則成為 Hot Standby。
SW1#show etherchannel summary
Flags: D - down P - bundled inport-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S - Layer2
U - inuse N - notinuse, no aggregation
f - failed to allocate aggregator
M - notinuse, no aggregation due to minimum links not met
m - notinuse, portnot aggregated due to minimum links not met
現在嘗試把一些 Port 的 LACP Port Priority 變小,Active Port 亦隨之改變。留意兩隻 Switch 相對的 Port 的狀態必需相同 (我這邊是 Active Port,對方也應該是 Active Port),否則會造成不相容而出現 Secondary Aggregator 的問題。
SW1(config)#int range ethernet 2/0-1, ethernet 3/2-3
SW1(config-if-range)#lacp port-priority 1000
SW1(config-if-range)#end
SW1#show etherchannel summary
Flags: D - down P - bundled inport-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S - Layer2
U - inuse N - notinuse, no aggregation
f - failed to allocate aggregator
M - notinuse, no aggregation due to minimum links not met
m - notinuse, portnot aggregated due to minimum links not met
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)