链路聚合概述

目录

技术背景:

基本概念:

链路聚合的工作模式:

简介:

1)Manual Load-balance(手动负载分担)

简介:

配置实施:

2)LACP(链路聚合控制协议):

简介:

LACP协商选举:

1.主动端与被动端选举/协商主从:

简介:

选举规则:

2.活动端口选举:

简介:

选举规则:

配置实施:

拓展:跨设备级链路聚合E-Trunk

前言:

简介:

配置实施:

尾声:

技术背景:

随着网络规模不断扩大,人们对骨干链路的带宽吞吐量与可靠性提出了越来越高的要求。根据传统的方案,只能将当前链路更换为更高速的链路。但是更换链路需要付出较高的成本费用,而且灵活性差,因此我们需要探索一种更灵活、更新型、更节约的方法来取代这种传统方案。正因如此,链路聚合作为这一场景的解决方案应运而生,并得到了广泛的推广与使用

基本概念:

链路聚合(Link-Aggregation)本质上就是将多条物理以太链路捆绑成一条逻辑链路,又叫Eth-trunk链路,而这条逻辑链路的带宽就是链路聚合组(Link-Aggregation Group)成员带宽的一个总和。并且链路聚合还能形成一个链路冗余,由于是多条物理以太链路组成一条逻辑链路,只要物理链路没死光,那么逻辑链路就会一直存在。

链路聚合的工作模式:

简介:

链路聚合有几种工作模式,分别是Manual Load-balance(手动负载分担)、LACP-Static(链路聚合控制协议-静态)、LACP-Dynamic(链路聚合控制协议-动态)。

1)Manual Load-balance(手动负载分担)

简介:

手动负载分担模式无需协商,当你将eth-trunk应用到接口上时,链路聚合的状态即会up

配置实施:

这是一个简单的链路聚合topo

SW1
int eth-trunk 1mode manual load-balance//不用配置也行,ensp里缺省是这个模式,为什么呢,因为有些设备不支持lacpport link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/1 to 0/0/2 //eth-trunk的一个批量应用

我们先配置一边,然后看看当前链路聚合表

可以看到,链路聚合组的所有成员都是一个up的状态,这就是一个负载分担,就是无论应用到多少个接口,都会up,而且无法限制活动端口。

而且,此时产生了一个可能的、严重的、风险较大的问题:

LSW1的两条链路捆绑成一条,就是说,LSW1这边是一条链路,而SW2那边仍然是两条链路,那么,可能会出现一个环路的风险

红色和蓝色线条代表了两种可能的环路报文流方向,因此,若进行手工模式配置,可能由于网管配置的疏忽,导致网络中出现了环路,危害极大,因此能用LACP就用LACP,尽量别用Manual!

那么手工模式就讲到这里,我们接下来重点来讲LACP

2)LACP(链路聚合控制协议):

简介:

LACP是一种基于IEEE802.3ad标准的一种链路聚合控制协议,具有两种模式,一种LACP-Static,一种LACP-Dynamic,通常都是部署静态LACP,动态LACP仅用于华为设备与服务器互连的场景,其他场景下部署有网络成环的风险

LACP协商选举:

1.主动端与被动端选举/协商主从:
简介:

两端设备在LACP协商过程中会根据LACP PDU中携带的系统优先级或系统ID参数来选举主动端和被动端

选举规则:

1.先比对系统优先级(Sys Pri),值越小越优,若一样,则下一步

2.再比对系统ID(Sys ID),值越小越优

2.活动端口选举:
简介:

两端设备在LACP协商完主从后,再根据主动端设备本地接口上的一个接口优先级与接口ID参数来选举活动端口,被动端根据主动端选举的活动端口来选择活动端口

选举规则:

1.先比对端口优先级(Port Pri),值越小越优,若一样,则下一步

2.再比对端口号(Port No),值越小越优

配置实施:

同样的,这是一个简单的链路聚合topo

