Distributed Queuing for Remote Network Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote network management platforms face complexity and performance bottlenecks due to inefficient communication configurations, leading to duplicated efforts and suboptimal performance in managing and integrating custom software applications across enterprises.

Innovation Solution

Implementing a distributed queuing system with multiple queues dedicated to specific applications or traffic priorities, along with a proxy queue for result analysis, optimization, and processing, facilitates flexible configuration and improved performance by enabling efficient communication between remote network management platforms and managed networks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single queue is used for communication between remote network management platform and managed network, then the system structure is simple, but performance bottlenecks and duplicated efforts occur

Engineering Contradiction:
Improvesystem performanceVSAvoidqueue architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the single communication queue into multiple specialized queues, each dedicated to specific applications or traffic priorities. This segmentation allows different types of communications to be handled independently, eliminating bottlenecks and duplicated efforts while maintaining manageable system complexity through organized structure.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple queues are implemented for different applications and priorities, then communication efficiency improves, but configuration complexity increases

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidconfiguration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent establishes queue configurations in advance, dedicating specific queues to particular applications and priority levels before communication occurs. This preliminary organization enables efficient communication routing without requiring complex real-time decision-making, thereby improving communication efficiency while keeping configuration manageable.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If results are directly placed in queues for delivery, then the process is simple, but duplicated results and large result entries cause performance issues

Engineering Contradiction:
Improveresult delivery efficiencyVSAvoidresult processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a proxy queue as an intermediary between the application and the main communication queue. This proxy queue performs preliminary processing of results, including removal of duplicates and splitting of large result entries, before placing processed results in the main queue. This intermediary layer improves result delivery efficiency by preventing performance issues while maintaining a relatively simple overall structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11064046B2Distributed queueing in a remote network management architecture
Publication Date: 2021.07.13 SERVICENOW INC
  • US11064046B2 patent drawing
  • US11064046B2 patent drawing
  • US11064046B2 patent drawing

AI summary

An embodiment may involve a computational instance disposed within a remote network management platform. The computational instance may contain queues and facilitate the execution of applications. Communication between the computational instance and a managed network may involve: (i) selecting, by a particular application, a particular output queue; (ii) writing, by the particular application, a unit of work generated by the particular application to the particular output queue; (iii) providing, by particular output queue, the unit of work to a particular proxy server application; (iv) retrieving, by a particular input queue, a result from the particular proxy server application, where the result represents an outcome of the particular proxy server application carrying out the unit of work, and where the particular input queue is associated with the particular output queue; and (v) retrieving, by the particular application, the result from the particular input queue.