扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在RFC2328 Version 2 中定义了邻居关系(Neighbors) 和邻接关系(Adjacency),本文旨在分析一下二者之间的联系和区别。
1. OSPF的邻居(Neighbors)
同一个网段上的路由器可以成为邻居。邻居是通过Hello报文来选择的,Hello 报文使用IP多播方式在每个端口定期发送。路由器一旦在其相邻路由器的Hello 报文中发现他们自己,则他们就成为邻居关系了,在这种方式中,需要通信的双方确认。邻居的协商只在主地址(Primary address) 间协商。
两个路由器之间如果他们不满足下列条件,则他们就不能成为邻居:
1、Area-id:两个路由器必须有共同的网段上,它们的端口必须属于该网段上的同一个区,当然这些端口必须属于同一个子网。
2 验证(Authentication OSPF)允许给每一个区域配置一个密码来进行互相验证。路由器必须交换相同的密码,才能成为邻居。
3、Hello Interval和Dead Interval: OSPF协议在每个网段上交换Hello 报文,这是Keeplive的一种形式,路由器用它来确认该网段上存在哪些路由器,并且选定一个指定路由器DR(Designated Router)。Hello Interval定义了路由器上OSPF端口上发送Hello 报文时间间隔长度(秒为单位)。Dead Interval是指邻居路由器宣布其状态为DOWN之前,没有收到其Hello报文的时间。
OSPF协议需要两个邻居路由器的这些时间间隔相同,如果这些时间间隔不同,这些路由器就不能成为邻居路由器。可在路由器的端口模式下设置这些定时器:
ip ospf hello-interval
ip ospf dead-interval
4 Stub区标记:两个路由器为了成为邻居还可以在Hello报文中通过协商Stub区的标记来达到。Stub区的定义会影响邻居选择的过程。
2. 邻接(Adjacencies)
邻居关系形成后路由器之间就会进行邻接关系的形成。成为邻接关系的路由器之间,不仅仅是进行简单的Hello报文的交换,而是进行数据库的交换/为了减少特定网段上的交换信息。OSPF协议在每一个多址可达的网段上选择一个路由器作为指定路由器(DR Designated Router), 选择另外一个路由器作为备份的指定路由器BDR (Backup Designated Router), BDR作为DR的备份。这种设计的考虑是让DR或BDR成为信息交换的中心,而不是让每个路由器与该网段上其它路由器两两做更新信息的交换。路由器首先与 DR、 BDR交换更新信息,然后DR 、BDR将这些更新信息转发给该网段上的其他路由器。这样信息交换的复杂度就会从O (n*n)降到O (n),其中n是多址可达网段上的路由器的数量。如图1, 显示了DR和BDR的关系。
在上图中,所有的路由器在同一个多址可达网段上,通过相互交换Hello报文来选择DR和BDR. 在该网段上的每个路由器(他们之间已经成为Neighbor)会进一步与DR和BDR建立邻接(Adjacency) 关系。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者