Top Banner
27

BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Apr 14, 2018

Download

Documents

phungquynh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of
Page 2: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

BIG PICTURE

Page 3: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Data Value Chain

SensorsSensors

SensorsSensorsHubsHubs

Data Collectors

AppsApps

AppsApps

Sensors

SensorsSensors

SensorsSensors

SensorsSensors

HubsHubs

Data CollectorsData CollectorsAppsApps

AppsApps

Page 4: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Technical questions thatrequire standards…. How to I call functions across devices? How do I describe an API/functions? How do I discover an API/Service? How do I identify and object/device/thing? How do I authenticate a user? How do I authenticate a device? How do connect locally (no internet)? How do I manage permissions? Where does data come from? Is there anything different about IOT?

How to I call functions across devices? How do I describe an API/functions? How do I discover an API/Service? How do I identify and object/device/thing? How do I authenticate a user? How do I authenticate a device? How do connect locally (no internet)? How do I manage permissions? Where does data come from? Is there anything different about IOT?

Page 5: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

IOT ChallengesVolume (cost) of data being transmitted (especially in M2M with limited dataplans)

Power consumption (battery powered devices)

Responsiveness (near-real time delivery of information)

Reliable delivery over fragile connections

Security and privacy

Scalability

Small footprint

Page 6: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

A ComparisonProtocol CoAP XMPP RESTful HTTP MQTTTransport UDP TCP TCP TCP

Messaging Request/ResponsePublish/SubscribeRequest/Response

Request/ResponsePublish/SubscribeRequest/Response

2G, 3G, 4GSuitability (1000snodes)

Excellent Excellent Excellent Excellent

LLN Suitability(1000s nodes)LLN Suitability(1000s nodes) Excellent Fair Fair Fair

Compute Resources10Ks RAM/Flash 10Ks RAM/Flash 10Ks RAM/Flash 10Ks RAM/Flash

Success StoriedUtility Field AreaNetworks

Remotemanagement ofconsumer whitegoods

Smart Energy Profile2 (premise energymanagement/homeservices)

Extending enterprisemessaging into IoTapplications

http://blogs.cisco.com/ioe/beyond-mqtt-a-cisco-view-on-iot-protocols/

https://docs.google.com/document/d/1_kTNkl84o_yoC56dzFfkYHoHuepINP3nDNokycXINXI/edit?pli=1

Page 7: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

MQTT

OASIS standard TCP bearer Min 2 byte packet size Message oriented, client server subscription Security: TLS password based sensors/COMPUTER_NAME/temperature/HA

RDDRIVE_NAME

OASIS standard TCP bearer Min 2 byte packet size Message oriented, client server subscription Security: TLS password based sensors/COMPUTER_NAME/temperature/HA

RDDRIVE_NAME

Page 8: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

MQTT-SN Even though MQTT is designed to be lightweight, it has

two drawbacks for very constrained devices. Every MQTT client must support TCP and will typically

hold a connection open to the broker at all times. Forsome environments where packet loss is high orcomputing resources are scarce, this is a problem.

MQTT topic names are often long strings which makethem impractical for 802.15.4.

Both of these shortcomings are addressed by the MQTT-SN protocol, which defines a UDP mapping of MQTT andadds broker support for indexing topic name

Even though MQTT is designed to be lightweight, it hastwo drawbacks for very constrained devices.

Every MQTT client must support TCP and will typicallyhold a connection open to the broker at all times. Forsome environments where packet loss is high orcomputing resources are scarce, this is a problem.

MQTT topic names are often long strings which makethem impractical for 802.15.4.

Both of these shortcomings are addressed by the MQTT-SN protocol, which defines a UDP mapping of MQTT andadds broker support for indexing topic name

Page 9: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

CoAP

IETF standard Based on HTTP UDP Bearer QoS – App level Content negotiation through accept header Secuirty – based on DTLS coap://example.se:5683/~sensors./temp1.xm

