IP Library Granted Patent US 7,685,121
Granted Patent B2
US 7,685,121 · App. 10/268,178 · Granted Mar 23, 2010

Structure and method for maintaining ordered linked lists

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,685,121
App. No.
10/268,178
Granted
Mar 23, 2010
Kind
B2
Abstract

A hierarchically-organized linked list structure have a first level comprised of sections of sequentially-ordered segments, and a second level comprised of representatives of each of said sections at the first level. A method for maintaining the hierarchically-organized linked list structure to facilitate segment insertion, retrieval and removal.

Claims (32)

1. In a packet-based communication system comprising a processor, a method for maintaining a linked list comprised of members ordered with respect to a predetermined ordering relationship, each member corresponding to a packet, for reassembling received packets into a message, the method comprising:

maintaining a plurality of first linked lists decoupled from each other, each comprised of a plurality of members continuously ordered with respect to said ordering relationship;

maintaining a second linked list different from any of the plurality of first linked lists, the second linked list comprised of a plurality of members, each of which includes starting and ending sequence numbers of a respective one of said plurality of first linked lists; and

walking through one or more members of the second linked list and comparing by the processor a starting sequence number of a segment to at least one of the starting and ending sequence numbers stored in each member of the second linked list to determine an appropriate first linked list from which to insert or remove the segment,

wherein each member of said second list is comprised of: either a forward link to a next succeeding member of said second list or a null forward link; and a field representing the relative relationship of said respective one of said first lists with respect to said ordering relationship.

2. The method of claim 1 wherein, in each of said first lists, each member is comprised of a load and either a forward link to a next succeeding member of said first list or a null forward link.

3. The method of claim 2 wherein, in each of said members of said first list, said forward link is comprises a null forward link in the absence of a next succeeding member of said first list.

4. The method of claim 1 wherein each member of said second list is comprised of either a forward link to a next succeeding member of said second list or a null forward link.

5. The method of claim 4 wherein, in each of said members of said second list, said forward link is comprises a null forward link in the absence of a next succeeding member of said second list.

6. The method of claim 4 wherein each member of said second list is further comprised of a forward link to a first member of said respective one of said first lists.

7. The method of claim 4 wherein each member of said second list is further comprised of a backward link to a last member of said respective one of said first lists.

8. The method of claim 4 wherein each member of said second list is further comprised of a starting sequence number of said first member of said respective one of said first lists.

9. The method of claim 4 wherein each member of said second list is further comprised of an ending sequence number of said last member of said respective one of said first lists.

10. The method of claim 1 wherein each member of said first list is comprised of:

a forward link to a next succeeding member of said first list or a null forward link; and

a field representing the relative relationship of said first lists with respect to said ordering relationship.

11. The method of claim 1 further comprising:

maintaining a control block comprising a forward link to a first member of said second list.

12. The method of claim 11 wherein said control block further comprises a backward link to a last member of said second list.

13. In a digital packet-based data processing system having a memory component, an ordered linked list structure of members resident in said memory component, each member corresponding to a packet, the ordered linked list structure for reassembling received packets into a message, the ordered linked list structure comprising:

a plurality of first ordered linked lists decoupled from each other, wherein, in each of said first ordered linked lists, the members are ordered in a continuous sequence, each member comprising a forward link to a next succeeding member of said first list or a null forward link; and

a second ordered linked list different from any of the plurality of the first ordered linked list, the second ordered linked list having a plurality of members, wherein each member contains starting and ending sequence numbers of the a respective one of said plurality of first ordered linked lists, the starting and ending sequence numbers usable to determine an appropriate first ordered linked list from which to insert or remove a segment,

wherein each member of said second list is comprised of a forward link to a next succeeding member of said second list or a null forward link.

14. The structure of claim 13 wherein, in each of said member members of said first list, said forward link is has a null forward link in the absence of a next succeeding member of said first list.

15. The structure of claim 13 wherein, in each of said member members of said second list, said forward link is has a null forward link in the absence of a next succeeding member of said second list.

16. The structure of claim 13 wherein each member of said second list is further comprised of a forward link to a first member of said respective one of said first lists.

17. The structure of claim 13 wherein each member of said second list is further comprised of a backward link to a last member of said respective one of said first lists.

18. The structure of claim 13 wherein each member of said second list is further comprised of a starting sequence number of said first member of said respective one of said first lists.

19. The structure of claim 13 wherein each member of said second list is further comprised of an ending sequence number of said last member of said respective one of said first lists.

20. The structure of claim 13 further comprising:

a control block comprising a forward link to a first member of said second list.

21. The structure of claim 20 wherein said control block further comprises a backward link to a last member of said second list.

Assignments (11)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: EMULEX CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 036942/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2014
From: EMULEX DESIGN AND MANUFACTURING CORPORATION
To: EMULEX CORPORATION
Reel/Frame 032087/0842 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2004
From: EMULEX CORPORATION
To: EMULEX DESIGN & MANUFACTURING CORPORATION
Reel/Frame 014486/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2003
From: TREBIA NETWORKS, INC.
To: EMULEX CORPORATION
Reel/Frame 014098/0412 →
SECURITY AGREEMENT Recorded Jul 9, 2003
From: TREBIA NETWORKS INCORPORATED
To: SYNOPSYS, INC.
Reel/Frame 013788/0964 →
SECURITY AGREEMENT Recorded May 12, 2003
From: TREBIA NETWORKS, INC.
To: ATLAS VENTURE FUND V, L.P.; ATLAS VENTURE PARELLEL FUND V-A C.V.; ATLAS VENTURE PARALLEL FUND V-B C.V.; ATLAS VENTURE ENTREPRENEURS' FUND V, L.P.; KODIAK VENTURE PARTNERS, L.P.; RAZA FOUNDRIES, INC.; RFI EMPLOYEE COMPENSATION FUND, LLC; VANTAGEPOINT VENTURE PARTNERS III(Q) L.P.; VANTAGEPOINT VENTURE PARTNERS III, L.P.; VANTAGEPOINT VENTURE PARTNERS IV(Q) L.P.; VANTAGEPOINT VENTURE PARTNERS IV, L.P.; VANTAGEPOINT VENTURE PARTNERS IV PRINCIPALS FUND, L.P.
Reel/Frame 014050/0276 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2002
From: BROWN, ROBIN L.; LINDBORG, CARL J.; KUNG, HSIANG-TSUNG; SREEKANTH, JONNAVITHULA
To: TREBIA NETWORKS INCORPORATED
Reel/Frame 013379/0828 →