sw1
int eth-trunk 1mode lacp-static //修改链路聚合工作模式为静态lacpport link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/1 to 0/0/2

那么配置完单边我们来看链路聚合表

可以看到状态是一个Unselect

然后我可以看到,相比手动模式,LACP的链路聚合表要多了不少东西

local中的参数就是我们本地的一个参数

partner中的参数就是我们对端的参数,因为我们对端还没配置链路聚合,因此无法进行lacp协商,也就无法获取对端的一个链路聚合参数信息

那么我们继续配置

sw2
int eth-trunk 1mode lacp-static //修改链路聚合工作模式为静态lacpport link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/1 to 0/0/2

然后我们回头来看链路聚合表

可以看到对端的参数已经获取到了,那么我们可以看到系统优先级SysPr和端口优先级PortPrii默认是32768,刚好是一个2^15次方,由于他们优先级相同,那么他们选举主动端或活动端口只能进入下一步,即比对系统标识符SysID或端口编号PortNo。

和手动负载分担不同,LACP可以限制一个最大活动端口,我们这里可以来配置一下

SW1
interface Eth-Trunk1max active-linknumber 1

配置一边即可,配置在主动端,然后主动端就会基于选举规则根据本地端口的参数进行一个活动端口选举,我们直接来看选举结果

可以看到,如我们上文所言,当端口优先级PortPri相同时,会根据端口编号PortNo进行选举,值越小越优,果不其然,g0/0/1的端口编号2比g0/0/2的端口编号3小,因此g0/0/1被选中为活动端口,而被动端SW2也根据主动端SW1所选举的活动端口进行活动端口选择,如图

这就是链路聚合静态LACP的一个常规配置,动态LACP就不配置了,这个不知道模拟器支不支持,S系列的交换机反正是没有这个模式,我记得是只有CE云引擎设备支持

拓展:跨设备级链路聚合E-Trunk(源自EVPN的CE双活配置)

前言:

上文所讲的是一个单板型链路聚合,什么叫单板型链路聚合?我的理解是链路聚合组中的所有成员连接的是同一个设备,这就是单板型。而我们接下来要讲的跨设备级链路聚合,即是链路聚合组中的成员连接的是不同的设备,

简介:

E-trunk是在LACP基础上提供了一种更高级的链路聚合方式:跨设备链路聚合,主要用于解决DC(数据中心)虚拟化场景下,CE(Customer)双归属的问题,可以防止CE1向另一端CE2寻址的时候,发送两份广播报文给PE设备(分别给PE1、PE2)。E-trunk实现了双归链路的形成一个主备关系

配置实施:

这是一个简单的CE双归属场景topo,SW1和SW2相当于一个PE,SW3相当于一个CE

我们首先在SW1和SW2配置链路聚合E-Trunk与Eth-Trunk

SW1
lacp e-trunk system-id 0000-0000-0001//类似VRRP中的Virtual-ip,在一个E-trunk组中两个PE维护一个共同的系统ID,因此两端的E-trunk ID也要相同
int vlan 1ip address 1.1.1.1 24
e-trunk 1peer-address 1.1.1.2 source-address 1.1.1.1
int eth-trunk 1mode lacp-statice-trunk 1port link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/2SW2
lacp e-trunk system-id 0000-0000-0001
int vlan 1ip address 1.1.1.2 24
e-trunk 1peer-address 1.1.1.1 source-address 1.1.1.2
int eth-trunk 1mode lacp-statice-trunk 1port link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/2

然后我们再配置SW3

int eth-trunk 1mode lacp-staticport link-type trunkport trunk allow-pass vlan alltrunkport g 0/0/1 to 0/0/2

此时我们来看SW3的链路聚合表

诶,一个选中,一个未选中。应该就是我们前文所说的,双归链路之间形成一个主备关系,主链路被选中,而备链路未选择,我们可以在SW1上看E-trunk表项来验证一下我的说法

