一篇文章彻底理解【OSPF路由算法之LSA】



LSA——链路状态通告


一、LSA固定头部

Type Age Do not age flag Link state id ADV Seq
LSA的类型 表明LSA的产生时间 LSA永不老化标志位 不同的LSA的类型有不同的涵义 Advertising Router,指明通告该LSA的设备router id 序列号,表明路由器产生LSA的顺序

OSPFv3:除了上面几类LSA,还会有8类、9类LSA。

  Do not age flag 为 1时:LSA不会周期更新,而是需要设置LSA永不老化,以维持LSA的有效性,用于按需链路中。
  Seq:最小值为0X80000001,最大值为0X7FFFFFFF。序列号第一个bit,若为0,则代表是正值;若为1,则代表是负值。
  当始发路由器每产生一个;LSA实例时,序列号增加1,且序列号越大LSA越新。

怎么判断LSA的新旧?

字段 判断方法
sequence number 值越大越新
checksum 值越大越新
age age=3600s,则将该LSA删除;若age≠3600s,则看两类LSA的age的差值:age间的差值<900s,则认为两条LSA相同而丢弃后来的LSA;age间的差值>=900s,age越小越新

二、六类LSA报文

LSA type type name function
1类 Router-LSA 携带区域内的信息
2类 Network-LSA 携带区域内的信息
3类 Summary-LSA 携带区域间的信息(ABR)
4类 ASBR-summary-LSA 携带区域间的信息(ASBR)
5类 AS-external 携带AS外部路由信息
7类 NSSA-LSA 携带AS外部路由信息

一、 1类LSA——Router LSA(区域内的LSA)
作用:描述本设备的接口网络类型、接口的IP地址、该接口建立的对端设备的信息、到达对端邻居的开销值。

生成者(ADV):每台启用了OSPF的设备都会产生;

传播范围:只能在区域内传播;

防环:使用SPF进行防环;

Link state id:产生该LSA的route id;

flag:
  ①V=1,则代表该设备建立了Vlink的邻居;
  ②E=1,则代表该设备为ASBR设备(有做外部路由引入到OSPF中);
  ③B=1,代表该设备为ABR设备;

Router LSA链路类型对比分析:

Link Type Link ID Link Data
Transit DR的接口地址 本端的接口IP
Stub 网络号 掩码
P2P 对端的RID 本端的接口IP
Vritual link 对端的RID 本端的接口IP

例子:
在这里插入图片描述
站在AR1 LSDB来看的:

<Huawei>dis ospf lsdb router
	 OSPF Process 1 with Router ID 1.1.1.1
		         Area: 0.0.0.0
		 Link State Database 


  Type      : Router
  Ls id     : 2.2.2.2
  Adv rtr   : 2.2.2.2  
  Ls age    : 204 
  Len       : 36 
  Options   :  E  
  seq#      : 80000004 
  chksum    : 0x34f0
  Link count: 1
   * Link ID: 10.1.1.1     
     Data   : 10.1.1.2     
     Link Type: TransNet     
     Metric : 1

  Type      : Router
  Ls id     : 1.1.1.1
  Adv rtr   : 1.1.1.1  
  Ls age    : 192 
  Len       : 36 
  Options   :  E  
  seq#      : 80000006 
  chksum    : 0x6ebd
  Link count: 1
   * Link ID: 10.1.1.1     
     Data   : 10.1.1.1     
     Link Type: TransNet     
     Metric : 1

二、2类LSA(区域内的LSA)
作用:描述MA网络配合1类LSA共同描述区域内的拓扑信息

生成者(ADV):DR生成,DR的router id;

传播范围:只能在区域内传播;

Link state ID:DR的IP地址;

Net mask:DR所在网段的掩码;

Attached router:与DR相连的设备的router id;(拓扑信息)

防环:使用SPF进行防环;

  MA网络是什么?
  MA,multiple access,包含广播型、NBMA型的网络

例子:
在这里插入图片描述
站在AR1 LSDB来看的:

<Huawei>dis ospf lsdb network
OSPF Process 1 with Router ID 1.1.1.1
		         Area: 0.0.0.0
		 Link State Database 


  Type      : Network
  Ls id     : 10.1.1.1
  Adv rtr   : 1.1.1.1  
  Ls age    : 265 
  Len       : 32 
  Options   :  E  
  seq#      : 80000003 
  chksum    : 0x42f8
  Net mask  : 255.255.255.0
  Priority  : Low
     Attached Router    1.1.1.1
     Attached Router    2.2.2.2


三、3类LSA(区域间的LSA)
作用:描述其他区域的路由信息,路由信息包含了路由前缀、掩码、去往该路由的开销;

生成者(ADV):ABR生成
该区域有几个网段就会生成几条3类LSA,3类LSA不是凭空产生,是由1类LSA里面的stubnet的链路类型产生以及2类LSA中的link state ID和掩码一起生成;

Link state ID:路由的前缀;

Netmask:该路由的掩码;

metric:ABR设备到达该网段的开销;

特点:3类LSA每经过一个ABR设备,会将3类LSA中的ADV变为经过的ABR设备的router id,并且会重新计算开销;

鉴于3类LSA没有拓扑信息容易出现环路,有相应的防环措施,如下:
 (1)ABR设备收到其他非骨干区域传递过来的3类LSA,执行接收(同步LSDB)不计算LSA(防环)
 (2)非骨干区域必须围绕骨干区域(区域0)进行建立;

问题1:当路由器收到了LSA1和LSA2,路由器是如何来识别这两个LSA是否是同一个LSA的==?
答:LSA头部有三个字段来标识一条LSA,分别是: type 、Link State ID 、Advertising Router,如果以上三个字段的值都相同,路由器便会认为这两LSA是同一个LSA;

问题2:如果两个LSA相同,路由器应该接收哪个LSA?
答:LSA头中,有三个字段来判断一条LSA的新旧:1、age,老化时间;2、Sequence Number,也即LSA序列号;3、Checksum校验和

问题3:路由器LSA是怎么样选举出来的?
答:选举的三个要素:1、序列号大的优先;2、校验和大的优先;3、比较老化时间。

  a.如果一条LSA为3600秒(即最大age时间),那就选择该LSA
  b.如果两个LSA的age时间之差大于15分钟,age时间小的优先
  c.如果两个LSA的age时间之差在15分钟之内,说明这两个LSA相同,随意选择一个即可

OSPF的区域设计原则
 (1)非骨干区域必须围绕骨干区域(区域0)进行建立;
 (2)骨干区域不能被分割;
 (3)两个区域或以上必须存在骨干区域(为了有ABR设备执行1、2类转3类的操作);

不规范的区域设计解决措施——vlink
实现:通过建立vlink实现延长区域0的范围;vlink是属于区域0;

vlink建立的注意事项
(1)建立vlink的设备要同处于一个相连的非骨干区域中;
(2)vlink指的是对方的router id;


vlink只是一个临时的修补方案,不建议长期使用:
(1)加大非骨干区域设备的负担;
(1)加大非骨干区域设备的负担;
(2)加大非骨干区域链路的负担;
(3)虚连接不稳定;


vlink配置

ospf 1 router-id 10.1.1.1
  area 0.0.0.1
  vlink-peer 10.1.2.2

检查:

dis ospf vlink

四、4类LSA
作用:当需要访问外部路由的设备发现本设备和ASBR不在同一个区域,所以不能实现外部路由的访问,4类LSA就可以帮助该设备找到ASBR;描述ABR到达ASBR的开销;

生成者:ABR,ABR的router id;

Link state ID:ASBR的router id;

metric:ABR设备到达ASBR的开销;


五、5类LSA(外部路由LSA)
作用:描述引入的外部路由的前缀、掩码、开销;
特点:引入多少条外部路由,就会生成多少条5类LSA;
产生者(ADV):ASBR(区域边界路由器)
Link state ID:引入的外部路由的前缀;
netmask:外部路由的掩码;
External type:开销类型;

(1)E1:既有OSPF内部的开销,也有OSPF外部的开销,外部开销也默认为1;
(2)E2:只显示OSPF外部的开销,默认为1;(默认类型为E2)

 假如现在运行了OSPF的路由器,收到了两条5类LSA:
 (1)若有E1也有E2,比较开销类型,E1>E2;
 (2)若两条LSA开销类型都为E1,则比较开销总值,越小越好;
 (3)若两条LSA开销类型都为E2,则比较外部开销,越小越好,如果外部开销一致,则内部开销;


例子:
在这里插入图片描述
站在AR1 LSDB来看的:

<Huawei>dis ospf lsdb ase

	 OSPF Process 1 with Router ID 1.1.1.1
		 Link State Database


  Type      : External
  Ls id     : 10.0.2.0
  Adv rtr   : 2.2.2.2  
  Ls age    : 629 
  Len       : 36 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0x2a92
  Net mask  : 255.255.255.0 
  TOS 0  Metric: 1 
  E type    : 2
  Forwarding Address : 0.0.0.0 
  Tag       : 1 
  Priority  : Low

#因为引入的是direct直连路由,所以10.1.1.0网段也包含进来了
  Type      : External
  Ls id     : 10.1.1.0
  Adv rtr   : 2.2.2.2  
  Ls age    : 629 
  Len       : 36 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0x2993
  Net mask  : 255.255.255.0 
  TOS 0  Metric: 1 
  E type    : 2
  Forwarding Address : 0.0.0.0 
  Tag       : 1 
  Priority  : Low

六、Forwarding address:转发地址=
作用:可以防止次优路径;

生成条件:
  (1)连接外部路由的接口必须是MA网络类型;
  (2)连接外部路由的接口不能被静默的;
  (3)连接外部路由的接口需要宣告进OSPF中;

不满足生成条件时FA则用0.0.0.0填充;

 1、tag:标签,可用于路由控制;
 2、OSPF计算开销的:cost=参考带宽(100M)/实际带宽,得出来的值小于1,以1计算;

七、LSA更新方式
 (1)有携带拓扑信息:1、2类LSA更新时,需要把整个新的LSA发送出来进行更新;
 (2)只携带路由信息:3、4、5、7类LSA更新时,直接将无效的LSA的age=3600S以后泛洪,让其他设备对该LSA进行老化;


八、OSPF节省设备资源的操作——4种特殊区域的创建

 (1)stub(末节区域):过滤OSPF的4、5类LSA,需要访问外部路由时,通过ABR设备下发的0.0.0.0缺省路由(3类LSA)实现;
 (2)totally stub(完全末节区域):过滤OSPF的3、4、5类LSA,需要访问其他区域的路由和外部路由时,通过ABR设备下发的0.0.0.0缺省路由(3类LSA)实现;
 (3)NSSA(no so stub area):过滤OSPF的4、5类LSA,NSSA区域的设备引入的外部路由在区域内则变为7类LSA,如果需要访问其他区域的设备引入的外部路由,通过ABR设备下发的0.0.0.0缺省路由(7类LSA)实现;如果其他区域需要访问NSSA区域的设备所引入的外部路由,通过ABR设备(router id大)将NSSA区域引入的7类LSA转换成5类LSA实现;
 (4)totally NSSA:过滤OSPF的3、4、5类LSA,如果需要访问其他区域或者其他区域的设备引入的外部路由,通过ABR设备下发的0.0.0.0缺省路由(7类LSA)实现;

九、路由汇总:
 (1)区域间的路由汇总
  在ABR设备上进行实现,如果汇总以后不通告相当于将路由过滤;
配置:

ospf 1 router-id 2.2.2.2
   area 0.0.0.1
   abr-summary 172.16.0.0 255.255.0.0

 (2)外部路由的汇总
  在ASBR设备上汇总,也可以在7转5的ABR设备上做汇总;
 配置:

ospf 1 router-id 3.3.3.3
  asbr-summary 100.1.1.0 255.255.255.0



↓↓↓看累了么,来听一回儿音乐,这歌很好听↓↓↓

《猪猪侠》片头曲---“每日一遍,智商再见”

发布了59 篇原创文章 · 获赞 16 · 访问量 7200

猜你喜欢

转载自blog.csdn.net/qq_42605300/article/details/104933771
今日推荐