OSPF邻居关系建立及握手过程

OSPF Open Shortest Path First.使用Dijkstra算法计算路由,快速收敛,层次化多区域结构设计

OSPF v2主要标准RFC1583和RFC2328

OSPF v3用于IPv6网络中RFC5340

邻居发现

OSPF通过Hello报文发现和维持邻居关系,邻居关系不等于邻接关系,只有达到two-way状态的路由器才算邻居关系(双向建立)。OSPF在所有启用OSPF的接口发送HELLO报文

在BM和点到点,hello报文10s发送一次,在NBMA和P2MP网络中30s发送一次

在BM、P2P和P2MP网络中OSPF通过组播HELLO包自动发现邻居,组播地址224.0.0.5;NBMA网络中,需手工指定邻居

在建立邻居关系使,路由器对HELLO报文中的参数进行检查比对

Hello/dead发送时间间隔

区域ID

区域类型 Option字段,其中E和N/P置位代表的含义不同

邻居关系建立的过程:

三步握手

Down init two-way

Down 状态:邻居的初始状态,邻居的Router ID还没有出现在OSPF邻居列表中

Init 状态:A收到邻居的Hello报文,active neighbor 字段没有自己的Router ID ,A中邻居状态为Init

 

邻接关系建立过程

OSPF路由器在双向邻居关系建立完成后,开始建立邻接关系,在BM和NBMA网络中,邻接关系发生在DR和BDR选举之后,其他网络类型,没有DR/BDR选举,邻居建立完成后即开始建立邻接关系

邻接关系是邻居路由器间为完成LSDB同步而发生的LSA交换过程,也是邻居路由器间初次通告LSA、快速同步的过程

它是LSA泛洪的一种方式,同步完成后,邻居之间最终是Full状态。

在广播和NBMA网络上DRother路由器彼此之间会一直保持在2-way的状态,而它们同DR/BDR间是FULL邻接关系

在其他类型OSPF网络上,邻接关系发生在2-WAY状态后

邻接关系的状态迁移过程

信息交换初始状态Exstart:在这一状下,本地路由器和邻居路由器互传空DD报文

确定主/从关系;确定DD的初始序列号;比较接口MTU(可选)

空DD报文中 I(initialze)   M(more)    MS(Master/Slave)

I位:初始化位,代表同步过程开始

M位:M=0代表,后续DD报文中没有LSA summary 要传;任何一方M不为0,Master就要继续发送DD报文,Slave收到之后,不论是否还有LSA Summary要传递,一定要回应DD报文

M/S初始双方M/S均置位

 

信息交换状态Exchange:选举出Master后,Slave 路由器相Master会送DD报文,其中包含LSA头(LSA summary),并使用Master的序列号。Exchange阶段通过这种可靠的DD交互,完成快速交换LSA头

Master和Slave的角色分工不同,由RID大的路由器充当,负责发送序列号递增的DD报文,Slave用收到的DD报文的序列号进行确认和回应。所以DD交互过程是可靠的

 

信息加载状态(loading):在这一状态下,本地路由器会向它的邻居路由器发送LSReq,请求本地LSDB中没有的LSA。收到LSReq,路由器会用包含完整的被请求LSA的LSU进行回应。请求方收到LSU后,则LSAck确认。一份LSAck可同时为多份LSUpdate做确认

 

完全邻接状态full:在full状态下,邻居路由器之间已完成同步过程,建立起完全邻接关系

 

影响邻居关系及邻接关系建立的问题

1主IP网络及掩码     Hello报文中,携带有接口主IP网络的掩码,

2MTU不一致

OSPF网络类型

Point-to-Point networks

Broadcast networks

Nonbroadcast Multi-Access networks

Point-to-Multipoint networks

广播型网络

当链路层是ethernet时,缺省情况下,OSPF认为网络类型是broadcast.在该类型的网络中:通常以组播形式发送Hello报文、LSU报文和LSAck报文。其中224.0.0.5为OSPF设备预留组播地址;224.0.0.6为 DR/BDR预留组播地址。以单播形式发送DD报文和LSR报文

NBMA

当链路层协议是帧中继、ATM时,缺省情况下,OSPF认为网络类型是NBMA。以单播形式发送协议报文(hello、DD、LSR、LSU、LSAck)

P2MP

没有一种链路层协议被缺省认为是此类型。必须是由其他网络类型强制更改的,常用做法是NBMA网络改到P2MP

以组播(224.0.0.5)发送hello;以单播形式发送(DD、LSR、LSU、LSAck)

P2P

当链路层协议是PPP、HDLC和FrameRelay(仅限P2P类型子接口)时,缺省情况下,网络类型为P2P

组播形式(224.0.0.5)发送hello、DD、LSR、LSU、LSAck

 

各种网络类型互联

网络类型组合

邻居建立

邻接同步

路由计算

补充说明

NBMA+其他网络类型

不可以

 

 

NBMA 只能和同类型节点建立邻居关系

P2MP+Broadcast

调整间隔后可以

可以

无法计算出对方路由

 

 

P2MP和P2P

调整间隔后可以

可以

可以

 

Broadcast+P2P

可以

可以

无法计算出对方的路由

 

默认NBMA和P2MP的hello时间都为30s,P2P和Broadcast的hello时间都为10s

NBMA只支持单播形式的报文,其他几种网络类型的Hello报文都是组播发送

Broadcast和P2P无法计算出对方的路由,OSPF在画二者的拓扑结构时,Broadcast需要连接到虚节点,而P2P网络需要和邻居节点直连,在逻辑拓扑上二者无法连接到一起,无法计算出各自节点后面的路由

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页