链路聚合
- 1. 介绍
链路聚合(英语:Link Aggregation)是一个计算机网络术语,指将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担,交换机根据用户配置的端口负荷分担策略决定网络封包从哪个成员端口发送到对端的交换机。当交换机检测到其中一个成员端口的链路发生故障时,就停止在此端口上发送封包,并根据负荷分担策略在剩下的链路中重新计算报文的发送端口,故障端口恢复后再次担任收发端口。链路聚合在增加链路带宽、实现链路传输弹性和工程冗余等方面是一项很重要的技术。
- 2. 数据包
数据包(英语:Data packet),又称分组,是在分组交换网络中传输的格式化数据单位。
一个数据包(packet)分成两个部分,包括控制信息,也就是头(header),和数据本身,也就是负载(payload)。
我们可以将一个数据包比作一封信,头相当于信封,而数据包的数据部分则相当于信的内容。当然,有时候一个大数据包可以分成多个小数据包,这个和信不同。
- 3. IEEE 802.1aq
IEEE 802.1aq(英语:Shortest Path Bridging,缩写作SPB),是一个计算机网络术语。802.1aq 在增加链路带宽、实现链路传输弹性和工程冗余等方面是一项很重要的技术。 802.1aq 是一个合乎逻辑的升级生成树协议(Spanning Tree Protocol)。802.1aq 的功能包括 802.1s, 802.1w,802.1ax(链路聚合), MC-LAG, 802.1ak。
- 4. 生成树协议
生成树协议(英语:Spanning Tree Protocol,STP),是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源.
生成树协议工作原理:任意一交换机中如果到达根网桥有两条或者两条以上的链路.生成树协议都根据算法把其中一条切断,仅保留一条.从而保证任意两个交换机之间只有一条单一的活动链路.因为这种生成的这种拓扑结构.很像是以根交换机为树干的树形结构.故为生成树协议
生成树协议是基于Radia Perlman在DEC工作时发明的一种算法被纳入了IEEE 802.1d中,2001年IEEE组织推出了快速生成树协议(RSTP)在网络结构发生变化时其比STP更快的收敛网络,还引进了端口角色来完善了收敛机制,被纳入在IEEE 802.1w中.
STP的工作过程如下:首先进行根网桥的选举,其依据是网桥优先级(bridge priority)和MAC地址组合生成的桥ID,桥ID最小的网桥将成为网络中的根桥(bridge root)。在此基础上,计算每个节点到根桥的距离,并由这些路径得到各冗余链路的代价,选择最小的成为通信路径(相应的端口状态变为forwarding),其它的就成为备份路径(相应的端口状态变为blocking)。STP生成过程中的通信任务由BPDU完成,这种数据包又分为包含配置信息的配置BPDU(其大小不超过35B)和包含拓扑变化信息的通知BPDU(其长度不超过4B)。
- 5. STP端口状态
STP端口状态 |
|
端口状态 |
端口能力 |
Disabled |
不收发任何报文 |
Blocking |
不接收或者转发数据,接收但不发送BPDU,不进行地址学习 |
Listening |
不接收或者转发数据,接收并发送BPDU,不进行地址学习 |
Learning |
不接收或者转发数据,接收并发送BPDU,开始进行地址学习 |
Forwarding |
接收或者转发数据,接收并发送BPDU,进行地址学习 |
链路聚合的两种方式:
一、 静态Trunk
静态Trunk将多个物理端口直接加入Trunk组,形成一个逻辑端口。这种方式不利于观察链路聚合端口的状态。
缺点:是在发生故障时(部分情况下)无法进行负载分担,容易造成数据溢出,造成部分业务中断。
二、 LACP链路聚合控制协议( Link Aggregation Control Protocol)
遵循IEEE 802.3ad标准。LACP通过协议将多个物理端口动态聚合到Trunk组 ,形成一个逻辑端口。LACP自动产生聚合以获得最大的带宽。
LACP端口成员模式有2种:active(主动协商)、passive(被动协商) 。
在配置动态聚合链路的时候,需要将一端的端口设置成active,另一端设置成passive;或者两端都是active,如果两端都是passive时聚合会失效。
三、 链路聚合功能的实现需要遵循以下的原则:
1)端口的工作模式必须一致(双工/半双工)
2)端口的工作速率必须一致。
3)端口的属性( access,trunk,或hybrid )、链路聚合组的模式(静态、动态)必须一致