4. 以太网交换核心概念

在车载与工业网络中,S32G 这类网关芯片往往需要同时连接多个域控制器、传感器和执行器。要让这些设备在同一时刻高效、可靠地通信,就必须理解以太网交换的底层机制。本章围绕交换芯片架构、MAC 地址表与 VLAN 表、转发与过滤、存储转发与直通模式,以及端口镜像与风暴抑制展开,帮助读者建立从硬件到转发表的完整认知。

一、交换芯片架构:从端口到交换矩阵

交换芯片并不是简单的“多口集线器”。它的核心由端口物理层(PHY/MAC)、入队/出队缓冲、交换矩阵(Switching Fabric)和转发表引擎组成。每个端口收到帧后,先由 MAC 层完成前导码、FCS 校验和地址提取,再送入交换引擎查询转发表,最终通过交换矩阵送到目标端口。

S32G 的以太网交换模块通常支持多端口线速转发,并具备独立的收发队列。理解架构的关键在于:转发决策发生在交换引擎,而不是 CPU。CPU 只在需要管理、路由或异常处理时介入,因此交换芯片可以在不占用内核资源的情况下完成大部分流量转发。

交换芯片内部架构与数据路径 Port 1 (PHY/MAC) Port 2 (PHY/MAC) Port 3 (PHY/MAC) Port 4 (PHY/MAC) 入队缓冲 Ingress Queue FCS 校验 VLAN 解析 DA/SA 提取 风暴检测 交换引擎 Switching Engine 查 MAC 表 查 VLAN 表 转发/过滤决策 镜像复制 转发表 MAC 表 + VLAN 表 出队缓冲 Egress Queue 优先级调度 VLAN 标签插入 FCS 重算 CPU / 管理 异常/路由/配置

二、MAC 表与 VLAN 表:转发的“字典”

交换芯片的转发能力依赖两张核心表:MAC 地址表和VLAN 表。MAC 表记录“源 MAC 地址—端口—VLAN”的映射关系,用于确定目的端口;VLAN 表则定义哪些端口属于同一广播域,以及标签的进出规则。

当帧进入端口时,交换引擎会执行以下动作:

  1. 提取源 MAC 和目的 MAC;
  2. 若源 MAC 不在表中,则学习并写入 MAC 表;
  3. 根据目的 MAC 查询 MAC 表,得到出端口;
  4. 检查 VLAN 表,确认入端口与出端口是否在同一 VLAN;
  5. 若目的 MAC 为广播/组播或未知单播,则泛洪到同 VLAN 其他端口。

MAC 表通常有老化时间(如 300 秒),超时未更新的条目会被删除,以适应设备迁移。VLAN 表则相对静态,由配置决定。两者配合,才能实现“只把帧送到该去的地方”。

三、转发与过滤机制:该转的转,该丢的丢

交换芯片并非无条件转发所有帧。它会在转发前执行一系列过滤判断,常见规则包括:

  • VLAN 过滤:入端口与出端口不在同一 VLAN,直接丢弃;
  • MAC 过滤:目的 MAC 被配置为静态过滤条目,丢弃;
  • 风暴抑制:广播/组播/未知单播速率超过阈值,丢弃或限速;
  • 端口安全:源 MAC 与绑定表不符,丢弃并告警;
  • ACL 过滤:基于五元组匹配,执行 permit/deny。

过滤机制的价值在于隔离故障域和抑制异常流量。例如,某个节点因软件缺陷持续发送广播帧,若没有风暴抑制,整个 VLAN 都会被拖慢;而开启广播风暴抑制后,交换芯片会在入口处限速,保护其他端口。

提示:过滤规则通常按优先级顺序匹配,一旦命中 deny 或限速,后续规则不再执行。配置时应把最严格的规则放在前面。

四、存储转发与直通模式:两种转发策略

交换芯片支持两种基本转发模式:

对比项 存储转发(Store-and-Forward) 直通模式(Cut-Through)
转发时机 收完整帧并校验 FCS 后转发 读到目的 MAC 后立即转发
时延 较高,与帧长相关 极低,固定短时延
错误帧处理 丢弃 CRC 错误帧 可能转发错误帧
适用场景 工业控制、TSN 高可靠场景 低时延、对错误不敏感场景

在 S32G 的 TSN 应用中,通常推荐存储转发模式,因为它能保证错误帧不扩散,并与时间敏感网络的门控、调度机制更好配合。直通模式虽然时延低,但会牺牲可靠性,需谨慎使用。

五、端口镜像与风暴抑制:可观测性与保护

端口镜像用于把指定端口的进出流量复制到监控端口,便于抓包分析。配置时需指定源端口、目的端口和镜像方向(入、出或双向)。例如:

# 将 Port 1 入方向流量镜像到 Port 5
switchport mirror source port 1 direction ingress
switchport mirror destination port 5
switchport mirror enable

风暴抑制则用于限制广播、组播和未知单播的速率。常见参数包括阈值(pps 或百分比)和动作(丢弃或告警)。在车载网络中,建议对未知单播也开启抑制,防止 MAC 表溢出导致泛洪。

注意:镜像端口不能同时作为普通业务端口使用,否则会引入额外流量和环路风险。风暴抑制阈值设置过低会误伤正常突发流量,建议先观察基线再调整。

六、案例与复盘:一次广播风暴的排查

某 S32G 网关项目中,诊断口突然出现大量丢包。抓包发现广播帧速率从正常的 200 pps 飙升到 15000 pps。排查步骤:

  1. 查看交换芯片端口统计,确认广播帧来自 Port 3;
  2. 检查 Port 3 所连节点,发现其软件陷入重启循环,反复发送 ARP 广播;
  3. 临时在 Port 3 开启广播风暴抑制,阈值设为 1000 pps,网络恢复;
  4. 修复节点软件后,关闭抑制,恢复正常。

复盘结论:风暴抑制是最后一道防线,但不能替代根因修复。同时,MAC 表老化时间不宜过长,否则故障节点迁移后旧条目仍会误导转发。建议在工程中同时配置端口镜像和风暴抑制,前者用于定位,后者用于保护。

本章要点:交换芯片通过 MAC 表和 VLAN 表完成转发决策;过滤机制保证只转发合法流量;存储转发更可靠,直通模式更低时延;端口镜像用于观测,风暴抑制用于保护。理解这些机制,是后续配置 TSN 和 VLAN 的基础。