IP Library Patent Application 18371703
Patent Application
App. No. 18/371,703

METHOD AND APPARATUS FOR ENHANCED CLIENT PERSISTENCE IN MULTI-SITE GSLB DEPLOYMENTS

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
18/371,703
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 (37)

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.

Assignments (1)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →