FreeBSD boxes as a 'router'...

Barney Cordoba barney_cordoba at yahoo.com
Tue Nov 20 21:54:42 UTC 2012


Anyone who even mentions polling should be discounted altogether. Polling
had value when you couldn't control the interrupt delays; but interrupt
moderation allows you to pace the interrupts any way you like without
the inefficiencies of polling.

The idea that polling uses less CPU is complete baloney; its exactly
the same code as without polling. It's something else that the CPU
has to do, so polling is a negative with almost any modern NIC. With
intel nics you can set whatever interrupt rate you want; setting your
ints/sec to whatever hz is (or whatever polling timer is used) has
the same effect without having to have hacked code running in your driver.

--- On Tue, 11/20/12, khatfield at socllc.net <khatfield at socllc.net> wrote:

> From: khatfield at socllc.net <khatfield at socllc.net>
> Subject: Re: FreeBSD boxes as a 'router'...
> To: "Victor Balada Diaz" <victor at bsdes.net>
> Cc: "freebsd-isp at freebsd.org" <freebsd-isp at freebsd.org>, "John Fretby" <jfretby at googlemail.com>
> Date: Tuesday, November 20, 2012, 12:57 PM
> One thing I have noticed is mixed
> results with polling depending on the version.
> 
> My experience with similar NICs was that polling increased
> the PPS capabilities up to 7.4 but post 7.4 we have seen
> most cases where polling caused either connectivity issues
> or decreased overall performance.
> 
> Now we were running full 1Gbps in our tests. With only
> 140Mbps you should be able to handle this amount without
> polling or additional kernel tweaks. Specifically with 9 - I
> would recommend doing needed sysctl tweaks without polling
> and as long as you are not receiving DDoS traffic then it
> should prove perfectly stable.
> 
> 
> 
> On Nov 20, 2012, at 11:46 AM, "Victor Balada Diaz" <victor at bsdes.net>
> wrote:
> 
> > On Tue, Nov 20, 2012 at 03:35:13PM +0000, John Fretby
> wrote:
> >> Howdy all,
> >> 
> >> We've currently got an ageing HP DL360 running as a
> 'router' - it has
> >> 100Mbit in/out onto our network, and has two 'bce'
> NIC's providing in/out.
> >> It's running quite an old version of FreeBSD (6 I
> think) - but works.
> >> 
> >> As the network gets busier we've noticed the amount
> of interrupt time on it
> >> is climbing (as you'd expect - i.e. esp. if many
> small packets are being
> >> forwarded). Many moons ago we did experiment with
> this box - and enabled
> >> device polling (inc. upping the HZ on the box and
> recompiling the kernel
> >> etc). This didn't work very well at the time
> (probably because it was in
> >> it's infancy) so we left it off in the end.
> >> 
> >> If we were to replace this box, with something new
> - say a SuperMicro based
> >> system with two:
> >> 
> >>   Intel 82574L's (em Driver Based)
> >> 
> >> And enable polling - is it likely to "just work"
> these days? The current
> >> upstream is 100Mbit, we're looking to upgrade this
> to 1Gbit in, but with
> >> say 200Mbit comitted on it (so shouldn't go above
> 200Mbit).
> >> 
> >> Is there anything that has to be done to enable
> polling - other than
> >> recompiling GENERIC to support it? - i.e. no HZ
> hacks or anything needed on
> >> 'modern' machines (it's a quad core Xeon).
> > 
> > Hello John,
> > 
> > You might find interesting to read this thread:
> > 
> > http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037590.html

> > 
> > In short: device polling can decrease performance on
> modern hardware.
> > 
> > You might want to try upgrading to a new FreeBSD
> version and tuning it somehow
> > before buying a new server. More info on tuning the
> network stack:
> > 
> > http://wiki.freebsd.org/NetworkPerformanceTuning

> > 
> > Regards.
> > Victor.
> > -- 
> > La prueba más fehaciente de que existe vida
> inteligente en otros
> > planetas, es que no han intentado contactar con
> nosotros. 
> > _______________________________________________
> > freebsd-isp at freebsd.org
> mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-isp

> > To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"
> _______________________________________________
> freebsd-isp at freebsd.org
> mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-isp
> To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"


More information about the freebsd-net mailing list