System and method for TCP/IP offload independent of bandwidth delay product
First Claim
1. A method for providing TCP/IP offload, the method comprising:
- receiving control of at least a portion of Transmission Control Protocol (TCP) connection variables by a TCP/IP Offload Engine operatively coupled to a host;
updating said at least a portion of said TCP connection variables; and
providing said at least a portion of said updated TCP connection variables to said host.
6 Assignments
0 Petitions
Accused Products
Abstract
A method for providing TCP/IP offload may include receiving control of at least a portion of Transmission Control Protocol (TCP) connection variables by a TCP/IP Offload Engine operatively coupled to a host. The at least a portion of the TCP/IP Offload Engine connection variables may be updated and provided to the host. The TCP/IP Offload Engine may receive control of segment-variant TCP connection variables. The TCP/IP Offload Engine may update the received TCP segment-variant TCP connection variables, and communicate the updated TCP segment-variant TCP connection variables to the host. A system for providing connection offload may include a TCP/IP Offload Engine that receives control of state information for a particular connection offloaded to a network interface card (NIC). Control of the state information for the particular connection may be split between the NIC and a host.
412 Citations
95 Claims
-
1. A method for providing TCP/IP offload, the method comprising:
-
receiving control of at least a portion of Transmission Control Protocol (TCP) connection variables by a TCP/IP Offload Engine operatively coupled to a host; updating said at least a portion of said TCP connection variables; and providing said at least a portion of said updated TCP connection variables to said host. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A machine-readable non-transitory storage, having stored thereon a computer program having at least one code section for providing TCP/IP offload, the at least one code section executable by a machine for causing the machine to perform the steps comprising:
-
receiving control of at least a portion of Transmission Control Protocol (TCP) connection variables by a TCP/IP Offload Engine operatively coupled to a host; updating said at least a portion of said TCP connection variables; and providing said at least a portion of said updated TCP connection variables to said host. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
-
-
55. A method for providing connection offload, the method comprising:
-
receiving control of state information for a particular connection offloaded to a network interface card (NIC), wherein control of said state information for said particular connection is split between said NIC and a host; updating at least a portion of connection variables for said particular connection; and uploading said at least a portion of said updated connection variables for said particular connection to said host. - View Dependent Claims (56, 57, 58)
-
-
59. A machine-readable non-transitory storage, having stored thereon a computer program having at least one code section for providing connection offload, the at least one code section executable by a machine for causing the machine to perform the steps comprising:
-
receiving control of state information for a particular connection offloaded to a network interface card (NIC), wherein control of said state information for said particular connection is split between said NIC and a host; updating at least a portion of connection variables for said particular connection; and uploading said at least a portion of said updated connection variables for said particular connection to said host. - View Dependent Claims (60, 61, 62)
-
-
63. A system for providing connection offload, the system comprising:
-
a TCP/IP Offload Engine that receives control of state information for a particular connection offloaded to a network interface card (NIC), wherein control of said state information for said particular connection is split between said NIC and a host; said TCP/IP Offload Engine updates at least a portion of connection variables for said particular connection; and said TCP/IP Offload Engine uploads said at least a portion of said updated connection variables for said particular connection to said host. - View Dependent Claims (64, 65, 66)
-
-
67. A machine-readable non-transitory storage, having stored thereon a computer program having at least one code section for providing TCP/IP offload, the at least one code section executable by a machine for causing the machine to perform the steps comprising:
-
receiving by a TCP/IP Offload Engine transfer of control of connection variables of a particular TCP connection from a host and a snapshot of remaining connection variables whose control was not transferred to said TCP/IP Offload Engine from said host; managing said particular Transmission Control Protocol connection via said TCP/IP Offload Engine using said at least a portion of said connection variables transferred to said TCP/IP Offload Engine and at least a portion of said snapshot; and updating at least a portion of said connection variables and a portion of said snapshot and transferring said updated at least said portion of said connection variables and said portion of said snapshot back to said host. - View Dependent Claims (68, 69, 70, 71)
-
-
72. A system for providing TCP/IP offload, the system comprising:
-
a TCP/IP Offload Engine that receives transfer of control of connection variables of a particular TCP connection from a host, and a snapshot of remaining connection variables whose control was not transferred to said TCP/IP Offload Engine from said host; said TCP/IP Offload Engine manages said particular TCP connection using at least a portion of said connection variables transferred to said TCP/IP Offload Engine and at least a portion of said snapshot; and said TCP/IP Offload Engine updates at least a portion of said connection variables and a portion of said snapshot, and wherein said TCP/IP Offload Engine transfers said updated at least said portion of said connection variables and said portion of said snapshot back to said host. - View Dependent Claims (73, 74, 75, 76)
-
-
77. A machine-readable non-transitory storage, having stored thereon a computer program having at least one code section for providing TCP/IP offload, the at least one code section executable by a machine for causing the machine to perform the steps comprising:
-
receiving transfer of control of segment-variant variables by a TCP/IP Offload Engine from a host; receiving a snapshot of segment-invariant variables and connection-invariant variables by said TCP/IP Offload Engine; independently processing incoming Transmission Control Protocol packets via said TCP/IP Offload Engine based upon said segment-variant variables and said snapshot; and updating at least a portion of said sent snapshot and at least a portion of said segment-variant variables and transferring at least a portion of said updated at least said portion of said sent snapshot and at least said portion of said updated segment-variant variables back to said host.
-
-
78. A system for providing TCP/IP offload, the system comprising:
-
a TCP/IP Offload Engine that; receives transfer of control of segment-variant variables from a host; receives a snapshot of segment-invariant variables and connection-invariant variables; independently processes incoming Transmission Control Protocol packets based upon said segment-variant variables and said snapshot; and updates at least a portion of said sent snapshot and at least a portion of said segment-variant variables, wherein said TCP/IP Offload Engine transfers at least a portion of said updated at least said portion of said sent snapshot and at least said portion of said updated segment-variant variables back to said host.
-
-
79. A machine-readable non-transitory storage, having stored thereon a computer program having at least one code section for processing a Transmission Control Protocol connection, the at least one code section executable by a machine for causing the machine to perform the steps comprising:
-
establishing a Transmission Control Protocol connection between a TCP/IP Offload Engine and a host; sharing a control plane for said Transmission Control Protocol connection by said TCP/IP Offload Engine with said host; updating Transmission Control Protocol connection variables by said TCP/IP Offload Engine; and communicating said updated Transmission Control Protocol connection variables from said TCP/IP Offload Engine to said host. - View Dependent Claims (80, 81, 82, 83, 84)
-
-
85. A system for processing a Transmission Control Protocol connection, the system comprising:
-
a TCP/IP Offload Engine operatively coupled to a host, wherein said TCP/IP Offload Engine; establishes a Transmission Control Protocol connection between said TCP/IP Offload Engine and said host; shares a control plane for said Transmission Control Protocol connection with said host; updates Transmission Control Protocol connection variables; and communicates said updated Transmission Control Protocol connection variables to said host. - View Dependent Claims (86, 87, 88, 89, 90)
-
-
91. A system for Transmission Control Protocol offload, the system comprising:
-
a TCP/IP Offload Engine operatively coupled to a host, wherein said TCP/IP Offload Engine; acquires Transmission Control Protocol connection variables from said host; manages at least one Transmission Control Protocol connection using said acquired Transmission Control Protocol connection variables; updates at least a portion of said acquired Transmission Control Protocol connection variables; and transfers said updated at least a portion of said acquired Transmission Control Protocol connection variables to said host. - View Dependent Claims (92, 93, 94, 95)
-
Specification