Multi-tenant Network Policy Manager with Tenant Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-tenant container clusters, ensuring fair resource distribution and preventing overload among tenants while managing logical networks across multiple datacenters is challenging, as existing solutions lack efficient mechanisms to isolate and scale services per tenant.

Innovation Solution

A multi-tenant network policy manager is implemented within a container cluster, utilizing shared and per-tenant services to manage logical networks, including API processing, database, queue management, span determination, and channel management services, with load balancing and on-demand configuration streaming to ensure resource allocation and prevent overload.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If shared services are used for all tenants, then device complexity is reduced, but reliability deteriorates due to potential overload from single tenant

Engineering Contradiction:
Improveservice structure complexityVSAvoidsystem stability under tenant overload
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments services into two categories: shared services (API processing, database) that are common to all tenants, and dedicated services (queue management, span determination, channel management) that are isolated per tenant. This segmentation allows the system to maintain low complexity for shared functions while ensuring reliability for tenant-specific operations through isolation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a load balancer as an intermediary component that sits between tenant requests and shared API processing services. The load balancer distributes requests across multiple API processing services, preventing any single service from being overwhelmed by a single tenant, thus maintaining system reliability while keeping the shared service architecture intact.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If per-tenant services are instantiated for all functions, then reliability improves through isolation, but device complexity increases

Engineering Contradiction:
Improveisolation between tenantsVSAvoidnumber of services
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing services into shared and dedicated categories. Dedicated services are instantiated per tenant for functions requiring isolation (queue management, span determination, channel management), while shared services are used for common functions (API processing, database). This selective segmentation achieves tenant isolation without unnecessarily increasing complexity for all services.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies universality by implementing shared services that can serve multiple tenants simultaneously. The API processing services and database are designed to handle requests from any tenant, eliminating the need to instantiate these services for each tenant individually, thereby reducing overall system complexity while maintaining isolation where needed.

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

3Reliability

If load balancing is implemented across API processing services, then reliability improves by preventing overload, but device complexity increases

Engineering Contradiction:
Improveprevention of tenant overloadVSAvoidload balancing mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a load balancer as an intermediary component that manages request distribution. The load balancer sits between tenant clients and API processing services, automatically distributing requests based on defined policies. This intermediary approach simplifies overload prevention by centralizing the load balancing logic rather than requiring complex distributed decision-making across services.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The load balancer operates autonomously to distribute requests without requiring manual intervention or complex coordination between services. The load balancing decisions are made automatically based on configured policies, reducing the operational complexity of managing overloaded services while maintaining high reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12107722B2Sharing network manager between multiple tenants
Publication Date: 2024.10.01 VMWARE INC
  • US12107722B2 patent drawing
  • US12107722B2 patent drawing
  • US12107722B2 patent drawing

AI summary

Some embodiments provide a method for one of multiple shared API processing services in a container cluster that implements a network policy manager shared between multiple tenants. The method receives a configuration request from a particular tenant to modify a logical network configuration for the particular tenant. Configuration requests from the plurality of tenants are balanced across the plurality of shared API processing services. Based on the received configuration request, the method posts a logical network configuration change to a configuration queue in the cluster. The configuration queue is dedicated to the logical network of the particular tenant. Services are instantiated separately in the container cluster for each tenant to distribute configuration changes from the respective configuration queues for the tenants to datacenters that implement the tenant logical networks such that configuration changes for one tenant do not slow down processing of configuration changes for other tenants.