本页协议说明(点开阅读)

跨层 · 控制面与数据面

★★★★ 先看图上两种线

紫色虚线 = 控制面:交换路由、算出最优、把结论下发成表。★★ 一天可能只跑几次,每次几十毫秒。

蓝色实线 = 数据面:包真的从这里穿过去 —— 查表、改 TTL、换二层头。★★ 一秒钟几百万次,每次几微秒。

★★★★ 差别不在难易,在频率:一次决策,百万次转发。

★★★ 两张表,和数据面为什么能快

★★★ 控制面的表是 RIB(所有候选 + 属性);下发给数据面的 FIB 只留选中的结果:前缀 → 出口 + 下一跳。★★ 属性全丢,查表用不上。

★★★★ 正因为要做的事少而固定,数据面才压得下成本:扔进芯片(查表线速,CPU 不碰包)、绕过内核(轮询代替中断、省掉 sk_buff)、窄带上还能顺手压头(拿 CPU 换带宽)。

★ 常见误解

★★★★ 「包来了才去算路」 —— 不算。算路早算完了,包来的时候只是查一张已经算好的表。

★★★★ 「控制面挂了就断网」 —— 不会立刻断,蓝线还在跑(场景②)。但新路由学不到,拓扑一变就成黑洞。

★★★ 「这只是路由器的事」 —— 二层也一样:STP 算树是控制面,查 MAC 表转发是数据面。每一层都有这两面。

冀ICP备2026021556号-2|冀公网安备13068302000206号