OSPF优化
OSPF的优化主要目的是为了减少LSA的更新量。
- 路由汇总-----可以减少骨干区域的LSA数量
- 特殊区域-----可以减少非骨干区域的LSA数量
OSPF路由汇总
域间路由汇总-----在ABR设备上进行操作
[GS-R2-ospf-1-area-0.0.0.1]abr-summary 192.168.0.0 255.255.224.0
[GS-R3-ospf-1-area-0.0.0.2]abr-summary 192.168.32.0 255.255.224.0
域间路由汇总实质上是通过ABR设备上对区域之间传递的三类LSA进行汇总,并且其影响的是除了明细路由所在区域的其他区域的路由表信息。
注意:域间路由汇总只能汇总ABR设备自身通过1类、2类LSA信息学习到的路由信息。
当执行了路由汇总操作后,站点内这条汇总路由所涵盖的所有明细路由当中,只要有一条明细路由有效,则该汇总路由有效。当所有明细路由均失效后,这条汇总路由才会失效。
域外路由汇总
域外路由汇总实质上是在ASBR上,通过重发布时,将导入进来的五类/七类LSA进行修改。
[r1-ospf-1]asbr-summary 10.1.0.0 255.255.0.0
五类LSA汇总后的开销值计算方法:
- Type-1
- 汇总后的五类LSA中的开销值等于所有明细路由开销值中最大值
- Type-2
- 汇总后的五类LSA中的开销值等于所有明细路由开销值最大值+1
OSPF特殊区域
- 成为第一类特殊区域的条件------末梢区域
- 不能是骨干区域
- 不能存在Vlink
- 不能存在ASBR
- 成为第二类特殊区域的条件
- 不能是骨干区域
- 不能存在Vlink
- 必须存在ASBR
第一类特殊区域
末梢区域----Stub Area
当一个区域称为末梢区域后,则该区域不能再学习4类和5类LSA----->ABR设备不会在给该区域转发四类和五类LSA。该区域将会拒绝学习域外路由信息,但是其依旧具有访问域外路由的需求,所以,当称为stub区域后,该区域会自动产生一条指向骨干区域的3类缺省路由。---->由ABR设备进行下发路由信息。
[r5-ospf-1-area-0.0.0.2]stub
[r1-ospf-1-area-0.0.0.2]stub
特殊区域的配置,是该区域中所有设备都需要做的。—不然会影响邻居关系的建立
完全末梢区域----Totally Stub Area
在Stub区域的基础上,进一步拒绝三类LSA传播。
[r1-ospf-1-area-0.0.0.2]stub no-summary ---仅在ABR设备上配置,是末梢区域配置完再加的配置
第二类特殊区域
非完全末梢区域----NSSA
该区域拒绝学习四类和五类LSA信息。但是,该区域还需要将后面的域外路由信息导入,因此,使用七类LSA的形式将域外路由信息传入OSPF网络。7类LSA在离开NSSA区域后,需要转换为5类LSA在OSPF网络中传播。
该区域也会自主产生一条指向骨干区域的缺省LSA信息,该LSA信息为7类。
[r5-ospf-1-area-0.0.0.2]nssa
[r1-ospf-1-area-0.0.0.2]nssa
NSSA该类型即为七类LSA类型,七类LSA的报文格式与五类LSA一致。
路由表中七类缺省Proto为O_NSSA(表示域外七类产生),Pre为150.
Options字段在五类LSA中,显示的是E位,代表允许该五类LSA在网络中传播。
在七类LSA中,N位代表允许处理七类LSA。P代表支持7转5操作(P不属于Options字段的8个标记位,是N位附带出来的)。
FA地址是用来应对选路不佳的情况,如果存在选路不佳的情况,则通告者会将最佳下一跳放入FA字段,接收者看到转发地址中存在数据,则将不按照算法来计算下一跳,而直接使用FA作为下一跳。
- 在五类LSA中,FA字段一般为0.0.0.0。
- 而在七类LSA中,在不存在选路不佳的情况下,一般使用通告者ASBR设备的环回地址作为转发地址。
- 如果存在多个环回地址,则使用最先宣告的地址作为FA地址(华为最先,思科最后)。
- 如果没有环回地址,则使用物理接口地址作为FA地址。
完全的非完全末梢区域—Totally NSSA
该区域在NSSA区域的基础上,进一步拒绝了3类LSA的产生,并且自动产生一条3类缺省LSA。
[r1-ospf-1-area-0.0.0.2]nssa no-summary ---仅在ABR上配置
域内>域间>域外
在Totally NSSA区域中,会看到两条描述缺省路由的LSA,一条七类,一条三类。这两条LSA共存。
NSSA环路
在华三中,RTC作为ASBR有一条缺省路由指向外部ISP,所以会给内部大的网络下发一条缺省(OSPF缺省路由的下发就类似于重发布逻辑),又因为RTB处于完全的NSSA区域,所以RTC向RTB传输一条七类LSA的缺省路由信息,RTB又要传给RTA,因为处于完全的NSSA区域,所以RTA作为ABR就还有一条三类缺省LSA指向区域0,然后将3类缺省往右下发,RTB就有两条缺省,一条是三类缺省指向RTA,一条是七类缺省指向RTC,他会使用三类缺省,所以他会认为去往ISP是去RTA,而RTA身上也有两条缺省,一条七类一条三类,因为三类缺省是由RTA本身明细产生的,所以RTA本身不会使用缺省,使用明细(在ABR视角里就没有三类缺省),所以RTA会使用七类缺省,所以会缺省指向RTB,环路出现。
在华为中,在NSSA区域中,对于第一台发布七类缺省路由的设备(RTC)而言,会认为自己身上已经存在一条去往外部区域的路由信息,并且本地作为通告者,那么当它收到其他设备发送来的七类缺省LSA时,对该LSA仅接收不使用。-----华为通告该逻辑,实现防环机制。---->保留了NSSA区域由ABR产生的七类LSA缺省路由。