Dynamic Service Module for Agent Runtime Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application monitoring systems face challenges in updating agents without disrupting the underlying code, as static agents require restarting the Java Virtual Machine for changes, making it difficult to manage and monitor distributed web services effectively.

Innovation Solution

A dynamic service module within the agent manages .jar files, receiving, modifying, executing, and removing them to add functionality, including obfuscation to ensure compatibility, while maintaining minimal disruption to the monitored code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static agents are used in application monitoring systems, then the agents are stable and reliable, but updating the agents requires restarting the Java Virtual Machine which causes downtime and disrupts service

Engineering Contradiction:
Improveagent stabilityVSAvoiddowntime during updates
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent transforms the static agent architecture into a dynamic one by enabling agents to load and execute functionality from external .jar files at runtime. The service module manages these dynamic updates without requiring JVM restart, allowing the agent to adapt its behavior and capabilities while remaining operational. This resolves the contradiction by making the agent system dynamic rather than static, enabling updates without downtime.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the agent functionality by separating core agent code from optional functionality modules packaged as .jar files. The service module acts as an intermediary that manages these segmented functionality units, allowing individual functionality to be updated, added, or removed without affecting the entire agent system or requiring a full restart. This segmentation enables incremental updates without service interruption.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If the agent loads external .jar files to add functionality, then the agent becomes more versatile and adaptable, but the risk of incompatible code increases

Engineering Contradiction:
Improveagent functionalityVSAvoidcode compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The service module serves as an intermediary between external .jar files and the agent execution environment. It performs security checks, validates compatibility, and manages the loading process of external functionality modules. This intermediary layer filters and controls what code can be executed, preventing incompatible or malicious code from disrupting the agent while still allowing versatile functionality expansion.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a controlled copy mechanism where external functionality is packaged in standardized .jar file formats that can be safely loaded into the agent's execution environment. The service module manages these copied functionality modules, ensuring they meet compatibility requirements before execution. This copying approach allows versatile functionality while maintaining reliability through standardized interfaces and validation.

Inventive Principle:
Principle #26Copying

3Productivity

If the agent continuously monitors and manages .jar files, then the monitoring capability is improved, but the computational overhead and resource consumption increase

Engineering Contradiction:
Improvemonitoring efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The service module implements periodic monitoring and management of .jar files rather than continuous monitoring. It checks for updates, validates compatibility, and manages loading at scheduled intervals or triggered by specific events. This periodic approach maintains effective monitoring capability while reducing computational overhead compared to continuous monitoring, allowing the agent to balance productivity with resource consumption.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10216601B2Agent dynamic service
Publication Date: 2019.02.26 CISCO TECHNOLOGY INC
  • US10216601B2 patent drawing
  • US10216601B2 patent drawing
  • US10216601B2 patent drawing

AI summary

A dynamic service module is embedded in an agent and able to add functionality to the agent. The service module may manage .jar files for execution by the agent. The service module may receive the .jar files, provide them to an agent for execution, and may perform other functions. The agent may perform obfuscation in order to translate the .jar files into a modified version which may be more compatible with a particular agent. Once execution of the .jar file is complete, the agent may remove the .jar file as well as all trace of the .jar file. For example, the agent may remove byte code instrumentation that was installed as a result of the .jar file.