EMMA: Distributed QoS-Aware MQTT Middleware for Edge Computing Applications

Thomas Rausch
Thomas RauschCo-Founder & Head of Engineering at LocalStack
EMMA
Distributed QoS-Aware MQTT Middleware
for Edge Computing Applications
Thomas Rausch, Stefan Nastic, Schahram Dustdar
TU Wien
Distributed Systems Group
http://dsg.tuwien.ac.at
2
AWS IoT
3
Subscribe to topic:
/robot/arm
Publish “move x,y,z” to
/robot/arm
Decoupled messaging
4
Trust?!
Availability?!
End-to-end latency: ??ms!
5
Edge-Enabled MOM
Data centers
Internet
Mobile
edge
Extreme
edge
IoT
Cloudlets
Message broker
Cloud-based MOM
Edge-enabled MOM
Scale
Proximity &
Responsiveness
6
▪ Popular platform for IoT
– ISO standardized pub/sub protocol
– Low-bandwidth design
▪ Simple Protocol
– CONNACK
– SUBSCRIBE(t), SUBACK(t)
– PUBLISH(t, msg)
– ...
7
Static MQTT Topic Bridging
Local Broker
Central
Broker
Internal
Topics
Static
config
Static
config
Cloud
M. Garcia, “How to Bridge Mosquitto MQTT Broker to AWS IoT”
The Internet of Things on AWS -- Official Blog, 2016.
https://aws.amazon.com/blogs/iot/how-to-bridge-mosquitto-mqtt-broker-to-aws-iot/
Edge
Topic Bridge
8
Goals
▪ Decentralized messaging middleware
▪ Leverages edge resources to reduce latency
▪ Can handle mobile clients
▪ Can handle volatile resources
▪ Seamlessly integrates with IoT infrastructure
9
EMMA MQTT Middleware
Client
GW
c
GW
c
Broker
Broker
Device
Monitoringprotocol
Controller
Bridging
Tables
Gateway
Bridging
Table
Reconfigura-
tion Engine
REST Endpoints
Network
monitor
Buffer out
Buffer in
MQTT
Server
Discovery Service
https://git.dsg.tuwien.ac.at/emma/emma
10
QoS Optimization & Balancing
0-2 ms
2-5
5-10
PINGREQ
PINGRESP
Broker Gateway▪ Continuously monitor network
QoS via simple UDP protocol
▪ For each client create
latency group to brokers
▪ Connect gateways to
a broker in closest group
▪ Balance load between
brokers in same group
11
Orchestration
:b1::b2::gateway::controller
SUBSCRIBE
...
CONNECT
DISCONNECT
replay
control
packets
TCP connect
TCP open
update
network
RECONACK(b2)
RECONREQ(b2)
:brokerA
:controller:gateway:client
CONNACK
CONNACK
lookup
result(brokerA)
store
packet
CONNECT
CONNECT
12
Evaluation
us-east eu-west
eu-central
BrokerGateway BrokerGateway
Controller
... ...
Gateway
Broker
98 ms 27 ms
85 ms
https://git.dsg.tuwien.ac.at/emma/pubsub-benchmark
13
Controller
eu-west
eu-centralus-east
14
Controller
<1 ms
98 ms
27 ms
85 ms
15
Controller
16
Controller
17
Controller
18
Controller
19
Controller
20
Controller
21
Controller
22
Message Loss
▪ Caused by subscriber mobility
▪ Guaranteed message delivery requires
transactional reconnection
23
More Results in the Paper
71
2
3 4 5 6 8
24
Dipl.-Ing. (MSc)
Thomas Rausch
Research Assistant
TU Wien
Distributed Systems Group
Argentinierstraße 8/194-02, 1040, Vienna, Austria
T: +43 1 58801 184 838
E: t.rausch@dsg.tuwien.ac.at
dsg.tuwien.ac.at/staff/trausch
QoS Monitoring & Reconfiguration
25
Related Work – P2P Pub/Sub
NCA’05
DEBS’05
MW’05
PODC’07
26
State of the Art – Research
27
State of the Art – The Real World
ScalAgent. JoramMQ, a distributed MQTT broker for the Internet of Things.
White paper. 2014.
1 of 27

Recommended

