IP Library Granted Patent US 10,178,035
Granted Patent B2
US 10,178,035 · App. 15/655,601 · Granted Jan 8, 2019

System and method for providing improved quality of service over broadband networks

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,178,035
App. No.
15/655,601
Granted
Jan 8, 2019
Kind
B2
Abstract

Systems and methods are provided for quality of service over broadband networks. A network device performs a probe transaction over a tunnel of a broadband network. Based on the probe transaction, parameters are determined reflecting tunnel performance, and, based on the parameters, target transmit and receive rates are determined for data communications over the tunnel. Based on the target transmit and receive rates, data communications to and from a first node of the network are regulated. When the tunnel comprises a peered tunnel, the regulation of received data communications comprises performing a set rate transaction with a peer second node of the network (the set rate transaction establishes a rate for data transmitted over the tunnel by the peer second node to the first node). When the tunnel comprises a peerless tunnel, the regulation of received data communications comprises shaping data traffic received by the first node over the tunnel.

Claims (62)

1. A method, comprising:

performing, by a first network device at a first node of a data communications network, a probe transaction over a tunnel within the data communications network;

determining, based on the probe transaction, one or more parameters reflecting performance of data communications over the tunnel;

determining, based on one or more of the determined parameters, a target transmit rate and a target receive rate for the data communications over the tunnel;

regulating, based on the target transmit rate, the rate of data communications transmitted over the tunnel from the first node; and

regulating, based on the target receive rate, the rate of data communications received over the tunnel by the first node;

wherein the tunnel comprises one of a peered tunnel and a peerless tunnel, wherein (1) the peered tunnel is configured for data communications between the first node and a peer second node of the data communications network, and (2) the peerless tunnel is configured for data communications between the first node and a non-peer second node of the data communications network;

wherein, when the tunnel comprises the peered tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises performing a set rate transaction with the peer second node, wherein the set rate transaction establishes a rate for data communications transmitted over the tunnel by the peer second node to the first node; and

wherein, when the tunnel comprises the peerless tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises shaping data communications traffic received over the tunnel.

2. The method according to claim 1 , wherein the probe transaction and set rate transaction are performed as part of an active quality of service (AQoS) function implemented by the first network device, and wherein a second network device at the peer second node is configured to operate in accordance with the AQoS function.

3. The method according to claim 2 , wherein the set rate transaction is performed between the first network device and a second network device deployed at the peer second node, and the second network device is configured to implement the AQoS function at the peer second node.

4. The method according to claim 1 , wherein the non-peer second node is not configured to operate in accordance with the AQoS function.

5. The method according to claim 1 , wherein the parameters determined based on the probe transaction comprise a measured one-way network latency in one or both directions over the tunnel.

6. The method according to claim 5 , wherein the measured one-way network latency is determined based on a timestamp field included in a probe transaction packet indicating a time at which the packet was transmitted.

7. The method according to claim 1 , wherein the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a transmit direction over the tunnel, and wherein the method further comprises:

when the measured one-way transmit latency parameter indicates that the latency exceeds a predetermined threshold, decreasing the target transmit rate; and

when offered data traffic exceeds the current target transmit rate, increasing the target transmit rate.

8. The method according to claim 1 , wherein the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a receive direction over the tunnel, and wherein the method further comprises:

when the measured one-way receive latency parameter indicates that the latency exceeds a predetermined threshold, decreasing the target receive rate; and

when offered data traffic exceeds the current target receive rate, increasing the target receive rate.

9. The method according to claim 1 , wherein the shaping of data communications traffic received over the tunnel is accomplished by one or more of increasing latency for data traffic received over the tunnel, adjustment of window sizing, control of new connection establishment, and packet dropping.

10. The method according to claim 9 , wherein:

the adjustment of window sizing comprises actively controlling receive window sizes for transmission of data by remote hosts over the peerless tunnel to regulate throughput for the data communications received over the peerless tunnel;

the control of new connection establishment comprises actively controlling the establishment of parallel connections via which remote hosts transmit data over the peerless tunnel to regulate throughput for the data communications received over the peerless tunnel; and

the packet dropping comprises a systematic dropping of packets received from a respective host to signal the host to adjust its associated transmit rate.

11. The method according to claim 10 , wherein the tunnel comprises the peerless tunnel, the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the peerless tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a receive direction over the peerless tunnel, and wherein the method further comprises:

determining, based on the measured one-way network latency in the receive direction, the target receive rate for data communications over the peerless tunnel;

controlling new connection establishment, and determining and setting receive window sizing, for data communications traffic being transmitted by one or more remote hosts over the peerless tunnel, based on the determined target receive rate for data communications over the peerless tunnel;

determining whether an offered traffic load for transmission over the peerless tunnel by the one or more remote hosts exceeds the determined target receive rate for data communications over the peerless tunnel; and

when the offered traffic load exceeds the determined target receive rate, increasing the target receive rate for data communications over the peerless tunnel, and adjusting the control of new connection establishment and the receive window sizing, for the data communications traffic being transmitted by the one or more remote hosts over the peerless tunnel, based on the increased target receive rate for data communications over the peerless tunnel.

12. A communications network node apparatus, comprising:

at least one control processor of a first network device of a first node of a data communications network; and

at least one memory device of the first network device; and

wherein the at least one control processor is configured to perform a probe transaction over a tunnel within the data communications network;

wherein the at least one control processor is further configured to determine, based on the probe transaction, one or more parameters reflecting performance of data communications over the tunnel;

wherein the at least one control processor is further configured to determine, based on one or more of the determined parameters, a target transmit rate and a target receive rate for the data communications over the tunnel;

