路由器主要由以下几个部分组成:输入/输出接口部分、包转发或交换结构部分(switching fabric)、路由计算或处理部分。如图所示 图1 路由器的基本组成 交换结构最常见的有总线型、共享内存型、Cross-bar空分结构型。总线型结构最简单,所有输入和输出接口挂在一个总线上,同一时间只有两个接口通过总线交换数据。其缺点是其交换容量受限于总线的容量以及为共享总线仲裁所带来的额外开销。在调度共享数据传输通道上必须花费一定的开销,而且总线带宽的扩展受到限制,制约了交换容量的扩张,一般在中档路由器中使用这种结构。共享内存型结构中,进来的包被存贮在共享存贮器中,所交换的仅是包的指针,这提高了交换容量,但它受限于内存的访问速度和存储器的管理效率,尽管存贮器容量每18个月能够翻一番,但存贮器的存取时间每年仅降低5%,这是共享存贮器交换开关的一个固有限制。共享内存型结构在早期的中低档路由器中普遍应用。 输出端口在包被发送到输出链路之前对包存贮,可以实现复杂的调度算法以支持优先等级要求。与输入端口一样,输出端口同样要能支持数据链路层的封装和解封装,以及许多较高级协议。 路由器是在软件控制下进行工作的,与普通操作系统相比,其软件系统是比较简洁、全部驻留在存储器当中且受限于原始平台的一种操作系统。在商用实时操作系统的内核基础上开发一个包含TCP/IP协议栈的接口平台,辅以各种功能模块,形成完整的软件系统。为最大限度地提高路由器快速交换报文的能力,该操作系统被设计为具有最小的操作性开销,同时允许CPU使用最大的带宽进行报文交换。其体系结构如图所示。 图2 路由器软件体系结构 路由选择协议(routing protocol):通过提供共享路由选择信息机制来支持被动路由协议。路由选择协议消息在路由器之间传送。路由选择协议允许路由器与其他路由器通信来修改和维护路由选择表。路由选择协议有:RIP、OSPF、IGRP等。如图4-3说明了被动路由协议和路由选择协议的关系。 图3 被动路由协议用于引导信息,路由选择协议用在路由器之间维护路由表 在数据包通过另一个路由器交换时都要发生这个过程,在与包含目的主机的网络相连接的路由器中,数据包再次封装成目的LAN数据链路帧的类型并被发送到目的主机。 图4 每个路由器都为其上层功能提供其各种服务 图5 静态路由 动态(Dynamic)路由是路由器根据网络系统的运行情况而自动调整的路由。路由器根据路由选择协议(Routing Protocol)提供的功能,自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路径。此时网络可达性依赖于网络的存在和状态。如果一个目的地不存在,则路由会从路由转发表中消失,IP包业务量不会向该目的地发送。使用动态路由可以很好的适应拓扑结构的变化。它可以在网络的不同路径间改变流量方向。 图6缺省路由 当一个路由选择算法改变路由表时,它的首要目标时确定要包含在表中的最佳信息。每个选路算法以自己的方式解释最佳路径。算法为通过网络的每条路径生成了一个数字,称为度量值(metric)。其典型意义是该度量值越小,这条路径就越好。(如图7示) 图7用于选择最佳路由路径的各种度量 |
|