Message Batching for MQTT Protocol Compliance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Messaging protocols like MQTT have a maximum message size limit, which can lead to inefficiencies when transmitting large data such as images or sensor data, as splitting content into sub-portions for transmission can result in delays, losses, or out-of-order receipt, causing entire message failures or increased resource consumption.

Innovation Solution

A framework for dividing messages into chunks or sub-portions for transmission within messaging protocol limits, accompanied by a caching service that uses embedded information and timing data to manage delayed or lost messages, ensuring complete sets are received and processed efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If content is transmitted as a single large message, then transmission efficiency is improved, but message size exceeds protocol limits causing transmission failures

Engineering Contradiction:
Improvetransmission efficiencyVSAvoidmessage delivery success
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent divides large content into multiple smaller sub-portions that fit within protocol message size limits. Each sub-portion is transmitted as a separate message with embedded metadata (content identifier, sub-portion number, total count) enabling the receiving system to reassemble them in the correct order, thus resolving the contradiction between transmission efficiency and protocol compliance.

Inventive Principle:
Principle #1Segmentation

2Reliability

If content is split into sub-portions for transmission, then protocol compliance is improved, but message loss or out-of-order receipt causes entire message failure

Engineering Contradiction:
Improveprotocol complianceVSAvoidtransmission efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements a feedback mechanism where the receiving system sends acknowledgments for successfully received sub-portions. The transmitting system uses this feedback to determine whether to retransmit missing or lost sub-portions, ensuring complete content delivery while maintaining protocol compliance and minimizing retransmission overhead.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent embeds metadata (content identifier, sub-portion number, total count) in each message before transmission. This preliminary action enables the receiving system to immediately validate message completeness and detect out-of-order arrivals, allowing for efficient reassembly and error recovery without requiring complex post-reception processing.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If content is divided into multiple messages, then message size limits are respected, but increased message count leads to higher resource consumption

Engineering Contradiction:
Improvemessage size complianceVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent combines multiple sub-portion transmissions into a single logical content unit by embedding a shared content identifier in each message. The receiving system merges these sub-portions based on their sequence numbers and metadata, reducing the overhead of processing multiple independent messages and minimizing resource consumption while maintaining protocol compliance.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11856073B1Message batching for communication protocols
Publication Date: 2023.12.26 AMAZON TECH INC
  • US11856073B1 patent drawing
  • US11856073B1 patent drawing
  • US11856073B1 patent drawing

AI summary

A framework in which computing devices can divide messages into chunks or sub-portions for transmission in accordance with a topic-based messaging protocol. A caching service facilitates the receipt of a set of messages with individual sub-portions. The caching service uses embedded information in the sub-portion messages to determine when a full set of sub-portions have been received. The caching service can release a completed set of sub-portion messages to an intended network service recipient or utilizing time expiration caching criteria to wait for additional messages.