以太网和局域网
计算机网络的定义
计算机网络是一个将分散的、具有独立功能的计算机,通过通信设备与线路连接起来,由根据协议编写的软件来实现的资源共享和信息传递的系统
计算机网络的分类
广域网是互联网的核心部分
局域网
- 常见的局域网拓扑结构有4大类:星形结构、环形结构、总线形结构、星形总线形复合型结构
- 局域网可以使用双绞线、同轴电缆、光纤等多种传输介质,其中双绞线是主流
- 局域网的分类如下图,最常用的局域网是以太网,现在以太网已经成为了局域网的同义词。其逻辑拓扑是总线型结构,物理拓扑是星形或拓展星形结构
- IEEE802标准所描述的局域网参考模型只对应OS1参考模型的数据链路层与物理层。为了使数据链路层能更好的适应多种局域网标准,它将数据链路层划分为逻辑链路层LLC子层和介质访问控制MAC子层
- LLC子层与传输媒体无关 ,主要功能:①负责识别网络层协议,为网络层提供服务:无确认无连接、面向连接、带确认无连接、高速传送②建立和释放数据链路层的逻辑连接,给帧加序号③LLC报头告诉数据链路层一旦帧被接收到时,应当对数据包做何处理
- MAC子层与传输媒体有关,主要功能:①数据帧的封装/卸装,②帧的寻址和识别③帧的接收与发送④链路的管理,竞争处理、帧的差错控制⑤MAC子层的存在屏蔽了不同物理链路种类的差异性
- 目前使用最多的局域网只剩下DIX Ethernet V2(以太网),而不是IEEE802委员会制定的以太网。IEEE802委员会制定的逻辑链路控制子层LLC(即IEEE802.2标准)的作用已经消失了,很多厂商生产的网卡上就仅装有MAC协议而没有LLC协议
以太网
两个以太网标准
如果每个站到集线器的距离太远,主机发送的信号经过铜线的传输就会衰减到使CSMA/CD协议无法正常工作
以太网的MAC帧(V2帧和802.3帧)
以太网 V2 的MAC帧格式如下
- 严格来说,以太网应当是指符合DIX Ethernet V2标准(第一个以太网规约)的局域网,但DIX Ethernet V2标准与IEEE802.3标准只有很小的差别(帧格式有点不同),实际通常将802.3局域网称为以太网。个人觉得,其实两个标准都可以称为以太网,这两个标准是兼容的
- 以太网使用CSMA/CD协议对总线进行访问控制
- CSMA/CD(Carrier Sense Multiple Access with Collision Detection):载波监听多点接入/碰撞检测
- 最短帧长的提出是要求发送时延必须 大于往返传播时延,这样才能够在发完数据之前检测到冲突
网卡
- 计算机通过适配器和局域网进行通信,适配器的作用:进行数据串行/并行转换 ,对数据进行缓存 、实现以太网协议(介质访问控制等)
- 适配器的过滤功能如下图
- 全世界每块网卡在出厂时都有一个唯一的代码,称为MAC地址(Medium Access Control,介质访问控制),数据链路层设备(网桥、交换机等)都使用MAC地址
- 在同一个局域网中,每台设备必须有唯一的硬件地址。如果在同一个局域网中的两个设备有相同地址,那么两台设备都无法正常通信
- 以太网采用两项重要措施简化通信:①采用无连接的工作方式②发送的数据都使用曼彻斯特(Manchester)编码
- 传统以太网使用同轴电缆,采用总线形拓扑,1990年IEEE 制定出采用双绞线的星形以太网 10BASE-T 的标准 802.3i
- 100BASE-T中的100指数据传输速率为100Mb/s,BASE是基带传输,T是传输介质为两对UTP双绞线(twist-pair),100BASE-T和10BASE-T每段双绞线最大传输距离都是100米。目前百兆网通常都是5类UTP,只有千兆网及以上才使用6类UTP。可支持共享式组网(集线器组网)和交换式组网(交换机组网)
- 前导码:为了达到比特同步,在传输媒体上实际传送的要比 MAC 帧还多8个字节,由硬件在帧的前面插入 8 字节。第一个字段共 7 个字节,是前同步码,用来迅速实现 MAC 帧的比特同步。第二个字段 1 个字节是帧开始定界符,表示后面的信息就是MAC帧
- 地址:6字节(48bit)的MAC地址
- 类型:用来标志上一层使用的是什么协议, 以便把收到的 MAC 帧的数据上交给上一层的这个协议
- 数据:正式名称是MAC客户数据字段。由于CSMA/CD算法的限制,以太网帧最短帧长为64字节,由于首部和尾部加起来有18字节,所以数据字段的最小长度为46字节,不够46字节需要填充。数据字段的最大长度为1500B,是规定的,称为MTU(最大传送单元)(有效的 MAC 帧长度为 64-1518 字节之间)
- FCS(Frame Check Sequence,帧校验序列):校验范围从目的地址段开头到数据段末尾,算法采用32位循环冗余码
- MAC帧并不需要帧结束符,因为以太网在传送帧时,各帧之间必须有一定的间隙,因此,接收端只要找到帧开始定界符,其后面连续到达的比特流就都属于同一个MAC帧。但不要误以为以太网MAC帧不需要尾部,在数据链路层上,帧即有尾部又有首部。FCS就是以太网帧的尾部
- IEEE802.3MAC帧与以太网V2MAC帧格式的区别:长度域指出数据字段的长度
以太网的拓展
用集线器扩展
用集线器扩展的以太网增大了冲突域
光纤调制解调器的作用就是进行电信号和光信号的转换
用交换机拓展
用网桥或交换机拓展的以太网隔离了冲突域
从总线以太网到星形以太网
相关文章:

