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具有以下主要功能: 字节码执行ÿ…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...

Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...

视觉slam十四讲实践部分记录——ch2、ch3
ch2 一、使用g++编译.cpp为可执行文件并运行(P30) g++ helloSLAM.cpp ./a.out运行 二、使用cmake编译 mkdir build cd build cmake .. makeCMakeCache.txt 文件仍然指向旧的目录。这表明在源代码目录中可能还存在旧的 CMakeCache.txt 文件,或者在构建过程中仍然引用了旧的路…...

R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...

客户案例 | 短视频点播企业海外视频加速与成本优化:MediaPackage+Cloudfront 技术重构实践
01技术背景与业务挑战 某短视频点播企业深耕国内用户市场,但其后台应用系统部署于东南亚印尼 IDC 机房。 随着业务规模扩大,传统架构已较难满足当前企业发展的需求,企业面临着三重挑战: ① 业务:国内用户访问海外服…...
JS红宝书笔记 - 3.3 变量
要定义变量,可以使用var操作符,后跟变量名 ES实现变量初始化,因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符,可以创建一个全局变量 如果需要定义…...