交换机01_以太网

1、交换机工作原理

交换机是数据链路层的设备,数据链路层传输的是数据帧,所以封装的是MAC头部(主要有源MAC地址和目的MAC地址)

2、数据链路层的功能:

  • 建立逻辑连接,进行物理地址寻址,差错校验
  • 数据链路的建立、维护和拆除

3、以太网简介

1)以太网简介

以太网是一种局域网技术,以太网简介看下,70年代左右提出来的以太网技术

以太网是一种计算机局域网技术。IEEE组织和IEEE802.3标准制定了以太网的技术标准,它规定了包括物理层连线、电子信号和介质访问协议的内容。

以太网是应用最普遍的局域网技术,取代了其他局域网技术如令牌环、FDDI和ARCNET。

2)其他局域网技术了解:

  • 令牌环:

什么是令牌,令牌是令牌环上传输的小的数据(3个字节的一种数据帧),谁有令牌谁就有传输权限。如果环上的某个工作站收到令牌并且有信息发送,它就改变令牌中的一位(该操作将令牌变成一个帧开始序列),添加想传输的信息,然后将整个信息发往环中的下一个工作站。
当这个信息帧在环上传输时,网络中没有令牌,这就意味着其他工作站想传输数据就必须等待。因此令牌环网络中不会发生传输冲突。
信息沿着环传输直到到达目的地,目的地穿件一个副本以便进一步处理。信息帧继续沿着环传输直到到达发送站时便可以被删除。发送站可以通过检验返回帧以查看被接收站收到并且复制。

(1)首先进行环的初始化(建立一逻辑环),然后产生一空令牌,在环上流动。
(2)希望发送帧的站必须等待,直到它检测到空令牌的到来。
(3)想发送的站拿到空令牌后首先将其置为忙状态,该站紧接着向令牌的后面发送一个数据帧。(4)当令牌忙时,由于网上无空令牌,所有想发送数据帧的站必须等待。
(5)数据沿途经过的每个站环接口都将该帧的目地地址和本站的地址相比较,如果地址符合,则将帧放入接收缓冲区,再送入本站,同时帧将在环上继续流动;若地址不符合,环接口只将数据帧转发。
(6)发送的帧沿环循环一周后再回到发送站,由发送站将该帧从环上移去,同时释放令牌(将其状态改为“闲”)发到下一站 。

  • FDDI:

FDDI是光纤分布式数据接口,它是一项局域网传输标准,于80年代中期发展起来,他提供的高速数据通信能力要高于当时的以太网(10Mbps)和令牌网(4或16Mbps)的能力。

当数据以100Mbps输入输出时,在当时FDDI与10Mbps的以太网和令牌环网相比有相当大的改进,但随着快速以太网和千兆以太网技术的发展,用FDDI的人就越来越少了。因为FDDI使用的通信介质主要是光纤,这一点它比快速以太网及现在的100Mbps令牌网传输介质贵许多,然而FDDI最常见的应用只是提供对网络服务的快速访问。

  • ARCNET:

ARCNET网络是典型的令牌总线网络,1999年称为美国国家标准ANSI/ATA-878.1.从OSI参考模型来看,ARCNET定义了ISO/OSI 七层网络体系模型中的数据链路层和物理层,其开放底层接口,允许用户自行开发嵌入式设备。

ARCNET的节点及地址:|
每个ARCNET物理节点包括一个数据链路层的通信控制芯片和一个物理层的收发芯片。每个节点有一个网络地址,令牌一递增的节点地址序号,从一个节点传递到另一个节点,形成逻辑环路。节点使用唯一的MAC地址标识自己,单个ARCNET子网最多有255个节点,ARCNET支持点对点的定向消息和单点对多点的广播消息,在数据链路层,采用令牌环机制,各节点通过传递令牌来协调网络使用权。

ARCNET的物理层:
在物理层,ARCNET支持总线型、星形以及分布式星形拓扑结构。ARCNET速率为2.5 Mbit/s,传输的介质有同轴电缆、双绞线、光纤,可满足绝大多数自动控制应用对速度、抗干扰性和物理介质的要求。新型的ARCNET plus速率已从原来的2.5 Mbit/s增加到100 Mbit/s(使用光纤时)。

ARCNET工作机制:
ARCNET的地址由8 bit组成,其中地址0作为广播地址。因此ARCNET网络上最多可以容纳255个节点。ARCNET网络节点之间的数据传输像总线型LAN一样是广播式的,但对总线的访问决定于令牌。为说明这种网络的操作机制,假定在一条总线上有4个节点,其地址分别为1,10,25和255。在启动网络时,这4个工作站形成一个逻辑环,每个站都跟踪两个信息:①谁是后继者;②谁是前驱者。

这两种信息分别由字母S(后继者)和P(先驱者)代表。一个工作站的后继者定义为逻辑环上具有较高地址的站;先驱者则定义为逻辑环上具有较低地址的站。

由于ARCNET中站地址0用于广播地址,因此最小站地址为1,最大站地址为255。在构成逻辑环时规定,工作站地址为255的后继站地址为1,站地址为1的前驱站地址为255。

3)中继器&集线器

中继器是工作在物理层的设备,适用于王权相同的两个网络的互连,信号传输过程中有衰减,中继器主要是通过对数据信号的重新发送或转发来扩大网络传输的距离。中继器是对信号进行再生和还原的网络设备:OSI模型的物理层设备。

集线器(Hub)集线器主要功能是对接收的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。集线器也是工作在物理层的。

4、共享式OR 交换式

早期是共享式网络,现在使用的交换式网络,以太网交换机、以太网MAC地址

在目前所有的网络接口都有一个全球唯一的以太网MAC地址

以太网MAC地址:用来标识一个以太网上额某个单独的设备或者一组设备 

IP地址的概念:用于标识网络中的某一台主机

两个设备需要在网络中进行通信就必须配置相应的IP地址

网络环境中有两台主机(主机A 主机B)通过交换机连接起来的,只要主机A知道主机B的MAC地址两台主机就能进行信息通信。

在一个网络环境内,还需要知道两台主机对应的IP地址,根据IP地址来获取MAC地址,从而使用MAC地址进行交互,而不是使用IP地址进行交互。

如果说跨越了一个网络,主机A要和另一个网络中的主机C进行通信,所以就需要中间商路由器进行转发,中间商需要主机A提供IP地址。

两个设备在以太网中进行通信,那就必须要MAC地址进行交互。

两个设备在网络中进行通信,就必须配置相应的IP地址。

5、MAC地址

MAC地址由48位二进制组成,通常表示为12位的十六进制,

MAC地址举例:将12位的十六进制换算成48位的二进制

一个MAC地址的表示方式,前面24位表示厂商的编码,后面24位是序列号。从而实现全球唯一。

如何区别单独设备还是一组设备

当第8位为0的时候,表示单播地址

当第8位为1的时候,表示的是组播地址

所有设备:一个全为1的MAC地址是广播地址

6、以太网帧格式

1)Ethernet II

Preamble前导码:占8个字节

Destination Address :目标的MAC地址占6字节(48bit)(12个十六进制)

Source Address:发送方的MAC地址占6字节(48bit)(12个十六进制)

Type:用于标识上层数据的类型占2字节(16bit)(4个十六进制)

Data:在经过物理层和逻辑链路层的处理之后,包含在帧中的数据将被传递给在类型段中指定的高层协议。该数据段的长度最小应当不低于46个字节,最大应不超过1500字节。如果数据段长度过小,那么将会在数据段后自动填充(Trailer)字符。相反,如果数据段长度过大,那么将会把数据段分段后传输。在IEEE 802.3帧中该部分还包含802.2的头部信息。

FCS:帧校验,包含长度为4个字节的循环冗余校验值(CRC),由发送设备计算产生,在接收方被重新计算以确定帧在传送过程中是否被损坏。

2)IEEE802.3帧

IEEE802.3帧结构

Preamble前导码:7字节占8个字节

帧的起始并列符:1字节

Destination Address :目标的MAC地址占6字节(48bit)(12个十六进制)

Source Address:发送方的MAC地址占6字节(48bit)(12个十六进制)

length:用于标识上层数据的类型(帧协议类型)(2B)

逻辑链路控制LLC(Logical Link Control)由目的服务访问点DSAP(Destination Service Access Point)、源服务访问点SSAP(Source Service Access Point)和Control字段组成。

SNAP(Sub-network Access Protocol)由机构代码(Org Code)和类型(Type)字段组成。Org code三个字节都为0。Type字段的含义与Ethernet_II帧中的Type字段相同。IEEE802.3帧根据DSAP和SSAP字段的取值又可分为以下几类:

  • 当DSAP和SSAP都取特定值0xff时,802.3帧就变成了Netware-ETHERNET帧,用来承载NetWare类型的数据。
  • 当DSAP和SSAP都取特定值0xaa时,802.3帧就变成了ETHERNET_SNAP帧。ETHERNET_SNAP帧可以用于传输多种协议。
  • DSAP和SSAP其他的取值均为纯IEEE802.3帧。

Data:Data字段包含来自较高层的封装数据(一般是第 3 层 PDU 或更常见的 IPv4 数据包)。所有帧至少必须有 64 个字节。如果封装的是小数据包,则帧使用填充位增大到最小值。

FCS:用于检测帧中的错误。它使用的是循环冗余校验 (CRC)。发送设备在帧的 FCS 字段中包含 CRC 的结果。接收设备接收帧并生成 CRC 以查找错误。如果计算匹配,就不会发生错误。计算不匹配则表明数据已经改变;因此帧会被丢弃。数据改变可能是由于代表比特的电信号中断所致

