IP Library Granted Patent US 8,913,618
Granted Patent B2
US 8,913,618 · App. 13/337,717 · Granted Dec 16, 2014

Reordering packets

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 8,913,618
App. No.
13/337,717
Granted
Dec 16, 2014
Kind
B2
Abstract

There are disclosed processes and apparatus for reordering packets. The system includes a plurality of source processors that transmit the packets to a destination processor via multiple communication fabrics. The source processors and the destination processor are synchronized together. Time stamp logic at each source processor operates to include a time stamp parameter with each of the packets transmitted from the source processors. The system also includes a plurality of memory queues located at the destination processor. An enqueue processor operates to store a memory pointer and an associated time stamp parameter for each of the packets received at the destination processor in a selected memory queue. A dequeue processor determines a selected memory pointer associated with a selected time stamp parameter and operates to process the selected memory pointer to access a selected packet for output in a reordered packet stream.

Claims (26)

1. A system comprising:

a source processor; and

a memory configured to communicate with the source processor, the memory having instructions stored thereon that, in response to being executed, cause the source processor to perform operations comprising:

assigning a time stamp and a priority value to a plurality of packets, the time stamp comprising a transmission latency parameter and a current time for at least one packet of the plurality of packets;

accounting for transmission latency based on the transmission latency parameter for the at least one packet, the accounting comprising updating the time stamp for the at least one packet based on the current time and the transmission latency parameter for the at least one packet; and

transmitting the plurality of packets through a plurality of communication fabrics to a destination processor configured to:

determine order information based on the time stamp and the priority value, and

output a data stream in response to an instant time stamp matching the updated time stamp for the at least one packet.

2. The system of claim 1 wherein the updating the time stamp for the at least one packet based on the transmission latency parameter for the at least one packet comprises adding the transmission latency parameter for the at least one packet to the current time for the at least one packet.

3. The system of claim 1 , wherein the accounting for the transmission latency for at least one packet of the plurality of packets comprises receiving a time stamp indicating a time the at least one packet was transmitted adjusted for transmission latency time.

4. A method, comprising:

assigning, by a source processor, a time stamp and a priority value to a plurality of packets, the time stamp comprises a transmission latency parameter and a current time for at least one packet of the plurality of packets;

accounting for transmission latency based on the transmission latency parameter for the at least one packet, the accounting comprising updating the time stamp for the at least one packet based on the current time and the transmission latency parameter for the at least one packet; and

transmitting, by the source processor, the plurality of packets through a plurality of communication fabrics to a destination processor configured to:

determine order information based on the time stamp and the priority value, and

output a data stream in response to an instant time matching the updated time stamp for the at least one packet.

5. The method of claim 4 , wherein the updating the time stamp for the at least one packet based on the transmission latency parameter for the at least one packet comprises adding the transmission latency parameter for the at least one packet to the current time for the at least one packet.

6. The method of claim 4 , wherein the accounting for the transmission latency for at least one packet of the plurality of packets comprises receiving a time stamp indicating a time the at least one packet was transmitted adjusted for transmission latency time.

7. A non-transitory tangible computer-readable medium having stored thereon computer-executable instructions that, in response to execution by a computing device, cause the computing device to perform operations comprising:

assigning a time stamp and a priority value to a plurality of packets, the time stamp comprises a transmission latency parameter and a current time for at least one packet of the plurality of packets;

accounting for transmission latency based on the transmission latency parameter for the at least one packet, the accounting comprising updating the time stamp for the at least one packet based on the current time and the transmission latency parameter for the at least one packet; and

transmitting the plurality of packets through a plurality of communication fabrics to a destination processor configured to:

determine order information based on the time stamp and the priority value, and

output a data stream responsive to an instant time matching the updated time stamp for the at least one packet.

8. The medium of claim 7 wherein the updating the time stamp for the at least one packet based on the transmission latency parameter for the at least one packet comprises adding the transmission latency parameter for the at least one packet to the current time for the at least one packet.

9. The medium of claim 7 , wherein the accounting for the transmission latency for at least one packet of the plurality of packets comprises receiving a time stamp indicating a time the at least one packet was transmitted adjusted for transmission latency time.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 056981 FRAME: 0631. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 16, 2022
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED BROADBAND, INC.
Reel/Frame 059907/0563 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 054443 FRAME: 0958. ASSIGNOR(S) HEREBY CONFIRMS THE LICENSE. Recorded Feb 4, 2021
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED BROADBAND, INC.
Reel/Frame 056981/0631 →
LICENSE Recorded Nov 5, 2020
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED SOLUTIONS, INC.
Reel/Frame 054443/0958 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2020
From: INTELLECTUAL VENTURES ASSETS 135 LLC
To: COMMWORKS SOLUTIONS, LLC
Reel/Frame 051463/0138 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2019
From: MINERAL LASSEN LLC
To: INTELLECTUAL VENTURES ASSETS 135 LLC
Reel/Frame 050886/0611 →
MERGER Recorded Nov 12, 2015
From: BUNSON BELL, LIMITED LIABILITY COMPANY
To: MINERAL LASSEN LLC
Reel/Frame 037027/0735 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2012
From: INTERNET MACHINES CORP.
To: BUNSON BELL, LIMITED LIABILITY COMPANY
Reel/Frame 027470/0494 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2011
From: ALFANO, VIC
To: INTERNET MACHINES CORPORATION
Reel/Frame 027447/0331 →