IP Library Patent Application 11027842
Patent Application
App. No. 11/027,842

Protocol stack that offloads a TCP connection from a host computer to a network interface device

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/027,842
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.

Claims (26)

1 . A set of computer-executable instructions stored on a computer-readable medium, the set of instructions comprising:

a protocol processing stack including code to establish a Transmission Control Protocol (TCP) connection for a host having a local Internet Protocol (IP) address and a local TCP port, the TCP connection being at least in part identified by the local IP address, the local TCP port, a remote IP address and a remote TCP port, the protocol processing stack including directions to transfer control of the TCP connection to an intelligent network interface.

2 . The set of instructions of claim 1 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer control of the TCP connection include an instruction to transfer state information of the TCP connection from the stack to the device driver.

3 . The set of instructions of claim 1 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer control of the TCP connection include means for transferring a state of the TCP connection from the stack to the device driver.

4 . The set of instructions of claim 1 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer control of the TCP connection include an instruction to transfer a data structure including state information of the TCP connection from the stack to the device driver.

5 . The set of instructions of claim 1 , further comprising directions to receive control of the TCP connection from the intelligent network interface.

6 . The set of instructions of claim 1 , further comprising directions to receive state information of the TCP connection from the intelligent network interface.

7 . The set of instructions of claim 1 , further comprising directions to choose whether to transfer control of the TCP connection to the intelligent network interface.

8 . A set of computer-executable instructions stored on a computer-readable medium, the set of instructions comprising:

protocol processing code to establish a Transmission Control Protocol (TCP) connection for a host having a local Internet Protocol (IP) address and a local TCP port, the TCP connection being at least in part identified by the local IP address, the local TCP port, a remote IP address and a remote TCP port; and

directions to transfer the TCP connection to an intelligent network interface.

9 . The set of instructions of claim 8 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer the TCP connection include an instruction to pass state information of the TCP connection to the device driver.

10 . The set of instructions of claim 8 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer the TCP connection include an instruction to pass a data structure regarding the TCP connection to the device driver.

11 . The set of instructions of claim 8 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer the TCP connection include an instruction to pass a data structure including state information of the TCP connection to the device driver.

12 . The set of instructions of claim 8 , further comprising directions to receive a state of the TCP connection from the intelligent network interface.

13 . The set of instructions of claim 8 , further comprising directions to receive control of the TCP connection from the intelligent network interface.

14 . The set of instructions of claim 8 , further comprising directions to choose whether to transfer control of the TCP connection to the intelligent network interface.

15 . A set of computer-executable instructions stored on a computer-readable medium, the set of instructions comprising:

means for establishing a Transmission Control Protocol (TCP) connection for a host having a local Internet Protocol (IP) address and a local TCP port, the TCP connection including the local IP address, the local TCP port, a remote IP address and a remote TCP port; and

directions to transfer control of the TCP connection to an intelligent network interface.

16 . The set of instructions of claim 15 , wherein the intelligent network interface includes a network interface card, and the directions to transfer control of the TCP connection include means for transferring the TCP connection to the network interface card.

17 . The set of instructions of claim 15 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer control of the TCP connection include an instruction to pass state information of the TCP connection to the device driver.

18 . The set of instructions of claim 15 , wherein the intelligent network interface includes a network interface device and a device driver for the network interface device, and the directions to transfer control of the TCP connection include an instruction to pass a data structure regarding the TCP connection to the device driver.

19 . The set of instructions of claim 15 , further comprising directions to receive control of the TCP connection from the intelligent network interface.

20 . The set of instructions of claim 15 , further comprising directions to receive a state of the TCP connection from the intelligent network interface.

21 . The set of instructions of claim 15 , further comprising directions to choose whether to transfer control of the TCP connection to the intelligent network interface.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2016
From: A-TECH LLC
To: ALACRITECH, INC.
Reel/Frame 039068/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2013
From: ALACRITECH INC.
To: A-TECH LLC
Reel/Frame 031644/0783 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2005
From: BOUCHER, LAURENCE B.; CRAFT, PETER K.; HIGGEN, DAVID A.; PHILBRICK, CLIVE M.
To: ALACRITECH, INC.
Reel/Frame 016232/0506 →