OSPF高级特性之Overflow

发布于:2025-07-20 ⋅ 阅读:(21) ⋅ 点赞:(0)

一、概述

        我们都知道OSPF在同一个区域内的所有路由器都会同步LSDB,但随着网络上的路由数量或LSA不断增加,一些路由器由于系统资源有限,不能再承载更多的路由信息,这种状态就被称为数据库超限(OSPF Database Overflow)。

        对于路由信息不断增加导致路由器系统资源耗尽而失效的问题,可以通过配置Stub或NSSA等特殊区域来解决,但Stub或NSSA区域的方案不能解决动态路由增长导致的数据库超限问题。为了解决数据库超限引发的问题,通过设置LSDB中External LSA的最大条目数,可以动态限制数据库的规模。

二、工作原理

         OSPF网络中所有路由器都配置相同的上限值,至于为什么要都配置成一致的这里后面再说,只要路由器上外部路由的数量达到该上限,路由器就进入Overflow状态,并同事启动Overflow状态定时器(默认超时时间为5秒),路由器在定时器超过5秒后自动退出Overflow状态。

        那为什么我们的路由器尽量都要设置成相同的上限值呢?

        如上图所示,假如AR1的上限为1000,AR2为500,当AR1从其他区域引入了1000条路由时,往本区域进行转发,AR2收到了500条就不会进行接收了,AR2就不会从后面的LSU进行LSAck回复,那么AR1就会一直重传。

三、实验

拓扑

1、基础配置

AR1
system
sysname AR1
int g 0/0/0
ip add 10.0.12.1 24

AR2
system
sysname AR2
int g 0/0/0
ip add 10.0.12.2 24
int g 0/0/1
ip add 10.0.23.2 24

AR3
system
sysname AR3
int g 0/0/0
ip add 10.0.23.3 24

2、路由配置

AR1
ospf 1 router-id 1.1.1.1
area 0
netw 10.0.12.1 0.0.0.0

AR2
ospf 1 router-id 2.2.2.2
area 0
netw 10.0.12.2 0.0.0.0
netw 10.0.23.2 0.0.0.0

AR3
ospf 1 router-id 3.3.3.3
area 0
netw 10.0.23.3 0.0.0.0

查看OSPF邻居状态

[AR2]display ospf peer brief 

	 OSPF Process 1 with Router ID 2.2.2.2
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             1.1.1.1          Full        
 0.0.0.0          GigabitEthernet0/0/1             3.3.3.3          Full        
 ----------------------------------------------------------------------------

3、数据库超限配置 

AR2
ospf 1
lsdb-overflow-limit 4

AR1
ip route-static 1.1.1.1 32 NULL 0
ip route-static 1.1.1.2 32 NULL 0
ip route-static 1.1.1.3 32 NULL 0
ip route-static 1.1.1.4 32 NULL 0
ospf 1
import-route static

查看LSDB

[AR2]display ospf lsdb 

	 OSPF Process 1 with Router ID 2.2.2.2
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            107  48    80000008       1
 Router    1.1.1.1         1.1.1.1             10  36    80000005       1
 Router    3.3.3.3         3.3.3.3            104  36    80000004       1
 Network   10.0.23.3       3.3.3.3            104  32    80000002       0
 Network   10.0.12.2       2.2.2.2            107  32    80000002       0
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  1.1.1.4         1.1.1.1             10  36    80000001       1
 External  1.1.1.1         1.1.1.1             10  36    80000001       1
 External  1.1.1.3         1.1.1.1             10  36    80000001       1
 External  1.1.1.2         1.1.1.1             10  36    80000001       1

 可以看到此时还没有超限,因为我们设置的上限为4,所以AR2还会学习从AR1发来的LSA。

