大数跨境
0
0

以太网和IEEE802封装

以太网和IEEE802封装 至芯
2025-12-09
4

PART 001


以太网技术体系的深层解析(不止于帧格式)


以太网的核心是 “物理层传输规则 + 数据链路层控制逻辑” 的有机结合,其技术细节决定了它的普及性:
物理层的核心实现
传输介质与速率适配:从早期 10Base-2(细同轴电缆)、10Base-T(双绞线),到现在 100Base-TX(百兆)、1000Base-T(千兆,4 对双绞线)、10Gbase-T(万兆)、400Gbase-FR4(光模块),介质升级始终围绕 “速率提升 + 距离扩展”。
编码与同步机制:曼彻斯特编码(10Mbps 以太网)将时钟与数据融合,每个比特中间有跳变;千兆以太网采用 4B/5B 编码(提升带宽利用率),万兆以太网用 64B/66B 编码(减少同步开销)。
物理接口规范:RJ45 接口(双绞线)定义了 8 针脚的信号分配(1/2 发送、3/6 接收),光口(LC/SC)则通过光信号波长(如 850nm 多模、1310nm 单模)区分传输距离。
数据链路层的核心逻辑
前导码 + SFD 的作用:接收端通过 7 字节前导码完成时钟同步,1 字节 SFD(0xAB)明确 “下一字节开始是 MAC 地址”,避免同步偏差导致的字段错位。
数据字段的 MTU 限制:1500 字节是以太网的标准 MTU(最大传输单元),超过则需 IP 分片;最小 46 字节是为了保证 CSMA/CD 能检测到冲突(传输时间≥2 倍信号传播延迟)。
FCS 的计算范围:覆盖 “目的 MAC~ 数据字段”,接收端计算结果与 FCS 字段不一致时,直接丢弃帧(不通知发送方)。
MAC 地址机制:6 字节全球唯一,前 3 字节为 OUI(由 IEEE 分配给厂商),后 3 字节为厂商自定义,确保终端在局域网内的唯一标识。
冲突处理演进:早期共享总线(HUB 组网)依赖 CSMA/CD,发送前监听、发送中检测冲突、冲突后退避;现在交换机组网(星型拓扑)通过端口隔离冲突域,CSMA/CD 仅作为异常场景的备用机制。
Ethernet II 帧的细节补充:

PART 002


IEEE 802 封装的设计细节与分层逻辑


IEEE 802.3 标准的核心是 “将以太网纳入局域网统一框架”,其封装格式(802.3 LLC/SNAP)的分层设计的核心是适配 “跨技术互联”:
数据链路层的分层拆分(MAC 子层 + LLC 子层)
MAC 子层:与 Ethernet II 的 MAC 逻辑完全一致,负责 MAC 地址封装、FCS 计算、介质访问控制,确保物理层的帧传输合规。
LLC 子层:IEEE 802 系列的 “通用适配层”,核心作用是屏蔽不同局域网技术(以太网、令牌环网、FDDI)的 MAC 子层差异,让上层协议(IP)无需关注底层物理技术。
IEEE 802 封装的完整字段解析(含字节级细节)
OUI(3 字节):组织唯一标识符,0x000000 是 IEEE 分配的 “通用 OUI”,表示适配互联网协议;厂商自定义 OUI(如 Cisco 的 0x00000C)用于私有协议。
类型字段(2 字节):完全复用 Ethernet II 的类型值,0x0800=IPv4、0x0806=ARP、0x86DD=IPv6,解决了 LLC 子层无法直接标识上层协议的问题。
DSAP(1 字节):目的服务访问点,本质是 “LLC 服务的端口号”,0xFF 表示广播(所有接收端都处理),0x06 对应 TCP/IP 协议簇。
SSAP(1 字节):源服务访问点,与 DSAP 对应,标识发送端的 LLC 服务类型,通常与 DSAP 取值相同(0x06)。
控制字段(1 字节):默认 0x03(无编号信息帧 UI),表示 “无需确认的单向数据传输”,适用于绝大多数数据场景;其他取值(如 0x01 监控帧)用于链路状态查询。
前导码(7 字节):0xAA 重复 7 次(0xAAAAAAAAAAAAAA),比特率 10Mbps 时持续 5.6μs,刚好满足接收端时钟同步需求。
SFD(1 字节):0xAB,二进制 10101011,最后一位的跳变(从 0 到 1)标识 “同步结束,帧内容开始”。
MAC 地址字段(共 12 字节):与 Ethernet II 一致,目的 MAC 在前(6 字节),源 MAC 在后(6 字节),支持单播、广播(0xFFFFFFFFFFFF)、组播(第 8 位为 1)。
长度字段(2 字节):取值范围 0~1500,标识后续 “LLC+SNAP + 数据” 的总字节数,例如长度字段为 0x002E(46),则后续字段总长度为 46 字节。
LLC 子层字段(3 字节):
SNAP 子层字段(5 字节):
数据字段(38~1492 字节):因 LLC+SNAP 占用 8 字节,最小长度从 46 字节缩减为 38 字节(确保帧总长度≥64 字节,兼容 CSMA/CD);最大长度 1492 字节(1500-8),上层协议需适配该 MTU(如 PPPoE 场景的 MTU=1492 即源于此)。
FCS(4 字节):CRC32 算法,多项式为 0xEDB88320,覆盖 “MAC 地址~数据字段”,检测帧传输中的比特差错、帧丢失、帧顺序错乱。
纯 LLC 帧(无 SNAP)的特殊场景
当 DSAP=SSAP=0xAA(子网广播)时,无需 SNAP 字段,通过 LLC 的 “协议标识” 直接适配上层协议,但仅适用于早期 Novell NetWare 等局域网协议,现在几乎淘汰。

