路由器的结构以及工作原理

简介: 路由器的结构以及工作原理

路由器的结构

路由选择部分也叫做控制部分,其核心构件是路由选择处理机。路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。


分组转发部分,它由三部分组成: 交换结构、一组输入端口和一组输出端口(请注意:这里的端口就是硬件接口)。

交换结构(switching fabric)又称为交换组织,它的作用就是根据转发表(forwarding table)对分组进行处理,将某个输入端口进入的分组从一个合适的输出端口转发出去。交换结构本身就是一种网络,但这种网络完全包含在路由器之中,因此交换结构可看成是“在路由器中的网络”。


注:“转发”和”路由选择“的区别


转发:


•根据转发表将用户的IP 数据报从合适的端口转发出去。

•仅涉及到一个路由器。

•转发表是从路由表得出的。

•转发表必须包含完成转发功能所必需的信息,每一行必须包含从要到达的目的网络到输出端口和某些 MAC 地址信息(如下一跳的以太网地址)的映射。


路由选择:


•按照路由选择算法,根据网络拓扑的变化情况,动态地改变所选择的路由,并由此构造出整个的路由表。

•涉及到很多路由器。

•路由表一般仅包含从目的网络到下一跳 (用 IP 地址表示)的映射。


输入端口对线路上收到的分组的处理

•在物理层进行比特的接收


•在数据链路层剥去帧的首部和尾部


•分组接着被送入网络层的处理模块:


(1)若收到的分组时交换路由信息的分组,就交到路由选择处理机。


(2)若收到的是数据分组,就按目的地址查找转发表,根据得出的结果,经交换结构到达合适的输出端口。


若某分组正在查找转发表,该分组排队等待。因而会产生一定的时延,如下图所示:

输入端口中的查找和转发功能在路由器的交换功能中是最重要的。为了使交换功能分散化,往往把复制的转发表放在每一个输入端口中(如图中的虚线箭头所示)。路由选择处理机负责对各转发表的副本进行更新。这些副本常称为“影子副本” (shadow copy)。分散化交换可以避免在路由器中的某一点上出现瓶颈。

输出端口将交换结构传送来的分组发送到线路

•输出端口从交换结构接收分组:


(1)当交换结构传送的分组的速率超过输出链路的发送速率,来不及发送的分组就必须缓存在队列中。


(2)若分组处理的速率赶不上分组进入队列的速率,队列满时,丢弃后面进入的分组。


•分组进入数据链路层后,给分组加上链路层的首部和尾部。


•接着传入物理层,由物理层向输出线路发送分组。

交换结构三种常用的交换方式

1.通过存储器

(1)当路由器的某个输入端口收到一个分组时,就用中断方式通知路由选择处理机。然后分组就从输入端口复制到存储器中。


(2)路由器处理机从分组首部提取目的地址,查找路由表,再将分组复制到合适的输出端口的缓存中。


(3)若存储器的带宽(读或写)为每秒 M 分组,那么路由器的交换速率(即分组从输入端口传送到输出端口的速率)一定小于 M/2。这是因为存储器对分组的读和写需要花费的时间是同一个数量级。

许多现代的路由器也通过存储器进行交换,上图表示分组通过存储器进行交换。与早期的路由器的区别就是,目的地址的查找和分组在存储器中的缓存都是在输入端口中进行的。 Cisco 公司的 Catalyst 8500 系列交换机(有的公司把路由器也称为交换机)和 Bay Network 公司的 Accelar 1200 系列路由器就采用了共享存储器的方法。

许多现代的路由器也通过存储器进行交换,上图表示分组通过存储器进行交换。与早期的路由器的区别就是,目的地址的查找和分组在存储器中的缓存都是在输入端口中进行的。 Cisco 公司的 Catalyst 8500 系列交换机(有的公司把路由器也称为交换机)和 Bay Network 公司的 Accelar 1200 系列路由器就采用了共享存储器的方法。

2.通过总线

(1)数据报从输入端口通过共享的总线直接传送到合适的输出端口,而不需要路由选择处理机的干预。

(2)当分组到达输入端口时若发现总线忙,则被阻塞而不能通过交换结构,并在输入端口排队等待

(3)因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽就受总线速率的限制。

现代的技术已经可以将总线的带宽提高到每秒吉比特的速率,因此许多的路由器产品都采用这种通过总线的交换方式。例如, Cisco 公司的 Catalyst 1900 系列交换机就使用了带宽达到 1 Gbit/s 的总线(叫做 Packet Exchange Bus)。

3.通过纵横交换结构(crossbar switch fabric)

也常被称为互连网络(interconnection network)


(1)它有 2N 条总线,控制交叉节点可以使 N 个输入端和 N 个输出端口相连接,这取决于相应的交叉结点是使水平总线和垂直总线接通还是断开。


(2)当输入端口收到一个分组时,就将它发送到水平总线上。


(3)


若通向输出端口的垂直总线空闲,则将垂直总线与水平总线接通,然后将该分组转发到这个输出端口。


但若该垂直总线已被占用(有另一个分组正在转发到同一个输出端口),则后到达的分组就被阻塞,必须在输入端口排队。采用这种交换方式的路由器例子是 Cisco 公司的12000 系列交换路由器,它使用的互连网络的带宽达 60 Gbit/s。


特点:一种无阻塞的交换结构,分组可以转发到任何一个输出端口,只要这个输出端口没有被别的分组占用。

目录
相关文章
|
6月前
|
存储 人工智能 弹性计算
阿里云2核4G特价云服务器:轻量应用服务器199元抢购,云服务器199元新购续费同价
2026年阿里云推出2核4G特价云服务器活动,轻量应用服务器以9.9元/月或199元/年价格,适合搭建专属AI助理;通用算力型u1实例云服务器,新购与续费同价199元/年,提供稳定企业级性能,适用Web服务器、中小型数据库等场景。此外,还有u2i实例3折及第九代实例6.4折优惠。活动覆盖个人与企业用户,满足不同预算与需求。
|
安全 Linux 网络安全
组网神器WireGuard安装与配置教程(超详细)
组网神器WireGuard安装与配置教程(超详细)
73084 2
|
10月前
|
uml C语言
系统时序图
时序图是UML中描述对象间消息传递时间顺序的交互图,横轴为对象,纵轴为时间。用于展示交互流程、强调时序关系,直观呈现并发过程。主要元素包括角色、对象、生命线、控制焦点和消息等,广泛应用于系统动态建模。
系统时序图
|
缓存 算法 网络协议
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
这篇文章详细介绍了计算机网络中数据链路层的概念、基本问题、点对点信道和广播信道的数据链路协议(如PPP和CSMA/CD),以及局域网和以太网的相关知识。
4958 0
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
|
算法 IDE 开发工具
蓝桥杯备赛经验帖
本文是作者blue分享的蓝桥杯备赛经验帖,旨在帮助刚接触算法竞赛的新手。文章从个人参赛经历出发,详细介绍了蓝桥杯的OI赛制特点、比赛流程以及备赛建议。作者强调了重点掌握基础数论、DFS、数组操作、二分法、动态规划等知识,并建议多参与线上赛,熟悉输入输出规则,同时避免盲目刷题或过度依赖力扣。通过参赛,作者不仅提升了编码能力,还结识了优秀的朋友,认识到自身差距,激励自己不断进步。此经验适合新手参考,大佬可略过。
1873 6
|
人工智能 自然语言处理 数据挖掘
轻松上手,性能爆表:零门槛体验DeepSeek-R1满血版评测
DeepSeek-R1满血版是一款真正实现“零门槛”的高性能AI设备,以其卓越的性能和易用性打破了技术壁垒。用户可通过阿里云百炼模型服务轻松配置部署,支持文本生成、代码编写、数据分析等多任务,响应迅速,硬件要求低,适合非技术背景用户提升效率。测评显示其在数学、代码和推理任务上表现出色,成本优势明显,性价比极高。推荐指数:★★★★★。 核心亮点包括零学习成本、一键部署、中文交互友好、预训练模型优化及私有化部署保障数据隐私。总体而言,DeepSeek-R1满血版实现了开箱即用的AI体验,尤其适合新手或追求高性价比的用户。
1603 5
|
传感器 监控 Linux
Android i2cdetect i2cdump i2cget i2cset调试工具使用
Android i2cdetect i2cdump i2cget i2cset调试工具使用
3504 1
|
缓存 负载均衡 应用服务中间件
nginx(NGINX)详细下载安装及使用教程
nginx(NGINX)详细下载安装及使用教程
2285 0
|
存储 监控 分布式数据库
Algorithms_LSM树(Log-Structured Merge Tree)
Algorithms_LSM树(Log-Structured Merge Tree)
871 0

热门文章

最新文章