wherein the at least one control processor is further configured to regulate, based on the target transmit rate, the rate of data communications transmitted over the tunnel from the first node; and

wherein the at least one control processor is further configured to regulate, based on the target receive rate, the rate of data communications received over the tunnel by the first node;

wherein the tunnel comprises one of a peered tunnel and a peerless tunnel, wherein (1) the peered tunnel is configured for data communications between the first node and a peer second node of the data communications network, and (2) the peerless tunnel is configured for data communications between the first network device and a non-peer second node of the data communications network;

wherein, when the tunnel comprises the peered tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises performing a set rate transaction with the peer second node, wherein the set rate transaction establishes a rate for data communications transmitted over the tunnel by the peer second node to the first node; and

wherein, when the tunnel comprises the peerless tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises shaping data communications traffic received over the tunnel.

13. The communications network node apparatus according to claim 12 , wherein the probe transaction and set rate transaction are performed as part of an active quality of service (AQoS) function implemented by the first network device, and wherein a second network device at the peer second node is configured to operate in accordance with the AQoS function.

14. The communications network node apparatus according to claim 13 , wherein the set rate transaction is performed between the communications network node apparatus and a second network device deployed at the peer second node, and the second network device is configured to implement the AQoS function at the peer second node.

15. The communications network node apparatus according to claim 12 , wherein the non-peer second node is not configured to operate in accordance with the AQoS function.

16. The communications network node apparatus according to claim 12 , wherein the parameters determined based on the probe transaction comprise a measured one-way network latency in one or both directions over the tunnel.

17. The communications network node apparatus according to claim 16 , wherein the measured one-way network latency is determined based on a timestamp field included in a probe transaction packet indicating a time at which the packet was transmitted.

18. The communications network node apparatus according to claim 12 , wherein the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a transmit direction over the tunnel, and wherein the at least one control processor is further configured to:

when the measured one-way transmit latency parameter indicates that the latency exceeds a predetermined threshold, decrease the target transmit rate; and

when offered data traffic exceeds the current target transmit rate, increase the target transmit rate.

19. The communications network node apparatus according to claim 12 , wherein the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a receive direction over the tunnel, and wherein the at least one control processor is further configured to:

when the measured one-way receive latency parameter indicates that the latency exceeds a predetermined threshold, decrease the target receive rate; and

when offered data traffic exceeds the current target receive rate, increase the target receive rate.

20. The communications network node apparatus according to claim 12 , wherein the shaping of data communications traffic received over the tunnel is accomplished by one or more of increasing latency for data traffic received over the tunnel, adjustment of window sizing, control of new connection establishment, and packet dropping.

21. The communications network node apparatus according to claim 20 , wherein:

the adjustment of window sizing comprises actively controlling receive window sizes for transmission of data by remote hosts over the peerless tunnel, to regulate throughput for the data communications received over the peerless tunnel;

the control of new connection establishment comprises actively controlling the establishment of parallel connections via which remote hosts transmit data over the peerless tunnel, to regulate throughput for the data communications received over the peerless tunnel; and

the packet dropping comprises a systematic dropping of packets received from a respective host to signal the host to adjust its associated transmit rate.

22. The communications network node apparatus according to claim 21 , wherein the tunnel comprises the peerless tunnel, the probe transaction is performed on a periodic basis for continued monitoring of data communications performance over the peerless tunnel, and the parameters determined based on the probe transaction comprise a measured one-way network latency in a receive direction over the peerless tunnel, and wherein the at least one control processor is further configured to:

determine, based on the measured one-way network latency in the receive direction, the target receive rate for data communications over the peerless tunnel;

control new connection establishment, and determine and set receive window sizing, for data communications traffic being transmitted by one or more remote hosts over the peerless tunnel, based on the determined target receive rate for data communications over the peerless tunnel;

determine whether an offered traffic load for transmission over the peerless tunnel by the one or more remote hosts exceeds the determined target receive rate for data communications over the peerless tunnel; and

when the offered traffic load exceeds the determined target receive rate, increase the target receive rate for data communications over the peerless tunnel, and adjust the control of new connection establishment and the receive window sizing, for the data communications traffic being transmitted by the one or more remote hosts over the peerless tunnel, based on the increased target receive rate for data communications over the peerless tunnel.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION NUMBER 15649418 PREVIOUSLY RECORDED ON REEL 050600 FRAME 0314. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF PATENT SECURITY AGREEMENTS. Recorded Sep 3, 2020
From: WELLS FARGO, NATIONAL BANK ASSOCIATION
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 053703/0367 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION NUMBER 15649418 PREVIOUSLY RECORDED AT REEL: 044376 FRAME: 0139. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT. Recorded Sep 3, 2020
From: HUGHES NETWORK SYSTEMS, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION - AS COLLATERAL AGENT
Reel/Frame 053723/0726 →
ASSIGNMENT OF PATENT SECURITY AGREEMENTS Recorded Oct 1, 2019
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 050600/0314 →
SECURITY INTEREST Recorded Nov 6, 2017
From: HUGHES NETWORK SYSTEMS, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION - AS COLLATERAL AGENT
Reel/Frame 044376/0139 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2017
From: DILLON, DOUGLAS
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 043058/0065 →
Cited By (14)
US 12,218,828 US 12,218,829 US 12,244,489 US 12,267,229 US 12,335,431 US 12,335,781 US 12,360,923 US 12,393,530 US 12,439,319 US 12,443,545 US 12,443,546 US 12,450,177 US 12,455,840 US 12,634,794