Embedded Open Policy Agent in Data Plane Proxy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing and scaling multiple APIs in microservices architecture is challenging due to duplication of efforts and code, especially when dealing with tens of thousands of APIs and millions of clients, as each API handles its own functionalities individually, leading to inefficiency and complexity in visualization and maintenance.

Innovation Solution

Implementing a distributed API gateway architecture with embedded Open Policy Agent (OPA) in the data plane proxy, which bundles common functionalities like authentication, rate limiting, caching, and logging into a gateway node, allowing for standardized authentication and authorization rules across workloads, and eliminating the need for additional OPA sidecars.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If each API handles its own functionalities individually, then each API can be configured independently, but it leads to duplication of efforts and code, making management and scaling challenging

Engineering Contradiction:
ImproveIndependent API configurationVSAvoidSystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent combines multiple individual API configurations into a unified API gateway that handles authentication, rate limiting, caching, and logging centrally. This merging eliminates code duplication while maintaining the ability to configure different policies for different APIs through a single standardized interface.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The API gateway implements universal functionality that serves multiple APIs simultaneously. It provides common services like authentication, rate limiting, and caching that can be applied across numerous APIs with a single configuration framework, reducing overall system complexity while preserving adaptability.

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

2Adaptability or versatility

If multiple APIs are deployed with individual configurations, then each API can be customized, but it becomes time-consuming to set up and maintain, especially with tens of thousands of APIs

Engineering Contradiction:
ImproveAPI customizationVSAvoidSetup and maintenance time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The API gateway provides universal configuration mechanisms that can be applied across thousands of APIs simultaneously. Administrators can define policies once at the gateway level and have them automatically applied to multiple APIs, dramatically reducing setup and maintenance time while preserving the ability to customize individual API behaviors when needed.

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

3Use of energy by moving object

If individual servers host multiple APIs, then resource utilization can be optimized, but it becomes difficult to build new APIs and scale existing ones

Engineering Contradiction:
ImproveServer resource utilizationVSAvoidAPI deployment ease
Core Design Contradiction:
Use of energy by moving objectVSEase of manufacture

Solution Approach 1:

The patent segments the API hosting architecture by introducing an API gateway layer that sits in front of individual microservice instances. This segmentation allows servers to be optimized for specific microservices while the gateway handles cross-API functionalities, making it easier to deploy new APIs and scale individual services independently without reconfiguring entire server infrastructures.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If each API is configured individually, then specific functionalities can be tuned, but visualization and monitoring of tens of thousands of APIs becomes tedious and cumbersome

Engineering Contradiction:
ImproveIndividual API functionalityVSAvoidAPI visualization difficulty
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The API gateway acts as an intermediary between individual APIs and monitoring systems. It provides centralized logging, rate limiting, and authentication that can be observed through a single monitoring interface, while still allowing individual API functionalities to be customized. This intermediary layer simplifies visualization by aggregating data from thousands of APIs into unified metrics and logs.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240202306A1Data plane proxy with an embedded open policy agent for microservices applications
Publication Date: 2024.06.20 KONG INC
  • US20240202306A1 patent drawing
  • US20240202306A1 patent drawing
  • US20240202306A1 patent drawing

AI summary

Disclosed embodiments are directed to a data plane proxy with an embedded open policy agent for a microservices application. An example method for authorizing requests in the microservices application that includes multiple services, each service being an application program interface (API) performing a piecemeal function of an overall application function, includes receiving, by a service of the multiple services, a request for access or utilization of the service. The service includes a data plane proxy that is configured to perform at least one of routing, load balancing, authentication and authorization, service discovery, or health checking for the service. The method further includes determining, by an open policy agent module embedded in the data plane proxy, whether to authorize the request, and transmitting, based on the determining, a decision that authorizes or rejects the request.