1)为什么需要动态路由协议?
静态路由是由工程师手动配置和维护的路由条目,命令行简单明确,适用于小型或稳定的网络。静态路由有以下问题:
a)无法适应规模较大的网络:随着设备数量增加,配置量急剧增加。
b)无法动态响应网络变化:网络发生变化,无法自动收敛网络,需要工程师手动修改。
2)动态路由协议的分类
![](https://i-blog.csdnimg.cn/blog_migrate/e363a3e5a921b4816b803fcffce1103e.png)
3)距离矢量路由协议
运行距离矢量路由协议的路由器周期性的泛洪自己的路由表。通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表中。
对于网络中的所有路由器而言,路由器并不清楚网络的拓扑,只是简单的知道要去往某个目的方向在哪里,距离有多远。这即是距离矢量算法的本质。
4)链路状态路由协议 - LSA泛洪
与距离矢量路由协议不同,链路状态路由协议通告的的是链路状态而不是路由表。运行链路状态路由协议的路由器之间首先会建立一个协议的邻居关系,然后彼此之间开始交互LSA(Link State Advertisement,链路状态通告)。
5)链路状态路由协议 - LSDB组建
每台路由器都会产生LSAs,路由器将接收到的LSAs放入自己的LSDB(Link State DataBase,链路状态数据库)。路由器通过LSDB,掌握了全网的拓扑。
6)链路状态路由协议 - SPF计算
每台路由器基于LSDB,使用SPF(Shortest Path First,最短路径优先)算法进行计算。每台路由器都计算出一棵以自己为根的、无环的、拥有最短路径的“树”。有了这棵“树”,路由器就已经知道了到达网络各个角落的优选路径。
链路状态路由协议总结
![](https://i-blog.csdnimg.cn/blog_migrate/c12be7178f2215acc16cafff15f01f9f.png)