IP Library Granted Patent US 8,261,057
Granted Patent B2
US 8,261,057 · App. 12/794,446 · Granted Sep 4, 2012

System and method for establishing a virtual private network

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,261,057
App. No.
12/794,446
Granted
Sep 4, 2012
Kind
B2
Abstract

A system and method for establishing a virtual private network (VPN) between a client and a private data communication network. An encrypted data communication session, such as a—Secure Sockets Layer (SSL) data communication session, is established between a gateway and the client over a public data communication network. The gateway then sends a programming component to the client for automatic installation and execution thereon. The programming component operates to intercept communications from client applications destined for resources on the private data communication network and to send the intercepted communications to the gateway via the encrypted data communication session instead of to the resources on the private data communication network.

Claims (29)

1. A method comprising:

(a) establishing, by a network device, a connection with a client requesting access to a network via the network device;

(b) transmitting, by the network device, a first program to the client for automatic installation and execution thereon in response to the establishment;

(c) installing, by the first program upon execution, a second program in a network stack of the client, the second program redirecting to the first program a packet from a client application destined for the network;

(d) encapsulating, by the first program, payload from the redirected packet; and

(e) transmitting, by the first program, the encapsulated payload to the network device.

2. The method of claim 1 , wherein step (a) further comprises requesting, by the client, access from a public network to a private network via the network device.

3. The method of claim 1 , wherein step (a) further comprises establishing the connection with the client in response to the client application requesting access to the network.

4. The method of claim 1 , wherein establishing the connection further comprises establishing a secure sockets layer (SSL) connection with the client.

5. The method of claim 1 , wherein transmitting the first program further comprises transmitting an ActiveX control or a Java applet.

6. The method of claim 1 , further comprising providing, by the first program, a first endpoint for communications over the established connection and providing, by the network device, a second endpoint for the communications over the established connection.

7. The method of claim 1 , wherein installing the second program further comprises installing a filter at the transport layer of the network stack.

8. The method of claim 1 , wherein step (c) further comprises determining whether to redirect the packet to the first program.

9. The method of claim 1 , wherein step (d) further comprises encrypting the payload from the redirected packet.

10. The method of claim 1 , further comprising transmitting, by the network device, the payload to a destination in the network.

11. A method comprising:

(a) establishing a connection between a client on a first network and a network device intermediary to the first network and a second network;

(b) intercepting, by a filter operating at a transport layer of the client, a packet from an application of the client responsive to the establishment, the packet destined for the second network;

(c) forwarding, by the filter, the intercepted packet to a program executing on the client, the program terminating an end of the connection at the client; and

(d) transmitting, by the program, payload from the intercepted packet to the network device via the connection.

12. The method of claim 11 , wherein step (a) further comprises establishing the connection with the client in response to the application requesting access to the second network.

13. The method of claim 11 , wherein the program executes in an application layer of the client.

14. The method of claim 11 , wherein a web browser of the client executes the program.

15. The method of claim 11 , further comprising providing, by the program, a first endpoint for the connection and providing, by the network device, a second endpoint for the connection.

16. The method of claim 11 , wherein step (c) further comprises determining whether to forward the packet to the program.

17. The method of claim 11 , wherein step (d) further comprises encrypting the payload from the intercepted packet prior to transmission to the network device.

18. The method of claim 11 , further comprising transmitting, by the network device, the payload to a destination in the second network.

19. The method of claim 11 , further comprising establishing, by the application, a connection to the transport layer of the client to activate the filter for intercepting packets.

20. The method of claim 11 , further comprising installing, by the program, the filter at the transport layer of the client.

Assignments (11)
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 Apr 23, 2013
From: CITRIX APPLICATION NETWORKING, LLC
To: CITRIX SYSTEMS, INC.
Reel/Frame 030265/0903 →
CHANGE OF NAME Recorded Aug 2, 2010
From: NCAR, LLC
To: CITRIX APPLICATION NETWORKING, LLC
Reel/Frame 024772/0179 →
MERGER Recorded Jul 22, 2010
From: NETSCALER, INC.
To: NCAR, LLC
Reel/Frame 024724/0714 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2010
From: SUNDARRAJAN, PRABAKAR; HE, JUNXIAO; SONI, AJAY; NANJUNDASWAMY, SHASHIDHARA; KUMAR, ARKESH
To: NETSCALER, INC.
Reel/Frame 024692/0243 →
Continuity (3)
Continuation 11039946 · Jan 24, 2005
Provisional Application 60583785 · Jun 30, 2004
Related Publication 20100241846A1 · Sep 23, 2010