l

IETF standard Based on HTTP UDP Bearer QoS – App level Content negotiation through accept header Secuirty – based on DTLS coap://example.se:5683/~sensors./temp1.xm

l

Page 10: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

XMPP

XMPP foundation standard Originally created for IM XML based Heavy for mobile networks (gtalk

optimisations) http://wiki.xmpp.org/web/InternetOfThings

XMPP foundation standard Originally created for IM XML based Heavy for mobile networks (gtalk

optimisations) http://wiki.xmpp.org/web/InternetOfThings

Page 11: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

QoS MQTT QOS – all messages are published with

a Quality of Service value:– QOS=0: "At most once", where messages

are delivered according to the best effortsof the underlying TCP/IPnetwork. Message loss or duplication canoccur. This level could be used, forexample, with ambient sensor data whereit does not matter if an individual readingis lost as the next one will be publishedsoon after.

– QOS=1: "At least once", where messagesare assured to arrive but duplicates mayoccur.

– QOS=2: "Exactly once", where messageare assured to arrive exactly once. Thislevel could be used, for example, withbilling systems where duplicate or lostmessages could lead to incorrect chargesbeing applied.

CoAP Requests and response

messages may be markedas “confirmable” or“nonconfirmable”.Confirmable messagesmust be acknowledged bythe receiver with an ackpacket. Nonconfirmable messages

are “fire and forget”.

MQTT QOS – all messages are published with

a Quality of Service value:– QOS=0: "At most once", where messages

are delivered according to the best effortsof the underlying TCP/IPnetwork. Message loss or duplication canoccur. This level could be used, forexample, with ambient sensor data whereit does not matter if an individual readingis lost as the next one will be publishedsoon after.

– QOS=1: "At least once", where messagesare assured to arrive but duplicates mayoccur.

– QOS=2: "Exactly once", where messageare assured to arrive exactly once. Thislevel could be used, for example, withbilling systems where duplicate or lostmessages could lead to incorrect chargesbeing applied.

CoAP Requests and response

messages may be markedas “confirmable” or“nonconfirmable”.Confirmable messagesmust be acknowledged bythe receiver with an ackpacket. Nonconfirmable messages

are “fire and forget”.

Page 12: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Comparisson V2

http://www.iotprimer.com/2013/11/iot-protocol-wars-mqtt-vs-coap-vs-xmpp.html

Page 13: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Others

AMQP Xively Evrythng Allseen Home automation standards… Weightless ThingWorks, nPhase, Carriots, Raco SMS/ USSD

AMQP Xively Evrythng Allseen Home automation standards… Weightless ThingWorks, nPhase, Carriots, Raco SMS/ USSD

Page 14: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

WEBINOS

Page 15: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

IOT Challenges v2Heterogeneous networks

Web/JavaScript native

Legacy mode

Strong securityStrong security

Dynamic programming

Fine grained policy control

Distributed architecture/ shared ownership

Control of dataDep

loym

ent C

ost

Page 16: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Webinos core technologycomponentsSpecification PurposeTLS/DTLS Mutually authenticated TLS for secure bi-lateral commsPKI Distributed certificate schema for person/device identityOAauth Distributed authenticationWebIDL Definition of a functional interfaceWebIDL Definition of a functional interfaceFeature-URI Distributed mechanism for method, permission

descriptionJSON-RPC Web friendly mechanism for remote method invocationXACML OASIS defined standard for general access controlWidget Spec Interoperable application packagingWebinos-address Permanent web address for “entity”Webinos-discovery Discovery algorithm: local and remoteAPIs A suite of rich but extensible APIs

16

Page 17: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

THREE MODELS OF IOTINTEGRATION

Page 18: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Full Fat VersionFull NodeWorks for 2Mb+ devices. Fullynode implementation.Advantages Full policy on devices Device has own ID On device programmability Flexible Peer to peer

networking

