路由器与交换电路的非必须关系

路由器中需要有交换电路/交换单元,而且这恰恰是路由器与"跑转发软件的通用计算机"的本质区别之一。分几层说清楚。

一、路由器为什么必须有交换单元

经典路由器体系结构由四部分组成:

复制代码
输入端口 ──┐                    ┌── 输出端口
输入端口 ──┤   交换结构          ├── 输出端口
输入端口 ──┤  (Switching Fabric)├── 输出端口
           └───┬────────┬──────┘
            路由处理器(控制平面:跑 OSPF/BGP、生成转发表)

查表(决定"从哪个口出去")只完成了转发的一半工作;另一半是把分组物理地从输入线卡搬运到输出线卡------完成这个搬运的硬件就是交换单元/交换结构。没有它,N 个端口之间就无法互连,路由器就退化成一堆孤立的接口卡。

二、交换结构的三种经典形态

形态 复用方式 聚合带宽瓶颈
共享内存式 时分(所有端口轮流读写同一内存) 内存带宽
共享总线式 时分(所有端口轮流占用同一总线) 总线带宽 + 仲裁
交叉矩阵/多级互连网络 空分(多对端口同时各走各的物理通路) 单条通路的速率

前两种本质上都是时分交换:任意时刻只有一对端口在通信,其余排队。共享资源的速度必须超过所有端口速率之和(还要再留加速比),否则就是瓶颈。

三、为什么电信级/核心路由器必须用空分交换

核心原因一句话:单一共享资源的速度是有物理上限的,而空分交换的容量随端口数水平扩展。

算笔账:一块 16 端口 × 100G 的线卡阵列,聚合吞吐 1.6 Tbps。若用共享总线/内存,总线至少要跑到 1.6 Tbps 以上(实际还需 1.5--2 倍加速比来对抗突发),单根总线/单颗内存根本做不到。而空分方案------比如 N×N Crossbar------给每对输入/输出提供独立的物理通路,理想情况下 N 对端口可以同时各传各的,每条通路只需跑 100G,聚合容量靠"通路数量"堆出来,而不是靠"单点速度"硬顶。

实际工程形态:

  • Crossbar(交叉矩阵) :最直接的空分结构,N×N 个交叉点,交换芯片内部基本都是它(前面聊的 Expresso 里的 aiguilleur 就是一个极简 3×3 交叉矩阵------one-hot 选择 + OR-mux);
  • 多级互连网络(Banyan、Batcher-Banyan):Crossbar 的交叉点是 O(N²),端口多了造不起,用多级小开关换成本;
  • Clos 三级网络 + 分布式 fabric 芯片:电信级核心路由器(思科 CRS、Juniper TX 等)的标准做法------把交换结构拆成独立的 fabric 芯片/机框,线卡之间经多级 Clos 互连,可平滑扩到几百 Tbps。

四、空分带来的伴生问题

(这也是"交换单元"成为一门学问的原因)

空分只是提供了并行通路,真正难的是调度:

  • 输出冲突:两个输入口同时要往同一个输出发包,物理通路只能给一个用;
  • HOL 阻塞:简单输入排队会让队头堵死整队,吞吐跌到约 58.6%;
  • 工程解法:VOQ(虚拟输出队列)+ 集中式调度算法(iSLIP 及其变体)+ fabric 加速比 + 分组切片成定长 cell 再重组------电信级交换/路由芯片内部几乎都是这套组合。

五、边界情况:什么路由器可以不要空分交换

  • 家用/SOHO 路由器:端口少、速率低,交换单元用共享总线甚至 CPU 软件拷贝就够了(早期 Cisco 路由器就是 CPU+共享内存)。家里那个"路由+4口交换"产品里的交换芯片做的是 L2 转发,与路由器内部 fabric 是两回事;
  • 纯软件路由(x86+DPDK/VPP):交换单元就是内存和 PCIe/NUMA 互连,本质是共享介质,靠通用硬件的带宽红利硬扛,到几百 G 就到头了。

结论:只要路由器要做多端口分组搬运,交换单元就在------区别只在用时分还是空分实现。端口速率低时用时分凑合;一旦进入电信级聚合带宽(Tbps 级),空分交换(Crossbar/Clos 多级 fabric)就是唯一可行的物理路径------因为它把容量问题从"单点要多快"转化为"并行通路有多少条",而后者是可以堆出来的。

相关推荐
实心儿儿15 小时前
Linux —— 数据链路层
linux·网络·智能路由器
Multipath71220 小时前
5G CPE vs 5G聚合路由器 该怎么选
网络·5g·安全·智能路由器·实时音视频·信息与通信
我爱cope1 天前
【计算机网络 | 网络层10:OSPF 与 BGP:自治系统内部和互联网之间如何路由?】
网络·学习·计算机网络·智能路由器
上海广测检测科技有限公司1 天前
路由器CRA认证详解:欧盟网络弹性法案对联网设备的安全合规要求
网络·经验分享·安全·智能路由器
robch1 天前
一个网络数据包是怎么从发送方路由到接受方的,整个过程中数据包里的 MAC 地址和 IP 地址是怎么变化的
网络·智能路由器
FW-Linker2 天前
多网聚合和卫星通信哪个更可靠?场景化选型与融合方案全解析
5g·智能路由器
喵同志不止步于码农3 天前
随手记——Ping命令
智能路由器
sinovoip3 天前
Banana Pi BPI-R4 Pro 评测:一款我用来搭建堡垒机的 10Gbps 路由器板
智能路由器
华允物联-HUAIOT3 天前
DTU真的不重要吗?工业路由器为何更胜一筹?
物联网·智能路由器·4g