US2024015133A1PendingUtilityA1

Method and apparatus for enhanced client persistence in multi-site gslb deployments

Assignee: VMWARE INCPriority: Jun 14, 2021Filed: Sep 22, 2023Published: Jan 11, 2024
Est. expiryJun 14, 2041(~14.9 yrs left)· nominal 20-yr term from priority
H04L 61/4511H04L 61/5007H04L 61/2514H04L 67/1095H04L 67/1027H04L 67/1023H04L 61/5038
70
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Some embodiments provide a method that, at a first domain name system (DNS) cluster of a set of DNS clusters, receives a DNS request from a client. The first DNS cluster identifies, based on an identifier of the client in the DNS request, a home DNS cluster of the client. The method forwards the DNS request to the home DNS cluster. The home DNS cluster supplies a DNS response to the client. Identifying the home DNS cluster, in some embodiments, includes performing a hash on the identifier of the client. Supplying the DNS response, in some embodiments, includes receiving a virtual IP (VIP) address associated with one of a plurality of sets of application servers to the client and providing the received VIP address to the client in the DNS response.

Claims

exact text as granted — not AI-modified
1 - 20 . (canceled) 
     
     
         21 . A method of performing global server load balancing (GSLB), the method comprising:
 at a first domain name system (DNS) server:
 receiving a DNS request from a client; 
 determining whether the first DNS server is a home DNS server for the client that should resolve the DNS request for the client; 
 after determining that the first DNS server is not the home DNS server for the client, forwarding the DNS request to a second DNS server that is a home DNS cluster for the client, in order for the second DNS server to resolve the DNS request and provide to the client an Internet Protocol (IP) address as part of the DNS request resolution. 
   
     
     
         22 . The method of  claim 21  further comprising using an identifier of the client to identify the home DNS server for the client, said determining comprising determining whether the identified home DNS server is the first DNS server. 
     
     
         23 . The method of  claim 22 , wherein the DNS request is a first DNS request and the client is a first client and a second DNS server is the identified home DNS server for the first client, the method further comprising:
 at the first DNS server:
 receiving a second DNS request from a second client; 
 determining that the first DNS server is the home DNS server for the second client; 
 resolving the second DNS request to provide to the second client another IP address as part of the DNS request resolution. 
   
     
     
         24 . The method of  claim 22 , wherein using the identifier comprises performing a hash on the identifier of the client to compute a hash value and using the computed hash value as an index to perform a look-up to identify the home DNS server. 
     
     
         25 . The method of  claim 23  further comprising creating, in a persistence table of the first DNS cluster, an entry associating the other IP address provided to the second client. 
     
     
         26 . The method of  claim 25  further comprising moving the entry to a third DNS server when the third DNS server becomes the home DNS server of the second client. 
     
     
         27 . The method of  claim 21 , wherein
 the IP address is a virtual IP (VIP) address associated with one of a set of servers that is associated with a domain name that is part of the DNS request;   the domain name comprises an identifier for an application executing on each server in the set of servers; and   the client, after receiving the VIP address, sends a packet flow to the VIP address for a load balancer to use to select one of the servers to process the packet flow.   
     
     
         28 . The method of  claim 25 , wherein the load balancer performs a network address translation (NAT) that replaces the VIP with an IP address of the selected server. 
     
     
         29 . A non-transitory machine readable medium storing a program that when executed by one or more processing units performs global server load balancing (GSLB) at a first DNS server, the program comprising sets of instructions for:
 receiving a DNS request from a client;   determining whether the first DNS server is a home DNS server for the client that should resolve the DNS request for the client;   after determining that the first DNS server is not the home DNS server for the client, forwarding the DNS request to a second DNS server that is a home DNS cluster for the client, in order for the second DNS server to resolve the DNS request and provide to the client an Internet Protocol (IP) address as part of the DNS request resolution.   
     
     
         30 . The non-transitory machine readable medium of  claim 29  further comprising using an identifier of the client to identify the home DNS server for the client, said determining comprising determining whether the identified home DNS server is the first DNS server. 
     
     
         31 . The non-transitory machine readable medium of  claim 30 , wherein the DNS request is a first DNS request and the client is a first client and a second DNS server is the identified home DNS server for the first client, the program further comprising sets of instructions for:
 receiving a second DNS request from a second client;   determining that the first DNS server is the home DNS server for the second client;   resolving the second DNS request to provide to the second client another IP address as part of the DNS request resolution.   
     
     
         32 . The non-transitory machine readable medium of  claim 30 , wherein the set of instructions for using the identifier comprises a set of instructions for performing a hash on the identifier of the client to compute a hash value and using the computed hash value as an index to perform a look-up to identify the home DNS server. 
     
     
         33 . The non-transitory machine readable medium of  claim 31 , wherein the program further comprises a set of instructions for creating, in a persistence table of the first DNS cluster, an entry associating the other IP address provided to the second client. 
     
     
         34 . The non-transitory machine readable medium of  claim 33 , wherein the program further comprises a set of instructions for moving the entry to a third DNS server when the third DNS server becomes the home DNS server of the second client. 
     
     
         35 . The non-transitory machine readable medium of  claim 34 , wherein
 the IP address is a virtual IP (VIP) address associated with one of a set of servers that is associated with a domain name that is part of the DNS request;   the domain name comprises an identifier for an application executing on each server in the set of servers; and   the client, after receiving the VIP address, sends a packet flow to the VIP address for a load balancer to use to select one of the servers to process the packet flow.   
     
     
         36 . The non-transitory machine readable medium of  claim 33 , wherein the load balancer performs a network address translation (NAT) that replaces the VIP with an IP address of the selected server.

Join the waitlist — get patent alerts

Track US2024015133A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.