动态路由机制的运作依赖路由器的两个基本功能:路由器之间适时的路由信息交换,对路由表的维护:
1. 路由器之间适时地交换路由信息。
动态路由之所以能根据网络的情况自动计算路由、选择转发路径,是由于当网络发生变化时,路由器之间彼此交换的路由信息会告知对方网络的这种变化,通过信息扩散使所有路由器都能得知网络变化。
2. 路由器根据某种路由算法(不同的动态路由协议算法不同)把收集到的路由信息加工成路由表,供路由器在转发IP报文时查阅。
在网络发生变化时,收集到最新的路由信息后,路由算法重新计算,从而可以得到最新的路由表。
需要说明的是,路由器之间的路由信息交换在不同的路由协议中的过程和原则是不同的。交换路由信息的最终目的在于通过路由表找到一条转发IP报文的“最佳”路径。每一种路由算法都有其衡量“最佳”的一套原则,大多是在综合多个特性的基础上进行计算,这些特性有:路径所包含的路由器结点数(hop count)、网络传输费用(cost)、带宽(bandwidth)、延迟(delay)、负载(load)、可靠性(reliability)和最大传输单元MTU(maximum transmission unit)。
常见的动态路由协议有:RIP、OSPF、IS-IS、BGP、IGRP/EIGRP。每种路由协议的工作方式、选路原则等都有所不同。