Superrigardo de Retaj kaj Mesaĝaj Protokoloj por IoT

Saluton, Ĥabrovitoj! La unua interreta kursa IoT-programisto de Rusio lanĉas en OTUS en oktobro. Aliĝo por la kurso estas malfermita nun, rilate al kiu ni daŭre kundividas utilajn materialojn kun vi.

Superrigardo de Retaj kaj Mesaĝaj Protokoloj por IoT

La Interreto de Aĵoj (IoT, Interreto de Aĵoj) estos konstruita aldone al la ekzistantaj retaj infrastrukturoj, teknologioj kaj protokoloj nuntempe uzataj en hejmoj/oficoj kaj interreto, kaj proponos multe pli.

La celo de ĉi tiu gvidilo estas provizi mallongan superrigardon de retaj kaj aplikaj protokoloj por IoT.

Notu. Vi devas havi scion bazoj de retaj teknologioj.

IoT-retoj

IoT funkcios sur ekzistantaj TCP/IP-retoj.

TCP/IP uzas kvartavolan modelon kun specifaj protokoloj ĉe ĉiu tavolo. Cm. komprenante la TCP/IP 4-tavolmodelon (Ni komprenas la kvartavolan modelon de TCP / IP).

La diagramo sube montras komparon de la protokoloj nuntempe uzataj kaj tiuj plej verŝajne uzataj por IoT.

Superrigardo de Retaj kaj Mesaĝaj Protokoloj por IoT

Tablaj notoj:

  1. La tiparo indikas la popularecon de la protokolo. Ekzemple, maldekstre, IPv4 estas pli granda, ĉar ĝi estas multe pli populara en la moderna Interreto. Tamen, ĝi estas pli malgranda dekstre ĉar IPv6 estas atendita esti pli populara en IoT.

  2. Ne ĉiuj protokoloj estas montritaj.

  3. Plejparto de ĉiuj ŝanĝoj estas ĉe la kanalo (niveloj 1 kaj 2) kaj aplikaĵniveloj (nivelo 4).

  4. La reto kaj transportaj tavoloj verŝajne restos senŝanĝaj.

Protokoloj de ligaj tavoloj

Je la nivelo de datumligilo (Data Link), vi devas konekti aparatojn unu al la alia. Ili povas esti kaj proksimaj, ekzemple, en lokaj retoj (lokaj retoj) kaj je granda distanco unu de la alia: en urbaj (metropolaj retoj) kaj tutmondaj (larĝaj retoj).

Nuntempe, je ĉi tiu nivelo, hejmaj kaj oficejaj retoj (LAN) uzas Eterreton kaj Wi-Fi, kaj moveblaj retoj (WAN) uzas 3G / 4G. Tamen, multaj IoT-aparatoj estas malalta potenco, kiel sensiloj, kaj estas nur funkciigitaj per baterioj. En ĉi tiuj kazoj, Eterreto ne taŭgas, sed malalte elektra Wi-Fi kaj malaltfunkcia Bludento povas esti uzataj.

Dum ekzistantaj sendrataj teknologioj (Wi-Fi, Bluetooth, 3G/4G) daŭre estos uzataj por konekti ĉi tiujn aparatojn, ankaŭ indas rigardi novajn teknologiojn specife destinitajn por IoT-aplikoj, kiuj verŝajne kreskos en populareco.

Inter ili estas:

  • BLE - Bluetooth Malalta Energio

  • LoRaWAN - Long Range WAN

  • SigFox

  • LTE-M

Ili estas priskribitaj pli detale en la artikolo. Superrigardo de IOT sendrataj teknologioj (superrigardo de sendrataj IoT-teknologioj).

reto tavolo

Ĉe la retotavolo (Reto), la protokolo regos longtempe IPv6. Estas neverŝajne, ke IPv4 estos uzata, sed ĝi povas ludi rolon en la fruaj stadioj. Plej multaj hejmaj IoT-aparatoj, kiel inteligentaj ampoloj, nuntempe uzas IPv4.

transporta tavolo 

Ĉe la transporta tavolo (Transporto), la Interreto kaj la reto estas dominataj de TCP. Ĝi estas uzata en ambaŭ HTTP kaj multaj aliaj popularaj Interretaj protokoloj (SMTP, POP3, IMAP4, ktp.).

MQTT, kiun mi atendas iĝi unu el la ĉefaj aplikaĵtavolaj protokoloj por mesaĝado, nuntempe uzas TCP.

Tamen, en la estonteco, pro pli malalta superkosto, mi atendas ke UDP fariĝos pli populara por IoT. Verŝajne pli disvastigita MQTT-SN, trairante UDP. Vidu komparan artikolon TCP kontraŭ UDP .

Aplika tavolo kaj mesaĝaj protokoloj

Gravaj karakterizaĵoj por IoT-protokoloj:

  • Rapido - la kvanto de datumoj transdonitaj sekundo.

  • Latenteco estas la tempo necesa por sendi mesaĝon.

  • Energikonsumo.

  • Sekureco.

  • Havebleco de programaro.

Nuntempe, du ĉefaj protokoloj estas aktive uzataj ĉe ĉi tiu nivelo: HTTP kaj MQTT.

