Global server load balancing
First Claim
1. A method performed by a load balancing switch, the method comprising:
- storing, by the load balancing switch, round trip time data for each of a plurality of site switches, wherein the round trip time data for a site switch in the plurality of site switches comprises a time for exchanging at least one message between the site switch and a client machine, each site switch in the plurality of site switches associated with one or more host servers;
receiving, by the load balancing switch from a domain name server, a plurality of network addresses generated by the domain name server in response to a domain name query originating at the client machine, the plurality of network addresses comprising network addresses of multiple site switches from the plurality of site switches;
ordering, by the load balancing switch, the plurality of network addresses based upon the round trip time data for the plurality of site switches to generate a first ordered list of the plurality of network addresses; and
causing, by the load balancing switch, the first ordered list of network addresses to be communicated to the client machine.
6 Assignments
0 Petitions
Accused Products
Abstract
A global server load balancing (GSLB) switch serves as a proxy to an authoritative DNS communicates with numerous site switches which are coupled to host servers serving specific applications. The GSLB switch receives from site switches operational information regarding host servers within the site switches neighborhood. When a client program requests a resolution of a host name, the GSLB switch, acting as a proxy of an authoritative DNS, returns one or more ordered IP addresses for the host name. The IP addresses are ordered using metrics that include the information collected from the site switches. In one instance, the GSLB switch places the address that is deemed “best” at the top of the list.
-
Citations
35 Claims
-
1. A method performed by a load balancing switch, the method comprising:
-
storing, by the load balancing switch, round trip time data for each of a plurality of site switches, wherein the round trip time data for a site switch in the plurality of site switches comprises a time for exchanging at least one message between the site switch and a client machine, each site switch in the plurality of site switches associated with one or more host servers; receiving, by the load balancing switch from a domain name server, a plurality of network addresses generated by the domain name server in response to a domain name query originating at the client machine, the plurality of network addresses comprising network addresses of multiple site switches from the plurality of site switches; ordering, by the load balancing switch, the plurality of network addresses based upon the round trip time data for the plurality of site switches to generate a first ordered list of the plurality of network addresses; and causing, by the load balancing switch, the first ordered list of network addresses to be communicated to the client machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a load balancing switch comprising a memory, the load balancing switch configured to store round trip time data for each of a plurality of site switches, wherein the round trip time data for a site switch in the plurality of site switches comprises a time for exchanging at least one message between the site switch and a client machine, each site switch in the plurality of site switches associated with one or more host servers; wherein the load balancing switch is configured to receive a plurality of network addresses generated by a domain name server in response to a domain name query originated from the client machine, the plurality of network addresses comprising network addresses of multiple site switches from the plurality of site switches, order the plurality of network addresses based upon the round trip time data for the plurality of site switches to generate a first ordered list of the plurality of network addresses, and cause the first ordered list of network addresses to be communicated to the client machine. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A switch comprising:
-
a memory configured to store round trip time data for each of a plurality of network devices, wherein the round trip time data for a network device comprises a time associated with communication between the network device and a client machine; and wherein the switch is configured to; generate an ordered list of network addresses based upon the round trip time data for the plurality of network devices, the ordered list of network addresses comprising network addresses generated by a domain name server and received by the switch in response to a domain name query originated from the client machine; and communicate the ordered list of network addresses to the client machine. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
-
26. A method comprising:
-
storing, by a network device, round trip time data for each of a plurality of site switches, each site switch associated with one or more host servers, wherein the round trip time data for a site switch comprises a time for exchanging at least one message between the site switch and a client machine; receiving, by the network device from a domain name server, a set of network addresses for a domain name query originating at the client machine and received by the domain name server, the set of network addresses comprising network addresses of multiple site switches from the plurality of site switches; generating, by the network device, an ordered list of network addresses by ordering the set of network addresses based upon the round trip time data stored for the plurality of site switches; and communicating, by the network device, the ordered list of network addresses to the client machine. - View Dependent Claims (27)
-
-
28. A method comprising:
-
receiving, by a load balancing switch, from a domain name system (DNS) server, a plurality of network addresses generated by the DNS server in response to a domain name query originated at a client machine; ordering, by the load balancing switch, the plurality of network addresses based upon round trip time data for a plurality of site switches to generate an ordered list of network addresses, the round trip time data comprising, for each site switch in the plurality of site switches, a time for exchanging at least one message between the site switch and the client machine; and causing, by the load balancing switch, the ordered list of network addresses to be communicated to the client machine. - View Dependent Claims (29, 30, 31)
-
-
32. A network device comprising:
-
a memory configured to store a plurality of network addresses received by the network device from a domain name system (DNS) server, the plurality of network addresses generated by the DNS server in response to a domain name query originated at a client machine; and a set of one or modules configured to; order the plurality of network addresses based upon round trip time data for a plurality of site switches to generate an ordered list of network addresses, the round trip time data comprising, for each site switch in the plurality of site switches, a time for exchanging at least one message between the site switch and the client machine; and cause the ordered list of network addresses to be communicated to the client machine. - View Dependent Claims (33, 34, 35)
-
Specification