MQTT – Accessing MQ from anywhere

Download Report

Transcript MQTT – Accessing MQ from anywhere

Srihari Kulkarni 13 April 2011
MQTT – Accessing MQ from anywhere
© 2010 IBM Corporation
What is MQTT ?
 A way to obtain real world data
– Information is gathered by an increasing number of sensors and devices deployed all
over
 A way to provide real time information
– E.g. Locate an item in a supply chain
– Accurate current load of a any system (e.g. electricity meters)
– Current status of a system (level of liquid in a container, temperature, pressure etc.)
 A way to connect all the devices and sensors directly to your messaging infrastructure
2
© 2010 IBM Corporation
What is MQTT ?
 MQTT = MQ Telemetry Transport
 Lightweight messaging protocol designed for sensors and devices with
– Flaky network connectivity
– Low computing power
– Connections where bandwidth is at a premium
 Protocol specification is open source
 MQTT is nearly 10 years old
– Mature and evolving
3
© 2010 IBM Corporation
MQTT and WebSphere MQ
 WebSphere MQ is a leading messaging middleware product encompassing support for 80
platform configurations – previously server and desktop platforms.
 Starting v7.0.1.2, WebSphere MQ forays into the realm of devices and sensors
– MQTT clients can directly connect to WebSphere MQ
 Windows
– 32 and 64 bit
 Linux
– 64-bit
4
© 2010 IBM Corporation
Features of MQTT
 Publish and subscribe to topics
 3 qualities of service
– 0 Best effort to deliver a message
– 1 Deliver atleast once
– 2 Deliver exactly once
 Supports Retained publications
 Minimal transport overhead to reduce network traffic
– As little as 2 bytes
 Last Will and Testament
5
© 2010 IBM Corporation
WebSphere MQ Extended Reach (MQXR)
 What is MQXR ?
 Introduced in WebSphere MQ 7.0.1.2
 Implemented as a listener running on a queue manager
– Listens to connections from MQTT clients
– Implemented in Java
– Runs as an MQ service
 Interoperability with JMS, MQI and (of course) other MQTT clients
 Use MQTT with MQ Explorer
 Queue manager can send messages to clients too
6
© 2010 IBM Corporation
WebSphere MQ Extended Reach (MQXR)- Security
 Username and password as part of CONNECT action
 JAAS authentication
 SSL and plain text communication over TCP/IP
– SSL is not very kind on the network !
MQTT Client
Username/password
MQXR
Queue
manager
Username/password
Replied with
Yes/No
JAAS module
7
© 2010 IBM Corporation
WebSphere MQ Extended Reach (MQXR) configuration
 Configuration files in <MQ_Install_Path>/mqxr/config
– jaas.config
– mqxr_win.properties / mqxr_unix.properties
– trace.config
 WebSphere MQ Explorer UI
8
© 2010 IBM Corporation
MQTT Clients
 C clients
 Java clients
– Java SE client
– OSGi
– Java ME / MIDP 2.0
 MQTT Daemon
– MQTT listener and bridge
– Concentrator
– Gateway to WebSphere MQ
 Write your own !
9
© 2010 IBM Corporation
MQTT – Real world example #1

WebSphere Business Events
WebSphere
MQ
Collate and Analyze
WebSphere Business Monitor
10
© 2010 IBM Corporation