路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。从路由器某个输入端口收到的分组,按照分组要去的目的地(即目的网络),把该分组从路由器的某个合适的输出端口转发给下一跳路由器。下一跳路由器也按照这种方法处理分组,直到该分组到达终点为止。路由器的转发分组正是网络层的主要工作。
整个的路由器结构可划分为两大部分:路由选择部分和分组转发部分。
路由选择部分也叫做控制部分,其核心构件是路由选择处理机。 路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。 分组转发部分由三部分组成:交换结构、一组输入端口和一组输出端口(请注意:这里的端口就是硬件接口)。
交换结构(switching fabric)又称为交换组织 ,交换结构是路由器的关键构件,它的作用就是根据转发表(forwarding table)对分组进行处理,将某个输入端口进入的分组从一个合适的输出端口转发出去,交换结构本身就是一种网络,但这种网络完全包含在路由器之中,因此交换结构可看成是“在路由器中的网络”。实现这样的交换有多种方法,以下这三种方法都是将输入端口 I1收到的分组转发到输出端口O2。
图4-45(a)的示意图表示 分组通过存储器进行交换 。目的地址的查找和分组在存储器中的缓存都是在输入端口中进行的。若存储器的带宽(读或写)为每秒M个分组,那么路由器的交换速率(即分组从输入端口传送到输出端口的速率)一定小于M2。这是因为存储器对分组的读和写需要花费的时间是同一个数量级。
图4-45(b)是 通过总线进行交换 的示意图。采用这种方式时,数据报从输入端口通过共享的总线直接传送到合适的输出端口,而不需要路由选择处理机的干预。但是,由于总线是共享的,因此在同一时间只能有一个分组在总线上传送。当分组到达输入端口时若发现总线忙(因为总线正在传送另一个分组),则被阻塞而不能通过交换结构,并在输入端口排队等待。因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽就受总线速率的限制。现代的技术已经可以将总线的带宽提高到每秒吉比特的速率,因此许多的路由器产品都采用这种通过总线的交换方式。
图4-45(c)是 通过纵横交换结构(crossbar switch fabric)进行交换 。这种交换机构常称为互连网络(interconnection network),它有2N条总线,可以使N个输入端口和N个输出端口相连接,这取决于相应的交叉结点是使水平总线和垂直总线接通还是断开。当输入端口收到一个分组时,就将它发送到与该输入端口相连的水平总线上。若通向所要转发的输出端口的垂直总线是空闲的,则在这个结点将垂直总线与水平总线接通,然后将该分组转发到这个输出端口。但若该垂直总线已被占用(有另一个分组正在转发到同一个输出端口),则后到达的分组就被阻塞,必须在输入端口排队。
在图4-42中,路由器的输入和输出端口里面都各有三个方框,用方框中的1,2和3分别代表物理层、数据链路层和网络层的处理模块。物理层进行比特的接收。数据链路层则按照链路层协议接收传送分组的核。在把航的首部和尾部去后,分组就被送入网络层的处理模块。若接收到的分组是路由器之间交换路由信总的分组(如RIP或OSPF分组等),则把这种分组送交路由器的路由选择部分中的路由选择处理机。若接收到的是数据分组,则按照分组首部中的目的地址查找转发表,根据得出的结果,分组就经过交换结构到达合适的输出端口。 一个路由器的输入端口和输出端口就做在路由器的线路接口卡上。
输入端口 中的查找和转发功能在路由器的交换功能中是最重要的。为了使交换功能分散化,往往把复制的转发表放在每一个输入端口中(如图4-42中的虚线箭头所示)。路由远择处理机负责对各转发表的副本进行更新。这些副本常称为“影子副本”(shadow ),分散化交换可以避免在路由器中的某一点上出现瓶颈。
“但在具体的实现中还是会遇到不少困难。问题就在于路由器必须以很高的速率转发分组。最理想的情况是 输入端口的处理速率能够跟上线路把分组传送到路由器的速率。这种速率称为线速 (line speed 或 wirc peed)。可以粗略地估算一下。设线路是0C-48链路,即2.5 Gbit/s。若分组长度为256字节,那么线速就应当达到每秒能够处理100万以上的分组。现在常用Mpps(百万分组每秒)为单位来说明一个路由器对收到的分组的处理速率有多高。”
当一个分组正在查找转发表时,后面又紧跟着从这个输入端口收到另一个分组。这个后到的分组就必须在队列中排队等待,因而产生了一定的时延。
输出端口 从交换结构接收分组,然后把它们发送到路由器外面的线路上。在网络层的处理模块中设有一个缓冲区,实际上它就是一个队列。当交换结构传送过来的分组的速率超过输出链路的发送速率时,来不及发送的分组就必须暂时存放在这个队列中。数据链路层处理模块把分组加上链路层的首部和尾部,交给物理层后发送到外部线路。
从以上可以看出,分组在路由器的输入端口和输出端口都可能会在队列中排队等候处理。若分组处理的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到零,这就使后面再进入队列的分组由于没有存储空间而只能被丢弃。分组丢失就是发生在路由器中的输入或输出队列产生溢出的时候。当然,设备或线路出故障也可能使分组丢失。
“转发”和“路由选择”的区别 :在互联网中, “转发” 就是路由器根据转发表把收到的IP数据报从路由器合适的端口转发出去。“转发”仅仅涉及到一个路由器。但 “路由选择” 则涉及到很多路由器,路由表则是许多路由器协同工作的结果。这些路由器按照复杂的路由算法,得出整个网铭的拓扑变化情况,因而能够动态地改变所选择的路由,并由此构造出整个的路由表,路由表一般仅包含从目的网络到下一跳(用P地址表示)的映射,而转发表是从路由表得出的。转发表必须包含完成转发功能所必需的信息。这就是说,在转发表的每一行必须包含从要到达的目的网路到输出端口和某些MAC地址信息(如下跳的以太网地址)的映射。将转发表和路由表用不同的数据结构实现会带来一些好处,这是因为在转发分组时,转发表的结构应当使查找过程最优化,但路由表则需要对网络拓扑变化的计算最优化。路由表总是用软件实现的,但转发表则甚至可用特殊的硬件来实现。请读者注意,在讨论路由选择的原理时, 往往不去区分转发表和路由表的区别,而可以笼统地都使用路由表这一名词。
② 路由器由哪几部分组成,简要说明一下各部分的作用
路由器的组成大致可以分成两部分:内部构件和外部构件皮兄
内部构件:
1、RAM(随机存储器)
功能:存放路由表;存放ARP告诉缓存;存放快速交换缓存;存放分组交换缓冲;存放解压后的IOS;路由器加电后,存放running配置文件;
2、NVRAM(非易失性RAM)
功能:存储路由器的startup配置文件;存储路由器的备份。
3、FLASH(快速闪存)
功能:存放IOS和微代码。
4、ROM(只读存储器)
功能:存放POST诊断所需的指令;存放mini-ios;存放ROM监控模式的代码。
5、CPU(中央处理器)
衡量路由器性能的重要指标,负责路由计算,路由选择等。
6、背板:
背板能力是一个重要参数,尤其在交换机中。
外部构件誉蠢就是各种接线的接口。燃虚袭
(2)网络学院路由器内部结构扩展阅读:
路由器作用及功能
第一,网络互连:路由器支持各种局域网和广域网接口,主要用于互连局域网和广域网,实现不同网络互相通信;
第二,数据处理:提供包括分组过滤、分组转发、优先级、复用、加密、压缩和防火墙等功能;
第三,网络管理:路由器提供包括路由器配置管理、性能管理、容错管理和流量控制等功能。
从过滤网络流量的角度来看,路由器的作用与交换机和网桥非常相似。但是与工作在网络数据链路层,从物理上划分网段的交换机不同,路由器使用专门的软件协议从逻辑上对整个网络进行划分,有的路由器仅支持单一协议,但大部分路由器可以支持多种协议的传输。
③ 什么是路由器.原理是什么结构
路由器(Router):是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号的设备。 路由器是互联网络的枢纽、"交通警察"。目前路由器已经广泛应用于各行各业,各种不同档次的产品已成为实现各种骨干网内部连接、骨干网间互联和骨干网与互联网互联互通业务的主力军。路由和交换之间的主要区别就是交换发生在OSI参考模型第二层(数据链路层),而路由发生在第三层,即网络层。这一区别决定了路由和交换在移动信息的过程中需使用不同的控制信息,所以两者实现各自功能的方式是不同的。
原理:路由器(Router)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器来完成。因此,路由器具有判断网络地址和选择路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。它不关心各子网使用的硬件设备,但要求运行与网络层协议相一致的软件。路由器分本地路由器和远程路由器,本地路由器是用来连接网络传输介质的,如光纤、同轴电缆、双绞线;远程路由器是用来连接远程传输介质,并要求相应的设备,如电话线要配调制解调器,无线要通过无线接收机、发射机。
结构:路由器具有四个要素:输入端口、输出端口、交换开关、路由处理器和其他端口
④ 路由器的内部是由什么组成的
1,从体系结构上看,路由器可以分为第一代单总线单CPU结构路由器、第二代单总线主从CPU结构路由器、第三代单总线对称式多CPU结构路由器;第四代多总线多CPU结构路由器、第五代共享内存式结构路由器、第六代交叉开关体系结构路由器和基于机群系统的路由器等多类。
2,路由器具有四个要素:输入端口、输出端口、交换开关、路由处理器和其他端口。输入端口是物理链路和输入包的进口处。端口通常由线卡提供,一块线卡一般支持4、8或16个端口,一个输入端口具有许多功能。第一个功能是进行数据链路层的封装和解封装。第二个功能是在转发表中查找输入包目的地址从而决定目的端口(称为路由查找),路由查找可以使用一般的硬件来实现,或者通过在每块线卡上嵌入一个微处理器来完成。第三,为了提高QoS(服务质量),端口要对收到的包分成几个预定义的服务级别。第四,端口可能需要运行诸如SLIP(串行线网际协议)和PPP(点对点协议)这样的数据链路级协议或者诸如PPTP(点对点隧道协议)这样的网络级协议。一旦路由查找完成,必须用交换开关将包送到其输出端口。如果路由器是输入端加队列的,则有几个输入端共享同一个交换开关。这样输入端口的最后一项功能是参加对公共资源(如交换开关)的仲裁协议。
3,交换开关可以使用多种不同的技术来实现。迄今为止使用最多的交换开关技术是总线、交叉开关和共享存贮器。最简单的开关使用一条总线来连接所有输入和输出端口,总线开关的缺点是其交换容量受限于总线的容量以及为共享总线仲裁所带来的额外开销。交叉开关通过开关提供多条数据通路,具有N×N个交叉点的交叉开关可以被认为具有2N条总线。如果一个交叉是闭合,输入总线上的数据在输出总线上可用,否则不可用。交叉点的闭合与打开由调度器来控制,因此,调度器限制了交换开关的速度。在共享存贮器路由器中,进来的包被存贮在共享存贮器中,所交换的仅是包的指针,这提高了交换容量,但是,开关的速度受限于存贮器的存取速度。尽管存贮器容量每18个月能够翻一番,但存贮器的存取时间每年仅降低5%,这是共享存贮器交换开关的一个固有限制。
4,输出端口在包被发送到输出链路之前对包存贮,可以实现复杂的调度算法以支持优先级等要求。与输入端口一样,输出端口同样要能支持数据链路层的封装和解封装,以及许多较高级协议。
5,路由处理器计算转发表实现路由协议,并运行对路由器进行配置和管理的软件。同时,它还处理那些目的地址不在线卡转发表中的包。
6,其他端口一般指控制端口,由于路由器本身不带有输入和终端显示设备,但它需要进行必要的配置后才能正常使用,所以一般的路由器都带有一个控制端口"Console",用来与计算机或终端设备进行连接,通过特定的软件来进行路由器的配置。所有路由器都安装了控制台端口,使用户或管理员能够利用终端与路由器进行通信,完成路由器配置。该端口提供了一个EIA/TIA-232异步串行接口,用于在本地对路由器进行配置(首次配置必须通过控制台端口进行)。
7,Console端口使用配置专用连线直接连接至计算机串口,利用终端仿真程序(如Windows下的"超级终端")进行路由器本地配置。路由器的Console端口多为RJ-45端口。,