IP Library Granted Patent US 7,519,710
Granted Patent B2
US 7,519,710 · App. 10/490,040 · Granted Apr 14, 2009

Client server 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 7,519,710
App. No.
10/490,040
Granted
Apr 14, 2009
Kind
B2
Abstract

A client node in a network communicates with a server system having a plurality of servers. The client has a distributor which periodically measures server activity, assesses relative loading of the servers, and adjusts the request distribution as well as the server loadings in accordance with the loading assessment.

Claims (29)

1. A method of distributing requests from a client node to servers of a server system having a plurality of servers, the method comprising periodically repeating the steps of:

a) measuring server activity of each server to obtain measured server activities;

b) assessing relative loadings of the plurality of servers from the measured server activities;

c) adjusting a distribution of requests to individual servers of the plurality of servers in accordance with the assessing of the relative loadings by adjusting a proportion of the requests assigned to each server as a function of the measured server activities, a mean activity across the plurality of servers, and an existing proportion of the requests assigned to the respective server;

d) the measuring step being performed by counting a number of the server requests sent to each of the plurality of servers, and counting a number of the server responses received from each server over a sample period; and

e) configuring the sample period to be an aggregate number of requests sent to the plurality of servers.

2. The method according to claim 1 , wherein the sample period is a period of time.

3. The method according to claim 1 , wherein the assessing step is performed by comparing the server requests and responses for each of the plurality of servers over the sample period.

4. The method according to claim 1 , wherein the measuring step is performed by calculating a response time of each server.

5. The method according to claim 4 , wherein the assessing step is performed by comparing a distribution of the server response times for each of the plurality of servers.

6. The method according to claim 1 , wherein the measuring step is performed by counting a number of requests for each server which have not received a response.

7. The method according to claim 6 , wherein the assessing step is performed by comparing the number of requests without responses over an aggregate number of requests to all the plurality of servers.

8. The method according to claim 1 , wherein the adjusting step is performed by combining distribution data from previous sample periods to calculate adjustments to distributions for a next sample period.

9. The method according to claim 1 , wherein the adjusting step is performed by combining data from previous sample periods according to a decay formula.

10. The method according to claim 3 , wherein the relative loadings are compared by comparing, for each server, a ratio (R q −R s ) / (R q +R s ) where R q is the number of requests sent to the server, and R s is the number of responses returned from the server.

11. The method according to claim 3 , wherein the relative loadings are compared by comparing, for each server, a ratio (R s −R q ) / (R q +R s ) where R q is the number of requests sent to the server, and R s is the number of responses returned from the server.

12. A system for distributing requests from a client node to servers of a server system having a plurality of servers, comprising:

a) a distributor at the client node, the distributor including means for measuring server activity of each server to obtain measured server activities;

b) means for assessing relative loading of the plurality of servers from the measured server activities;

c) means for adjusting a distribution of requests to individual servers of the plurality of servers in accordance with the assessing of the relative loadings by adjusting a proportion of the requests assigned to each server as a function of the measured server activities, a mean activity across the plurality of servers, and an existing proportion of the requests assigned to the respective server;

d) the activity measuring means comprising a counter for counting a number of requests for each server which have not received a response; and

e) the relative loading assessing means comprising a comparator for comparing the number of requests without responses over an aggregate number of requests to all the plurality of servers.

13. The system according to claim 12 , wherein the means for measuring server activity comprises a counter for counting a number of the server requests sent to each of the plurality of servers, and for counting a number of the server responses received from each server over a sample period.

14. The system according to claim 13 , wherein the relative loading assessing means comprises means for comparing the server requests and responses for each of the plurality of servers over the sample period.

15. The system according to claim 12 , wherein the activity measuring means comprises calculating means for calculating a response time of each server.

16. The system according to claim 15 , wherein the relative loading assessing means comprises means for comparing a distribution of the server response times for each of the plurality of servers.

17. The system according to claim 13 , wherein the request distribution adjusting means comprises a combiner for combining distribution data from previous sample periods to calculate adjustments to distributions for a next sample period.

18. The system according to claim 14 , wherein the means for comparing the server requests and responses compares, for each server, a ratio (R q −R s ) / (R q +R s ) where R q is the number of requests sent to the server, and R s is the number of responses returned from the server.

19. The system according to claim 14 , wherein the means for comparing the server requests and responses compares, for each server, the ratio (R s −R q ) / (R q +R s ) where R q is the number of requests sent to the server, and R s is the number of responses returned from the server.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2006
From: MARCONI UK INTELLECTUAL PROPERTY LTD.
To: M(DGP1) LTD
Reel/Frame 018635/0425 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2006
From: M(DGP1) LTD
To: ERICSSON AB
Reel/Frame 018797/0607 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2004
From: MARTIN, STEPHEN IAN
To: MARCONI COMMUNICATIONS LIMITED
Reel/Frame 015830/0863 →