IEEE 802.3ad 链路聚合与LACP的简单知识EtherChannel 总结

2024-03-28 11:36

本文主要是介绍IEEE 802.3ad 链路聚合与LACP的简单知识EtherChannel 总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介:

IEEE 802.3ad 链路聚合与LACP的简单知识

内容提要:本文主要介绍了链路聚合的概念以及链路聚合与EtherChannel(以太通道)的区别。

说明:
IEEE 802.3ad 是执行链路聚合的标准方法。从概念上讲,将多个以太网适配器聚集到单独的虚拟适配器方面与“以太通道(EtherChannel)”的功能相同,能提供更高的带宽防止发生故障。例如,ent0 和 ent1 可以聚集到称作 ent3 的 IEEE 802.3ad 链路聚合;然后用 IP 地址配置接口 en3。系统将这些聚集的适配器作为一个适配器来考虑。因此,可以像在任何以太网适配器上一样配置它们的 IP。


如“以太通道”一样,IEEE 802.3ad 也需要交换机的支持。然而与“以太通道”不同的是,该交换机不需要手工配置来了解哪些端口属于同一个聚合。 
使用 IEEE 802.3ad“链路聚合”而不是“以太通道”的优势在于它在交换机中自动创建链路聚合,而且它允许您使用支持 IEEE 802.3ad 标准但不支持“以太通道”的交换机。

在 IEEE 802.3ad 中,“链路聚合控制协议”(LACP)自动通知交换机应该聚集哪些端口。IEEE 802.3ad 聚合配置之后,链路聚合控制协议数据单元(LACPDU)就会在服务器和交换机之间进行交换。LACP 会通知交换机在聚合中配置的适配器应作为交换机上的一个适配器来考虑,而不再有用户干涉。

虽然 IEEE 802.3ad 的规范不允许用户选择要聚集的适配器,但 AIX 的实现允许用户选择适配器。根据协议的规则,LACP 完全自身决定哪些适配器应该聚集到一起(通过使用类似的链路速度和双重设置来制作所有适配器的链路聚合)。这样就阻止您决定哪些适配器应该单机使用,哪些适配器应该聚集在一起。不过AIX 实现对如何使用适配器的控制,并且它永远不会任意地创建链路。这一点对于管理适配器十分重要。

要能够聚集适配器(也就是交换机将允许它们属于同一个聚合),它们的线路速度必须相同(例如,全都为 100 Mbps 或 1 Gbps),而且必须都是全双工的。如果试图将线路速度不同或不同全双工方式的适配器聚集在一起,您能在 AIX 上成功地创建聚合,但是交换机可能不会将这些适配器聚集在一起。如果交换机不将适配器成功地聚集在一起,您可能会发现网络性能有所下降。

根据 IEEE 802.3ad 的规范,前往相同 IP 地址的数据包都会通过相同的适配器进行发送。因此,当在 8023ad 方式下操作时,信息包会始终按照标准(Standard)的方式进行分发,而不会按照论询(Round-Robin)方式进行分发。

备份适配器功能对于 IEEE 802.3ad“链路聚合”是可用的,这就像对于“以太通道”一样。备份适配器无需连接到启用了 IEEE 802.3ad 的交换机上,但如果已经连接上了,备份适配器仍然会遵守 IEEE 802.3ad LACP。

如果交换机支持“以太通道”而不支持 IEEE 802.3ad,您也可以配置“IEEE 802.3ad 链路聚合”。那种情况下,您必须手工将端口配置为交换机上的“以太通道”(就如已经创建了常规“以太通道”一样)。将方式设置为 8023ad 以后,该聚合就会与启用了“以太通道”以及启用了 IEEE 802.3ad 的交换机一起工作。

注: 
启用 IEEE 802.3ad 的步骤根据交换机的不同而有所变化。您应该查阅交换机文档,确定为了启用交换机中的 LACP 必须执行那些起始步骤(如果有的话)。

注意事项

在配置 IEEE 802.3ad“链路聚合”之前,请考虑以下内容:

1. IEEE 802.3ad 方式下的 AIX 实现了不受官方支持的允许“链路聚合”包含不同线路速度的适配器,您应只聚集设置为相同线路速度并且设置为全双工的适配器。这样会有助于避免在交换机上配置“链路聚合”的潜在问题。有关您的交换机允许何种类型的聚合的更多信息,请参阅交换机文档。 
2. 如果要在 带有 5200-01 的 AIX 5.2 及先前版本上的链路聚合中使用 10/100 以太网适配器,则在将它们添加到聚合之前需要在那些适配器上启用链路轮询。请在命令行中输入 smitty chgenet。将Enable Link Polling 值更改为yes,然后按下 Enter 键。请为每一个要添加到“链路聚合”中的 10/100 以太网适配器执行这一操作。

链路聚合是指将交换机之间或者交换机与其它设备之间的多条线路合并成一条线路。既增加带宽,也增加了可靠性。

链路聚合是交换机上支持的一种技术,它把两个交换机之间两条以上同时相连的链路虚拟成为一条链路来传输信息。

链路聚合技术亦称主干技术(Trunking)或捆绑技术(Bonding),其实质是将两台设备间的数条物理链路“组合”成逻辑上的一条数据通路,称为一条聚合链路,如下图示意。交换机之间物理链路Link 1、Link2和Link3组成一条聚合链路。该链路在逻辑上是一个整体,内部的组成和传输数据的细节对上层服务是透明的。

u=400451405,3263221348&fm=27&gp=0.jpg

合内部的物理链路共同完成数据收发任务并相互备份。只要还存在能正常工作的成员,整个传输链路就不会失效。仍以上图的链路聚合为例,如果Link1和Link2先后故障,它们的数据任务会迅速转移到Link3上,因而两台交换机间的连接不会中断。

200812161229417935765.gif

链路聚合的优点

从上面可以看出,链路聚合具有如下一些显著的优点:

1、提高链路可用性
链路聚合中,成员互相动态备份。当某一链路中断时,其它成员能够迅速接替其工作。与生成树协议不同,链路聚合启用备份的过程对聚合之外是不可见的,而且启用备份过程只在聚合链路内,与其它链路无关,切换可在数毫秒内完成。

2、增加链路容量
聚合技术的另一个明显的优点是为用户提供一种经济的提高链路传输率的方法。通过捆绑多条物理链路,用户不必升级现有设备就能获得更大带宽的数据链路,其容量等于各物理链路容量之和。聚合模块按照一定算法将业务流量分配给不同的成员,实现链路级的负载分担功能。
某些情况下,链路聚合甚至是提高链路容量的唯一方法。例如当市场上的设备都不能提供高于10G的链路时,用户可以将两条10G链路聚合,获得带宽大于10G的传输线路。

3、价格便宜,性能接近千兆以太网。

4、不需重新布线,也无须考虑千兆网令人头疼的传输距离极限。

5、Trunking可以捆绑任何相关的端口,也可以随时取消设置,这样提供了很高的灵活性。

6、Trunking可以提供负载均衡能力以及系统容错。由于Trunking实时平衡各个交换机端口和服务器接口的流量,一旦某个端口出现故障,它会自动把故障端口从Trunking组中撤消,进而重新分配各个Trunking端口的流量,从而实现系统容错。

此外,特定组网环境下需要限制传输线路的容量,既不能太低影响传输速度,也不能太高超过网络的处理能力。但现有技术都只支持链路带宽以10为数量级增长,如10M、100M、1000M等。而通过聚合将n条物理链路捆绑起来,就能得到更适宜的、n倍带宽的链路。

目录
EtherChannel 1
1.协议:LACP. 1
1.1LACP模式:... 1
2.配置EtherChannel的指导原则:... 2
3. EtherChannel负载均衡... 2
4. EtherChannel与STP. 2
5. EtherChannel使用目的... 2
6.其它... 2
 
 
EtherChannel
 
因PAgP协议是思科私有协议,所以这里我们选择更具广泛性的LACP协议来讨论EtherChannel.
 
1.协议:LACP
LACP 即Link Aggregation Control Protocol,链路汇聚控制协议,是一种实现链路动态汇聚的协议,使用LACPDU与对端交换信息。
1.1LACP模式:
ON(开启):强制端口形成EtherChannel,如果希望EtherChannel能正确工作,那么链路的另一侧也必须处于ON模式。
OFF(关闭):使端口不能形成EtherChannel。这种模式下端口不会形成EtherChannel。
Passive(被动):使端口进入被动协商状态,如果能从对端接收到LACP数据包,那么就形成EtherChannel。这种模式不会主动发起EtherChannel协商。这种模式是默认的模式。
Active(主动):使端口进入主动协商状态,被配置的端口主动发送LACP数据名以发起能形成EtherChannel的协商。一般推荐使用这种模式。
2.配置EtherChannel的指导原则:
思科交换机最多支持8个端口来形成EtherChannel,这些端口不必是连续分布的,也不必位于相同的模块中。
一个EtherChannel内所有端口必须使用相同的协议(一般使用LACP协议)。
一个EtherChannel内的所有端口必须具有相同的速度和双工模式,否则不能形成EtherChannel。
LACP要求端口只能工作在全双工模式下。
一个EtherChannel中所有端口必须配置到相同的VLAN中,必须具有相同的干道模式。
 
3. EtherChannel负载均衡
EtherChannel支持基于2层MAC,3层IP,4层端口号的源/目的的负载均衡,高效地使用现有链路,当EtherChannel内有链路DOWN掉后,立即采用其它链路承担该链路的流量,这在事实上使EtherChannel具有了链路热备份的特性,提高了链路的冗余性。
 
4. EtherChannel与STP
STP将EtherChannel当作单个逻辑端口,这样EtherChannel中的端口不会因为STP而被阻塞,提高了链路的使用效率。
 
5. EtherChannel使用目的
一般我们使用EtherChannel是为了增加现有链路带宽,这种增加带宽的方法不需要增加更多的成本,只需要有多余的端口即可。EtherChannel我们一般也说链路捆绑。
 
6.其它
EtherChannel端口可当作2层、3层端口来使用(这取决于物理端口),并且EtherChannel形成的逻辑端口具有几乎一切物理端口的特性,在配置时可把它们当作物理端口来配置。

LACP的静态和动态会聚,静态就是把几个接口筐起来,不让它像动态的那样可以变化组合。
动态的只要波动就会组成新的组,超过了的才是UNSELETE。
一般标志一个组用4元组组成,但存在单接口的情况,那就要配合端口ID一起标志一个组。标志表示它是唯一的
主设备直接决定 那些LINK的接口应该属于SELETE准发,而从设备的接口优先级别是不起作用的。
LACP协议分为活跃和被动方式 ,被动方式的接口可以减少LACP协议对CPU的消耗。
动态的LACP协议会同步接口的配置,只要1个接口的VLAN配置就会同步给其他接口。
因此影响他们的其实只有双工方式和速率。
静态配置的接口会按一定优先顺序来选取是否该聚合的接口 不需要手工定义速率
静态聚合的时候会自动开启LACP协议。

这篇关于IEEE 802.3ad 链路聚合与LACP的简单知识EtherChannel 总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/855502

相关文章

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Java中数组转换为列表的两种实现方式(超简单)

《Java中数组转换为列表的两种实现方式(超简单)》本文介绍了在Java中将数组转换为列表的两种常见方法使用Arrays.asList和Java8的StreamAPI,Arrays.asList方法简... 目录1. 使用Java Collections框架(Arrays.asList)1.1 示例代码1.

Python依赖库的几种离线安装方法总结

《Python依赖库的几种离线安装方法总结》:本文主要介绍如何在Python中使用pip工具进行依赖库的安装和管理,包括如何导出和导入依赖包列表、如何下载和安装单个或多个库包及其依赖,以及如何指定... 目录前言一、如何copy一个python环境二、如何下载一个包及其依赖并安装三、如何导出requirem