IP Library Granted Patent US 9,992,126
Granted Patent B1
US 9,992,126 · App. 14/936,049 · Granted Jun 5, 2018

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 9,992,126
App. No.
14/936,049
Granted
Jun 5, 2018
Kind
B1
Abstract

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 includes maintaining a transmission limit according to an increase function, wherein the increase function has a first portion and a second portion, the first portion being controllable separately from the second portion using a first parameter and the second portion being controllable separately from the first portion using a second parameter.

Claims (182)

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:

transmitting messages from the first node to the second node over the data path;

receiving messages at the first node from the second node, including

receiving messages indicative of successful and unsuccessful delivery of the messages transmitted from the first node to the second node;

maintaining a transmission limit according to the received messages indicative of successful and unsuccessful delivery of messages, the maintaining including

decreasing the transmission limit when the received messages indicate an unsuccessful delivery of a message transmitted from the first node to the second node;

increasing the transmission limit according to an increase function while the received messages indicate that no messages were unsuccessfully delivered to the second node; and

wherein the increase function includes a first parameter for controlling a shape of a first portion of the increase function and a second parameter for controlling a shape of a second portion of the increase function, wherein the first and second parameters are positive tunable parameters that are selected to control the shapes of the first and second portions of the increase function, respectively, wherein the first portion of the increase function is defined as:

W 1 ( t )= W max +c 1 ( t−k ) 3

where W max is a transmission limit threshold, c 1 is the first parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

;

and

inhibiting transmission of messages from the first node to the second node, including limiting transmission of messages according to the maintained transmission limit.

2. The method of claim 1 wherein maintaining the transmission limit comprises maintaining a window size, and wherein limiting transmission of the messages according to the transmission limit includes limiting a number of messages not yet successfully delivered to the second node according to the window size.

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

4. The method of claim 2 wherein decreasing the transmission limit includes decreasing the window size.

5. The method of claim 2 wherein increasing the transmission limit includes increasing the window size.

6. The method of claim 1 wherein the first portion of the increase function has a convex shape.

7. The method of claim 1 wherein the second portion of the increase function has a concave shape.

8. The method of claim 1 wherein the second portion of the increase function is defined as:

W 2 ( t )= W max +c 2 ( t−k ) 3

where W max is a transmission limit threshold, c 2 is the second parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

9. The method of claim 1 wherein the first portion of the increase function is used to increase transmission limit up to a transmission limit threshold and the second portion of the increase function is used to increase the transmission limit beyond the transmission limit threshold.

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

transmit messages from the communication apparatus to the second device over the data path;

receive messages at the communication apparatus from the second device, including

receive messages indicative of successful and unsuccessful delivery of the messages transmitted from the communication apparatus to the second device;

maintain a transmission limit according to the received messages indicative of successful and unsuccessful delivery of messages, the maintaining including

decreasing the transmission limit when the received messages indicate an unsuccessful delivery of a message transmitted from the communication apparatus to the second device;

increasing the transmission limit according to an increase function while the received messages indicate that no messages were unsuccessfully delivered to the second device; and

wherein the increase function includes a first parameter for controlling a shape of a first portion of the increase function and a second parameter for controlling a shape of a second portion of the increase function, wherein the first and second parameters are positive tunable parameters that are selected to control the shapes of the first and second portions of the increase function, respectively, wherein the first portion of the increase function is defined as:

W 1 ( t )= W max +c 1 ( t−k ) 3

where W max is a transmission limit threshold, c 1 is the first parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

;

and

inhibit transmission of messages from the communication apparatus to the second device, including limiting transmission of messages according to the maintained transmission limit.

11. The communication apparatus of claim 10 wherein maintaining the transmission limit comprises maintaining a window size, and wherein limiting transmission of the messages according to the transmission limit includes limiting a number of messages not yet successfully delivered to the second device according to the window size.

12. The communication apparatus of claim 11 wherein the window size comprises a congestion control window size.

13. The communication apparatus of claim 11 wherein decreasing the transmission limit includes decreasing the window size.

14. The communication apparatus of claim 11 wherein increasing the transmission limit includes increasing the window size.

15. The method of claim 11 wherein increasing the transmission limit includes increasing the window size.

16. The communication apparatus of claim 10 wherein the first portion of the increase function has a convex shape.

17. The communication apparatus of claim 10 wherein the second portion of the increase function has a concave shape.

18. The communication apparatus of claim 10 wherein the second portion of the increase function is defined as:

