码迷,mamicode.com
首页 > 其他好文 > 详细

OSPF邻居建立过程

时间:2014-11-29 19:04:02      阅读:1509      评论:0      收藏:0      [点我收藏+]

标签:ospf邻居建立过程

bubuko.com,布布扣

创建邻接的过程:AB开始都是DOWN状态。

AB发送一个hello包,告诉B我的router-id172.16.1.1,我没有已知邻居;B收到了hello包,知道A是自己的邻居,将172.16.1.1加入到自己的邻居表,进入初始化(init)状态,BAhello包,告诉A我的router-id172.16.1.2,我已知的邻居是AA收到Bhello包,将172.16.1.1加入到自己的邻居表,B成为A的邻接路由器,(如果是一个MA网络的话,AB都知道了双方的router-id后,会协商DRBDR,因为Brouter-id大所以B就会成为DRABhello包,告诉B我的router-id172.16.1.1,我的邻居是BB收到hello包,A成为B的邻接路由器。

 

bubuko.com,布布扣

路由器发现阶段的步骤:

seq序列号

I(init)=1,是1类的DBD,里面没有LSA,所以体积很小。就是协商主从,在后续的同步LSA中,谁占主动,谁占被动,而且根据谁的序列号统一LSDB中的LSA的序列号。I=0表示已经协商完毕。

M(more)=1,表示后面还有更多的DBD发过来,=0的时候表示这是我最后一个DBD的报文。

MS(master)=1,表示我认为我应该占主动,对比的原则是谁的router-id大谁做主。对比完后,小的一方会把自己的ms设置为0。

A进入EX-start(预启动状态),A先给B发送DBD报文,因为router-id是1.1,因为先要协商主从,所以第一个DBD报文,不包含具体的LSA,bubuko.com,布布扣;B收到A发来的DBD报文,进入EX-start状态,发现他的router-id比自己的小,发DBD报文给A,告诉A你不是主,我才是主,因为我的router-id比你大,所以I=1;A收到B的DBD报文,知道B是主,(因为已经协商好了谁是主从的问题,A将自己下一个要发的DBD报文的I位置为0,以为自己的不是主所以ms也置为0A进入exchange(交换2DBD的状态,2DBD包括LSA),AB发送DBD说这是我的链路状态数据库的汇总信息,bubuko.com,布布扣B收到A发来的DBD报文,进入exchange状态,发汇总信息给Abubuko.com,布布扣,因为自己是主所以ms位置为1

bubuko.com,布布扣

路由发现阶段步骤:

BA发送DBD,告诉A这是他的汇总信息,因为M=0,所以告诉A这是我的最后一个DBDA收到BDBDA会收集自己所需要的完整的LSA,A 进入loading状态,A给B发送汇总信息,告诉B自己已经没有DBD了,然后B已经有了完整的LSA所以A进入full状态;因为A需要维护一个LSA的列表,所以向B发送一个LSR,对B说我需要你完整的关于172.16.10.0网络的信息,B收到后给A回去 LSU,告诉A这是172.16.10.0网络的信息,A收到后进入full状态,A回复给B一个ACK的消息,告诉B已收到。双方开始进入路由的收敛。


本文出自 “用心去创造未来” 博客,请务必保留此出处http://fengkuanglaolou.blog.51cto.com/9657652/1584502

OSPF邻居建立过程

标签:ospf邻居建立过程

原文地址:http://fengkuanglaolou.blog.51cto.com/9657652/1584502

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!