SlideShare a Scribd company logo
1 of 10
Download to read offline
More DASH7 with MQTT

Patrick Burns
pat@haystacktechnologies.com
DASH7istheOppositeofTCP
DASH7’s networking technology is different than TCP/IP.

DASH7 is designed to handle small data, but lots of devices at the same time. 

TCP/IP handles large data, but only between two devices.
2
MQTT Handles Connections “One at a Time”
3
• Client connects to MQTT server
(called a “Broker”)
• Client subscribes to some MQTT
“Topics” (these are like feeds).
• When Broker is supplied new
data on a given Topic, it forwards
to all subscribers, one at a time.
Broker
Unsubscribed

Client(s) Subscribed

Client(s)
1. Client publishes on

topic “X” to broker
1
2
3
4
2, 3, 4. Broker forwards Pub (1)

to all clients subscribed to “X”,
… one at a time.
DASH7 Handles Connections in Groups
4
• DASH7 devices can do peer-to-
peer, multicast publishing
without a broker.
• QoS is dictated by the manner in
which devices acknowledge
(ACK) the Publisher.
• It’s a lot like peer-to-peer MQTT.
1. Multicast 

Publish
2, 3, 4. Synchronized ACKs
2
3
4
DASH7 is Like Peer-to-Peer MQTT on a LAN
5
Broker
Unsubscribed

Client(s) Subscribed

Client(s)
1. Client publishes on

topic “X” to broker
1
2
3
4
2, 3, 4. Broker forwards Pub (1)

to all clients subscribed to “X”,
… one at a time.
1. Multicast 

Publish
2, 3, 4. Synchronized ACKs
2
3
4
A Proxy Can Integrate it with Cloud MQTT
6
Broker
Unsubscribed

Client(s) Subscribed

Client(s)
1. Client publishes on

topic “X” to broker
1
2
3
4
2, 3, 4. Broker forwards Pub (1)

to all clients subscribed to “X”,
… one at a time.
DASH7 WAN/LAN
Prox
• A DASH7-MQTT Proxy can be just an MQTT Client
that has a second interface on a DASH7 WAN or LAN.
• It forwards pub and sub messages.
• Additional sophistication can make it more efficient,
although Topic naming best practices makes a big
improvement with minimal sophistication.
DASH7+MQTT Topic Naming Best Practices
7
Keep topic names below 16 chars.
‣ e.g. topic/this_is_too_long
‣ e.g. topic/titl — (ok)
DASH7 devices have limited communication
bandwidth and memory. Queries work fastest on
strings 16 characters or less.
Use Path separators to define hierarchies
based on data latency requirements.
‣ e.g. rt/temp
‣ e.g. noncrit/temp
Here, we have real-time and “non-critical” groups of
temperature sensors. This structure allows the
proxy to be more intelligent.
Wildcards are cool.
‣ e.g. rt/#
‣ e.g. #/temp — (not advisable for std MQTT)
DASH7 querying supports wildcards and other
search features. The second topic will bog down a
normal MQTT network, but a DASH7-MQTT proxy
can actually handle it without problems.
The “ID/“ topic can be used for addressing
‣ e.g. ID/# — (broadcast)
‣ e.g. ID/0790 — (16bit LAN address)
‣ e.g. ID/DA5701A976B31F54 — (MAC)
This is a way to tunnel direct device addressing
through an MQTT proxy. (And yes, wildcards can
be used with partial addressing)
Example of MQTT-Tunneled DASH7 Query
8
1. Define topic that will address all the
endpoints you want to query. This example
looks for devices containing real-time
temperature data.

(note: we can set topics any way we want when we write
the system specification).
2. Put a MQTT response params in the
payload, with JSON or CBOR. The
endpoints will publish-back their data on
this topic & QoS.
3. Endpoints with rt/temp data available will
publish it back. Data format is CBOR.
rt/temp
{
“topic”:”hub/rt/temp”,
“qos”:1
}
CBOR examples:

http://cbor.io/tools.html
UDP Data Exchange Within MQTT
9
• DASH7 can Publish (and receive) data
over MQTT in a variety of formats.
‣ ALP/NDEF
‣ CBOR
‣ Proprietary Application data
• In all cases, data is binary format.
• ALP is the normal way to frame data.
‣ An ALP frame is shown to the right
‣ More info on specifics: 

http://www.indigresso.com/wiki/doku.php?
id=opentag:alpapi
ALP frames are very simple:
‣ Flags (for message fragmentation)
‣ Payload Length (size of data in bytes)
‣ ALP-ID (maps to a UDP destination port)
‣ ALP-CMD (application dependent usage)
‣ Payload is UDP application data
DASH7 supports UDP applications as well as some
UDP-like applications optimized for DASH7.
DASH7-optimized UDP protocols use ALP-CMD to
define protocol functions. Native UDP protocols use
ALP-CMD as the UDP source port number.
UDP Data Exchange Within MQTT
10
• Some common UDP Apps
‣ Trivial File Transfer Protocol (TFTP)
‣ Network Time Protocol (NTP)
‣ Lightweight Directory Services Protocol (LDAP)
‣ Constrained Application Protocol (CoAP)
‣ MQTT itself also can work on UDP
• UDP Apps Unique to DASH7
‣ Mode 2 Batch File Protocol

Point-to-Point and Point-to-Multipoint protocol for reading,
writing, or querying data from the filesystem. 

(similar to cat & < / > operators in UNIX)
‣ Confit (i.e. “Configure It”)

Point-to-Point and Point-to-Multipoint protocol for
transferring bulk updates, such as Firmware Updates.
Almost identical to TFTP, except it works at very low power
on the device endpoint.
• All of these applications can be tunneled over MQTT, to DASH7!
• You can use MQTT topics to achieve multicast addressing!
• There is a file on the device for storing dynamic CBOR CDDL!

More Related Content

What's hot

Research and Experimentation of LoRa in Heavy Multipath
Research and Experimentation of LoRa in Heavy MultipathResearch and Experimentation of LoRa in Heavy Multipath
Research and Experimentation of LoRa in Heavy MultipathHaystack Technologies
 
The Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesThe Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesMyNOG
 
LF_DPDK17_Accelerating Packet Processing with FPGA NICs
LF_DPDK17_Accelerating Packet Processing with FPGA NICsLF_DPDK17_Accelerating Packet Processing with FPGA NICs
LF_DPDK17_Accelerating Packet Processing with FPGA NICsLF_DPDK
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorialzdshelby
 
LF_DPDK17_Integrating and using DPDK with Open vSwitch
LF_DPDK17_Integrating and using DPDK with Open vSwitchLF_DPDK17_Integrating and using DPDK with Open vSwitch
LF_DPDK17_Integrating and using DPDK with Open vSwitchLF_DPDK
 
DDoS Mitigation using BGP Flowspec
DDoS Mitigation using BGP Flowspec DDoS Mitigation using BGP Flowspec
DDoS Mitigation using BGP Flowspec APNIC
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionAPNIC
 
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...LF_DPDK
 
IoT Communication Protocols
IoT Communication ProtocolsIoT Communication Protocols
IoT Communication ProtocolsPradeep Kumar TS
 
JavaZone 2016 : MQTT and CoAP for the Java Developer
JavaZone 2016 : MQTT and CoAP for the Java DeveloperJavaZone 2016 : MQTT and CoAP for the Java Developer
JavaZone 2016 : MQTT and CoAP for the Java DeveloperMark West
 
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...Indonesia Network Operators Group
 
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...Edielson P. Frigieri
 
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...LF_DPDK
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNGerardo Pardo-Castellote
 
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTP
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTPIoT Communication Protocols, Socket Programming with Python, MQTT & HTTP
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTPAnshu Pandey
 
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...gogo6
 

What's hot (20)

Research and Experimentation of LoRa in Heavy Multipath
Research and Experimentation of LoRa in Heavy MultipathResearch and Experimentation of LoRa in Heavy Multipath
Research and Experimentation of LoRa in Heavy Multipath
 
Is Internet getting old !!
Is Internet getting old !!Is Internet getting old !!
Is Internet getting old !!
 
Rpl2016
Rpl2016Rpl2016
Rpl2016
 
The Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesThe Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry Services
 
LF_DPDK17_Accelerating Packet Processing with FPGA NICs
LF_DPDK17_Accelerating Packet Processing with FPGA NICsLF_DPDK17_Accelerating Packet Processing with FPGA NICs
LF_DPDK17_Accelerating Packet Processing with FPGA NICs
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorial
 
LF_DPDK17_Integrating and using DPDK with Open vSwitch
LF_DPDK17_Integrating and using DPDK with Open vSwitchLF_DPDK17_Integrating and using DPDK with Open vSwitch
LF_DPDK17_Integrating and using DPDK with Open vSwitch
 
DDoS Mitigation using BGP Flowspec
DDoS Mitigation using BGP Flowspec DDoS Mitigation using BGP Flowspec
DDoS Mitigation using BGP Flowspec
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and Discussion
 
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...
 
IoT Communication Protocols
IoT Communication ProtocolsIoT Communication Protocols
IoT Communication Protocols
 
JavaZone 2016 : MQTT and CoAP for the Java Developer
JavaZone 2016 : MQTT and CoAP for the Java DeveloperJavaZone 2016 : MQTT and CoAP for the Java Developer
JavaZone 2016 : MQTT and CoAP for the Java Developer
 
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
 
Protocols for IoT
Protocols for IoTProtocols for IoT
Protocols for IoT
 
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
M2M Protocols for Constrained Environments in the Context of IoT: A Compariso...
 
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...
LF_DPDK17_DPDK with KNI – Pushing the Performance of an SDWAN Gateway to High...
 
Iot protocols seminar
Iot protocols seminarIot protocols seminar
Iot protocols seminar
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDN
 
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTP
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTPIoT Communication Protocols, Socket Programming with Python, MQTT & HTTP
IoT Communication Protocols, Socket Programming with Python, MQTT & HTTP
 
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
 

Similar to More on Using Haystack + DASH7 with MQTT

Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
Internet of Things: Protocols for M2M
Internet of Things: Protocols for M2MInternet of Things: Protocols for M2M
Internet of Things: Protocols for M2MCharles Gibbons
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
DPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettDPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettJim St. Leger
 
Transport Layer Numericals
Transport Layer NumericalsTransport Layer Numericals
Transport Layer NumericalsManisha Keim
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internatKritika Purohit
 
APIs at the Edge
APIs at the EdgeAPIs at the Edge
APIs at the EdgeRed Hat
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDKKernel TLV
 
6 open capi_meetup_in_japan_final
6 open capi_meetup_in_japan_final6 open capi_meetup_in_japan_final
6 open capi_meetup_in_japan_finalYutaka Kawai
 
07 - TCP_IP and the DoD Model.ppt
07 - TCP_IP and the DoD Model.ppt07 - TCP_IP and the DoD Model.ppt
07 - TCP_IP and the DoD Model.pptssuserf7cd2b
 
Web Technology Management Lecture II
Web Technology Management Lecture IIWeb Technology Management Lecture II
Web Technology Management Lecture IIsopekmir
 
Installation Of An Iso Image Dvd
Installation Of An Iso Image DvdInstallation Of An Iso Image Dvd
Installation Of An Iso Image DvdSusan Cox
 
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...Igalia
 

Similar to More on Using Haystack + DASH7 with MQTT (20)

Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
Internet of Things: Protocols for M2M
Internet of Things: Protocols for M2MInternet of Things: Protocols for M2M
Internet of Things: Protocols for M2M
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
DPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettDPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles Shiflett
 
