🔌 第三章 从网线到网络设备
📄 一句话概括

两端接通先互报支持的速度与双工能力,取交集里的最优值;谈不拢(对端不支持协商)就退化到半双工。

📝 本节和前面几节的关系

3.2.4 讲了全双工的好处;本篇讲这个模式怎么定下来。

一、协商机制

链路起始阶段双方互发能力脉冲(FLP); 取共同支持的最高档:1000M全双工 > 100M全双工 > 100M半双工……

二、退化路径

对端是老设备或不支持协商 → 只能并口固定半双工, 表现为【能通但慢一半】——机房排查常见现象。

三、动手 Demo:自动协商怎么谈

三种组合的协商结果:

for a, b, c in [('1000M/全双工','1000M/全双工','1000M/全双工'),
               ('1000M/全双工','100M/全双工','100M/全双工'),
               ('1000M/全双工','100M/半双工','100M/半双工')]:
    print('%-12s + %-12s -> %s' % (a, b, c))

实跑输出:

--------------------------------------------------------------------
自动协商怎么谈
--------------------------------------------------------------------
  两端接通先互报能力,取交集的最优值:

  本端支持         对端支持         协商结果
  -----------------------------------------------
  1000M/全双工     1000M/全双工     1000M/全双工
  1000M/全双工     100M/全双工      100M/全双工
  1000M/全双工     100M/半双工      100M/半双工
  -----------------------------------------------

  谈不拢时(对端不支持协商)会退化到半双工——
  这就是老网线/老设备接入偶尔【慢一半】的原因。

教材按 100BASE-T 讲;千兆起用 FLP 脉冲协商, 机制同构。

30 秒实验

  1. 在两台机器的网卡属性里看【速度和双工】当前值。
  2. 把一端固定为半双工,看另一端是否协商降级。
  3. 记下你家里网口的实际协商速率(100M/1G/2.5G)。

常见误区

  1. 以为协商一定成功——老设备会让它退到半双工。
  2. 以为协商是软件层的——它是链路层的物理脉冲。
自测三问(点开对答案) 1. 自动协商谈什么? —— 速率与双工模式。 2. 谈不拢的结果是什么? —— 退化到半双工。 3. 【能通但慢一半】常见原因是什么? —— 协商失败退为半双工。

相关笔记