Reliability and availability of distributed servers
First Claim
1. A distributed system comprising:
- a first network proxy adapted to interface with a first client and a first server that is local to the first network, wherein the first network proxy is connected to the first client;
a second network proxy adapted to interface with the first network proxy via a network connection and adapted to interface with a second client and a second server, wherein the second network proxy is connected to the second client;
wherein the first network proxy includes;
first logic, adapted to determine the operational status of the network connection between the first network proxy and the second network proxy;
second logic, adapted to receive a request for first data from the first client; and
third logic, adapted to respond to the request by retrieving first data, or a representation thereof, from the second server via the second network proxy if the first logic determined that the network connection between the first network proxy and the second network proxy was operational;
wherein the third logic is further configured to respond to the request, by retrieving the first data or the representation thereof, from the first server if the first logic determined that the network connection was not operational;
wherein the second network proxy includes;
fourth logic, adapted to determine the operational status of the network connection between the first network proxy and the second network proxy;
fifth logic, adapted to receive a second request for second data from the second client;
sixth logic, adapted to respond to the second request by retrieving second data, or a representation thereof, from the first server via the first network proxy if the fourth logic determined that the network connection between the first proxy and the second proxy was operational;
wherein the sixth logic is further configured to respond to the second request by retrieving the second data of the representation thereof, from the second server if the fourth logic determined that the network was not operational.
20 Assignments
0 Petitions
Accused Products
Abstract
A system of network proxies distributes data to multiple servers. Each network proxy is associated with a server. A network proxy intercepts a client request for data. If the network proxy determines that the request can be served using a copy of data stored on the local server, rather than the data stored on a remote server, it diverts the request to the local server. If the network proxy determines that the request cannot be served using a data from the local server, the network proxy diverts the request to a remote server storing the primary copy of the data. A server map specifies the locations of the primary copies of data. When a primary copy of data is updated on one of the servers, the associated network proxy propagates the updated data to the other servers. The servers can provide data from files, e-mail services, databases, or multimedia services.
-
Citations
14 Claims
-
1. A distributed system comprising:
-
a first network proxy adapted to interface with a first client and a first server that is local to the first network, wherein the first network proxy is connected to the first client; a second network proxy adapted to interface with the first network proxy via a network connection and adapted to interface with a second client and a second server, wherein the second network proxy is connected to the second client; wherein the first network proxy includes; first logic, adapted to determine the operational status of the network connection between the first network proxy and the second network proxy; second logic, adapted to receive a request for first data from the first client; and third logic, adapted to respond to the request by retrieving first data, or a representation thereof, from the second server via the second network proxy if the first logic determined that the network connection between the first network proxy and the second network proxy was operational; wherein the third logic is further configured to respond to the request, by retrieving the first data or the representation thereof, from the first server if the first logic determined that the network connection was not operational; wherein the second network proxy includes; fourth logic, adapted to determine the operational status of the network connection between the first network proxy and the second network proxy; fifth logic, adapted to receive a second request for second data from the second client; sixth logic, adapted to respond to the second request by retrieving second data, or a representation thereof, from the first server via the first network proxy if the fourth logic determined that the network connection between the first proxy and the second proxy was operational; wherein the sixth logic is further configured to respond to the second request by retrieving the second data of the representation thereof, from the second server if the fourth logic determined that the network was not operational. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A distributed system comprising:
-
a first network proxy adapted to interface with a first client and a first server that is local to the first network proxy, wherein the first network proxy is connected to the client; a second network proxy adapted to interface with the first network proxy via a network connection and adapted to interface with a second server that is local to the second network proxy, wherein the second network proxy is connected to the second server; wherein the first network proxy includes; first logic, adapted to determine the operational status of the network connection between the first network proxy and the second network proxy; second logic, adapted to receive a first request for first data from the first client; and third logic, adapted to respond to the first request, at least when the request is addressed to the second server, by; in response to the first logic determining that the network connection between the first proxy and the second proxy is not operational, retrieving a copy of the first data from the first server, and then sending the copy of the first data to the first client; wherein the second logic is further adapted to receive a second request for second data from the first client; wherein third logic is further adapted to respond to the second request, at least when the request is addressed to the second server, by; in response to the first logic determining that the network connection between the first proxy and the second proxy is operational, retrieving the second data from the second server, even if the first server has a local copy of the second data, and then sending the second data to the first client; wherein the second logic is further adapted to receive a third request for third data from the first client; wherein third logic is further adapted to respond to the third request, at least when the request is addressed to the second server, by; in response to the first logic determining that the network connection between the first proxy and the second proxy is not operational and that the first server does not have a copy of the third data, retrieving a broadcast copy of the third data from the first server and then sending the broadcast copy of the third data to the first client. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification