METHOD AND SYSTEM FOR DISTRIBUTING LOAD BY REDIRECTING TRAFFIC
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a system for servers to redirect client requests to other servers in order to distribute client traffic among the servers. A client is assigned to a server although the client may be unaware of that assignment. When the client accesses a server, a server possibly identified to the client by a name service, the server checks the client'"'"'s assignment. If the client is not assigned to this server, then in some scenarios this server redirects the client to its assigned server. The client responds by sending its request to the assigned server. In other scenarios, the first server accessed by the client proxies the client'"'"'s traffic to the assigned server. A database is kept of client-to-server assignments. If the present load distribution is less than ideal (e.g., clients are assigned to an unavailable server), then the assignment database is updated to reflect how the load should be distributed.
34 Citations
57 Claims
-
1-38. -38. (canceled)
-
39. A method performed by servers that each provide a service for clients, the method for distributing a request for service received from a client to a server for servicing the request, the servers being in a network, some of the clients being internal to the network and some of the clients being external to the network, the method comprising:
-
providing a client-to-server assignment data structure specifying assignments of each client to one of the servers as a home server for the client; receiving by a receiving server a request sent from a requesting client for a service; and under control of the receiving server, identifying a home server of the requesting client from the client-to-server data structure; when the receiving server is the identified home server, providing by the receiving server the service requested by the requesting client; when the receiving server is not the identified home server, when the requesting client is internal to the network, sending a response to the requesting client indicating to redirect the received request to the identified home server so that the identified home server provides the service requested by the requesting client; and when the requesting client is external to the network, proxying the received request from the receiving server to the identified home server so that the identified home server provides the service requested by the requesting client. - View Dependent Claims (40, 41, 42, 43, 44)
-
-
45. A computer-readable storage medium containing instructions for controlling a server that provides a service for clients to distribute a request for service received from a client to another server that also provides the service for clients, the servers being in a network, some of the clients being internal to the network and some of the clients being external to the network, by a method comprising:
-
receiving by a receiving server a request sent from a requesting client for a service; and under control of the receiving server, identifying the home server of the requesting client; when the receiving server is the identified home server, providing the service requested by the requesting client; when the receiving server is not the identified home server, when the requesting client is internal to the network, sending a response to the requesting client indicating to redirect the received request to the identified home server so that the identified home server provides the service requested by the requesting client; and when the requesting client is external to the network, proxying the received request from the receiving server to the identified home server so that the identified home server provides the service requested by the requesting client. - View Dependent Claims (46, 47, 48, 49, 50)
-
-
51. A server that receives from a requesting client a request to provide a service and the receiving server either provides the service to the client or distributes the received request to another server that also provides the service for clients, the servers being in a network, some of the clients being internal to the network and some of the clients being external to the network, comprising:
-
a component that identifies a home server of the requesting client; a component that, when the receiving server is the identified home server, provides the service requested by the requesting client; a component that, when the receiving server is not the identified home server, determines whether the requesting client is internal or external to the network; when it is determined that the requesting client is internal to the network, sends a response to the requesting client indicating to redirect the received request to the identified home server; and when it is determined that the requesting client is external to the network, proxies the received request from the receiving server to the identified home server. - View Dependent Claims (52, 53, 54, 55, 56, 57)
-
Specification