4.2 路由器的组成

1.路由器结构概述

2.输入端口功能

3.交换结构


1.路由器结构概述

csharp 复制代码
简化的通用路由器体系架构

a.路由: 运行路由选择算法/协议(RIP, OSPF, BGP)生成路由表

b.转发: 从输入到输出链路交换数据报 - 根据路由表进行分组的转发

2.输入端口功能

csharp 复制代码
根据数据报头部的信息如: 目的地址, 在输入端口内存中的转发表中查找合适的输出端口

csharp 复制代码
输入端口缓存

a.当交换机构的速率小于输入端口的汇聚速率时, 输入端口可能要排队; 排队延迟以及由于输入缓存溢出造成丢失

b.Head-of-the-Line(HOL) blocking: 排在队头的数据报阻止了队列中其他数据报向前移动

3.交换结构

csharp 复制代码
1).经内存交换

这是最早、最简单的一种方式, 借鉴了传统计算机的设计

a.工作原理:

- 输入端口将到达的数据包通过共享系统总线复制到路由器的主内存中

- CPU从内存中读取数据包, 检查其目标IP地址, 查找路由表, 确定输出端口

- CPU再将数据包从内存中复制到对应的输出端口的缓存中

b.比喻: 就像一个只有一个工作人员的邮局分拣中心, 所有信件(数据包)都要先放到中央工作台(内存)上, 由这个工作人员

(CPU)一件一件地查看地址、分拣到不同的出口信箱

c.特点:

- 优点: 实现简单, 成本低

- 缺点: 速度慢, 吞吐量受限于内存和CPU的速度; 因为同一时间只能有一个数据包(或少量数据包)在内存和CPU之间交换

d.应用: 早期的路由器、现代家用宽带路由器(因为端口少、速度要求不高)

csharp 复制代码
2).经总线交换

a.工作原理:

- 输入端口在收到数据包后, 直接在其前面加上一个内部标签(标识目标输出端口)

- 数据包被放到一条共享的系统总线上

- 所有的输出端口都在监听这条总线, 只有标签与自己端口号匹配的输出端口才会捕获这个数据包, 并将其缓存下来准备发送

b.比喻: 就像一条共享的传送带, 包裹从不同入口放上传送带, 每个出口都有一个人, 只拿写有自己名字的包裹

c.特点:

- 优点: 比经内存交换更快, 因为不需要CPU直接参与每次转发

- 缺点: 总线带宽成为瓶颈, 因为总线是共享的, 在同一时间只能有一个数据包通过总线; 如果多个输入端口同时要发送数

据它们必须排队等待

d.应用: 中低端的企业级路由器

csharp 复制代码
3).经互联矩阵交换

这是现代高性能路由器(如核心路由器)所使用的技术, 旨在克服总线的带宽限制

a.工作原理:

- 交换结构由一组并行的纵横式交换机组成, 形成了多条并行的路径

- 输入端口和输出端口通过这个复杂的交换矩阵直接连接

- 通过精妙的控制, 可以同时让多个输入端口和多个输出端口之间建立临时的、并发的连接, 从而同时传输多个数据包

b.比喻: 就像一个大型的纵横式立交桥, 有多条并行的道路, 可以让多辆汽车从不同的入口同时驶向不同的出口, 而不会相

互阻塞

c.特点:

- 优点: 极高的吞吐量, 可以实现真正的并行交换

- 缺点: 设计非常复杂, 成本高昂

d.应用: 几乎所有的高端核心路由器和数据中心交换机。
相关推荐
DianSan_ERP2 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅2 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
2501_946205522 天前
晶圆机器人双臂怎么选型?适配2-12寸晶圆的末端效应器有哪些?
服务器·网络·机器人
linux kernel2 天前
第七部分:高级IO
服务器·网络
数字护盾(和中)2 天前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
~远在太平洋~2 天前
Debian系统如何删除多余的kernel
linux·网络·debian
unfeeling_2 天前
Keepalived实验
linux·服务器·网络
坐吃山猪2 天前
OpenClaw04_Gateway常见问题
网络·gateway·openclaw
上海云盾商务经理杨杨2 天前
2025年重大网络安全事件回顾与趋势分析
网络·安全·web安全
kylezhao20193 天前
C# 的开闭原则(OCP)在工控上位机开发中的具体应用
网络·c#·开闭原则