Virtual Desktop Performance Measurement via Embedded Watermarks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Measuring the performance of virtual desktop services is challenging due to latency introduced by network travel time and application response time, especially in virtualized desktop infrastructure (VDI) architectures, where accurately characterizing server-dependent events is difficult due to lack of semantic information and the use of lossy image compression techniques.
Innovation Solution
The method involves embedding binary encoded pixels as watermarks in image frames to communicate start and end information of specific operations, allowing for robust timing detection and generation of statistical performance data, even under adverse conditions, using a display channel to convey control messages and independent of communication protocols, enabling reliable performance measurements across various topologies and protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If lossy image compression techniques are used to transmit virtual desktop display data, then bandwidth efficiency is improved, but measurement precision of server-dependent events deteriorates due to lack of semantic information
Solution Approach 1:
The patent introduces watermarks as an intermediary mechanism embedded within the compressed image frames. These watermarks carry semantic information about server-dependent events (such as application launches, window openings) that would otherwise be lost in lossy compression. The watermarks act as a mediator between the compressed video stream and the performance measurement system, enabling accurate event detection without requiring uncompressed video transmission.
2Measurement precision
If watermarks are embedded in image frames to communicate timing information, then measurement precision of server-dependent events is improved, but device complexity increases due to watermark encoding and detection mechanisms
Solution Approach 1:
The patent extracts the performance measurement function from the main video transmission stream by embedding it within watermarks. This separation allows the watermark encoding and detection mechanisms to operate independently with simplified logic. The watermarks contain only the essential timing and event information needed for measurement, rather than requiring complex analysis of the entire video frame sequence.
Solution Approach 2:
The patent uses watermarks as simplified copies or representations of the actual server events. Instead of transmitting full semantic information about each event through the video content, the system creates compact watermark copies that encode the essential timing and event type information, enabling measurement without complex video analysis.
3Adaptability or versatility
If performance measurements are taken across network boundaries and various client devices, then adaptability of the measurement system is improved, but reliability of timing measurements deteriorates due to latency variations and lack of semantic information
Solution Approach 1:
The patent segments the performance measurement process into distinct components: server-side event detection, watermark embedding in the video stream, client-side watermark detection, and timing calculation. This segmentation allows each component to be optimized independently and facilitates deployment across different network configurations and client devices. The watermark-based approach enables reliable timing measurements by providing explicit event markers that are independent of network latency variations.
Data Source
AI summary
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.


