OpenOnload userland stack and why it defeats linux kernel
Solarflare OpenOnload is a high performance userland network stack that give tremendous improvements in latency, CPU load and packet rate. It's achieved without any changes to the application, whether it's C/C++/Java or anything that uses BSD Socket API as it's backend.
We'll cover technical side of the implementation: sharing of resources between kernel and userland process, packets routing, polling machinery (poll, epoll etc.), socket caching. It will become clear why a very simple idea on which OpenOnload is based is not so simple to implement.
And for sure we'll outline how and why Onload approach achieves better performance then the kernel stack.
Russia. Saint Petersburg
The OktetLabs company and personally me have been working with the SolarFlare (Level5) enterprise for over a decade now, we are dealing with development and validation of Onload stack and other company products. Having started as a junior developer I'm presently working as the OKTET Labs. CEO. Apart from the management functions I'm caring the technical burden, namely technical management, performance optimizations, porting the stack to new platforms/architectures (like Power) and maintenance of the stack validation framework that is used to check Onload Socket API agains Linux implementation.