Transport Layer Numericals
Transport Layer NumericalsTransport Layer Numericals
Transport Layer Numericals
 
Module 1 slides
Module 1 slidesModule 1 slides
Module 1 slides
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internat
 
APIs at the Edge
APIs at the EdgeAPIs at the Edge
APIs at the Edge
 
Ports and protocols
Ports and protocolsPorts and protocols
Ports and protocols
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDK
 
6 open capi_meetup_in_japan_final
6 open capi_meetup_in_japan_final6 open capi_meetup_in_japan_final
6 open capi_meetup_in_japan_final
 
07 - TCP_IP and the DoD Model.ppt
07 - TCP_IP and the DoD Model.ppt07 - TCP_IP and the DoD Model.ppt
07 - TCP_IP and the DoD Model.ppt
 
Web Technology Management Lecture II
Web Technology Management Lecture IIWeb Technology Management Lecture II
Web Technology Management Lecture II
 
Installation Of An Iso Image Dvd
Installation Of An Iso Image DvdInstallation Of An Iso Image Dvd
Installation Of An Iso Image Dvd
 
What's new in Hadoop Common and HDFS
What's new in Hadoop Common and HDFS What's new in Hadoop Common and HDFS
What's new in Hadoop Common and HDFS
 
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENTTCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
 
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
 

Recently uploaded

一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样ayvbos
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirtrahman018755
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftAanSulistiyo
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...kajalverma014
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdfMatthew Sinclair
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...gajnagarg
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolinonuriaiuzzolino1
 
PowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxPowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxgalaxypingy
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查ydyuyu
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样ayvbos
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptxAsmae Rabhi
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrHenryBriggs2
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查ydyuyu
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdfMatthew Sinclair
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 

Recently uploaded (20)

一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck Microsoft
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolino
 
PowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxPowerDirector Explination Process...pptx
PowerDirector Explination Process...pptx
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 

