底部有福利,千万别错过了~
关于OSPF路由器之间的关系有两个重要的概念,邻居关系和邻接关系。考虑一种简单的拓扑,两台路由器直连。在双方互联接口上激活OSPF,路由器开始发送及侦听Hello报文。在通过Hello报文发现彼此后,这两台路由器便形成了邻居关系。邻居关系的建立只是一个开始,后续会进行一系列的报文交互,例如前文提到的DD、LSR、LSU和LS ACK等。当两台路由器LSDB同步完成,并开始独立计算路由时,这两台路由器形成了邻接关系。
OSPF完成邻接关系的建立有四个步骤:建立邻居关系、协商主/从、交互LSDB信息,同步LSDB。
OSPF邻接关系建立过程1——建立邻居关系
当一台OSPF路由器收到其他路由器发来的首个Hello报文时会从初始Down状态切换为Init状态。
当OSPF路由器收到的Hello报文中的邻居字段包含自己的RouterID时,从Init切换2-way状态。
OSPF邻接关系建立流程2&3——协商主/从、交互LSDB信息
OSPF邻接关系建立流程4——同步LSDB
•邻居状态转变为Loading后,R1向R2发送LSR报文,请求那些在Exchange状态下通过DD报文发现的,但是在本地LSDB中没有的LSA。
•R2收到后向R1回复LSU。在LSU报文中包含被请求的LSA的详细信息。
•R1收到LSU报文后,向R2回复LSACK报文,确认已接收到,确保信息传输的可靠性。
•此过程中R2也会向R1发送LSA请求。当两端LSDB完全一致时,邻居状态变为Full,表示成功建立邻接关系。
在学习DR和BDR的概念之前,需要首先了解OSPF的网络类型。
OSPF网络类型是一个非常重要的接口变量,这个变量将影响OSPF在接口上的操作,例如采用什么方式发送OSPF协议报文,以及是否需要选举DR、BDR等。
接口默认的OSPF网络类型取决于接口所使用的数据链路层封装。
OSPF有四种网络类型:Broadcast、NBMA、P2MP和P2P。
MA(Multi-Access)多路访问网络有两种类型:广播型多路访问网络(BMA)及非广播型多路访问网络(NBMA)。以太网(Ethernet)是一种典型的广播型多路访问网络。
在MA网络中,如果每台OSPF路由器都与其他的所有路由器建立OSPF邻接关系,便会导致网络中存在过多的OSPF邻接关系,增加设备负担,也增加了网络中泛洪的OSPF报文数量。当拓扑出现变更,网络中的LSA泛洪可能会造成带宽的浪费和设备资源的损耗。
为优化MA网络中OSPF邻接关系,OSPF指定了三种OSPF路由器身份,DR(DesignatedRouter,指定路由器)、BDR(BackupDesignated Router,备用指定路由器)和DRother路由器。
只允许DR、BDR与其他OSPF路由器建立邻接关系。DRother之间不会建立全毗邻的OSPF邻接关系,双方停滞在2-way状态。
BDR会监控DR的状态,并在当前DR发生故障时接替其角色。
OSPF路由器在同一个区域(Area)内网络中泛洪LSA。为了确保每台路由器都拥有对网络拓扑的一致认知,LSDB需要在区域内进行同步。
如果OSPF仅有一个区域,随着网络规模越来越大,OSPF路由器的数量越来越多,这将导致诸多问题:
OSPF引入区域(Area)的概念,将一个OSPF域划分成多个区域:
区域的分类:区域可以分为骨干区域与非骨干区域。骨干区域即Area0,除Area0以外其他区域都称为非骨干区域。
多区域互联原则:基于防止区域间环路的考虑,非骨干区域与非骨干区域不能直接相连,所有非骨干区域必须与骨干区域相连。
OSPF路由器根据其位置或功能不同,有这样几种类型:
区域内路由器(InternalRouter)
区域边界路由器ABR(AreaBorder Router)
骨干路由器(BackboneRouter)
自治系统边界路由器ASBR(ASBoundary Router)
•区域内路由器(InternalRouter):该类路由器的所有接口都属于同一个OSPF区域。
•区域边界路由器ABR(AreaBorder Router):该类路由器的接口同时属于两个以上的区域,但至少有一个接口属于骨干区域。
•骨干路由器(BackboneRouter):该类路由器至少有一个接口属于骨干区域。
•自治系统边界路由器ASBR(ASBoundary Router):该类路由器与其他AS交换路由信息。只要一台OSPF路由器引入了外部路由的信息,它就成为ASBR。
这里,给正在学习且准备踏入网工之路的同学一点福利,请笑纳~
如需获取,请在后台私信:资料 即可