High Performance Send

High Performance Send is a new feature of TCP/IP 4.21 that allows an application to send data over sockets without incurring a memory copy. To use it, special memory is first allocated to the application from the TCP/IP stack with the sysctl() call. Then the application calls send(), sendto(), or sendmsg() with the MSG_MAPIO flag. The application must wait for notification from the stack that the stack has finished using the memory passed on the previous send-type call. Only then should the application reuse the memory to send more data.

There are two ways to determine if the stack has finished using the memory: event semaphores and polling. These are described in Determining if HPS Memory is Available for Reuse.

A complete example of using HPS appears in the samples directory of the toolkit.

Topics


[Back: TCP Extensions for High Performance (RFC 1323)]
[Next: Allocating HPS Memory]