Service Dependency Discovery via Delay Distribution Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for discovering service-level dependencies in enterprise networks are inaccurate due to reliance on co-occurrence, which can lead to false positives and negatives, and are impractical due to the need for extensive software installation and operational costs.

Innovation Solution

A system that identifies service dependencies by analyzing delay distributions between services, using packet analyzers to intercept and decode network traffic, and generating dependency graphs without requiring application modification or software installation on machines, allowing for differentiation between dependent and independent service pairs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If co-occurrence-based methods are used to discover service dependencies, then the approach is simple to implement, but accuracy deteriorates due to false positives and negatives

Engineering Contradiction:
Improveease of implementationVSAvoiddependency detection accuracy
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The patent changes the detection parameter from co-occurrence frequency to delay distribution analysis. By measuring the time delay between service invocations and comparing it against expected delay patterns, the system achieves more accurate dependency detection while avoiding false positives and negatives that plague co-occurrence-based approaches.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If traditional dependency discovery methods are used, then service dependencies can be identified, but device complexity increases due to extensive software installation requirements

Engineering Contradiction:
Improvedependency detection capabilityVSAvoidsoftware installation requirements
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements self-service by having network elements automatically generate and exchange dependency information through standard network protocols. The system leverages existing network traffic and messaging mechanisms to discover dependencies without requiring external software installation or complex configuration on individual devices, thereby reducing overall system complexity.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If comprehensive dependency monitoring is implemented, then accurate dependency maps can be generated, but loss of time increases due to operational costs and complexity

Engineering Contradiction:
Improvedependency mapping accuracyVSAvoidoperational time and cost
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent employs feedback mechanisms where network elements continuously exchange dependency information through standardized protocols. This enables dynamic updates of dependency maps without requiring manual intervention or extensive operational analysis, significantly reducing the time and resources needed to maintain accurate dependency information while allowing for real-time adjustments as network conditions change.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8954550B2Service dependency discovery in enterprise networks
Publication Date: 2015.02.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8954550B2 patent drawing
  • US8954550B2 patent drawing
  • US8954550B2 patent drawing

AI summary

The claimed subject matter provides systems and/or techniques that identify service dependencies in enterprise networks. The system can include devices that, based on received network data packets, identify packets with common five tuples, aggregate the identified packets to form transactions associated with individual hosts, and determine delay distributions between one or more services solicited from or in response to the individual hosts. Based on the delay distributions, the system differentiates between dependent service pairs and independent service pairs and thereafter assembles and outputs dependency graphs that include dependency relationships between services from the perspective of a client-side and a server-side.