当前位置: 首页 > news >正文

以太网的MAC层

以太网的MAC层

一、硬件地址

​ 局域网中,硬件地址又称物理地址或MAC地址(因为用在MAC帧),它是局域网上每一台计算机中固化在适配器的ROM中的地址。

​ 关于地址问题,有这样的定义:“名字指出我们所要寻找的资源,地址指出那个资源在何处,路由告诉我们如何到达该处。”

​ 这个地址并不是用来指明这台主机在什么地方,而是指每一个站的“名字”或标识符。

​ MAC地址用6个字节来表示。IEEE的RA负责分配前三个字节,生产局域网适配器的厂家都要向RA购买前三个地址块。

​ IEEE规定地址字段的第一个字节的最低有效位为I/G(Individual/Group)位,当I/G位为0时,表示一个单个站地址。为1时表示组地址,用来进行多播。规定第一字节的最低第二位为G/L(Global/Local)位,为0时是全球管理,为1时是本地管理

​ 所以每个站的地址还有46位表示,一共有 246 个地址,超过了70万亿。

适配器有过滤功能,可以对收到的帧选择接收或丢弃,其中包括:

  • 单播(unicast)帧(一对一):收到的帧的MAC地址与本站的地址相同
  • 广播帧(broadcast)(一对全体):发送给本局域网上的所有站点的帧(全1地址)
  • 多播帧(multicast)(一对多):发送给本局域网的一部分站点的帧

以太网适配器还可设置混杂方式(promiscuous mode):只要发现有帧在以太网上传输就都悄悄接收下来,而不管这些帧发往哪个站。这种方式有利有弊,弊端就是对于我们普通用户不安全,好处就是帮助学习网络的人更好的理解各种网络协议的工作原理。

二、MAC帧格式

以太网帧有两种标准:DIX Ethernet V2标准和IEEE的802.3标准。严格来所以太网应当是指前者标准的局域网,前者也是使用的最多的。所以这里就介绍V2标准的帧格式。

在这里插入图片描述

  • 位同步字段: 一个站在刚开始接收MAC帧时,由于适配器的时钟尚未与到达的比特流达成同步,因此MAC帧的最前面的若干位就无法接收,导致变为无用帧。为了实现位同步,MAC子层向下传到物理层时还要在帧的前面插入8个字节(由硬件生成)。前同步码由1和0交替组成,作用是使接受端的适配器在接收MAC帧时能够迅速调整其时钟频率,使它和发送端的时钟同步。帧开始定界符定义为10101011,前六位和前同步码作用一样,最后连续的11告诉接收端适配器:”MAC帧来了,注意接收“。

  • 类型字段: 标志上一层使用的是什么协议,以便把收到的帧上交给上一层的这个协议。例如0x0800,表示上层使用的是IP数据报。

  • 数据字段: 首先以太网规定的最小长度为64字节,减去首部尾部的18字节就得到了46字节。

  • FCS字段: 使用CRC检验,检验的是从目的地址开始的这五个字段。

出现以下条件之一则为无效的MAC帧:

(1)帧的长度不是整数字节;

(2)用收到的帧校验序列FCS查出有错误;

(3)收到的帧的数据部分不在46~1500字节之间。因为还有首部和尾部,所以MAC帧的有效长度为64~1518字节之间。

当数据字段的长度小于46字节时,MAC子层就会在数据字段后面加入整数字节的填充字段,以保证以太网的MAC帧的长度不小于64字节。那么当上层为IP层时,IP层如何知道这个帧有没有填充字段?IP协议的首部有一个总长度字段,当其大于等于46那么就没有填充,否则得出来的差值就是填充字段字节数。例如IP数据报总长度42字节,向下传输时,那么MAC层就要填充4个字节以达到最短数据字段长度。向上交给IP层后,IP层会把其中的填充字段丢弃。

相关文章:

以太网的MAC层

以太网的MAC层 一、硬件地址 ​ 局域网中,硬件地址又称物理地址或MAC地址(因为用在MAC帧),它是局域网上每一台计算机中固化在适配器的ROM中的地址。 ​ 关于地址问题,有这样的定义:“名字指出我们所要寻…...

Hadoop启动后jps发现没有DateNode解决办法

多次使用 Hadoop namenode -format 格式化节点后DateNode丢失 找到hadoop配置文件core-site.xml查找tmp路径 进入该路径,使用rm -rf data删除data文件 再次使用Hadoop namenode -format 格式化后jps后出现DateNode节点...

VUE3照本宣科——应用实例API与setup

VUE3照本宣科——应用实例API与setup 前言一、应用实例API1.createApp()2.app.use()3.app.mount() 二、setup 前言 👨‍💻👨‍🌾📝记录学习成果,以便温故而知新 “VUE3照本宣科”是指照着中文官网和菜鸟教…...

json/js对象的key有什么区别?

