OSPF邻居建立过程详解

目录

OSPF的五种包:

1、Hello包 

2、DBD包(database description)

3、LSR包(Link State Request)

4、LSU包(Link State Update)

5、LSACK包(Link State Acknowledgment)

OSPF建立邻居过程的7个状态机:

         down——>init——>two-way——>exstart——>exchange——>loading——>full

对OSPF建立邻居过程分析

①建立邻居关系

②建立各自拓扑表

③建立邻接关系

 


 

OSPF的五种包:

1Hello ——只在状态init、状态exstart发送

功能:用于建立和维持邻居关系 (10s相互发送Hello包,若40s内没有发送,则邻居关系删除)

重要字段:路由器的router-id

                  路由器接口的area-id (必须一致)

                  路由器接口的IP地址和掩码

                  路由器接口的认证,hello时间间隔,死亡时间间隔(必须一致)

                  neighbor字段

                  STUB标识(末节标识)(必须一致)

2DBD(database description)——只在状态exchange发送

只在以下状态发送:exchange

功能:用于对OSPF的网络拓扑进行描述

3LSRLink State Request)——只在状态loading发送

功能:用于请求对方的路由信息

4LSULink State Update)——只在状态loading发送

功能:用于存储和传递路由信息

5LSACK(Link State Acknowledgment)——只在状态loading发送

功能:用于对LSU等包进行可靠确认

 


 

OSPF建立邻居过程的7个状态机:

down——>init——>two-way——>exstart——>exchange——>loading——>full

1.down       //双方还没有进行任何交互

2.init          //此状态只交互hello,没有同步任何路由信息

3.two-way  //达到状态two-way,建立邻居关系(形成邻居关系后要进行DR/BDR选举

4.exstart    // 进行主从关系选举,为了确定谁在exchange状态先发送DBD包

5.exchange //通过交互DBD,建立各自的拓扑表

6.loading  //请求对方路由信息,此状态交互LSR包、LSU包、LSACK

7.full           //建立邻接关系  达到LSDB的同步

 


 

OSPF建立邻居过程分析

OSPF建立过程可以简单分为以下三个过程

①建立邻居关系

②建立各自拓扑表

③建立邻接关系

 

 

①建立邻居关系:down ——>init ——>two-way ----->

OSPF邻居建立过程详解_第1张图片

 

分析:在状态init,路由器会互相发送hello,hello包重要字段如下:

           路由器的router-id

           路由器接口的area-id(必须一致)

           路由器接口的IP地址和掩码

           路由器接口的认证,hello时间间隔,死亡时间间隔(必须一致)

           neighbor字段

           STUB标识(末节标识)(必须一致)

           只有两路由器的接口aera-id字段、接口的认证,hello时间间隔,

           死亡时间间隔、STUB标识一致,路由器才会到状态two-way,建立邻居关系

 

           建立邻居关系后要进行DR/BDR选举

           作用:减少邻接数目,减小链路消耗

           选举规则

           1)比较优先级,越大越优(默认为1,最大255,0表示不参加选举)

           2)比较Router-ID,越大越优

 

 

②建立各自拓扑表:exstart ——>exchange ----->

OSPF邻居建立过程详解_第2张图片

分析:在状态exstart通过发送hello包进行主从关系选举(master/slave),

          为了确定谁在exchange状态先发送DBD包

          主从关系选举是通过比较两台路由器的Router ID大小,

           Router ID大的为master路由器,由master路由器先交互DBD包

 

          主从关系选举后,进入状态exchange ,在此状态通过交互DBD包,建立各自的拓扑表

 

③建立邻接关系:loading ——>full

OSPF邻居建立过程详解_第3张图片

分析:建立各自的拓扑表后,进入状态loading,请求对方路由信息,

           如图左边路由器,发送LSR包请求172.16.6.0/24的路由信息

           右边路由器收到LSR包后,会回复LSU包,来告知172.16.6.0/24的路由信息

           左边路由器收到LSU包后,会回复LSACK包,用于对LSU包进行可靠确认

           交互完路由信息,达到full状态,路由器之间建立邻接关系  达到LSDB的同步

你可能感兴趣的:(网络)