学习笔记 LAN 技术之 Eth-Trunk

资讯 2024-07-13 阅读:74 评论:0
? 随着网络中部署的业务量不断增长,对于全双工点对点链路,单条物理链路的带宽已不能满足正常的业务流量需求。如果将当前接口板替换为具备更高带宽的接口板...
美化布局示例

欧易(OKX)最新版本

【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   全球官网 大陆官网

币安(Binance)最新版本

币安交易所app【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址

火币HTX最新版本

火币老牌交易所【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址
?
随着网络中部署的业务量不断增长,对于全双工点对点链路,单条物理链路的带宽已不能满足正常的业务流量需求。如果将当前接口板替换为具备更高带宽的接口板,则会浪费现有的设备资源,而且升级代价较大。如果增加设备间的链路数量,则在作为三层口使用时需要在每个接口上配置 IP 地址,从而导致浪费 IP 地址资源。
Eth-Trunk( 链路聚合技术 ) 作为一种捆绑技术,可以把 多个独立的物理接口绑定在一起作为一个大带宽的逻辑接口使用 ,这样既不用替换接口板也不会浪费 IP 地址资源。本次博客将介绍 Eth-Trunk 技术。
?
以太网链路聚合 Eth-Trunk 简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效地提高链路的可靠性。
Trunk 接口连接的链路可以看成是一条点到点的直连链路,在一个 Trunk 内,可以实现流量负载分担,同时也提供了更高的连接可靠性和更大的带宽。用户通过对逻辑口进行配置,实现各种路由协议以及其它业务部署。

?

?

链路聚合技术主要有以下三个优势:增加带宽、提高可靠性和负载分担。

链路聚合组和成员接口
链路聚合组 LAG 是指将若干条以太链路捆绑在一起所形成的逻辑链路。组成 Eth-Trunk 接口的各个物理接口称为成员接口。
活动接口和非活动接口、活动链路和非活动链路
链路聚合组的成员接口存在活动接口和非活动接口两种。 转发数据的接口称为活动接口 不转发数据的接口称为非活动接口。 活动接口最多为8个
活动接口对应的链路称为活动链路,非活动接口对应的链路称为非活动链路。
活动接口数上限阈值
当前活动链路数目达到上限阈值时,再向 Eth-Trunk 中添加成员接口,不会增加 Eth-Trunk 活动接口的数目,超过上限阈值的链路状态将被置为 Down ,作为备份链路。
活动接口数下限阈值
设置活动接口数下限阈值是为了保证最小带宽,当前活动链路数目小于下限阈值时, Eth-Trunk 接口的状态转为 Down
设备支持的链路聚合方式
同板:是指链路聚合时,同一聚合组的成员接口分布在同一单板上。
跨板:是指链路聚合时,同一聚合组的成员接口分布在不同的单板上。
跨框:是指在集群场景下,成员接口分布在集群的各个成员设备上。

? ? ? ? ? ? 跨设备:是指E-Trunk基于LACP进行了扩展,能够实现多台设备间的链路聚合。?

♪ Cross-equipment ♪ #xff1a ♪ ♪ inter-equipment ♪ LACP extended xff0c; able to achieve interlinkage between multiple sets of equipment? ?

Eth-Trunk位于MACLLC子层之间,属于数据链路层。?

MAC sub-layers xff0c; belonging to the data chain ?

?

注:LAN局域网是802.3机制,是共享介质的,广域网WAN一般是点到点,所以不存在着介质冲突的问题;所以在LAN,就需要有一个层来管理介质的使用权,就是mac层,主要功能就是数据帧的封装,寻址,接收和发送,都是在mac层里面进行的,非常重要的一个功能就是仲裁介质的使用权,也就是非常著名的CSMA/CD,这种载波侦听多路访问的方式来控制传输介质的使用权。 LLC层就是作为逻辑链路控制,给上层提供服务,可以提供面向连接和面向无连接的服务。

Eth-Trunk 模块内部维护一张转发表,这张表由以下两项组成。
HASH-KEY 值: HASH-KEY 值是根据数据包的 MAC 地址或 IP 地址等,经 HASH 算法计算得出。
接口号: Eth-Trunk 转发表表项分布和设备每个 Eth-Trunk 支持加入的成员接口数量相关,不同的 HASH-KEY 值对应不同的出接口。