1.对于JS对象来说 一个js对象如果是这样的 obj {"0": "小明","0name": "小明明", "": 18,"¥": "哈哈"," ": "爱好广泛" }对于js对象来说,有时候key是不…...

极大似然估计概念的理解——统计学习方法

目录 1.最大似然估计的概念的理解1 2.最大似然估计的概念的理解2 3.最大似然估计的概念的理解3 4.例子 1.最大似然估计的概念的理解1 最大似然估计是一种概率论在统计学上的概念,是参数估计的一种方法。给定观测数据来评估模型参数。也就是模型已知,参…...

python模拟表格任意输入位置

在表格里输入数值,要任意位置,我找到了好方法: input输入 1. 行 2. 列输入:1 excel每行输入文字input输入位置 3.2 表示输入位置在:3行个列是要实现一个类似于 Excel 表格的输入功能,并且希望能够指定输入…...

如何限制文件只能通过USB打印机打印,限制打印次数和时限并且无法在打印前查看或编辑内容

在今天这个高度信息化的时代,文档打印已经成为日常工作中不可或缺的一部分。然而,这也带来了诸多安全风险,如文档被篡改、知识产权被侵犯以及信息泄露等。为了解决这些问题,只印应运而生。作为一款独特的软件工具,只印…...

车牌文本检测与识别:License Plate Recognition Based On Multi-Angle View Model

论文作者:Dat Tran-Anh,Khanh Linh Tran,Hoai-Nam Vu 作者单位:Thuyloi University;Posts and Telecommunications Institute of Technology 论文链接:http://arxiv.org/abs/2309.12972v1 内容简介: 1)方向&#x…...

Blender中的4种视图着色模式

Blender中有四种主要的视图着色模式:线框、实体、Look Dev和渲染。它们的主要区别如下: - 线框模式只显示物体的边缘(线框),可以让您看到场景中的所有物体,也可以调整线框的颜色和背景的颜色。 - 实…...

Flutter项目安装到Android手机一直显示在assembledebug

问题 Flutter项目安装到Android手机一直显示在assembledebug 原因 网络不好,gradle依赖下载不下来 解决方案 修改如下的文件 gradle-wrapper.properties 使用腾讯提供的gradle镜像下载 distributionUrlhttps://mirrors.cloud.tencent.com/gradle/gradle-7.5…...

数据挖掘实验(二)数据预处理【等深分箱与等宽分箱】

一、分箱平滑的原理 (1)分箱方法 在分箱前,一定要先排序数据,再将它们分到等深(等宽)的箱中。 常见的有两种分箱方法:等深分箱和等宽分箱。 等深分箱:按记录数进行分箱&#xff0…...

Vue2 第一次学习

本章为超级浓缩版,文章过于短,方便复习使用哦~ 文章目录 1. 简单引入 vue.js2. 指令2.1 事件绑定指令 v-on (简写 )2.2 内容渲染指令2.3 双向绑定指令 v-model2.4 属性绑定指令 v-bind (简写 : )2.5 条件渲染指令2.6 循环指令 v-for 3. vue 其他知识3.1 侦听器 watch3.2 计算属…...

tiny模式基本原理整合

【Tiny模式】的基本构成 M【首头在首位】 U【/】 V【HTTP/】 Host H【真实ip】 XH \r回车 \n换行 \t制表 \ 空格 一个基本的模式构成 [method] [uri] [version]\r\nHost: [host]\r\n[method] [uri] [version]\r\nHost: [host]\r\n 检测顺序 http M H XH 有些地区 XH H M 我这边…...

使用聚氨酯密封件的好处?

聚氨酯密封件因其优异的耐用性、灵活性和广泛的应用范围而在各个行业中广受欢迎。在本文中,我们将探讨使用聚氨酯密封件的优点,阐明其在许多不同领域广泛使用背后的原因。 1、高性能: 聚氨酯密封件具有出色的性能特征,使其成为各…...

DevEco Studio如何安装中文插件

首先 官网下载中文插件 由于DevEco是基于IntelliJ IDEA Community的,所有Compatibility选择“IntelliJ IDEA Community”,然后下载一个对应最新的就ok了。 最后打开Plugins页面,点击右上角齿轮 -> Install Plugin from Disk…。选择下载的…...

10.2 校招 实习 内推 面经

绿泡*泡: neituijunsir 交流裙 ,内推/实习/校招汇总表格 1、校招 | 国家电网 国网信通产业集团2024届校园招聘! 校招 | 国家电网 国网信通产业集团2024届校园招聘! 2、校招 | 海信集团2024届全球校园招聘正式启动&#xff01…...

Golang 语言学习 01 包含如何快速学习一门新语言

Golang方向 区块链 go服务器端 (后台流量支撑程序) 支撑主站后台流量(排序,推荐,搜索等),提供负载均衡,cache,容错,按条件分流,统计运行指标 (qps, latenc…...

整理了197个经典SOTA模型,涵盖图像分类、目标检测、推荐系统等13个方向

今天来帮大家回顾一下计算机视觉、自然语言处理等热门研究领域的197个经典SOTA模型,涵盖了图像分类、图像生成、文本分类、强化学习、目标检测、推荐系统、语音识别等13个细分方向。建议大家收藏了慢慢看,下一篇顶会的idea这就来了~ 由于整理的SOTA模型…...

10.4 小任务

目录 QT实现TCP服务器客户端搭建的代码&#xff0c;现象 TCP服务器 .h文件 .cpp文件 现象 TCP客户端 .h文件 .cpp文件 现象 QT实现TCP服务器客户端搭建的代码&#xff0c;现象 TCP服务器 .h文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #includ…...

AJAX--Express速成

一、基本概念 1、AJAX(Asynchronous JavaScript And XML)&#xff0c;即为异步的JavaScript 和 XML。 2、异步的JavaScript 它可以异步地向服务器发送请求&#xff0c;在等待响应的过程中&#xff0c;不会阻塞当前页面。浏览器可以做自己的事情。直到成功获取响应后&#xf…...

CANN/asc-devkit单核形状API文档

SetSingleShape 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言&#xff0c;原生支持C和C标准规范&#xff0c;主要由类库和语言扩展层构成&#xff0c;提供多层级API&#xff0c;满足多维场景算子开发诉求。 项目地址: https://gitcode…...

别再乱试了!html2canvas跨域截图报CORS错,我靠改一行源码搞定

突破html2canvas跨域截图困境&#xff1a;从源码层面解决CORS问题的实战指南 前端开发者在处理网页截图功能时&#xff0c;html2canvas无疑是最常用的工具之一。然而&#xff0c;当涉及到跨域资源时&#xff0c;这个看似简单的任务往往会演变成一场噩梦。即使按照官方文档设置…...

深度解析 TailGrids 3.0:现代化 React UI 库的重构之道

一、引言在前端技术高速迭代的今天&#xff0c;UI 组件库作为开发效率的核心支撑&#xff0c;正朝着 “工程化、标准化、智能化” 的方向演进。TailGrids 3.0 作为一次从内核到生态的全面重构&#xff0c;并非简单的功能迭代&#xff0c;而是深度融合 React、Tailwind CSS 与 F…...

BlueArchive-Cursors:当二次元美学遇见桌面交互艺术

BlueArchive-Cursors&#xff1a;当二次元美学遇见桌面交互艺术 【免费下载链接】BlueArchive-Cursors Custom mouse cursor theme based on the school RPG Blue Archive. 项目地址: https://gitcode.com/gh_mirrors/bl/BlueArchive-Cursors 想象一下&#xff0c;每天与…...

AMBA 3 AXI协议架构解析与工程实践

1. AMBA 3 AXI协议架构解析AMBA 3 AXI协议作为ARM推出的第三代高级可扩展接口&#xff0c;其架构设计充分考虑了现代SoC对高带宽和低延迟的核心需求。与传统的AMBA 2 AHB协议相比&#xff0c;AXI通过五项关键技术革新实现了性能的质的飞跃&#xff1a;1.1 五通道分离式架构AXI协…...

保姆级教程:手把手教你用Intel RealSense D435i进行动态标定(附打印目标尺寸)

深度相机动态标定实战&#xff1a;从原理到精准优化的完整指南 在计算机视觉和机器人领域&#xff0c;深度相机的标定质量直接决定了三维感知的精度。许多开发者在初次使用Intel RealSense D435i这类设备时&#xff0c;常常会遇到深度图像噪点多、边缘模糊或数据空洞等问题。这…...

Windows 11系统优化深度指南:使用Win11Debloat实现高效系统清理与性能提升

Windows 11系统优化深度指南&#xff1a;使用Win11Debloat实现高效系统清理与性能提升 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes …...

如何一键清理Windows系统:Win11Debloat终极优化指南

如何一键清理Windows系统&#xff1a;Win11Debloat终极优化指南 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and cust…...

厘米级实景复刻 全域化镜像感知:自进化时空标定技术加持,筑牢复杂工况视频孪生运行根基

厘米级实景复刻 全域化镜像感知副标题&#xff1a;自进化时空标定技术加持&#xff0c;筑牢复杂工况视频孪生运行根基前言数字孪生技术规模化落地进程中&#xff0c;实景还原精度不足、全域感知连贯性薄弱、复杂工况适配性差成为制约行业发展的核心瓶颈。传统方案受限于静态标定…...

【开发实战】【memtester】嵌入式系统内存稳定性保障:从工具原理到压力测试场景全解析

1. 为什么嵌入式系统需要内存稳定性测试 在嵌入式产品量产前&#xff0c;内存稳定性测试是硬件验证中最容易被忽视却至关重要的环节。我曾参与过一个智能家居网关项目&#xff0c;设备在实验室运行一切正常&#xff0c;但批量部署后却频繁出现随机重启。经过两周的排查&#xf…...