[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
User-level network stack
- To: OpenLDAP Devel <openldap-devel@openldap.org>
- Subject: User-level network stack
- From: Howard Chu <hyc@symas.com>
- Date: Tue, 30 Mar 2010 12:22:57 -0700
- User-agent: Mozilla/5.0 (X11; U; Linux x86_64; rv:1.9.3a2pre) Gecko/20100212 Firefox 3.6
Quite a while back I talked about optimizing select/epoll/whatever using
mmap'd memory shared between user space and the kernel for the event table.
http://www.openldap.org/lists/openldap-devel/200411/msg00088.html
These guys have gone even further, and use mapped memory to bring the entire
network stack up to user level:
http://www.openonload.org/openonload-google-talk.pdf
Their paper talks about the work they did with two particular 10Gbit NICs. I
find this interesting because in these benchmarks I ran
http://connexitor.com/blog/pivot/entry.php?id=191
the NIC interrupt overhead was 100% of a CPU core, and that was only on 1Gbit
ethernet. Clearly for heavy-load deployments a better network solution is
needed. It sounds like maybe the OpenOnload guys have a better approach.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/