说到动态路由协议,很多朋友都了解。其中还分为向量路由协议和链路状态路由协议。不知道大家对这两方面的特点有没有掌握,现在我们再来仔细对比一下。
动态路由
动态路由协议分为距离向量路由协议和链路状态路由协议,两种协议各有特点,分述如下。
1. 距离向量(DV)协议
距离向量指协议使用跳数或向量来确定从一个设备到另一个设备的距离。不考虑每跳链路的速率。
距离向量路由协议不使用正常的邻居关系,用两种方法获知拓扑的改变和路由的超时:
◆当路由器不能直接从连接的路由器收到路由更新时;
◆当路由器从邻居收到一个更新,通知它网络的某个地方拓扑发生了变化。
在小型网络中(少于100个路由器,或需要更少的路由更新和计算环境),距离向量路由协议运行得相当好。当小型网络扩展到大型网络时,该算法计算新路由的收敛速度极慢,而且在它计算的过程中,网络处于一种过渡状态,极可能发生循环并造成暂时的拥塞。再者,当网络底层链路技术多种多样,带宽各不相同时,距离向量算法对此视而不见。
距离向量路由协议的这种特性不仅造成了网络收敛的延时,而且消耗了带宽。随着路由表的增大,需要消耗更多的CPU资源,并消耗了内存。
2. 链路状态(LS)路由协议
链路状态路由协议没有跳数的限制,使用“图形理论”算法或最短路径优先算法。
链路状态路由协议有更短的收敛时间、支持VLSM(可变长子网掩码)和CIDR。
链路状态路由协议在直接相连的路由之间维护正常的邻居关系。这允许路由更快收敛。链路状态路由协议在会话期间通过交换Hello包(也叫链路状态信息)创建对等关系,这种关系加速了路由的收敛。
不像距离向量路由协议那样,更新时发送整个路由表。链路状态路由协议只广播更新的或改变的网络拓扑,这使得更新信息更小,节省了带宽和CPU利用率。另外,如果网络不发生变化,更新包只在特定的时间内发出(通常为30min到2h)。