?

Eth-Trunk 模块根据转发表转发数据帧的过程如下:
1. Eth-Trunk 模块从 MAC 子层接收到一个数据帧后,根据负载分担方式提取数据帧的源 MAC 地址 /IP 地址或目的 MAC 地址 /IP 地址。
2. 根据 HASH 算法进行计算,得到 HASH-KEY 值。
3. Eth-Trunk 模块根据 HASH-KEY 值在转发表中查找对应的接口,把数据帧从该接口发送出去。
例如 ,某设备每 Eth-Trunk 支持最大加入接口数为 8 个,将接口 1 2 3 4 捆绑为一个 Eth-Trunk 接口,此时生成的转发表如上图 所示。其中 HASH-KEY 值为 0 1 2 3 4 5 6 7 ,对应的出接口号分别为 1 2 3 4 1 2 3 4
为了避免数据包乱序情况的发生, Eth-Trunk 采用逐流负载分担的机制,其中如何转发数据则由于选择不同的负载分担方式而有所差别。
负载分担的方式主要包括以下几种,用户可以根据具体应用选择不同的负载分担方式。
根据报文的源 MAC 地址进行负载分担;
根据报文的目的 MAC 地址进行负载分担;
根据报文的源 IP 地址进行负载分担;
根据报文的目的 IP 地址进行负载分担;
根据报文的源 MAC 地址和目的 MAC 地址进行负载分担;
根据报文的源 IP 地址和目的 IP 地址进行负载分担;
根据报文的 VLAN 、源物理端口等对 L2 IPv4 IPv6 MPLS 报文进行增强型负载分担。

?

手工模式下,Eth-Trunk的建立、成员接口的加入由手工配置,没有链路聚合控制协议LACP的参与。如下图所示,DeviceADeviceB之间创建Eth-Trunk,手工模式下三条活动链路都参与数据转发并分担流量。当一条链路故障时,故障链路无法转发数据,链路聚合组自动在剩余的两条活动链路中分担流量。?

Eth-Trunk member interfaces added by manual configuration xff0c;

?

为了提高 Eth-Trunk 的容错性,并且能提供备份功能,保证成员链路的高可靠性,出现了链路聚合控制协议 LACP Link Aggregation Control Protocol )。聚合链路形成以后, LACP 负责维护链路状态,在聚合条件发生变化时,自动调整或解散链路聚合。
LACP模式Eth-Trunk建立的过程 如下:
1.两端互相发送LACPDU报文。在DeviceA和DeviceB上创建Eth-Trunk并配置为LACP模式,然后向Eth-Trunk中手工加入成员接口。此时成员接口上便启用了LACP协议,两端互发LACPDU报文。

?

作为链路聚合技术,手工模式Eth-Trunk可以完成多个物理接口聚合成一个Eth-Trunk口来提高带宽,同时能够检测到同一聚合组内的成员链路有断路等有限故障,但是无法检测到链路层故障、链路错连等故障。?

as connection polymer technology xff0c; manual Eth-Trunk can combine multiple physical interfaces into an Eth-Trunk mouth to increase bandwidth xff0c; also limited faults, such as broken circuits, can be detected in the member's links within the same polymer group xff0c; but faults in chain layers, fault links, etc. cannot be detected.

2.确定主动端和活动链路。

?

如上图所示,两端设备均会收到对端发来的 LACPDU 报文。以 DeviceB 为例,当 DeviceB 收到 DeviceA 发送的报文时, DeviceB 会查看并记录对端信息,然后比较系统优先级字段,如果 DeviceA 的系统优先级于本端的系统优先级,则确定 DeviceA LACP 主动端。如果 DeviceA DeviceB 系统优先级相同,比较两端设备的 MAC地址,确定MAC 地址小的一端 LACP 主动端。
选出主动端后,两端都会以主动端的接口优先级来选择活动接口,如果主动端的接口优先级都相同则选择接口编号比较小的为活动接口。两端设备选择了一致的活动接口,活动链路组便可以建立起来,从这些活动链路中以负载分担的方式转发数据。

?

配置手工模式链路聚合?

?

[SwitchA] interface eth-trunk 1? ? ? 创建Eth-Trunk接口,并进入Eth-Trunk接口视图

