【网络设备】交换机的概念、工作原理、功能以及以太网帧格式

个人主页:insist--个人主页​​​​​​

本文专栏:网络基础——带你走进网络世界

本专栏会持续更新网络基础知识,希望大家多多支持,让我们一起探索这个神奇而广阔的网络世界。

目录

一、认识交换机

二、交换机的主要功能

1、数据的转发

2、端口隔离

3、负载均衡和带宽控制

三、以太网帧格式

四、交换机的工作原理

1、接收数据帧

2、学习MAC地址

3、广播未知数据帧

4、记录MAC地址表

5、交换机实现单播通信


前言

在计算机网络中,交换机是较为常用的设备,本文将谈谈交换机的概念、主要功能、工作原理以及以太网帧格式。

6de4ceebba364630b97ef12d794c7af4.jpg


一、认识交换机

交换机(Switch)全名叫做以太网交换机。是一种较为常见的网络设备,它的作用是在计算机网络中交换数据。目前最常用的交换机就是以太网交换机,除此之外,还有电话语音交换机、光纤交换机等等。如下图就是交换机:

735b92297f724ed5957c3d808692c4a6.jpg


二、交换机的主要功能

交换机的主要功能包括以下几个方面:

1、数据的转发

交换机在接收到数据包后,会根据目标地址判断并将其转发到对应的端口,从而实现不同设备之间的通信。这种可以保证数据传输的高效性和稳定性

2、端口隔离

交换机具有端口隔离的功能,能够将不同用户或者不同网络之间的数据进行隔离,防止出现数据泄露和信息安全问题。值得注意的是采用端口隔离会浪费有限的VLAN资源

小知识:交换机还支持VLAN技术,通过划分VLAN,能够进一步加强网络的安全性和管理性。

3、负载均衡和带宽控制

当多台设备使用同一个交换机时,交换机可以实现负载均衡和带宽控制的功能。通过智能路由和流量控制,可以为不同设备提供不同的网络带宽和速度,从而达到更加高效的数据传输。


三、以太网帧格式

337a5956e15c4f5eb76a1a839585a758.png

802.3/802.2是以太网的最常见帧格式,它包含以下字段:

  1. 前导码:用于与接收设备同步的7字节字段。
  2. 帧起始定界符:这是一个特殊的字节,用于指示帧的开始。
  3. 目的地址:这是一个6字节的字段,用于标识帧的目标设备。
  4. 源地址:这也是一个6字节的字段,用于标识发送该帧的设备。
  5. 类别:这个字段用于表示上层协议的类型。
  6. 数据:这是帧的主要部分,包含实际传输的数据。
  7. 帧校验序列(FCS):这是一个包含32位循环冗余校验(CRC)的字段,用于验证数据是否在传输过程中出现损坏。

四、交换机的工作原理

交换机的工作流程主要包括以下几个步骤:

1、接收数据帧

当交换机接收到一个数据帧时,会先检查帧的目的MAC地址,然后根据目的MAC地址和自己的MAC地址表来判断应该将数据帧发送到哪个端口。

2、学习MAC地址

如果交换机的MAC地址表中没有对应的表项,它会将接收到的数据帧的源MAC地址和接收端口的映射关系添加到MAC地址表中

小知识:如果在老化时间内再次收到该MAC地址的数据帧,交换机会刷新对应的MAC地址和端口的映射关系。

3、广播未知数据帧

如果数据帧的目的MAC地址不在MAC地址表中,或者目的MAC地址为广播地址,交换机会泛洪该帧,将该帧发送到除接收端口以外的所有端口

名词解释:泛洪(Flooding)是交换机使用的一种数据流传递技术。当交换机从某个接口收到数据帧后,它会从除该接口之外的所有其他接口发送该数据帧。

4、记录MAC地址表

当交换机的MAC地址表中已经存在目的MAC地址的表项时,交换机会将接收到的数据帧的目的MAC地址和接收端口的映射关系记录到MAC地址表中。

5、交换机实现单播通信

当交换机需要发送数据给一个已知的目的MAC地址时,它会直接将数据帧发送到对应的端口。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ARP欺骗(大白话)

前提条件: 有三台主机,PC1,PC2,PC3,现要实现PC1与PC2的关联(如图) 不存在ARP欺骗时 步骤: 首先查看arp表(有ip和mac的关系) 如果表中有PC2的信息&#xf…

【Python数据分析】数据分析之numpy基础

实验环境:建立在Python3的基础之上 numpy提供了一种数据类型,提供了数据分析的运算基础,安装方式 pip install numpy导入numpy到python项目 import numpy as np本文以案例的方式展示numpy的基本语法,没有介绍语法的细枝末节&am…

打破对ChatGPT的依赖以及如何应对ChatGPT的错误和幻觉

​ OpenAI的ChatGPT是第一个真正流行的生成式AI工具,但它可能不是最好的。现在是时候扩大你的AI视野了。 ChatGPT成为了基于大语言模型(LLM)的聊天机器人的同义词。但是现在是时候停止对ChatGPT的痴迷,开始发现这个新世界中强大的替代品了。 首先&a…

保姆级教程之SABO-VMD-SVM的西储大学轴承诊断

之前写过一篇优化核极限学习机的轴承诊断,今天再出一期基于SVM的轴承诊断。 依旧是包含了从数据处理,到减法优化器SABO算法优化VMD参数,再到支持向量机的故障诊断,实现故障诊断的全流程,其他类型的故障诊断均可参考此流…

聚观早报|OpenAI宣布推出企业版ChatGPT;苹果公司开设8家新店

