Pārskats par IoT tīkla un ziņojumapmaiņas protokoliem

Sveiki, Khabrovites! Krievijā pirmais tieÅ”saistes kurss IoT izstrādātājs oktobrÄ« sāks darboties OTUS. Å obrÄ«d ir atvērta pieteikÅ”anās kursiem, saistÄ«bā ar kuriem mēs turpinām dalÄ«ties ar jums noderÄ«giem materiāliem.

Pārskats par IoT tīkla un ziņojumapmaiņas protokoliem

Lietu internets (IoT, Internet of Things) tiks veidots uz esoŔās tīkla infrastruktūras, tehnoloģijām un protokoliem, ko paŔlaik izmanto mājās/birojās un internetā, un piedāvās daudz vairāk.

Šīs rokasgrāmatas mērķis ir sniegt īsu pārskatu par IoT tīklu un lietojumprogrammu protokoliem.

Piezīme. Jums ir jābūt zināŔanām tīkla tehnoloģiju pamati.

IoT tīkli

IoT darbosies esoŔajos TCP/IP tīklos.

TCP/IP izmanto četru slāņu modeli ar Ä«paÅ”iem protokoliem katrā slānÄ«. Cm. izpratne par TCP/IP 4 slāņa modeli (mēs saprotam TCP / IP četrslāņu modeli).

Tālāk esoŔajā diagrammā ir parādīts paŔlaik izmantoto protokolu un to protokolu salīdzinājums, kas, visticamāk, tiks izmantoti IoT.

Pārskats par IoT tīkla un ziņojumapmaiņas protokoliem

Diagrammas piezīmes:

  1. Fonta lielums norāda uz protokola popularitāti. Piemēram, kreisajā pusē IPv4 ir lielāks, jo tas ir daudz populārāks mūsdienu internetā. Tomēr labajā pusē tas ir mazāks, jo paredzams, ka IPv6 būs populārāks IoT.

  2. Ne visi protokoli tiek parādīti.

  3. Lielākā daļa izmaiņu ir kanālā (1. un 2. līmenis) un lietojumprogrammu līmenī (4. līmenis).

  4. Tīkla un transporta slāņi, visticamāk, paliks nemainīgi.

Saites slāņa protokoli

Datu saites lÄ«menÄ« (datu saite) ierÄ«ces ir jāsavieno viena ar otru. Tie var atrasties gan tuvu, piemēram, lokālajos tÄ«klos (lokālajos tÄ«klos), gan lielā attālumā viens no otra: pilsētās (lielpilsētu tÄ«kli) un globālajos tÄ«klos (plaŔās zonas tÄ«kli).

PaÅ”laik Å”ajā lÄ«menÄ« mājas un biroja tÄ«kli (LAN) izmanto Ethernet un Wi-Fi, bet mobilie tÄ«kli (WAN) izmanto 3G / 4G. Tomēr daudzām IoT ierÄ«cēm, piemēram, sensoriem, ir mazjaudas, un tās darbina tikai baterijas. Šādos gadÄ«jumos Ethernet nav piemērots, taču var izmantot mazjaudas Wi-Fi un mazjaudas Bluetooth.

Lai gan Å”o ierīču savienoÅ”anai turpinās izmantot esoŔās bezvadu tehnoloÄ£ijas (Wi-Fi, Bluetooth, 3G/4G), ir vērts aplÅ«kot arÄ« jaunas tehnoloÄ£ijas, kas Ä«paÅ”i izstrādātas IoT lietojumprogrammām, kuru popularitāte, visticamāk, pieaugs.

Starp tiem:

  • BLE ā€” Bluetooth zemas enerÄ£ijas patēriņŔ

  • LoRaWAN ā€” liela attāluma WAN

  • SigFox

  • LTE-M

Tie ir sīkāk aprakstīti rakstā. Pārskats par IOT bezvadu tehnoloģijām (pārskats par bezvadu IoT tehnoloģijām).

tīkla slānis

TÄ«kla slānÄ« (tÄ«kloÅ”ana) ilgtermiņā dominēs protokols IPv6. Maz ticams, ka IPv4 tiks izmantots, taču tam var bÅ«t nozÄ«me agrÄ«nā stadijā. Lielākā daļa mājas IoT ierīču, piemēram, viedās spuldzes, paÅ”laik izmanto IPv4.

transporta slānis 

Transporta slānī (Transport) internetā un tīmeklī dominē TCP. To izmanto gan HTTP, gan daudzos citos populāros interneta protokolos (SMTP, POP3, IMAP4 utt.).

MQTT, kas, manuprāt, kļūs par vienu no galvenajiem ziņojumapmaiņas lietojumprogrammu slāņa protokoliem, paÅ”laik izmanto TCP.

Tomēr nākotnē mazāku pieskaitāmo izmaksu dēļ es sagaidu, ka UDP kļūs populārāks IoT. DroÅ”i vien plaŔāk izplatÄ«ts MQTT-SN, darbojas, izmantojot UDP. SkatÄ«t salÄ«dzināŔanas rakstu TCP pret UDP .

Lietojumprogrammu slānis un ziņojumapmaiņas protokoli

Svarīgas IoT protokolu īpaŔības:

  • Ātrums - pārsÅ«tÄ«to datu apjoms sekundē.

  • Latentums ir laiks, kas nepiecieÅ”ams ziņojuma nosÅ«tÄ«Å”anai.

  • Jaudas patēriņŔ

  • DroŔība.

  • ProgrammatÅ«ras pieejamÄ«ba.

PaŔlaik Ŕajā līmenī aktīvi tiek izmantoti divi galvenie protokoli: HTTP un MQTT.

HTTP, iespējams, ir vispazÄ«stamākais Ŕī lÄ«meņa protokols, kas ir tÄ«mekļa (WWW) pamatā. Tas joprojām bÅ«s svarÄ«gs IoT, jo tas tiek izmantots REST API ā€” galvenajam mehānismam mijiedarbÄ«bai starp tÄ«mekļa lietojumprogrammām un pakalpojumiem. Tomēr lielo pieskaitāmo izmaksu dēļ HTTP, visticamāk, nekļūs par galveno IoT protokolu, lai gan tas joprojām tiks plaÅ”i izmantots internetā.

MQTT (Message Queuing Telemetry Transport) ir kļuvis par galveno IoT ziņojumapmaiņas protokolu, pateicoties tā vieglumam un lietoÅ”anas vienkārŔībai. SkatÄ«t rakstu Ievads MQTT iesācējiem (Ievads MQTT iesācējiem).

HTTP un MQTT salīdzinājums IoT

MQTT strauji kļūst par de facto standartu IoT lietojumprogrammām. Tas ir saistīts ar tā vieglumu un ātrumu, salīdzinot ar HTTP, un faktu, ka tas ir viens pret daudziem protokols, nevis viens pret vienu (HTTP).

Daudzas mūsdienu tīmekļa lietojumprogrammas labprāt izmantotu MQTT, nevis HTTP, ja tas būtu pieejams to izstrādes laikā.

Labs piemērs ir informācijas nosÅ«tÄ«Å”ana vairākiem klientiem, piemēram, par vilcienu/autobusu/lidmaŔīnu iebraukÅ”anu un izbraukÅ”anu. Å ajā scenārijā viens pret vienu protokolam, piemēram, HTTP, ir daudz pieskaitāmu izdevumu un tas rada lielu slodzi tÄ«mekļa serveriem. Å o tÄ«mekļa serveru mērogoÅ”ana var bÅ«t sarežģīta. Izmantojot MQTT, klienti savienojas ar brokeri, kuru var viegli pievienot slodzes lÄ«dzsvaroÅ”anai. Noskatieties video pamācÄ«bu par to Pārpublicēt HTML datus, izmantojot MQTT (lidojuma ielidoÅ”anas piemērs) un rakstu MQTT vs HTTP IOT.

Citi ziņojumapmaiņas protokoli

HTTP nebija paredzēts IoT lietojumprogrammām, taču, kā minēts, tas kādu laiku tiks plaÅ”i izmantots, jo tas tiks plaÅ”i izmantots API.

Gandrīz visas IoT platformas atbalsta gan HTTP, gan MQTT.

Tomēr ir arī citi protokoli, kurus ir vērts apsvērt.

Protokoli

  • MQTT - (Ziņojumu rindas telemetrijas transportÄ“Å”ana). Izmanto TCP/IP. PublicÄ“Å”anas-abonÄ“Å”anas modelim ir nepiecieÅ”ams ziņojumu starpnieks.

  • AMQP - (Advanced Message Queuing Protocol). Izmanto TCP/IP. Izdevēja-abonenta un punkta-punkta modeļi.

  • COAP - (Ierobežotās lietojumprogrammas protokols). Izmanto UDP. Paredzēts Ä«paÅ”i IoT, izmanto pieprasÄ«juma-atbildes modeli tāpat kā HTTP. RFC 7252.

  • DDS - (Datu izplatÄ«Å”anas pakalpojums) 

Šajā raksts apskatīti galvenie protokoli un to pielietojumi. Šī raksta secinājums ir tāds, ka IoT izmantos protokolu kopu atkarībā no to paredzētā lietojuma.

Tomēr retrospektÄ«vi, interneta pirmajos gados HTTP protokols, kas kļuva dominējoÅ”s, bija tikai viens no daudziem protokoliem.

Lai gan sākotnēji HTTP nebija paredzēts failu un e-pasta pārsÅ«tÄ«Å”anai, Å”odien tas tiek izmantots abiem.

Es ceru, ka tas pats notiks ar IoT ziņojumapmaiņas protokoliem: lielākā daļa pakalpojumu izmantos vienu dominējoÅ”o protokolu.

Zemāk ir Google Trends diagrammas, kas parāda, kā pēdējos gados ir mainījusies MQTT, COAP un AMQP popularitāte.

Google Trends pārskats 

Pārskats par IoT tīkla un ziņojumapmaiņas protokoliem

Protokola atbalsts no platformas

  • Microsoft Azure - MQTT, AMQP, HTTP un HTTPS

  • AWS - MQTT, HTTPS, MQTT, izmantojot tÄ«mekļa ligzdas

  • IBM Bluemix ā€” MQTT, HTTPS, MQTT

  • Thingworx ā€” MQTT, HTTPS, MQTT, AMQP

Kopsavilkums

Lielākā daļa izmaiņu ir kanālā (1. un 2. līmenis) un lietojumprogrammu līmenī (4. līmenis).

Tīkla un transporta slāņi, visticamāk, paliks nemainīgi.

Lietojumprogrammas slānī IoT komponenti izmantos ziņojumapmaiņas protokolus. Kamēr mēs joprojām esam IoT izstrādes sākuma stadijā, iespējams, ka viens vai varbūt divi ziņojumapmaiņas protokoli izcelsies.

Dažu pēdējo gadu laikā MQTT ir kļuvis par populārāko, un tieÅ”i uz to es tagad koncentrējos uz Å”o vietni.

ArÄ« HTTP tiks izmantots, jo tas jau ir labi iebÅ«vēts esoÅ”ajās IoT platformās.

Tas ir viss. Aicinām pieteikties bezmaksas demonstrācijas nodarbÄ«bai par Å”o tēmu "TērzÄ“Å”anas robots ātrai komandai ierÄ«cei".

Lasīt vairāk:

Avots: www.habr.com

Pievieno komentāru