OpenOnload® is a high performance network stack from Solarflare that dramatically reduces latency and cpu utilisation, and increases message rate and bandwidth. OpenOnload runs on Linux and supports TCP/UDP/IP network protocols with the standard BSD sockets API, and requires no modifications to applications to use. It achieves performance improvements in part by performing network processing at user-level, bypassing the OS kernel entirely on the data path. Networking performance is improved without sacrificing the security and multiplexing functions that the OS kernel normally provides.
Google TechTalk
In February 2008 we gave a tech-talk at Google
all about the implementation of OpenOnload. Watch
here, and the
slides are here.
Features
- Application-to-application latency as low as 3.5us.
- Send or receive millions of messages per second per CPU core.
- Binary compatible with existing applications.
- Includes innovative techniques that reduce interrupt overheads and improve scalability.
- Open Source (GPLv2).
- Runs on many Linux distributions and most 2.6 kernels, including realtime.
- Supports 32-bit and 64-bit user-level and kernels (including 32-bit user-level with 64-bit kernel).
OpenOnload comprises a user-level shared library that intercepts network-related system calls and implements the protocol stack, and supporting kernel modules. It is compatible with the full system call API, including those aspects that usually problematic for user-level networking, such as fork(), exec(), passing sockets through Unix domain sockets, and advancing the protocol when the application is not scheduled.
OpenOnload is compatible with at least the following network adapters:
- Solarflare Solarstorm SFN5122F (dual SFP+)
- Solarflare Solarstorm SFN5121T (dual 10GBASE-T)
- Solarflare Solarstorm SFN4112F (single SFP+)
- SMC SMC10GPCIe-XFP
- SMC SMC10GPCIe-10BT
OpenOnload contains algorithms and uses hardware interface techniques which are subject to Solarflare Communications, Inc. patent applications. Parties interested in licensing Solarflare's IP are encouraged to contact Solarflare's Intellectual Property Licensing Group at:
Director of Intellectual Property LicensingIntellectual Property Licensing Group
Solarflare Communications, Inc.
7505 Irvine Center Drive Suite 100
Irvine, California 92618
Support
For help using OpenOnload and to report bugs, please email Solarflare's support team; support@solarflare.com.
For other feedback, including suggestions for improving OpenOnload, please contact openonload@solarflare.com.