Message-Oriented Middleware for Edge Computing Applications by
Message-Oriented Middleware for Edge Computing ApplicationsMessage-Oriented Middleware for Edge Computing Applications
Message-Oriented Middleware for Edge Computing ApplicationsThomas Rausch
732 views26 slides
Is SDN ready for primetime? by
Is SDN ready for primetime?Is SDN ready for primetime?
Is SDN ready for primetime?APNIC
435 views9 slides
Cloud Origins: How OpenStack became the natural evolution of the internet and... by
Cloud Origins: How OpenStack became the natural evolution of the internet and...Cloud Origins: How OpenStack became the natural evolution of the internet and...
Cloud Origins: How OpenStack became the natural evolution of the internet and...Cloud Native Day Tel Aviv
184 views16 slides
The Death of Transit and Beyond by
The Death of Transit and BeyondThe Death of Transit and Beyond
The Death of Transit and BeyondAPNIC
356 views28 slides
A Generalized Label-Forwarding Architecture for the Future Internet by
A Generalized Label-Forwarding Architecture for the Future InternetA Generalized Label-Forwarding Architecture for the Future Internet
A Generalized Label-Forwarding Architecture for the Future InternetAchim Friedland
489 views11 slides
Data Center Network in a Bundle by
Data Center Network in a BundleData Center Network in a Bundle
Data Center Network in a BundleDhiman Chowdhury
484 views11 slides

More Related Content

Similar to EMMA: Distributed QoS-Aware MQTT Middleware for Edge Computing Applications

Open source building blocks for the Internet of Things - Jfokus 2013 by
Open source building blocks for the Internet of Things - Jfokus 2013Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013Benjamin Cabé
2.2K views43 slides
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech Talks by
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech TalksEssential Capabilities of an IoT Cloud Platform - AWS Online Tech Talks
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech TalksAmazon Web Services
1.2K views55 slides
Introducing MQTT by
Introducing MQTTIntroducing MQTT
Introducing MQTTAndy Piper
27.2K views34 slides
What's the Right Messaging Standard for the IoT? by
What's the Right Messaging  Standard for the IoT?What's the Right Messaging  Standard for the IoT?
What's the Right Messaging Standard for the IoT?Angelo Corsaro
13K views65 slides
MQTT with .NET Core by
MQTT with .NET CoreMQTT with .NET Core
MQTT with .NET CoreMark Lechtermann
14.6K views24 slides
Messaging for the Internet of Awesome Things by
Messaging for the Internet of Awesome ThingsMessaging for the Internet of Awesome Things
Messaging for the Internet of Awesome ThingsAndy Piper
4.9K views37 slides

Similar to EMMA: Distributed QoS-Aware MQTT Middleware for Edge Computing Applications(20)

Open source building blocks for the Internet of Things - Jfokus 2013 by Benjamin Cabé
Open source building blocks for the Internet of Things - Jfokus 2013Open source building blocks for the Internet of Things - Jfokus 2013
Open source building blocks for the Internet of Things - Jfokus 2013
Benjamin Cabé2.2K views
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech Talks by Amazon Web Services
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech TalksEssential Capabilities of an IoT Cloud Platform - AWS Online Tech Talks
Essential Capabilities of an IoT Cloud Platform - AWS Online Tech Talks
Amazon Web Services1.2K views
Introducing MQTT by Andy Piper
Introducing MQTTIntroducing MQTT
Introducing MQTT
Andy Piper27.2K views
What's the Right Messaging Standard for the IoT? by Angelo Corsaro
What's the Right Messaging  Standard for the IoT?What's the Right Messaging  Standard for the IoT?
What's the Right Messaging Standard for the IoT?
Angelo Corsaro13K views
Messaging for the Internet of Awesome Things by Andy Piper
Messaging for the Internet of Awesome ThingsMessaging for the Internet of Awesome Things
Messaging for the Internet of Awesome Things
Andy Piper4.9K views
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ... by Benjamin Cabé
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Benjamin Cabé3K views
Unified Middleware for Internet of Things by Honbo Zhou
Unified Middleware for Internet of ThingsUnified Middleware for Internet of Things
Unified Middleware for Internet of Things
Honbo Zhou21.3K views
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012 by Benjamin Cabé
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Benjamin Cabé2.4K views
Node home automation with Node.js and MQTT by Michael Dawson
Node home automation with Node.js and MQTTNode home automation with Node.js and MQTT
Node home automation with Node.js and MQTT
Michael Dawson1.9K views
3 Software Stacks for IoT Solutions by Ian Skerrett
3 Software Stacks for IoT Solutions3 Software Stacks for IoT Solutions
3 Software Stacks for IoT Solutions
Ian Skerrett7.5K views
Mainflux - Hyperscalable Unified IoT Platform by Sasa Klopanovic
Mainflux - Hyperscalable Unified IoT PlatformMainflux - Hyperscalable Unified IoT Platform
Mainflux - Hyperscalable Unified IoT Platform
Sasa Klopanovic323 views
Mainflux - Hyperscalable Unified IoT Platform by Sasa Klopanovic
Mainflux - Hyperscalable Unified IoT PlatformMainflux - Hyperscalable Unified IoT Platform
Mainflux - Hyperscalable Unified IoT Platform
Sasa Klopanovic190 views
OSDC 2015: Jan-Piet Mens | MQTT for your data center (and for the IoT) by NETWAYS
OSDC 2015: Jan-Piet Mens | MQTT for your data center (and for the IoT)OSDC 2015: Jan-Piet Mens | MQTT for your data center (and for the IoT)
OSDC 2015: Jan-Piet Mens | MQTT for your data center (and for the IoT)
NETWAYS291 views
MoteBus by Zoe Chen
MoteBusMoteBus
MoteBus
Zoe Chen245 views
Realtime mobile&iot solutions using mqtt and message sight by floridawusergroup
Realtime mobile&iot solutions using mqtt and message sightRealtime mobile&iot solutions using mqtt and message sight
Realtime mobile&iot solutions using mqtt and message sight
floridawusergroup1.5K views
Lightweight and scalable IoT Architectures with MQTT by Dominik Obermaier
Lightweight and scalable IoT Architectures with MQTTLightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Architectures with MQTT
Dominik Obermaier1.1K views

More from Thomas Rausch

Test cloud application deployments locally and in CI without staging environm... by
Test cloud application deployments locally and in CI without staging environm...Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...Thomas Rausch
10 views29 slides
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp... by
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...Thomas Rausch
199 views15 slides
Towards a Serverless Platform for Edge AI by
Towards a Serverless Platform for Edge AITowards a Serverless Platform for Edge AI
Towards a Serverless Platform for Edge AIThomas Rausch
470 views14 slides
Edge Intelligence: The Convergence of Humans, Things and AI by
Edge Intelligence: The Convergence of Humans, Things and AIEdge Intelligence: The Convergence of Humans, Things and AI
Edge Intelligence: The Convergence of Humans, Things and AIThomas Rausch
844 views34 slides
Portable Energy-Aware Cluster-Based Edge Computers by
Portable Energy-Aware Cluster-Based Edge ComputersPortable Energy-Aware Cluster-Based Edge Computers
Portable Energy-Aware Cluster-Based Edge ComputersThomas Rausch
847 views14 slides
An Empirical Analysis of Build Failures in the Continuous Integration Workflo... by
An Empirical Analysis of Build Failures in the Continuous Integration Workflo...An Empirical Analysis of Build Failures in the Continuous Integration Workflo...
An Empirical Analysis of Build Failures in the Continuous Integration Workflo...Thomas Rausch
912 views22 slides

More from Thomas Rausch(8)

Test cloud application deployments locally and in CI without staging environm... by Thomas Rausch
Test cloud application deployments locally and in CI without staging environm...Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...
Thomas Rausch10 views
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp... by Thomas Rausch
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...
Synthesizing Plausible Infrastructure Configurations for Evaluating Edge Comp...
Thomas Rausch199 views
Towards a Serverless Platform for Edge AI by Thomas Rausch
Towards a Serverless Platform for Edge AITowards a Serverless Platform for Edge AI
Towards a Serverless Platform for Edge AI
Thomas Rausch470 views
Edge Intelligence: The Convergence of Humans, Things and AI by Thomas Rausch
Edge Intelligence: The Convergence of Humans, Things and AIEdge Intelligence: The Convergence of Humans, Things and AI
Edge Intelligence: The Convergence of Humans, Things and AI
Thomas Rausch844 views
Portable Energy-Aware Cluster-Based Edge Computers by Thomas Rausch
Portable Energy-Aware Cluster-Based Edge ComputersPortable Energy-Aware Cluster-Based Edge Computers
Portable Energy-Aware Cluster-Based Edge Computers
Thomas Rausch847 views
An Empirical Analysis of Build Failures in the Continuous Integration Workflo... by Thomas Rausch
An Empirical Analysis of Build Failures in the Continuous Integration Workflo...An Empirical Analysis of Build Failures in the Continuous Integration Workflo...
An Empirical Analysis of Build Failures in the Continuous Integration Workflo...
Thomas Rausch912 views
Build Failure Prediction in Continuous Integration Workflows by Thomas Rausch
Build Failure Prediction in Continuous Integration WorkflowsBuild Failure Prediction in Continuous Integration Workflows
Build Failure Prediction in Continuous Integration Workflows
Thomas Rausch1.5K views
Git Introduction Tutorial by Thomas Rausch
Git Introduction TutorialGit Introduction Tutorial
Git Introduction Tutorial
Thomas Rausch3.9K views

Recently uploaded

DESIGN OF SPRINGS-UNIT4.pptx by
DESIGN OF SPRINGS-UNIT4.pptxDESIGN OF SPRINGS-UNIT4.pptx
DESIGN OF SPRINGS-UNIT4.pptxgopinathcreddy
19 views47 slides
Activated sludge process .pdf by
Activated sludge process .pdfActivated sludge process .pdf
Activated sludge process .pdf8832RafiyaAltaf
9 views32 slides
_MAKRIADI-FOTEINI_diploma thesis.pptx by
_MAKRIADI-FOTEINI_diploma thesis.pptx_MAKRIADI-FOTEINI_diploma thesis.pptx
_MAKRIADI-FOTEINI_diploma thesis.pptxfotinimakriadi
7 views32 slides
Object Oriented Programming with JAVA by
Object Oriented Programming with JAVAObject Oriented Programming with JAVA
Object Oriented Programming with JAVADemian Antony D'Mello
119 views28 slides
Digital Watermarking Of Audio Signals.pptx by
Digital Watermarking Of Audio Signals.pptxDigital Watermarking Of Audio Signals.pptx
Digital Watermarking Of Audio Signals.pptxAyushJaiswal781174
11 views25 slides
SUMIT SQL PROJECT SUPERSTORE 1.pptx by
SUMIT SQL PROJECT SUPERSTORE 1.pptxSUMIT SQL PROJECT SUPERSTORE 1.pptx
SUMIT SQL PROJECT SUPERSTORE 1.pptxSumit Jadhav
12 views26 slides

Recently uploaded(20)

_MAKRIADI-FOTEINI_diploma thesis.pptx by fotinimakriadi
_MAKRIADI-FOTEINI_diploma thesis.pptx_MAKRIADI-FOTEINI_diploma thesis.pptx
_MAKRIADI-FOTEINI_diploma thesis.pptx
fotinimakriadi7 views
SUMIT SQL PROJECT SUPERSTORE 1.pptx by Sumit Jadhav
SUMIT SQL PROJECT SUPERSTORE 1.pptxSUMIT SQL PROJECT SUPERSTORE 1.pptx
SUMIT SQL PROJECT SUPERSTORE 1.pptx
Sumit Jadhav 12 views
Effect of deep chemical mixing columns on properties of surrounding soft clay... by AltinKaradagli
Effect of deep chemical mixing columns on properties of surrounding soft clay...Effect of deep chemical mixing columns on properties of surrounding soft clay...
Effect of deep chemical mixing columns on properties of surrounding soft clay...
AltinKaradagli6 views
zincalume water storage tank design.pdf by 3D LABS
zincalume water storage tank design.pdfzincalume water storage tank design.pdf
zincalume water storage tank design.pdf
3D LABS5 views
Machine Element II Course outline.pdf by odatadese1
Machine Element II Course outline.pdfMachine Element II Course outline.pdf
Machine Element II Course outline.pdf
odatadese18 views
Thermal aware task assignment for multicore processors using genetic algorithm by IJECEIAES
Thermal aware task assignment for multicore processors using genetic algorithm Thermal aware task assignment for multicore processors using genetic algorithm
Thermal aware task assignment for multicore processors using genetic algorithm
IJECEIAES31 views
An approach of ontology and knowledge base for railway maintenance by IJECEIAES
An approach of ontology and knowledge base for railway maintenanceAn approach of ontology and knowledge base for railway maintenance
An approach of ontology and knowledge base for railway maintenance
IJECEIAES12 views
A multi-microcontroller-based hardware for deploying Tiny machine learning mo... by IJECEIAES
A multi-microcontroller-based hardware for deploying Tiny machine learning mo...A multi-microcontroller-based hardware for deploying Tiny machine learning mo...
A multi-microcontroller-based hardware for deploying Tiny machine learning mo...
IJECEIAES13 views
NEW SUPPLIERS SUPPLIES (copie).pdf by georgesradjou
NEW SUPPLIERS SUPPLIES (copie).pdfNEW SUPPLIERS SUPPLIES (copie).pdf
NEW SUPPLIERS SUPPLIES (copie).pdf
georgesradjou15 views

EMMA: Distributed QoS-Aware MQTT Middleware for Edge Computing Applications