路由器工作在网络层,用于连接不同的IP子网或不同类型的网络,如ATM、SDH、帧中继等网络。不同类型的网络无论是传输协议还是数据帧格式都各不相同,路由器的作用就是在它们之间进行转换,使彼此能够通过路由器交换数据。
1.路由器的功能
路由器由转发部分和控制部分组成。转发部分由输入端口、输出端口和交换结构组成。控制部分由路由处理器、路由表和路由协议组成。路由器的主要功能包括数据通道功能和控制功能。数据通道功能包括转发决定、背板转发、输入和输出链路调度,这部分功能主要由硬件完成。控制功能包括相邻路由器之间的信息交换、系统配置、系统管理等,由软件来完成。路由器主要功能分为以下几类。
1)转发数据包。接收数据包,根据IP地址查找路由表,转发到目的结点。这是路由器最基本的功能。
2)路由选择。网络中相连的路由器之间会定期地通信,并获得网络的相关信息,通常是通过路由协议实现,如OSPF、RIP、BGP等。根据这些信息,路由器会更新它自身的路由表,为数据传输的选路提供最合理的参考。
3)拆分和重组数据包。有时数据包在转发过程中,由于网络最大传输单元MTU的限制,数据包有可能过大,放不到一个帧中。这时就需要路由器将该包拆分成更小的单元,以便传输。在IP网络上,路由器可以分片,但重装则由接收端完成。
4)不同协议之间的转换,如IP数据报与ATM信元之间的转换。路由器能够识别多种类型的网络协议,并能够实现不同协议网络间的互连,这就是为什么网络中不仅仅需要交换机,同时也需要路由器。
5)附加功能。除了以上的路由器基本功能以外,目前大多数路由器中都集成了更多的附加功能,如防火墙、NAT(网络地址转换)、DHCP、VPN(虚拟专用网)等,这些功能在网络中十分重要,而使用单独的设备又浪费资源,因此将这些功能集成在路由器中是较为常见的做法。
2.路由选择的基本原理
路由器的基本功能是IP数据报的路由转发。基本的路由过程如下,客户机把需要发送的IP数据报的源IP地址和目的主机IP地址分别与子网掩码做“按位与”操作,如果结果相同,则表示目的主机和客户机在同一个子网内,客户机就会查询ARP缓存表或用ARP协议来获得目标主机的MAC地址,否则,该IP数据报就交由路由器转发,客户机查看自己的默认网关(通常是路由器)的IP地址,再通过ARP协议获得默认网关的MAC地址,有了路由器的MAC地址,就可以生成MAC帧,使用目的主机的IP地址,同时使用路由器的MAC地址(局域网内的数据传输是以MAC地址作为网络主机的标识)向网络发送此数据帧。路由器收到此帧后,发现目的MAC地址是自己的MAC地址,于是开始处理此帧。路由器会先查看帧中的目的IP地址,并且在路由表中找到与此IP地址相关的目标网络路径。如果找到了,路由器会把下一跳设备的MAC地址填入到此帧的目的MAC字段中,并转发此帧;如果没找到,路由器原路返回一个ICMP报文,告诉源端:“无法到达”。
路由表是路由器维护的一张路径选择的表格,在分组数据的选路中起着不可替代的作用。路由表中的信息包括目标网络地址、下一跳地址、出口接口、跳数等。路由表中的信息为路由器做出合理的数据转发提供了依据。路由表中的信息通过下面两种方式获得:静态路由和动态路由。静态路由手工输入信息,适用于小规模简单网络。动态路由的最大特点是路由器具有自动学习能力,通过动态路由协议,自动地以固定时间间隔把自己知道的所有路由信息告诉其他路由器。(www.daowen.com)
3.三层交换与路由的比较
三层交换机也具有路由功能,那么路由器与三层交换机有什么区别呢?当路由器收到一个MAC帧时,它进行的操作如下。
1)解析MAC帧及其封装的IP数据报,查看路由表决定发送到哪里。
2)修改帧中的源MAC地址,去掉发送者的MAC地址,并替换为本路由器的MAC地址。
3)修改帧中的目的MAC地址,去掉原有的目的MAC地址,并替换为下一跳路由器的MAC地址。
4)IP数据报中的TTL字段减1。
5)重新计算校验和。
6)将帧转发到对应的输出端口。
也就是说,路由器在收到任何一个MAC帧时都会进行上述的步骤。然而三层交换做法有些不同。首先,三层交换是基于这样一种对IP数据报的理解:报文并不是孤立存在的。换句话说,用户不可能只发送一个IP数据报到某远程主机,所以,三层交换机的做法是:路由一次后,就可以交换(注意这里是交换,由硬件实现)许多IP数据报。如果发送了1000个数据报到远程主机,在整个通信过程中,三层交换机只需要对第一个数据报做一次路由,剩下的报文只需要使用路由第一个数据报所得到的信息进行转发即可,这样就大大提高了数据的转发速率。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。