EtherChannel
EtherChannel(以太通道)是由Cisco研发的,应用于交换机之间的多链路捆绑技术。它的基本原理是:将两个设备间多条相同特性的快速以太或千兆位以太物理链路捆绑在一起组成一条逻辑链路,从而达到带宽倍增的目的。除了增加带宽外,EtherChannel还可以在多条链路上均衡分配流量,起到负载分担的作用;当一条或多条链路故障时,只要还有链路正常,流量将转移到其它的链路上,整个过程在几毫秒内完成,从而起到冗余的作用,增强了网络的稳定性和安全性。在EtherChannel中,负载在各个链路上的分布可以根据源IP地址、目的IP地址、源MAC地址、目的MAC地址、源IP地址和目的IP地址组合,以及源MAC地址和目的MAC地址组合等来进行分布。两台交换机之间是否形成EtherChannel也可以用协议自动协商。
目前有两个协商协议:
- PAgP
- LACP
PAgP(Port Aggregation Protocol):端口聚合协议,是Cisco私有的协议。
必须是2,4,8条链路捆绑
PAgP数据包是每隔30s发送一次,PAgP会通过这些数据包来查看两端的配置是否一致。
当接口使用PAgP协议协商工作在EtherChannel组时,有以下3种模式可以选择:
- auto:被动状态,不会主动的发送PAgP协商消息,只会被动的应答,同意工作在EtherChannel组。
- desirable:主动模式。主动的发送PAgP协商消息,要求对方也工作在EtherChannel组中。
- 如果两边都工作在desirable模式下,或者是一边是auto模式,一边是desirable模式,都可以协商工作在EtherChannel组中,如果两边都是auto模式,则无法工作在EtherChannel组中。
- on:配置为on模式的端口不会发送PAgP数据包,该模式是手动的将接口配置为工作在EtherChannel组中。
如果开启auto,则默认协商的子模式为silent,在该模式中即便链路两端的接口没有收到对端发送的PAgP协商帧,链路也会协商成EtherChannel,但延迟较高,一般为1-2分钟。
SW(config-if-range)#channel-group 12 mode auto non-silent------关闭安静协商模式,如果两端都为auto,则无法协商成功
- 一端为on,则另一端必须也是on,因为on既不会发协商包,也不会接受协商包
- 可以选择将捆绑链路配置为2层接口或者3层接口
- 但配置为3层接口时,不能再物理接口配置IP地址,在port-channel上配置IP地址
- SW(config)#int port-channel 12
- SW(config-if)#no switchport
- SW(config-if)#ip add 12.1.1.1 255.255.255.0
- SW(config)#int range e0/0-1
- SW(config-if-range)#no switchport
- SW(config-if-range)#channel-group 12 mode on
LACP(Link Aggregation Control Protocol):链路聚合协议。是IEEE标准。
最多可以捆绑16根链路(2,4,8,16),但8条为备份,可以根据接口优先级和其他参数来决定谁为主链路谁为备份链路
只能使用协商模式,不能强制开启
LACP的几种模式:
- on:手动的设置端口工作在EtherChannel组中,不需要发送PAgP或LACP数据包进行协商。
- passive:只接收LACP协商消息,并做出回应同意工作在EtherChannel下,并不主动发出LACP协商,属于被动状态。
- active:主动发送LACP协商消息,主动要求对方工作在EtherChannel下,属于主动模式。
LACP参数:
- System priority:每个交换机运行LACP必须有一个系统优先级,该参数系统ID由交换机的MAC地址和系统优先级组成
- Port priority:交换机中每个端口都有一个端口优先级,端口标识符由端口优先级和端口号组成。当硬件限制防止所有可用端口聚合时,交换机用端口优先级决定哪个端口切换为备用模式。
- Administrative key:交换机中每个端口都必须有一个管理键值,该值定义了该端口和其他端口聚合的能力,能力由下列这些因素决定:端口的物理特性,如数据速率,双工兼容性和点对点或分享媒介
- 当启用时,LACP试图在通道中配置最大数量的可兼容端口。在某些实例中,LACP不能聚合所有可兼容端口,因为可能远程系统会有更严格的硬件限制。当这种情况发生时,所有没有被主动包含进通道中的端口就会进入热备状态,仅当通道中的某个端口失效时才被使用。
配置:
SW(config-if-range)#channel-protocol lacp
SW(config-if-range)#channel-group 12 mode active|passive------如果两端都是被动协商,LACP没有PAgP的silent模式,所以不能建立成功。
SW(config-if)#lacp port-priority 0---------将该接口的LACP接口优先级修改为最小,使其始终为捆绑链路中的主链路,需要在链路两端都配置
负载均衡
SW(config-if)prot-channel load-balance [src-mac]
负载均衡基于以下变量来实现:
- src-mac:源MAC地址
- dst-mac:目的MAC地址
- src-dst-mac:源和目的MAC地址
- src-ip:源IP地址
- dst-ip:目的IP地址
- src-dst-ip:源和目的IP地址
- src-prot:源TCP/UDP端口
- dst-port:目的TCP/UDP端口
- src-dst-port:源和目的TCP/UDP端口
默认支持源MAC地址负载均衡
cisco 3550交换机只支持src-mac和dst-mac,但是如果开启了src-mac之后可以同时开启基于src-dst-ip的负载均衡,但在3550以上交换机只能开启上述九种中的一种
根据上述变量计算其哈希值,然后将其捆绑链路以0和1标记,每第一次发送数据包时根据其哈希值和链路标记来决定以同一变量为依据发送的数据包会走哪一条链路
-----------------------------------------------------------------------总结分割线--------------------------------------------------------------------------------------------