More on Using Haystack + DASH7 with MQTT

  • 1. More DASH7 with MQTT
 Patrick Burns pat@haystacktechnologies.com
  • 2. DASH7istheOppositeofTCP DASH7’s networking technology is different than TCP/IP.
 DASH7 is designed to handle small data, but lots of devices at the same time. 
 TCP/IP handles large data, but only between two devices. 2
  • 3. MQTT Handles Connections “One at a Time” 3 • Client connects to MQTT server (called a “Broker”) • Client subscribes to some MQTT “Topics” (these are like feeds). • When Broker is supplied new data on a given Topic, it forwards to all subscribers, one at a time. Broker Unsubscribed
 Client(s) Subscribed
 Client(s) 1. Client publishes on
 topic “X” to broker 1 2 3 4 2, 3, 4. Broker forwards Pub (1)
 to all clients subscribed to “X”, … one at a time.
  • 4. DASH7 Handles Connections in Groups 4 • DASH7 devices can do peer-to- peer, multicast publishing without a broker. • QoS is dictated by the manner in which devices acknowledge (ACK) the Publisher. • It’s a lot like peer-to-peer MQTT. 1. Multicast 
 Publish 2, 3, 4. Synchronized ACKs 2 3 4
  • 5. DASH7 is Like Peer-to-Peer MQTT on a LAN 5 Broker Unsubscribed
 Client(s) Subscribed
 Client(s) 1. Client publishes on
 topic “X” to broker 1 2 3 4 2, 3, 4. Broker forwards Pub (1)
 to all clients subscribed to “X”, … one at a time. 1. Multicast 
 Publish 2, 3, 4. Synchronized ACKs 2 3 4
  • 6. A Proxy Can Integrate it with Cloud MQTT 6 Broker Unsubscribed
 Client(s) Subscribed
 Client(s) 1. Client publishes on
 topic “X” to broker 1 2 3 4 2, 3, 4. Broker forwards Pub (1)
 to all clients subscribed to “X”, … one at a time. DASH7 WAN/LAN Prox • A DASH7-MQTT Proxy can be just an MQTT Client that has a second interface on a DASH7 WAN or LAN. • It forwards pub and sub messages. • Additional sophistication can make it more efficient, although Topic naming best practices makes a big improvement with minimal sophistication.
  • 7. DASH7+MQTT Topic Naming Best Practices 7 Keep topic names below 16 chars. ‣ e.g. topic/this_is_too_long ‣ e.g. topic/titl — (ok) DASH7 devices have limited communication bandwidth and memory. Queries work fastest on strings 16 characters or less. Use Path separators to define hierarchies based on data latency requirements. ‣ e.g. rt/temp ‣ e.g. noncrit/temp Here, we have real-time and “non-critical” groups of temperature sensors. This structure allows the proxy to be more intelligent. Wildcards are cool. ‣ e.g. rt/# ‣ e.g. #/temp — (not advisable for std MQTT) DASH7 querying supports wildcards and other search features. The second topic will bog down a normal MQTT network, but a DASH7-MQTT proxy can actually handle it without problems. The “ID/“ topic can be used for addressing ‣ e.g. ID/# — (broadcast) ‣ e.g. ID/0790 — (16bit LAN address) ‣ e.g. ID/DA5701A976B31F54 — (MAC) This is a way to tunnel direct device addressing through an MQTT proxy. (And yes, wildcards can be used with partial addressing)
  • 8. Example of MQTT-Tunneled DASH7 Query 8 1. Define topic that will address all the endpoints you want to query. This example looks for devices containing real-time temperature data.
 (note: we can set topics any way we want when we write the system specification). 2. Put a MQTT response params in the payload, with JSON or CBOR. The endpoints will publish-back their data on this topic & QoS. 3. Endpoints with rt/temp data available will publish it back. Data format is CBOR. rt/temp { “topic”:”hub/rt/temp”, “qos”:1 } CBOR examples:
 http://cbor.io/tools.html
  • 9. UDP Data Exchange Within MQTT 9 • DASH7 can Publish (and receive) data over MQTT in a variety of formats. ‣ ALP/NDEF ‣ CBOR ‣ Proprietary Application data • In all cases, data is binary format. • ALP is the normal way to frame data. ‣ An ALP frame is shown to the right ‣ More info on specifics: 
 http://www.indigresso.com/wiki/doku.php? id=opentag:alpapi ALP frames are very simple: ‣ Flags (for message fragmentation) ‣ Payload Length (size of data in bytes) ‣ ALP-ID (maps to a UDP destination port) ‣ ALP-CMD (application dependent usage) ‣ Payload is UDP application data DASH7 supports UDP applications as well as some UDP-like applications optimized for DASH7. DASH7-optimized UDP protocols use ALP-CMD to define protocol functions. Native UDP protocols use ALP-CMD as the UDP source port number.
  • 10. UDP Data Exchange Within MQTT 10 • Some common UDP Apps ‣ Trivial File Transfer Protocol (TFTP) ‣ Network Time Protocol (NTP) ‣ Lightweight Directory Services Protocol (LDAP) ‣ Constrained Application Protocol (CoAP) ‣ MQTT itself also can work on UDP • UDP Apps Unique to DASH7 ‣ Mode 2 Batch File Protocol
 Point-to-Point and Point-to-Multipoint protocol for reading, writing, or querying data from the filesystem. 
 (similar to cat & < / > operators in UNIX) ‣ Confit (i.e. “Configure It”)
 Point-to-Point and Point-to-Multipoint protocol for transferring bulk updates, such as Firmware Updates. Almost identical to TFTP, except it works at very low power on the device endpoint. • All of these applications can be tunneled over MQTT, to DASH7! • You can use MQTT topics to achieve multicast addressing! • There is a file on the device for storing dynamic CBOR CDDL!