Claims
- 1. A method for determining a load distribution for a plurality of servers, the method comprising steps of:receiving a total user count during a predetermined interval of time from each server of a plurality of servers for at least one channel resource associated with each respective server of the plurality of servers; determining a present load distribution for the predetermined interval of time for each respective server of the plurality of servers based on the total user count received from each server; determining a load gradient for the predetermined interval of time for each server of the plurality of servers; and determining a future load distribution for each respective channel resource for each respective server based on the total user count for each server and each respective load gradient.
- 2. The method according to claim 1, wherein the predetermined interval of time is a sliding window of time having a predetermined number of timeslots each having a predetermined timeslot interval.
- 3. The method according to claim 2, wherein the sliding window of time spans about 60 seconds and the predetermined timeslot interval is about 5 seconds.
- 4. The method according to claim 1, further comprising a step of distributing a load distribution for each respective channel resource among the plurality of servers based on the determined future load distribution for each respective server.
- 5. The method according to claim 4, wherein at least one load gradient is based on a difference between a total number of users connected to the server associated with the load gradient at an end of the predetermined interval of time and a total number of users connected to the server at a beginning of the predetermined interval of time.
- 6. The method according to claim 4, further comprising steps of:creating a new channel resource; assigning an initial estimated weight to the new channel resource; and assigning the new channel resource to a selected server of the plurality of servers based on the initial estimated weight associated with the new channel resource and a load distribution associated with each respective server of the plurality of servers.
- 7. A method for determining a load gradient for a server of a plurality of servers, the method comprising steps of:recording a number of users connected to the server at a beginning of a predetermined interval of time; recording a number of users connected to the server at an end of the predetermined interval of time; and determining a difference between the total number of users connected to the server at the end of the predetermined interval of time and the total number of users connected to the server at the beginning of the predetermined interval of time.
- 8. The method according to claim 7, wherein the predetermined interval of time is a sliding window of time having a predetermined number of timeslots each having a predetermined timeslot interval.
- 9. The method according to claim 8, wherein the sliding window of time spans about 60 seconds and the predetermined timeslot interval is about 5 seconds.
- 10. A computer-readable medium having computer-executable instructions for performing steps comprising:receiving a total user count during a predetermined interval of time from each server of a plurality of servers for at least one channel resource associated with each respective server of the plurality of servers; determining a present load distribution for the predetermined interval of time for each respective server of the plurality of servers based on the total user count received from each server; determining a load gradient for the predetermined interval of time from each server of the plurality of servers; and determining a future load distribution for each respective channel resource for each respective server based on the total user count for each server and each respective load gradient.
- 11. The computer-readable medium according to claim 10, wherein the predetermined interval of time is a sliding window of time having a predetermined number of timeslots each having a predetermined timeslot interval.
- 12. The computer-readable medium according to claim 11, wherein the sliding window of time spans about 60 seconds and the predetermined timeslot interval is about 5 seconds.
- 13. The computer-readable medium according to claim 10, further comprising a step of distributing a load distribution for each respective channel resource among the plurality of servers based on the determined future load distribution for each respective server.
- 14. The computer-readable medium according to claim 13, wherein at least one load gradient is based on a difference between a total number of users connected to the server associated with the load gradient at an end of the predetermined interval of time and a total number of users connected to the server at a beginning of the predetermined interval of time.
- 15. The computer-readable medium according to claim 13, further comprising steps of:creating a new channel resource; assigning an initial estimated weight to the new channel resource; and assigning the new channel resource to a selected server of the plurality of servers based on the initial estimated weight associated with the new channel resource and a load distribution associated with each respective server of the plurality of servers.
- 16. A computer-readable medium having computer-executable instructions for performing steps comprising:recording a number of users connected to the server at a beginning of a predetermined interval of time; recording a number of users connected to the server at an end of the predetermined interval of time; and determining a difference between the total number of users connected to the server at the end of the predetermined interval of time and the total number of users connected to the server at the beginning of the predetermined interval of time.
- 17. The computer-readable medium according to claim 16, wherein the predetermined interval of time is a sliding window of time having a predetermined number of timeslots each having a predetermined timeslot interval.
- 18. The computer-readable medium according to claim 17, wherein the sliding window of time spans about 60 seconds and the predetermined timeslot interval is about 5 seconds.
CROSS-REFERENCE TO RELATED APPLICATIONS
The present application is related to U.S. patent application Ser. No. 09/611,318, entitled “Identification of Active Server Cluster Controller,” invented by F. Mohammed et al., and to U.S. patent application Ser. No. 09/611,313, entitled “Recovery of Cluster Consistency Following Failover,” invented by N. Dani et al., both of which are incorporated by reference herein and filed concurrently herewith.
US Referenced Citations (6)
Number |
Name |
Date |
Kind |
6259705 |
Takahashi et al. |
Jul 2001 |
B1 |
6314465 |
Paul et al. |
Nov 2001 |
B1 |
6560717 |
Scott et al. |
May 2003 |
B1 |
6578077 |
Rakoshitz et al. |
Jun 2003 |
B1 |
6675199 |
Mohammed et al. |
Jan 2004 |
B1 |
6675217 |
Dani et al. |
Jan 2004 |
B1 |