LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking
User Name
Password
Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.

Notices


Reply
  Search this Thread
Old 02-23-2010, 03:21 PM   #1
bogdanflorin
LQ Newbie
 
Registered: Feb 2010
Posts: 1

Rep: Reputation: 0
linux kernel high "si" load on a 600 Mbps router


Hello,

We use a linux box for routing and traffic shaping (we have a few thousand ip addresses routed through this box) and the soft interrupt load is very high.
We use linux kernel 2.6.32.7 on an Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz.
Cpu1 serves an internal network interface, and Cpu3 serves a single physical network interface (with 2 vlans):
Cpu0 : 0.4%us, 0.0%sy, 0.0%ni, 98.2%id, 0.0%wa, 0.0%hi, 1.4%si, 0.0%st
Cpu1 : 0.7%us, 0.0%sy, 0.0%ni, 16.1%id, 0.0%wa, 0.3%hi, 82.9%si, 0.0%st
Cpu2 : 0.0%us, 0.0%sy, 0.0%ni, 96.1%id, 0.0%wa, 0.0%hi, 3.9%si, 0.0%st
Cpu3 : 0.0%us, 0.0%sy, 0.0%ni, 18.2%id, 0.0%wa, 0.7%hi, 81.2%si, 0.0%st
Mem: 2051812k total, 816388k used, 1235424k free, 134232k buffers
Swap: 6016300k total, 0k used, 6016300k free, 110356k cached

Cpu0 and Cpu2 are idle most of the time.

Is there any way to use multiple processors to handle software interrupts for the same network interface, so that the load be distributed across multiple processors ?
Any other suggestions to ease the load are welcome.

Thank You !

Bogdan-Florin Florea
 
Old 02-23-2010, 07:36 PM   #2
tacorama
Member
 
Registered: Sep 2009
Distribution: Slackware
Posts: 39

Rep: Reputation: 16
how are you routing the addresses, using something like iptables in linux or an app on top of linux. from what i understand - it seems that the app or the internal system calls arent multi-threaded per physical interface. perhaps the app itself was written to only use a maximum of two proc cores. if a software fix isnt possible then maybe you can somehow split the network traffic into two parts - and run two instances of the program/iptables and dedicate each to a set of cores.
general outline:


input-->spliter-->{routing instance A and B}-->combiner-->output


doing something like this would be a band-aid and not a long term solution - which would be to accurately load share across the cpus natively.

Last edited by tacorama; 02-23-2010 at 07:39 PM. Reason: clarity
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Those "load average" numbers : just how much is too high ? curtisa Linux - Server 2 07-16-2009 08:40 AM
What does "Directory "/usr/src/linux" doesn't appear to contain kernel source." mean? jtp51 Linux - General 4 06-11-2007 12:22 AM
Why don't want load Linux on " IT 8212F "RAID" card? master_boy Linux - Hardware 8 12-26-2005 09:56 AM
Kernel panic under 2.6.7 "VFS cannot load /dev/hda1 fs" Nichole_knc Slackware 5 10-24-2004 05:38 PM
"User" & "System" CPU load difference JJX Linux - General 3 06-06-2004 01:42 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Networking

All times are GMT -5. The time now is 12:59 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration