System and method for TCP/IP offload independent of bandwidth delay product
DC CAFCFirst Claim
1. A system for providing TCP/IP offload, comprising:
- a Transmission Control Protocol/Internet Protocol (TCP/IP) offload engine (TOE) for operatively coupling to a host, wherein when said TCP/IP Offload Engine and said host are operatively coupled, said host transfers control of at least a portion of Transmission Control Protocol (TCP) connection variables to said TCP/IP Offload Engine, said TCP/IP Offload Engine updates said at least a portion of said TCP/IP Offload Engine connection variables, and said TCP/IP Offload Engine provides said at least a portion of said undated TCP connection variables to said host.
4 Assignments
Litigations
0 Petitions
Accused Products
Abstract
Aspects of the invention may provide TCP offload, which may include acquiring TCP connection variables from a host and managing at least one TCP connection using the acquired TCP connection variables. At least a portion of the acquired TCP connection variables may be updated and at least some of the updated TCP connection variables may be transferred back to the host. In an aspect of the invention, the TCP connection variables may be variables that are independent of bandwidth delay product. At least a portion of the updated TCP connection variables may be utilized by the host to process the TCP connection or another TCP connection. The host may push the variables onto the stack and the TOE may pull the variables from the stack. Also, updated TCP connection variables may be pushed on the stack by the TOE and pulled from the stack by the host.
-
Citations
50 Claims
-
1. A system for providing TCP/IP offload, comprising:
a Transmission Control Protocol/Internet Protocol (TCP/IP) offload engine (TOE) for operatively coupling to a host, wherein when said TCP/IP Offload Engine and said host are operatively coupled, said host transfers control of at least a portion of Transmission Control Protocol (TCP) connection variables to said TCP/IP Offload Engine, said TCP/IP Offload Engine updates said at least a portion of said TCP/IP Offload Engine connection variables, and said TCP/IP Offload Engine provides said at least a portion of said undated 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. A system for providing connection offload, comprising:
a network interface card (NIC) for operatively coupling to a host, wherein when said NIC and said host are operatively coupled, for a particular connection offloaded to said NIC, control of state information is split between said host and said NIC, said NIC updates at least a portion of updated connection variables for said particular connection, and said NIC unloads said at least a portion of said updated connection variables for said particular connection to said host. - View Dependent Claims (26, 27, 28)
-
29. A method for providing TCP/IP offload, 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 (30, 31, 32, 33)
-
-
34. A method for providing TCP/IP offload, 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 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 snapshot and at least said portion of said updated segment-variant variables back to said host.
-
-
35. A method for processing a Transmission Control Protocol connection, 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 (36, 37, 38, 39, 40)
-
-
41. A method for Transmission Control Protocol offload, the method comprising:
-
acquiring Transmission Control Protocol connection variables from a host; managing at least one Transmission Control Protocol connection using said acquired Transmission Control Protocol connection variables; updating at least a portion of said acquired Transmission Control Protocol connection variables; and transferring said updated at least a portion of said acquired Transmission Control Protocol connection variables to said host. - View Dependent Claims (42, 43, 44, 45)
-
-
46. A machine-readable storage, having stored thereon, a computer program having at least one code section for providing Transmission Control Protocol offload, the at least one code section being executable by a machine for causing the machine to perform steps comprising:
-
acquiring TCP connection variables from a host; managing at least one Transmission Control Protocol connection using said acquired Transmission Control Protocol connection variables; updating at least a portion of said acquired Transmission Control Protocol connection variables; and transferring said updated at least a portion of said acquired Transmission Control Protocol connection variables to said host. - View Dependent Claims (47, 48, 49, 50)
-
Specification