Microservice Placement via Sidecar Telemetry Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microservice architecture increases heterogeneity and complicates service communication patterns, leading to potential latency and data loss issues due to improper placement of microservices across different hosts, affecting overall service performance.

Innovation Solution

Implementing sidecar proxies at the data plane to monitor telemetry data and using a Service Communication Abstraction (SCA) graph to optimize microservice placement by co-locating microservices on the same cluster nodes based on communication patterns, thereby minimizing latency and improving data transfer efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If microservices are distributed across different hosts to improve scalability and fault isolation, then system reliability and adaptability are improved, but communication latency and data loss risk increase due to network overhead

Engineering Contradiction:
Improvefault isolationVSAvoidcommunication latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces a service mesh with sidecar proxies as an intermediary layer between microservices. These proxies intercept and manage service-to-service communications, providing features like automatic retry logic, circuit breaking, and connection pooling that reduce the impact of network latency while maintaining the distributed architecture's fault isolation benefits

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent adds a new dimensional layer (the service mesh overlay network) on top of the existing infrastructure. This creates a virtual networking dimension that abstracts physical network distances, allowing microservices to communicate as if they were co-located even when distributed across multiple hosts, thereby reducing perceived latency

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If microservices are co-located on the same host to reduce communication latency, then communication efficiency is improved, but resource contention and heterogeneity management complexity increase

Engineering Contradiction:
Improvecommunication speedVSAvoidplacement management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent implements dynamic placement strategies where the service mesh continuously monitors resource utilization, communication patterns, and performance metrics. Based on this real-time data, the system dynamically adjusts microservice placement decisions, migrating services between hosts to optimize for both communication speed and resource utilization without manual intervention

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent incorporates feedback loops where telemetry data from microservice communications is collected and analyzed. This feedback informs the placement optimization algorithms, allowing the system to learn from actual performance data and continuously improve placement decisions to balance communication speed with resource management complexity

Inventive Principle:
Principle #23Feedback

3Measurement precision

If telemetry monitoring is implemented to optimize microservice placement, then placement precision is improved, but system overhead and complexity increase

Engineering Contradiction:
Improvecommunication pattern analysis precisionVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements a universal service mesh architecture where sidecar proxies perform multiple functions simultaneously: telemetry collection, traffic routing, security authentication, and placement optimization. This multi-functionality reduces the need for separate monitoring systems and integrates placement optimization into the existing service communication infrastructure, minimizing additional complexity

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10827020B1Assignment of microservices
Publication Date: 2020.11.03 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10827020B1 patent drawing
  • US10827020B1 patent drawing
  • US10827020B1 patent drawing

AI summary

Example implementations relate to assigning microservices to cluster nodes. A sidecar proxy may be deployed at a data plane of a distributed service. The sidecar proxy may monitor telemetry data between microservices of the distributed service. A communication pattern may be determined from the telemetry data of the distributed service. Each microservice of the distributed service may be assigned to a cluster node based on the communication pattern.