网络层:路由器

2018-07-19  本文已影响0人  packet

我们前面探讨了局域网中的计算机通信,即目的主机和源主机在同一个网络中的情况,这时候使用直接交付即可。如果两个主机不在同一个网络中,则需要源主机把报文交给该网络的路由器,这就叫间接交付

那么什么是路由器?它具有什么功能呢?工作原理是什么?

路由器一种具有多个输入端口和多个输出端口的专用计算机,它的核心功能是将不同的异构网络联系起来,并进行转发分组。

路由器的工作原理:路由器的某个输入端口会收到分组,会根据分组的目的地址,将分组从合适的输出端口转发给下一跳路由器。下一跳也会如此处理,直至把分组送到目的地址。

路由器可分为两个部分:

路由选择部分:路由选择处理机
分组转发部分:输入端口,交换结构,输出端口
路由选择部分的核心是路由选择处理机,里面有一张路由表,路由表是根据路由选择协议构造出来的。路由器需要定期和相邻的路由器交换信息来更新这张表。

交换结构本身是路由器内部的网络,它根据转发表,将分组从合适的端口转发出去。

这里澄清一下容易混淆的两个概念:转发和路由选择。

转发是路由器根据转发表将IP数据报转发出去;路由选择是根据分布式算法,根据从各个相邻的路由器得到整个网络的拓扑变化情况,动态地改变所选择的路由。

路由表是根据路由选择协议构建而成,包含从目的地址到下一跳(以IP地址表示)的映射。

转发表是从路由表得出的,包含完成转发功能所需要的信息。转发表包含从目的地址到输出端口(和某些MAC地址)的映射。转发表应当使查找结构最优化,而路由表则需要对网络拓扑变化的计算最优化。

路由器的端口能处理自网络层以下的数据。在物理层进行比特的收发,在数据链路层进行帧的收发,将帧的首部和尾部剥去,就被送到网络层的处理模块。

还要一个重要问题:路由器在设计上需要注意什么地方(难点)?

我们知道,无论是什么系统,都是由不同的模块所构成,一个不可避免的问题就是不同模块之间能否流畅地配合。比如CPU和内存的速度差异较大,需要cache来作为缓冲。路由器是互联网中的连接器和转发器,路由器进行分组转发需要处理时间,如果分组很多,那就还需要排队时间,这样就会增加网络时延。所以最理想的情况是路由器的处理速率能够跟上线路将分组传送到路由器的速率。这种速率成为线速(line speed / wire speed)。

上一篇下一篇

猜你喜欢

热点阅读