MQTT Client Dual-Connection Architecture for Urgent Message Priority
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In communication systems using Publish/subscribe type protocols like MQTT, when a client and broker disconnect, there is a delay in transmitting and receiving messages requiring immediate acknowledgment, such as during authentication, due to batch delivery of accumulated messages upon reconnection, which can lead to delayed or failed processes.
Innovation Solution
A client and broker configuration that establishes separate connections for urgent and normal messages, allowing immediate transmission and reception of urgent messages while batch delivering normal messages, ensuring no delay in critical processes like authentication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the broker delivers accumulated messages in a batch after reconnection, then messages that were missed during disconnection are successfully transmitted, but the transmission and reception of messages requiring immediate acknowledgment are delayed
Solution Approach 1:
The patent segments the single communication connection into two separate connections: a first connection dedicated to urgent messages requiring immediate acknowledgment (such as authentication messages), and a second connection for normal messages that can be delivered in batch. This segmentation allows the broker to deliver accumulated normal messages in batch without delaying the transmission and reception of urgent messages, as they traverse different communication channels. The segmentation resolves the contradiction by ensuring both message delivery completeness (through batch delivery on the second connection) and timely authentication (through dedicated urgent message transmission on the first connection).
2Productivity
If the broker accumulates and batch-delivers messages, then communication efficiency is improved during reconnection, but messages requiring immediate transmission cannot be processed until batch delivery completes
Solution Approach 1:
The patent divides the message stream into two segments: urgent messages transmitted through a first connection with immediate delivery, and normal messages transmitted through a second connection with batch delivery. This segmentation enables the system to maintain high productivity for normal messages via efficient batch delivery while preserving high transmission speed for urgent messages through dedicated immediate transmission channels, thus resolving the contradiction between delivery efficiency and transmission speed.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of a gateway or broker that manages two separate communication connections. This intermediary selectively routes urgent messages through the first connection for immediate delivery and normal messages through the second connection for batch delivery. The intermediary resolves the contradiction by mediating between the conflicting requirements of speed and productivity, ensuring that each message type is delivered through the most appropriate channel.
3Device complexity
If a single connection is used for all messages, then the system structure is simple, but urgent messages are delayed when batch delivery of accumulated messages occurs
Solution Approach 1:
The patent applies segmentation by dividing the communication infrastructure into two distinct connections: a first connection for urgent messages and a second connection for normal messages. Although this increases structural complexity compared to a single connection, it eliminates the time delay issue by ensuring that urgent messages are never subjected to batch delivery delays. The segmentation transforms the contradiction by accepting increased complexity as the necessary cost to achieve timely urgent message transmission.
Data Source
AI summary
A client is provided with: a connection processing unit for establishing a first connection for transmitting/receiving a first message and a second connection for transmitting/receiving a second message to and from a broker; a subscription request unit for requesting the broker, using the first connection, with a first topic designated, that the first message associated with the first topic be subscribed, and requesting the broker, using the second connection, with a second topic designated, that the second message associated with the second topic be subscribed; and a message transmission unit for transmitting the first message associated with a third topic to the broker using the first connection and transmitting the second message associated with a fourth topic to the broker using the second connection.


