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

以太网帧结构详解析

以太网帧是以太网数据链路层的核心数据单元,负责在局域网中封装网络层的 IP 数据包并完成物理传输,是实现以太网内数据转发的基础。以太网帧有标准以太网帧(Ethernet II,即 DIX 帧)IEEE 802.3 帧两种主流格式,其中Ethernet II 帧是目前最常用的格式(如 TCP/IP 网络中默认使用),也是华为数通设备、企业网、互联网中主流的帧结构,下文将以Ethernet II 帧为核心,结合 IEEE 802.3 帧对比讲解,同时说明帧的关键参数与传输规则。

一、核心:Ethernet II(以太网 II 型)帧结构

Ethernet II 帧由前导码 + 帧起始定界符目的 MAC 地址源 MAC 地址类型字段数据段帧检验序列(FCS)6 个部分组成,总长度范围为64~1518 字节,各字段按固定顺序排列,物理层传输时为从左到右、低位在前

以下为 Ethernet II 帧的字节分布与各字段详解(单位:字节):

字段名称字节数核心功能与说明
前导码(Preamble)7由 7 个字节的10101010交替二进制码组成,作用是同步收发双方的时钟,让接收方提前做好数据接收准备,消除物理层传输的时钟偏差。
帧起始定界符(SFD)1二进制码为10101011,前 6 位延续前导码的交替规律,最后两位11为结束标志,告诉接收方:后续开始是以太网帧的真正有效数据
目的 MAC 地址6接收方的物理地址(48 位二进制),决定数据帧的转发目标,分为 3 类:1. 单播 MAC:指向唯一接收设备(如00-1A-2B-3C-4D-5E);2. 广播 MAC:全 1(FF-FF-FF-FF-FF-FF),发送给局域网内所有设备;3. 组播 MAC:指向一组特定设备,用于组播通信。
源 MAC 地址6发送方的物理地址(48 位二进制),唯一标识发送设备,接收方可通过此字段反馈数据、排查通信故障。
类型字段(Type)2Ethernet II 帧的核心特征字段,用于标识帧中数据段封装的上层协议类型,接收方通过此字段判断如何解封装数据。常见取值:-0x0800:封装 IPV4 数据包(最常用);-0x0806:封装 ARP 协议报文(地址解析协议);-0x86DD:封装 IPV6 数据包。
数据段(Data)46~1500封装的上层协议数据(如 IP 数据包、ARP 报文),最小 46 字节,最大 1500 字节(1500 字节为以太网 MTU 默认值)。若上层数据不足 46 字节,会自动填充 0 至 46 字节,保证帧的最小长度要求。
帧检验序列(FCS)432 位循环冗余校验码(CRC),由发送方根据目的 MAC、源 MAC、类型、数据段的二进制数据计算生成,接收方收到帧后重新计算 CRC,与 FCS 字段对比:1. 一致:帧传输无差错,正常接收;2. 不一致:帧传输出错,直接丢弃(以太网不负责重传,重传由上层协议如 TCP 完成)。

二、以太网帧的关键传输规则

  1. 帧间隙(IFG):两个以太网帧之间必须保留96 比特(12 字节)的空闲时间,防止相邻帧在物理层传输时重叠,保证接收方有足够时间处理前一帧、准备接收后一帧;
  2. 差错检测:仅通过 FCS 做CRC 循环冗余校验,检测帧的传输差错,不检测丢失、重复帧,也不负责差错重传,重传由上层协议(如 TCP)实现;
  3. MAC 地址转发:以太网交换机工作在数据链路层,通过帧的目的 MAC 地址完成转发:交换机维护 MAC 地址表,记录 MAC 地址与对应接口的映射,收到帧后根据目的 MAC 查找接口,单播帧从对应接口转发,广播 / 未知单播帧泛洪至所有接口(除入接口);
  4. 巨帧支持:部分高端网络设备可开启Jumbo Frame(巨帧)功能,将数据段最大长度提升至 9000 字节(MTU=9000),减少帧的数量,提升大文件传输效率(如数据中心、存储网络),但需全网设备统一开启,否则会出现帧分片 / 丢弃。

三、以太网帧的封装与解封装过程(核心通信逻辑)

以太网帧的核心作用是为上层 IP 数据包提供数据链路层封装,实现局域网内的物理传输,以 “PC1 向同网段 PC2 发送 IP 数据包” 为例,封装与解封装过程如下:

  1. 封装(发送方 PC1)
    • 网络层:PC1 将应用层数据封装为 IP 数据包(含源 IP、目的 IP);
    • 数据链路层:将 IP 数据包作为以太网帧的数据段,添加目的 MAC(PC2 的 MAC)、源 MAC(PC1 的 MAC)、类型字段(0x0800,标识 IPV4),计算 FCS,再由物理层添加前导码 + SFD,完成整帧封装;
    • 物理层:将二进制帧转换为电信号 / 光信号,通过网线 / 光纤传输。
  2. 转发(以太网交换机)
    • 交换机接收帧后,剥离前导码 + SFD,检查 FCS 确认无差错;
    • 读取帧的源 MAC 地址,更新 MAC 地址表(记录源 MAC 与入接口的映射);
    • 读取帧的目的 MAC 地址,在 MAC 地址表中查找对应接口,从该接口转发帧(物理层重新添加前导码 + SFD)。
  3. 解封装(接收方 PC2)
    • 物理层:接收电信号 / 光信号,解析出前导码 + SFD,同步时钟后提取后续有效帧;
    • 数据链路层:剥离目的 MAC、源 MAC、类型字段,检查 FCS 确认无差错,根据类型字段(0x0800)判断数据段为 IP 数据包,将其向上层网络层传递;
    • 网络层:解封装 IP 数据包,提取上层数据并传递至应用层,完成通信。

四、拓展:带 VLAN 标签的以太网帧(802.1Q 帧)

在企业网中,为实现广播域隔离和 VLAN 间转发,会在Ethernet II 帧的基础上添加802.1Q VLAN 标签,形成带标签帧(Tagged Frame),未添加标签的为无标签帧(Untagged Frame)

  1. 标签位置:在源 MAC 地址(6 字节)类型字段(2 字节)之间,插入4 字节的 802.1Q 标签
  2. 帧长度变化:带标签帧的最大标准长度变为1522 字节(1518+4),最小仍为 64 字节;
  3. 标签核心字段:包含VLAN ID(12 位),取值范围 0~4095(0 和 4095 保留,实际可用 1~4094),用于标识帧所属的 VLAN,交换机通过 VLAN ID 实现不同 VLAN 的帧隔离与转发。

带 VLAN 标签的帧是企业网实现 VLAN 划分的核心,也是全网通信中 “二层隔离、三层互通” 的基础,与 IP 路由技术结合可实现不同 VLAN、不同网段的跨网通信。

http://www.jsqmd.com/news/514229/

相关文章:

  • GME-Qwen2-VL-2B在Unity引擎中的应用:为游戏角色赋予视觉认知能力
  • 施耐德EcoStruxure平台深度解析:IEC 61499如何改变传统工业自动化
  • 避坑指南:UniApp调用Zebra PDA扫码时你可能遇到的7个坑(含Android10适配方案)
  • Qwen-Image+RTX4090D企业级部署:多租户隔离的Qwen-VL图文API服务架构与监控方案
  • Qwen3-32B大模型GPU算力适配教程:RTX4090D与A100显存调度差异对比
  • Qwen3-0.6B-FP8垂直场景:法律文书初稿生成与条款润色应用
  • 详细解析可执行文件
  • 基于方程的Comsol气泡空化模型及其参考文献分析
  • 利用 NTLite 打造个性化 Windows 镜像:从基础设置到高级优化
  • [具身智能-77]:ROS2 节点是什么?是线程吗?是进程吗?它与线程、进程的关系?
  • 面试官不敢问的RAG!揭秘知识增强的真相,轻松应对大模型应用开发难题!
  • 第4章 VibeCoding —— 氛围编程的艺术
  • 避坑指南:北醒TFmini-S雷达连接上位机,数据曲线不显示?可能是这个鼠标操作惹的祸
  • varch嵌入式C框架:零分配、编译期泛型与声明式初始化
  • LPDDR4 与主平台兼容设计指南:关键参数 + 适配工具 + 稳定性验证
  • CTFshow水友赛复盘:如何从爱情故事中破解AES加密(附Python脚本)
  • 从计算器到框架思维:用C语言回调函数实现一个可插拔的‘运算引擎’
  • 内网开发必备:5分钟搞定WSL2离线安装(含Ubuntu迁移避坑指南)
  • OpenClaw健康助手:Qwen3-32B解析智能手表数据生成周报
  • 我的第一个前端小项目:海淘资讯页面开发手记
  • Unsloth新手入门:从环境搭建到第一个微调项目
  • AI开发新范式——规范驱动开发(SDD):OpenSpec如何为AI Agent注入项目记忆【SDD实践篇】
  • 属性和VAR_IN和VAR_OUT的区别
  • 2026年潮州豆包GEO优化公司Top5深度测评:从技术实力到效果落地的选型指南 - 小白条111
  • [具身智能-78]:ROS2 DDS的发布者、订阅者、服务服务器、服务客户端、动作服务器、动作客户端,它们是节点的能力,分别运行在各自的节点中。
  • Xilinx ZYNQ用户迁移指南:如何用复旦微FMQL45T900实现国产化替代
  • 02. 你必须真正理解的核心概念 大模型学习(基础篇)
  • 【GitHub】精准下载:告别克隆整个仓库,只获取你需要的文件夹
  • 深度剖析!网络空间安全专业就业全景,从入门小白到职场精英,一文详解!
  • DataX动态传参实战:如何灵活配置数据同步任务(含案例解析)