OSPF域间路由计算,防环

在进行本篇学习之间,我们需要回顾一下前面的知识。

OSPF在BMA网络类型的接口上以组播的方式发送hello,LSU,LSACK报文。当路由器需要向DR,BDR发送OSPF报文,使用224.0.0.6作为报文的目的地址;当路由器向所有的路由器发送OSPF报文,使用224.0.0.5。

DR,BDR的概念

在BMA网络类型下,上图所示。如果这些路由器都在接口上激活OSPF,这些路由器将会建立n(n-1)/2个邻接关系。维护关系将会额外消耗设备资源,也增加了LSA的泛洪数量。为优化该场景下的OSPF邻接数量,减少不必要的协议流量,OSPF会在每个MA网络中选举一个DR一个BDR。

DR和BDR是接口级别的概念。在MA网络中,DR负责确保接入该网络中的所有OSPF路由器拥有相同的LSDB,即确保LSDB的同步,DR使用224.0.0.5发送更新,drother使用224.0.0.6。

区域设计原则:非骨干区域必须和骨干区域相连;多区域,有且只有一个区域0。

OSPF LSA类型:

 1. router  LSA:每台路由器都会产生的LSA,描述了该路由器所有的OSPF直连接口的状况及cost,该LSA只能在接口所属区域内泛洪。

Type : Router    链路状态类型 8bit
Ls id : 1.1.1.1    LSA的标识。不同类型的LSA,对该字段定义也不同
Adv rtr : 1.1.1.1   产生这条LSA路由器的router-id
Ls age : 957    老化时间,最大老化时间3600s
Len : 36      
Options : ABR E   
seq# : 80000005  LSA的序列号,判断LSA的新旧或是否重复
chksum : 0x5cba  校验和
Link count: 1
* Link ID: 10.0.12.2  link的标识,不同的链路类型对链路ID的定义不同
Data : 10.0.12.1    
Link Type: TransNet  链路类型,四种
Metric : 1        开销

link-type 描述 link-id data
P2P 

点对点连接另一台路由器

邻居的router-id 产生该LSA的路由器的接口IP
TRANSNET 连接到传输网络 DR的接口IP  产生该LSA路由器的接口IP
STUBNET 连接到一个末梢网络 网络IP地址,叶子信息 网络掩码
V-LINK 虚链路 邻居的router-id  产生该LSA路由器的接口IP

 2. network LSA:DR产生,描述DR所接入的MA网络中所有与之形成邻接关系的路由器,包括DR本身,该LSA只能在接口所属区域内泛洪

Type : Network
Ls id : 10.0.12.2  产生这条LSA2的DR接口IP
Adv rtr : 2.2.2.2
Ls age : 642
Len : 32
Options : E
seq# : 80000005
chksum : 0x9891  与LSA1 相同
Net mask : 255.255.255.0  该MA网络的掩码
Priority : Low
Attached Router 2.2.2.2    相连路由器的router-id
Attached Router 1.1.1.1

  根据1,2类LSA可使用SPF算法计算出天然无环路的区域内路由

 3. network summary LSA:ABR产生,描述到某个区域的目标网段的路由,该类LSA主要用于区域间的路由传递。

Type : Sum-Net
Ls id : 10.1.1.1    通告的路由信息,即网段
Adv rtr : 1.1.1.1
Ls age : 1432
Len : 28
Options : E
seq# : 80000005
chksum : 0x8d56
Net mask : 255.255.255.255  掩码
Tos 0 metric: 100        路径开销,自己到达该网段的cost
Priority : Low

  *3LSA只能在一个区域内泛洪,为放环三类LSA不允许通告给area0(即非ABR所连区域的LSA),三类LSA可通告给非骨干区域

  ASBR summary LSA :ABR产生,描述ASBR。相当于一条到达ASBR的主机路由

  AS External LSA:ASBR产生,描述AS外的外部路由

  NSSA LSA:ASBR产生,描述AS外的外部路由。仅在产生这个LSA的区域泛洪,不进骨干。NSSA的ABR会将7 LSA 转换成5LSA注入骨干

 介绍完LSA后,下面分析区域内的SPF路由计算

 1.构建SPF树:即根据1.2类LSA中的拓扑信息,构建出SPF树干。

 2.计算最优路由:基于树干和1类LSA中的路由信息,计算最优路由。

[AR1-ospf-1-area-0.0.0.0]display ospF lsdb router self-originate

 Link ID: 10.0.12.2
Data : 10.0.12.1
Link Type: TransNet
Metric : 1

* Link ID: 3.3.3.3
Data : 10.0.13.1
Link Type: P-2-P
Metric : 48

* Link ID: 10.0.13.0
Data : 255.255.255.0
Link Type: StubNet
Metric : 48

根据自身所产生的一类LSA发现有两个拓扑信息,将他们放入候选列表中,先计算cost小的。

 此时可以画出A连接这10.0.12.2(DR),通过12.1 cost1 ,在查看DR发出的2类LSA

Net mask : 255.255.255.0
Priority : Low
Attached Router 2.2.2.2
Attached Router 1.1.1.1

可以通过LS ID和mask算出该MA网络的网络号为10.0.12.0,伪节点连接着2.2.2.2,伪节点到2.2.2.2cost0

查看2.2.2.2的一类LSA

Link ID: 10.0.12.2
Data : 10.0.12.2
Link Type: TransNet
Metric : 1/已算

* Link ID: 10.0.235.2
Data : 10.0.235.2
Link Type: TransNet
Metric : 1

* Link ID: 4.4.4.4
Data : 10.0.24.2
Link Type: P-2-P
Metric : 48

* Link ID: 10.0.24.0
Data : 255.255.255.0
Link Type: StubNet
Metric : 48

此时可以看到2连接着一个伪节点,一个P2P网络,而伪节点的cost小,先计算伪节点的。

display ospf lsdb network 10.0.235.2

Net mask : 255.255.255.0
Priority : Low
Attached Router 2.2.2.2
Attached Router 3.3.3.3
Attached Router 5.5.5.5

2表示还连接着3.3.3.3   5.5.5.5 ,2到3的cost为2  2到5的cost也为2,同时计算。第一条1到3的cost 48的lsa不计算

此时,逻辑上的SPF树已经构建完成,建议画出逻辑拓扑。

区域间路由计算:

  ospf计算区域间路由信息的时候,使用的cost是自己到达ABR的cost,加上三类LSA的cost

  ospf计算其他区域内三类LSA的时候,是把LSA3路由直接认为是ABR上的叶子信息,区域间路由发生了变化,不会影响本区域的STP树而会认为是ABR的叶子信息发生了变化

由于域间路由信息是由ABR传递,所以ABR的角色十分重要

ABR的定义:连接多个区域,并在骨干区域有一个活的接口

ABR的行为:将直连区域的区域内路由,转换成其他域内的LSA3(路由信息)

      将骨干区域的3类,转换成非骨干的3类

放环原则:

1.为了避免区域间的环路,OSPF规定区域之间的路由交互只能通过ABR来完成。而ABR连着骨干,所以非骨干必须与骨干相连,形成星型拓扑,逻辑结构无环。

此时都是ABR,所以会形成环路,推出下面的放环原则

2.ABR不会将非骨干的3类LSA传到骨干区域。(即area3网段产生的路由经过AR3转换成3类,AR2不会将该3类传到area0)

   ABR在骨干存在邻居,不会计算非骨干的LSA

   骨干不存在邻居,计算非骨干的LSA(即3类始发于0,,而不存在邻居则传不回来,不会环路,所以可以计算)

 3.无论cost,1类总是优于3类(当AR2接口cost1000时,AR1--AR3--AR4--AR2cost小于AR1--AR2,导致环路)相当于水平分割

原文地址:https://www.cnblogs.com/zx-1992884121/p/14527189.html