Augmented Object-Oriented RPC Layer for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Remote Procedure Call (RPC) methods are inadequate for handling time-critical data transfers in distributed systems, as they often require custom interface software and are not universally supported across various devices and programming languages, leading to high latency and complexity in real-time applications.

Innovation Solution

A communication architecture that includes a message passing layer and an RPC layer with an augmented object-oriented model, featuring member types such as functions, properties, events, objrefs, pipes, callbacks, wires, and memories, which enables consistent and language-neutral communication, minimizing latency and supporting real-time operations across diverse devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If custom interface software is used for RPC communication, then communication functionality can be achieved, but device complexity and development effort increase

Engineering Contradiction:
Improvecommunication functionalityVSAvoidinterface software complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal RPC layer that provides language-neutral communication capabilities across diverse devices and programming languages. The augmented object-oriented model with standardized member types (functions, properties, events, objrefs, pipes, callbacks, wires, memories) serves as a universal interface that eliminates the need for custom interface software for each language combination, thereby reducing device complexity while maintaining broad adaptability

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

Solution Approach 2:

The patent introduces an intermediary RPC layer positioned between the message passing layer and application code. This intermediary layer handles language translation and communication protocol management, allowing applications to interact through standardized object members without requiring custom interface software. The RPC layer acts as a mediator that converts between different programming language conventions and the underlying message passing mechanism

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If conventional RPC methods are used, then communication between client and server can be established, but latency increases for time-critical operations

Engineering Contradiction:
Improvedata transfer capabilityVSAvoidcommunication latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the communication system into distinct layers: a message passing layer for fundamental data exchange and an RPC layer for high-level object-oriented operations. This segmentation allows time-critical operations to utilize optimized paths through the layered architecture, reducing latency by separating concern between basic messaging and application-level RPC semantics

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter representation model from conventional RPC function-call semantics to an augmented object-oriented model with typed members. This parameter change enables more efficient data handling and reduces serialization overhead, thereby reducing latency for time-critical data transfers while maintaining productivity

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If language-specific RPC implementations are used, then programming flexibility is maintained, but adaptability across different programming languages decreases

Engineering Contradiction:
Improvelanguage neutralityVSAvoidprogramming flexibility
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent creates a universal object-oriented interface that works across multiple programming languages through the RPC layer. The augmented model with standardized member types provides language-neutral semantics while maintaining the ability to map to language-specific constructs, thus achieving both adaptability across languages and ease of operation within each language context

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

Solution Approach 2:

The patent implements language-specific proxies that copy and adapt the universal object-oriented model to each programming language's conventions. These proxies maintain the language-neutral interface semantics while presenting language-appropriate syntax and semantics to programmers, preserving programming flexibility in each language while achieving cross-language adaptability

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10536560B2System and method for implementing augmented object members for remote procedure call
Publication Date: 2020.01.14 WASON JOHN
  • US10536560B2 patent drawing
  • US10536560B2 patent drawing
  • US10536560B2 patent drawing

AI summary

A communication method and system configured to facilitate integration of complex automation systems composed of disparate components that may run with different processes are distributed over a network or are embedded devices. The system/method allows for a client to rapidly access functionality exposed by a service within a client-service system employing a distributed application structure utilizing an augmented object-oriented model of multiple member types. The system/method allows interconnected nodes to communicate through message passing and remote procedure calling so as to reduce latency within a system composed of distributed resources.