1.在exstart状态里,邻接关系形成,路由器和DR/BDR形成主仆关系(RID等级最高的为主,其他的为辅)
; }% k" z9 e6 B3 D9 L! Q2.主仆交换DBD包(DDP),路由器进入exchange状态
) R) o T* v2 W6 j( I3 Q: p$ _7 ]DBD包含了出现在LSDB中的LSA条目头部信息,条目信息可以为一条链路(link)或者一个网络.每个LSA条目头部信息包括链路状态类型,宣告路由器的地址,链路耗费和序列号(版本号)
& D( K# g1 I0 T: L+ d1 p3.路由器收到DBD以后,将使用LSAck做出确认;还将和自己本身就有的DBD进行比较,过程如下图:
x2 {8 V5 G9 z8 X( D9 ]2 H
* I+ _7 q. Z0 n& V6 K9 b( @7 _% G
+ [ p7 V& y& m4 S) _
如果DBD信息中有更新更全的链路状态条目,路由器就发送LSR给其他路由器,该状态为loading状态;收到LSR以后,路由器做出响应,以LSU作为应答,其中包含了LSR所需要的完整信息;收到LSU以后,再次做出确认,发送LSAck
! h. X+ O- [9 m9 Y+ o. P6 L+ w4.路由器添加新的条目到LSDB中,进入full状态,接下来就可以对数据进行路由了: b! q5 {7 s1 {3 V9 `; y% _4 N
Maintaining Routing Information8 U0 M2 x' f* L. f- ?9 ]! S
当链路状态发生变化以后,路由器将洪泛LSA来对其他路由器做出通知,如下图:
$ b0 j9 ~ k3 D& {
" N) [* I& A* m4 h1 a* R! r. P, @$ d/ J8 r+ d
$ E3 [, L: D) N& h
1.路由器意识到链路产生变化以后,对多播地址224.0.0.6和所有的DR/BDR发送LSU,其中LSU包含了更新了的LSA条目( g7 V5 ~. r* i9 u. H
2.DR对LSU做出确认,接着对多播地址224.0.0.5继续洪泛,每个收到LSU的路由器对DR做出确认(反馈LSAck),
" e+ f1 X: e0 O% h5 Q0 c4 F" Q3.如果路由器连接了其他网络,将通过转发LSU给DR(在点到点网络是转发给邻居路由器)来对其他网络进行洪泛1 w; c$ S) a0 N$ v
4.其他路由器通过LSU来更新自己的LSDB,然后使用SPF算法重新计算最佳路径" ]4 g r2 N* Z( X7 p+ ~
链路状态条目的最大生存周期是60分钟,60分钟只有,它将从LSDB中被移除 |