【聚观365】8月30日消息 OpenAI宣布推出企业版ChatGPT 比亚迪上半年净利润109.5亿元 歌尔股份上半年净利润4.22亿元 一起教育科技Q2营收6925万元 苹果公司今年开设8家新店 OpenAI宣布推出企业版ChatGPT 据外媒报道,当地时间周一,美国人工智能研究…

XGBoost,NVIDIA是什么

目录 XGBoost 算法层面 什么是 XGBoost GBDT是什么 GBDT中的GB 为何选择 XGBoost? XGBoost 的优势和属性 XGBoost 和数据科学家 为何 XGBoost 在 GPU 上表现更出色 XGBoost RAPIDS GPU 加速的 XGBoost NVIDIA是什么 使用 Spark XGBoost 的 GPU 加速端…

04、添加 com.fasterxml.jackson.dataformat -- jackson-dataformat-xml 依赖报错

Correct the classpath of your application so that it contains a single, compatible version of com.fasterxml.jackson.dataformat.xml.XmlMapper 解决: 改用其他版本,我没写版本号,springboot自己默认的是 2.11.4 版本 成功启动项目…

忘记密码-小米机型 其他安卓机型账号锁 设备锁的分析与刷写某第三方解锁包输入“注册码”

重要提示: 博文的主要目的是分析安卓机型账号锁的安全性和解决方法。操作仅限于自己的机型忘记密码 手机号不用过了保修期导致无法通过官方解锁的操作,请勿用于非法途径 在开始前。对于锁的认知可以参考这篇博文 安卓搞机玩机-什么是“锁 ” BL锁 屏幕锁…

Android Gradle 同步优化

作者:究极逮虾户 很多人听到方法论三个字,就觉得我要开始pua,说我阿里味,但是我觉得这个查问题的方式可能会对大家有点帮助。 很多人都会有这样的困扰,给你的一个工作内容是一个你完全陌生的东西,第一选择…

迁移学习:实现快速训练和泛化的新方法

文章目录 迁移学习的原理迁移学习的应用快速训练泛化能力提升 迁移学习的代码示例拓展应用与挑战结论 🎉欢迎来到AIGC人工智能专栏~迁移学习:实现快速训练和泛化的新方法 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博…

debug调试时,通过[[FunctionLocation]]找到函数在源代码中的位置

[[FunctionLocation]] 是 JavaScript 引擎内部的一个属性,用于记录函数在代码中的位置。它不是 JavaScript 语法的一部分,而是在调试和开发过程中用于追踪函数定义位置的一个辅助属性。 当我们在浏览器的开发者工具或其他调试工具中查看函数的属性时&am…

微信短链跳转到小程序指定页面调试

首先说下背景:后端给了短链地址,但是无法跳转到指定页面。总是在小程序首页。指定的页面我们是h5页面。排查步骤如下: 1、通过快速URL Scheme 编译。上部普通编译 下拉找到此选项。 、 2、按照小程序的要求的URL Scheme输入。另外后端给的…

SQL-DQL

-----分组查询----- 1.语法: SELECT 字段列表 FROM 表名 [WHERE 条件 ] GROUP BY 分组字段名 [HAVING 分组后过滤条件]; 2.where与having区别 》执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组&…

微信小程序 校园周边美食商城分享系统

管理员、会员、商家可通过Android系统手机打开系统,注册登录后可进行管理员后端;首页、个人中心、会员管理、商家管理、美食类型管理、美食信息管理、美食交流、我的收藏管理、系统管理、订单管理,会员前端;首页、美食信息、美食交…

C++快速回顾(三)

前言 在Android音视频开发中,网上知识点过于零碎,自学起来难度非常大,不过音视频大牛Jhuster提出了《Android 音视频从入门到提高 - 任务列表》,结合我自己的工作学习经历,我准备写一个音视频系列blog。C/C是音视频必…

keras深度学习框架通过简单神经网络实现手写数字识别

背景 keras深度学习框架,并不是一个独立的深度学习框架,它后台依赖tensorflow或者theano。大部分开发者应该使用的是tensorflow。keras可以很方便的像搭积木一样根据模型搭出我们需要的神经网络,然后进行编译,训练,测试…

基于RabbitMQ的模拟消息队列之四——内存管理

文章目录 一、设计数据结构二、管理集合1.交换机2.队列3.绑定4.消息5.队列上的消息6.待确认消息7.恢复数据 一、设计数据结构 针对交换机、队列、绑定、消息、待确认消息设计数据结构。 交换机集合 exchangeMap 数据结构:ConcurrentHashMap key:交换机name value:交…

rpm打包

文章目录 rpm打包 1. rpm打包步骤0)安装打包工具rpm-build和rpmdevtools1)创建初始化目录2)准备打包内容3)编写打包脚本 spec文件 rpm打包 1. rpm打包步骤 0)安装打包工具rpm-build和rpmdevtools yum install rpm-bu…

C++信息学奥赛1176:谁考了第k名

#include <iostream> #include <string> using namespace std; int main() {int n, a;cin >> n >> a; // 输入整数 n 和 aint arr[n]; // 创建大小为 n 的整型数组 arrdouble btt[n]; // 创建大小为 n 的双精度浮点型数组 bttfor (int i 0; i < n;…

03-基础例程3

基础例程3 01、外部中断 ESP32的外部中断有上升沿、下降沿、低电平、高电平触发模式。 实验目的 使用外部中断功能实现按键控制LED的亮灭 按键按下为0。【即下降沿】 * 接线说明&#xff1a;按键模块-->ESP32 IO* (K1-K4)-->(14,27,26,25)* * …