IP Library Granted Patent US 8,341,266
Granted Patent B2
US 8,341,266 · App. 11/085,954 · Granted Dec 25, 2012

Method and system for load balancing over a set of communication channels

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 8,341,266
App. No.
11/085,954
Granted
Dec 25, 2012
Kind
B2
Abstract

An approach for load balancing is disclosed. A user load is determined based upon data queued for transmission at each of the terminals. In addition, an inroute load corresponding to loading of inroutes serving the terminals is determined. A user-to-inroute distribution that minimizes variation of the inroute load is generated. The user-to-inroute distribution maps the user load to the inroutes. The user load is reassigned to the inroutes based on the determined user-to-inroute distribution. This arrangement has particular applicability to a satellite network that provides data communication services.

Claims (81)

1. A method for providing load balancing in a communication system including a plurality of terminals, the method comprising:

determining a user load based upon data queued for transmission at each of the terminals;

generating a user load vector based on the user load;

sorting the user load vector to identify a more loaded terminal;

determining an inroute load corresponding to loading of inroutes serving the terminals;

generating an inroute load vector based on the inroute load;

sorting the inroute load vector to determine a less loaded inroute;

determining variance of the inroute load vector;

determining a load change for a maximum reduction in the variance of the inroute load vector;

determining a first terminal with a load that matches the load change based on the user load vector;

outputting a user-to-inroute distribution that minimizes variation of the inroute load, the user-to-inroute distribution mapping the user load to the inroutes; and

reassigning the user load to the inroutes based on the determined user-to-inroute distribution from a central hub including moving the load of the first terminal to the less loaded inroute, wherein

the reassignment of the user load to the inroutes is independent of decisions at the terminals and allocation and redistribution of bandwidth is obtained at the plurality of terminals without an externally provided command.

2. The method according to claim 1 , wherein the terminals are associated with a common Quality of Service (QoS) level.

3. The method according to claim 1 , wherein

the more loaded terminal is the most loaded terminal; and

the less loaded inroute is the least loaded inroute.

4. The method according to claim 3 , wherein the communication system is a satellite network.

5. The method according to claim 4 , wherein the inroutes are Time Division Multiple Access (TDMA) streams.

6. A non-transitory computer-readable storage medium having instructions providing load balancing in a communication system including a plurality of terminals, the instruction executable to cause one or more processors to perform the following:

determining a user load based upon data queued for transmission at each of the terminals;

generating a user load vector based on the user load;

sorting the user load vector to identify a more loaded terminal;

determining an inroute load corresponding to loading of inroutes serving the terminals;

generating an inroute load vector based on the inroute load;

sorting the inroute load vector to determine a less loaded inroute;

determining variance of the inroute load vector;

determining a load change for a maximum reduction in the variance of the inroute load vector;

determining a first terminal with a load that matches the load change based on the user load vector;

outputting a user-to-inroute distribution that minimizes variation of the inroute load, the user-to-inroute distribution mapping the user load to the inroutes; and

reassigning the user load to the inroutes based on the determined user-to-inroute distribution from a central hub including moving the load of the first terminal to the less loaded inroute, wherein

the reassignment of the user load to the inroutes is independent of decisions at the terminals and allocation and redistribution of bandwidth is obtained at the plurality of terminals without an externally provided command.

7. An apparatus for providing load balancing in a communication system including a plurality of terminals, the apparatus comprising:

a memory configured to store a user load based upon data queued for transmission at each of the terminals, the memory being further configured to store an inroute load corresponding to loading of inroutes serving the terminals; and

a processor configured to:

generate a user load vector based on the user load, sort the user load vector to identify a more loaded terminal,

generate an inroute load vector based on the inroute load;

sort the inroute load vector to determine a less loaded inroute;

determine variance of the inroute load vector;

determine a load change for a maximum reduction in the variance of the inroute load vector;

determine a first terminal with a load that matches the load change based on the user load vector

output a user-to-inroute distribution that minimizes variation of the inroute load, the user-to-inroute distribution mapping the user load to the inroutes,

wherein the user load is reassigned to the inroutes based on the determined user-to-inroute distribution, including moving the load of the first terminal to the less loaded inroute, and independent of decisions at the terminals, and allocation and redistribution of bandwidth is obtained at the plurality of terminals without an externally provided command.

8. The apparatus according to claim 7 , wherein the terminals are associated with a common Quality of Service (QoS) level.

9. The apparatus according to claim 7 , wherein

the more loaded terminal is the most loaded terminal; and

the less loaded inroute is the least loaded inroute.

10. The apparatus according to claim 9 , wherein the communication system is a satellite network.

11. The apparatus according to claim 10 , wherein the inroutes are Time Division Multiple Access (TDMA) streams.

12. A method for providing load balancing in a communication system including a plurality of terminals, the method comprising:

generating at least one load vector for a plurality of communication channels based on at least one of a user load based upon data queued for transmission and an inroute load corresponding to loading of inroutes serving the terminals;

sorting the at least one load vector to identify at least one of a more loaded terminal and a less loaded inroute;

determining variance of the at least one load vector;

determining a load change for a maximum reduction in the variance of the at least one load vector;

outputting a load value that generates a maximum reduction in the variance;

identifying a first terminal having a user load corresponding to the load value; and

causing a central hub to assign the first terminal to the less loaded inroute to move the load of the first terminal to the less loaded inroute independent of any decision by the terminal, wherein

allocation and redistribution of bandwidth is obtained at the plurality of terminals without an externally provided command.

13. The method according to claim 12 , wherein the terminals are associated with a common Quality of Service (QoS) level.

