This was originally published in June of 2008 at 10GbE.net.
For those not into style Manolo Blahnik is one of the leading female shoe designers, and often Blahnik’s start at $700/pair, the price of a good 10GbE NIC. As most servers have moved to dual socket quad-core processors the value proposition for TCP Offload Engine (TOE) 10GbE NICs has quickly eroded.
In the spring of 2006, a good non-TOE 10GbE NIC consumed 40% of the host CPU in a dual-socket dual-core server and provided >6Gbps of performance, while a similar TOE did the same job using only 10% of the host CPU. So with a 30% savings in host CPU, there was some value in using a TOE. With two years of improvements in silicon, stateless offloads, and servers moving to dual-socket quad cores we now have 10GbE NICs capable of near-wire rate (>9.5Gbps) that consume only 10% of the host CPU. Similarly, TOE NICs in the same environment consume roughly 5% of the host CPU.
By most estimates, servers are typically running at 20% CPU utilization, as a result of application load. So will a 5% savings in host CPU be noticed, let alone worth the added purchase price of a TOE? No. Add to that the Linux Foundation’s 14-point argument against using TOES, written by the Linux Kernel developers themselves, and one would wonder why people still consider TOEs in style.
Here are the 14 reasons cited by the Linux Foundation on their
- Security updates
- Point-in-time solution
- Different network behavior
- Performance
- Hardware-specific limits
- Resource-based denial-of-service attacks
- RFC compliance
- Linux features
- Requires vendor-specific tools
- Poor user support
- Short term kernel maintenance
- Long term user support
- Long term kernel maintenance
- Eliminates global system view
If you are seriously interested in buying a TOE you should read their TOE page.
The technologies extensively used in accelerated financial transactions, deep packet inspection and storage data processing requires ultra fast TCP offload IP core.
Thanks for sharing nice or informative article..
Yes, but keep in mind that this article is nearly six years old. Back then Myricom's 1/2 round trip performance (one send + one receive) was at 12-15us for their generic Linux 10G driver. Today Solarflare's generic Linux driver provides less than half that, TCP of roughly 6.3us, and UDP 5.4us, while our accelerated Open Onload stack is 1.8us for TCP and 1.7us for UDP.