IP Library › Granted Patent US 11,570,098
Granted Patent B2
US 11,570,098 · App. 15/809,896 · Granted Jan 31, 2023

Systems, apparatuses and methods for cooperating routers

Inventor: Sergey Ignatchenko (Innsbruck, AT)
Assignee: Six Impossible Things Before Breakfast Limited
H04L45/74H04L43/0852H04L43/10H04L45/121H04L45/72H04L47/2416H04L47/32H04L69/16
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 11,570,098
App. No.
15/809,896
Granted
Jan 31, 2023
Kind
B2
Abstract

Methods and systems are provided for cooperating routers in communication networks. The cooperating routers conduct a handshake to exchange information with respect to “cooperation types” which they are capable of performing and/or are configured to perform. In an exemplary “emergency connection” cooperation type, one cooperating router may use the ISP connection of another cooperating router to send and receive packets. In an exemplary “bandwidth sharing” cooperation type, one cooperating router may make excess bandwidth available for use by other cooperating routers. In an exemplary “latency optimization” cooperation type, one cooperating router may use another cooperating router to transmit duplicates of packets or to implement suppression techniques.

Claims (122)

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

receiving, by a first routing device comprising a plurality of interfaces, a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the first routing device via the first interface comprises a plurality of fields;

analyzing, by the first routing device, one or more packet characteristics of a received packet of the plurality of packets;

determining, by the first routing device, that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generating, by the first routing device, a copy-packet of the latency-critical packet;

identifying, by the first routing device, a target address field in the plurality of fields of the latency-critical packet;

changing, by the first routing device, a content of the target address field of the copy-packet to reflect an address of a second routing device;

transmitting, by the first routing device, the latency-critical packet to a target device via a second interface; and

transmitting, by the first routing device, the copy-packet to the second routing device via a third interface.

2. The method of claim 1 , further comprising establishing, by the first routing device, a latency-critical session in response to identifying the latency-critical packet.

3. The method of claim 1 , further comprising transmitting, by the first routing device, a request for a service for packet transmission to the second routing device via the third interface.

4. The method of claim 3 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

5. The method of claim 3 , wherein transmitting the copy-packet to the second routing device via the third interface occurs after receiving a positive response to the request from the second routing device.

6. The method of claim 1 , further comprising establishing a logical connection between the first routing device and the second routing device.

7. The method of claim 1 , wherein the target device is a proxy device.

8. The method of claim 1 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

9. The method of claim 1 , further comprises generating, by the first routing device using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the first routing device to the target device.

10. A method of managing packets, the method comprising:

receiving, by a first routing device comprising a plurality of interfaces, a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the first routing device via the first interface comprises a plurality of fields;

analyzing, by the first routing device, one or more packet characteristics of a received packet of the plurality of packets;

determining, by the first routing device, that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generating, by the first routing device, a copy-packet of the latency-critical packet;

identifying, by the first routing device, a source address field in the plurality of fields of the latency-critical packet;

changing, by the first routing device, a content of the source address field of the copy-packet to reflect an address of the first routing device;

transmitting, by the first routing device, the latency-critical packet to a target device via a second interface; and

transmitting, by the first routing device, the copy-packet to a second routing device via a third interface.

11. The method of claim 10 , further comprising establishing, by the first routing device, a latency-critical session in response to identifying the latency-critical packet.

12. The method of claim 10 , further comprising transmitting, by the first routing device, a request for a service for packet transmission to the second routing device via the third interface, wherein transmitting the copy-packet to the second routing device via the third interface occurs after receiving a positive response to the request from the second routing device.

13. The method of claim 12 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

14. The method of claim 10 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

15. The method of claim 10 , further comprises generating, by the first routing device using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the first routing device to the target device.

16. A method of managing packets, the method comprising:

receiving, by a first routing device comprising a plurality of interfaces, a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the first routing device via the first interface comprises a plurality of fields;

analyzing, by the first routing device, one or more packet characteristics of a received packet of the plurality of packets;

determining, by the first routing device, that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generating, by the first routing device, a copy-packet of the latency-critical packet;

identifying, by the first routing device, a target port field in the plurality of fields of the latency-critical packet;

changing, by the first routing device, a content of the target port field of the copy-packet to reflect a target port of a second routing device;

transmitting, by the first routing device, the latency-critical packet to a target device via a second interface; and

transmitting, by the first routing device, the copy-packet to the second routing device via a third interface.

17. The method of claim 16 , further comprising establishing, by the first routing device, a latency-critical session in response to identifying the latency-critical packet.

18. The method of claim 16 , further comprising transmitting, by the first routing device, a request for a service for packet transmission to the second routing device via the third interface, wherein transmitting the copy-packet to the second routing device via the third interface occurs after receiving a positive response to the request from the second routing device.

19. The method of claim 18 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

20. The method of claim 16 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

21. The method of claim 16 , further comprises generating, by the first routing device using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the first routing device to the target device.

22. A method of managing packets, the method comprising:

receiving, by a first routing device comprising a plurality of interfaces, a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the first routing device via the first interface comprises a plurality of fields;

analyzing, by the first routing device, one or more packet characteristics of a received packet of the plurality of packets;

determining, by the first routing device, that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generating, by the first routing device, a copy-packet of the latency-critical packet;

identifying, by the first routing device, a source port field in the plurality of fields of the latency-critical packet;

changing, by the first routing device, a content of the source port field of the copy-packet to reflect a port of the first routing device;

transmitting, by the first routing device, the latency-critical packet to a target device via a second interface; and

transmitting, by the first routing device, the copy-packet to a second routing device via a third interface.

23. The method of claim 22 , further comprising establishing, by the first routing device, a latency-critical session in response to identifying the latency-critical packet.

24. The method of claim 22 , further comprising transmitting, by the first routing device, a request for a service for packet transmission to the second routing device via the third interface, wherein transmitting the copy-packet to the second routing device via the third interface occurs after receiving a positive response to the request from the second routing device.

25. The method of claim 24 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

26. The method of claim 22 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

27. The method of claim 22 , further comprises generating, by the first routing device using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the first routing device to the target device.

28. A routing device comprising:

a plurality of interfaces, wherein the routing device is configured to receive a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the routing device via the first interface comprises a plurality of fields; and

a process or configured to:

analyze one or more packet characteristics of a received packet of the plurality of packets;

determine that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generate a copy-packet of the latency-critical packet;

identify a target address field in the plurality of fields of the latency-critical packet;

change a content of the target address field of the copy-packet to reflect an address of a second routing device;

transmit the latency-critical packet to a target device via a second interface; and

transmit the copy-packet to the second routing device via a third interface.

29. The routing device of claim 28 , wherein the processor is further configured to establish a latency-critical session in response to identifying the latency-critical packet.

30. The routing device of claim 28 , wherein the processor is further configured to transmit a request for a service for packet transmission to the second routing device via the third interface.

31. The routing device of claim 30 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

32. The routing device of claim 30 , wherein the processor is configured to transmit the copy-packet to the second routing device via the third interface after the processor receives a positive response to the request from the second routing device.

33. The routing device of claim 28 , wherein the processor is further configured to establish a logical connection between the first routing device and the second routing device.

34. The routing device of claim 28 , wherein the target device is a proxy device.

35. The routing device of claim 28 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

36. The routing device of claim 28 , wherein the processor is further configured to generate, using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the routing device to the target device.

37. A routing device comprising:

a plurality of interfaces, wherein the routing device is configured to receive a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the routing device via the first interface comprises a plurality of fields; and

a processor configured to:

analyze one or more packet characteristics of a received packet of the plurality of Packets;

determine that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generate a copy-packet of the latency-critical packet;

identify a source address field in the plurality of fields of the latency-critical packet;

change a content of the source address field of the copy-packet to reflect an address of the first routing device;

transmit the latency-critical packet to a target device via a second interface; and

transmit the copy-packet to a second routing device via a third interface.

38. The routing device of claim 37 , wherein the processor is further configured to establish a latency-critical session in response to identifying the latency-critical packet.

39. The routing device of claim 37 , wherein the processor is further configured to transmit a request for a service for packet transmission to the second routing device via the third interface, wherein the processor is configured to transmit the copy-packet to the second routing device via the third interface after the processor receives a positive response to the request from the second routing device.

40. The routing device of claim 39 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

41. The routing device of claim 37 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

42. The routing device of claim 37 , wherein the processor is further configured to generate, using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the routing device to the target device.

43. A routing device comprising:

a plurality of interfaces, wherein the routing device is configured to receive a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the routing device via the first interface comprises a plurality of fields; and

a processor configured to:

analyze one or more packet characteristics of a received packet of the plurality of packets;

determine that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generate a copy-packet of the latency-critical packet;

identify a target port field in the plurality of fields of the latency-critical packet;

change a content of the target port field of the copy-packet to reflect a target port of a second routing device;

transmit the latency-critical packet to a target device via a second interface; and

transmit the copy-packet to the second routing device via a third interface.

44. The routing device of claim 43 , wherein the processor is further configured to establish a latency-critical session in response to identifying the latency-critical packet.

45. The routing device of claim 43 , wherein the processor is further configured to transmit a request for a service for packet transmission to the second routing device via the third interface, wherein the processor is configured to transmit the copy-packet to the second routing device via the third interface after the processor receives a positive response to the request from the second routing device.

46. The routing device of claim 45 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

47. The routing device of claim 43 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

48. The routing device of claim 43 , wherein the processor is further configured to generate, using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the routing device to the target device.

49. A routing device comprising:

a plurality of interfaces, wherein the routing device is configured to receive a plurality of packets from a source device via a first interface, wherein each of the plurality of packets received by the routing device via the first interface comprises a plurality of fields; and

a processor configured to:

analyze one or more packet characteristics of a received packet of the plurality of packets;

determine that the received packet is a latency-critical packet based on the analysis of the one or more packet characteristics of the received packet;

generate a copy-packet of the latency-critical packet;

identify a source port field in the plurality of fields of the latency-critical packet;

change a content of the source port field of the copy-packet to reflect a port of the routing device;

transmit the latency-critical packet to a target device via a second interface; and

transmit the copy-packet to a second routing device via a third interface.

50. The routing device of claim 49 , wherein the processor is further configured to establish a latency-critical session in response to identifying the latency-critical packet.

51. The routing device of claim 49 , wherein the processor is further configured to transmit a request for a service for packet transmission to the second routing device via the third interface, wherein the processor is configured to transmit the copy-packet to the second routing device via the third interface after the processor receives a positive response to the request from the second routing device.

52. The routing device of claim 51 , wherein the request to the second routing device for the service for packet transmission comprises an advertisement message.

53. The routing device of claim 49 , wherein the copy-packet comprises content instructing the second routing device to transmit the copy-packet to the target device.

54. The routing device of claim 49 , wherein the processor is further configured to generate, using a cryptographic algorithm, a cryptographic signature for the copy-packet that uniquely identifies the routing device to the target device.

Assignments (4)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED AT REEL: 044098 FRAME: 0662. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 14, 2020
From: IGNATCHENKO, SERGEY
To: OLOGN TECHNOLOGIES AG
Reel/Frame 051932/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2017
From: IGNATCHENKO, SERGEY
To: OLOGN TECHNOLOGIES
Reel/Frame 044098/0662 →
Continuity (7)
Continuation In Part 15640565 · Jul 2, 2017
Provisional Application 62526116 · Jun 28, 2018
Provisional Application 62421193 · Nov 11, 2016
Provisional Application 62421104 · Nov 11, 2016
Provisional Application 62376073 · Aug 17, 2016
Provisional Application 62358341 · Jul 5, 2016
Related Publication 20180139131A1 · May 17, 2018
Cited By (1)
US 12,603,838