以太网中的物理层错误

网络工程 以太网 错误
2021-07-17 17:52:33

如果在堆栈 ISO/OSI for Ethernet 的最低可能层检测到错误,会发生什么情况?

例如,考虑到 100BASE-TX,它是用 4B5B 编码实现的,这意味着有 16 种比特组合是无效的。如果接收器从物理介质“读取”一个无效的位组合,例如“00001”,会发生什么?

  • 它丢弃该位(使整个帧无效)
  • 它选择“最相似”的组合
  • 或者是其他东西?

我知道上层可以通过 FCS 字段检测错误,例如 MAC 层,但我不知道收发器如何处理在信号中检测到的错误。

1个回答

对于 100BASE-TX 和 100Mbps MII 接口的特定情况:有一个接收器信号RX_ER。

物理编码子层 (PCS) 规范说:

24.2.2.1.7 无效的代码组

...PCS 通过使用 RX_ER 信号指示在 MII 上接收到无效代码组。

Reconciliation Sublayer and Media Independent Interface 规范说:

22.2.1.5 对来自 MII 的 RX_ER 指示的响应

如果在帧接收期间 RX_DV 和 RX_ER 都被声明,则协调子层应确保 MAC 将检测到该帧中的 FrameCheckError。

所以 PHY 部分指示带外错误,MAC 做它喜欢做的事情,只要它最终生成一个 FrameCheckError。