Ülevaade asjade Interneti võrgu- ja sõnumsideprotokollidest

Tere, Khabrovites! Venemaa esimene veebikursuse IoT arendaja käivitatakse OTUS-is oktoobris. Hetkel on avatud registreerumine kursusele, millega seoses jätkame teiega kasulike materjalide jagamist.

Ülevaade asjade Interneti võrgu- ja sõnumsideprotokollidest

Asjade internet (IoT, Internet of Things) ehitatakse üles olemasolevale võrguinfrastruktuurile, tehnoloogiatele ja protokollidele, mida praegu kasutatakse kodudes/kontorites ja Internetis, ning pakub palju enamat.

Selle juhendi eesmärk on anda lühike ülevaade asjade Interneti võrgu- ja rakendusprotokollidest.

Märge. Sul peavad olema teadmised võrgutehnoloogiate põhitõed.

IoT võrgud

IoT töötab olemasolevates TCP/IP-võrkudes.

TCP/IP kasutab neljakihilist mudelit, mille igal kihil on spetsiifilised protokollid. cm. TCP/IP 4 kihi mudeli mõistmine (me mõistame TCP / IP neljakihilist mudelit).

Allolev diagramm näitab praegu kasutatavate protokollide ja asjade Interneti jaoks kõige tõenäolisemalt kasutatavate protokollide võrdlust.

Ülevaade asjade Interneti võrgu- ja sõnumsideprotokollidest

Diagrammi märkmed:

  1. Kirja suurus näitab protokolli populaarsust. Näiteks vasakul on IPv4 suurem, kuna see on kaasaegses Internetis palju populaarsem. Paremal on see siiski väiksem, kuna IPv6 on eeldatavasti asjade Internetis populaarsem.

  2. Kõiki protokolle ei kuvata.

  3. Enamik muudatusi on kanalis (1. ja 2. tase) ja rakendustasandil (4. tase).

  4. Võrgu- ja transpordikihid jäävad tõenäoliselt muutumatuks.

Linkikihi protokollid

Andmelingi tasemel (Data Link) peate seadmed omavahel ühendama. Need võivad olla nii lähedal, näiteks kohalikes võrkudes (kohalikud võrgud) kui ka üksteisest suurel kaugusel: linnades (suurlinnavõrgud) ja globaalsetes võrkudes (laivõrgud).

Praegu kasutavad sellel tasemel kodu- ja kontorivõrgud (LAN) Etherneti ja Wi-Fi ning mobiilsidevõrgud (WAN) 3G / 4G. Paljud IoT-seadmed on aga väikese võimsusega, näiteks andurid, ja neid toidavad ainult patareid. Sellistel juhtudel Ethernet ei sobi, kuid kasutada saab madala võimsusega Wi-Fi-d ja madala võimsusega Bluetoothi.

Kuigi nende seadmete ühendamiseks kasutatakse jätkuvalt olemasolevaid traadita tehnoloogiaid (Wi-Fi, Bluetooth, 3G/4G), tasub vaadata ka uusi tehnoloogiaid, mis on spetsiaalselt loodud asjade Interneti-rakenduste jaoks, mille populaarsus tõenäoliselt kasvab.

Nende hulgas:

  • BLE – Bluetooth madala energiatarbega

  • LoRaWAN – pikamaa WAN

  • SigFox

  • LTE-M

Neid kirjeldatakse artiklis üksikasjalikumalt. Ülevaade IOT traadita tehnoloogiatest (ülevaade traadita asjade interneti tehnoloogiatest).

võrgukiht

Võrgukihis (Networking) domineerib pikemas perspektiivis protokoll IPv6. On ebatõenäoline, et IPv4 hakatakse kasutama, kuid see võib varajases staadiumis rolli mängida. Enamik koduseid IoT-seadmeid, nagu nutikad lambipirnid, kasutavad praegu IPv4.

transpordikiht 

Transpordikihis (Transport) domineerib Internetis ja veebis TCP. Seda kasutatakse nii HTTP-s kui ka paljudes teistes populaarsetes Interneti-protokollides (SMTP, POP3, IMAP4 jne).

MQTT, millest loodan saada üheks peamiseks rakenduskihi protokolliks sõnumside jaoks, kasutab praegu TCP-d.

Tulevikus aga eeldan, et UDP muutub IoT jaoks madalamate üldkulude tõttu populaarsemaks. Ilmselt laiemalt levinud MQTT-SN, töötab üle UDP. Vaata võrdlusartiklit TCP vs UDP .

Rakenduskiht ja sõnumsideprotokollid

IoT-protokollide olulised omadused:

  • Kiirus - sekundis edastatud andmete hulk.

  • Latentsus on aeg, mis kulub sõnumi saatmiseks.

  • Energiatarve

  • Turvalisus.

  • Tarkvara kättesaadavus.

Praegu kasutatakse sellel tasemel aktiivselt kahte peamist protokolli: HTTP ja MQTT.

