IP Library Granted Patent US 10,333,651
Granted Patent B2
US 10,333,651 · App. 15/818,171 · Granted Jun 25, 2019

Packet coding based network communication

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,333,651
App. No.
15/818,171
Filed
Nov 20, 2017
Granted
Jun 25, 2019
Kind
B2
Art Unit
2111
USPC
714/776
Abstract

A method for data communication between a first node and a second node over a data path includes forming one or more redundancy messages from data messages at the first node using an error correcting code and transmitting first messages from the first node to the second node. The first messages include the data messages and the redundancy messages. The method includes, receiving, at the first node, second messages indicative of a rate of arrival at the second node of the messages transmitted from the first node, and of successful and unsuccessful delivery of the messages transmitted from the first node to the second node. A first transmission limit and a second transmission limit are maintained according to the received second messages. Transmission of first messages from the first node to the second node is inhibited according to the maintained first transmission limit, and according to the second transmission limit.

Claims (28)

1. A method for data communication between a first node and a second node over a data path coupling the first node and the second node, the method comprising:

forming one or more redundancy messages from data messages at the first node using an error correcting code;

transmitting first messages from the first node to the second node over the data path, the transmitted first messages including the data messages and the one or more redundancy messages;

receiving second messages at the first node from the second node, the second messages being indicative of a rate of arrival at the second node of the first messages transmitted from the first node, and of successful and unsuccessful delivery of the first messages transmitted from the first node to the second node;

maintaining a first transmission limit according to the received second messages;

maintaining a second transmission limit according to the received second messages, wherein maintaining the second transmission limit comprises maintaining a window size; and

limiting transmission of additional messages from the first node to the second node according to the first transmission limit, and according to the second transmission limit, wherein limiting transmission of the additional messages according to the second transmission limit includes limiting a number of the additional messages not yet acknowledged as successfully delivered to the second node according to the window size.

2. The method of claim 1 wherein maintaining the first transmission limit comprises maintaining a transmission rate limit, and wherein limiting transmission of the additional messages according to the first transmission limit includes limiting a transmission rate of said additional messages.

3. The method of claim 1 wherein the window size comprises a congestion control window size.

4. The method of claim 1 wherein receiving the second messages indicative of the rate of arrival comprises receiving acknowledgement messages from the second node, wherein a rate of arrival of said acknowledgment messages is indicative of the rate of arrival of the messages at the second node.

5. The method of claim 4 wherein the rate of arrival of the acknowledgement includes a rate of acknowledgement of packets.

6. The method of claim 1 wherein the second messages include third messages indicative of the rate of arrival and fourth messages indicative of successful and unsuccessful delivery of the first messages.

7. The method of claim 1 wherein the error correcting code is a linear error correcting code.

8. A communication apparatus comprising a first device having an interface for passing messages to and from a second device over a communication path coupling the first device to second device, the first device further comprising communication controller configured to

form one or more redundancy messages from data messages at the first node using an error correcting code;

transmit first messages from the first node to the second node over the data path, the transmitted first messages including the data messages and the one or more redundancy messages;

receive second messages at the first node from the second node, the second messages being indicative of a rate of arrival at the second node of the first messages transmitted from the first node, and of successful and unsuccessful delivery of the first messages transmitted from the first node to the second node;

maintain a first transmission limit according to the received second messages;

maintain a second transmission limit according to the received second messages, wherein maintaining the second transmission limit comprises maintaining a window size; and

limit transmission of additional messages from the first node to the second node according to the first transmission limit, and according to the second transmission limit, wherein limiting transmission of the additional messages according to the second transmission limit includes limiting a number of the additional messages not yet acknowledged as successfully delivered to the second node according to the window size.

9. The communication apparatus of claim 8 wherein maintaining the first transmission limit comprises maintaining a transmission rate limit, and wherein limiting transmission of the additional messages according to the first transmission limit includes limiting a transmission rate of said additional messages.

10. The communication apparatus of claim 8 wherein the window size comprises a congestion control window size.

11. The communication apparatus of claim 8 wherein receiving third messages indicative of the rate of arrival comprises receiving acknowledgement messages from the second node, wherein a rate of arrival of said acknowledgment messages is indicative of the rate of arrival of the first messages at the second node.

12. The communication apparatus of claim 11 wherein the rate of arrival of the acknowledgement includes a rate of acknowledgement of packets.

13. The communication apparatus of claim 8 wherein the second messages include third messages indicative of the rate of arrival and fourth messages indicative of successful and unsuccessful delivery of the first messages.

14. The communication apparatus of claim 8 wherein the error correcting code is a linear error correcting code.

15. The method of claim 1 wherein a single message of the second messages is indicative of the rate of arrival at the second node of the first messages transmitted from the first node, and of successful and unsuccessful delivery of the first messages transmitted from the first node to the second node.

16. The communication apparatus of claim 8 wherein a single message of the second messages is indicative of the rate of arrival at the second node of the first messages transmitted from the first node, and of successful and unsuccessful delivery of the first messages transmitted from the first node to the second node.

Assignments (5)
SECURITY INTEREST Recorded Apr 6, 2026
From: POWERBRIDGE IP PROTECTION LLC
To: UNITY MASTER LLC SERIES XIX
Reel/Frame 075366/0001 →
CHANGE OF NAME Recorded Mar 27, 2026
From: SIM IP 1 LLC
To: POWERBRIDGE IP PROTECTION LLC
Reel/Frame 075275/0379 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2026
From: STRONG FORCE IOT PORTFOLIO 2016, LLC
To: SIM IP 1 LLC
Reel/Frame 075119/0603 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2018
From: SPEEDY PACKETS, INC
To: STRONG FORCE IOT PORTFOLIO 2016, LLC
Reel/Frame 045812/0903 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2017
From: HO, TRACEY; SEGUI, JOHN
To: SPEEDY PACKETS, INC.
Reel/Frame 044187/0712 →
Cited By (1)
US 12,362,858