Replies: 1 comment
1. Motivation & Operational ContextMQTT is the industry-standard messaging protocol for IoT devices, microcontrollers, and edge gateways. Providing an MQTT entry point enables existing MQTT clients to publish to and consume from Iggy. To maintain architectural clarity, two distinct integration paths are defined:
The standalone gateway introduces an independently deployed process that must be configured, secured, monitored, scaled, and made highly available. This operational cost is justified specifically for brokerless edge deployments. 2. Architecture & Process BoundariesThe MQTT gateway operates as an independent, standalone process under Process Boundary Guarantees
Proposed Crate Structure3. Protocol Scope & Compatibility BaselineBaseline Specification
Control Packet Scope (11 of 14 MQTT 3.1.1 Control Packets)
Explicit Exclusions & Error BehaviorThe following features remain explicitly out of scope:
Note on Error Codes: Unsupported features return MQTT-specific reason codes or disconnect behavior according to spec, rather than generic "unsupported version" errors [29]. 4. Authentication, Authorization & Validation PipelineWhen an MQTT client connects, the gateway processes the request through a multi-stage pipeline.
5. Topic Mapping & Partitioning StrategyTopic Mapping AbstractionMQTT topic names are mapped to Iggy Streams and Topics through an explicit mapping layer within the gateway:
Partitioning & OrderingThe gateway selects the target Iggy partition before forwarding an MQTT
Execution FlowAll topic mapping and partition-selection logic is performed inside the gateway process. Iggy Core remains unaware of MQTT-specific topic semantics and receives a standard SDK request targeting the resolved Iggy Stream, Topic, and partition. 6. Inbound Publish & Outbound Delivery Flow (ACK Disambiguation)A crucial architectural distinction is drawn between Inbound Publish Acknowledgements and Outbound Delivery Acknowledgements:
7. Shared-Reader Fan-Out & Acknowledgement RulesShared Reader Model
Contiguous Safe Offset Advancement (
|
Uh oh!
There was an error while loading. Please reload this page.
The discussion is branching out from the #4181 around the architectural and design of the gateway/mqtt. The design details and implementation details will be added here
All reactions