IP Library Granted Patent US 7,376,695
Granted Patent B2
US 7,376,695 · App. 10/098,157 · Granted May 20, 2008

Method and system for generating a graphical display for a remote terminal session

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 7,376,695
App. No.
10/098,157
Granted
May 20, 2008
Kind
B2
Abstract

In one aspect the invention relates to a method for generating a graphical display for a remote terminal session. The method includes monitoring output produced by an application program executing on a server, identifying a bitmap representation within the output produced by the application program and determining a check value for the bitmap representation. The method also includes retrieving a compressed data format of the bitmap representation based at least in part on the check value and transmitting to the remote terminal session the compressed data format in place of the bitmap representation.

Claims (74)

1. A method for generating a graphical display for a remote terminal session, the method comprising;

monitoring output produced by an application program executing on a server;

identifying a textual element and a non-textual element of the output;

retrieving a compressed data format associated with the non-textual element; and

transmitting to the remote terminal session the textual element and the compressed data format in place of the non-textual element.

2. The method of claim 1 wherein the step of transmitting further comprises transmitting the compressed data format and the textual element using a presentation layer protocol packet.

3. The method of claim 2 wherein the step of transmitting further comprises transmitting the presentation layer protocol packet using a command for transmitting a file in its native format.

4. The method of claim 2 wherein the step of transmitting further comprises conforming the presentation layer protocol packet to a remote access protocol.

5. The method of claim 1 further comprising determining whether the remote terminal session can render the non-textual element using the compressed data format.

6. The method of claim 5 further comprising, upon determination that the remote terminal session cannot render the non-textual element using the compressed data format, transmitting an image-rendering library capable of rendering the non-textual element using the compressed data format.

7. The method of claim 1 further comprising:

receiving the compressed data format and the textual element; and generating a display using the textual element and the compressed data format.

8. The method of claim 1 wherein the non-textual element is a bitmap representation and wherein the step of transmitting further comprises replacing the bitmap representation with the compressed data format.

9. The method of claim 1 wherein the step of monitoring further comprises:

intercepting the output; and

inspecting the intercepted output for a bitmap representation of the non-textual element.

10. The method of claim 1 wherein the step of retrieving further comprises:

calculating a first check value for a bitmap representation of the non-textual element; and

searching an image store for the compressed data format with a second check value identical to the first check value.

11. A method for generating a graphical display for a remote terminal session, the method comprising:

monitoring output produced by an application program executing on a server;

identifying a bitmap representation within the output produced by the application program;

determining a check value for the bitmap representation;

retrieving a compressed data format of the bitmap representation based at least in part on the check value; and

transmitting to the remote terminal session the compressed data format in place of the bitmap representation.

12. The method of claim 11 wherein the step of transmitting further comprises transmitting, using a presentation layer protocol packet, the compressed data format and a command associated with displaying the bitmap representation.

13. The method of claim 12 wherein the step of transmitting further comprises transmitting the presentation layer protocol packet using a protocol command established for transmitting a file in its compressed data format.

14. The method of claim 12 wherein the step of transmitting further comprises conforming the presentation layer protocol packet to a presentation protocol.

15. The method of claim 11 further comprising:

identifying a command associated with the bitmap representation within the output produced by the application program; and

transmitting to the remote terminal session the command along with the compressed data format.

16. The method of claim 15 further comprising:

receiving the compressed data format and the command;

decompressing the compressed data format to generate the bitmap representation; and

generating a display using the bitmap representation and the command.

17. The method of claim 11 further comprising determining whether the remote terminal session can render the bitmap representation using the compressed data format.

18. The method of claim 17 further comprising, upon determination that the remote terminal session cannot render the bitmap representation using the compressed data format, transmitting an image-rendering library capable of rendering the bitmap representation using the compressed data format.

19. The method of claim 11 wherein the step of monitoring further comprises:

intercepting the output; and

inspecting the intercepted output for a bitmap representation of one or more non-textual elements.

20. The method of claim 11 wherein the step of determining further comprises;

calculating a CRC based on the bitmap representation; and

using the calculated CRC as the check value.

21. A system stored on a computer-readable storage medium for generating a graphical display for a remote terminal session, the system comprising:

an output filter module configured to monitor output produced by an application program, identify a textual element and a non-textual element of the output and retrieve a compressed data format associated with the non-textual element; and

a server agent configured to transmit to the remote terminal session the textual element and the compressed data format in place of the non-textual element.

22. The system of claim 21 further comprising:

a client agent configured to receive the compressed data format and the textual element and to generate a display of the textual element and non-textual element using the received compressed data format and the textual element.

23. The system of claim 22 further comprising a client node, the client node including the client agent and a display.

24. The system of claim 21 wherein the server agent is further configured to transmit the compressed data format and the textual element using a presentation layer protocol packet.

25. The system of claim 24 wherein the server agent is further configured to include a command in the presentation layer protocol packet for transmitting the compressed data format in place of the non-textual element.

26. The system of claim 21 wherein the output monitor module is further configured to determine whether the remote terminal session can render the non-textual element using the compressed data format.

27. The system of claim 26 wherein the server agent is further configured to transmit, upon determination the remote terminal session cannot render the non-textual element using the compressed data format, an image-rendering library capable of rendering the non-textual element using the compressed data format.

28. The system of claim 21 further comprising a server node, the server node including the sewer agent and to output filter module.

29. The system of claim 21 wherein the server agent is further configured to conform to a thin client protocol.

30. The system of claim 21 wherein the non-textual element is a bitmap representation.

31. The system of claim 21 wherein the output filter module is further configured to intercept the output and inspect the intercepted output for a bitmap representation of one or more non-textual elements.

32. A system for generating a graphical display for a remote terminal session, the system comprising:

a network;

a server in communication with the network, the server including,

an output filter module configured to monitor output produced by an application program, identify a textual element and a non-textual element of the output and retrieve a compressed data format associated with the non-textual element; and

a server agent in communication with the output filter module, the server agent configured to transmit to the remote terminal session the textual element and the compressed data format in place of the non-textual element; and a client in communication with the network, the client including,

a client agent in communication with the server agent, the client agent configured to receive the compressed data format and the textual element and to generate a display of the textual element and non-textual element using the received compressed data format and the textual element.

33. An article of manufacture having computer-readable program means embodied therein for execution by a processor for generating a graphical display for a remote terminal session, the article comprising:

computer-readable program means for monitoring output produced by an application program executing on a server;

computer-readable program means for identifying a textual element and a non-textual element of the output;

computer-readable program means for retrieving a compressed data format associated with the non-textual element; and

computer-readable program means for transmitting to the remote terminal session the textual element and the compressed data format in place of the non-textual element.

34. An article of manufacture having computer-readable program means embodied therein for execution by a processor for generating a graphical display for a remote terminal session, the article comprising:

computer-readable program means for monitoring output produced by an application program executing on a server;

computer-readable program means for identifying a bitmap representation within the output produced by the application program;

computer-readable program means for determining a check value for the bitmap representation;

computer-readable program means for retrieving a compressed data format of the bitmap representation based at least in part on the cheek value; and

computer-readable program means for transmitting to the remote terminal session the compressed data format in place of the bitmap representation.

Assignments (8)
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 →