Service Mesh Data Compression via Friendly Neighbor Protocol

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current microservice architectures do not apply data compression intelligently based on user profiles, network traffic, and resource availability, leading to unnecessary compression across all services, including those with high traffic, low resources, or spare computing resources.

Innovation Solution

Implementing a Friendly Neighbor Compression protocol within a service mesh to selectively compress data by routing it through underutilized microservices with available resources, using historical metrics and resource trend analysis to identify suitable neighbors for compression assistance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data compression is applied across all microservices, then data transmission efficiency is improved, but computing resource requirements increase for services with high traffic or limited resources

Engineering Contradiction:
Improvedata transmission efficiencyVSAvoidcomputing resource requirements
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements selective compression by identifying specific microservices with available computing resources (underutilized CPU, memory, or I/O capacity) to perform compression operations. Instead of uniform compression across all services, each microservice's compression participation is determined by its local resource availability status, allowing the system to leverage idle resources where they exist without overloading busy services.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically changes the compression parameter (whether compression is applied) based on real-time resource availability metrics. Microservices are evaluated against thresholds for CPU usage, memory availability, and I/O capacity, and their compression participation status is adjusted accordingly. This parameter change approach allows the system to adapt compression behavior to current system conditions.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If compression is performed by microservices within the chain, then data transmission is optimized, but services with spare computing resources are not utilized

Engineering Contradiction:
Improvedata transmission optimizationVSAvoidresource utilization flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent extends the compression function beyond the original microservice chain to include any microservice within the namespace that has available resources. A microservice can serve multiple roles: its primary function within its own chain and an auxiliary compression function for other chains. This multi-functionality allows underutilized services to contribute compression capacity to the overall system, increasing resource utilization flexibility.

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

Solution Approach 2:

The service mesh acts as an intermediary that routes data through appropriate compression services. When a microservice needs compression, the service mesh identifies suitable candidate services (those with available resources) and routes the data through them. This intermediary approach decouples the data transmission chain from the compression function, allowing flexible resource utilization across the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If intelligent compression routing is implemented, then resource utilization is optimized, but system complexity increases

Engineering Contradiction:
Improveresource utilization optimizationVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Microservices automatically monitor their own resource availability and publish their compression capability status through the service mesh. Each service independently determines whether it can serve as a compression service based on its own metrics (CPU usage, memory availability, I/O capacity), eliminating the need for centralized resource management complexity. The service mesh simply routes based on these self-reported capabilities.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements continuous feedback loops where microservices report their resource usage metrics to the service mesh, which then adjusts routing decisions accordingly. The service mesh monitors compression performance and resource availability in real-time, providing feedback that influences future routing decisions. This feedback mechanism enables dynamic optimization without requiring complex predictive modeling.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20230217343A1Intelligent service mesh data compression
Publication Date: 2023.07.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20230217343A1 patent drawing
  • US20230217343A1 patent drawing
  • US20230217343A1 patent drawing

AI summary

Intelligent compression of data through a service mesh depending on size and frequency of existing service-to-service communications, relative workloads of the individual microservices, and time of day when large amounts of aggregate network traffic is expected to occur. Compression is enabled on a selective basis, based on user profiles, the size of data being transmitted and/or compression is applied broadly for all data being routed when aggregated amounts of network traffic exceeds threshold levels at particular times of day. Friendly Neighbor Compression Protocol enables data routing through trusted microservices of the service mesh having the same or similar standard and/or security requirements as the microservices of the microservice chain. When computing resources of microservice chains are limited or scarce, service mesh routes data from the microservice chain to trusted microservices for data compression, then re-routes the compressed data to the next microservice of the microservice chain.