以太网和局域网
计算机网络的定义 计算机网络是一个将分散的、具有独立功能的计算机,通过通信设备与线路连接起来,由根据协议编写的软件来实现的资源共享和信息传递的系统 计算机网络的分类 广域网是互联网的核心部分 局域网 常见的局域网拓扑结构有4大类:…...
【Git】第三篇:基本操作(配置本地仓库)
初次使用git需要设置你的用户名以及邮箱,这将作为当前机器git的标识,如果你用它来下载远程仓库一些需要登录权限的仓库会要求登录,git默认使用配置邮箱以及用户名登入,但会要求你手动输入密码。 配置本地仓库:git con…...
JS中sort排序
在我们JS排序中,有许多排序的方法,比如冒泡排序、选择排序等等。这次我为大家介绍一下sort排序! sort 按照 Unicode code 位置排序,默认升序 默认情况下,sort()会按照升序重新排序数组,即最小值在前最大值…...

【现场问题】datax中write部分为Oracle的时候插入clolb类型字段,插入的数据为string且长度过场问题
datax的Oraclewriter 报错显示查询报错展示查找datax中的数据插入模块 报错显示 occurred during batching: ORA-01704: string literal too long 查询报错展示 基本上查到的都是这样的,所以锁定是clob的字段类型的问题,而且是只有Oracle出问题&#…...

ASK、PSK、FSK的调制与解调
ASK、PSK、FSK的调制与解调 本文主要涉及数字信号的调制与解调,内容包括:2ASK、2PSK、2FSK的调制与解调以及频谱分析 关于通信原理还有其他文章可参考: 1、信息量、码元、比特、码元速率、信息速率详细解析——实例分析 2、模拟系统的AM信号的…...

基于XML的声明式事务
场景模拟 参考基于注解的声明式事务 修改Spring的配置文件 将Spring配置文件中去掉tx:annotation-driven标签,并添加配置: <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org…...
力扣labuladong一刷day9滑动窗口共4题
力扣labuladong一刷day9滑动窗口共4题 文章目录 力扣labuladong一刷day9滑动窗口共4题一、76. 最小覆盖子串二、567. 字符串的排列三、438. 找到字符串中所有字母异位词四、3. 无重复字符的最长子串 一、76. 最小覆盖子串 题目链接:https://leetcode.cn/problems/m…...

ubuntu开机系统出错且无法恢复。请联系系统管理员。
背景: ubuntu22.04.2命令行,执行自动安装系统推荐显卡驱动命令,字体变大,重启后出现如下图错误,无法进入系统,无法通过CTRLALTF1-F3进入TTY模式。 解决办法: 1.首先要想办法进入系统ÿ…...

