it's the output, not ack coalescing (Re: TSO and FreeBSD vs Linux)

Barney Cordoba barney_cordoba at yahoo.com
Sun Aug 18 21:02:04 UTC 2013


That's fine, it's a test tool, not a solution. It just seems that it gets pushed as if it's some sort of real
world solution, which it's not. The idea that bringing packets into user space to forward them rather
than just replacing the bridge module with something more efficient is just silliness.

If "pushing packets" was a useful task, the solution would be easy. Unfortunately you need to do
something useful with the packets in between.

Reminds me of polling. The problem is that over time, people actually view it as a solution, when
it was never more than a kludge in the first place.

BC


________________________________
 From: Adrian Chadd <adrian at freebsd.org>
To: Barney Cordoba <barney_cordoba at yahoo.com> 
Cc: "freebsd-net at freebsd.org" <freebsd-net at freebsd.org> 
Sent: Sunday, August 18, 2013 3:18 PM
Subject: Re: it's the output, not ack coalescing (Re: TSO and FreeBSD vs Linux)
 







On 18 August 2013 11:39, Barney Cordoba <barney_cordoba at yahoo.com> wrote:

Great. Never has the been a better explanation for the word Kludge than netmap.

Nah. Netmap is a reimplementation of some reasonably well known ways of pushing bits. Luigi just pushed it up to eleven and demonstrated what current hardware is capable of. I have never bought the "We need eleventy cores just to push 10ge of real traffic!" before.

Luigi did note down where the per-packet inefficiencies were. What we have to do now is sit down and for each of those, figure out what the root causes are and how to mitigate it. There's some architectural things that need tidying up (read: CPU pinning, queue handling, some locking hilarity) but if they're solved, we'll end up having dual core boxes push line rate packets for routing.

So the gauntlet has been thrown. Let's fix this shit up.



-adrian


More information about the freebsd-net mailing list