IP Library › Granted Patent US 10,841,224
Granted Patent B2
US 10,841,224 · App. 15/951,853 · Granted Nov 17, 2020

Systems, apparatuses and methods for network packet management

Inventor: Sergey Ignatchenko (Innsbruck, AT)
Assignee: OLogN Technologies AG
H04L45/745H04L1/00H04L43/087H04L43/0864H04L43/0894H04L45/24H04L45/302H04L45/3065H04L45/70H04L45/741H04L47/2416H04L47/56
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 10,841,224
App. No.
15/951,853
Granted
Nov 17, 2020
Kind
B2
Abstract

Methods and systems are provided for latency-oriented router. An incoming packet is received on a first interface. The type of the incoming packet is determined. Upon the detection that the incoming packet belongs to latency-critical traffic, the incoming packet is duplicated into one or more copies. Subsequently, the duplicated copies are sent to a second interface in a delayed fashion where the duplicated copies are spread over a time period. The duplicated copies are received and processed at the second interface.

Claims (44)

1. A method of managing data packets, the method comprising:

receiving, by a routing device, a plurality of packets from a computing device;

splitting, by the routing device, a first packet of the plurality of packets into two or more fragments;

generating, by the routing device, a check-fragment comprising an XOR of each fragment of the first packet; and

transmitting, by the routing device, each fragment of the two or more fragments and the check-fragment to a target device, wherein the routing device comprises at least a first interface and a second interface each configured to communicatively couple the routing device to the target device, and wherein the routing device transmits at least a first fragment of the two or more fragments or the check fragment via the first interface and a second fragment of the two or more fragments or the check fragment via the second interface.

2. The method of claim 1 , further comprising transmitting the two or more fragments, the fragment-copies of the two or more fragments, the check fragment, and the check-fragment copy to the target device via the first and the second interface, wherein the routing device transmits at least a first fragment of the two or more fragments, at least a first fragment-copy, the check-fragment, or the check-fragment copy via the first interface and at least a second fragment of the two or more fragments, at least a second fragment copy, the check-fragment or the check-fragment copy via the second interface.

3. The method of claim 1 , wherein splitting the first packet into the two or more fragments is performed such that each fragment of the two or more fragments is a same predetermined size.

4. The method of claim 3 , further comprising:

determining, by the routing device, that a first fragment of the two or more fragments is smaller than the predetermined size; and

adding, by the routing device, a set of padding bits to the first fragment to make the first fragment the predetermined size.

5. The method of claim 1 , further comprising:

generating, by the routing device, a fragment-copy for each of the two or more fragments and a check-fragment copy for the check-fragment; and

transmitting the fragment-copies and the check-fragment copy to the target device.

6. The method of claim 5 , further comprising delaying, by the routing device, transmission of the fragment-copy and the check-fragment copy with respect to the transmission of respective fragment and check-fragment according to a time period.

7. The method of claim 1 , wherein the first packet is a latency-critical packet.

8. A routing device comprising:

a memory configured to store a queue of a plurality of packets received from a computing device;

at least a first interface and a second interface each configured to communicatively couple the routing device to a target device; and

a processor configured to:

split a first packet of the plurality of packets into two or more fragments;

generate a check-fragment comprising an XOR of each fragment of the first packet; and

transmit each fragment of the two or more fragments and the check-fragment to the target device, wherein the routing device is configured to transmit at least a first fragment of the two or more fragments or the check fragment via the first interface and a second fragment of the two or more fragments or the check fragment via the second interface.

9. The routing device of claim 8 , wherein the processor is further configured to transmit the two or more fragments, the fragment-copies of the two or more fragments, the check fragment, and the check-fragment copy to the target device via the first and the second interface, wherein the processor transmits at least a first fragment of the two or more fragments, at least a first fragment-copy, the check-fragment, or the check-fragment copy via the first interface and at least a second fragment of the two or more fragments, at least a second fragment copy, the check-fragment or the check-fragment copy via the second interface.

10. The routing device of claim 8 , wherein the processor is configured to split the first packet into the two or more fragments such that each fragment of the two or more fragments is a same predetermined size.

11. The routing device of claim 10 , wherein the processor is further configured to:

determine that a first fragment of the two or more fragments is smaller than the predetermined size; and add a set of padding bits to the first fragment to make the first fragment the predetermined size.

12. The routing device of claim 8 , wherein the processor is further configured to:

generate a fragment-copy for each of the two or more fragments and a check-fragment copy for the check-fragment; and

transmit the fragment-copies and the check-fragment copy to the target device.

13. The routing device of claim 12 , wherein the processor is further configured to delay transmission of the fragment-copy and the check-fragment copy with respect to the transmission of respective fragment and check-fragment according to a time period.

14. The routing device of claim 8 , wherein the first packet is a latency-critical packet.

15. A method of reassembling a packet that was split into fragments when less than all of the fragments are received, the method comprising:

receiving, by a routing device, all but one of two or more fragments split from a first packet, wherein at least one of the two or more fragments is received via a first interface;

receiving, by the routing device, a check-fragment, wherein the check-fragment comprises an XOR of each of the two or more fragments split from the first packet, and wherein the check-fragment is received via a second interface; and

reassembling, by the routing device, the first packet from all but one of the two or more fragments and the received check-fragment, wherein reassembling the first packet comprises performing an XOR on the received all but one of the two or more fragments and the check-fragment.

16. The method of claim 15 , wherein each of the two or more fragments are a same predetermined size.

17. A routing device for reassembling a packet that was split into fragments when less than all of the fragments are received by the routing device, the routing device comprising:

a memory configured to store a queue of a plurality of fragments received from a computing device; and

a processor configured to:

receive all but one of two or more fragments split from a first packet, wherein at least one of the two or more fragments is received via a first interface;

receive a check-fragment, wherein the check-fragment comprises an XOR of each of the two or more fragments split from the first packet, and wherein the check-fragment is received via a second interface; and

reassemble the first packet from all but one of the two or more fragments and the received check-fragment,

wherein to reassemble the first packet, the processor is configured to perform an XOR on the received all but one of the two or more fragments and the check-fragment.

18. The routing device of claim 17 , wherein each of the two or more fragments are a same predetermined size.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED ON REEL 060221 FRAME 0806. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 10, 2023
From: OLOGN TECHNOLOGIES AG
To: SIX IMPOSSIBLE THINGS BEFORE BREAKFAST LIMITED
Reel/Frame 063602/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2022
From: OLOGN TECHNOLOGIES AG
To: SIX IMPOSSIBLE THINGS BEFORE BREAKFAST
Reel/Frame 060221/0806 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2018
From: IGNATCHENKO, SERGEY
To: OLOGN TECHNOLOGIES AG
Reel/Frame 045533/0391 →
Continuity (8)
Continuation 15883917 · Jan 30, 2018
Continuation 15846680 · Dec 19, 2017
Continuation 15640565 · Jul 2, 2017
Provisional Application 62358341 · Jul 5, 2016
Provisional Application 62376073 · Aug 17, 2016
Provisional Application 62421193 · Nov 11, 2016
Provisional Application 62526116 · Jun 28, 2017
Related Publication 20180234341A1 · Aug 16, 2018
Cited By (3)
US 12,212,492 US 12,238,003 US 12,700,945