Transformer详解一:transformer的由来和先导知识
目录 参考资料前言一、预训练二、神经网络语言模型(NNLM):预测下一个词one-hot编码的缺陷词向量(word embedding) 三、Word2Vec模型:得到词向量CBOWSkip-gramWord2Vec和NNLM的区别Word2Vec的缺陷 四、ELMO模…...

数字化产品经理的金字塔能力模型
在企业数字化转型的浪潮下,要求IT团队更加主动的服务业务、赋能业务,而数字化产品经理正是IT、业务融合的桥梁,该岗位需要具备业务、技术、商业的复合知识结构,并且拥有很强的自驱力。那么数字化产品经理在企业如何产生价值、赋能…...

这 11 个 for 循环优化你得会
日常开发中,经常会遇到一些循环耗时计算的操作,一般也都会采用 for 循环来处理,for 作为编程入门基础,主要是处理重复的计算操作,虽然简单好用,但在写法上也有很多的考究,如果处理不好ÿ…...

JVM字符串常量池StringTable
目录 一、StringTable为什么要调整 二、String的基本特性 三、String的内存分配 四、字符串拼接操作 五、intern()方法 六、Stringtable的垃圾回收 七、G1中String去重操作 一、StringTable为什么要调整 jdk7之前,hotspot对于方法区的实现是永久代ÿ…...
【华为OD题库-010】寻找矿堆的最大价值-Java
题目 给你一个由0(空地)、1(银矿)、2(金矿)组成的的地图,矿堆只能由上下左右相邻的金矿或银矿连接形成。超出地图范围可以认为是空地。 假设银矿价值1,金矿价值2,请你找出地图中最大价值的矿堆并输出该矿堆的价值 输入描述 地图元素信息如: 2…...

在PyTorch中使用CUDA, pytorch与cuda不同版本对应安装指南,查看CUDA版本,安装对应版本pytorch
目录 1 查看本机CUDA版本 2 查看对应CUDA的对应pytorch版本安装 3 用pip 安装 4 用conda安装 5 验证安装 在PyTorch中使用CUDA,根据你的具体环境和需求调整版本号,确保安装的PyTorch版本与你的CUDA版本兼容。 在PyTorch中使用CUDA,你需…...

copilot 产生 python工具函数并生成单元测试
stock.py 这个文件,我只写了注释(的开头),大部分注释内容和函数都是copilot # split a string and extract the environment variable from it # input can be , pathabc, pathabc;pathdef, pathabc;pathdef;pathghi # output i…...

缓存与数据库双写一致性几种策略分析
一、背景 在高并发场景中,为防止大量请求直接访问数据库,缓解数据库压力,常用的方式一般会增加缓存层起到缓冲作用,减少数据库压力。引入缓存,就会涉及到缓存与数据库中数据如何保持一致性问题,本文将对几…...

Spring全家桶源码解析--2.6 Spring scope 限制bean的作用范围
文章目录 前言一、Scope是什么?二、Scope使用2.1 单例:2.1.1 单例Bean的特点如下:2.1.2 单例设计模式 与单例bean: 2.2 原型bean:2.2.1 原型Bean的特点:2.2.2 原型Bean的销毁: 2.3 Request bean…...

python 文本纠错库pycorrector的使用(API变更,许多介绍文章已不可用)
pycorrector是一个nice的中文检测库,在最新的版本API变更,导致许多之前的介绍文章不可用。 现将新API粘贴如下。...

【C++初阶(七)】类和对象(下)
本专栏内容为:C学习专栏,分为初阶和进阶两部分。 通过本专栏的深入学习,你可以了解并掌握C。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:C 🚚代码仓库:小小unicorn的代码仓库&…...

Linux上C++通过LDAP协议使用kerberos认证AES加密连接到AD服务器
一.前言 记录自己在实现这个流程遇到的各种问题,因为我也是看了许多优质的文章以及组内大佬的帮助下才弄成的,这里推荐一个大佬的文章,写的非常优秀,比我这篇文章写得好得很多,最后我也是看这个大佬的代码最终才实现的…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...

C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...