解决什么问题
帧抢占不是某台交换机单方面决定的。它发生在一条链路上,需要发送端、接收端和相关 MAC Merge 能力共同成立。如果对端不支持,或者某个端口不支持,调度预算就不能假设片段级阻塞。
本节解决兼容性问题。混合设备网络里,支持表不能只看型号宣传页,要看具体端口和链路状态。
背景与直觉
抢占像两个人约定插话规则。一个人愿意被打断,另一个人听不懂断点和恢复方式,对话就会乱。网络里,如果链路一端无法处理片段和恢复,抢占也不能可靠工作。
怎么解决
逐链路检查这些信息。
| 检查项 | 为什么重要 |
|---|---|
| 本端端口能力 | 设备是否支持抢占 |
| 对端端口能力 | link partner 是否支持 |
| 协商状态 | 是否真的进入可用状态 |
| 队列映射 | 哪些流 express,哪些 preemptable |
| 计数器/日志 | 是否出现片段和抢占行为 |
如果某条链路不支持抢占,那么经过这条链路的 Qbv 预算仍要按完整大帧阻塞或其他保守方式计算。
带来了什么新问题
兼容性会让路径选择更复杂。某条路径跳数更少,但中间一段链路不支持抢占;另一条路径更长,却支持更小 guard band。调度和路径选择需要一起考虑。
同时,设备升级或替换也可能改变能力。验证报告应记录端口能力和协商状态,而不只是写“网络支持抢占”。
检查点
- 为什么抢占预算必须逐链路确认,而不是看整台交换机是否支持?
- 如果路径里只有一段链路不支持抢占,guard band 设计应该怎样保守处理?