14. The method according to claim 12 , wherein the communication system is a satellite network.

15. The method according to claim 14 , wherein the inroutes are Time Division Multiple Access (TDMA) streams.

16. A non-transitory computer-readable storage medium having instructions providing load balancing in a communication system including a hub communicating with a plurality of terminals, the instructions executable to cause one or more processors to perform the following:

generating at least one load vector for a plurality of communication channels based on at least one of a user load based upon data queued for transmission and an inroute load corresponding to loading of inroutes serving the terminals;

sorting the at least one load vector to identify at least one of a more loaded terminal and a less loaded inroute;

determining variance of the at least one load vector;

outputting a load value that generates a maximum reduction in the variance;

identifying a first terminal having a user load corresponding to the load value; and

causing the central hub to assign the first terminal to the less loaded inroute to move the load of the first terminal to the less loaded inroute independent of any decision by the terminal, wherein

allocation and redistribution of bandwidth is obtained at the plurality of terminals without a command provided by the hub.

17. A hub device for providing load balancing in a communication system including a plurality of terminals, the system comprising:

means for generating at least one load vector for a plurality of communication channels based on at least one of a user load based upon data queued for transmission and an inroute load corresponding to loading of inroutes serving the terminals;

means for sorting the at least one load vector to identify at least one of a more loaded terminal and a less loaded inroute;

means for determining variance of the at least one load vector;

means for determining a load change for a maximum reduction in the variance of the at least one load vector;

means for outputting a load value that generates a maximum reduction in the variance;

means for identifying a first terminal having a user load corresponding to the load value; and

means for assigning the first terminal to the less loaded inroute to move the load of the first terminal to the less loaded inroute independent of any decision by the terminal, wherein

allocation and redistribution of bandwidth is obtained at the plurality of terminals without a command provided by the hub.

18. The device according to claim 17 , wherein the terminals are associated with a common Quality of Service (QoS) level.

19. The device according to claim 17 , wherein the communication system is a satellite network.

20. The device according to claim 19 , wherein the inroutes are Time Division Multiple Access (TDMA) streams.

Assignments (13)
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 →
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED ON REEL 026499 FRAME 0290. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT. Recorded Sep 4, 2018
From: EH HOLDING CORPORATION; ECHOSTAR 77 CORPORATION; ECHOSTAR GOVERNMENT SERVICES L.L.C.; ECHOSTAR ORBITAL L.L.C.; ECHOSTAR SATELLITE OPERATING CORPORATION; ECHOSTAR SATELLITE SERVICES L.L.C.; ADVANCED SATELLITE RESEARCH, LLC; HELIUS ACQUISITION, LLC; HELIUS, LLC; HNS FINANCE CORP.; HNS LICENSE SUB, LLC; HNS REAL ESTATE, LLC; HNS-INDIA VSAT, INC.; HNS-SHANGHAI, INC.; HUGHES COMMUNICATIONS, INC.; HUGHES NETWORK SYSTEMS, LLC; HUGHES NETWORK SYSTEMS INTERNATIONAL SERVICE COMPANY
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 047014/0886 →
SECURITY AGREEMENT Recorded Jun 24, 2011
From: EH HOLDING CORPORATION; ECHOSTAR 77 CORPORATION; ECHOSTAR GOVERNMENT SERVICES L.L.C.; ECHOSTAR ORBITAL L.L.C.; ECHOSTAR SATELLITE OPERATING CORPORATION; ECHOSTAR SATELLITE SERVICES L.L.C.; ADVANCED SATELLITE RESEARCH, LLC; HELIUS ACQUISITION, LLC; HELIUS, LLC; HNS FINANCE CORP.; HNS LICENSE SUB, LLC; HNS REAL ESTATE, LLC; HNS-INDIA VSAT, INC.; HNS-SHANGHAI, INC.; HUGHES COMMUNICATIONS, INC.; HUGHES NETWORK SYSTEMS, LLC; HUGHES NETWORK SYSTEMS INTERNATIONAL SERVICE COMPANY
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 026499/0290 →
PATENT RELEASE Recorded Jun 16, 2011
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 026459/0883 →
ASSIGNMENT AND ASSUMPTION OF REEL/FRAME NOS. 16345/0401 AND 018184/0196 Recorded Apr 9, 2010
From: BEAR STEARNS CORPORATE LENDING INC.
To: JPMORGAN CHASE BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 024213/0001 →
RELEASE OF SECOND LIEN PATENT SECURITY AGREEMENT Recorded Aug 29, 2006
From: JPMORGAN CHASE BANK, N.A.
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 018184/0170 →
ASSIGNMENT OF SECURITY INTEREST IN U.S. PATENT RIGHTS Recorded Aug 29, 2006
From: JPMORGAN CHASE BANK, N.A.
To: BEAR STEARNS CORPORATE LENDING INC.
Reel/Frame 018184/0196 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 11, 2005
From: HUGHES NETWORK SYSTEMS, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 016345/0368 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jul 11, 2005
From: HUGHES NETWORK SYSTEMS, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 016345/0401 →
MERGER Recorded Jun 21, 2005
From: HUGHES ELECTRONICS CORPORATION
To: DIRECTV GROUP, INC.,THE
Reel/Frame 016427/0731 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2005
From: DIRECTV GROUP, INC., THE
To: HUGHES NETWORK SYSTEMS, LLC
Reel/Frame 016323/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2005
From: OLARIU, GABRIEL L.; RAGLAND, RODERICK; KELLY, FRANK
To: DIRECTV GROUP, INC., THE
Reel/Frame 016403/0603 →