Dynamic Bandwidth Allocation for Virtual Computing Sessions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed computing systems face inefficiencies in allocating limited network bandwidth across multiple virtual-computing sessions, particularly when active and inactive applications compete for resources, leading to poor performance in scenarios with low bandwidth connections.

Innovation Solution

Implementing an intelligent dynamic resource allocation method that identifies active applications, monitors user intent and environment, and adapts resource allocation by assigning weighted activity values to virtual channels, allowing for selective throttling of resource usage across and within sessions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If network bandwidth is allocated equally to multiple virtual-computing sessions, then each session receives fair share of resources, but performance suffers when bandwidth is limited and applications compete for resources

Engineering Contradiction:
Improvesession performanceVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic resource allocation by continuously monitoring session activity states and adjusting bandwidth allocation in real-time. The system transitions from static equal allocation to dynamic allocation based on current session needs, activity detection, and user intent, allowing the resource distribution to adapt continuously to changing conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the allocation parameter from fixed equal bandwidth distribution to variable bandwidth distribution based on session activity metrics. By introducing activity state detection and user intent analysis, the system modifies the allocation parameters dynamically, adjusting bandwidth shares according to measured session activity levels and predicted user needs.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If bandwidth is allocated to background applications, then all applications can operate, but active applications suffer from resource starvation

Engineering Contradiction:
Improveapplication supportVSAvoidactive application performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent applies local quality by differentiating resource allocation at the session level based on activity state. Instead of uniform allocation, the system assigns different bandwidth qualities to different sessions according to their activity levels and user intent, ensuring active sessions receive higher priority while background sessions receive minimal necessary resources.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring session activity states, detecting user intent through various signals, and using this information to adjust bandwidth allocation. The feedback loop ensures that allocation decisions are based on real-time session conditions and user behavior patterns, allowing the system to respond adaptively to changing requirements.

Inventive Principle:
Principle #23Feedback

3Reliability

If resource allocation is optimized for single session performance, then that session performs well, but multiple sessions cannot be differentiated by activity level

Engineering Contradiction:
Improvesingle session performanceVSAvoidresource management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the resource management problem by treating each virtual-computing session as an independent allocation unit with its own activity metrics. The system divides the overall bandwidth resource pool into session-specific allocations based on detected activity levels, allowing independent optimization of each session while maintaining overall system coherence through centralized management.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11706092B2Activity-based resource allocation among virtual-computing sessions
Publication Date: 2023.07.18 CITRIX SYSTEMS INC
  • US11706092B2 patent drawing
  • US11706092B2 patent drawing
  • US11706092B2 patent drawing

AI summary

Dynamically controlling use of a shared computing resource by virtual-computing sessions of a client computing device includes storing per-virtual-channel weights representing contributions of session virtual channels to performance, the stored weights including sets of weights for respective distinct application types. A resource allocation operation includes (i) for each session, selecting a set of weights based on a type of application using the session and applying the selected set of weights to activity state data to produce a session activity value, the activity state data representing activity states of the session virtual channels, and (ii) generating resource usage control signals based on the session activity values of the sessions, the resource usage control signals representing a target pattern of use of the shared computing resource by the sessions. An enforcement operation uses the resource usage control signals to establish the target pattern of use of the shared resource by the sessions.