Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban
-
Upload
gyoergy-balassy -
Category
Software
-
view
59 -
download
5
Transcript of Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban
![Page 1: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/1.jpg)
Tervezz IoT architektúrát,
avagy élet egy HTTP nélküli világban
Balássy György
Gyorgy.Ba [email protected]
![Page 2: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/2.jpg)
1
Alapprobléma
InternetThing Alkalmazás
Adat
Parancs
![Page 3: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/3.jpg)
2
Alapprobléma
InternetThing Thing
Adat
Parancs
![Page 4: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/4.jpg)
3
Adatgyűjtés
HTTPThing Webszerver
POST
GET
![Page 5: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/5.jpg)
4
HyperText Transfer Protocol
Szöveges1 költséges
Hardver igény
Kliens-szerver
Visszahívás nehézkes2
1: HTTP/2 bináris2: Websocket
Ismerjük
Egyszerű fejlesztés
Egyszerű hibakeresés
Egyszerű üzemeltetés
Mindenhol támogatott
![Page 6: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/6.jpg)
5
Más protokoll?
XMPP (Extensible Messaging and Presence Protocol, 1999.)
MQTT (Message Queue Telemetry Transport, 1999.)
AMQP (Advanced Message Queueing Protocol, 2012.)
Egyszerűbb
Kisebb hardver igény
Nyílt szabvány implementáció van minden platformra
Broker szolgáltatások:
- Perzisztencia
- Last will
- Quality of Service (QoS)
![Page 7: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/7.jpg)
6
Adatméret csökkentése: Protobuf
Protocol Buffers (Google, 2008.)
Interfész leíró nyelv
Akár RPC-re is
Bináris
Előre-visszafele kompatibilis
Nem önleíró
C++, Java, Python fordítók + közösség
![Page 8: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/8.jpg)
7
Protobuf séma minta: polyline.proto
message Point { required int32 x = 1; required int32 y = 2; optional string label = 3;
}
message Line { required Point start = 1; required Point end = 2; optional string label = 3;
}
message Polyline { repeated Point point = 1; optional string label = 2;
}
![Page 9: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/9.jpg)
8
Protobuf folyamat
.proto.cpp
.hprotoc
![Page 10: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/10.jpg)
9
Publish-subscribe
Publisher Broker Subscriber
Subscriber
![Page 11: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/11.jpg)
10
Szabály alapú cselekvés
PublisherSubscriber
(Rule 1)Broker
Subscriber(Rule 2)
SMS
![Page 12: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/12.jpg)
11
Visszacsatolás
PublisherSubscriber
(Rule 1)Broker
Subscriber(Rule 2)
SMS
![Page 13: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/13.jpg)
12
Mire van szükségünk?
Cloud
(MQTT broker)
Device
(MQTT client)
App
(MQTT client)
Device
(MQTT client)
App
(MQTT client)
![Page 14: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/14.jpg)
13
Demo
Node.js app
(mosca)
Node.js app
(mqtt.js)
Node.js app
(mqtt.js)
![Page 15: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/15.jpg)
14
![Page 16: Tervezz IoT architektúrát, avagy élet egy HTTP nélküli világban](https://reader034.fdocuments.net/reader034/viewer/2022042716/55ac460c1a28ab9b538b4601/html5/thumbnails/16.jpg)
15
http://speakerscore.com/iot2
Köszönöm a figyelmet!
https://github.com/balassy/mqtt-demo