IP Library Granted Patent US 7,304,996
Granted Patent B1
US 7,304,996 · App. 10/813,731 · Granted Dec 4, 2007

System and method for assembling a data packet

Assignee: Extreme Networks, Inc.
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,304,996
App. No.
10/813,731
Granted
Dec 4, 2007
Kind
B1
Abstract

Disclosed is a system and method for assembling a data packet. The system can be implemented as four memory elements associated with one or more processors. The first memory element stores a sequence number and a sub-channel identifier for an incoming data packet. The second memory element stores a revised packet fragment. The third memory element stores an unrevised packet fragment. The fourth memory element stores a starting address. In the system, the starting address may be the starting address of the revised packet fragment or the unrevised packet fragment wherein the first memory element identifies portions of the fourth memory element associated with the sequence number. The one or more processors are configured to create a modified data packet by combining the unrevised packet fragments and the revised packet fragment, wherein the modified data packet is associated with the sequence number and sub-channel identifier.

Claims (33)

1. A system for assembling a data packet, the system comprising:

a first memory element for storing a sequence number and a sub-channel identifier for an incoming data packet;

a second memory element for storing one or more revised packet fragment;

a third memory element for storing one or more unrevised packet fragment;

a fourth memory element for storing a starting address, wherein the starting address may be the starting address of a revised packet fragment or the starting address of an unrevised packet fragment, wherein the first memory element identifies portions of the fourth memory element associated with the sequence number; and

one or more processors, wherein the one or more processors are configured to create a modified data packet by combining the one or more unrevised packet fragments and the one or more revised packet fragments, wherein the modified data packet is associated with the sequence number and the sub-channel identifier.

2. The system for assembling a data packet of claim 1 , wherein the one or more processors create the modified data packet from 64-bit bursts.

3. The system for assembling a data packet of claim 1 , wherein the one or more unrevised packet fragments are 64-bit words unaligned.

4. The system for assembling a data packet of claim 1 , wherein the one or more revised packet fragments are 64-bit words aligned.

5. The system for assembling a data packet of claim 1 , wherein the incoming data packet is a datagram.

6. The system for assembling a data packet of claim 1 , wherein entries in the fourth memory element are organized as a bit validity field, a size of data field, and a location of data field.

7. A method for assembling a data packet, the method comprising steps of:

storing a sequence number and a sub-channel identifier for an incoming data packet in a first memory element;

storing one or more revised packet fragment;

storing one or more unrevised packet fragment;

storing a starting address in a second memory element, wherein the starting address may be the starting address of a revised packet fragment or the starting address of an unrevised packet fragment, wherein the first memory element identifies portions of the second memory element associated with the sequence number; and

creating a modified data packet by combining the one or more unrevised packet fragments and the one or more revised packet fragments, wherein the modified data packet is associated with the sequence number and the sub-channel identifier.

8. The method for assembling a data packet of claim 7 , wherein the step of creating a modified data packet includes creating the modified data packet from 64-bit bursts.

9. The method for assembling a data packet of claim 7 , wherein the one or more unrevised packet fragments are 64-bit words unaligned.

10. The method for assembling a data packet of claim 7 , wherein the one or more revised packet fragments are 64-bit words aligned.

11. The method for assembling a data packet of claim 7 , wherein the incoming data packet is a datagram.

12. The method for assembling a data packet of claim 7 , wherein entries in the second memory element are organized as a bit validity field, a size of data field, and a location of data field.

13. A system for assembling a data packet, the system comprising:

means for storing a sequence number and a sub-channel identifier for an incoming data packet in a first memory element;

means for storing one or more revised packet fragment;

means for storing one or more unrevised packet fragment;

means for storing a starting address in a second memory element, wherein the starting address may be the starting address of a revised packet fragment or the starting address of an unrevised packet fragment, wherein the first memory element identifies portions of the second memory element associated with the sequence number; and

means for creating a modified data packet by combining the one or more unrevised packet fragments and the one or more revised packet fragments, wherein the modified data packet is associated with the sequence number and the sub-channel identifier.

14. The system for assembling a data packet of claim 13 , wherein the means for creating a modified data packet includes means for creating the modified data packet from 64-bit bursts.

15. The system for assembling a data packet of claim 13 , wherein the one or more unrevised packet fragments are 64-bit words unaligned.

16. The system for assembling a data packet of claim 13 , wherein the one or more revised packet fragments are 64-bit words aligned.

17. The system for assembling a data packet of claim 13 , wherein the incoming data packet is a datagram.

18. The system for assembling a data packet of claim 13 , wherein entries in the second memory element are organized as a bit validity field, a size of data field, and a location of data field.

Assignments (9)
RELEASE OF PATENT AND TRADEMARK SECURITY INTEREST AT REEL/FRAME NO. 46050/0546 Recorded Jul 30, 2026
From: BANK OF MONTREAL, AS AGENT
To: EXTREME NETWORKS, INC.
Reel/Frame 076081/0088 →
AMENDED SECURITY AGREEMENT Recorded Aug 18, 2023
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 064782/0971 →
RELEASE OF SECURITY INTEREST Recorded May 1, 2018
From: SILICON VALLEY BANK
To: EXTREME NETWORKS, INC.
Reel/Frame 046051/0775 →
SECURITY INTEREST Recorded May 1, 2018
From: EXTREME NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 046050/0546 →
THIRD AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 044639/0300 →
SECOND AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Jul 14, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 043200/0614 →
AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2016
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 040521/0762 →
SECURITY AGREEMENT Recorded Jul 27, 2015
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 036189/0284 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2004
From: SWENSON, ERIK R.; YOUNG, CHRISTOPHER J.
To: EXTREME NETWORKS, INC.
Reel/Frame 014775/0749 →