This paper proposes a new extension to the socket layer that allows for random-access receives from a single TCP connection.
This new seekable socket interface has been implemented in Linux 2.6.13 and tested using a simple microbenchmark that receives data out-of-order.
Experimental results show up to a 40% reduction in processing time, with benefits increasing for larger messages or a greater number of out-of-order messages.
The seekable sockets patch is available for download from http://www.ece.purdue.edu/∼vpai/ssocks/, and may be applied to currently-available Linux kernels.