以太网的 MAC 层

目录

[1. MAC 层的硬件地址](#1. MAC 层的硬件地址)

[48 位的 MAC 地址](#48 位的 MAC 地址)

[2. MAC 帧的格式](#2. MAC 帧的格式)

[以太网 V2 的 MAC 帧格式](#以太网 V2 的 MAC 帧格式)

[无效的 MAC 帧](#无效的 MAC 帧)

[IEEE 802.3 MAC 与以太网 V2 MAC 帧格式的区别](#IEEE 802.3 MAC 与以太网 V2 MAC 帧格式的区别)


1. MAC 层的硬件地址

硬件地址又称为物理地址,或 MAC 地址。

IEEE 802 标准为局域网规定了一种 48 位的全球地址(简称为地址)是指局域网上的每一台计算机中固化在适配器的 ROM 中的地址。

注意:如果连接在局域网上的主机或路由器安装有多个适配器,这样的主机或路由器就有多个"地址"。更准确些说,这种 48 位"地址"应当是某个接口的标识符

例如:

48 位的 MAC 地址

·IEEE 注册管理机构 RA 负责向厂家分配前 3 个字节 (即高 24 位),称为组织唯一标识符 OUI (Organizationally Unique Identifier)。

·厂家自行指派后 3 个字节 (即低 24 位),称为扩展标识符 (extended identifier)。

·必须保证生产出的适配器没有重复地址。

·地址被固化在适配器的 ROM 中。

IEEE 规定地址字段的第 1 字节的最低位为 I/G (Individual / Group) 位。

单站地址:I/G 位 = 0。

组地址:I/G 位 = 1。组地址用来进行多播。

广播地址:所有 48 位都为 1(全 1)。为广播地址。只能作为目的地址使用。

IEEE 把地址字段第 1 字节的最低第 2 位规定为 G/L (Global / Local) 位。

全球管理:G/L 位 = 0。厂商向 IEEE 购买的 OUI 都属于全球管理。

本地管理:G/L 位 = 1。 这时用户可任意分配网络上的地址。

适配器具有过滤功能

·每收到一个 MAC 帧,先用硬件检查帧中的 MAC 地址。

·如果是发往本站的帧则收下,然后再进行其他的处理。

·否则就将此帧丢弃,不再进行其他的处理。

"发往本站的帧"包括以下 3 种帧:

·单播 (unicast) 帧(一对一)

·广播 (broadcast) 帧(一对全体)

·多播 (multicast) 帧(一对多)

以混杂方式 (promiscuous mode) 工作的以太网适配器只要"听到"有帧在以太网上传输就都接收下来。

2. MAC 帧的格式

·常用的以太网 MAC 帧格式有 2 种标准:

(1)DIX Ethernet V2 标准

(2)IEEE 的 802.3 标准

·最常用的 MAC 帧是以太网 V2 的格式。

以太网 V2 的 MAC 帧格式

上图分析:

MAC 层:

·目的地址字段: 6 字节。

·源地址字段: 6 字节。

·类型字段: 2 字节。类型字段用来标志上一层使用的是什么协议, 以便把收到的 MAC 帧的数据上交给上一层的这个协议。

·数据字段 :46 ~ 1500 字节。数据字段的正式名称是 MAC 客户数据字段。 最小长度 64 字节 - 18 字节的首部和尾部 = 数据字段的最小长度(46字节)

·FCS 字段 :4 字节。当数据字段的长度小于 46 字节时,应在数据字段的后面加入整数字节的填充字段,以保证以太网的 MAC 帧长不小于 64 字节。

当传输媒体的误码率为 时, MAC 子层可使未检测到的差错小于

物理层:

·由硬件在帧的前面插入 8 字节。第一个字段共 7 个字节,是前同步码,用来迅速实现 MAC 帧的比特同步。第二个字段 1 个字节是帧开始定界符,表示后面的信息就是 MAC 帧。

为了达到比特同步,在传输媒体上实际传送的要比 MAC 帧还多 8 个字节。

抓包

无效的 MAC 帧

·数据字段的长度与长度字段的值不一致;

·帧的长度不是整数个字节;

·用收到的帧检验序列 FCS 查出有差错;

·数据字段的长度不在 46 ~ 1500 字节之间。

·有效的 MAC 帧长度为 64 ~ 1518 字节之间。

对于检查出的无效 MAC 帧就简单地丢弃。 以太网不负责重传丢弃的帧。

IEEE 802.3 MAC 与以太网 V2 MAC 帧格式的区别

·当"长度/类型"字段值大于0x0600(1536) 时,表示"类型";小于 0x0600 时,表示"长度"。

·当"长度/类型"字段值小于 0x0600 时,数据字段必须装入逻辑链路控制 LLC 子层的 LLC 帧。

·在 802.3 标准的文档中,MAC 帧格式包括了 8 字节的前同步码和帧开始定界符。

现在市场上流行的都是以太网 V2 的 MAC 帧,但大家也常常把它称为 IEEE 802.3 标准的 MAC 帧。

无帧长度怎么办?交付给上层多大的数据?

也就是帧定界的帧尾标记。

根据曼彻斯特编码特点,有电平跳变,当接收端发现没有电压的变化,就找到了帧尾的位置,这个位置往前数,四个字节,就是数据字段的结束位置,数据字段不足46个字节,会在数据字段的后面加入一个整数字节的填,充字段,上一层有总长度,根据上一层的,总长度来去掉填充字段。

本文仅为个人学习笔记,欢迎一起学习~

相关推荐
qq_429856573 小时前
清空DNS 缓存
计算机网络
IT 青年4 小时前
计算机网络 (8)物理层的传输方式
计算机网络
我要学编程(ಥ_ಥ)4 小时前
初始JavaEE篇 —— 网络原理---传输层协议:深入理解UDP/TCP
java·网络·tcp/ip·udp·java-ee
百事可乐☆5 小时前
全局webSocket 单个页面进行监听并移除单页面监听
网络·websocket·网络协议
深圳启明云端科技5 小时前
WiFi、蓝牙共存,物联网无线通信技术,设备无线连接数据传输应用
网络·物联网·智能家居
dengjiayue5 小时前
OSI 网络 7 层模型
网络
hgdlip5 小时前
IP属地和所在地不一致什么意思?怎么换成另外一个地方的
服务器·网络协议·tcp/ip
cnsinda_sdc6 小时前
信创数据防泄漏中信创沙箱是什么样的安全方案
运维·网络·安全·源代码管理·源代码防泄密·源代码加密
忆源6 小时前
Linux高级--2.4.5 靠协议头保证传输的 MAC/IP/TCP/UDP---协议帧格式
网络协议·tcp/ip·udp
深圳启明云端科技6 小时前
潮玩设备AI语音交互方案,ESP32-S3芯片模组物联网通信技术
网络·物联网·音视频·智能家居