The OS server keeps track of long-lived, shared protocol state, e.g. TCP connection information. The implementation Proxy code to replace the standard operating system calls resides in the application's address space. The application caches protocol state to avoid calls into the kernel upon send operations, i.e. the application caches header information stored in the OS as part of the connection state. The kernel uses callbacks to invalidate an application's cache entries. The packet filter examines incoming network packets and dispatches the data to the appropriate application.
Applications can receive multiple packets from a single kernel wakeup.
Integrate the packet filter into the device driver to avoid a receive path copy. This optimization is device and machine dependant.