Patent ID: 8213427

Claim:
A method of operating intelligent network interface circuitry to facilitate the tunneling of packets between at least one process, executing on a host computer, and a peer via a network, via the network interface circuitry, comprising: receiving packets from the process executing on the host computer, wherein the process executing on the host computer includes at least transport layer protocol processing, with respect to data being provided from the host computer to the peer, to at least partially form the packets, and wherein each of the partially formed packets belongs to one of a plurality of flows; maintaining a plurality of desired transmission rate characteristics, each maintained desired transmission rate characteristic corresponding to a different one of the plurality of flows; determining to which of the plurality of flows each packet belongs based on a characteristic of the packet; transmitting the received packets out to the network such that, for each of the plurality of flows, packets belonging to that flow are transmitted based on an indication of the desired transmission rate characteristic corresponding to that flow, maintained by the network interface controller; whereby the packets are tunneled through the network interface circuitry and the transmission of the packets is modulated out to the network.