The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This documents describes two new Open Shortest Path First (OSPF) and Intermediate System-to-Intermediate System (IS-IS) behavioral changes in Cisco IOS®:
The Default SPF and Flooding Timers have Changed to Optimized (Fast Convergence) Values.
This global command tells the router to use the link-state protocol fast convergence default values for OSPF and IS-IS. By default, the fast convergence default values are used.
[no] routing-default-optimize
Overview of the OSPF convergence default values:
OSPF command |
Parameters |
Default optimize disabled |
Default optimize enabled |
timers throttle spf |
|||
initial (ms) |
5000 |
50 |
|
min-delay(ms) |
10000 |
200 |
|
max-delay (ms) |
10000 |
5000 |
|
timers throttle lsa all |
|||
Initial (ms) |
0 |
50 |
|
min-delay (ms) |
5000 |
200 |
|
max-delay(ms) |
5000 |
5000 |
|
timers lsa arrival |
ms |
1000 |
100 |
Note: The new default values in Cisco IOS are the same as the default values in IOS-XR.
Note: The new default values in Cisco IOS do not show up in the running or startup configuration.
This message is seen when you configure OSPF with “routing-default-optimize”:
*May 10 12:59:40.942: %OSPF-6-DFT_OPT: Protocol timers for fast convergence are Enabled.
This message is seen when you configure OSPF with “no routing-default-optimize”:
*May 10 12:31:53.876: %OSPF-6-DFT_OPT: Protocol timers for fast convergence are Disabled.
This message is seen when you configure OSPFv3 with “routing-default-optimize”:
*May 10 12:55:41.784: %OSPFv3-6-DFT_OPT: Protocol timers for fast convergence are Enabled.
This message is seen when you configure OSPFv3 with “no routing-default-optimize”:
*May 10 12:57:57.880: %OSPFv3-6-DFT_OPT: Protocol timers for fast convergence are Disabled.
This message explains the Routing-default-optimize state.
There are show commands.
This shows the OSPF default with older Cisco IOS or newer Cisco IOS with “no routing-default-optimize” globally configured.
R1#show ip ospf
Routing Process "ospf 1" with ID 10.100.1.1
Start time: 01:30:35.876, Time elapsed: 00:03:51.842
Supports only single TOS(TOS0) routes
Supports opaque LSA
Supports Link-local Signaling (LLS)
Supports area transit capability
Supports NSSA (compatible with RFC 3101)
Supports Database Exchange Summary List Optimization (RFC 5243)
Event-log enabled, Maximum number of events: 1000, Mode: cyclic
Router is not originating router-LSAs with maximum metric
Initial SPF schedule delay 5000 msecs
Minimum hold time between two consecutive SPFs 10000 msecs
Maximum wait time between two consecutive SPFs 10000 msecs
Incremental-SPF disabled
Initial LSA throttle delay 0 msecs
Minimum hold time for LSA throttle 5000 msecs
Maximum wait time for LSA throttle 5000 msecs
Minimum LSA arrival 1000 msecs
LSA group pacing timer 240 secs
Interface flood pacing timer 33 msecs
Retransmission pacing timer 66 msecs
EXCHANGE/LOADING adjacency limit: initial 300, process maximum 300
Number of external LSA 0. Checksum Sum 0x000000
Number of opaque AS LSA 0. Checksum Sum 0x000000
Number of DCbitless external and opaque AS LSA 0
Number of DoNotAge external and opaque AS LSA 0
Number of areas in this router is 0. 0 normal 0 stub 0 nssa
Number of areas transit capable is 0
External flood list length 0
IETF NSF helper support enabled
Cisco NSF helper support enabled
Reference bandwidth unit is 100 mbps
New default values:
R1#show ip ospf
Routing Process "ospf 1" with ID 10.100.1.1
Start time: 01:30:35.876, Time elapsed: 00:18:53.235
Supports only single TOS(TOS0) routes
Supports opaque LSA
Supports Link-local Signaling (LLS)
Supports area transit capability
Supports NSSA (compatible with RFC 3101)
Supports Database Exchange Summary List Optimization (RFC 5243)
Event-log enabled, Maximum number of events: 1000, Mode: cyclic
Router is not originating router-LSAs with maximum metric
Initial SPF schedule delay 50 msecs
Minimum hold time between two consecutive SPFs 200 msecs
Maximum wait time between two consecutive SPFs 5000 msecs
Incremental-SPF disabled
Initial LSA throttle delay 50 msecs
Minimum hold time for LSA throttle 200 msecs
Maximum wait time for LSA throttle 5000 msecs
Minimum LSA arrival 100 msecs
LSA group pacing timer 240 secs
Interface flood pacing timer 33 msecs
Retransmission pacing timer 66 msecs
EXCHANGE/LOADING adjacency limit: initial 300, process maximum 300
Number of external LSA 0. Checksum Sum 0x000000
Number of opaque AS LSA 0. Checksum Sum 0x000000
Number of DCbitless external and opaque AS LSA 0
Number of DoNotAge external and opaque AS LSA 0
Number of areas in this router is 0. 0 normal 0 stub 0 nssa
Number of areas transit capable is 0
External flood list length 0
IETF NSF helper support enabled
Cisco NSF helper support enabled
Reference bandwidth unit is 100 mbps
For OSPFv3, the command show ospfv3 is used to display the same output.
To verify the default in the configuration, you can use show run all | in throttle|arrival:
R1#show run all | in throttle|arrival
timers throttle spf 50 200 5000
timers throttle lsa 50 200 5000
timers lsa arrival 100
Debug ospf events shows this debug messages:
“Route Optimize Default Configured Callback”
"LSA Throttle values modified to"
“LSA Arrival timer modified to”
“SPF Throttle values modified to"
For example:
R1#debug ip ospf events
OSPF events debugging is on
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#no routing-default-optimize
R1(config)#
*May 10 13:05:47.962: OSPF EVENT: No Route Optimize Default Configured Callback: 0
*May 10 13:05:47.963: OSPF-1 EVENT: LSA Throttle values modified to 0 5000 5000
*May 10 13:05:47.963: OSPF-1 EVENT: LSA Arrival timer modified to 1000
*May 10 13:05:47.963: OSPF-1 EVENT: SPF Throttle values modified to 5000 10000 10000
Overview of the IS-IS convergence default values:
IS-IS command |
Parameters |
Default optimize disabled |
Default optimize enabled |
spf-interval |
|||
initial (ms) |
5500 |
50 |
|
min-delay(ms) |
5500 |
200 |
|
max-delay (ms) |
10000 |
5000 |
|
PRC-interval |
|||
Initial (ms) |
2000 |
50 |
|
min-delay (ms) |
5000 |
200 |
|
max-delay(ms) |
5000 |
5000 |
|
LSP-gen-interval |
|||
Initial (ms) |
50 |
50 |
|
min-delay (ms) |
5000 |
200 |
|
max-delay(ms) |
5000 |
5000 |
Note: The new default values in Cisco IOS are the same as the default values in IOS-XR.
Note: The new default values in Cisco IOS do not show up in the running or startup configuration.
This message is seen when you configure IS-IS with “routing-default-optimize”:
*May 10 13:12:39.170: %CLNS-6-DFT_OPT: Protocol timers for fast convergence are Enabled.
This message is seen when you configure IS-IS with “no routing-default-optimize”:
*May 10 13:16:31.516: %CLNS-6-DFT_OPT: Protocol timers for fast convergence are Disabled.
This message explains the Routing-default-optimize state.
To verify the default in the configuration, you can use show run all | include spf-interval|prc-interval|lsp-gen-interval:
R1#show run all | include spf-interval|prc-interval|lsp-gen-interval
spf-interval 5 50 200
prc-interval 5 50 200
lsp-gen-interval 5 50 200
When you deploy routers with newer Cisco IOS software that have the new default values, it is recommended to ensure that all routers have the same default values for the timers. This reduces the risk for possible routing loops.
If you have routers that run the old default values and you upgrade the routers to the newer Cisco IOS software, it is likely that you have a migration time where some routers run an older Cisco IOS software with the old default values and some routers that run newer IOS software with the new default values. This is not recommended. In order to ensure the migration runs smoothly, you can either:
Cisco recommends solution 1. where possible. The opportunity is to configure and use the new default timer values, and it provides fast convergence. In this case, ensure that the network has been designed and verified to work with the new fast convergence values.
Cisco recommends to keep the time as small as possible when routers have different timer values at the time of the migration phase. One way to ensure proper migration, is to keep the router isolated when you upgrade. This can be achieved by keeping its interfaces down, setting the Interior Gateway Protocol (IGP) cost to a very high metric on its interfaces (thus, it prevents the router that forwards traffic through it), or ensuure that the router is not a transit router forwarding traffic for a while after startup. The latter is configured with the OSPF command max-metric router-lsa [on-startup <5-86400>] or with the IS-IS command set-overload-bit [on-startup<5-86400>].
If you already have the timer values set to the new default values on Cisco IOS routers running older Cisco IOS software, then there is no need to change the timers.
If you have the timer values explictly set to any other value than the old default timer values, then there is not need to change anything in the configuration, because the explicit configuration is kept when you upgrade.
Note: Any possible routing loop that occurs because of a difference in the timer values, is a short-lived loop. The loop should not occur for a longer time than the largest max-delay value.
Note: When a router running a newer IOS release with the new default values (no timer values are explicitely configured) is downgraded to an IOS release with the old default timer values, then the IGP will use the old default values.
Incremental SPF is a feature which was developed circa 2000 as a means to optimize performance of the IGP, that reduces the execution time of an SPF by only recalculating a sub-tree of the full Shortest Path Tree when topology changes were limited to a portion of the network. Implementation of this feature has been superceded with ever increasing CPU power on routers, which meant that when you use iSPF, it became less and less necessary, because of providing almost no benefit, while adding complexity. For this reason, it is generally recommended to not enable this feature, because with higher CPU power the use of regular SPF is more straightforward. This is also why Cisco chose to deprecate the iSPF feature. The CLI that exists is still accepted but does not enable the feature and the command will not be NVGEN'ed. A warning message is printed that indicates that the feature is no longer supported.
When iSPF is configured for OSPF, the command is still present and produces a warning message: “The incremental SPF feature is no longer supported“.
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#router ospf 1
R1(config-router)#ispf
The incremental SPF feature is no longer supported.
The feature iSPF is not enabled:
R1#show ip ospf 1 | include Incremental
Incremental-SPF disabled
When you configure iSPF, debug ip ospf events shows this:
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#router ospf 1
R1(config-router)#ispf
*May 10 13:34:35.075: OSPF-1 EVENT: Config: ispf
For IS-IS:
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#router isis 1
R1(config-router)#ispf level-1
The incremental SPF feature is no longer supported.
R1#show isis protocol | in Incremental
R1#
In older IOS:
R1#show isis protocol | in Incremental
Incremental SPF enabled for: level-1
Incremental SPF startup delay: 120
or
R1#show clns protocol | in Incremental
Incremental SPF enabled for: level-2
Incremental SPF startup delay: 120
The command to enable iSPF is now hidden.
The iSPF command is not NVGEN'ed.
Change | Integrated IOS Releases |
Removal of iSPF in IS-IS | 16.5.1 |
Removal of iSPF in OSPF | 16.5.1 |
New SPF and flooding default timers | 16.5.1 |