CISCO ROUTER PERFORMANCE: TIPS AND TRICKS.

PREVENTING A “HUNG” TRIAL

Cisco IOS is very similar to any operating system in that it programs and runs processes. Some of these processes support a router's essential tasks, such as IP input. Others are designed for maintenance tasks, such as “Check Heaps.”

To prevent a process from tying up the CPU, we use the following command: scheduler process-watchdog. There are four options for this command:

1. scheduler process-watchdog hang . This will keep the process in the process table but will no longer schedule it on the CPU.
2. scheduler process-watchdog normal . This is the “default” behavior as determined by the developers. The result is difficult to predict unless you have access to the source code.
3. scheduler process-watchdog reload . This will reboot the router, and you should be aware of the possible loss of certain processes (e.g., IP entry), although the router will most likely remain in an unusable state. In this case, it would be best to reboot the router.
4. scheduler process-watchdog terminate . This option will terminate the process and allow the router to continue operating. However, as noted above, there is a possibility that some key processes may be lost.

ALLOWING THE SCHEDULING OF LOWER-PRIORITY PROCEDURES.

In cases where the network speed is extremely high, a load occurs on a router's interface, and other tasks may not be able to run. By default, Cisco IOS allocates 5% of CPU time to lower-priority tasks. During periods of high load, such as a DDoS attack, this default value may not be sufficient to ensure that other tasks receive CPU time, such as router protocol updates and CEF table maintenance.

To change the default behavior, we use the command: scheduler allocate .
This is a global command, and it is used as follows:

Scheduler: allocate 4,000 and 200.

Where 4000 is the maximum number of microseconds for fast switching and changing any individual network interrupt context.
200 is the guaranteed minimum number of microseconds for assigning level-task processes while network interrupts are masked. The default values are 4,000 and 200, as shown above.

Although the default configuration is adequate for steady-state operation, you may find that modifications are necessary to ensure console access to the router during periods of extreme network stress.

CHANGE THE INTERVAL AT WHICH THE STATISTIC IS CALCULATED.

By default, Cisco IOS collects statistics for the various counters at 300-second intervals, or every five minutes. While this is adequate for most operating conditions, there may be times when a more granular (or coarser) interval is required. Note that this has no effect on router performance.

To change the statistics collection interval, we use the command: load-interval.

load-interval 300

Where 300 is the number of seconds we want to use as the interval. If you set this to a more granular value (for example, 30 seconds), remember to reset the settings to their defaults once the data has been collected.