|
知识路径: > 计算机网络原理 > Internet 协议 > 网络层协议 > 开放最短路径优先协议 OSPF > OSPF协议 >
|
相关知识点:16个
|
|
|
|
在DR和BDR出现之前,每一台路由器和他的所有邻居成为完全网状的OSPF邻接关系,这样5台路由器之间将需要形成10个邻接关系,同时将产生25条LSA。而且在多址网络中,还存在自己发出的LSA从邻居的邻居发回来,导致网络上产生很多LSA的拷贝。所以基于这种考虑,产生了DR和BDR。
|
|
|
|
|
(1)描述这个多址网络和该网络上剩下的其他相关路由器。
|
|
|
|
(3)同时为了冗余性,还会选取一个BDR,作为双备份之用。
|
|
|
|
DR BDR选取规则:DR BDR选取是以接口状态机的方式触发的。
|
|
|
(1)路由器的每个多路访问(Multi-access)接口都有个路由器优先级(Router Priority),8位长的一个整数,范围是0~255,Cisco路由器默认的优先级是1,优先级为0的话将不能选举为DR/BDR。优先级可以通过命令ip ospf priority进行修改。
|
|
|
(2)Hello包里包含了优先级的字段,还包括了可能成为DR/BDR的相关接口的IP地址。
|
|
|
(3)当接口在多路访问网络上初次启动的时候,它把DR/BDR地址设置为0.0.0.0,同时设置等待计时器(Wait Timer)的值等于路由器无效间隔(Router Dead Interval)。
|
|
|
|
|
(1)路由器X在和邻居建立双向(2-Way)通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所有可以参与DR/BDR选举的邻居。
|
|
|
(2)如果有一台或多台这样的路由器宣告自己为BDR(也就是说,在其Hello包中将自己列为BDR,而不是DR),选择其中拥有最高路由器优先级的成为BDR;如果相同,选择拥有最大路由器标识的。如果没有路由器宣告自己为BDR,选择列表中路由器拥有最高优先级的成为BDR(同样排除宣告自己为DR的路由器),如果相同,再根据路由器标识。
|
|
|
(3)按如下计算网络上的DR。如果有一台或多台路由器宣告自己为DR(也就是说,在其Hello包中将自己列为DR),选择其中拥有最高路由器优先级的成为DR;如果相同,选择拥有最大路由器标识的。如果没有路由器宣告自己为DR,将新选举出的BDR设定为DR。
|
|
|
(4)如果路由器X新近成为DR或BDR,或者不再成为DR或BDR,重复步骤(2)和(3),然后结束选举。这样做是为了确保路由器不会同时宣告自己为DR和BDR。
|
|
|
(5)要注意的是,当网络中已经选举了DR/BDR后,又出现了1台新的优先级更高的路由器,DR/BDR是不会重新选举的。
|
|
|
(6)DR/BDR选举完成后,DRother只和DR/BDR形成邻接关系。所有的路由器将组播Hello包到AllSPFRouters地址224.0.0.5以便它们能跟踪其他邻居的信息,即DR将泛洪update packet到224.0.0.5;DRother只组播update packet到AllDRouter地址224.0.0.6,只有DR/BDR监听这个地址。
|
|
|
|
|
|
|
(3)优先级相同时,以router ID大为DR;router ID以回环接口中最大IP为准;若无回环接口,以真实接口最大IP为准。
|
|
|
|