High Process CPU-no ip route cach and fast switching

Unanswered Question
Feb 28th, 2008

We currently have a 2621xm which can peak its CPU utilization at 95%-2 serial t1's and 2 FE's

IP input process seems to take the most cpu

Right now the router is about 50% cpu

CPU utilization for five seconds: 48%/17%; one minute: 46%; five minutes: 45%

PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process

4 2750848 549208 5008 0.00% 0.05% 0.05% 0 Check heaps

9 7345420 14203451 517 0.15% 0.13% 0.14% 0 ARP Input

33 2236368 82631 27064 0.00% 0.05% 0.00% 0 Per-minute Jobs

44 11408942801947094275 585 30.79% 28.45% 27.87% 0 IP Input

82 4592 952 4823 0.00% 0.00% 0.09% 66 Virtual Exec

93 78456 33075 2372 0.00% 0.02% 0.01% 0 SNMP ENGINE

Every interface has the "no ip route cache"

in the configuration

I can understand the no ip route cache on the serial interface,

for per packet load balancing, I believe.

But am not soure why it would be configured on the FE's

If I enabled ip route cache on the FE's would this alleviate the cpu

and would this affect the serial interface load balancing?

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
Paolo Bevilacqua Thu, 02/28/2008 - 08:43

You should really use the default per-destination CEF load balancing algorithm.

The alternative as you can see, it high CPU and at some point, router meltdown.

nygenxny123 Thu, 02/28/2008 - 09:04

The two t1's are point to point...basically

going from one building to another across the street. One network is 192.168.1.x and the

other is 192.168.2.x.

So if i understand corretly, per destination would utilize only one t1, since all traffic is going to the same subnet..if i understand correclty

Paolo Bevilacqua Thu, 02/28/2008 - 09:26

No, CEF algorithm uses both source ip address and destination to determine link to be used.

Moreover, you can configure MLPPP to bundle the two circuits and lod balancing will inherently be perfect without CEF being involved at all.

nygenxny123 Thu, 02/28/2008 - 10:23

so i would issue ip cef on each interface..this should alleviate my problem?

olorunloba Thu, 02/28/2008 - 10:44

ip cef on each interface would surely alleviate your problem.

Cisco routers uses 3 major switching methods, process switching, fast switching and CEF. Process switching is the most CPU intensive, as every packet is analysed before being switched. CEF is acclaimed the best.

The comand "no ip route-cache" on the interface configures the router for process switching. This is why you are experiencing high CPU utilisation.

Check the following link for more information.

http://www.cisco.com/en/US/docs/ios/12_2/switch/configuration/guide/xcfovips_ps1835_TSD_Products_Configuration_Guide_Chapter.html

http://www.cisco.com/warp/public/63/highcpu.html

Joseph W. Doherty Thu, 02/28/2008 - 10:27

To expand a bit on what Paolo recommends with regard to using CEF, if you have multiple source/destination pairs, CEF alone works very well. If a single pair of source/destination, you can also have CEF do packet by packet balancing.

More details about CEF: http://www.cisco.com/en/US/products/hw/modules/ps2033/prod_technical_reference09186a00800afeb7.html

From this document:

"The simplest configuration only requires to enable CEF forwarding. This is sufficient for most cases, as the per-packet load balancing is only rarely needed with the new per-destination algorithm. There are a few scenarios where per-packet load balancing is more advisable, e.g. the majority of traffic is between two hosts.

Summary

Cisco Express Forwarding supports load balancing for TCP/IP over parallel links without impacting performance even if the traffic patterns require per-packet load balancing. This is a major enhancement compared to the route-cache based forwarding mechanisms used in other IOS versions."

Mohamed Sobair Thu, 02/28/2008 - 11:14

Hi,

Adding the following comment to the previoss posts,

Ip route-cache is doing load palancing per destination but this is much CPU intensive, as a router has to consult the rip and the ARP table for every query.

CEF is the lower CPU intensive and faster, since all CEF FIB is copied/mirrored from the RIP.

Enabling CEF, Global config mode: IP CEF

disabling CEF per interface level: no ip route-cache cef

HTH

Mohamed

nygenxny123 Thu, 02/28/2008 - 12:24

will i be able to enable ip cef only on the fast thernet interfaces....thus alleviating

some of the load on the cpu..

while keep no ip route cache on the serial interfaces?

MLPP are not an option right now

Mohamed Sobair Thu, 02/28/2008 - 12:44

Hi,

As illustrated by Paolo and others, Applying CEF would eleminate from increasing CPU utilization, however, if you want to disable CEF per interface, at the interface level:

type: (no ip route-cache cef), enabling CEF globally would enable CEF in all router interfaces.

You could leave (no ip route-cache) at the serial interfaces and leave them to process CEF switching.

You could verify which interface is CEF enabled, by issuing (sh cef interface)

HTH

Mohamed

nygenxny123 Thu, 02/28/2008 - 19:56

Hi Mohammed-

Im not sure what you mean when you

said I could leave no ip route-cache at

the serial interface and leave them to process CEF

switching.

You mean leave the FE to process CEF?

since as I understand..leaving no ip route

cache would mean the interface cant process CEF

Actions

This Discussion