HCIA-11.以太网链路聚合与交换机堆叠、集群

链路聚合背景

拓扑组网时为了高可用,需要网络的冗余备份。但增加冗余容易后会出现环路,所以我们部署了STP协议来破除环路。

但是,根据实际业务的需要,为网络不停的增加冗余是现实需要的一部分。

那么,为了让网络冗余符合用户增长的流量,需要增加带宽时怎么办?

现实中,一条1000M的带宽和10000M的带宽的建设成本,差异是巨大的。为了节省网络组建的成本,我们通过添加链路来增加带宽是最优方案:

A1、添加链路相当于增加了链路冗余,会被STP的防环机制阻塞掉。

学习目标

  • 学完本课程后,您将能够:
  • 了解链路聚合的作用
  • 了解链路聚合的分类
  • 理解LACP模式的链路聚合协商过程
  • 了解iStack和CSS的优点与原理
  • 了解链路聚合与堆叠技术常见应用与组网

1、网络的可靠性需求

1.1、网络的可靠性

网络的可靠性指当设备或者链路出现单点或者多点故障时保证网络服务不间断的能力。

网络的可靠性可以从单板、设备、链路多个层面实现。

随着网络的快速普及和应用的日益深入,各种增值业务得到了广泛部署,网络中断可能导致大量业务异常、造成重大经济损失。因此,作为承载业务主体的基础网络,其可靠性成为备受关注的焦点。

1.2、单板可靠性

  • 框式交换机由机框、电源模块、风扇模块、主控板、交换网板(SFU)、线路板(LPU)构成。
  • 机框:为各种板卡、模块提供插槽,实现板卡间的通信。
  • 电源模块:设备的供电系统
  • 风扇模块:设备的散热系统
  • 主控板(MPU,Main Processing Unit):负责整个系统的控制平面和管理平面。
  • 交换网板(SFU,Switch Fabric Unit):负责整个系统的数据平面。数据平面提供高速无阻塞数据通道,实现各个业务模块之间的业务交换功能。
  • 线路板(LPU,Line Processing Unit):线路处理单元是物理设备上用于提供数据转发功能的模块,提供不同速率的光口、电口。

  • 以S12700E-8为例,设备提供8个线路板槽位、4个交换网板槽位、2个主控板槽位、6个电源模块槽位、4个风扇模块槽位。
  • 框式交换机配置多个主控板、交换网板可保证设备自身的可靠性,单个槽位的交换网板、主控板损坏不影响设备的正常运行。
  • 框式交换机的线路板损坏后,该板卡上的接口无法正常转发数据。

1.3、设备可靠性

设备无冗余设计的网络中,下游交换机采用单上行接入,上行交换机的接口故障或设备故障会导致下游网络全部中断。

设备冗余设计的网络中,下游交换机双上行接入,采用链路一主一备的方式,主链路上行接口、设备故障可以切换到备份链路,通过备份设备转发。

1.4、链路可靠性

为保证设备间链路可靠性,在设备间部署多条物理线路,为防止环路STP只保留一条链路转发流量,其余链路成为备份链路。

2、链路聚合技术原理与配置

2.1、基本原理

链路聚合:Eth-trunk,通过虚拟化(多虚一)将多条物理链路逻辑上整合为一条链路。

逻辑上的链路是STP计算的链路(即STP不会再计算物理链路)。

Eth-trunk设计了相应的机制防止多条物理链路出现环路:在一个链路捆绑组中的物理接口1收到的数据,不会再从链路捆绑组中的其它物理接口转发。

2.1.1、提升链路带宽

设备之间存在多条链路时,由于STP的存在,实际只会有一条链路转发流量,设备间链路带宽无法得到提升。

2.1.2、以太网链路聚合

以太网链路聚合Eth-Trunk:简称链路聚合,通过将多个物理接口捆绑成为一个逻辑接口,可以在不进行硬件升级的条件下,达到增加链路带宽的目的。

2.1.3、链路聚合基本术语/概念

