Netchannels and userspace network stack
From WhitixDoc
Contents |
Information
| Status | In progress |
|---|---|
| Time estimate | 1-2 months |
| Percent complete | 15% |
| Development tree | branches/netchannels |
Details
Developing a new design of network stack in userspace, based on Van Jacobson's network channels. A network channel is a carefully designed circular buffer used by the network code when sending and receiving data. Adding data to and from the netchannel is a cache-friendly operation, unlike the socket buffers of today's kernels. Jacobson says the key to better networking scalability is to get rid of locking and shared data as much as possible, and to make sure as much processing work as possible is done on the CPU where the application is running.
When a packet is received, it is directed towards the right network channel and pushed out to userspace.
Tasklets
TODO