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

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

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

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

目录

一、认识交换机

二、交换机的主要功能

1、数据的转发

2、端口隔离

3、负载均衡和带宽控制

三、以太网帧格式

四、交换机的工作原理

1、接收数据帧

2、学习MAC地址

3、广播未知数据帧

4、记录MAC地址表

5、交换机实现单播通信


前言

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


一、认识交换机

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


二、交换机的主要功能

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

1、数据的转发

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

2、端口隔离

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

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

3、负载均衡和带宽控制

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


三、以太网帧格式

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地址时,它会直接将数据帧发送到对应的端口。

相关推荐
阿梦Anmory18 分钟前
Ubuntu配置代理最详细教程
linux·运维·ubuntu
驱动探索者19 分钟前
U盘发展史
网络·cpu·u盘
青春给了代码23 分钟前
基于WebSocket实现在线语音(实时+保存)+文字双向传输完整实现
网络·websocket·网络协议
呉師傅32 分钟前
【使用技巧】Adobe Photoshop 2024调整缩放与布局125%后出现点菜单项漂移问题的简单处理
运维·服务器·windows·adobe·电脑·photoshop
heartbeat..35 分钟前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
小Tomkk1 小时前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
赌博羊1 小时前
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·运维·gnu
消失的旧时光-19431 小时前
Linux 入门核心命令清单(工程版)
linux·运维·服务器
艾莉丝努力练剑2 小时前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
小天源2 小时前
Cacti在Debian/Ubuntu中安装及其使用
运维·ubuntu·debian·cacti