Shared-Memory RPC for Low-Latency Edge Process Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote procedure call (RPC) mechanisms face inefficiencies and latency issues in inter-process communication on the same machine, particularly in cross-region or cross-network environments, leading to performance degradation and network instability problems.

Innovation Solution

A method utilizing a shared memory for inter-process communication between processes on the same machine, enabling efficient and reliable data exchange by writing and reading messages with message types and method identifiers, and employing error detection mechanisms to ensure accurate data processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If RPC mechanisms rely on network communication (HTTP/TCP), then inter-process communication can be achieved, but communication latency and overhead increase significantly

Engineering Contradiction:
Improvecommunication reliabilityVSAvoidcommunication latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces a shared memory as an intermediary mechanism between processes. Instead of using network communication protocols (HTTP/TCP) that introduce latency, processes communicate by writing to and reading from a shared memory space, eliminating network overhead while maintaining communication reliability through structured message passing with type checking and error detection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If network calls are used for RPC communication, then processes can interact across different machines, but communication efficiency decreases due to latency and network instability

Engineering Contradiction:
Improvecommunication flexibilityVSAvoidcommunication efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent optimizes communication by using shared memory for local inter-process communication where both processes reside on the same machine. This local communication approach provides high efficiency and speed, while the system maintains adaptability by allowing configuration of different communication modes (shared memory vs. network RPC) based on whether processes are local or remote.

Inventive Principle:
Principle #3Local quality

3Reliability

If RPC mechanisms handle various network failures, then communication robustness improves, but system complexity and resource consumption increase

Engineering Contradiction:
Improvecommunication robustnessVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and handles only the essential error cases relevant to shared memory communication (memory access errors, message format errors, process identification errors) rather than implementing comprehensive network failure handling. This reduces system complexity by focusing on the specific error types that occur in the shared memory communication model while maintaining sufficient robustness for the intended use case.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP4703883A1Method for processing human-machine-environment data, edge computing device and system, and storage medium
Publication Date: 2026.03.04 KINGFAR INTERNATIONAL INC
  • EP4703883A1 patent drawingFigure 1
  • EP4703883A1 patent drawingFigure 2
  • EP4703883A1 patent drawingFigure 3~4

AI summary

Provided are a method for processing human-machine-environment data, an edge computing device and system and a storage medium. According to the method, the first process writes the first message into the first memory, and reads the second message from the first memory to obtain the message type and the method identifier that are carried in the second message after detecting that the second message is written into the first memory. When the value of the message type carried in the second message is a response, and the method identifier carried in the second message matches the identifier of the method that the first process requests to call, the first process determines that the second message is a response message of the first message, and then processes the second message, thereby realizing efficient and reliable inter-process communication on the same machine, and reducing the communication latency and resource consumption.