RPC Translation Engine for Cross-Framework Data Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing RPC frameworks face interoperability issues when a client program and a server program use different RPC frameworks, leading to failures and incorrect results due to incompatibilities in syntax and data types.

Innovation Solution

A translation engine is automatically generated to bidirectionally translate between a server stub program and a server program, acting as an intermediary to convert data between incompatible RPC frameworks, allowing seamless communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a client program and server program use different RPC frameworks, then each program can be developed independently with its own preferred framework, but interoperability fails due to syntax and data type incompatibilities

Engineering Contradiction:
ImproveFramework selection flexibilityVSAvoidRPC call success rate
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a translation engine as an intermediary component between the client stub program and server program. This translation engine automatically translates data objects between the first format (used by the client RPC framework) and the second format (used by the server RPC framework), enabling successful interoperability without requiring both programs to use the same framework. The translation engine resolves the incompatibility issue while preserving the ability of each program to use its preferred framework independently.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual interface definition and translator code generation is performed, then interoperability between different RPC frameworks can be achieved, but development time and error rates increase

Engineering Contradiction:
ImproveInteroperability capabilityVSAvoidDevelopment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a code generator that automatically generates the translation engine code based on the interface definition. This self-service mechanism eliminates the need for manual translator code generation, reducing development time and minimizing human errors. The code generator analyzes the interface definition and automatically produces the necessary translation logic, making the system setup faster and more reliable while maintaining full interoperability capability.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If manual configuration of RPC interfaces is performed, then compatibility between different frameworks can be achieved, but development complexity and error potential increase

Engineering Contradiction:
ImproveCross-framework compatibilityVSAvoidConfiguration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent employs a syntax translator that automatically translates syntax between the first syntax (client RPC framework) and the second syntax (server RPC framework) based on the interface definition. This preliminary automated translation action eliminates the need for manual configuration of RPC interfaces, reducing configuration complexity and minimizing errors while maintaining cross-framework compatibility. The system performs the complex translation work automatically before runtime execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12547483B2Automatically generating a translation engine for facilitating remote procedure calls between a client program and a server program
Publication Date: 2026.02.10 RED HAT INC
  • US12547483B2 patent drawing
  • US12547483B2 patent drawing
  • US12547483B2 patent drawing

AI summary

One example of the present disclosure includes a system that can access a server stub defining a server stub program. The server stub program can be configured to operate as a remote procedure call (RPC) interface for receiving a RPC request from a client program. The RPC request can include a data object in a first format. The system can also generate translator code defining a translation engine. The translator code can be generated based on the server stub. The translation engine can convert the data object from the first format associated with the RPC interface into a second format compatible with a server program. The server program can be separate from the server stub program and the translation engine.