Distributing Application Execution Between Local Client and Remote Virtual Environment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current virtual desktop implementations struggle with efficiently handling rich media applications due to high bandwidth requirements and network congestion, as they often rely on crude bitmap video captures, which reverse the bandwidth reduction of video encoding processes, and lack support for local services like telephony and Internet access.
Innovation Solution
The system distributes the execution of applications between a local client system and a remote virtual environment by leveraging existing network broadcast video capabilities and direct peer-to-peer connections, allowing rich media applications to execute locally on the client system while other applications run remotely, using modules like broker, server link, display agent, and remote application server to manage application requests and links between local and remote environments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all applications execute on remote virtual desktop using display protocols, then centralized management and security are improved, but bandwidth consumption increases and rich media application performance deteriorates
Solution Approach 1:
The system segments application execution between local and remote environments. Rich media applications execute locally on the client device while other applications execute remotely on the virtual desktop. This segmentation allows bandwidth-intensive media processing to occur locally without consuming network bandwidth, while maintaining centralized management for non-media applications.
Solution Approach 2:
The system applies local quality by executing rich media applications locally on the client device rather than remotely. This allows the client device to leverage its local processing capabilities for media-intensive tasks while maintaining the remote virtual desktop environment for other applications, optimizing performance for specific application types.
2Device complexity
If bitmap video captures are used for remote display, then display protocol simplicity is maintained, but bandwidth efficiency deteriorates and media quality decreases
Solution Approach 1:
The system extracts rich media application execution from the remote virtual desktop environment and places it locally on the client device. This extraction eliminates the need to transmit high-bandwidth video streams for media applications, as they execute locally and only their display output needs to be transmitted, significantly improving bandwidth efficiency.
3Measurement precision
If virtual channels are used for media preservation, then media quality is maintained, but network infrastructure requirements increase and local service support is lost
Solution Approach 1:
The system enables the client device to self-serve rich media applications by executing them locally rather than relying on remote virtual desktop infrastructure. This self-service approach allows the client device to independently handle media processing, telephony services, and Internet access without requiring specialized network infrastructure or remote server support.
4Adaptability or versatility
If media is transcoded for decoder compatibility, then client device compatibility is improved, but remote server computing load increases
Solution Approach 1:
Instead of transcoding media on the remote server for client compatibility, the system inverts the approach by executing media applications locally on the client device. This reversal shifts the processing burden from the remote server to the local client, eliminating the need for server-side transcoding operations.
Data Source
AI summary
According to one embodiment, a system comprises a computing device including at least one processor. The system detects a request to execute an application within an environment provided by the computing device. A desired environment is determined for execution of the requested application, wherein execution of applications is distributed between a local environment and one or more remote virtual environments. The local environment and one or more remote virtual environments are provided by a plurality of computing devices. The system intercepts the detected request and directs the request to a computing device among the plurality of computing devices that provides the desired environment in order to execute the requested application within the desired environment. These embodiments may further include a method and computer-readable media encoded with software for distributing execution of applications in substantially the same manner described above.


