DJ 5-4 以太网 Ethernet
目录
一、以太网的物理拓扑结构
二、以太网物理层标准
1、以太网技术:10Base-T 和 100Base-T
2、以太网技术:1000Base 系列
3、曼彻斯特编码*
4、差分曼彻斯特编码机制*
三、以太网链路层控制技术
四、以太网的帧结构
1、前同步码
2、MAC 地址
3、类型
4、数据字段
到目前为止,以太网是最为著名的有线局域网 LAN 技术。
以太网成功的原因:
- 是第一个广泛使用的局域网技术
- 简单、便宜
- 版本不断更新,数据速率更高、成本更低
Ehernet 通常认为是与 IEEE 802.3 是兼容的。
一、以太网的物理拓扑结构

① 总线:一直流行到 90 年代中期
- 所有节点都属于相同的冲突域
② 星形:目前流行
- 中心是交换机
- 每个端口运行一个独立的以太网协议
- 节点相互之间不会发生冲突
二、以太网物理层标准
以太网的物理层标准是与传输介质相对应的。
- 10BASE-T
- 10BASE2
- 10BASE5
- 100BASE-T
- 1000BASE-T
- 1000BASE-LX
- 1000BASE-SX 等
1、以太网技术:10Base-T 和 100Base-T

- Base 表示兆,T 表示双绞线
- 带宽速率为 10/100 Mbps
- 100-Base T 又被称为 “快速 Ethernet”
- 各节点都连接到集线器上 -- 星形拓扑结构
- 节点和适配器间的最大距离为 100 米
双绞线 twisted pair
① 双绞线的概念:是由两条相互绝缘的导线,按照一定的规格,互相缠绕在一起而制成的一种通用配线,属于信息通信网络传输介质。双绞线过去主要是用来传输模拟信号的,但现在同样适用于数字信号的传输。
② 双绞线的分类:一类线 ~ 七类线,目前常用的是五类和超五类。按是否有屏蔽层,分为屏蔽线和非屏蔽线。
③ 双绞线的制作:双绞线的两头先按一定顺序把各根线排好,再接入水晶头中方可使用。其中,是网卡引脚的收/发功能决定了双绞线的线序。
2、以太网技术:1000Base 系列
1000BASE 系列有四种传输介质标准:
- 1000BASE-T:使用非屏蔽双绞线作为传输介质提供 1000M 的传输速度
- 1000BASE-LX:使用单模光纤
- 1000BASE-SX:使用多模光纤
- 1000BASE-CX:使用平衡、屏蔽铜缆,它可以用于机房的互连
3、曼彻斯特编码*
Q:为什么不直接用高电平和低电平表示 1 和 0?
A:距离较远时,电信号会衰减。假设我们规定 >2.5V 是高电平,<-2.5V 是低电平。如果一个 5V 的信号经过衰减变为 2.4V,那么它将被视为一个噪音。而跳变的幅度很大,因此能稳定地表示 1 和 0 。
编码机制
利用一个 时钟周期中间位置 的电平跳变来表示 0 和 1:
- 中间跳变是由低电平跳变到高电平表示 1
- 中间跳变是由高电平跳变到低电平表示 0
曼彻斯特编码是 10Base-T 物理层编码。注:在时钟周期边界处可以任意跳变而不影响编码含义,实际上在时钟周期边界处进行跳变可以为下一次中间跳变做准备。
4、差分曼彻斯特编码机制*
根据一个时钟周期里的跳变次数来表示 0 和 1,并且仅有两个观测位置,分别为:时钟周期开始处、时钟周期中间处。
编码机制
根据跳变的次数来表示 0 和 1:
- 规定每个信号位中间都要跳变
- 在信号位开始时不改变信号极性,表示 1
- 在信号位开始时改变信号极性,表示 0
特别地,对于第一个信号:
- 如果中间位电平从低到高,则表示 0
- 如果中间位电平从高到低,则表示 1
三、以太网链路层控制技术
针对链路层中的媒体访问控制子层,又称为 MAC 子层。

四、以太网的帧结构

1、前同步码
特点:前七个字节是 “10101010”,最后一个字节是 “10101011”。
功能:使接收方和发送方的时钟同步,接收方一旦收到前同步码,便可确定有帧传来。
说明:
- 前同步码是 “无效信号”,接收方收到后删除,不向上层传递;
- CRC 的校验范围不包括前同步码。
2、MAC 地址
接收适配器会接收的 MAC 地址有:
- 单播:目的 MAC 地址与自己的 MAC 地址匹配
- 组播:目的 MAC 地址与自己所在组的 MAC 地址匹配
- 广播:目的 MAC 地址为全 1 地址
3、类型
以太网支持多种网络层协议,需要通过类型字段来进行区分。
- 发送方在类型字段中填入网络层协议的类型编号;
- 接收适配器根据类型字段,将数据字段传递给相应的网络层协议。
4、数据字段
携带网络层传来的 IP 数据报。
① 以太网的最大传输单元 MTU 是 1500 字节:
- 若 IP 数据报超过1500字节,必须将该数据报分段。
② 以太网的最小传输长度是 46 字节:
- 若 IP 数据报小于 46 字节,必须填充为 46 字节。
接收方的网络层将会去除填充的内容。
相关文章:
DJ 5-4 以太网 Ethernet
目录 一、以太网的物理拓扑结构 二、以太网物理层标准 1、以太网技术:10Base-T 和 100Base-T 2、以太网技术:1000Base 系列 3、曼彻斯特编码* 4、差分曼彻斯特编码机制* 三、以太网链路层控制技术 四、以太网的帧结构 1、前同步码 2、MAC 地址…...
华为OD机试真题 Java 实现【区块链文件转储系统】【2023Q2 200分】
一、题目描述 区块链底层存储是一个链式文件系统,由顺序的N个文件组成,每个文件的大小不一,依次为F1,F2…Fn。 随着时间的推移,所占存储会越来越大。 云平台考虑将区块链按文件转储到廉价的SATA盘,只有连续的区块链…...
Java 实现 二叉树的 后序遍历
1、定义节点类 class Node {int val;Node left;Node right;Node(int val) {this.val val;} }public class BinaryTree {/*** 后序遍历* param root 节点*/public void postorderTraversal(Node root) {if (root ! null) {postorderTraversal(root.left);postorderTraversal(r…...
rk3588安装qt虚拟键盘
qt是默认安装的,版本号为5.12.8,但是没有虚拟键盘模块,项目中需要,就采用源码编译的方法执行 下载源码 源码地址为Index of /archive/qt/5.12/5.12.1/submodules,下载后放到3588中解压cd到src路径,运行一下命令 …...
HCIP-RIP双向重发布综合实验
拓扑结构: 要求: 1、两个协议间进行多点双向重发布 2、R7的环回没有宣告在OSPF协议中,而是在后期重发布进入的 3、解决环路,所有路径选择最优,且存在备份 4、R2的环回要在RIP中宣告,R3的环回要在OSPF中宣…...
Flask的使用例子
以下是一个简单的使用Flask创建Web应用程序的示例: from flask import Flask, render_template, requestapp Flask(__name__)app.route(/) def home():return Hello, World!app.route(/about) def about():return render_template(about.html)app.route(/submit, …...
【基础6】存储过程的 创建与调用
目录 什么是存储过程 用户自定义存储过程 练习 什么是存储过程 什么是存储过程 类似于C语言中的函数。用来执行管理任务或应用复杂的业务规则存储过程可以带参数,也可以返回结果存储过程可以包含数据操纵等语句、变量、逻辑控制语句等。(单个select语…...
如何快速实现接口自动化测试,常规接口断言封装实践
目录 前言: 一、框架设计思路 1. 封装请求方法 2. 断言封装 3. 接口封装 4. 接口统一管理 二、框架使用 三、总结 前言: 在当今互联网行业中,接口自动化测试已经成为了非常重要的测试手段之一。而在这个过程中,接口自动化…...
java+nodejs+vue+python+php家教信息管理系统
任何网友都可以自由地查看、搜索、发布该家教信息平台的信息。该平台是区别于传统的家教中介的服务平台。学生可以免费查看网站上的家教信息,挑选适合自己的家教;教师可以免费查看网站上的需求信息,挑选适合自己的学生;学生可以发…...
课程分享:鸿蒙HarmonyOS系统及物联网开发实战课程(附课程视频及源码下载)
课程名称: 鸿蒙HarmonyOS系统及物联网开发实战课程 课程介绍: HarmonyOS 是一款面向万物互联时代的、全新的分布式操作系统。在传统的单设备系统能力基础上,HarmonyOS 提出了基于同一套系统能力、适配多种终端形态的分布式理念,…...
【数据结构】线性表之栈、队列
前言 前面两篇文章讲述了关于线性表中的顺序表与链表,这篇文章继续讲述线性表中的栈和队列。 这里讲述的两种线性表与前面的线性表不同,只允许在一端入数据,一段出数据,详细内容请看下面的文章。 顺序表与链表两篇文章的链接&…...
StringUtils.substring\[XX]()字符串截取方法总结
StringUtils.substring[XX]()字符串截取方法总结 StringUtils (Apache Commons Lang 3.12.0 API) 文章目录 StringUtils.substring\[XX]()字符串截取方法总结导入依赖方法介绍substring(String str, int start)substring(String str, int start, int end)substringAfter(String…...
SeaweedFs使用-通过http接口实现文件操作
通过http接口实现文件操作 SeaweedFs可通过filer的http接口/master中的http接口来进行文件上传 1.通过master的接口进行上传文件 通过各种方式进行请求接口:http://localhost:9333/submit, ip和端口号是master服务的信息。此接口通过post请求方式将文件的二进制流…...
成绩管理系统
系列文章 任务28 成绩管理系统 文章目录 系列文章一、实践目的与要求1、目的2、要求 二、课题任务三、总体设计1.存储结构及数据类型定义2.程序结构3.所实现的功能函数4、程序流程图 四、小组成员及分工五、 测试读入数据浏览全部信息增加学生信息保存数据删除学生信息修改学生…...
【MYSQL】事务的4大属性,对隔离级别的详细讲解
目录 1.原子性和持久性 1.1.手动提交事务 1.2.自动提交事务 1.3.事务的原理: 2.隔离性 1.读未提交(Read Uncommitted) 2.读提交(Read Committed) 3.可重复读 4.串行化 3.一致性 4.理解读提交和可重复读的实现…...
如何在宝塔面板后的阿里云服务器运行Flask项目并公网可以访问?
在你的服务器安装宝塔面板 宝塔面板是服务器运维管理系统 使用宝塔前: 手工输入命令安装各类软件,操作起来费时费力并且容易出错,而且需要记住很多Linux的命令,非常复杂。 使用宝塔后: 2分钟装好面板,一键…...
HTTP(九)-- response对象 -- 向页面响应数据
目录 1. 服务器输出字符数据到浏览器 1.1 获取字符输出流 1.2 实例演示:...
音视频windows安装ffmpeg6.0并使用vs调试源码笔记
建立在上一步,vs已经能够正常调试qt项目,可以实现: 1:qt可以使用mvsc (使用cdb)进行调试。 2:vs已经可以加载qt项目,借助vs进行调试。 本文目标:编译ffmpeg库…...
Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数、各版本差异、官方提供常见问题
Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数、各版本差异、官方提供常见问题 1.Midjourney Prompt 高级参数 Quality 图片质量是另一个我比较常用的属性,首先需要注意这个参数并不影响分辨率,并不改变分辨率&#x…...
什么是Java虚拟机(JVM)?
Java虚拟机(Java Virtual Machine,JVM)是Java平台的关键组成部分之一。它是一种虚拟的计算机,可以在计算机上运行Java字节码(即编译后的Java程序)。 JVM具有以下主要功能: 字节码执行ÿ…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
【LeetCode】算法详解#6 ---除自身以外数组的乘积
1.题目介绍 给定一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O…...
JS红宝书笔记 - 3.3 变量
要定义变量,可以使用var操作符,后跟变量名 ES实现变量初始化,因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符,可以创建一个全局变量 如果需要定义…...
无需布线的革命:电力载波技术赋能楼宇自控系统-亚川科技
无需布线的革命:电力载波技术赋能楼宇自控系统 在楼宇自动化领域,传统控制系统依赖复杂的专用通信线路,不仅施工成本高昂,后期维护和扩展也极为不便。电力载波技术(PLC)的突破性应用,彻底改变了…...
Pandas 可视化集成:数据科学家的高效绘图指南
为什么选择 Pandas 进行数据可视化? 在数据科学和分析领域,可视化是理解数据、发现模式和传达见解的关键步骤。Python 生态系统提供了多种可视化工具,如 Matplotlib、Seaborn、Plotly 等,但 Pandas 内置的可视化功能因其与数据结…...
VUE3 ref 和 useTemplateRef
使用ref来绑定和获取 页面 <headerNav ref"headerNavRef"></headerNav><div click"showRef" ref"buttonRef">refbutton</div>使用ref方法const后面的命名需要跟页面的ref值一样 const buttonRef ref(buttonRef) cons…...
