LSA的英文全称是Link State Advertisement.即链路状态通告。 OSPF就是通过同步LSA,然后SPF算法计算路由拓扑的协议。
LSA存放在路由器的LSDB(链路状态数据库)中。同一个AS内的所有配置了OSPF的路由器的LSDB中存放的LSA是完全一样的。
LSA共有6类。 1,2类LSA 用于区域内通信,3类LSA用于区域间通信。4,5,7类还是应用于区域外通信.
在OSPF中,每个区域内会使用SPF算法生成自己路由拓扑。而区域间则是通过Area 0直接转发路由信息。
LSA Header
OSPF LSA共有6类,共享同样的LSA header. LSA Heahder一共20 bytes。结构如图所示:

- LS age:从LSA产生开始计算的时间。无论是在保存中,还是传输中。该时间都会在增长。原因是AS内的LSDB中保存的LSA都是一样的。单位是秒。LSA什么时候产生请关注下面问题回答。
- Options: E-允许泛洪Type 5 LSA, N/P-处理Type 7 LSA, DC-处理按需链路。
- LS type: 描述该LSA的类型
- Link State ID: 用于标识LSA的唯一性. 并不是随机产生的,在不同类型的LSA中,值不一样, 会在下面的LSA中一 一注明
- Advertisting Router: 产生LSA的Router 的 Router ID
- LS sequence number:LSA的序列号。用于判断哪一个LSA是最新的。
- LS checksum: 除了LS age外其它各域的校验和
- length:包括LSA heder在内的总长度。以字节为单位。
Type1 - Router LSA
Type 1 LSA又叫做 Router LSA.每个设备都会产生。描述设备的链路状态和 metric, 只在所属area内传播。

- Router LSA中 Link State ID的值是根据Type(链路类型)决定的
- V, E, B: 各占1 bit。V为1是,表示该设备连接的是虚连接的端点,即接口连接的OSPF非0 area;而E-external, B-border则分别表示产生该LSA的设备是ASBR和ABR
- #links: LSA中所描述的链路信息的数量。每一个link都有详细的描述
- Link ID: 设备所接入的的目标。可能是邻居的Router ID,连接DR的Router ID,网段/子网号,虚连接中对端的Router ID
- Link Data:连接数据。
- Type: 设备连接的基本描述。1-P2P另一台设备,2-连接到传输网络,3-连接到stub网络,4-虚拟链路
- #ToS: 服务类型(Typs of Service)的数量.
- metric:链路的开销值
- ToS: Type of Service
- ToS Metric:指定ToS的metric
Type2 - Network LSA
由广播网络或者NBMA网络中的DR的产生。Network LSA记录了这一网络上所有的设备的Router ID,描述本网段的链路状态。在所属的area内传播。

- 在Network LSA中, Link State ID为DR的接口的IP地址。注意不是Router ID
- Network Mask, 该广播网或者NBMA网络地址的掩码
- Attached Router,连接在同一个网络上所有设备的Router ID,包括DR。
Type3,4 - Network Summary LSA + ASBR Summary LSA
Network Summary LSA和ASBR Summary LSA的报文格式是相同的。Network Summary LSA描述区域内某个网段的路由,用来协调区域间的路由。
ASBR Summary LSA,描述到ASBR的路由,通告给除ASBR所在区域的其它相关区域,包括非OSPF区域。
注意:Network Summary LSA和ASBR Summary LSA都是由ABR产生的。
报文格式如下:

当然这些参数,在Network summary LSA中和在ASBR summary LSA的含义是不完全相同的。
- Link State ID: 在Network Summary中,代表通告的网络地址。在ASBR summary则代表ASBR的Route id
- Network Mask:在Network Summary中,代表广播网或者NBMA网络地址。在ASBR summary则没有意义,值为0.0.0.0
- metric: 到目的地址的路由开销
- ToS: 与其它LSA一样,代表Type of Service
- ToS:和指定ToS相关联的度量
Type 5 - AS External LSA
AS External LSA是ASBR产生的,描述到AS外部的路由。5种LSA中,唯有这一种通告给所有区域。
报文格式如下:

- Link State Id: 通告的网络地址
- Network Mask: 通告的网络地址的掩码
- E:外部度量值类型。0-第一类外部路由,1-第二类外部路由
- Forwarding Address: 到所通告的目的地址的报文将被转发到这个地址
- External Route Tag: OSPF本身不使用这个字段。它表示添加到外部路由的标记,可以用来对外部路由进行管理
Type 7 - NSSA External LSA
问题
1.LSA什么时候开始产生
不同类型的LSA的产生时间是不固定的。
- 当路由器配置完成OSPF或者重启OSPF完成,会生成Type 1 LSA。
- 链路状态变换,即接口启用、关闭,Cost变换。也会 Type 1 LSA生成。如果该变化发生在多路访问网络中,DR会生成Type 2 LSA。
- 新网络加入,或者说新接口、新路由器加入OSPF。DR会生成Type 2 LSA。
- 当ABR发现area间路由变化,会生成Type 3 LSA.
- 当ASBR发生变化,ABR会生成Type 4 LSA
- 当ASBR将外部路由引入OSPF域时,会生成Type 5 LSA。 在NSSA区域中,ASBR会生成Type 7 LSA。 ABR可将其装换为Type 5 LSA.
- 网络拓扑变换。相关路由器会生成新的LSA以反映变化
2.ABR 和 ASBR
ABR是Area Border Router的英文缩写。中文成为区域边界路由器。用于连接多个OSPF area,并在Area间传递路由信息。
ABR的接口连接不同的area,通常其中有一个是Area 0.如果没有的话,则需要配置虚链路
ASBR是Autonomous System Boundary Router。中文是自治系统边界路由器。连接OSPF和其他外部路由域, 如RIP, BGP等。
3. 什么是Virtual Link (虚链路)
在OSPF中, Area 0是骨干区域, 任何的非0 area之间不能直接传播LSA,必须要通过 area 0来同步LSDB。所以任何非0区域都要用直接或者通过虚链路这种间接的方式连接的Area 0
Virtual Link连接的非0 area和 area 0区域之间必须且只能有一个OSPF 非 0 transit area.
关于虚链路要说明以下几点:
- 虚链路需要手动配置,而非自动生成
- 虚链路的端点是一台设备,而非一个接口。以Router ID标识
- 虚链路只在ABR上配置。因为只有ABR需要该非0 area的信息传播到Area 0
- 虚链路的两个端点之间只能有一个transit area
在下面的拓扑上。AR6 和AR7就是两台ABR。需要在这两台路由器上配置虚链路。

4. ToS: Type of Service.
这个字段在 IPv4 header中也有定义。不过在OSPF中, ToS的作用如下:
- 多路径路由: OSPF可以通过不同ToS值计算出不同的路径,从而实现多路径路由
- Qos: Quality of Service. 可以为不同类型的流量提供不同的服务质量
在OSPF中,ToS字段的值通常是一个8位的字段,最常用的值包括:
0:表示默认服务,通常用于普通的路由选择。
1:表示优先服务,可能用于延迟敏感的应用。
2:表示高吞吐量服务,适合需要高带宽的应用。
3:表示低延迟服务,适合实时应用。
4:表示高可靠性服务,适合需要高可靠性的应用。
5:表示网络控制服务,通常用于网络管理和控制流量。
6:表示可用性服务,适合需要高可用性的应用。
7:表示网络保留服务,通常用于保留特定的网络资源。
为什么没有Type 6 LSA
Type 6 LSA原本计划用于组播OSPF(MOSPF),但由于MOSPF未广泛采用,Type 6 LSA也就未被实际使用。因此,Type 6 LSA在OSPF协议中没有实际应用。



2182

被折叠的 条评论
为什么被折叠?



