-
Notifications
You must be signed in to change notification settings - Fork 20
Home
Welcome to the as3MQTT wiki!
The MQTT V3.1 Protocol Specification Authors:
- International Business Machines Corporation (IBM)
- Eurotech
MQ Telemetry Transport (MQTT) is a lightweight broker-based publish/subscribe messaging protocol designed to be open, simple, lightweight and easy to implement. These characteristics make it ideal for use in constrained environments, for example, but not limited to: Where the network is expensive, has low bandwidth or is unreliable When run on an embedded device with limited processor or memory resources Features of the protocol include: The publish/subscribe message pattern to provide one-to-many message distribution and decoupling of applications A messaging transport that is agnostic to the content of the payload The use of TCP/IP to provide basic network connectivity Three qualities of service for message delivery:
"At most once", where messages are delivered according to the best efforts of the underlying TCP/IP network. Message loss or duplication can occur. This level could be used, for example, with ambient sensor data where it does not matter if an individual reading is lost as the next one will be published soon after.
"At least once", where messages are assured to arrive but duplicates may occur.
"Exactly once", where message are assured to arrive exactly once.
This level could be used, for example, with billing systems where duplicate or lost messages could lead to incorrect charges being applied. A small transport overhead (the fixed-length header is just 2 bytes), and protocol exchanges minimised to reduce network traffic A mechanism to notify interested parties to an abnormal disconnection of a client using the Last Will and Testament feature
© 1999-2010 Eurotech, International Business Machines Corporation (IBM). All rights MQTT V3.1 Protocol Specification reserved. Permission to copy and display the MQ Telemetry Transport specification (the "Specification"), in any medium without fee or royalty is hereby granted by Eurotech and International Business Machines Corporation (IBM) (collectively, the "Authors"), provided that you include the following on ALL copies of the Specification, or portions thereof, that you make: A link or URL to the Specification at one of 1. the Authors' websites. 2. The copyright notice as shown in the Specification.
The Authors each agree to grant you a royalty-free license, under reasonable, non-discriminatory terms and conditions to their respective patents that they deem necessary to implement the Specification. THE SPECIFICATION IS PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE SPECIFICATION ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THE SPECIFICATION. The name and trademarks of the Authors may NOT be used in any manner, including advertising or publicity pertaining to the Specification or its contents without specific, written prior permission. Title to copyright in the Specification will at all times remain with the Authors. No other rights are granted by implication, estoppel or otherwise.