延迟冲突和双工不匹配

网络工程 半双工 全双工
2021-07-22 02:10:39

我根本不了解后期碰撞(不幸的是,互联网对我没有帮助)。尽可能详细地描述什么是后期冲突,它们与正常冲突有何不同,网卡如何检测它。

最重要的是:双工失配和后期冲突是如何联系起来的。

2个回答

当(对于半双工模式)可能发生冲突时,在帧的开头有一个时间窗口。这也是为什么存在最小帧大小的原因——需要可靠地检测碰撞。延迟碰撞或帧尺寸过小的一般问题是一些节点检测到碰撞,而另一些则没有如果发送方没有检测到冲突,则帧丢失。

后期碰撞是在开始时的时间窗口过去之后发生的碰撞,此时不应再发生任何碰撞。它们是某些错误设计或故障的迹象 - 段过长、链接的中继器过多、双工不匹配、NIC 问题。

对于双工不匹配 - 一个链路伙伴使用半双工,另一个使用全双工模式 - 全双工端 (FDX) 在准备好数据时开始发送它,而不检查冲突(不可能有FDX 中的碰撞)。根据半双工端 (FDX) 当前正在执行的操作,会有不同的结果:

  • HDX 空闲:正确接收帧
  • HDX 刚刚开始发送:它检测到冲突并中止传输 - FDX 收到一个带有 FCS 错误的短帧(一个矮帧)
  • HDX 已将超过 512 位传输到帧中:它检测到延迟冲突并中止传输 - FDX 检测到一个不完整的帧(不是一个矮帧),并带有 FCS 错误

您应该注意到半双工模式几乎已经过时,源于固有的半双工同轴电缆和过时的中继器集线器。在过去的二十年里,商业网络一直在全双工模式下使用交换网络。

只有当您在端口上强制使用特定模式(例如100 Mbit/s,全双工),禁用自动协商,从而使链路伙伴回退到半双工模式时,才会发生双工不匹配千兆以太网和更快的变体专门使用全双工(半双工是 GbE 的标准化,但在实际硬件中不受支持)并且自动协商是强制性的。

延迟冲突是在帧开始后至少 512 位发生的冲突。

全双工设备假定永远不会发生冲突,因此它可以随时传输数据。

如果全双工设备 (A) 连接到半双工设备 (B),则 A 在开始发送之前不会检查 B 是否正在发送。如果此时 B 正在传输,B 将发送阻塞信号,A 将其检测为延迟碰撞。