Remote Software Execution in UPnP Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is no simple mechanism to execute software applications across different UPnP devices in a UPnP network, requiring heavy external infrastructure and substantial bandwidth to maintain responsiveness and avoid latency.
Innovation Solution
A method and device architecture that utilizes a content server, multimedia content restitution device, and control device to remotely execute software applications by obtaining indexing data, transmitting initialization instructions, establishing communication links, and rendering multimedia streams, allowing for the execution and rendering of software applications within the UPnP network without external infrastructure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If software applications are executed remotely across UPnP devices, then device versatility and network functionality are improved, but network bandwidth consumption and latency increase
Solution Approach 1:
The patent segments the software application execution process into distinct components: the application binary is separated from the runtime execution environment. The runtime environment is distributed across multiple UPnP devices, allowing the application to be executed in segments across the network rather than requiring complete transmission and execution on a single device.
Solution Approach 2:
The patent implements a nested structure where the application binary is embedded within the distributed runtime environment. The runtime environment contains the necessary execution context and resources, which in turn host the application binary, creating a nested execution model that reduces network bandwidth requirements.
2Adaptability or versatility
If software applications are executed remotely across UPnP devices, then device versatility and network functionality are improved, but responsiveness and user experience deteriorate due to latency
Solution Approach 1:
The patent performs preliminary actions by pre-establishing the runtime environment on target UPnP devices before application execution. The runtime environment, including execution context and resources, is prepared in advance and cached on devices, eliminating the need for real-time setup and reducing execution latency.
Solution Approach 2:
The patent creates local copies of the runtime environment on multiple UPnP devices within the network. Instead of remotely accessing a centralized execution environment, each device maintains a local copy that can execute applications independently, significantly reducing network latency and improving responsiveness.
3Adaptability or versatility
If traditional external infrastructure is used for software execution, then execution capability is achieved, but system complexity and infrastructure requirements increase
Solution Approach 1:
The patent makes existing UPnP devices multi-functional by enabling them to serve as execution nodes in addition to their primary functions. The runtime environment is designed to be universally compatible with standard UPnP devices, allowing any device in the network to execute software applications without requiring specialized infrastructure.
Solution Approach 2:
The patent implements self-service by enabling UPnP devices to automatically discover and execute application binaries from other devices in the network. The runtime environment autonomously manages application deployment, execution context maintenance, and resource allocation without requiring external infrastructure or manual configuration.
Data Source
Figure 1~1B
Figure 2
Figure 2B
AI summary
The invention relates to a method of controlling an execution of a software application. According to the invention, such a method comprises, within a control device (DMC) designed for driving at least one multimedia contents restitution device (DMR): - a step of obtaining, from an execution device (APPRUNTIME) configured to trigger an execution of said software application, first connection data to be used by a restitution device to establish a first communication link across a network with the execution device and for receiving, during said execution, via said first communication link a multimedia stream resulting from said execution, - a step of transmitting to said restitution device parameters for restitution of a multimedia content comprising said first connection data, - a step of dispatching to said restitution device a command for restitution of said multimedia content, intended for triggering a restitution by said restitution device of said multimedia stream.