📡 第二章 彻底理解L2交换机
📄 一句话概括

千兆口向下兼容 10/100,但协商结果是按优先级选的,不是「谁高听谁」。 而且千兆根本没有半双工——规范里没有这个模式。

📝 本节和前面几节的关系

上一节讲 10/100,这一节讲千兆。两者最大的差别在协商的复杂度。 这一节的表值得记住,因为现场查「为什么只协商到百兆」时全靠它。

一、优先顺序是有规矩的

从高到低:1000 全 > 1000 半 > 100 全 > 100 半 > 10 全 > 10 半。

千兆半双工那一行实际上不存在:1000BASE-T 要求四对线同时双向收发, 物理上做不到「一边听一边发」。所以它只是历史遗留,真跑起来会退到 100。

这个顺序的实用意义:一端支持千兆、另一端只支持百兆时, 结果是百兆全双工——没问题,但上行带宽变了,收敛比要重算。

二、为什么只协商到百兆

四个原因,按出现频率排:

一、对端只有百兆口。最常见,也最正常。 二、线缆有问题。千兆要四对线全好,一对断芯就退到百兆(百兆只用两对)。 所以「换了根线就好了」的故障八成是断芯。 三、一端强制写死百兆。关掉协商,对端只能猜。 四、模块或端口故障。PHY 芯片坏了,只能跑低速。

排查顺序:先看两端能力,再看协商设置,再看线缆测试,最后换端口试。

三、千兆口今天的分工

接终端:今天绝大多数终端都是千兆口,所以接入交换机应该全千兆。 接 AP:Wi-Fi 5 之后 AP 上行要千兆,Wi-Fi 6/7 甚至要 2.5G。 拿百兆口接 Wi-Fi 6 AP 是常见浪费。 接摄像头:4K 摄像头码率 8 Mbps 上下,百兆够用,但多路汇聚时要注意。

四、动手 Demo:五组协商结果与各自的带宽

这段列五组配置的协商结果与单向/双向带宽。 重点看最后一行——本端强制千兆、对端只有百兆,结果不是连不上,是百兆半双工。

for a, b, c, up in ((u"1000 自动", u"1000 自动", u"1000 全", 1000),
                    (u"1000 自动", u"100 自动", u"100 全", 100),
                    (u"1000 强制全", u"100 自动", u"100 半", 100)):
    T([a, b, c, u"%d Mbps" % up, u"%d Mbps" % (up * 2)],
      [0, 0, 0, 0, 0])

实跑输出:

--------------------------------------------------------------------
10/100/1000 端口,协商的优先顺序是有规矩的
--------------------------------------------------------------------
**千兆口向下兼容 10/100,但「兼容」不等于「随便配」。**协商结果是按优先级选的,
不是按「谁高听谁」。

**802.3 规定的优先级从高到低**:

  1. 1000BASE-T 全双工
  2. 1000BASE-T 半双工
  3. 100BASE-TX 全双工
  4. 100BASE-TX 半双工
  5. 10BASE-T 全双工
  6. 10BASE-T 半双工

**这个顺序有两个后果值得记住。**

**第一,千兆半双工排第二,但它实际上不存在。**
1000BASE-T 规范里没有半双工——它要求四对线同时双向收发,物理上就做不到「一边听一边发」。
所以这一行只是历史遗留,真跑起来会退到 100。

**第二,一端支持千兆、另一端只支持百兆时,结果是百兆全双工。**这没问题,
但要注意上行带宽变了——上一节算的收敛比要重算。

**算一遍协商结果的带宽账**:

  本端            对端          结果        单向          双向
  ---------------------------------------------------------------------
  1000 自动       1000 自动     1000 全     1000 Mbps     2000 Mbps
  1000 自动       100 自动      100 全      100 Mbps      200 Mbps
  1000 自动       10 自动       10 全       10 Mbps       20 Mbps
  1000 强制全     1000 自动     1000 全     1000 Mbps     2000 Mbps
  1000 强制全     100 自动      100 半      100 Mbps      200 Mbps

**看最后一行**:本端强制千兆、对端只有百兆,结果不是「连不上」,是「百兆半双工」。
**强制写死速率会关掉协商,双工就只能猜**——这类问题在换设备时特别常见:
老设备换掉、新设备自适应,结果新设备因为对面写死而猜成半双工。

**规矩很简单:两端都自动,或者两端都强制同一个速率和双工。**永远不要「一端自动一端强制」。

最后一行是关键:本端强制千兆、对端只有百兆,结果不是「连不上」, 是「百兆半双工」——强制关掉了协商,双工只能猜。

这一类问题在换设备时特别常见:老设备换掉、新设备自适应,结果新设备因为对面写死而猜成半双工。 症状就是上一节讲的那三条。

所以规矩很简单:两端都自动,或者两端都强制同一个速率和双工。 永远不要「一端自动一端强制」——这一句在整个网络运维里都成立。

30 秒实验

  1. 在交换机上查一个千兆口的协商结果。
  2. 用测线仪测一根网线,看八根是不是全通。
  3. 找一个 AP 的上行口,看它是百兆还是千兆。

常见误区

  1. 以为千兆有半双工。规范里没有。
  2. 以为协商不上就是设备坏。先测线。
  3. 以为千兆口一定跑千兆。线缆与协商都会降级。
自测三问(点开对答案) 1. 协商的优先顺序从高到低是什么? —— 1000 全、1000 半、100 全、100 半、10 全、10 半。 2. 千兆为什么没有半双工? —— 要求四对线同时双向收发,物理上无法「一边听一边发」。 3. 只协商到百兆,常见原因有哪些? —— 对端只有百兆、线缆断芯、一端强制、端口或模块故障。

下一节:光纤口不是一种口,是一个「插座」——插什么模块决定它是什么。

相关笔记