W 2 ( t )= W max +c 2 ( t−k ) 3

where W max is a transmission limit threshold, c 2 is the second parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

19. The communication apparatus of claim 10 wherein the first portion of the increase function is used to increase transmission limit up to a transmission limit threshold and the second portion of the increase function is used to increase the transmission limit beyond the transmission limit threshold.

20. The method of claim 10 wherein the first portion of the increase function has a convex shape.

21. 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:

transmitting messages from the first node to the second node over the data path;

receiving messages at the first node from the second node, including

receiving messages indicative of successful and unsuccessful delivery of the messages transmitted from the first node to the second node;

maintaining a transmission limit according to the received messages indicative of successful and unsuccessful delivery of messages, the maintaining including

decreasing the transmission limit when the received messages indicate an unsuccessful delivery of a message transmitted from the first node to the second node;

increasing the transmission limit according to an increase function while the received messages indicate that no messages were unsuccessfully delivered to the second node; and

wherein the increase function includes a first parameter for controlling a shape of a first portion of the increase function and a second parameter for controlling a shape of a second portion of the increase function, wherein the first and second parameters are positive tunable parameters that are selected to control the shapes of the first and second portions of the increase function, respectively, wherein the second portion of the increase function is defined as:

W 2 ( t )= W max +c 2 ( t−k ) 3

where W max is a transmission limit threshold, c 2 is the second parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

;

and

inhibiting transmission of messages from the first node to the second node, including limiting transmission of messages according to the maintained transmission limit.

22. The method of claim 21 wherein maintaining the transmission limit comprises maintaining a window size, and wherein limiting transmission of the messages according to the transmission limit includes limiting a number of messages not yet successfully delivered to the second node according to the window size.

23. The method of claim 22 wherein the window size comprises a congestion control window size.

24. The method of claim 22 wherein decreasing the transmission limit includes decreasing the window size.

25. The method of claim 21 wherein the second portion of the increase function has a concave shape.

26. The method of claim 21 wherein the first portion of the increase function is used to increase transmission limit up to a transmission limit threshold and the second portion of the increase function is used to increase the transmission limit beyond the transmission limit threshold.

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

transmit messages from the communication apparatus to the second device over the data path;

receive messages at the communication apparatus from the second device, including

receive messages indicative of successful and unsuccessful delivery of the messages transmitted from the communication apparatus to the second device;

maintain a transmission limit according to the received messages indicative of successful and unsuccessful delivery of messages, the maintaining including

decreasing the transmission limit when the received messages indicate an unsuccessful delivery of a message transmitted from the communication apparatus to the second device;

increasing the transmission limit according to an increase function while the received messages indicate that no messages were unsuccessfully delivered to the second device; and

wherein the increase function includes a first parameter for controlling a shape of a first portion of the increase function and a second parameter for controlling a shape of a second portion of the increase function, wherein the first and second parameters are positive tunable parameters that are selected to control the shapes of the first and second portions of the increase function, respectively, wherein the second portion of the increase function is defined as:

W 2 ( t )= W max +c 2 ( t−k ) 3

where W max is a transmission limit threshold, c 2 is the second parameter, and k is defined as:

k

=

W

m

a

x

-

W

c

1

3

;

and

inhibit transmission of messages from the communication apparatus to the second device, including limiting transmission of messages according to the maintained transmission limit.

28. The communication apparatus of claim 27 wherein maintaining the transmission limit comprises maintaining a window size, and wherein limiting transmission of the messages according to the transmission limit includes limiting a number of messages not yet successfully delivered to the second device according to the window size.

29. The communication apparatus of claim 28 wherein the window size comprises a congestion control window size.

30. The communication apparatus of claim 28 wherein decreasing the transmission limit includes decreasing the window size.

31. The communication apparatus of claim 28 wherein increasing the transmission limit includes increasing the window size.

32. The communication apparatus of claim 27 wherein the first portion of the increase function has a convex shape.

33. The communication apparatus of claim 27 wherein the second portion of the increase function has a concave shape.

34. The communication apparatus of claim 27 wherein the first portion of the increase function is used to increase transmission limit up to a transmission limit threshold and the second portion of the increase function is used to increase the transmission limit beyond the transmission limit threshold.

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 Feb 24, 2016
From: HO, TRACEY; SEGUI, JOHN
To: SPEEDY PACKETS, INC.
Reel/Frame 037813/0326 →