US2009172192A1PendingUtilityA1

Mapless Global Traffic Load Balancing Via Anycast

43
Assignee: CHRISTIAN MICHAEL FPriority: Dec 28, 2007Filed: Dec 28, 2007Published: Jul 2, 2009
Est. expiryDec 28, 2027(~1.5 yrs left)· nominal 20-yr term from priority
H04L 67/101H04L 67/1029H04L 45/122H04L 45/125H04L 67/1021H04L 45/121H04L 67/1008H04L 45/586H04L 45/04H04L 61/4552H04L 61/4511H04L 67/1001
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques are described for directing connections between clients and the closest web server. Authoritative DNS resolvers of a network are placed at edges of the network. Using anycast, the authoritative DNS resolvers advertise routes of their destination netblock to the Internet. A request from a client to connect to the network is routed, based upon BGP tables, to the closest particular authoritative DNS resolver. Once the request is received, a response is sent to the client with the IP address of the closest web server. The closest web server is determined through in-network health check measurements, with the authoritative DNS resolvers dynamically selecting IP addresses closest to themselves. Routing protocols that directed the packet to the closest authoritative DNS resolver also dictate the route of subsequent traffic to the network. Thus, the closest web server selected by the authoritative DNS resolver is also the closest web server to the client.

Claims

exact text as granted — not AI-modified
1 . A method to connect to a server, comprising:
 announcing to a first network, from a first plurality of servers in a second network, a route to the second network;   receiving, from a client, a request routed to a first particular server, of the first plurality of servers,
 wherein the request is routed to the first particular server based at least in part on the announcements from the first plurality of servers; 
   upon receiving the request at the first particular server, selecting a second particular server, of a second plurality of servers in the second network, based upon at least one criterion; and   in response to selecting the second particular server, outputting, to the client, an IP address of the second particular server for the client to connect to the second particular server.   
   
   
       2 . The method of  claim 1 , wherein each of the first plurality of servers are located on edges of the second network. 
   
   
       3 . The method of  claim 1 , wherein the request is routed based upon anycast. 
   
   
       4 . The method of  claim 3 , wherein anycast is implemented using the border gateway protocol. 
   
   
       5 . The method of  claim 1 , wherein the first plurality of servers comprises DNS servers associated with a domain of the second network. 
   
   
       6 . The method of  claim 5 , wherein the first plurality of servers further comprises global load balancing servers. 
   
   
       7 . The method of  claim 1 , wherein selecting the second particular server is based upon determining which server, among the second plurality of servers, is closest to the first particular server. 
   
   
       8 . The method of  claim 1 , wherein selecting the second particular server further comprises each of the first plurality of servers monitoring availability and health of the second plurality of servers. 
   
   
       9 . A system comprising,
 a first plurality of servers located on edges of a second network, wherein   the first plurality of servers in the second network are configured to announce to a first network, a route to the second network; and   a second plurality of servers in the second network;   a first particular server, of the first plurality of servers, is configured to receive a request from a client,
 wherein the request is routed to the first particular server based at least in part on the announcements from the first plurality of servers; 
   upon receiving the request, the first particular server is configured to select a second particular server, of the second plurality of connection servers in the second network, based upon at least one criterion;   in response to selecting the second particular server, the first particular server is configured to output, to the client, an IP address of the second particular server.   
   
   
       10 . The system of  claim 9 , wherein the request is routed based upon anycast. 
   
   
       11 . The system of  claim 9 , wherein the first plurality of servers comprises DNS servers associated with a domain of the second network. 
   
   
       12 . The system of  claim 9 , wherein selecting the second particular server is based upon determining which server, among the second plurality of servers, is closest to the first particular server. 
   
   
       13 . A computer-readable storage medium storing instructions to connect to a server, the instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of:
 announcing to a first network, from a first plurality of servers in a second network, a route to the second network;   receiving, from a client, a request routed to a first particular server, of the first plurality of servers,
 wherein the request is routed to the first particular server based at least in part on the announcements from the first plurality of servers; 
   upon receiving the request at the first particular server, selecting a second particular server, of a second plurality of servers in the second network, based upon at least one criterion; and   in response to selecting the second particular server, outputting, to the client, an IP address of the second particular server for the client to connect to the second particular server.   
   
   
       14 . The computer-readable storage medium of  claim 13 , wherein each of the plurality of servers are located on edges of the second network. 
   
   
       15 . The computer-readable storage medium of  claim 13 , wherein the request is routed based upon anycast. 
   
   
       16 . The computer-readable storage medium of  claim 15 , wherein anycast is implemented using the border gateway protocol. 
   
   
       17 . The computer-readable storage medium of  claim 13 , wherein the plurality of servers comprises DNS servers associated with a domain of the second network. 
   
   
       18 . The computer-readable storage medium of  claim 17 , wherein the plurality of servers further comprises global load balancing servers. 
   
   
       19 . The computer-readable storage medium of  claim 13 , wherein selecting the particular connection server is based upon determining the connection server closest to the particular server. 
   
   
       20 . The computer-readable storage medium of  claim 13 , wherein selecting the particular connection server further comprises each of the plurality of servers monitoring availability and health of the plurality of connection servers.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.