如图,这是SW1的e-trunk1表项,可以看到,SW1在e-trunk 1中是一个Master身份,再来看SW2的e-trunk1表项

看,是一个Backup身份,因此在去往Master的链路被选中,而去往backup的链路未选择,符合我们前面所讲的理论。

尾声:

这就是链路聚合大致的内容了,那么我们的链路聚合到此就告一段落了,下次再见

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/46968.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

银行业务知识全篇(财务知识、金融业务知识)

第一部分 零售业务 1.1 储蓄业务 4 1.1.1 普通活期储蓄(本外币) 4 1.1.2 定期储蓄(本外币) 5 1.1.3 活期一本通 9 1.1.4 定期一本通 10 1.1.5 电话银行 11 1.1.6 个人支票 11 1.1.7 通信存款 13 1.1.8 其他业务规…

守护动物乐园:视频AI智能监管方案助力动物园安全与秩序管理

一、背景分析 近日,某大熊猫参观基地通报了4位游客在参观时,向大熊猫室外活动场内吐口水的不文明行为。这几位游客的行为违反了入园参观规定并可能对大熊猫造成严重危害,已经被该熊猫基地终身禁止再次进入参观。而在此前,另一熊猫…

Go: IM系统技术架构梳理 (2)

概述 整个IM系统的一般架构如下 我们这张图展示了整个IM系统的一般架构可见分为四层那最上面这一层是前端,包括哪些东西呢? 它包括两部分,第一部分是跟用户直接交互的比如说各种IOS APP, 各种安卓 APP还有各种 web APP 在浏览器里面打开的以…

WebGL-编译报错,如何定位sendfile报错位置

1)WebGL-编译报错,如何定位sendfile报错位置 2)设置DepthBufferBits和设置DepthStencilFormat的区别 3)Unity打包exe后,游戏内拉不起Steam的内购 4)使用了Play Asset Delivery提交版本被Google报错 这是第3…

前端组件化技术实践:Vue自定义顶部导航栏组件的探索

摘要 随着前端技术的飞速发展,组件化开发已成为提高开发效率、降低维护成本的关键手段。本文将以Vue自定义顶部导航栏组件为例,深入探讨前端组件化开发的实践过程、优势以及面临的挑战,旨在为广大前端开发者提供有价值的参考和启示。 一、引…

R语言画散点图-饼图-折线图-柱状图-箱线图-直方图-曲线图-热力图-雷达图

R语言画散点图-饼图-折线图-柱状图-箱线图-直方图-曲线图-热力图-雷达图 散点图示例解析效果 饼图示例解析效果 折线图示例解析效果 柱状图示例解析效果 箱线图示例解析效果 直方图示例解析效果 曲线图使用 curve() 函数示例效果 使用 plot() 函数示例效果 使用 ggplot2 包绘制…

super和this的作用与区别(java)

目录 (一)super关键字 (1)super的作用 (2)super的用法 2.1:super调用父类成员变量 2.2super调用父类成员方法 (3)super()的使用 (4)super注意…

NAS新品“翻车”后,绿联科技要上市了

在消费电子市场回暖的东风中,又一消费电子知名企业登陆A股。 近日,深圳市绿联科技股份有限公司(下称“绿联科技”)开启申购,将在创业板上市。本次上市,绿联科技的发行价为21.21元/股,发行数量为…

揭秘!Shopee/Lazada自养号测评高效法,三大策略助力商家快速出单

在东南亚电商的版图中,Lazada凭借其庞大的市场覆盖网络及卓越的服务品质,成功吸引了无数商家与消费者的瞩目。然而,对于渴望在Lazada平台上大展宏图的商家而言,出单的难易程度成为了一个值得深入探讨的议题。 一、Lazada出单的挑战…

泰迪科技2024年高校(本科/职业院校)大数据实验室建设及大数据实训平台整体解决方案

