Replica routing
First Claim
Patent Images
1. A replica router comprising:
- at least one communications interface;
a processor coupled to the at least one communications interface; and
a memory coupled to the processor;
wherein the processor is configured to;
receive a network request for access from a client computer;
calculate a performance metric value for each of at least two server replicas, the value specifying an estimated communication performance between the client computer and a server replica based upon the client computer'"'"'s location in a network; and
direct the client computer to at least one server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network based on the performance metric values of the server replicas as calculated by the replica router; and
wherein the processor is further configured to direct the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
3 Assignments
0 Petitions
Accused Products
Abstract
The present invention is a new method called replica routing that automatically directs client computers that request a service to a server replica for that service. The replica chosen by replica routing is the replica that is expected to provide the best performance to the client based upon the client'"'"'s location in the internetwork topology and the estimated performance of the internetwork. In addition, the system and method is designed to permit new replicas to be flexibly added without undue administrative overhead.
51 Citations
19 Claims
-
1. A replica router comprising:
-
at least one communications interface; a processor coupled to the at least one communications interface; and a memory coupled to the processor; wherein the processor is configured to; receive a network request for access from a client computer; calculate a performance metric value for each of at least two server replicas, the value specifying an estimated communication performance between the client computer and a server replica based upon the client computer'"'"'s location in a network; and direct the client computer to at least one server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network based on the performance metric values of the server replicas as calculated by the replica router; and wherein the processor is further configured to direct the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. For a replication router, a method of replica routing in a communications network comprising the steps of:
-
receiving a network request from a client computer; calculating a performance metric value for each of at least two server replicas, the value specifying an estimated communication performance between the client computer and the server replica based upon the client computer'"'"'s location in a network; directing the client computer to at least one server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network based on the performance metric values of the server replicas as calculated by the replica routers; and directing the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. An network replica router comprising:
-
at least one communications interface; a processor coupled to the at least one communications interface; and a memory coupled to the processor; wherein the processor is configured to; receive replica advertisements, each of the advertisements containing at least one identifier of a network in the network to be serviced by at least one server replica; maintain a database of the server replica advertisements; receive network requests from a client computer; and direct the client computer to one of the at least one server replicas based upon the relationship between the networks identified in the advertisements in the database and a network in which the client computer is located; and direct the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
-
15. For a replication router, a method of replica routing in a network comprising the steps of:
-
receiving replica advertisements, each of the advertisements containing at least one identifier of a network in the network to be serviced by at least one server replica; maintaining a database of the server replica advertisements; receiving network requests from a client computer; and directing the client computer to at least one server replica based upon the relationship between the networks identified in the advertisements in the database and a network in which the client computer is located; and directing the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
-
16. A computer program product having a computer-readable medium including computer program logic stored thereon that, when performed on a computer, causes the computer to:
-
receive a network request from a client computer; calculate a performance metric value for each of at least two server replicas, the value specifying an estimated communication performance between the client computer and the server replica based upon the client computer'"'"'s location in a network; direct the client computer to at least one server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network based on the performance metric values of the server replicas as calculated by the replica router; and direct the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
-
17. A computer program product having a computer-readable medium including computer program logic stored thereon that, when performed on a computer, causes the computer to:
-
receive replica advertisements, each of the advertisements containing at least one identifier of a sub-network in a network to be serviced by at least one server replica; maintain a database of the server replica advertisements; receive network requests from a client computer; and direct the client computer to at least one server replica based upon the relationship between the networks identified in the advertisements in the database and a network in which the client computer is located; and direct the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
-
18. A replica router comprising:
-
at least one communications interface; a processor coupled to the at least one communications interface; and a memory coupled to the processor; wherein the processor includes; a means for receiving a network request for access from a client computer; a means for calculating a performance metric value for each of at least two server replicas, the value specifying an estimated communication performance between the client computer and a server replica based upon the client computer'"'"'s location in a network; and a means for directing the client computer to at least one server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network based on the performance metric values of the server replicas as calculated by the replica router; and a means for directing the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
-
19. A replica router comprising:
-
at least one communications interface; a processor coupled to the at least one communications interface; and a memory coupled to the processor; wherein the processor includes; a means for receiving replica advertisements, each of the advertisements containing at least one identifier of a sub-network in a network to be serviced by at least one server replica; a means for maintaining a database of the server replica advertisements; a means for receiving network requests from a client computer; and a means for directing the client computer to one of the at least one server replicas based upon the relationship between the networks identified in the advertisements in the database and a network in which the client computer is located; and a means for directing the client computer to a server replica that is estimated to provide good performance based upon the client computer'"'"'s location in the network by directing the client computer to a replica router lower in a replica router hierarchy.
-
Specification