As the only routing protocol of the backbone network, ISIS has a high convergence speed. The common IGP route convergence method is to use HELLO packets to detect link failure and periodically transmit LSA (spread to neighbors when the entire LSA is received ). Therefore, when the network scale is expanded, LSDB increases, and the SPF computing time will be quite long. To improve the calculation method, we have designed the following improvement schemes.
I-SPF (Incremental SPF)
I-SPF refers to incremental route computing, as its name implies, it only calculates a part of the changed route each time, rather than re-computing all the routes. Define routing computing using Dijkstra algorithm in the ISO-10589. When one node in the network topology changes, this algorithm needs to re-calculate all nodes in the network, which takes a long computing time and consumes too much CPU resources, affecting the convergence speed of the entire network.
The I-SPF improved this algorithm, except for the first calculation of all nodes, each time only the affected nodes are calculated, the generated Shortest Path Tree SPT is the same as that calculated by the original algorithm, which greatly reduces the CPU usage and increases the network convergence speed.
PRC (Partial Route Calculation)
The principle of some route computing PRC is the same as that of the I-SPF. But PRC does not need to calculate the Node path, but update the leaf (route) according to the SPT calculated by the I-SPF ).
In route computing, routes represent leaves, and routers represent nodes. If the SPT changes after I-SPF calculation, PRC will only handle all the leaves on that changed node; if the SPT does not change after I-SPF calculation, then, PRC only processes the changed leaf information.
For example, if a node enables an IS interface, the SPT of the entire network topology remains unchanged. In this case, PRC only updates the interface route of this node, thus saving the CPU usage.
The combination of PRC and I-SPF can further improve the convergence performance of the network. It is an improvement of the original SPF algorithm, so it has replaced the original algorithm.
Rapid LSP Diffusion
To speed up the convergence of the entire network, when IS-IS receives the LSP from other routers, if this lsp is newer than its own LSDB, according to the implementation of the original RFC protocol, A timer is used to regularly spread the LSP in LSDB, so the synchronization of LSDB will be slow.
This method is improved by the LSP rapid diffusion feature. When the router that configures this feature receives one or more newer LSPs, it first spreads the LSP smaller than the specified number before route computing, accelerate the synchronization process of LSDB. This method can greatly increase the convergence speed of the entire network.
Smart Timer
After the routing algorithm is improved, if the interval for triggering route computing is long, the network convergence speed will also be affected. The interval can be shortened by using a millisecond-level timer. However, if the network changes frequently, excessive CPU usage may occur. The SPF smart timer can quickly respond to a small amount of external emergencies and avoid excessive CPU usage.
Generally, a normal IS-IS network IS stable, and the probability of a large number of network changes IS very small. The IS-IS Router does not perform route computing frequently, therefore, the first trigger time can be set very short (in milliseconds ). If the topology changes frequently, the intelligent timer will increase with the increase in the number of computations, and the interval will be gradually extended to avoid occupying a large amount of CPU resources.
Similar to SPF smart timers, LSP generates smart timers. In the IS-IS protocol, when the LSP generation timer expires, the system will generate a new LSP based on the current topology. The original implementation mechanism uses a timer with a fixed interval, which cannot meet the needs of fast convergence and low CPU usage at the same time. Therefore, the LSP generation timer is also designed as an intelligent timer, so that it can respond quickly to emergencies (such as interface Up/Down) and speed Up network convergence. At the same time, when the network changes frequently, the interval of the smart timer will be automatically extended to avoid Overconsuming CPU resources.