Protocol stack that offloads a TCP connection from a host computer to a network interface device
First Claim
1. A method for communication by a host computer that is connectable to a network by a specialized network interface, the method comprising:
- running a Transmission Control Protocol (TCP) connection on the host, the TCP connection being at least in part identified by a local Internet Protocol (IP) address, a local TCP port, a remote IP address and a remote TCP port, including maintaining TCP state information for the connection by the host; and
offloading the TCP connection from the host to the network interface, including updating the TCP state information by the network interface.
3 Assignments
0 Petitions
Accused Products
Abstract
A host CPU runs a network protocol processing stack that provides instructions not only to process network messages but also to allocate processing of certain network messages to a specialized network communication device, offloading some of the most time consuming protocol processing from the host CPU to the network communication device. By allocating common and time consuming network processes to the device, while retaining the ability to handle less time intensive and more varied processing on the host stack, the network communication device can be relatively simple and cost effective. The host CPU, operating according to instructions from the stack, and the network communication device together determine whether and to what extent a given message is processed by the host CPU or by the network communication device.
-
Citations
30 Claims
-
1. A method for communication by a host computer that is connectable to a network by a specialized network interface, the method comprising:
-
running a Transmission Control Protocol (TCP) connection on the host, the TCP connection being at least in part identified by a local Internet Protocol (IP) address, a local TCP port, a remote IP address and a remote TCP port, including maintaining TCP state information for the connection by the host; and offloading the TCP connection from the host to the network interface, including updating the TCP state information by the network interface. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for communication by a host computer that is connectable to a network by an intelligent network interface card (NIC), the method comprising:
-
running a Transmission Control Protocol (TCP) connection on the host, the TCP connection being at least in part identified by a local Internet Protocol (IP) address, a local TCP port, a remote IP address and a remote TCP port, the TCP connection containing a set of state variables; and transferring the TCP connection from the host to the NIC. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method for communication by a host computer that is connectable to a network by an intelligent network interface card (NIC), the method comprising:
-
running a Transmission Control Protocol (TCP) connection by a protocol processing stack of the host computer, the TCP connection being at least in part identified by a local Internet Protocol (IP) address, a local TCP port, a remote IP address and a remote TCP port, including maintaining TCP state information for the connection by the protocol processing stack; and offloading the TCP connection from the protocol processing stack to the NIC, including updating the TCP state information by the NIC. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
Specification