Abstract:
The disclosure herein describes a client-side system that enhances user experience on a remoting client without consuming additional network bandwidth. During operation, the system receives a sequence of frame updates for a display screen, and determines a sequence of frames corresponding to the frame updates. The system further adaptively applies one or more image enhancing techniques to the sequence of frames based on available network bandwidth, frame refresh rate, or image quality. The image enhancement techniques include predicting a frame based on previously received frames, interpolating a frame based on at least two buffered frames, and reducing appearance of artifacts in a received frame, thereby reducing visual artifacts.
Abstract:
In one embodiment, a client device configured to remotely access a desktop hosted by a server system determines an event related to a user input for a desktop operation directed to the desktop. The client device receives a plurality of updates to a desktop graphical user interface (GUI) from the desktop hosted by the server system. Then, the client device correlates the event to an update in the plurality of updates to the desktop GUI based on a rule in a set of rules correlating events to updates. A metric is monitored for the update and information measured for the metric is stored.
Abstract:
A method for measuring performance of virtual desktop services offered by a server including a processor is described. A first encoded watermark is embedded into user interface display generated by a virtual desktop when initiating an operation. The first encoded watermark includes pixels identifying the operation and indicating its initiation. A second encoded watermark is embedded into the user interface upon completion of the operation indicating completion of the operation. An action performance time is then computed and stored in a memory. Multiple performance times may be compiled from multiple operations of multiple virtual desktops to assess the performance of the system as a whole.
Abstract:
In one embodiment a method for storing a remote desktop GUI image block in a cache including a plurality of persistence levels is described. The method is comprised of maintaining each persistence level in the plurality of persistence levels; identifying an event associated with an update to the remote desktop GUI; determining a context for the event; selecting one of the persistence levels for the event based on the context; and storing an image block corresponding to the update in the selected one of the persistence levels.
Abstract:
The disclosure herein describes a client-side system that enhances user experience on a remoting client without consuming additional network bandwidth. During operation, the system receives a sequence of frame updates for a display screen, and determines a sequence of frames corresponding to the frame updates. The system further adaptively applies one or more image enhancing techniques to the sequence of frames based on available network bandwidth, frame refresh rate, or image quality. The image enhancement techniques include predicting a frame based on previously received frames, interpolating a frame based on at least two buffered frames, and reducing appearance of artifacts in a received frame, thereby reducing visual artifacts.
Abstract:
Methods, systems, and computer programs for user experiencing monitoring for application remoting. One of the methods includes receiving a request to provide an application to a remote client. The application is executed to generate one or more application windows. A watermark window that includes a watermark is generated. Display data for the application is, generated, including the watermark window and the one or more application windows. The display data for the application is provided to the remote client for presentation on the remote client. Data identifying an operation to be performed by the application is obtained. The watermark is updated to encode information identifying the operation and information identifying an initialization of the operation by the application. Data identifying a completion of the operation is received by the application. The watermark is updated to encode information identifying the completion of the operation.
Abstract:
Methods, systems, and computer programs are provided for measuring the performance of a remote display. One method includes an operation for embedding in display frames a respective frame identifier and a respective frame picture. The respective frame picture is placed in a respective region that depends of the value of the respective frame identifier. Additionally, the method includes operations for sending the plurality of display frames to a remote client, and for extracting each received frame picture from the respective region of each received display frame at the remote client based on the received frame identifier. The received frame quality is calculated for each received display frame based on the comparison of the extracted received frame picture with the respective frame picture. Further, the method includes an operation for calculating a remote display quality for the remote client based on the calculated received frame quality for the received display frames.
Abstract:
In one embodiment, a client device configured to remotely access a desktop hosted by a server system determines an event related to a user input for a desktop operation directed to the desktop. The client device receives a plurality of updates to a desktop graphical user interface (GUI) from the desktop hosted by the server system. Then, the client device correlates the event to an update in the plurality of updates to the desktop GUI based on a rule in a set of rules correlating events to updates. A metric is monitored for the update and information measured for the metric is stored.
Abstract:
The disclosure herein describes a client-side system that enhances user experience on a remoting client without consuming additional network bandwidth. During operation, the system receives a sequence of frame updates for a display screen, and determines a sequence of frames corresponding to the frame updates. The system further adaptively applies one or more image enhancing techniques to the sequence of frames based on available network bandwidth, frame refresh rate, or image quality. The image enhancement techniques include predicting a frame based on previously received frames, interpolating a frame based on at least two buffered frames, and reducing appearance of artifacts in a received frame, thereby reducing visual artifacts.
Abstract:
Methods, systems, and computer programs are provided for managing remote display performance. One method includes operations for receiving notifications of events identified by an operating system, and for receiving notifications of display updates destined to a remote display coupled to a remote client. The method includes an operation for correlating events and display updates to determine the transmittal priority for the updates, where the priority is associated with a criticality for presenting the display updates on the remote display. Further, a subset of the display updates are identified as unnecessary for transmission to the remote client based, at least in part, on the priority of the display updates. Additionally, the method includes an operation for performing at least one of: discarding the subset; consolidating the subset into a single display update for transmittal to the remote client; or limiting the frequency of transmission of the subset to the remote client.