Skip to main content

What makes the CPU busy ? - Knowledgebase / Products / Classic Switches - Hirschmann Support Center

What makes the CPU busy ?

What makes the CPU busy ?

First of all, we guarantee that out devices have a correct behavior up to 99% CPU load.
Reaching 100% then miss behaviors may appear with a different criticism depending on which task(s) makes the CPU so busy.

And Secondly, forget the idea that the CPU load is dependent on the network load. Data traffic may of course affect the CPU load, but the load itself of the network doesn't affect the CPU.

Big Part of the load comes from internal tasks like for example polling the status of the different component of the device (even if absolutely no device is connected), other part will come from the different functions which are activated (activate a redundancy protocol like RSTP or a routing protocol like OSPF will of course increase the CPU load), a third factor are the packets reaching the CPU, they will of course have an impact (even if filters protect the CPU), and finally the actions which are launched by the administrator will momentaneously increase significantly the CPU load (file transfer, save config ...)

To investigate what makes the CPU busy there are mainly 2 ways :

1 / If the CPU load is high only when the device is connected to the network then do a TCPDUMP to check which traffic is reaching the CPU.

Analysing the capture you'll see which packets make the CPU busy

2 / If the CPU load is high whatever the condition (connected or not to the rest of the network) then if possible isolate it from the network, don't let any connected device on it (If it's not possible to isolate the device from the network then close any active session active with the device (web, http, telnet ...) and avoid snmp polling or any action on the device.), just connect via the serial interface and do a copy and paste of these commands :

bobshell spyStop
bobshell spy(10)

(These command are time sensitive, that's why we recommend to use the copy/paste function)
As output you will have a steady status of the tasks and the CPU ressources they use.
Let it run a while (until you observe a high CPU load situation) then stop it  with the command :
bobshell spyStop

Analysing the output you'll see which task makes the CPU busy.