IP Library Granted Patent US 7,411,959
Granted Patent B2
US 7,411,959 · App. 10/651,459 · Granted Aug 12, 2008

System and method for handling out-of-order frames

View Patent ↗
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 7,411,959
App. No.
10/651,459
Granted
Aug 12, 2008
Kind
B2
Abstract

Aspects of the invention may be found in a method and system for handling out-of-order frames. In one embodiment, a method includes, for example, one or more of the following: receiving an out-of-order frame via a network interface card (NIC); placing data of the out-of-order frame in a host memory; and managing information relating to one or more holes in a receive window.

Claims (28)

1. A method for handling out-of-order frames, comprising the steps of:

(a) receiving an out-of-order frame via a network subsystem;

(b) placing data of the out-of-order frame in a host memory;

(c) managing information relating to one or more holes resulting from the out-of-order frame in a receive window; and

(d) setting a programmable limit with respect to a number of holes allowed in the receive window.

2. The method according to claim 1 , wherein the out-of-order frame is received via a TCP offload engine (TOE) of the network subsystem or a TCP-enabled Ethernet controller (TEEC) of the network subsystem.

3. The method according to claim 1 , wherein the network subsystem does not store the out-of-order frame on an onboard memory.

4. The method according to claim 3 , wherein the network subsystem does not store one or more missing frames relating to the out-of-order frame.

5. The method according to claim 1 , wherein the network subsystem comprises a network interface card (NIC).

6. The method according to claim 1 , wherein step (b) comprises placing the data of the out-of-order frame in the host memory if the out-of-order frame is determined to be inside the receive window.

7. The method according to claim 1 , further comprising:

dropping the out-of-order frame if the out-of-order frame is determined not to be inside the receive window.

8. The method according to claim 1 , further comprising:

placing a portion of the data of the out-of-order frame in the host memory, the portion of the data being inside the receive window.

9. The method according to claim 1 , wherein step (c) comprises one or more of the following:

storing information relating to a new hole created by the placement of the data of the out-of-order frame,

updating information relating to an existing hole modified by the placement of the data of the out-of-order frame, and

deleting information relating to a plugged hole created by the placement of the data of the out-of-order frame.

10. The method according to claim 9 ,

wherein the stored information resides on the network subsystem,

wherein the updated information resides on the network subsystem, and

wherein the deleted information resided on the network subsystem.

11. The method according to claim 1 , wherein the managed information resides on the network subsystem.

12. The method according to claim 1 , further comprising:

updating the receive window based upon the placement of the data of the out-of-order frame.

13. The method according to claim 1 , wherein step (b) comprises mapping TCP space into host buffer space.

14. The method according to claim 1 , wherein the network subsystem comprises a memory whose memory usage scales with a number of holes in the receive window.

15. The method according to claim 1 , wherein the network subsystem comprises a memory whose memory usage does not scale with a number of out-of-order frames received.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER PREVIOUSLY RECORDED AT REEL: 047357 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048674/0834 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED ON REEL 047195 FRAME 0658. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047357/0302 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047195/0658 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2004
From: ELZUR, URI
To: BROADCOM CORPORATION
Reel/Frame 014358/0034 →