HTTP estas verŝajne la plej konata protokolo de ĉi tiu nivelo sub la reto (WWW). Ĝi daŭre estos grava por IoT, ĉar ĝi estas uzata por la REST API - la ĉefa mekanismo por interago inter retaj aplikoj kaj servoj. Tamen, pro alta ŝarĝo, HTTP verŝajne ne fariĝos la ĉefa IoT-protokolo, kvankam ĝi ankoraŭ estos vaste uzata en Interreto.

MQTT (Message Queuing Telemetry Transport) fariĝis la ĉefa mesaĝa protokolo en la IoT pro ĝia malpezeco kaj facileco de uzo. Vidu artikolon Enkonduko al MQTT por komencantoj (Enkonduko al MQTT por komencantoj).

Komparo de HTTP kaj MQTT por IoT

MQTT rapide fariĝas la fakta normo por IoT-aplikoj. Ĉi tio estas pro ĝia malpezeco kaj rapideco kompare kun HTTP kaj la fakto ke ĝi estas unu-al-multaj protokolo prefere ol unu-al-unu (HTTP).

Multaj modernaj TTT-aplikoj feliĉe uzus MQTT anstataŭ HTTP, se ĝi estus disponebla en la momento de sia evoluo.

Bona ekzemplo estas sendi informojn al pluraj klientoj, kiel alvenoj kaj foriroj de trajnoj/busoj/aviadiloj. En ĉi tiu scenaro, unu-al-unu protokolo kiel HTTP havas multe da ŝarĝo kaj metas multe da ŝarĝo sur la retserviloj. Skali ĉi tiujn retservilojn povas esti malfacila. Kun MQTT, klientoj konektas al makleristo, kiu povas esti facile aldonita por ŝarĝoekvilibro. Spektu la videolerniilon pri ĝi Republikigu HTML-Datumojn Super MQTT (Ekzemplo de Flugaj Alvenoj) kaj artikolo MQTT kontraŭ HTTP por IOT.

Aliaj mesaĝaj protokoloj

HTTP ne estis desegnita por IoT-aplikoj, sed kiel menciite, ĝi estos vaste uzata dum iom da tempo pro sia disvastigita uzo en API.

Preskaŭ ĉiuj IoT-platformoj subtenas ambaŭ HTTP kaj MQTT.

Tamen, ekzistas aliaj protokoloj, kiuj valoras konsideri.

Protokoloj

  • MQTT - (Message Queuing Telemetry Transport). Uzas TCP/IP. La publikig-aboni modelo postulas mesaĝmakleriston.

  • AMQP - (Altnivela Message Queuing Protocol). Uzas TCP/IP. Eldonisto-Abonanto kaj Punkto-al-Punkto-Modeloj.

  • Coap - (Limigita Aplika Protokolo). Uzas UDP. Dezajnita specife por IoT, uzas la peto-respondan modelon kiel en HTTP. RFC 7252.

  • DDS - (Servo de Distribuado de Datumoj) 

En tio ĉi artikolo la ĉefaj protokoloj kaj iliaj aplikoj estas konsiderataj. La konkludo de ĉi tiu artikolo estas, ke la IoT uzos aron da protokoloj, depende de ilia celita uzo.

Tamen, retrospektive, en la fruaj jaroj de la Interreto, la HTTP-protokolo kiu fariĝus domina estis nur unu el multaj protokoloj.

Kvankam HTTP ne estis origine konceptita por dosiero kaj retpoŝta translokigo, hodiaŭ ĝi estas uzata por ambaŭ.

Mi atendas ke la samo okazos kun mesaĝaj protokoloj en IoT: plej multaj servoj uzos unu superregan protokolon.

Malsupre estas Google Trends-diagramoj montrantaj kiel la populareco de MQTT, COAP kaj AMQP ŝanĝiĝis dum la lastaj jaroj.

Superrigardo de Google Trends 

Superrigardo de Retaj kaj Mesaĝaj Protokoloj por IoT

Subteno de protokolo laŭ platformo

  • Microsoft Azure - MQTT, AMQP, HTTP kaj HTTPS

  • AWS - MQTT, HTTPS, MQTT per retaj koneksoj

  • IBM Bluemix - MQTT,HTTPS,MQTT

  • Thingworx — MQTT, HTTPS, MQTT, AMQP

Resumo

Plejparto de ĉiuj ŝanĝoj estas ĉe la kanalo (niveloj 1 kaj 2) kaj aplikaĵniveloj (nivelo 4).

La reto kaj transportaj tavoloj verŝajne restos senŝanĝaj.

Ĉe la aplika tavolo, IoT-komponentoj uzos mesaĝajn protokolojn. Dum ni ankoraŭ estas en frua etapo en la disvolviĝo de IoT, verŝajne unu aŭ eble du mesaĝaj protokoloj elstaras.

Dum la lastaj jaroj, MQTT fariĝis la plej populara, kaj ĝuste pri ĝi mi nun koncentriĝas pri ĉi tiu retejo.

HTTP ankaŭ daŭre estos uzata ĉar ĝi jam estas bone konstruita en ekzistantajn IoT-platformojn.

Tio estas ĉio. Ni invitas vin aliĝi al senpaga demo-leciono pri la temo "Babilejo por rapidaj komandoj al la aparato".

Legu pli:

fonto: www.habr.com

Aldoni komenton