IP Library Granted Patent US 8,355,407
Granted Patent B2
US 8,355,407 · App. 11/559,635 · Granted Jan 15, 2013

Methods and systems for interacting, via a hypermedium page, with a virtual machine executing in a terminal services session

Inventors: Michael Wookey (Epping, AU); Anthony Edward Low (St Ives, AU); Stephen Parry-Barwick (Baulkham Hills, AU)
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,355,407
App. No.
11/559,635
Granted
Jan 15, 2013
Kind
B2
Abstract

A method for making a hypermedium page interactive, the hypermedium page displayed by a network browser, includes the step of selecting a hyperlink on the hypermedium page displayed on a client machine, the hyperlink identifying a desired computing resource. A hyperlink configuration file is retrieved, the hyperlink configuration file corresponding to the hyperlink and identifying a server machine. A client agent is started on the client machine. The client agent creates, via a terminal services session, a communication link to a virtual machine executing on the server identified by the hyperlink configuration file, the virtual machine executed by a hypervisor executing in the terminal services session provided by an operating system executing on the server. The client agent receives data from the virtual machine and displays, on the client machine, the received data without intervention by the network browser.

Claims (32)

1. A method for making a hypermedium page interactive, the hypermedium page displayed by a network browser, comprising the steps of:

(a) selecting, by a client machine, a hyperlink on a hypermedium page displayed on the client machine, the hyperlink identifying a desktop computing environment;

(b) retrieving, by the client machine, a hyperlink configuration file corresponding to the hyperlink, the hyperlink configuration file identifying a virtual machine that can provide the desktop computing environment and an operating system in which to execute the desktop computing environment;

(c) selecting, by a broker machine, an execution machine;

(d) launching, by the broker machine, a hypervisor providing access to hardware resources required by the virtual machine into a terminal services session on the execution machine, and creating by a client agent, via the terminal services session, a communication link to the desktop computing environment that has been launched into the virtual machine executing on the execution machine, the virtual machine executed by the hypervisor executing in the terminal services session provided by the operating system executing on the selected execution machine;

(e) launching, by the broker machine, the virtual machine into the hypervisor on the execution machine;

(f) launching, by the broker machine, the desktop computing environment into the virtual machine on the execution machine;

(g) executing, by the client machine, the client agent;

(h) creating by the client agent, via the terminal services session, a communication link to the desktop computing environment that has been launched into the virtual machine executing on the execution machine, the virtual machine executed by a hypervisor executing in the terminal services session provided by an operating system executing on the selected execution machine; and

(i) receiving, by the client agent, data output by the desktop computing environment from the virtual machine and displaying on the client machine the received data without intervention by a network browser.

2. The method of claim 1 further comprising starting execution of an identified application on the virtual machine in response to the created communication link.

3. The method of claim 1 , wherein the client agent creates the communication link without intervention by the network browser.

4. The method of claim 1 , wherein the network browser starts the client agent upon a successful match of information associated with the hyperlink configuration file with an identifier associated with the client agent in a registration file accessible by the network browser.

5. The method of claim 1 , wherein the network browser starts the client agent upon a successful match of an entry in the hyperlink configuration file with an identifier associated with the client agent in a registration file accessible by the network browser.

6. The method of claim 1 wherein a presentation protocol is employed for communication over the communication link.

7. The method of claim 1 further comprising registering the client agent with the network browser.

8. The method of claim 1 further comprising displaying the received data from the virtual machine in a display window on the client machine.

9. The method of claim 1 further comprising obtaining a hypermedium page from a network server.

10. The method of claim 1 further comprising starting a server agent on the virtual machine.

11. A system for making a hypermedium page interactive, the hypermedium page displayed by a network browser, the system comprising: a client machine executing a network browser, the network browser displaying a hypermedium page including a hyperlink identifying a desktop computing environment;

a network server transmitting, in response to selection of the hyperlink, a hyperlink configuration file to the client machine, the hyperlink configuration file identifying a virtual machine that can provide the desktop computing environment and an operating system in which to execute the desktop computing environment;

a broker machine selecting an execution machine and, launching (i) a hypervisor providing access to hardware resources required by the virtual machine into a terminal services session on the execution machine, (ii) the virtual machine into the hypervisor on the execution machine, and (iii) the desktop computing environment into the virtual machine on the execution machine;

a client agent executing on the client machine, the client agent creating, via the terminal services session, a communications link to the desktop computing environment that has been launched into the virtual machine on the execution machine,

wherein the client agent receives data output by the computing resource for display from the virtual machine without intervention by the network browser.

12. The system of claim 11 , wherein the network browser obtains the hypermedium page from the network server and provides the hypermedium page to the client machine.

13. The system of claim 11 , wherein the client agent displays data received from the virtual machine in a display window located at the client machine.

14. The system of claim 13 , wherein the display window is located within the boundaries of the hypermedium page.

15. The system of claim 13 , wherein the application display window is located outside the boundaries of the hypermedium page.

16. The system of claim 11 , wherein the hyperlink configuration file comprises a resource identifier corresponding to the hyperlink and an identifier of the virtual machine corresponding to the hyperlink.

17. The system of claim 11 wherein the client agent creates, responsive to data associated with the hyperlink configuration file, a communications link with a management program executing on an execution machine.

18. The system of claim 11 wherein the client agent creates, responsive to data in the hyperlink configuration file, a communications link with a management program executing on an execution machine.

19. The system of claim 18 wherein the management program executes a virtual machine providing the desktop computing environment.

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 Jan 19, 2007
From: WOOKEY, MICHAEL; LOW, ANTHONY EDWARD; PARRY-BARWICK, STEPHEN
To: CITRIX SYSTEMS, INC.
Reel/Frame 018779/0379 →
Continuity (2)
Provisional Application 60761674 · Jan 24, 2006
Related Publication 20070171921A1 · Jul 26, 2007