OSPF(Open Shortest Path First)开放式最短路径优先协议01

 包结构:

OSPF基于IP,协议号89.优先级为6(QOS会讲到)

组播地址224.0.0.5和224.0.0.6

 

IP头部后面紧跟的是OSPF包的包头。

版本号:IPV4中OSPF版本号为2,IPV6的版本号是3.

类型:表示跟在OSPF包头后的数据包类型。

长度:OSPF数据包的长度,包括OSPF包头。

路由器ID:指首发路由器的ID。

区域ID:始发数据包的路由器所在的区域,如果数据在虚链路上发送,那么区域为0.0.0.0  因为虚链路是骨干区域的一部分。

校验和:对整个数据包的标准IP校验和。

认证类型:正在使用的认证类型。

 

HELLO包(用来建立和维持邻居关系,HELLO包中的所有参数都应当和邻居保持一致):

HELLO间隔:HELLO数据包传送之间的时间间隔,如果接收路由器没有一个相同的值,那么他们不能建立一种邻接关系。

可选项:其中的参数用来确保邻居之间的兼容性。

路由器优先级:用来做DR/BDR的选举,如果为0,则不能参与DR/BDR的选举。

指定路由器:指网络上,指定路由器的IP地址。注:这可能是始发路由器自己认为的DR,而不是最终的DR,如果是0.0.0.0,可能是网络类型不需要DR或还没有选出。

备份指定路由器:指网络上,备份制定路由器的IP地址。注意细节同上。

邻居:如果从邻居的HELLO包中看到了自己的RID,则进入TWO-WAY状态。

 

DBD(数据库描述报文):

作用,描述始发路由器数据库中的一些或全部LSA信息,以便接收者可以对比,DBD交互过程中,可能需要交换多个DBD,DBD中包含一个主/从控制关系标志,用来管理这些DBD交互

序列号双方随机产生,比较RID,谁的RID大谁就是主。

MTU:不分段的情况下,始发路由器可以发送的最大MTU大小。

可选项:和HELLO包一样的可选项。(后面讲解)

I位:初始位,如果这个DBD是第一个DBD,此位置1

M位:数据包不是最后一个DBD,置1代表后续还有更多的数据包

MS位:主从位,置1代表为主,置0代表从。

序列号:用来确保路由器能收到完整的DBD序列。序列号将由主路由器在最初设置数值,而后递增。

LSA头部:包含一个完整的LSA头部信息。

 

LSR(链路状态请求包):

DBD报文同步过程中,路由器会查看发来的LSA哪些本地没有,或者相同的LSA比本地更新。

路由器会将这些LSA记录在链路状态请求列表中,然后,路由器发送一个或多个链路状态请求,来请求自己记录在链路状态请求列表中的这些LSA。

链路状态类型:用来指明LSA类型。

链路状态ID:不同的LSA类型此字段代表不同的意思。

通告路由器:始发LSA通告路由器的RID。

 

LSU(用于LSA泛洪或相应链路状态请求报文):

LSA只能传送到直连的邻居,由直连的邻居重新封装传给下一个设备。TTL=1

 

LSA数量:标示此LSU包含多少个LSA的详细信息。

LSA:LSA数据包格式中描述的全部LSA。

 

LSAck:

LSAck用来做LSA的可靠泛洪,路由器从邻居收到的每条LSA都需要经过LSAck的确认。LSAck包含需要确认的LSA的头部信息。多个LSA可以通过一个LSAck去确认。

确认分为延时确认和直接确认

延时确认:通过此方法确认,更多的LSA可以被单个确认包来确认,被延时确认的数据包延时时间必须要小于5S,以避免不必要的重传

直接确认:直接确认总是以单播发送,发生在下面两种情况,1.从邻居收到了重复的LSA,意味着邻居没有收到我的LSA确认2.收到一条LSA老化时间达到了最大的生存时间,说明邻居没有此LSA的实例了

可选项字段:

DC:表示始发路由器具有支持按需电路的OSPF能力。

NP:N位和P位都用于NSSA区域,因此可以使用在同一位置,N位,仅用于HELLO包,置1时表示支持NSSA的外部LSA,如果N位置1,那么E位必须为0. P位表示可以路由器可以将7类转为5类LSA。

MC:具有转发组播IP数据包的能力,用于MOSPF。

E位:具有接受外部LSA的能力的路由器。此位置1,意味着,如果是Stub区域的话,所有STUB区域的路由器发出的LSA,此位应该为0,HELLO包中可以表示为一个接口是否有转发5类LSA的能力。

MT:多拓扑OSPF,没有实现。

你可能感兴趣的:(职场,Cisco,休闲,ccnp,ospf)