7、关于Type字段的实例:

上层是网络层,由于网络层有不同协议,如IP、ARP、ICMP、IGMP、RARP等,所以用Type/length字段来标识网络层的协议

示例:

ARP协议(0x0806)

IP协议(0x0800)

ping 一下百度 

把ICMP协议称为网络层上层的协议(3.5层),我们通过抓包抓到的基本上都是Ethernet II的帧,很少是IEEE802.3的帧。

针对于数据链路层要知道:

以太网

        以太网MAC地址

        以太网帧

        以太网的交换机

                在早期的时候共享式网络是什么样的

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

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

相关文章

odoo17 | 用户界面的基本交互

前言 现在我们已经创建了我们的新模型及其 相应的访问权限,是时候了 与用户界面交互。 在本章结束时,我们将创建几个菜单以访问默认列表 和窗体视图。 数据文件 (XML) Odoo在很大程度上是数据驱动的,因此模块定义的…

C++面向对象语法总结(一)

一、类 C中可以使用struct、class两个关键字来定义一个类struct和class的区别 struct的默认成员权限是publicclass的默认成员权限是private实际开发中,用class表示类的比较多,因为涉及到封装的思想 在函数中创建的对象,都是在栈空间&#xf…

【动态规划】LeetCode-10. 正则表达式匹配

10. 正则表达式匹配。 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 …

MySQL概述

M y S Q L 概述 \huge{MySQL概述} MySQL概述 MySQL学习笔记 引入 什么是数据库? D \color{red}D Data B \color{red}B Base(DB),存储和管理数据的仓库。 使用的各种电子产品的网页,页面中的数据都是动态的&#xf…

嵌入式系统(二)单片机基础 | 单片机特点 内部结构 最小系统 电源 晶振 复位

上一篇文章我们介绍了嵌入式系统 嵌入式系统(Embedded System)是一种特定用途的计算机系统,它通常嵌入在更大的产品或系统中,用于控制、监测或执行特定的任务。这些系统通常由硬件和软件组成,旨在满足特定的需求&…

使用SpringBoot AOP记录操作日志和异常日志

使用SpringBoot AOP记录操作日志和异常日志 平时我们在做项目时经常需要对一些重要功能操作记录日志,方便以后跟踪是谁在操作此功能;我们在操作某些功 能时也有可能会发生异常,但是每次发生异常要定位原因我们都要到服务器去查询日志才能找…

【LeetCode每日一题】1599. 经营摩天轮的最大利润(模拟)—2024新年快乐!

2024-1-1 文章目录 [1599. 经营摩天轮的最大利润](https://leetcode.cn/problems/maximum-profit-of-operating-a-centennial-wheel/)思路: 1599. 经营摩天轮的最大利润 思路: 1.对摩天轮的运转情况进行模拟, 2.遍历数组,分别计…

springcloud alibaba整合sentinel并结合dashboard控制面板设置规则

目录 一、springcloud alibaba整合sentinel二、采用代码方式设置流控规则三、结合dashboard控制面板设置规则3.1、准备工作3.2、设置全局异常处理3.3、编写测试接口3.4、结合dashboard控制面板设置规则3.4.1、流控规则设置并测试——QPS3.4.2、流控规则设置并测试——线程数3.4…

微信小程序使用echarts报错 ReferenceError: Image is not defined 解决

报错 ReferenceError: Image is not defined 在用uni-app开发微信小程序时,使用到了echarts(V4.6.0)配置项中的icon属性,微信开发者工具报错如下: 定位问题 定位问题到了压缩echarts文件中的new Image 使用非压缩…

【JavaFX】JDK11 基于Gson、hutool、Jackson持久化存储实体类数据的解决方案 (读取、追加、去重、写入json对象)

文章目录 开发环境效果前言一、Gson是什么?二、使用步骤1.引入依赖2.创建实体类创建 JsonFileService类创建JsonFileService的实现类 JsonFileServiceImpl三、实现效果开发环境 JDK11IDEA 2023.3Gson、hutool、JacksonJavaFX 11效果 前言 使用JDK1

用通俗易懂的方式讲解大模型:在 CPU 服务器上部署 ChatGLM3-6B 模型

大语言模型(LLM)的量化技术可以大大降低 LLM 部署所需的计算资源,模型量化后可以将 LLM 的显存使用量降低数倍,甚至可以将 LLM 转换为完全无需显存的模型,这对于 LLM 的推广使用来说是非常有吸引力的。 本文将介绍如何…

C# windows服务程序开机自启动exe程序

我们使用传统的Process.Start(".exe")启动进程会遇到无法打开UI界面的问题,尤其是我们需要进行开启自启动程序设置时出现诸多问题,于是我们就想到采用windows服务开机自启动来创建启动一个新的exe程序,并且是显式运行。 首先是打开…