八、交换技术原理
(一)交换机
1、交换机介绍
一种用于电(光)信号转发的网络设备,可以为接入交换机的任意两个网络节点提供独享的电信号通路。
工作于第二层的叫交换机,工作于第三层的叫第三层交换机,最常见的是以太网交换机(根据数据链路层MAC地址进行帧交换)
2、分类
(1)按交换方式
- 存储转发——存储、校验、延时大
- 直通式——直接、不校验、速度快
- 碎片过滤——64字节,小的丢弃、大的转发
(2)按协议层次
- 二层交换——MAC地址交换
- 三层交换——IP地址交换
- 多层交换——端口号、协议交换
(3)按交换结构
- 固定式——固定数量端口
- 模块式——预留插槽,预留模块扩展
(4)按配置方式
- 堆叠式——堆叠口,4到9层,统一
- 非堆叠式——级联,不超过4层
(5)按管理类型
- 网管型——支持SNMP和MIB网管协议
- 非网管型——傻瓜交换机,无需配置
- 智能型——支持WEB配置和SNMP、MIB
(6)按适用范围
- 接入层——用户接入,多端口
- 汇聚层——策略控制ACL、VLAN、QoS
- 核心层——高速转发、冗余、均衡
3、交换机堆叠和级联
堆叠是指将一台以上的交换机组合成一个单元共同工作,以便在有限的空间内提供尽可能多的端口。
级联技术将两台或两台以上的交换机通过一定的方式相互连接
4、交换机性能参数和计算
1.包转发率:端口吞吐率,64字节数据包转发能力,单位pps(包/s)
包转发率=千兆端口数×1.488Mbps+百兆端口数×0.1488Mbps+其余端口×相应包转发pps
2.背板带宽:端口处理器和数据总线之间单位时间内传输的最大数据量,单位Gbps(G比特/s)
总带宽=端口数×端口速率×2(全双工)
(二)冲突域和广播域
1、冲突域
在同一个冲突域中的每一个节点都能收到所有被发送的帧,即同一时间内只能有一台设备发送信息的范围
交换机/网桥能分隔冲突域,一个端口一个冲突域
2、广播域
网络中能接收任意设备发出的广播帧的所有设备的集合,即如果站点发出一个广播信号,所有能接收到这个信号的设备的范围。
路由器能分隔广播域,一个端口一个广播域
(二)虚拟局域网VLAN
1、VLAN介绍
- VLAN:根据管理功能、组织机构或应用类型,对物理网络进行分段而形成的逻辑网络,与用户的物理位置无关。
- VLAN采用802.1q标准(虚拟局域网协议,用于生成VLAN标识)。
- 每一个VLAN是一个逻辑网络,发往VLAN之外的分组必须是通过路由器进行转发
- 不同VLAN之间通信,需要路由器或三层交换机
- 属于同一个VLAN的所有端口构成一个广播域,各个VLAN属于不同的广播域
- 新交换机出厂时被预置了VLAN1(管理VLAN),交换机本身的通信(VTP报文、CDT组播以及交换机发出的其他报文都发生在VLAN1中。
- 承载多个VLAN流量的协议组:ISL和802.1q
2、VLAN帧格式
(1)无标记帧
DA(6字节) | SA(6字节) | 类型/长度(2字节) | 数据(46-1500字节) | FCS(4字节) |
(2)有标记帧
DA(6字节) | SA(6字节) | Tag(4字节) | 类型/长度(2字节) | 数据(46-1500字节) | FCS(4字节) |
有标记帧在原来的以太帧中增加了4字节的控制信息,其中包括12位VLAN标识符VID,VID能表示4096个VLAN
(3)有标记帧中的Tag
TPID(2字节) | Priority(3比特) | CFI(1比特) | VID(12比特) |
VLAN标识对用户透明
交换机根据目的地址和Tag进行转发决策,进入目的网段时,交换机删除Tag,恢复原来
3、VLAN划分方式
静态分配VLAN:基于端口
动态分配VLAN:基于MAC地址(2层)、网络层IP(3层)、规则策略(高层)等
4、划分VLAN好处
- 控制网络流量,抑制广播风暴
- 提高网络安全性,不同VLAN之间可做控制
- 网络管理灵活,用户可以随地接入网络,简化了在网络中增加、移除和移动主机的操作
注意:划分VLAN不能直接增强网络安全性
5、VLAN两种端口
接入端口Access(通过单个VLAN)和中继端口Trunk(通过多个VLAN)
6、处理VLAN时,交换机端口之间的两种连接类型
- 接入链路:只能连接具有标准以太网卡的设备,也只能传送属于单个VLAN的数据包。任何连接到接入链路的设备都属于同一广播域。
- 中继链路:在一条物理连接上生成多个逻辑连接,每个逻辑连接属于一个VLAN,在进入中继端口时,交换机在数据包中加入VLAN标记(IEEE 802.11q)
7、VLAN中继协议VTP
VTP通过网络保持VLAN配置统一性,使得同一管理域中的所有交换机共享VLAN配置信息,动态修剪使得中继链路上共享的VLAN都是活动的,要求VTP域中所有交换机都必须配置成服务器。
按照VTP,交换机的运行模式分为
服务器模式Server | 能创建、添加、删除和修改VLAN配置,并从中继端口发出VTP组播帧,把配置信息分发到整个管理域中的所有交换机 |
客户机模式Client | 不允许创建、修改或删除VLAN,但可以监听本管理域中其他交换机的VTP组播信息,并据此修改自己的VLAN配置 |
透明模式Transport | 可进行VLAN配置,但配置信息不会传播到其他交换机。可接收或转发VTP帧,但不能根据VTP帧更新自己的VTP配置 |
交换机默认透明模式、VLAN1、所有端口
8、VLAN注册协议GVRP
在VLAN增加、删除、调整时,自动发广播,保持全网所有的交换机VLAN信息是一直的
按照GVRP,交换机的运行模式为
Normal模式 | VLAN增删减改,广播保持一致 |
Fixed模式 | 只传播手动配置的VLAN信息 |
Forbidden模式 | 只传播VLAN1,不传播其他VLAN |
(三)局域网互联
1、局域网互联设备
2层网桥(生成树网桥和源路由网桥)、3层交换机和路由器
网桥要求3层以上协议相同,1、2层协议不同可互联
2、网桥
数链层设备,可识别数链层MAC地址,有选择地把帧发送到输出端口,网桥也可以有多个端口。
如果网桥端口很多,并配置了加快转发的硬件,就构成了局域网交换机。
3、生成树网桥
(1)生成树网桥STP
生成树网桥又叫透明网桥,采用IEEE 802.1d标准,
基本思想:在网桥之间传递BPDU,比较参数,根据STP打开好端口,阻塞差端口,沿着好端口建立路径,边走边拐弯
应用:以太网
防止二层环路
(2)生成树网桥步骤
- 确定根桥(选BID最小的)
- 确定根端口
- 确定指定桥
- 确定指定端口
- 阻塞剩余端口
- 形成无环网络
(3)生成树网桥相关计算
- 确定根桥ID:BID/网桥优先级/桥ID(8字节)=优先级(2字节)+MAC地址(6字节),都选最小的,优先级0-65535,默认32768(+4096或-4096)
- 确定根端口:优先级+编号,都选最小的,优先级0-255,默认128
- 三小原则:优先级、MAC地址、通路费用(与带宽成反比)
(4)生成树网桥端口的状态
Blocking阻塞 | 接收BPDU,不学习MAC地址,不转发数据帧 |
Listening侦听 | 接收BPDU,不学习MAC地址,不转发数据帧,但交换机向其他交换机通告该端口,参与选举根端口或指定端口 |
Learning学习 | 接收BPDU,学习MAC地址,不转发数据帧 |
Forwarding转发 | 正常转发数据帧 |
Disabled禁用 | MAC端口不参与生成树算法 |
阻塞-20s-侦听-15s-学习-15s-转发
(5)生成树的种类和标准
多生成树 | MSTP | IEEE 802.1s |
快速生成树 | RSTP | IEEE 802.1w |
生成树 | STP | IEEE 802.1d |
端口认证 | 基于用户 | IEEE 802.1x |
多快生口,是s我w弟d兄x
3、源路由网桥
IEEE 802.5标准
基本思想:发送探测帧到目的节点,返回路径以后沿着路径再发送。发送帧在这条路径上就传送,不在这条路径上就发送广播,查询路径,选择最优路径再传送(选好路再走)
应用:令牌环网
4、Q-in-Q
运营商网桥协议PBP,采用IEEE 802.1ad标准。
因为IEEE 802.1Q中定义的VLAN Tag域只有12个比特,仅能表示4096个VLAN,无法满足城域以太网中标识大量用户的需求,于是产生了QinQ技术,拓展VLAN的数量空间。QinQ在原有的802.1Q报文的基础上增加一层802.1Q标签,使得VLAN数量增加到4094×4094。
IEEE 802.1ad标准提供的基本技术是在以太网帧中插入运营商VLAN标记
5、MAC-in-MAC
运营商主干网桥PBB,采用IEEE 802.1ah标准。
IEEE 802.1ah标准提供的是在用户以太帧中再封装一层运营商的MAC帧头
相关文章:
八、交换技术原理
(一)交换机 1、交换机介绍 一种用于电(光)信号转发的网络设备,可以为接入交换机的任意两个网络节点提供独享的电信号通路。 工作于第二层的叫交换机,工作于第三层的叫第三层交换机,最常见的是…...
什么是DHCP?DHCP有什么用?(中科三方)
在IP网络中,每一个连接的设备都需要分配一个唯一的IP地址,才能实现和Internet上其他设备的互联。在一些终端规模较大的网络中,需要为每一个主机手工配置IP地址,以避免IP地址的重复,如果主机发生变更,还要去…...

算法设计-二分
一、有序和单调 二分本质上是一种更加智能的搜索状态空间的方式,他需要状态空间的状态呈现一种“有序的一维数组”的形式,然后再进行搜索。所以一开始的排序是无法避免的。 因为二分的写法问题,所以应当怎样排序也是有一定讲究的&…...

隧道技术基础
隧道技术基础基本概念端口转发应用层代理基本概念 攻击者通过边界主机进入内网,往往会利用它当跳板进行横向渗透,但现在的内部网络大多部署了很多安全设备,网络结构错综复杂,对于某些系统的访问会受到各种阻挠,这就需…...

卡尔曼滤波浅析
文章目录前言任务状态预测外部影响因素外部不确定性状态更新利用测量进一步修正状态合并两个高斯分布公式汇总图形化解释总结(readme)references前言 Kalman Filter算法,是一种递推预测滤波算法,算法中涉及到滤波,也涉…...

Eolink Apikit 创建/生成 API 文档
在 API 研发管理产品中,几乎所有的协作工作都是围绕着 API 文档进行的。 我们在接触了大量的客户后发现,采用 文档驱动 的协作模式会比先开发、后维护文档的方式更好,团队协作效率和产品质量都能得到提高。因此我们建议您尝试基于文档来进行工…...

2023年上半年系统分析师备考法则
截止3月30日,上海、北京等地都开始报名,部分省市已经截止报名,大家如果还没报名成功的赶紧报名,千万别错过了,另外就是别忘了缴费,缴费成功才是报名成功。 报名网址:https://bm.ruankao.org.cn…...

【人工智能】—约束传播、弧约束、问题结果与问题分解、局部搜索CSP
【人工智能】—约束传播、弧约束、问题结果与问题分解、局部搜索CSP约束传播弧约束弧相容算法AC-3问题结构化简约束图-树结构CSP问题的局部搜索CSP的迭代算法举例:4-Queens加速:模拟退火法加速:最小最大优化(约束加权法)小结约束传播 前向检…...
Java设计模式面试专题
1.请列举出在 JDK 中几个常用的设计模式? 单例模式(Singleton pattern)用于 Runtime,Calendar 和其他的一些类中。工厂模式(Factory pattern)被用于各种不可变的类如 Boolean,像 Boolean.value…...

文件(下)——“C”
各位CSDN的uu们你们好呀,今天,小雅兰的内容是文件的知识点,下面,就让我们进入文件的世界吧 文件的顺序读写 文件的随机读写 fseek ftell rewind 文本文件和二进制文件 文件读取结束的判定 文件缓冲区 在上篇博客中,…...

bugku 渗透靶场3
前言 本题一共八个flag,主要是为了练习内网渗透的思路。 解题思路 首先给了一个站长之家-模拟蜘蛛爬取,这个以前见到过,存在sstf漏洞,直接读取文件。 file:///flag既然是要内网渗透,那肯定要看/etc/hosts。 file:…...

NER 任务以及联合提槽任务
KBERT 论文:《K-BERT: Enabling Language Representation with Knowledge Graph》 论文地址:https://arxiv.org/pdf/1909.07606v1 git地址:https://github.com/autoliuweijie/K-BERT SoftLexicon 出自ACL 2020的Simplify the Usage of Lexic…...

scala函数式编程
目录 不同范式对比: 1.面向对象编程 2.函数式编程 2.1函数基本语法 2.2函数和方法的区别 核心概念: 2.3函数定义 2.4函数参数 2.5 函数至简原则 2.6.高阶函数 三.偏函数 四.柯里化函数 五.递归函数 递归函数注意点: 六.控制抽象 1…...

网吧2023:热闹回来了,电竞战歌起
【潮汐商业评论/原创】 大年初四下午,人民公园附近尚未恢复往日热闹,上海网鱼电竞负责人崔潇瀚驱车前往位于人广世贸商场的网鱼电竞。 与广场上三两路人行色匆匆相比,门店显得忙碌异常,前台的服务叫单声响个不停,员工…...

代码随想录算法训练营第五十九天|503.下一个更大元素II、42. 接雨水
LeetCode 503 下一个更大元素II 题目链接:https://leetcode.cn/problems/next-greater-element-ii/ 思路: 方法一:两个for循环遍历单调栈 第一个for循环确定数组中的某个值在右边有最大的数,第二个for循环是为了可以使数组变成循环数…...

9、简单功能分析
文章目录1、静态资源访问1.1、静态资源目录1.2、如果静态资源与controller资源重名1.3、改变默认的静态资源路径1.4、修改静态资源访问前缀1.5、webjar2、欢迎页支持3、自定义 Favicon4、静态资源配置原理4.1、与Web开发有关的相关自动配置类4.2、WebMvcAutoConfiguration 注解…...

如何发送和接收参数?五种参数传递方法
通常情况下,我们可以使用GET或POST来发送请求和数据,但GET和POST两种方法所携带的数据都是比较简单的数据,接下来在我们这个基础上,列举5种比较负责的参数传递方法,并对这些参数如何发送,后台改如何接收做详…...

蓝桥杯C/C++VIP试题每日一练之矩形面积交
💛作者主页:静Yu 🧡简介:CSDN全栈优质创作者、华为云享专家、阿里云社区博客专家,前端知识交流社区创建者 💛社区地址:前端知识交流社区 🧡博主的个人博客:静Yu的个人博客 🧡博主的个人笔记本:前端面试题 个人笔记本只记录前端领域的面试题目,项目总结,面试技…...

Spark大数据处理讲课笔记2.4 IDEA开发词频统计项目
文章目录零、本讲学习目标一、词频统计准备工作(一)启动集群的HDFS与Spark(二)在HDFS上准备单词文件二、本地模式执行Spark程序(一)创建Maven项目(二)添加Spark相关依赖,…...

【ChatGPT 】国内无需注册 openai 即可访问 ChatGPT:ChatGPT Sidebar 浏览器扩展程序的安装与使用
一、前言 问题:国内注册 openai 账号麻烦,新必应有部分人也无法登录成功,存在域名单点登录失败等问题,所以无法真正使用 ChatGPT 解决:大部分人仅需使用 ChatGPT 的搜索功能,无需真正对话,需要…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...

elementUI点击浏览table所选行数据查看文档
项目场景: table按照要求特定的数据变成按钮可以点击 解决方案: <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...