A method to offload a network stack connection is presented. A request, which
includes
a list of resource requirements from each software layer in the stack, to offload
the network stack connection is sent through the stack to the peripheral device.
The device allocates resources for the list and sends a handle to each of the software
layers for communication with the device. The state for each layer is sent to the
device that includes state variables that are classified as a constant, a cached
variable handled by the CPU, or a delegated variable handled by the device.