Embedded Service Mesh via WebAssembly for Microservice Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of microservice-based applications, particularly with sidecar approaches like Istio, makes it difficult to deploy and manage service meshes reliably, leading to cumbersome configurations and potential security risks due to shared memory spaces and inter-process communication delays.

Innovation Solution

Embedding a WebAssembly (WASM)-based service mesh directly into applications, utilizing security enclaves for memory segregation and eliminating the need for sidecars, allowing developers to focus on application logic while security personnel manage networking aspects, thereby simplifying deployment and enhancing security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sidecar Envoy proxy containers are used to manage service mesh, then networking and security functions are provided, but deployment complexity and operational burden increase

Engineering Contradiction:
Improveservice mesh functionalityVSAvoiddeployment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the service mesh functionality directly into the application container by embedding an Envoy proxy as a shared library within the application binary itself, eliminating the need for separate sidecar containers. This integration approach provides service mesh networking and security functions while reducing deployment complexity to a single container per application.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The application container is designed to perform multiple functions: it contains both the application logic and the embedded Envoy proxy that provides service mesh capabilities. This multi-functional approach allows a single container to serve both application execution and service mesh networking/security roles.

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

2Reliability

If sidecar Envoy proxy containers are used to manage service mesh, then networking and security functions are provided, but operational burden increases

Engineering Contradiction:
Improveservice mesh functionalityVSAvoidoperational burden
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent merges the service mesh functionality directly into the application container by embedding an Envoy proxy as a shared library within the application binary itself, eliminating the need for separate sidecar containers. This integration approach provides service mesh networking and security functions while reducing deployment complexity to a single container per application.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If shared memory spaces are used in sidecar approach, then inter-process communication is enabled, but security risks increase

Engineering Contradiction:
Improveinter-process communicationVSAvoidsecurity risks
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent implements memory segmentation by providing the embedded Envoy proxy with isolated memory regions that are separately mapped and protected. The proxy communicates with the application through controlled interfaces rather than shared memory spaces, maintaining security while enabling necessary communication.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary communication mechanism where the embedded Envoy proxy and application logic interact through defined interfaces and protocols rather than direct shared memory access. This intermediary layer enables communication while maintaining security boundaries between the proxy and application memory spaces.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240231973A9Systems and methods for embedding service meshes into applications
Publication Date: 2024.07.11 CISCO TECHNOLOGY INC
  • US20240231973A9 patent drawing
  • US20240231973A9 patent drawing
  • US20240231973A9 patent drawing

AI summary

In one embodiment, a method includes generating an application stack. The application stack includes an application logic module. The method also includes embedding a service mesh module into the application stack. The method further includes managing, by the service mesh module, security of a network packet while maintaining separation of memory regions between the application logic module and the service mesh module.