2.3 数据链路层03

2.3 数据链路层03

2.3.7 以太网交换机

1、以太网交换机的基本功能

  • 以太网交换机是基于以太网传输数据的交换机,以太网交换机通常都有多个接口,每个接口都可以直接与一台主机或另一个以太网交换机相连,一般都工作在全双工方式

  • 以太网交换机具有并行性,能同时连通多对接口,使多对主机能同时通信。
    在这里插入图片描述

  • 以太网交换机工作在数据链路层(也包括物理层),它收到帧后,在帧交换表中查找帧的目的MAC地址所对应的接口号,然后通过该接口转发帧。
    假设主机A想向主机B发送帧,交换机收到A发出的帧后,在帧交换表中查找BMAC地址对应的接口号,然后通过该接口转发帧。
    在这里插入图片描述

  • 帧的两种转发方式:

    • 存储转发:交换机在转发之前必须接收整个帧,并进行错误校检,如无错误再将这一帧发往目的地址。帧通过交换机的转发时延随帧长度的不同而变化。
    • 直接交换:采用基于硬件的交叉矩阵(交换机只要检查到帧头中所包含的目的地址就立即转发该帧,而无需等待帧全部的被接收,也不进行错误校验。由于以太网帧头的长度总是固定的,因此帧通过交换机的转发时延也保持不变。)
  • 以太网交换机是一种即插即用设备,其内部的帧交换表是通过自学习算法自动的逐渐建立起来的。

2、以太网交换机自学习和转发帧的流程

刚上电时以太网交换机内部的帧交换表是空的,随着网络中各主机间的通信,通过自学习算法自动的逐渐建立起来帧交换表

如下图所示相互连接的“以太网交换机1”和“以太网交换机2”各自连接了三台主机,构成了一个交换式以太网。为了简单起见各台主机的MAC地址我们用一个对应的大写字母表示,并且假设各台主机知道网络中其他各主机的MAC地址。
在这里插入图片描述

下面我们来了解以太网交换机是如何进行自学习和转发帧的:

  • 主机A发送数据给主机B
    • 该帧从交换机1的接口1进入交换机,交换机1首先进行登记工作,将该帧中的源MAC地址A记录到自己的帧交换表中,并且将接口号1与MAC地址A相对应也记录到帧交换表中。以上的登记工作就称之为交换机的自学习。
    • 交换机1对该帧进行转发,该帧中的目的MAC地址是B,在帧交换表中查找MAC地址B,发现找不到就对该帧进行盲目地转发(也成为泛洪),也就说会将该帧在除接口1以外的其他所有接口进行转发。
    • 主机B在接收到该帧后,根据该帧的目的MAC地址B与自己的MAC地址比较,发现相等就说明该帧是发送给自己的,于是主机B接受该帧,主机C则会丢弃该帧。
    • 该帧从交换机1的接口4通过交换机2的接口2进入交换机2,交换机2首先进行登记工作,将该帧中的源MAC地址A记录到自己的帧交换表中,并且将接口号2与MAC地址A相对应也记录到帧交换表中。
    • 交换机2对该帧进行转发,该帧中的目的MAC地址是B,在帧交换表中查找MAC地址B,发现找不到就对该帧进行盲目地转发(也成为泛洪),也就说会将该帧在除接口2以外的其他所有接口进行转发。
    • 主机D、E、F丢弃该帧。
      在这里插入图片描述

注意:在帧交换表中每条记录都有自己的有效时间,到期自动删除。这是因为MAC地址与交换机接口的对应关系并不是永久性的 (对应的接口可能会更换计算机)

在这里插入图片描述

3、以太网交换机的生成树协议STP

  • 思考:如何提高以太网的可靠性?假如在网络中有三台交换机A、B、C,他们之间的连接方式如下图所示,假如他们之间的链路出现了故障则会影响各个交换机之间的通信。
    在这里插入图片描述

  • 添加冗余链路可以提高以太网的可靠性:在交换机B和C之间添加冗余链路。但是余链路也会带来负面效应----形成网络环路
    在这里插入图片描述

  • 网络环路带来的问题:

    • 广播风暴:广播帧在各个交换机之间反复转发,分别按顺时针和逆时针方向同时兜圈。广播风暴会大量消耗网络资源,使得网络无法正常转发其他数据帧。
    • 主机收到反复的广播帧,会大量消耗主机的资源
    • 交换机的帧交换表震荡:同一个MAC地址的记录在其他错误记录之间反复震荡。
      在这里插入图片描述
  • 以太网交换机使用生成树协议STP(Spanning Tree Protocol)可以在增加冗余链路来提高网络可靠性的同时又避免网络环路带来的各种问题

    • 不论交换机之间采用怎样的物理连接,交换机都能够自动计算并构建一个逻辑上没有环路的网络,其逻辑拓扑结构必须是树型的(无逻辑环路)。最终生成的树型逻辑拓扑要确保连通整个网络
    • 当首次连接交换机或网络物理拓扑发生变化时(有可能是人为改变或故障),交换机都将进行生成树的重新计算。
      在这里插入图片描述

生成树算法STA可自行了解

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

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

相关文章

C程序技能:彩色输出

在终端上输出的字体总是单色,但在一些场景彩色输出更能满足需求,在Linux环境中,可以使用终端控制字符来设置输出字符的颜色,在部分版本的Windows系统中也可以使用。本文参考一些文献简要介绍一下在Windows下彩色输出的方法。 1. …

Rust-借用和生命周期

生命周期 一个变量的生命周期就是它从创建到销毁的整个过程。其实我们在前面已经注意到了这样的现象: 然而,如果一个变量永远只能有唯一一个入口可以访问的话,那就太难使用了。因此,所有权还可以借用。 借用 变量对其管理的内存…

从零开始:生产环境如何部署 Bytebase

Bytebase 是面向研发和 DBA 的数据库 DevOps 和 CI/CD 协同平台。目前 Bytebase 在全球类似开源项目中 GitHub Star 数排名第一且增长最快。 Bytebase 的架构 Bytebase 是一个单体架构 (monolith),前端是 Vue3 TypeScript,后端是 Go。前端利用 Go 1.6 …

MySQL面试题 | 09.精选MySQL面试题

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

linux下485通信调试记录

1、使用linux下使用串口调试助手 linux下可以安装并使用下述串口调试工具进行串口测试: 1.1、cutecom cutecom是linux下常用的图形化串口调试软件,通过以下命令安装并打开: sudo apt-get install cutecom sudo cutecom显示如下&#xff1…

【IPC通信--共享内存】

进程间通信目的 数据传输:一个进程需要将它的数据发送给另一个进程 资源共享:多个进程之间共享同样的资源。 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如…

【CSS】解决height = line-height 文字不垂直居中(偏上、偏下)的问题

解决办法1: 查看 font-family 属性,确认是否是因为字体而导致的不垂直居中问题。 其他小知识: 基线就是小写x字母的下边缘(线) 就是我们常说的 基线。line-height 属性设置的行高也就是定义的两行文字基线之间的距离! 参考文章:…

网络共享服务

存储类型:直连式(DAS):距离最近,存储设备且直接连接到服务器上 存储区域网络(SAN):适用于大型应用或数据库系统,可以使用文件的空间, 以及管理空间…

canvas绘制图片的三种方法(图文示例)

查看专栏目录 canvas示例教程100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…

Apache StringUtils:Java字符串处理工具类

简介 在我们的代码中经常需要对字符串判空,截取字符串、转换大小写、分隔字符串、比较字符串、去掉多余空格、拼接字符串、使用正则表达式等等。如果只用 String 类提供的那些方法,我们需要手写大量的额外代码,不然容易出现各种异常。现在有…

任务13:使用MapReduce对天气数据进行ETL(获取各基站ID)

任务描述 知识点: 天气数据进行ETL 重 点: 掌握MapReduce程序的运行流程熟练编写MapReduce程序使用MapReduce进行ETL 内 容: 编写MapReduce程序编写Shell脚本,获取MapReduce程序的inputPath将生成的inputPath文件传入到Wi…

AWS边缘媒体安全交付方案

企业如何在AWS上的边缘站点,安全的将优质视频内容交付给用户,并且禁止哪些未经过授权的访问?九河云将基于AWS平台提供边缘媒体安全交付解决方案 解决方案详情 在通过 Amazon CloudFront 交付时,免受未经授权的访问。基于添加到交…

单页面vite打包学习

前端工程化本人真的很发怵,一直也没有专心去突破一下,都是能用就用,所以今天小小学习一下打包,先从单页面应用的vite打包开始。本文主要是一些我的大白话和有限的经验,如有问题望指正。 一、问题 网页要从服务器请求…

读书笔记——《未来简史》

前言 《未来简史》是以色列历史学家尤瓦尔赫拉利的人类简史三部曲之一。三部分别为《人类简史》《未来简史》《今日简史》。其中最为著名的当然是《人类简史》,非常宏大的一本关于人类文明历史的书籍,绝对可以刷新历史观,《人类简史》这本书…

磁盘raid1降级后,mdxxx rota发生变化

背景 虚拟机系统盘vda后端使用宿主机ssd盘lvm组raid1,虚拟机内部查看vda磁盘类型(rota=1):机械硬盘,vda后端raid1降级导致磁盘类型降级:rota 0---->1,vda磁盘类型显示不正确,应该是ssd类型(rota=0); 分析 1.基础 1.1 linux磁盘类型 Rota表示磁盘类型:(1)0,表…

css3过渡与动画

css3过渡与动画 前言过渡过渡的基本使用 transition兼容性transition属性基本使用哪些属性可以参与过渡all过渡的四个小属性 过渡的缓动效果常用缓动参数贝塞尔曲线 过渡效果实战 动画动画的定义和调用动画的执行次数 动画效果实战 案例:发光的灯泡案例:…

前端框架前置学习Node.js(2)npm使用,Node.js总结

npm - 软件包管理器 定义 npm是Node.js标准的软件包管理器 npm仓库中包含大量软件包,使其成为世界上最大的单一语言代码仓,并且可以确定几乎可用于一切的软件包 最初是为了下载和管理Node.js包依赖的方式,但其现在已成为前端JavaScript中使用的工具 使用: 1.初始化清单文…

编译 FastDFS 时报错 fatal error: sf/sf_global.h: No such file or directory 解决办法

编译 FastDFS 时,报错如下 gcc -Wall -D_FILE_OFFSET_BITS64 -D_GNU_SOURCE -g -O1 -DDEBUG_FLAG -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common -I/usr/local/include In file included from ../common/fdfs_global.c:21:0: ../common/fdf…

力扣每日一题--2088. 统计农场中肥沃金字塔的数目

看到这道题有些人很容易放弃,其实这道题不是很难,主要是题目长,读的容易让人放弃,但是 只要抓住一些性质就可以解决该问题。 本题中的定义放到图像里其实就是个金字塔,下层的那部分比上一层的那部分,长度加…

【PID精讲 14 】积分分离PID和抗积分饱和PID

文章目录 一、积分分离PID1.1 积分分离PID算法基本思想1.2 积分分离PID算法实现步骤1.3 积分分离PID算法1.4 积分分离PID算法实现1.5 积分分离PID算法仿真实例1.6 积分分离PID算法的优缺点 二、抗积分饱和PID2.1 积分饱和现象2.2 抗积分饱和算法2.3 抗积分饱和算法实现2.4 抗积…