[SwitchA-Eth-Trunk1] mode manual load-balance? ? ? ?配置链路聚合模式为手工模式

[SwitchA-Eth-Trunk1] trunkport gigabitethernet 0/0/1 to 0/0/3? ? ? ?将成员接口加入聚合组

gigabiteothernet

?

配置LACP模式的链路聚合?

configure

[SwitchA] interface eth-trunk 1

[SwitchA-Eth-Trunk1] mode lacp? ? ?配置链路聚合模式为LACP模式

lacp??? Configure connection aggregation mode for LACP

[SwitchA-Eth-Trunk1] max active-linknumber 2? 配置活动接口上限阈值为2

[SwitchA] interface gigabitethernet 0/0/1? 将成员接口加入聚合组

interfacegigabiteothernet

[SwitchA-GigabitEthernet0/0/1] eth-trunk 1

[SwitchA] interface gigabitethernet 0/0/2

[SwitchA-GigabitEthernet0/0/2] eth-trunk 1

[SwitchA] interface gigabitethernet 0/0/3

[SwitchA-GigabitEthernet0/0/3] eth-trunk 1?

将集群设备不同设备中的物理接口聚合到一个逻辑接口 Eth-Trunk 接口中。当集群设备中某台设备故障或加入 Eth-Trunk 接口中的物理成员口故障,可通过集群设备间线缆跨框传输数据流量,从而保证了数据流量的可靠传输,同时实现了设备间的备份。
在网络无故障的情况下从 DeviceB DeviceC 上来的流量,通过本设备中的成员口优先本地转发,而不是像 A 图中通过集群设备间线缆跨框转发。

?

?

在设备集群情况下,为了保证流量的可靠传输,流量的出接口设置为 Eth-Trunk 接口。那么 Eth-Trunk 接口中必定存在跨框成员口。当集群设备转发流量时, Eth-Trunk 接口通过 HASH 算法可能会选择跨框的成员口。由于集群设备间线缆带宽有限,跨框转发流量增加了集群设备之间的带宽承载压力,同时也降低了流量转发效率。为了解决这个问题,可以使能 Eth-Trunk 接口流量本地优先转发。
如图所示, DeviceB DeviceC 组成集群,集群设备和 DeviceA 之间用 Eth-Trunk 连接。通过在集群设备上部署接口流量本地优先转发功能,可实现:
入本设备流量从本设备转发
Eth-Trunk 接口在 DeviceB 有出接口且出接口无故障时, DeviceB Eth-Trunk 接口转发表中将只包含 DeviceB 的出接口。这样 DeviceB DeviceA 的流量在通过 HASH 算法选择出接口时只能选中 DeviceB 的接口,流量从 DeviceB 本设备转发出去。
入本设备流量跨框转发
Eth-Trunk 接口在 DeviceB 本设备无出接口或者出接口全部故障时, DeviceB Eth-Trunk 转发表中将包含 Eth-Trunk 接口中所有可转发的出接口。这样 DeviceB DeviceA 的流量在通过 HASH 算法选择出接口时将选中 DeviceC 上的出接口,流量将通过 DeviceC 跨框转发。

?

E-TrunkEnhanced Trunk)是一种实现跨设备链路聚合的机制,基于LACP(单台设备链路聚合的标准)进行了扩展,能够实现多台设备间的链路聚合,从而把链路可靠性从单板级提高到了设备级。
如下图所示, CE 双归接入 PE1 PE2 ,通过在 PE 节点部署 E-Trunk ,当 CE PE1 的链路或 PE1 节点故障时,流量可以切换到 CE PE2 的链路,从而实现设备级保护。

?

?

