IP Library › Granted Patent US 9,219,781
Granted Patent B2
US 9,219,781 · App. 13/858,018 · Granted Dec 22, 2015

Systems and methods for GSLB preferred backup list

Inventors: Devesh Prakash (Bangalore, IN); Sergey Verzunov (Moscow, RU)
Assignee: CITRIX SYSTEMS, INC.
H04L67/1023H04L61/1511H04L61/609H04L67/1036H04L67/18H04L69/40
View Patent ↗
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 9,219,781
App. No.
13/858,018
Filed
Apr 6, 2013
Granted
Dec 22, 2015
Kind
B2
Art Unit
2441
USPC
709/226
Abstract

The present application is directed towards systems and methods for a user to configure the backup locations to use by an intermediary device providing Global Server Load Balancing (GSLB) services when a primary location is down. In some embodiments, when GSLB is based on static proximity of the location of the client to the GSLB sites and if the primary location is DOWN, then request may be load balanced among all the other locations. But this may not be desirable in many cases. So we need to provide option to the user to specify the preferred list of backup locations to service a client request. The present solution achieves this configurability by using a GSLB policy based on preferred location. One can configure preferred location(s) via a GSLB policy to redirect the client to preferred location(x). One can configure individual policies for different client locations. Based on implementation requirements, one can configure country level granularity, state level granularity and so on.

Claims (31)

1. A method for using a preferred backup list of global server load balancing (GSLB) service locations, the method comprising:

(a) establishing, by a device intermediary to a plurality of clients and a plurality of global server load balancing (GSLB) service locations, a domain name service (DNS) policy that specifies an ordered list of preferred locations and a rule comprising an expression for matching a location of the client;

(b) receiving, by the device, a DNS request of a client of the plurality of clients, the request identifying an internet protocol (IP) address of the client;

(c) identifying, by the device for the DNS request, the DNS policy based on matching a location of the client corresponding to the IP address of the client to the expression of the rule of the DNS policy;

(d) comparing, by the device responsive to the DNS policy, each preferred location of the ordered list of preferred locations to locations of GSLB services managed by the device; and

(e) selecting, by the device based on the comparison, a preferred location from the ordered list of preferred locations to which to resolve the DNS request.

2. The method of claim 1 , wherein step (a) further comprises establishing, by the device, the DNS policy to specify the ordered list of preferred locations to provide one of a country level granularity or a state level granularity.

3. The method of claim 1 , wherein step (a) further comprises establishing, by the device, the DNS policy to specify the ordered list of preferred locations comprising one or more preferred locations specified by a wild card qualifier.

4. The method of claim 1 , wherein step (b) further comprises receiving, by the device, the DNS request from a local DNS service, the location for the internet protocol (IP) address corresponding to the location of one of the preferred locations in the ordered list of preferred locations.

5. The method of claim 1 , wherein step (c) further comprises determining, by the device, the location of the client from the IP address of the client based on a lookup of the location in a static proximity database using the IP address.

6. The method of claim 1 , wherein step (d) further comprises comparing, by the device, each preferred location in the ordered list to a location of each of a plurality of GSLB services managed by the device.

7. The method of claim 6 , further comprising selecting the preferred location that first matches the location of a GSLB service of the plurality of GSLB services managed by the device.

8. The method of claim 1 , wherein step (d) further comprises determining, by the device, that the preferred location in the ordered list matches two or more locations of two or more GSLB services managed by the device.

9. The method of claim 8 , wherein step (e) further comprises load balancing, by the device, the DNS request across the two or more GSLB services.

10. The method of claim 1 , wherein step (e) further comprises transmitting, by the device, to the client responsive the DNS request the IP address for the GSLB service corresponding to the selected preferred location.

11. A system for using a preferred backup list of global server load balancing (GSLB) service locations, the system comprising:

a device intermediary to a plurality of clients and a plurality of global server load balancing (GSLB) service locations;

a domain name service (DNS) policy of the device that specifies an ordered list of preferred locations and a rule comprising an expression for matching a location of the client;

GSLB virtual servers executable on the device and configured to manage GSLB services corresponding to the plurality of GSLB service locations;

wherein the device is configured to receive a DNS request of a client of the plurality of clients, the DNS request identifying an internet protocol (IP) address of the client;

wherein the device is configured identify for the request the DNS policy based on matching a location of the client corresponding to the IP address of the client to the expression of the rule of the DNS policy; and

wherein the device is configured to compare, responsive to the DNS policy, each preferred location of the ordered list of preferred locations to locations of the GSLB services managed by the GSLB virtual servers; and select based on the comparison, a preferred location from the ordered list of preferred locations to which to resolve the DNS request.

12. The system of claim 11 , wherein the DNS policy is configured to specify the ordered list of preferred locations to provide one of a country level granularity or a state level granularity.

13. The system of claim 11 , wherein the DNS policy is configured to specify the ordered list of preferred locations comprising one or more preferred locations specified by a wild card qualifier.

14. The system of claim 11 , wherein the device is configured to receive the DNS request from a local DNS service, the location for the internet protocol (IP) address corresponding to the location of one of the preferred locations in the ordered list of preferred locations.

15. The system of claim 11 , wherein the device is configured to determine the location of the client from the IP address of the client based on a lookup of the location in a static proximity database using the IP address.

16. The system of claim 11 , wherein the device is configured to compare each preferred location in the ordered list to a location of each of a plurality of GSLB services managed by the virtual servers of the device.

17. The system of claim 16 , wherein the device is configured to select the preferred location that first matches the location of a GSLB service of the plurality of GSLB services managed by virtual servers of the device.

18. The system of claim 11 , wherein the device is configured to determine that the preferred location in the ordered list matches two or more locations of two or more GSLB services managed by virtual servers on the device.

19. The system of claim 18 , wherein the device is configured to load balance the DNS request across the two or more GSLB services.

20. The system of claim 11 , wherein the device is configured to transmit to the client responsive the DNS request the IP address for the GSLB service corresponding to the selected preferred location.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2013
From: PRAKASH, DEVESH; VERZUNOV, SERGEY
To: CITRIX SYSTEMS, INC.
Reel/Frame 031455/0328 →
Continuity (1)
Related Publication 20140304412A1 · Oct 9, 2014