AR1
ospf 1
default-route-advertise always 
[AR2]display ospf lsdb

	 OSPF Process 1 with Router ID 2.2.2.2
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            216  48    80000008       1
 Router    1.1.1.1         1.1.1.1            119  36    80000005       1
 Router    3.3.3.3         3.3.3.3            213  36    80000004       1
 Network   10.0.23.3       3.3.3.3            213  32    80000002       0
 Network   10.0.12.2       2.2.2.2            216  32    80000002       0
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  0.0.0.0         1.1.1.1              9  36    80000001       1
 External  1.1.1.4         1.1.1.1            119  36    80000001       1
 External  1.1.1.1         1.1.1.1            119  36    80000001       1
 External  1.1.1.3         1.1.1.1            119  36    80000001       1
 External  1.1.1.2         1.1.1.1            119  36    80000001       1

Overflow上限中并不影响缺省路由,所以就算到达上限了一样可以学习缺省路由

AR1
ip route-static 1.1.1.5 32 NULL 0

此时我们在加一条静态路由去AR2上查看OSPF LSDB表项是否有变化

[AR2]display ospf lsdb

	 OSPF Process 1 with Router ID 2.2.2.2
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            286  48    80000008       1
 Router    1.1.1.1         1.1.1.1            189  36    80000005       1
 Router    3.3.3.3         3.3.3.3            283  36    80000004       1
 Network   10.0.23.3       3.3.3.3            283  32    80000002       0
 Network   10.0.12.2       2.2.2.2            286  32    80000002       0
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  0.0.0.0         1.1.1.1             79  36    80000001       1
 External  1.1.1.4         1.1.1.1            189  36    80000001       1
 External  1.1.1.1         1.1.1.1            189  36    80000001       1
 External  1.1.1.3         1.1.1.1            189  36    80000001       1
 External  1.1.1.2         1.1.1.1            189  36    80000001       1

可以看到AR2的LSDB没有变化,并没有继续学习来自AR1的LSA了。

[AR1]display ospf lsdb 

	 OSPF Process 1 with Router ID 1.1.1.1
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            284  48    80000008       1
 Router    1.1.1.1         1.1.1.1            185  36    80000005       1
 Router    3.3.3.3         3.3.3.3            282  36    80000004       1
 Network   10.0.23.3       3.3.3.3            282  32    80000002       0
 Network   10.0.12.2       2.2.2.2            284  32    80000002       0
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  0.0.0.0         1.1.1.1             76  36    80000001       1
 External  1.1.1.5         1.1.1.1              5  36    80000001       1
 External  1.1.1.4         1.1.1.1            185  36    80000001       1
 External  1.1.1.1         1.1.1.1            185  36    80000001       1
 External  1.1.1.3         1.1.1.1            185  36    80000001       1
 External  1.1.1.2         1.1.1.1            185  36    80000001       1

但我们查看AR1的LSDB时可以看到我们刚刚引入的那条静态。

并且由于AR2收到该LSU后因为上限的原因AR2并不会发送LSAck给AR1,所以AR1就会一直重传。

我们去AR3上看看AR3的OSPF LSDB有没有受到影响

[AR3]display ospf lsdb 

	 OSPF Process 1 with Router ID 3.3.3.3
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            472  48    80000008       1
 Router    1.1.1.1         1.1.1.1            374  36    80000005       1
 Router    3.3.3.3         3.3.3.3            467  36    80000004       1
 Network   10.0.23.3       3.3.3.3            467  32    80000002       0
 Network   10.0.12.2       2.2.2.2            472  32    80000002       0
 

		 AS External Database
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  0.0.0.0         1.1.1.1            265  36    80000001       1
 External  1.1.1.4         1.1.1.1            374  36    80000001       1
 External  1.1.1.1         1.1.1.1            374  36    80000001       1
 External  1.1.1.3         1.1.1.1            374  36    80000001       1
 External  1.1.1.2         1.1.1.1            374  36    80000001       1

可以看到AR3也没有学习到1.1.1.5的LSA,说明我们配置了AR2的数据库上限后也会影响后面的路由器。

以上就是本章的全部内容了,感谢大家的浏览观看!文章若有错误或疑问可联系博主删除更改,非常欢迎私聊博主讨论。


网站公告

今日签到

点亮在社区的每一天
去签到