1个回答
2013-07-06
展开全部
在DR和BDR出现之前,每一台路由器和他的所有邻居成为完全网状的OSPF邻接关系,这样5台路由器之间将需要形成10个邻接关系,同时将产生25条LSA.而且在多址网络中,还存在自己发出的LSA 从邻居的邻居发回来,导致网络上产生很多LSA的拷贝,所以基于这种考虑,产生了DR和BDR. DR将完成如下工作 1. 描述这个多址网络和该网络上剩下的其他相关路由器. 2. 管理这个多址网络上的flooding过程. 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). DR BDR选取过程: 1. 路由器X在和邻居建立双向(2-Way)通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所有可以参与DR/BDR选举的邻居(priority不为). 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监听这个地址. 简洁的说:DR的筛选过程 1.优先级为0的不参与选举; 2.优先级高的路由器为DR; 3.优先级相同时,以router ID 大为DR; router ID 以回环接口中最大ip为准;若无回环接口,以真实接口最大ip为准。 4.缺省条件下,优先级为1。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询