HTTP on tõenäoliselt selle taseme kõige tuntum veebi (WWW) aluseks olev protokoll. See on asjade Interneti jaoks jätkuvalt oluline, kuna seda kasutatakse REST API jaoks – veebirakenduste ja teenuste vahelise suhtluse peamise mehhanismi jaoks. Tõenäoliselt ei saa HTTP suurte üldkulude tõttu siiski peamiseks asjade Interneti-protokolliks, kuigi seda kasutatakse endiselt Internetis laialdaselt.

MQTT (Message Queuing Telemetry Transport) on oma kerguse ja kasutuslihtsuse tõttu muutunud IoT peamiseks sõnumsideprotokolliks. Vaata artiklit MQTT tutvustus algajatele (MQTT sissejuhatus algajatele).

HTTP ja MQTT võrdlus asjade Interneti jaoks

MQTT on kiiresti muutumas asjade Interneti-rakenduste de facto standardiks. Selle põhjuseks on selle kergus ja kiirus võrreldes HTTP-ga ning asjaolu, et see on pigem üks-mitmele protokoll kui üks-ühele (HTTP).

Paljud kaasaegsed veebirakendused kasutaksid HTTP asemel hea meelega MQTT-d, kui see oleks nende arendamise ajal saadaval.

Hea näide on teabe saatmine mitmele kliendile, näiteks rongide/busside/lennukite saabumise ja väljumise kohta. Selle stsenaariumi korral on üks-ühele protokollil, nagu HTTP, palju üldkulusid ja see koormab veebiservereid palju. Nende veebiserverite skaleerimine võib olla keeruline. MQTT abil loovad kliendid ühenduse maakleriga, mida saab hõlpsasti koormuse tasakaalustamiseks lisada. Vaadake selle kohta videoõpetust HTML-andmete uuesti avaldamine MQTT kaudu (lennu saabumise näide) ja artikkel MQTT vs HTTP IOT jaoks.

Muud sõnumiprotokollid

HTTP ei olnud mõeldud asjade Interneti-rakenduste jaoks, kuid nagu mainitud, kasutatakse seda laialdase kasutuse tõttu mõnda aega laialdaselt. API.

Peaaegu kõik IoT platvormid toetavad nii HTTP-d kui ka MQTT-d.

Siiski on ka teisi protokolle, mida tasub kaaluda.

Protokollid

  • MQTT - (Teadete järjekorra telemeetriatransport). Kasutab TCP/IP-d. Avaldamise-tellimise mudeli jaoks on vaja sõnumite vahendajat.

  • AMQP - (Advanced Message Queuing Protocol). Kasutab TCP/IP-d. Väljaandja-tellija ja punkt-punkti mudelid.

  • COAP - (Piiratud rakenduse protokoll). Kasutab UDP-d. Spetsiaalselt IoT jaoks loodud, kasutab päringu-vastuse mudelit nagu HTTP-s. RFC 7252.

  • DDS - (Andmete levitamise teenus) 

Selles siit vaadeldakse peamisi protokolle ja nende rakendusi. Selle artikli järeldus on, et asjade internet kasutab protokollide komplekti, olenevalt nende kavandatud kasutusest.

Tagantjärele mõeldes oli aga Interneti algusaastatel domineerivaks muutuv HTTP-protokoll vaid üks paljudest protokollidest.

Kuigi HTTP-d ei loodud algselt failide ja meilide edastamiseks, kasutatakse seda tänapäeval mõlema jaoks.

Ma eeldan, et sama juhtub asjade Interneti sõnumsideprotokollidega: enamik teenuseid kasutab ühte valdavat protokolli.

Allpool on Google Trendsi graafikud, mis näitavad, kuidas MQTT, COAP ja AMQP populaarsus on viimastel aastatel muutunud.

Google Trendsi ülevaade 

Ülevaade asjade Interneti võrgu- ja sõnumsideprotokollidest

Protokolli tugi platvormi järgi

  • Microsoft Azure - MQTT, AMQP, HTTP ja HTTPS

  • AWS - MQTT, HTTPS, MQTT veebipistikupesade kaudu

  • IBM Bluemix – MQTT, HTTPS, MQTT

  • Thingworx - MQTT, HTTPS, MQTT, AMQP

Kokkuvõte

Enamik muudatusi on kanalis (1. ja 2. tase) ja rakendustasandil (4. tase).

Võrgu- ja transpordikihid jäävad tõenäoliselt muutumatuks.

Rakenduskihis kasutavad IoT komponendid sõnumsideprotokolle. Kuigi oleme asjade Interneti arendamises alles varajases staadiumis, on tõenäoline, et üks või võib-olla kaks sõnumsideprotokolli paistab silma.

Viimastel aastatel on MQTT muutunud kõige populaarsemaks ja just sellele keskendungi nüüd sellele saidile.

Samuti jätkatakse HTTP kasutamist, kuna see on juba olemasolevatesse asjade Interneti platvormidesse hästi sisse ehitatud.

See on kõik. Kutsume teid registreeruma selleteemalisele tasuta demotunnile "Vestlusbot seadmele kiirete käskude jaoks".

Loe rohkem:

Allikas: www.habr.com

Lisa kommentaar