Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Aug 2019 01:50:38 +0700
From:      Eugene Grosbein <eugen@grosbein.net>
To:        "Andrey V. Elsukov" <bu7cher@yandex.ru>, Victor Gamov <vit@otcnet.ru>, freebsd-net@freebsd.org
Subject:   Re: finding optimal ipfw strategy
Message-ID:  <50b0748d-bf8a-4de9-58bf-800ddd4f9c27@grosbein.net>
In-Reply-To: <c275f853-62a7-6bb7-d309-bf8a27d3dbae@grosbein.net>
References:  <f38b21a5-8f9f-4f60-4b27-c810f78cdc88@otcnet.ru> <4ff39c8f-341c-5d72-1b26-6558c57bff8d@grosbein.net> <a559d2bd-5218-f344-2e88-c00893272222@otcnet.ru> <ddaa55bc-1fa5-151b-258e-e3e9844802ef@yandex.ru> <c275f853-62a7-6bb7-d309-bf8a27d3dbae@grosbein.net>

next in thread | previous in thread | raw e-mail | index | archive | help
28.08.2019 1:46, Eugene Grosbein wrote:

> 28.08.2019 1:03, Andrey V. Elsukov wrote:
> 
>> As you can see, when ipfw produces high load, interrupt column is more
>> than system.
> 
> Interrupt numbers higher than others generally mean that traffic is processed without netisr queueing mostly.
> That is expected for plain routing. I'm not sure if this would be same in case of bridging.
> 
> Victor, do you have some non-default tuning in your /boot/loader.conf or /etc/sysctl.conf?
> If yes, could you show them? If not, you should try something like this. For loader.conf:
> 
> hw.igb.rxd=4096
> hw.igb.txd=4096
> net.isr.bindthreads=1
> net.isr.defaultqlimit=4096
> #substitute total number of CPU cores in the system here
> net.isr.maxthreads=4
> # EOF

Also, you should monitor interrupt numbers shown by "systat -vm 3" for igb* devices
at hours of most load. If they approach 8000 limit but not exceed it,
you may be suffering from this and should raise the limit with /boot/loader.conf:

hw.igb.max_interrupt_rate=32000




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50b0748d-bf8a-4de9-58bf-800ddd4f9c27>