E-Trunk机制主要应用于CE双归接入VPLS、VLL、PWE3网络时,CE与PE间的链路保护以及对PE设备节点故障的保护 。在没有使用 E-Trunk 前, CE 通过 Eth-Trunk 链路只能单归到一个 PE 设备。如果 Eth-Trunk 出现故障或者 PE 设备故障, CE 将无法与 PE 设备继续进行通信。使用 E-Trunk 后, CE 可以双归到 PE 上,从而实现设备间保护。
如图, CE 分别与 PE1 PE2 直连, PE1 PE2 之间运行 E-Trunk PE 侧,需要在 PE1PE2设备上分别创建ID相同的E-TrunkEth-Trunk,并将Eth-Trunk加入到E-Trunk CE 侧,在 CE 设备上配置 LACP 模式的 Eth-Trunk Eth-Trunk分别与PE1PE2设备相连。对CE设备而言,E-Trunk不可见。
PE1 PE2 设备之间通过 E-Trunk 报文进行主备协商,确定 E-Trunk 的主备状态。正常情况下两台 PE 的协商结果是一个为主用一个为备用。 PE 设备上 E-Trunk 主备状态是根据报文中所携带的 E-Trunk 优先级和 E-Trunk 系统 ID 确定的。优先级的数值越小,优先级越高,优先级高的为主用。如果 E-Trunk 优先级相同,那么 E-Trunk 系统 ID 小的为主用。 PE1 为主, PE1 Eth-Trunk 10 为主,链路状态为 Up PE2 为备, PE2 Eth-Trunk 10 为备,链路状态为 Down
如果CE到PE1间的链路出现故障: PE1 会向对端发送 E-Trunk 报文,报文中携带 PE1 Eth-Trunk 10 故障的信息。 PE2 收到 E-Trunk 报文后,发现对端 Eth-Trunk 10 故障,则 PE2 设备上 Eth-Trunk 10 的状态将变为主。然后经过 LACP 协商, PE2 设备上的 Eth-Trunk 10 的状态变为 Up 。这样 PE2 设备的 Eth-Trunk 状态变为 Up CE 的流量会通过 PE2 转发,以达到对 CE 的流量进行保护的目的。
如果PE1设备出现故障: 如果 PE 设备上配置了 BFD PE2 检测到 BFD 会话状态为 Down 后, PE2 设备从备用状态变为主用状态, PE2 Eth-Trunk 10 状态也变为主。如果 PE 设备上没有配置 BFD PE2 设备上的定时器超时后仍然没有收到 PE1 设备发送的 E-Trunk 报文, PE2 设备从备用状态变为主用状态, PE2 Eth-Trunk 10 状态也变为主。经过 LACP 协商, PE2 设备上的 Eth-Trunk 10 的状态变为 Up CE 的流量会通过 PE2 转发,以达到对 CE 的流量进行保护的目的。

?

创建ID为1的E-Trunk

to create ID with 1/span style="color:#333333; >E-Trunk.

 

?

当E-Trunk配置成功,必须向E-Trunk中加入成员Eth-Trunk,才能实现两台设备上的链路聚合协议。从而实现跨设备的链路聚合组冗余,提高网络可靠性。

When E-Trunk is configured successfully & #xff0c; Eth-Trunk, must be added to E-Trunk; to be able to achieve the connection convergence protocol on two devices. This will result in redundancy of the cross-equipment chain polymer group & #xff0c; and to improve network reliability.

操作步骤

Operational Steps

  1. 执行命令system-view,进入系统视图。
  2. 执行命令interface eth-trunk?trunk-id,进入Eth-Trunk接口视图。

    仅LACP模式的Eth-Trunk才能加入E-Trunk。

    Eth-Trunk only joins E-Trunk in the LACP mode.

  3. 执行命令e-trunk?e-trunk-id?[?remote-eth-trunk?eth-trunk-id?],将Eth-Trunk加入到指定E-Trunk中。

    一个Eth-Trunk只能加入一个E-Trunk。

    One Eth-Trunk can only join one E-Trunk.

    一个E-Trunk中,两端设备上所加入的Eth-Trunk ID可以不一致,当两台PE设备上创建的Eth-Trunk ID不一样,如果用户通过本命令将两端PE设备上不同ID的LACP模式的Eth-Trunk加入同一个E-Trunk时,必须选择remote-eth-trunk参数指定远端Eth-Trunk ID,能保证E-Trunk正常工作。

    & #xff0c in E-Trunk; Eth-Trunk IDs added on two end devices can be inconsistent & #xff0c; Eth-Trunk IDs created on two PE devices are different & #xff0c; Eth-Trunks with different IDs on two end PE devices are added by this command to the same E-Trunk & #xff0cs; the parameters remote-eth-trounk must be selected to specify a faraway Eth-Trunk ID #xff0c; to ensure that E-Trunk works properly.

美化布局示例

欧易(OKX)最新版本

【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   全球官网 大陆官网

币安(Binance)最新版本

币安交易所app【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址

火币HTX最新版本

火币老牌交易所【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址
文字格式和图片示例

注册有任何问题请添加 微信:MVIP619 拉你进入群

弹窗与图片大小一致 文章转载注明

分享:

扫一扫在手机阅读、分享本文

发表评论
平台列表
美化布局示例

欧易(OKX)

  全球官网 大陆官网

币安(Binance)

  官网

火币(HTX)

  官网

Gate.io

  官网

Bitget

  官网

deepcoin

  官网
热门文章
  • 支付領域投下震撼彈!美國數位銀行Chime疑與GuardPay 神盾支付合作!

    支付領域投下震撼彈!美國數位銀行Chime疑與GuardPay 神盾支付合作!
    2020年,新冠肺炎(COVID-19)疫情加速數位貨幣進展。例如:2019年4月,國際清算銀行(BIS)的調查顯示,在全球66家中央銀行中,沒有一家計畫發行跨境支付的數位貨幣。惟到了2020年10月,BIS支付委員會主席康利夫(Jon Cunliffe)指出,肺炎疫情拉高民眾對無現金支付的需求,迫使各國加快數位貨幣的研發進程日本與韓國於2021年進入數位貨幣試驗階段。直到2019年12月,美國聯邦準備理事會(Fed)都尚無數位貨幣規劃,惟到了2020年2月,Fed已開始研擬...
  • 区块链:交易系统开发指南

    区块链:交易系统开发指南
    播报编辑《区块链:交易系统开发指南》使用通俗易懂的语言,从技术的角度详细介绍了区块链交易系统应有的功能架构及工作原理,让人们能够张开双臂轻松地拥抱区块链技术,享受区块链交易系统带来的惊喜与成就感。《区块链:交易系统开发指南》共分 7 章,第 1~2 章主要介绍区块链及数字货币的基本概念,以及各种公有链的 API 接口;第3~5 章主要介绍区块链交易系统的分类架构及功能; 6 章主要介绍区块链交易系统面临的问题及演进方向;第 7 章对全书做了总结。《区块链:交易系统开发指南》是...
  • 5.14加密货币价格:BTC突破6.2万美元以太坊和山寨币反映市场情绪

    5.14加密货币价格:BTC突破6.2万美元以太坊和山寨币反映市场情绪
    今天,随着比特币(BTC)的价格突破62 000美元的门槛,顶级加密货币的价格反弹了。 此外,以铁大幅上涨,维持在2 900美元的水平。 此外,其他顶尖山硬币,如索拉纳(SOL )、XRP、卡达诺(ADA )也大幅上涨。    今天密钥加密货币价格 1. 比特币价格    在5月14日星期二撰写本文时,比特币价格上升了2.57%,达到62 487.50美元。 另一方面,在过去24小时内,交易量从65.26 % 急剧上升至277亿美元。 与此同时,加密货币的市场价值为...
  • OKEx回应用户质疑:合约交易非期货 平台无机器人

    OKEx回应用户质疑:合约交易非期货 平台无机器人
       热点点 自选股份 数据中心 数据中心 研究和资料中心 资金流动 模拟交易 客户客户 具体来说,OKEx回答用户的问题:合同交易不是期货,平台不是机器人。 金融同步化,3月22日。    昨天下午,OKEx公司就维护先前用户线下的权利问题对同步财务公司作出了回应,指出OKEx公司提供的合同交易不是期货交易,在旗下的业务中没有正式的机器人。 同时,OKEX称,它不会以非法为由对任何投资损失索赔作出答复。 答复全文如下: 同步你的财务! 近日来,...
  • 0.00006694个比特币等于多少人民币/美金

    0.00006694个比特币等于多少人民币/美金
    0.00006694比特币等于多少人民币?根据比特币对人民币的最新汇率,0.00006694比特币等于4.53424784美元/32.5436 16人民币。比特币(BTC)美元(USDT)人民币(CNY)0.000066944.53424784【比特币密码】32.82795436 16比特币对人民币的最新汇率为:490408.64 CNY(1比特币=490408.64人民币)(1美元=7.24人民币)(0.00006694USDT=0.0004846456 CNY)汇率更新时...
标签列表