OSPFV3的新LSA

2018年7月15日23:38:55 发表评论 1,467 views

OSPFV3的新LSA

ospf v3是为ipv6开发的.其中添加了2中新lsa: 
Link-LSA(类型8), 和 Intra-Area-Prefix-LSA(类型9)

Link-LSA作用有三:

  1. 在链路上通告本地链路地址给其它邻居
  2. 通告本地链路上的邻居关于与自己本地链路相关联的ipv6的前缀列表
  3. 通告链路状态的选项集合
(其实这个链路范围是以路由器为边界的,但是可能一个链路上有多个路由器,因此可能会存在多个前缀一个链路的情况,这个时候就是特点2的体现了,用于区分不同的链路,IPV6里一个链路就是一个小网段,比站点小,站点比组织小,组织比国家小。) 

Link-LSA只在本地链路上传播,不会被邻居再传递下去.
; RT3's Link-LSA for N3

LS age = 0 ;newly (re)originated

LS type = 0x0008 ;Link-LSA

Link State ID = 1 ;RT3's Interface ID on N3

Advertising Router = 192.1.1.3 ;RT3's Router ID

Rtr Pri = 1 ;RT3's N3 Router Priority

Options = (V6-bit|E-bit|R-bit) ;
对应作用3

Link-local Interface Address = fe80:0001::RT3 ;
对应作用1

# prefixes = 1

PrefixLength = 56

PrefixOptions = 0

Address Prefix = 5f00:0000:c001:0100 ;pad to 64-bits ;
对应作用2

只在本地链路上传递信息是不够的,还需要在area范围内传播,于是有了 Intra-Area-Prefix-LSA

Intra-Area-Prefix-LSA 是在area范围内通告路由前缀.要通告的链路状态信息是参考lsa 类型1,2而来的.

具体看个例子:

! Intra-area-prefix-LSA
for network link N3

LS age = 0 ;newly (re)originated

LS type = 0x2009 ;Intra-area-prefix-LSA

Link State ID = 5 ;or something

Advertising Router = 192.1.1.4 ;
RT4's Router ID,r4是网络n3上的DR

# prefixes = 1 ;
通告前缀条目数量

Referenced LS type = 0x2002 ;network-LSA reference ;
这里参考了类型2 lsa,DR产生的.
Referenced Link State ID = 1 ;
参考了接口编号为1的链路状态信息

Referenced Advertising Router = 192.1.1.4 ;
参考通告前缀的Router id
PrefixLength = 56 ;N3's prefix

PrefixOptions = 0

Metric = 0

Address Prefix = 5f00:0000:c001:0100 ;pad ;
欲通告的前缀,因为长度为56,剩下的bit用0填充

; RT3's Intra-area-prefix-LSA
for its own prefixes

LS age = 0 ;newly (re)originated

LS type = 0x2009 ;Intra-area-prefix-LSA

Link State ID = 177 ;or something

Advertising Router = 192.1.1.3 ;RT3's Router ID

# prefixes = 1

Referenced LS type = 0x2001 ;router-LSA reference ;
这里参考了类型1的lsa,区域内路由器产生的.
Referenced Link State ID = 0

Referenced Advertising Router = 192.1.1.3

PrefixLength = 56 ;
N4's prefix

OSPF V3与V2的异同

OSPF V3与V2的异同


OSPF V3同V2一样,使用协议号89.V3同V2互不兼容,V3只能运行在IPV6网络中.从实质上看,V3和V2的关系很象IS-IS同集成IS-IS的关系(将IP看成是挂在CLNS树上的叶子).V3的核心仍然使用和V2相同的机制,如果把SPF算法的结果看成一棵树,那么V2是在树干上挂不同IPV4的网络(树叶),V3则是在同样的树上挂满IPV6的网络.V3和V2都使用SPF算法;同样通过洪泛LSA交换用于计算的元素;都用AREA将AS分成两层的结构;使用相同的记时器;在多路的环境下都选举DR,BDR等等.V3针对V2在设计上的缺陷做了两大改进:一是在多路访问型的链路上优化了DR的选举范围,如果链路上有过多的路由器,都同DR形成邻接,则DR的负担会很重,V2要解决这个问题的手段是将路由器分成不同的群,群内的验证使用相同的密码,群间设置成不同的密码,这样每个群都会选出自己的DR,BDR,但配置起来繁琐且易错.V3采用独有的实例ID字段,在群内各接口设置相同的实例ID,群间相异,配置起来简单.二是通过设计两种新的LSA(8和9),减少了不必要的SPF计算.SPF算法的特点是每一次启用都会增加路由器资源占用并造成网络的短时中断,所有的树干都必须重计算一次,算完了才能挂叶子.V2和V3在收到LSA1和2时都会启动SPF算法,在V2的LSA1和2中不仅包含了该链路的拓扑类型状态还附带了链路上IPV4地址信息,拓扑改变或地址改变都会触动路由器产生新的LSA,但真正需要SPF的是拓扑变化信息,地址的改变不应该去触动SPF(地址只是叶子),V3的LSA1和2中不携带链路上的IPV6地址信息,改变链路上端口的地址不会触动SPF,这也就减少了计算次数,增加了网络的稳定.

V3相比V2有以下不同之处:

1)基于链路的协议处理.V2使用基于子网的处理方式,一条链路上可以有多个子网(通过定义端口第二IP)但只有主子网作为链路的代表参与树干计算,其他子网被看成一段STUB链路.而IPV6网络的端口往往就同时拥有多个地址(链路本地,站点本地,全球汇聚)难于区分主从,故将众地址都看成叶子,只有链路本身是树干.

2)优化的地址前缀携带,及V3 LSA1和2中不携带地址前缀信息;

3)V3只使用RID标识各邻居(RID的格式同IPV4地址相同),V2在广播和NBMA环境下使用对端接口IP标识邻居;

4)V3增加了一种洪泛范围---链路本地.而V2只有两种范围---AREA内和AS内.

5)V3的所有包(Hello,DBD,LSU,LSR,LSACK)的IPV6头中地址都是链路本地地址(FE80::EUI64),V2使用的是端口IP地址;

6)V3在同一链路上使用不同实例ID区分路由器端口群;

7)V3中不包含验证机制,使用IPV6的AH和ESP扩展头来实现验证;

8)V3添加了两种LSA类型.V3常用的LSA有八种类型:路由器LSA(LSA1),网络LSA(LSA2),区间前缀LSA(LSA3),区间路由器LSA(LSA4),AS外部LSA(LSA5),NSSA外部LSA(LSA7),链路LSA(LSA8),区内前缀LSA(LSA9),以上LSA除LSA8和9外,功能和洪泛的范围都同V2相同,不同的只是LSA数据结构上做了少量调整和优化(如前所述LSA1和2的数据结构区别最大,也导致了两种新LSA的产生).LSA8主要携带生成者在该端口上的众IPV6地址信息,洪泛范围是链路本地,及收到直连邻居发出的LSA8将不通告给任何人.LSA9携带的是本路由器(或DR的手下)各直连链路上的网络前缀和各前缀所属链路的对应(前缀在哪条链路上)信息,它的洪泛范围是本AREA内.V3也使用组播方式洪泛LSA,非DR用FF02::5,DR用FF02::6.在路由器上启动OSPF V3只用一条接口命令就够了,IPV6 OSPF 1 area 0(跟RIPNG何其相似),其他的命令同V2通用,只是在命令中出现”IP”字样的时候换成”IPV6”即可,配置的思想也完全相同(除配置实例ID外)

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: