IP Library Granted Patent US 8,527,641
Granted Patent B2
US 8,527,641 · App. 12/625,004 · Granted Sep 3, 2013

Systems and methods for applying transformations to IP addresses obtained by domain name service (DNS)

Inventors: Sumedh Degaonkar (Pune, IN); Manikam Muthiah (Dindigul, IN)
Assignee: Citrix Systems, Inc.
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 8,527,641
App. No.
12/625,004
Granted
Sep 3, 2013
Kind
B2
Abstract

Described herein are systems and methods for improving networked communication systems by transforming IP addresses. In particular, an intermediary device disposed in a network between a plurality of clients and a plurality of servers can receive a request for a service offered at a specified domain name. The appliance can also receive a DNS-resolved primary address for a server associated with the domain name, and transform the primary address to a secondary address for the server. The address transformation can be done by the intermediary to prevent service interruption between a client and server due, for example, to server maintenance.

Claims (34)

1. A method for transforming server internet protocol addresses specified via a domain name, the method comprising:

(a) receiving, by an intermediary device between a plurality of a clients and a plurality of servers, a request to access a server identified by a domain name;

(b) receiving, by the intermediary device, an internet protocol (IP) address for the domain name of the server resolved by a domain name service;

(c) identifying, by the intermediary device, a transformation policy for the server, the transformation policy comprising a translation IP address and a translation mask;

(d) transforming, by the intermediary device, the IP address of the server to a transformed IP address for the server by applying a second bitwise operation of the translation IP address of the transformation policy to a result of a first bitwise operation of the translation mask of the transformation policy to the IP address; and

(e) forwarding, by the intermediary device, the request to the transformed IP address.

2. The method of claim 1 , wherein step (b) further comprises receiving the internet protocol address of the server from the domain name service.

3. The method of claim 1 , wherein step (c) further comprises identifying, by the intermediary device, via the transformation policy the translation IP address comprising a fixed IP address replacement of the IP address.

4. The method of claim 1 , wherein step (c) further comprises identifying, by the intermediary device, via the transformation policy the translation mask comprising a predetermined number of bits of the IP address to replace with a value specified by the translation IP address.

5. The method of claim 1 , wherein step (d) further comprise transforming the IP address by applying a bitwise AND operation of the IP address with the translation mask.

6. The method of claim 5 , further comprising applying the result of the bitwise AND operation to a bitwise OR operation of the translation IP address and the translation mask.

7. The method of claim 5 , further comprising determining a bitwise ones complement of the translation mask prior to the applying the bitwise AND operation.

8. The method of claim 1 , further comprising the transformation policy specifying the translation IP address and the translation mask to transform the IP address to a secondary IP address of the server.

9. The method of claim 8 , wherein step (e) further comprises forwarding the request to the transformed IP address identifying the secondary IP address of the server.

10. The method of claim 1 , wherein step (c) further comprises the transformation policy specifying the domain name for the translation IP address and the translation mask.

11. A system for transforming server internet protocol addresses specified via a domain name, the system comprising:

an intermediary device between a plurality of a clients and a plurality of servers, receive a request to access a server identified by a domain name and receiving, an internet protocol (IP) address for the domain name of the server resolved by a domain name service;

a transformation policy for the domain name, the transformation policy comprising a translation IP address and a translation mask; and

an IP address transformer of the intermediary device transforming the IP address of the server to a transformed IP address for the server by applying a second bitwise operation of the translation IP address of the transformation policy and to a result of a first bitwise operation of the translation mask of the transformation policy to the IP address;

wherein the intermediary device forwards the request to the transformed IP address.

12. The system of claim 11 , wherein the intermediary device receives the internet protocol address of the server from the domain name service.

13. The system of claim 11 , wherein the transformation policy identifies the translation IP address comprising a fixed IP address replacement of the IP address.

14. The system of claim 11 , wherein the transformation policy identifies the translation mask comprising a predetermined number of bits of the IP address to replace with a value specified by the translation IP address.

15. The system of claim 11 , wherein the IP address transformer transforms the IP address by applying a bitwise AND operation of the IP address with the translation mask.

16. The system of claim 15 , wherein the IP address transformer applies the result of the bitwise AND operation to a bitwise OR operation of the translation IP address and the translation mask.

17. The system of claim 15 , wherein the IP address transformer determines a bitwise ones complement of the translation mask prior to the applying the bitwise AND operation.

18. The system of claim 11 , wherein the transformation policy specifies the translation IP address and the translation mask to transform the IP address to a secondary IP address of the server.

19. The system of claim 18 , wherein the intermediary device forwards the request to the transformed IP address identifying the secondary IP address of the server.

20. A method for transforming server internet protocol addresses specified via a domain name, the method comprising:

(a) receiving, by an intermediary device between a plurality of a clients and a plurality of servers, a request to access a server identified by a domain name;

(b) receiving, by the intermediary device, an internet protocol (IP) address for the domain name of the server resolved by a domain name service;

(c) identifying, by the intermediary device, a transformation policy for the server, the transformation policy comprising a translation IP address and a translation mask;

(d) transforming, by the intermediary device, the IP address of the server to a transformed IP address for the server by applying a bitwise AND operation of the translation IP address to a result of a bitwise OR operation of the translation mask and the IP address; and

(e) forwarding, by the intermediary device, the request to the transformed IP address.

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 →
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 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 →
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 →
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 →
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 →
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 Feb 9, 2010
From: DEGAONKAR, SUMEDH; MUTHIAH, MANIKAM
To: CITRIX SYSTEMS, INC.
Reel/Frame 023916/0775 →
Continuity (2)
Provisional Application 61117887 · Nov 25, 2008
Related Publication 20100138551A1 · Jun 3, 2010