PART 003


两种封装的底层差异与实战场景对比


对比维度
以太网(Ethernet II 帧)
IEEE 802 封装(802.3 LLC/SNAP 帧)
分层逻辑
数据链路层不分层,直接封装上层协议
数据链路层拆分为 MAC+LLC,LLC 负责跨技术适配
协议标识效率
1 步解析:直接读取类型字段,快速定位上层协议
2 步解析:先读长度字段,再通过 LLC/SNAP 的类型字段定位,效率略低
MTU 适配
数据字段最大 1500 字节(标准 MTU),无额外开销
数据字段最大 1492 字节,需上层协议适配(如 PPPoE、工业协议)
冲突检测兼容性
数据最小 46 字节,完全适配 CSMA/CD 机制
数据最小 38 字节,通过填充确保帧总长度≥64 字节,兼容 CSMA/CD
厂商适配性
无 OUI 绑定,通用适配所有互联网设备
支持厂商自定义 OUI,适配私有协议(如工业控制、物联网设备)
实战应用案例
家庭路由器、数据中心交换机、互联网骨干网
Profinet 工业网络、Modbus TCP 设备、早期异构局域网互联

PART 004


关键补充:封装识别与网络设备适配机制


接收端的封装识别流程
接收端先解析帧头第 13-14 字节(即 Ethernet II 的类型字段、IEEE 802 的长度字段)。
若字段值≥0x0600(1536):判定为 Ethernet II 帧,直接按类型字段调用上层协议(如 0x0800 调用 IP 协议)。
若字段值≤0x05DC(1500):判定为 IEEE 802 帧,先按长度字段提取后续数据,再解析 LLC/SNAP 字段,最终通过 SNAP 的类型字段调用上层协议。
网络设备的适配能力
交换机:仅转发帧,不解析上层协议,自动适配两种封装(按原封装转发)。
路由器 / 防火墙:需解析上层协议,支持两种封装的自动识别,可配置 “强制封装类型”(如工业场景强制使用 IEEE 802 封装)。
终端设备:操作系统(Windows、Linux)默认使用 Ethernet II 封装,工业设备(如 PLC)可配置为 IEEE 802 封装。
🌻亲爱的读者们,今天的分享就到这里啦!如果今天的内容对你有启发
记得点亮右下角的“❤️”或转发给需要的朋友,让温暖传递的更远!
生活或许没有标准答案,但每一次【分享】和【点赞】,都是我们相遇的印记。你最近有哪些感悟或故事?欢迎留言区聊一聊~~~
你的认可,是我们深夜码字的充电桩🔋
明天见!保持好奇,永远鲜活~
🔍关注我们,不错过每一次相遇图片图片图片
扫码领取免费学习资料~~~
往期精彩部分
就业寒冬 拿到5个offer 至芯学生用真本领拿牛offer
FPGA设计学习:掌握Verilog,开启AI算力未来
PCIe BAR空间的深度理解
PCIe的MSI中断机制
PCIE的MSI-X中断
PCIe的路由方式
PCIe协议中Type0与Type1的区别
PCIe的枚举过程

【声明】内容源于网络
0
0
至芯
至芯科技关于FPGA信息的交流平台
内容 392
粉丝 0
至芯 至芯科技关于FPGA信息的交流平台
总阅读54
粉丝0
内容392