MQTT protocol announcement
An announcement from IBM and Eurotech has been getting some publicity this week as they completed the donation of Java and C MQTT clients to the newly-proposed Eclipse Paho M2M messaging project. So what exactly does this all mean and why are people talking about it?
First a quick snapshot of MQTT:
- MQTT stands for Message Queuing Telemetry Transport.
- The protocol has has been in use since 1999 and was started by IBM's Andy Stanford-Clark (of twittering house fame) and Arlen Nipper.
- MQTT enables a publish/subscribe messaging model in an lightweight way and is useful for connections in locations where a small code footprint is required and/or network bandwidth is at a premium.
- Not formally standardized, but they say the process to bring it to a standards body has begun.
The MQTT specification has been published under a royalty-free license for some time now, this new announcement means IBM is seeding Eclipse Paho with C and Java client implementations of MQTT. In addition Eurotech is adding to the project by donating a framework and sample applications which device and client developers can use when integrating and testing messaging components.
"Just as Hypertext Transfer Protocol (HTTP) enabled open communication over the Internet, we believe the creation of an open protocol for messaging can do the same for smarter systems” say Mike Milinkovich, executive director, Eclipse Foundation
"We hope that MQTT will become a core protocol in building the Internet-of-Things, and it fits nicely with the work we've been doing with Eclipse,"
Why else is this significant?
- "it shows IBM is serious, by committing code and open sourcing it (as with the original Eclipse donation in 2001);the M2M Industry Working Group exists to foster the discussion in this space;
- it makes high-quality reference Java and C client implementations freely available in source form, with a good Java implementation something that has been particularly lacking;
- it creates an opportunity for Eclipse projects to use MQTT, and to develop tools on top of it.
About the Paho project:
The scope of the project is to provide open source implementations of open and standard messaging protocols that support current and emerging requirements of M2M integration with Web and Enterprise middleware and applications. It will include client implementations for use on embedded platforms along with corresponding server support as determined by the community.
Learn more about the protocol and this latest announcement at http://mqtt.org/ on IBM's technical librarypage, or at the Paho project homepage. There is also a discussion going on in the Linkedin IoT group regarding this topic and its implications.