IP Library Granted Patent US 10,560,874
Granted Patent B2
US 10,560,874 · App. 15/723,127 · Granted Feb 11, 2020

System and method for bandwidth profile based allocation and management of a time-varying topology network

Inventors: Robert James Torres (New Market, MD); Stanley Edward Kay (Rockville, MD); George Choquette (Potomac, MD)
Assignee: Hughes Network Systems LLC
H04W28/24H04L47/762H04W24/10H04W28/0289H04W28/10H04L41/0896H04L47/14H04W28/0268
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,560,874
App. No.
15/723,127
Granted
Feb 11, 2020
Kind
B2
Abstract

Disclosed methods include a resource manager in a multiple node network receiving a demand for additional bandwidth, from a terminal, and the resource manager having updated information on the state of the mobile node network and, using that the state information, performing test allocation of the requested bandwidth to the requesting terminal. Disclosed methods include determining whether previous commitments of service can be met with the test allocation in place. Associated with a positive result, an allocation is sent to the terminal.

Claims (82)

1. An apparatus for dynamic allocation of bandwidth to terminals in a mobile node network, comprising:

a processor and a memory coupled to the mobile node network, the memory configured to store instructions that, when executed by the processor, cause the processor to:

store in the memory a record of a current state of the mobile node network, including a record of allocations of bandwidth to the terminals, current commitments of bandwidth at each node of a plurality of mobile nodes of the mobile node network, current capacity of each edge of each of the plurality of mobile nodes, and congestion points of the mobile node network;

collect updated information from one or more of the mobile nodes regarding the current state of the network, at a reference time;

obtain routing tables for the network, for a next reference time; and

upon receipt, from a requesting terminal among the terminals, of a demand for increased bandwidth to:

estimate, for each of the mobile nodes, based at least in part on the stored record identifying the current state of the network, whether the current commitments of bandwidth will be met if the increased bandwidth is allocated to the requesting terminal, and

upon a result of the estimate meeting a criteria, transmit an allocation to the requesting terminal of an increased bandwidth corresponding to the demand, and

wherein:

the routing tables are configured as per-priority routing tables, for each of a plurality of priorities,

the current commitments of bandwidth include per-priority commitments,

the increased bandwidth is a per-priority increased bandwidth,

the estimation, for each mobile node, whether the current commitments of bandwidth will be met includes executing inner loop sequence within an outer loop sequence, wherein:

the outer loop is executed once for each priority, and

an inner loop sequence is executed N times for each execution of the outer loop sequence, N being the number of mobile nodes.

2. The apparatus of claim 1 , wherein:

the criteria is the result of the estimate indicating that, without adjusting any terminal's current allocation of bandwidth, current commitments of bandwidth will be met upon the increased bandwidth being allocated to the requesting terminal.

3. The apparatus of claim 1 , wherein:

the criteria is the result of the estimate indicating that, upon adjusting the terminal's current allocations of bandwidth, within a range, all commitments of bandwidth will be met with the increased bandwidth being allocated to the requesting terminal.

4. The apparatus of claim 1 , wherein the instructions further cause, prior to the receipt of the demand for additional bandwidth, the processor to:

and

determine congestion points and available path capacities for the next reference time, based on the collected updated information and the obtained routing tables,

wherein:

the estimation, for each of the mobile nodes whether the current commitments of bandwidth will be met if the additional bandwidth is allocated to the requesting terminal is further based, at least in part, on the determined congestion points and available path capacities for the next reference time.

5. The apparatus of claim 1 , wherein:

the record of the current state of the network includes a record of a current constellation of the mobile nodes, wherein the instructions when executed by the processor, further cause the processor to:

receive, from the mobile nodes, updating information on the constellation and, in response, update the record of the current constellation.

6. The apparatus of claim 1 , wherein the current commitments of bandwidth at each of the plurality of mobile nodes includes the current commitments of bandwidth for each edge of the mobile node.

7. An apparatus for dynamic allocation of bandwidth to terminals in a mobile node network, comprising:

a processor and a memory coupled to the mobile node network, the memory configured to store instructions that, when executed by the processor, cause the processor to:

store in the memory a record of a current state of the mobile node network, including a record of allocations of bandwidth to the terminals, current commitments of bandwidth at each node of a plurality of mobile nodes of the mobile node network, current capacity of each edge of each of the plurality of mobile nodes, and congestion points of the mobile node network;

establish in the memory a routing table, indicating one or more paths from each edge node to other edge nodes, wherein

the routing table is configured with a priority breakdown,

the priority breakdown includes, for at least a first edge node and a second edge node among the edge nodes,

a first path from the first node to the second node, the first path being for traffic of a first priority, and

a second path from the first node to the second node, the second path being for traffic of a second priority, the second priority being higher than the first priority; and

upon receipt, from a requesting terminal among the terminals, of a demand for increased bandwidth to:

estimate, for each of the mobile nodes, based at least in part on the stored record identifying the current state of the network, whether the current commitments of bandwidth will be met if the increased bandwidth is allocated to the requesting terminal, and

upon a result of the estimate meeting a criteria, transmit an allocation to the requesting terminal of an increased bandwidth corresponding to the demand.

8. The apparatus of claim 7 , wherein the instructions further cause the processor to detect a sustained congestion in the first path and, in response, to determine whether the second path is uncongested and, upon determining that the second path is uncongested, to change the routing table for the first priority traffic to the uncongested second path.

9. The apparatus of claim 7 , wherein the instructions further cause the processor to detect a sustained congestion in the first path and, in response, to determine whether the second path has a lesser congestion and, upon determining that the second path has a lesser congestion, to change the routing table for the first priority traffic to the lesser congested second path.

10. A method for dynamic allocation of bandwidth to terminals in a mobile node network, comprising:

storing a record of a current state of the network, including a record of allocations of bandwidth to the terminals, current commitments of bandwidth at each node of a plurality of mobile nodes of the mobile node network, current capacity of each edge of each of the plurality of mobile nodes, and congestion points of the mobile node network;

collecting update information from one or more of the mobile nodes regarding the current state of the network, at a reference time;

obtaining routing tables for the network, for a next reference time;

upon receiving, from a requesting terminal among the terminals, subsequent to the receipt of the demand for additional bandwidth, a demand for increased bandwidth:

estimating, based at least in part on the storing record of the current state of the network, whether the current commitments of bandwidth at each of the mobile nodes will be met by the network if the increased bandwidth is allocated to the requesting terminal, and

upon a result of the estimating meeting a criteria, transmitting an allocation to the requesting terminal of an increased bandwidth corresponding to the demand,

wherein:

the routing tables are configured as per-priority routing tables, for each of a plurality of priorities,

the current commitments of bandwidth include per-priority commitments, and

the increased bandwidth is a per-priority increased bandwidth,

wherein:

estimating, for each mobile node, whether the current commitments of bandwidth will be met includes executing inner loop sequence within an outer loop sequence, including

executing the outer loop once for each priority, and

executing the inner loop sequence N times for each execution of the outer loop sequence, N being the number of mobile nodes.

11. The method of claim 10 , wherein:

the criteria is met upon the result of the estimate indicating that, without adjusting any terminal's current allocation of bandwidth, current commitments of bandwidth will be met upon the increased bandwidth being allocated to the requesting terminal.

12. The method of claim 10 , wherein:

the criteria is met upon the result of the estimate indicating that, upon adjusting the terminal's current allocations of bandwidth, within a range, all commitments of bandwidth will be met with the increased bandwidth being allocated to the requesting terminal.

13. The method of claim 10 , further comprising:

determining congestion points and available path capacities for the next reference time, based at least in part on the collected updated information and the obtained routing tables, wherein:

estimating, for each of the mobile nodes, whether the current commitments of bandwidth will be met if the increased bandwidth is allocated to the requesting terminal is further based, at least in part, on the determined congestion points and available path capacities for the next reference time.

14. The method of claim 10 , wherein:

the record of the current state of the network includes a record of a current constellation of the mobile nodes, and

wherein the method further comprises:

receiving, from the mobile nodes, updating information on the constellation and, in response, updating the record of the current constellation.

15. The method of claim 10 , wherein the current commitments of bandwidth at each of the plurality of mobile nodes includes the current commitments of bandwidth for each edge of the mobile node.

16. A method for dynamic allocation of bandwidth to terminals in a mobile node network, comprising:

storing a record of a current state of the network, including a record of allocations of bandwidth to the terminals, current commitments of bandwidth at each node of a plurality of mobile nodes of the mobile node network, current capacity of each edge of each of the plurality of mobile nodes, and congestion points of the mobile node network;

establishing a routing table of paths between edge nodes,

wherein

the routing table is configured with a priority breakdown, the priority breakdown includes, for at least a first edge node and a second edge node among the edge nodes,

a first path from the first node to the second node, the first path being for traffic of a first priority, and

a second path from the first node to the second node, the second path being for traffic of a second priority, the second priority being higher than the first priority; and

upon receiving, from a requesting terminal among the terminals, a demand for increased bandwidth:

estimating, based at least in part on the storing record of the current state of the network, whether the current commitments of bandwidth at each of the mobile nodes will be met by the network if the increased bandwidth is allocated to the requesting terminal, and

upon a result of the estimating meeting a criteria, transmitting an allocation to the requesting terminal of an increased bandwidth corresponding to the demand.

17. The method of claim 16 , further comprising:

detecting a sustained congestion in the first path and, in response,

determining whether the second path is uncongested and,

upon determining that the second path is uncongested, changing the routing table for the first priority traffic to the uncongested second path.

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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2018
From: TORRES, ROBERT JAMES; KAY, STANLEY EDWARD; CHOQUETTE, GEORGE
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 045640/0094 →
SECURITY INTEREST Recorded Nov 6, 2017
From: HUGHES NETWORK SYSTEMS, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION - AS COLLATERAL AGENT
Reel/Frame 044376/0139 →