Proxy Plugin Remoting Multimedia Calls to Reduce Server Load

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote access systems struggle to efficiently provide access to resource-intensive multimedia applications without degrading server performance or user experience, as they often require significant server resources and bandwidth, especially when dealing with complex graphical interfaces and large media files.

Innovation Solution

The system remotes multimedia plugin calls from a server to a client, where a proxy multimedia plugin on the server intercepts calls and transmits them to a corresponding plugin on the client, allowing the client to generate and display graphical content, thereby reducing server load and bandwidth consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multimedia plugins execute on the server, then user experience and graphical output quality are maintained, but server resource consumption and network bandwidth usage increase significantly

Engineering Contradiction:
Improveuser experience qualityVSAvoidserver resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

A proxy multimedia plugin is introduced as an intermediary component on the server that intercepts calls from container applications and selectively routes them to either the server-side plugin or a remote client-side plugin. This mediator enables the system to maintain local execution for simple operations while offloading resource-intensive operations to the client, thereby resolving the contradiction between maintaining user experience quality and reducing server resource consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If resource-intensive applications are hosted on the server, then remote access capability is provided, but server scalability and performance degrade

Engineering Contradiction:
Improveremote access capabilityVSAvoidserver scalability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system segments plugin call execution into two distinct paths: simple calls executed locally on the server by the proxy plugin, and complex resource-intensive calls routed to the client machine for execution. This segmentation allows the server to maintain remote access capability while avoiding the performance degradation and scalability issues that would result from executing all plugin calls centrally.

Inventive Principle:
Principle #1Segmentation

3Reliability

If graphical output quality is maintained, then user experience is preserved, but network bandwidth consumption increases

Engineering Contradiction:
Improvegraphical output qualityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system applies partial remote execution by routing only the necessary portion of plugin calls (those that cannot be handled locally or require client-side resources) to the client, while executing simpler calls locally on the server. This partial action approach maintains graphical output quality for critical operations while reducing overall network bandwidth consumption compared to fully remote execution.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8296357B2Systems and methods for remoting multimedia plugin calls
Publication Date: 2012.10.23 CITRIX SYSTEMS INC
  • US8296357B2 patent drawing
  • US8296357B2 patent drawing
  • US8296357B2 patent drawing

AI summary

Described are methods and systems for remotely providing calls issued to a multimedia plugin. A proxy plugin executing on a server can intercept calls issued by a container application on the server, to a multimedia plugin. The proxy plugin can then transmit the intercepted call to a plugin executing on a client. The multimedia plugin on the client can receive the call issued by container application and responsively generate graphical or multimedia content. Upon generating the multimedia or graphical content, the multimedia plugin can display the generated content within a plugin window on the client. In some instances, the proxy plugin responds to the call issued by the container application rather than forward the call to the multimedia plugin. In those instances, the proxy plugin retrieves content from cache and responds to the container application call with the retrieved content.