上QQ阅读APP看书,第一时间看更新
3.3 OSPF基本工作原理
网络中有4个路由器,如图3.4所示,这4个路由器如何自动学习路由条目呢?首先每个路由器会发链路状态公告(Link State Advertisement,LSA),LSA里面包含路由器的详细信息,例如RTA的LSA内容如下。
图3.4 OSPF工作过程
注意:LSA中带有路由器ID,用来标识不同路由器发出来的LSA。
RTA的LSA会发给RTB和RTC,同时RTC还会透传给RTD,最终4个路由器都有RTA的LSA。同理,RTB、RTC、RTD也一样会发送各自的LSA,每个路由器会把收到的所有LSA放在自己的链路状态数据库(Link State Database,LSDB)里。
LSDB稳定后,路由器使用最短路径优先(Shortest Path First,SPF)算法对LSDB进行计算,得出最短路径树。树根就是当前路由器,例如当RTC计算最短路径树时,树根就是RTC,然后计算去往各个路由器的最短路径。
最后,路由器根据最短路径树算出路由表。
总结一下,OSPF协议计算路由表的过程如下:
(1)路由器发出LSA,并泛洪到各个路由器。
(2)路由器收集LSA,存到LSDB。
(3)使用SPF算法计算最短路径树。
(4)根据最短路径树计算路由表。