Dynamic Video Processing Offloading for User Session Monitoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As enterprise and cloud applications become more complex, preventing inappropriate access and detecting unauthorized activities across various user accounts becomes increasingly challenging.
Innovation Solution
A system and method that utilize a managing server with an agent to record user session screens, encode them into video, and dynamically offload video processing tasks if resource usage exceeds a threshold, optimizing resource usage and load balancing through a video processing pool and intelligent load-balancing algorithms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If video processing task is performed on target system, then user session monitoring is achieved, but resource usage (CPU, memory, network bandwidth) increases
Solution Approach 1:
The video processing task is extracted from the target system and relocated to a dedicated video processing server. The agent on the target system retains the capability to initiate video processing tasks, but the actual encoding and processing operations are performed remotely on the video processing server, thereby reducing resource consumption on the target system while maintaining monitoring functionality.
Solution Approach 2:
A video processing server acts as an intermediary between the target system and the monitoring infrastructure. The agent communicates video processing requirements to this intermediary server, which then performs the resource-intensive encoding operations, allowing the target system to maintain monitoring capability without bearing the full resource burden.
2Productivity
If video processing task is offloaded to managing server, then resource constraints on target system are reduced, but network bandwidth usage increases
Solution Approach 1:
Screen captures are captured and pre-processed locally by the agent before being transmitted to the video processing server. This preliminary action reduces the amount of data that needs to be transmitted over the network, as only relevant screen captures and minimal processing data are sent rather than complete video streams.
Solution Approach 2:
The system implements selective video processing where not all screen captures are processed with the same level of detail. The agent and video processing server work together to identify and process only significant changes or events in user sessions, reducing overall network bandwidth requirements while maintaining monitoring effectiveness.
3Adaptability or versatility
If dynamic offloading is implemented, then load balancing is optimized, but system complexity increases
Solution Approach 1:
The system implements dynamic offloading where the decision to perform video processing locally or remotely is not fixed but adapts based on real-time conditions. The agent can dynamically determine whether to initiate video processing tasks based on current resource availability, and the video processing server dynamically accepts or rejects processing requests based on its own resource state, creating a flexible load-balancing mechanism.
Solution Approach 2:
The system incorporates feedback mechanisms where the agent monitors target system resource usage and the video processing server monitors its own resource availability. This feedback loop enables intelligent decision-making about task offloading, with the agent adjusting its behavior based on resource conditions and the server adjusting its capacity allocation based on demand, optimizing load balancing without requiring complex centralized control.
Data Source
AI summary
A system and method can support user account management in a computing environment. A managing server, such as a privileged account manager server, can use an agent to manage a target system in the computing environment. The agent on the target system can initiate a video processing task based on a plurality of user session screens recorded on the target system, wherein the video processing task encodes the plurality of user session screens into a video. Furthermore, the agent can determine whether a resource usage for performing the video processing task on the target system exceeds a threshold. Then, the agent can dynamically offload the video processing task to a managing server that operates to manage the target system, if the resource usage for performing the video processing task on the target system exceeds the threshold.


