Patent ID: 8649395

Claim:
A computing device comprising a processor, user memory, kernel memory and a network communications unit an application program disposed in user space in the user memory a communications protocol stack configured to interact with the application program, wherein the communications protocol stack is disposed in kernel space in the kernel memory, the communications protocol stack comprising a plurality of interfaced layers in which data units are received at the highest layer and logically passed down to and processed by succeeding lower layers wherein the communications protocol stack is adapted to inform the application program of bandwidth availability on the computing device, the bandwidth availability including timing information and an amount of data that can be sent, wherein the timing information comprises at least one of when a transmit window will open paired with a size of the transmit window and a deadline for action wherein the communications protocol stack is further adapted to designate at least one region in a shared memory for storage of descriptors of payload data by the application program and to form data units from the descriptors of payload data obtained from the shared memory wherein the communications protocol stack is adapted to recognize the descriptors indicative that the protocol stack should set the payload data to be one selected from the group including anything, a constant value or constant application data.