高校大数据应用人才培养目标 大数据专业是面向信息技术行业,培养德智体美劳全面发展的大数据领域的高素质管理型专门人才,毕业生具备扎实的管理学、经济学、自然科学、技术应用、人文社科的基本理论, 系统深入的大数据管理专业知识和实践能力&#xff0c…

JavaEE (1)

web开发概述 所谓web开发,指的是从网页中向后端程序发送请求,与后端程序进行 交互. 流程图如下 Web服务器是指驻留于因特网上某种类型计算机的程序. 可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览; 它是一个容器&…

FPGA-计数器

前言 之前一直说整理点FPGA控制器应用的内容,今天就从计数器这个在时序逻辑中比较重要的内容开始总结一下,主要通过还是通过让一个LED闪烁这个简单例子来理解。 寄存器 了解计数器之前先来认识一下寄存器。寄存器是时序逻辑设计的基础。时序逻辑能够避…

细说MCU用DMA控制ADC采样和串口传送的实现方法

目录 一、建立工程 1.相同的配置 2.配置ADC 3.配置DMA 二、代码修改 1.定义存储ADC采样结果的数组 2.启动ADC与定时器 3.编写主程序代码 4.重定义回调函数 5.查看结果 三、修改DMA模式 1. 修改DMA模式为Circular 2.查看结果 采用DMA(Direct Memory Access&#xf…

WebRTC QOS方法十三.1(TimestampExtrapolator接收时间预估)

一、背景介绍 虽然我们可通过时间戳的差值和采样率计算出发送端视频帧的发送节奏,但是由于网络延迟、抖动、丢包,仅知道视频发送端的发送节奏是明显不够的。我们还需要评估出视频接收端的视频帧的接收节奏,然后进行适当平滑,保证…

卷积神经网络【CNN】--池化层的原理详细解读

池化层(Pooling Layer)是卷积神经网络(CNN)中的一个关键组件,主要用于减少特征图(feature maps)的维度,同时保留重要的特征信息。 一、池化层的含义 池化层在卷积神经网络中扮演着降…

JavaScript与DOM的奇妙探险:从入门到精通的实战笔记

文章目录 JavaScript基本说明特点两种使用方式在script中写使用script标签引入JS文件 数据类型介绍特殊值 运算符算数运算符赋值运算符逻辑运算符:![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/bbf5c150699845af837d3c45c926e941.png)条件运算符 数组的…

Java_Docker

镜像和容器: 镜像仓库: 存储和管理镜像的平台,镜像仓库中有非常多常用软件的镜像,Docker官方维护了一个公共仓库​​​​​​:​Docker Hub 部署MySQL: docker run -d \--name mysql \-p 3306:3306 \-e TZAsia/Shang…

Guns v7.3.0:基于 Vue3、Antdv 和 TypeScript 打造的开箱即用型前端框架

摘要 本文深入探讨了Guns v7.3.0前端项目,该项目是基于Vue3、Antdv和TypeScript的前端框架,以Vben Admin的脚手架为基础进行了改造。文章分析了Guns 7.3.0的技术特点,包括其使用Vue3、vite2和TypeScript等最新前端技术栈,以及提供…

如何防止热插拔烧坏单片机

大家都知道一般USB接口属于热插拔,实际任意带电进行连接的操作都可以属于热插拔。我们前面讲过芯片烧坏的原理,那么热插拔就是导致芯片烧坏的一个主要原因之一。 在电子产品的整个装配过程、以及产品使用过程经常会面临接口热插拔或者类似热插拔的过程。…

IDEA的工程与模块管理

《IDEA破解、配置、使用技巧与实战教程》系列文章目录 第一章 IDEA破解与HelloWorld的实战编写 第二章 IDEA的详细设置 第三章 IDEA的工程与模块管理 第四章 IDEA的常见代码模板的使用 第五章 IDEA中常用的快捷键 第六章 IDEA的断点调试(Debug) 第七章 …