CloudCloudFull NodeWorks for 2Mb+ devices. Fullynode implementation.Advantages Full policy on devices Device has own ID On device programmability Flexible Peer to peer

networking

18

PolicyPolicy

APIsAPIs

Cont

act

sCo

ntac

ts

PackagerPackager

AppsApps

File

File

NFC

NFC

Loca

tion

Loca

tion

Oth

er…

Oth

er…

PKI

Page 19: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Webinos Driver modelJavaScript DriverHighly flexible modelGood for legacy devicesVery easy to develop forUses ID and policy from hub

PolicyPolicy

APIsAPIs

SEN

SOR

PackagerPackager

AppsApps

ACTU

ATO

RAC

TUAT

OR

NFC

Loca

tion

Oth

er…

PKI

JavaScript DriverHighly flexible modelGood for legacy devicesVery easy to develop forUses ID and policy from hub

19

APIs

SEN

SOR

SEN

SOR

ACTU

ATO

RAC

TUAT

OR

NFC

NFC

Loca

tion

Loca

tion

Oth

er…

Oth

er…

REST Serial Bluetooth ANT Other

HTTPHTTP MQTTMQTT CoAPCoAP XMPPXMPP OtherOther

Page 20: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Webinos lite (work inprogress)

MicroPZPTarget 32kb-2mb device rangeRaw C++ implementation stackShared secret identityLightweight TLSSubset of policyBSON alternative to JSONTinyJS interpretationLightweight application signing

CloudCloud

MicroPZPTarget 32kb-2mb device rangeRaw C++ implementation stackShared secret identityLightweight TLSSubset of policyBSON alternative to JSONTinyJS interpretationLightweight application signing

20

PolicyPolicy

APIsAPIs

Cont

act

sCo

ntac

ts

PackagerPackager

AppsApps

File

File

NFC

NFC

Loca

tion

Loca

tion

Oth

er…

Oth

er…

PKI

Page 21: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

General Data Collector

Data CollectionSimple cloud entityCollects pushed data via webadaptorsPublishes realtime data via websocketStores historical dataGeneric Sensor adaptor writtenon PZH

CloudCloud Data CollectionSimple cloud entityCollects pushed data via webadaptorsPublishes realtime data via websocketStores historical dataGeneric Sensor adaptor writtenon PZH

PolicyPolicy

APIsAPIs

Cont

act

sCo

ntac

ts

PackagerPackager

AppsApps

File

File

NFC

NFC

Loca

tion

Loca

tion

Oth

er…

Oth

er…

PKI

TingoDBTingoDB

Page 22: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Open Source andCommunity

15 million euro investment

Page 23: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

WRAP UP

Page 24: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

ApplicationsEnergy Management Travel

Devices of ebay/amazon

Page 25: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Data Management andVisualisation

Convert you data andsensors into interoperableforms

Turn you data into usefulapplications (internal orpublic) quickly and easily

Manage the data andsecurity within oneframework

Easily work with differentdepartments, even differentauthorities

Any geographical data

Convert you data andsensors into interoperableforms

Turn you data into usefulapplications (internal orpublic) quickly and easily

Manage the data andsecurity within oneframework

Easily work with differentdepartments, even differentauthorities

Any geographical data

Page 26: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

CONCLUSIONS

Bearer technology does not matter as muchas you think! Application protocol you may not have

control of A generalised architecture for combining

heterogeneous sensors, will future proof yoursolution Security is key Stick to internet principles

Bearer technology does not matter as muchas you think! Application protocol you may not have

control of A generalised architecture for combining

heterogeneous sensors, will future proof yoursolution Security is key Stick to internet principles

Page 27: BIG PICTURE - SWIG | Sensors for Water Interest Group · XML based Heavy for mobile networks (gtalk optimisations) . QoS MQTT QOS – all messages are published with a Quality of

Nick [email protected]

+44 (0) 7714 145711

Nick [email protected]

+44 (0) 7714 145711