A1、聚合组(Link Aggregation Group,LAG):若干条链路捆绑在一起所形成的的逻辑链路。每个聚合组唯一对应着一个逻辑接口,这个逻辑接口又被称为链路聚合接口或Eth-Trunk接口。

A2、成员接口和成员链路:组成Eth-Trunk接口的各个物理接口称为成员接口。成员接口对应的链路称为成员链路。

A2.1、活动接口和活动链路:活动接口又叫选中(Selected)接口,是参与数据转发的成员接口。活动接口对应的链路被称为活动链路(Active link)

A2.2、非活动接口和非活动链路:又叫非选中(Unselected)接口,是不参与转发数据的成员接口。非活动接口对应的链路被称为非活动链路(Inactive link)。

A3、聚合模式 :根据是否开启LACP(Link Aggregation Control Protocol,链路聚合控制协议),链路聚合可以分为手工模式LACP模式

A4、其他概念:活动接口上限阈值和活动接口下限阈值。

2.2、手工模式

设备老旧、低端,不支持LACP协议,我们就采用手工模式。

手工模式由缺点,是 单通 的。

[S1]interface Eth-Trunk #创建一个聚合组

[S1-Eth-Trunk1]mode manual load-balance  #设置工作模式为手工静态(默认的模式)

[S1-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 0/0/2  #将物理接口添加进聚合组

[S1]int gi 0/0/3

[S1-GigabitEthernet0/0/3]eth-trunk#将物理接口添加进聚合组

2.2.1、手工模式的Eth-Trunk的问题:

A1、链路两端不能相互检测,容易造成单通问题:

A1.1、没有报文检测机制;

A1.2、只要接口是UP状态,就认为对方可达。

情景1、没有报文检测机制:

S1交换机是Eth-Trunk端口,与S2相连且为RP口。

S2交换机有3个端口与S1的Eth-Trunk连接,且都为DP口。

现在,两端没有AP阻塞口,一定会:

形成小的环路;

S2不知该通过哪个接口与S1通信?

情景2、只要接口是UP状态,就认为对方可达:

在S1 GE02口与S2断开的情况下,S1交换机的Eth-Trunk三个口都是正常连接的:

而S2与S1连接的GE 02口已断开。

因为Eth-Trunk手工聚合通信发送报文接口是随机的,所以当S2向S1发送的报文通过S1的GE 02口发出时,就会出现单通。

2.3LACP模式

2.3.1、特点

1、通过交互LACPDU检测链路两端的接口状态;

2、可以设置备份链路。

例:用户需要"2千兆"带宽,且需要存在备份链路,当主链路失效,备份链路转发数据。

[S1]interface Eth-Trunk 1

[S1-Eth-Trunk1]mode lacp-static  #设置链路聚合模式为LACP

[S1-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 0/0/2 0/0/3

[S2]执行与S1相同的Eth-Trunk配置。

[S2-Eth-Trunk1]max active-linknumber 2  #设置最大活跃链路为2(默认为8

2.3.2、链路聚合两端的带宽

链路聚合的“一端”要求是同速率,同带宽。

链路聚合的“两端”不是同速率、同带宽的链路的情况,则向下兼容(一端为百兆链路、一端为千兆链路,则取百兆链路为最大带宽)。

链路聚合的两端,聚合组号没有一致性要求。

2.3.3、在聚合组中确定某接口为备份接口

每一个接口都有对应的LACP接口优先级,优先级值越小越高;

优先级值相等,则比较接口编号,越小越高。

[S2-GigabitEthernet0/0/1]lacp priority  #设置接口的LACP优先级,只在备份接口未选举前生效

如下,即时变更了0/0/1口的优先级,0/0/3口依然是备份口,只有等到下一次主备选举,才能生效。

在聚合链路的两端,需要选举一个主动端设备来确定备份接口的选择,被动端则使用主动端选举的结果。

2.3.4、如何选举主动端

每一个运行了LACP的交换机都会存在LACP系统优先级:

优先级值越小越高;

优先级值相同,则比较MAC地址,越小越高。

[S1]lacp priority ?  #修改LACP全局优先级

  INTEGER<0-65535>  Priority value, the default value is 32768

2.3.5、负载分担

2.3.5.1、基于包

在使用Eth-Trunk转发数据时,由于聚合组两端设备之间有多条物理链路,如果每个数据帧在不同的链路上转发,则有可能导致数据帧到达对端时间不一致,从而引起数据乱序。

2.3.5.2、基于流(华为设备默认基于流转发)

Eth-Trunk推荐采用逐流负载分担的方式,即一条相同的流负载到一条链路,这样既保证了同一数据流的数据帧在同一条物理链路转发,又实现了流量在聚合组内各物理链路上的负载分担。

常见的模式有:源IP、源MAC、目的IP、目的MAC、源目IP、源目MAC。

[S2-Eth-Trunk1]load-balance ?

dst-ip       According to destination IP hash arithmetic

dst-mac   According to destination MAC hash arithmetic

src-dst-ip According to source/destination IP hash arithmetic

src-dst-mac  According to source/destination MAC hash arithmetic

src-ip       According to source IP hash arithmetic

src-mac   According to source MAC hash arithmetic

2.3.x、扩展

链路聚合的成员接口都会发送LACPDU(不管是活跃链路还是非活跃链路);

在多个活跃的成员接口中,会随机选择一个接口发送STP报文。

3、堆叠/集群概述

3.1、什么是堆叠、集群

堆叠(iStack):多台支持堆叠特性的交换机通过堆叠线缆连接在一起,从逻辑上变成一台交换设备,作为一个整体参与数据转发。主要针对盒式设备,最大支持16台设备融合组网。

集群(Cluster Switch System,CSS ):将两台支持集群特性的交换机设备组合在一起,从逻辑上组合成一台交换设备。

主要针对框式设备,最大支持2台设备融合组网,一般做核心。

3.2、堆叠、集群的优势

↓↓↓  CSS、iStack网络的逻辑形态  ↓↓↓

交换机多虚一:堆叠交换机对外表现为一台逻辑交换机,控制平面合一,统一管理。

转发平面合一:堆叠内物理设备转发平面合一,转发信息共享并实时同步。

跨设备链路聚合:跨物理设备的链路被聚合成一个Eth-Trunk端口,和下游设备实现互联。

指令集

指令

功能

interface Eth-Trunk ?

<0-63>  Eth-Trunk interface number
创建一个聚合组。

[Eth-Trunk1]mode ?

动态:lacp-static  Static working mode

静态:manual       Manual working mode

[Eth-Trunk1]mode manual ?

手工静态模式

load-balance  Load balance working mode

[S1-GigabitEthernet0/0/3]eth-trunk 1

将GE 0/0/3接口添加进聚合组1

trunkport GigabitEthernet 0/0/1 0/0/2

将GE 0/0/1和GE 0/0/2接口添加进组合组1

dis interface Eth-Trunk ?

显示Eth-Trunk聚合组状态

mode lacp-static

设置链路聚合的模式为LACP

lacp-static  Static working mode

manual       Manual working mode

max active-linknumber ?

设置最大活跃链路为2(默认为8)

INTEGER<1-8>  Value of max active linknumber

lacp priority

INTEGER<0-65535>  Priority value, the default value is 32768

]load-balance ?

设置负载分担的方式

dst-ip       According to destination IP hash arithmetic

dst-mac      According to destination MAC hash arithmetic

src-dst-ip   According to source/destination IP hash arithmetic

src-dst-mac  According to source/destination MAC hash arithmetic

src-ip       According to source IP hash arithmetic

src-mac      According to source MAC hash arithmetic

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

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

相关文章

Unity基于C#+UGUI解决方案,制作每日签到系统(本地存储签到数据)

一、需求介绍:基于本地存储系统制作一个每日签到系统界面,相关签到界面如下图所示,点击“签到有礼”按钮后就会跳转到“每日登录礼”这个界面,点击“立即签到”按钮之后,按钮就会置灰,而且按钮的文字会变成“等待明日”。 二、制作界面显示相关功能,需要在Unity中新建一…

AI本地部署

文档加载&#xff08;Document Loading&#xff09;&#xff1a;从多种不同来源加载文档。LangChain提供了100多种不同的文档加载器&#xff0c;包括PDF在内的非结构化的数据、SQL在内的结构化的数据&#xff0c;以及Python、Java之类的代码等​ •文本分割&#xff08;Splitti…

精准车型识别:视觉分析技术的力量

随着智慧城市和智能交通系统的快速发展&#xff0c;车型识别检测成为交通管理、安全监控和数据分析的关键技术之一。利用视觉分析的方式&#xff0c;我们可以高效、准确地检测监控下的车辆类型、车牌信息及车流量&#xff0c;为城市交通管理提供有力支持。本文将从背景、技术实…

上下文微调(Contextual Fine-Tuning, CFT)提高大型语言模型(LLMs)在特定领域的学习和推理能力

大型语言模型(LLMs)在开放领域任务中表现出色,但在快速演变的专业领域(如医学、金融)中面临挑战: 知识更新难题:传统指令微调(Instruction Fine-Tuning, IFT)依赖显式指令,难以适应动态知识。灾难性遗忘:持续预训练(Continued Pretraining, CPT)可能导致模型遗忘已…

在 LaTeX 中强制表格位于页面顶部

在 LaTeX 中强制表格位于页面顶部&#xff0c;可以通过以下 多种方法结合使用&#xff0c;按优先级推荐&#xff1a; 方法 1&#xff1a;使用 [!t] 位置限定符 原理&#xff1a;通过 [!t] 强制 LaTeX 优先将表格放置在页面顶部&#xff08;Top&#xff09;&#xff0c;! 表示忽…

kotlin与MVVM的结合使用总结(二)

在 MVVM&#xff08;Model - View - ViewModel&#xff09;架构中&#xff0c;M 层即 Model 层&#xff0c;主要负责数据的管理、存储和获取&#xff0c;它与业务逻辑和数据处理相关。在 Kotlin 中实现 MVVM 的 M 层&#xff0c;通常会涉及数据类的定义、数据的本地存储与远程获…

电子元器件选型与实战应用—16 怎么选一个合适的MCU芯片?

文章目录 1. 选型要素1.1 价格1.2 技术支持1.3 厂家优势1.4 功耗1.5 特殊功能1.6 统计外设1.7 确定外设占用的内存和flash大小1.8 确定外设通信接口1.9 确定外设通信接口的电平1.10 确定外设的GPIO数量1.11 确定外设的供电和功耗1.12 确定外设GPIO的种类1.13 确定ADC的数量1.14…

VSCode 搭建C++编程环境 2025新版图文安装教程(100%搭建成功,VSCode安装+C++环境搭建+运行测试+背景图设置)

名人说&#xff1a;博观而约取&#xff0c;厚积而薄发。——苏轼《稼说送张琥》 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、VScode下载及安装二、安装 MinGW-w64 工具链三、Windows环境变量配置四、检查 M…

Django系列教程(7)——路由配置URLConf

目录 URLconf是如何工作的? path和re_path方法 更多URL配置示例 URL的命名及reverse()方法 使用命名URL 硬编码URL - 不建议 URL指向基于类的视图(View) 通过URL传递额外的参数 小结 Django的项目文件夹和每个应用(app)目录下都有urls.py文件&#xff0c;它们构成了D…

transformer bert 多头自注意力

输入的&#xff08;a1,a2,a3,a4&#xff09;是最终嵌入&#xff0c;是一个(512,768)的矩阵&#xff1b;而a1是一个token&#xff0c;尺寸是768 a1通过wq权重矩阵&#xff0c;经过全连接变换得到查询向量q1&#xff1b;a2通过Wk权重矩阵得到键向量k2&#xff1b;q和k点乘就是值…

Spring Boot + MyBatis-Plus 项目目录结构

以下是一个标准的 Spring Boot MyBatis-Plus 项目目录结构及文件命名规范&#xff0c;包含每个目录和文件的作用说明&#xff0c;适用于中大型项目开发&#xff1a; 项目根目录结构 src/ ├── main/ │ ├── java/ # Java 源代码 │ │ └── com/…

Webpack优化前端性能

Webpack优化前端性能☆☆ 涵盖了代码分割、懒加载、压缩、缓存优化、Tree Shaking、图片优化、CDN使用等多个方面。 Webpack优化前端性能详解(2025综合实践版) Webpack作为现代前端工程化的核心工具,其优化能力直接影响项目的首屏速度、交互流畅度和用户体验。以下从代码维…

ardunio R4 WiFi连接实战

ardunio WiFi连接模板 ardunio R4 WiFi 开发板有着不错的性能和板载内存&#xff0c;本机自带 WiFi 连接模块&#xff0c;可以完成简单的网络服务。对于这个小东西我情有独钟&#xff0c;也总希望能够用它来做些什么&#xff0c;所以先从 WiFi 连接开始学起&#xff0c;未来考…

C++11 编译使用 aws-cpp-sdk

一、对sdk的编译前准备 1、软件需求 此文档针对于在Linux系统上使用源码进行编译开发操作系统使用原生的contos7Linux。机器配置建议 内存8G以上,CPU 4个 以上GCC 4.9.0 及以上版本Cmake 3.12以上 3.21以下apt install libcurl-devel openssl-devel libuuid-devel pulseaudio-…

得物 Android Crash 治理实践

一、前言 通过修复历史遗留的Crash漏报问题&#xff08;包括端侧SDK采集的兼容性优化及Crash平台的数据消费机制完善&#xff09;&#xff0c;得物Android端的Crash监控体系得到显著增强&#xff0c;使得历史Crash数据的完整捕获能力得到系统性改善&#xff0c;相应Crash指标也…

SpringBoot3+Lombok如何配置logback输出日志到文件

Background/Requirement SpringBoot3Lombok如何配置logback输出日志到文件&#xff0c;因为我需要对这些日志进行输出&#xff0c;控制台输出和文件输出&#xff0c;文件输出是为了更好的作为AuditLog且支持滚动式备份&#xff0c;每天一个文件。 Technical Solution 1.确保你…

主流向量数据库对比

在 AI 的 RAG&#xff08;检索增强生成&#xff09;研发领域&#xff0c;向量数据库是存储和查询向量嵌入的核心工具&#xff0c;用于支持高效的语义搜索和信息检索。向量嵌入是文本或其他非结构化数据的数值表示&#xff0c;RAG 系统通过这些嵌入从知识库中检索相关信息&#…

搞定python之四----函数、lambda和模块

本文是《搞定python》系列专栏的第四篇&#xff0c;通过代码演示列python自定义函数、lambda和模块的用法。本文学习完成后&#xff0c;python的基础知识就完了。后面会学习面向对象的内容。 1、自定义函数 # 测试python自定义函数# 有参数&#xff0c;没有返回值 def say_he…

[操作系统] 学校课程关于“静态优先级抢占式调度“作业

今天我们来分享两道题目哈, 学校弄得题目. T1: 静态优先级, 抢占式(1为高优先级) 图解: 以下是静态优先级抢占式调度的解题过程和结果&#xff1a; 解题思路&#xff1a; 优先级规则&#xff1a; 数值越小优先级越高。新进程到达时&#xff0c;若其优先级高于当前运行进程&…

洛谷P1320 压缩技术(续集版)

P1320 压缩技术&#xff08;续集版&#xff09; 题目描述 设某汉字由 N N N \times N NN 的 0 \texttt 0 0 和 1 \texttt 1 1 的点阵图案组成。 我们依照以下规则生成压缩码。连续一组数值&#xff1a;从汉字点阵图案的第一行第一个符号开始计算&#xff0c;按书写顺序从…