Message Ordering via Orthogonal Sequence Group Identifiers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing message ordering systems in communication networks face challenges in ensuring messages are processed in the intended order, especially in asynchronous multi-hop networks, where intermediaries can reorder messages, and traditional conversation-based models complicate configuration and handling of multiple conversations and parallel processing.

Innovation Solution

The system employs sequence group identifiers (SGIs) orthogonal to the service/port/operation hierarchy, allowing independent sequencing of message groups without explicit conversation IDs, using Universally Unique Identifiers (UUIDs) to manage collisions and enabling scalable distributed message ordering across multiple participants.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single sequence number is used for all messages, then message ordering is ensured, but parallel processing of independent conversations is prevented

Engineering Contradiction:
Improvemessage orderingVSAvoidparallel processing capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the single sequence number into two components: a conversation identifier (CID) and a sequence number within that conversation. This segmentation allows different conversations to have independent sequence numbers, enabling parallel processing while maintaining ordering within each conversation. The message ordering is ensured by the (CID, sequence number) tuple comparison rather than a single global sequence number.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a new dimension to the sequence number by introducing the conversation identifier as a separate component. Instead of using a single-dimensional sequence number, the system uses a two-dimensional (CID, sequence number) pairing. This dimensional change allows multiple conversations to proceed in parallel while maintaining order within each conversation, resolving the contradiction between ordering and parallelism.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If conversation IDs are introduced to enable parallel conversations, then multiple independent conversations can be processed simultaneously, but configuration complexity and state management increase

Engineering Contradiction:
Improveparallel conversation processingVSAvoidconfiguration and state management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes the sequence number field serve multiple functions: it provides ordering within a conversation and, when paired with the CID, enables identification of conversations. The (CID, sequence number) combination serves both as a conversation identifier and an ordering mechanism, eliminating the need for separate complex state management structures and reducing configuration complexity while enabling parallel processing.

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

Data Source

PatentUS7509378B2System and method for message ordering in a message oriented network
Publication Date: 2009.03.24 ORACLE INT CORP
  • US7509378B2 patent drawing
  • US7509378B2 patent drawing
  • US7509378B2 patent drawing

AI summary

A system and method for message ordering in a message oriented network. Sequencing groups of messages is an act that is completely orthogonal to the service/port/operation hierarchy of any of the participants. By separating the two, the invention eliminates making message ordering subordinate to the conversation scope, and replaces it with an ordering that is actually orthogonal to the conversation and/or class factory scope.