2. 工业以太网基础

PROFINET RT/IRT 的实时性能并不是凭空产生的,它建立在标准以太网这套“地基”之上。要理解为什么普通以太网经过改造后能够承载毫秒甚至微秒级的循环通信,就必须先看清以太网帧里到底装了什么、交换机如何处理这些帧、VLAN 与 QoS 如何为实时流量让路,以及全双工为什么是工业网络的基本前提。

一、以太网帧结构:实时数据的“集装箱”

以太网帧是链路上传输数据的基本单位。一个标准以太网帧由前导码、目的 MAC、源 MAC、类型/长度、数据载荷和帧校验序列(FCS)组成。其中与工业实时性关系最密切的是三部分:MAC 地址决定帧被谁接收,类型字段标识上层协议,FCS 用于检测传输错误。

PROFINET 在以太网之上定义了 EtherType 0x8892 作为实时帧的标识。普通 TCP/IP 报文使用 0x0800(IPv4),而 PROFINET RT 与 IRT 帧直接封装在以太网层,跳过 TCP/IP 协议栈,从而减少协议处理开销和不确定延迟。这也是 PROFINET 实时通信能够做到低抖动的重要原因。

以太网帧(简化):
+--------+--------+--------+--------+----------+--------+-----+
| 前导码 | 目的MAC | 源MAC  | 类型   | 数据载荷 | FCS    | IFG |
+--------+--------+--------+--------+----------+--------+-----+
类型 = 0x8892 → PROFINET RT/IRT 实时帧
类型 = 0x0800 → IPv4(用于 NRT 非实时通信)
最小帧长 64 字节,最大 1518 字节(不含 VLAN 标签)

需要特别注意最小帧长 64 字节的限制。如果实时数据很短,必须填充到 64 字节,否则会被网卡丢弃。这意味着即使只传几个字节的 IO 数据,链路上仍会占用完整的帧时间,这是计算网络负载时必须考虑的因素。

二、交换技术:从共享到独享

早期以太网使用集线器,所有端口共享同一冲突域,任何时刻只能有一个站点发送。交换机则通过 MAC 地址表实现端口级转发:收到帧后查找目的 MAC 对应的端口,只从该端口转发,其他端口不受影响。这带来了三个关键改善:冲突域被隔离、带宽独享、转发延迟可预测。

工业交换机通常采用存储转发或直通转发。存储转发会先完整接收并校验 FCS,延迟较大但能过滤错误帧;直通转发在读到目的 MAC 后立即转发,延迟小但可能传播错误帧。对于 PROFINET RT,推荐使用支持优先级队列的存储转发交换机,以便配合 QoS 调度。

工业现场应避免使用普通办公交换机。办公交换机可能不支持 VLAN、QoS 或组播过滤,容易导致 PROFINET 实时帧被延迟或丢弃,表现为设备频繁掉站或循环抖动增大。

三、VLAN 与 QoS:为实时流量让路

VLAN(虚拟局域网)通过 802.1Q 标签把物理网络划分为多个逻辑网络。标签插入在源 MAC 与类型字段之间,包含 12 位 VLAN ID 和 3 位优先级(PCP)。在 PROFINET 中,VLAN 常用于隔离实时流量与非实时流量,例如把 RT 帧放在高优先级 VLAN,把诊断和 Web 访问放在低优先级 VLAN。

QoS 则依据 802.1Q 优先级字段进行队列调度。交换机为每个端口维护多个优先级队列,高优先级队列优先发送。PROFINET 通常将 RT 帧标记为优先级 6,IRT 帧标记为优先级 7,普通 TCP/IP 流量为 0~3。这样即使网络出现突发流量,实时帧也能优先通过。

流量类型EtherType典型优先级是否经过 TCP/IP实时性
PROFINET IRT0x88927否最高,等时同步
PROFINET RT0x88926否高,循环实时
PROFINET NRT0x08000~3是低,诊断/组态
普通办公流量0x08000是无要求

四、全双工通信:消除冲突的基础

全双工意味着端口可以同时发送和接收,不再使用 CSMA/CD 冲突检测机制。在 100BASE-TX 和 1000BASE-T 中,发送与接收使用独立的双绞线对,因此不会发生冲突。全双工是工业以太网的基本要求,它使链路延迟稳定、无冲突退避,为循环通信提供了可预测的时基。

如果端口被错误地设置为半双工,或者一端全双工另一端半双工,就会出现延迟冲突和 CRC 错误,表现为通信时断时续。工业现场应统一使用全双工固定配置,或确保两端都启用自协商。

五、工业网络需求与常见误区

工业网络与办公网络的需求差异明显:办公网络追求吞吐量和成本,工业网络追求确定性、实时性和可靠性。工业现场通常要求循环周期稳定在 1~10 ms,抖动小于周期的 10%~20%,并且支持冗余和快速恢复。

常见误区一:认为“千兆交换机一定比百兆快”。实时性取决于转发延迟和队列调度,而非单纯带宽。误区二:把 VLAN 当作安全隔离手段。VLAN 只提供逻辑隔离,不提供加密和认证。误区三:忽略组播过滤。PROFINET 使用组播进行设备发现和报警,若交换机不支持 IGMP Snooping,组播会泛洪到所有端口,增加无关设备负担。

下面这张图把本节的核心对象放在同一条链路上:从发送端的帧结构,到交换机的 VLAN/QoS 处理,再到接收端的全双工端口,帮助建立整体认识。

工业以太网实时链路:帧结构 → 交换 → VLAN/QoS → 全双工 发送端设备 PROFINET IO 控制器 EtherType 0x8892 优先级 PCP=6 以太网帧结构 目的MAC | 源MAC 0x8100 VLAN标签 0x8892 | 数据 | FCS 工业交换机 MAC 地址表转发 VLAN 隔离 QoS 优先级队列 接收端设备 PROFINET IO 设备 全双工端口 FCS 校验 关键参数: 最小帧长 64 字节 · 最大帧长 1518 字节 · IFG 12 字节 · 100M 全双工 · 优先级 6/7 用于 RT/IRT 工业网络需求: 确定性延迟 · 低抖动 · 循环周期 1~10 ms · 冗余恢复 · 组播过滤 · 全双工固定配置

把这张图记在脑中,后续学习 PROFINET RT 的循环数据交换、IRT 的等时同步以及网络规划中的负载计算时,就能清楚地知道每一个优化动作作用在帧、交换机还是端口上。工业以太网的基础打得越牢,实时通信的调试和排障就越有方向。