IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

Tehnoloogia areng tarkvaras ja riistvaras, uute sideprotokollide ilmumine on toonud kaasa asjade interneti (IoT) laienemise. Seadmete arv kasvab pĂ€ev-pĂ€evalt ja need genereerivad tohutul hulgal andmeid. SeetĂ”ttu on vajalik mugav sĂŒsteemi arhitektuur, mis suudaks neid andmeid töödelda, salvestada ja edastada.

Praegu kasutatakse nendeks eesmĂ€rkideks pilveteenuseid. Kuid ĂŒha populaarsemaks muutuv udusComputing paradigmain on vĂ”imeline tĂ€iendama pilvelahendusi, skaleerides ja optimeerides IoT infrastruktuuri.

„Pilved“ suudavad katta enamik IoT nĂ”udmisi. NĂ€iteks tagada teenuste jĂ€lgimise, kiire andmete töötlemise, mida seadmed genereerivad, ning nende visualiseerimise. UdusComputing on aga tĂ”husam reaalaja ĂŒlesannete lahendamisel. Need tagavad kiire reageerimise pĂ€ringutele ja minimaalse viivituse andmete töötlemisel. See tĂ€hendab, et Fog tĂ€iendab „pilvi“, laiendab nende vĂ”imalusi.

Kuid peamine kĂŒsimus on hoopis: kuidas peaks kĂ”ik see toimima asjade interneti kontekstis? Millised sideprotokollid oleksid kĂ”ige tĂ”husamad IoT-Fog-Pilv ĂŒhendatud sĂŒsteemi tööks?

Vaatamata nĂ€iliselt domineerivale HTTP-le kasutatakse IoT, Fog ja Cloud sĂŒsteemides suurt hulka muid lahendusi. See on seletatav sellega, et IoT peab ĂŒhendama mitmesuguste seadmete sensorite funktsionaalsused turvalisuse, ĂŒhilduvuse ja teiste kasutajate nĂ”udmistega.

Kuid ĂŒhine arusaam eetalonsest arhitektuurist ja side standardist on lihtsalt puudulik. SeetĂ”ttu on uue protokolli loomine vĂ”i olemasoleva kohandamine konkreetsete IoT ĂŒlesannete jaoks ĂŒks IT-kogukonna kĂ”ige olulisemaid ĂŒlesandeid.

Milliseid protokolle kasutatakse praegu ja mida nad pakuvad? Uurime seda lĂ€hemalt. Ent enne arutame ökosĂŒsteemi pĂ”himĂ”tteid, kus suhtlevad pilved, udud ja asjade internet.

IoT Fog-to-Cloud (F2C) arhitektuur

Olete ilmselt mÀrganud, kui palju vaeva nÀidatakse IoT, pilvede ja udude mÔistmise ning nende ratsionaalse ja koordineeritud haldamise eelistest ja kasudest. Kui ei, siis siin on teile kolm standardimisalgatust: OpenFog Consortium, Edge Computing Consortium ja mF2C H2020 EU projekt.

Kui varem oldi keskendunud ainult kahele tasandile, pilvedele ja lÔpp-seadmetele, siis pakutud arhitektuur toob sisse uue taseme - uduarvutused. Sellega vÔib udutasandi jagada mitmeks alatasemeks, sÔltuvalt ressurssidest vÔi poliitikate kogumist, mis mÀÀratlevad erinevate seadmete kasutamise nende alatasemete raames.

Kuidas vĂ”iks see abstraktsioon vĂ€lja nĂ€ha? Siin on tĂŒĂŒpiline IoT-Udu-Pilv ökosĂŒsteem. IoT-seadmed saadavad andmeid vĂ”imsamatele serveritele ja arvutusseadmetele, et lahendada ĂŒlesandeid, mis nĂ”uavad madalat viivitust. Samas vastutavad pilved ĂŒlesannete lahendamise eest, mis nĂ”uavad suurt arvutusvĂ”imet vĂ”i andmete salvestamiseks ruumi.

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

Nutitelefonid, nutikellad ja muud vidinad vĂ”ivad samuti olla osa IoT-st. Kuid sellised seadmed kasutavad tavaliselt suurte arendajate patendi protokolle. IoT kaudu genereeritud andmed edastatakse udutaseile REST HTTP protokolli kaudu, mis tagab paindlikkuse ja funktsionaalse ĂŒhilduvuse RESTful-teenuste loomisel. See on oluline, arvestades olemasoleva arvutusinfrastruktuuri tagurpidi ĂŒhilduvust, mis töötab kohalikes arvutites, serverites vĂ”i serverite klastrites. Kohalikud ressursid, mida kutsutakse „udusĂ”lmedeks“, filtreerivad saadud andmeid ja töötlevad neid kohapeal vĂ”i edastavad edasiseks arvutamiseks pilve.

Pilved toetavad erinevaid sideprotokolle, sealhulgas AMQP ja REST HTTP. Kuna HTTP on laialdaselt tuntud ja kohandatud interneti jaoks, vĂ”ib tekkida kĂŒsimus: „kas ei peaks seda kasutama IoT ja udude jaoks?“. Kuid selle protokolli jĂ”udluses on probleeme. RÀÀgime sellest hiljem.

Üldiselt on olemas 2 sideprotokolli mudelit, mis sobivad meie sĂŒsteemi. Need on pĂ€ring-vastus ja avaldamine-tellimine. Esimene mudel on laiemalt tuntud, eriti server-klient arhitektuuris. Klient kĂŒsib serverilt teavet, misjĂ€rel server saab pĂ€ringu, töötleb seda ja saadab vastusena sĂ”numi. Selle mudeli jĂ€rgi töötavad protokollid REST HTTP ja CoAP.

Teine mudel tekkis vajadusest tagada asĂŒnkroonne, jaotatud, nĂ”rk side andmete genereerijate ja nende saajate vahel.

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

Mudelis osaleb kolm osalist: vĂ€ljaandja (andmeallikas), vahendaja (dispetĆĄer) ja tellija (saaja). Siin ei pea klient, kes tegutseb tellijana, serverilt teavet kĂŒsima. Kliendi asemel tellib ta sĂŒsteemis teatud sĂŒndmused vahendaja kaudu, kes vastutab kĂ”igi sissetulevate sĂ”numite filtreerimise ja nende suunamise vahel vĂ€ljaandjate ja tellijate vahel. VĂ€ljaandja avaldab vahendajale, kui teatav teema tĂ”ttu toimub sĂŒndmus, ja vahendaja edastab tellijale andmed nĂ”utud teema kohta.

Sisuliselt pĂ”hineb see arhitektuur sĂŒndmustel. Selline suhtlemismudel on huvitav rakenduste jaoks IoT-s, pilves, udus, kuna see suudab tagada skaleeritavuse ja lihtsustada erinevate seadmete vahelisi ĂŒhendusi, toetades dĂŒnaamilist "palju-palju" suhet ja asĂŒnkroonset suhtlust. Tuntud standardiseeritud sĂ”numivahetusprotokollide seas, mis kasutavad "vĂ€ljaandmise-tellimise" mudelit, on nimetada MQTT, AMQP ja DDS.

On selge, et "vÀljaandmise-tellimise" mudelil on mitmeid eeliseid:

  • VĂ€ljaandjad ja tellijad ei pea teadma ĂŒksteise olemasolust;
  • Üks tellija vĂ”ib saada teavet paljusid erinevaid vĂ€ljaandeid, samas kui ĂŒks vĂ€ljaandja vĂ”ib edastada andmeid paljudele erinevatele tellijatele (printsiip "palju-palju");
  • VĂ€ljaandja ja tellija ei pea olema samaaegselt aktiivsed, et andmeid vahetada, kuna vahendaja (töötades jĂ€rjekorrasĂŒsteemina) suudab sĂ€ilitada sĂ”numi klientide jaoks, kes ei ole hetkel vĂ”rku ĂŒhendatud.

Kuid ka "kĂŒsi-vasta" mudelil on oma tugevad kĂŒljed. Kui serveri poolel pole mitu klienti kĂ€sitlevates pĂ€ringutes probleeme, on mĂ”istlik kasutada juba tĂ”estatud usaldusvÀÀrseid lahendusi.

Samuti on protokolle, mis toetavad mĂ”lemat mudelit. NĂ€iteks XMPP ja HTTP 2.0, mis toetavad „server push“ valikut. IETF on vĂ€lja andnud ka CoAP. KĂ€esoleva probleemi lahendamiseks on loodud mitmeid teisi lahendusi, nagu WebSocketi protokoll vĂ”i HTTP protokolli kasutamine lĂ€bi QUIC (Quick UDP Internet Connections).

WebSocketite osas, kuigi seda kasutatakse andmete edastamiseks reaalajas serverilt veebikliendile ning see tagab pidevad ĂŒhendused samaaegse kahepoolsest suhtlusest, ei ole see mĂ”eldud piiratud arvutusvĂ”imekusega seadmetele. QUIC vÀÀrib samuti tĂ€helepanu, kuna uus transpordiprotokoll avab palju uusi vĂ”imalusi. Kuid kuna QUIC ei ole veel standardiseeritud, on liiga vara prognoosida selle vĂ”imaliku rakenduse ja mĂ”ju IoT lahendustele. Seega jĂ€tame WebSocketid ja QUIC tulevikku silmas pidades meelde, kuid hetkel ei hakka me neid sĂŒgavamalt uurima.

Kes on maailmas kÔige armsam: vÔrreldes protokolle

RÀÀgime nĂŒĂŒd protokollide tugevustest ja nĂ”rkustest. Enne teema sĂŒvenemist tasub kohe mĂ€rkida, et puudub ĂŒks selge juht. Iga protokolli omadustes ja puudustes on midagi.

Reageerimise aeg

Üks olulisemaid sideprotokollide omadusi, eriti Interneti-asjade kontekstis, on reageerimisaeg. Kuid olemasolevate protokollide seas ei ole ĂŒhtegi absoluutset vĂ”itjat, kes nĂ€itaks minimaalset viivitust erinevates tingimustes. Siiski on olemas hulk uuringuid ja vĂ”rdlusi protokollide vĂ”imekusest.

NĂ€iteks, tulemused HTTP ja MQTT efektiivsuse vĂ”rreldes IoT-s nĂ€itas, et MQTT-d pĂ€ringu reageerimisaeg on lĂŒhem kui HTTP-l. Ja uuringu saatmisaeg (RTT) kohta paljastas, et CoAP keskmine RTT on 20% madalam kui MQTT-l.

Teine katse RTT protokollide MQTT ja CoAP osas viidi lĂ€bi kahes stsenaariumis: kohalikus vĂ”rgus ja IoT-vĂ”rgus. Selgus, et keskmine RTT IoT-vĂ”rgus on 2-3 korda kĂ”rgem. MQTT QoS0 nĂ€itas vĂ”rreldes CoAPiga madalamat tulemust, samas kui MQTT QoS1 demonstreeris kĂ”rgemat RTT-d ACK tĂ”ttu rakendus- ja transporditasemel. Erinevate QoS tasemete latentsus mitteĂŒlekasutatud vĂ”rgus oli MQTT puhul millisekundites, CoAP puhul siiski sadades mikrosekundites. Siiski tasub meeles pidada, et vĂ€hem usaldusvÀÀrsetes vĂ”rkudes nĂ€itab MQTT, mis töötab TCP kohal, tĂ€iesti erinevat tulemust.

VĂ”rdlus AMQP ja MQTT protokollide viivitusaega suurendava koormuse suurenemise analĂŒĂŒs nĂ€itas, et vĂ€ikeste koormuste korral on viivituse tase peaaegu sama. Kuid suurte andmehulkade edastamise korral demonstreerib MQTT madalamat viivitusaega. Veel ĂŒhe uurimine CoAPi vĂ”rreldi HTTPga masinatevahelise suhtluse stsenaariumis, kus seadmed olid paigaldatud transpordivahenditele ning varustatud gaasidetektorite, ilmadeetektorite, asukoha (GPS) ja mobiilivĂ”rgu (GPRS) liidesega. Aeg, mis oli vajalik CoAP sĂ”numi edastamiseks mobiilse vĂ”rgu kaudu, oli peaaegu kolm korda lĂŒhem kui HTTP sĂ”numite kasutamiseks vajalik aeg.

Viidi lĂ€bi uuringud, kus vĂ”rreldi mitte kahte, vaid kolme protokolli. NĂ€iteks vĂ”rdlus IoT protokollide MQTT, DDS ja CoAP tootlikkust meditsiinilises rakenduses vĂ”rguemulaatori abil. DDS ĂŒletas MQTT telemeetriaviivituse osas erinevates kehvades vĂ”rgutingimustes. UDP-pĂ”hine CoAP toimestas hĂ€sti rakendustes, mis vajavad kiiret vastust, kuid kuna see pĂ”hineb UDP-l, toimus mĂ€rkimisvÀÀrne ennustamatu paketikaotus.

LÀbivusvÔime

VĂ”rdlus MQTT ja CoAP efektiivsuse analĂŒĂŒs kanalite kasutamise osas toimus andmete koguhulga arvu loendamise kaudu, mida edastati ĂŒhe sĂ”numiga. CoAP nĂ€itas vĂ€iksemat lĂ€bilaskevĂ”imet kui MQTT vĂ€ikeste sĂ”numite edastamisel. Kuid protokolli efektiivsuse vĂ”rdlemisel kasulikku teavet sisaldavate baitide arvu ja edastatud baitide koguarvu suhetes osutus CoAP tĂ”husamaks.

Kaugjuhtimisega analĂŒĂŒsis MQTT, DDS (TCP transport protocol) ja CoAP kasutamisel selgus, et CoAP nĂ€itas tavaliselt vĂ”rreldes madalamat ribalaiuse tarbimist, mis ei suurenenud vĂ”rgupakettide kaotuste vĂ”i suurenenud viivituse korral, erinevalt MQTT-st ja DDS-ist, kus nimetatud stsenaariumides tĂ€heldati ribalaiuse kasutamise kasvu. Teises stsenaariumis osales suur hulk seadmeid, mis edastasid andmeid samal ajal, mis on tĂŒĂŒpiline olukord IoT keskkondades. Tulemused nĂ€itasid, et suurema koormuse korral on parem kasutada CoAP-i.

VÀikese koormuse korral kasutas CoAP kÔige vÀhem ribalaiust, jÀrgnesid MQTT ja REST HTTP. Siiski, kui koormuse suurus suurenes, olid parimad tulemused REST HTTP-l.

Energiatarve

Energiatarbimise kĂŒsimus on alati oluline, kuid IoT sĂŒsteemis on see eriti tĂ€htis. Kui vĂ”rrelda MQTT ja HTTP energiatarbimist, siis HTTP tarbib oluliselt rohkem. CoAP on aga energiatĂ”husam kui MQTT, lubades toitehalduse. Sellegipoolest sobib MQTT lihtsates stsenaariumides paremini andmevahetuseks asjade interneti vĂ”rkudes, eriti kui toite piiranguid ei ole.

Teine katse, mille kÀigus vÔrreldi AMQP ja MQTT vÔimalusi mobiilses vÔi ebastabiilses traadita vÔrgus, nÀitas, et AMQP pakub rohkem turvavÔimalusi, samas kui MQTT on energiatÔhusam.

Turvalisus

Turvalisus on veel ĂŒks vĂ€ga oluline teema, mida tĂ”statatakse asjade interneti ning ÀÀrmiselt/tĂ€iendavates arvutustes. Turvamehhanism pĂ”hineb tavaliselt TLS-l HTTP-s, MQTT-s, AMQP-s ja XMPP-s, vĂ”i DTLS CoAP-is, ning toetab mĂ”lemat varianti DDS.

TLS ja DTLS algavad protsessiga, millega luuakse ĂŒhendus kliendi ja serveri vahel, et vahetada toetatud krĂŒptoĂŒksikute komplekte ja vĂ”tmeid. MĂ”lemad pooled leppivad kokku komplektides, et tagada, et edasine suhtlemine toimub turvalises kanalis. Nende erinevus seisneb vĂ€ikestes muutustes, mis vĂ”imaldavad DTLS-l, mis pĂ”hineb UDP-l, töötada ebakindlas ĂŒhenduses.

Kaugjuhtimisega katsekohtumised Mitme erineva TLS ja DTLS rakenduse testimise kĂ€igus selgus, et TLS suudab ĂŒlesande paremini tĂ€ita. DTLS-i rĂŒnnakud olid edukamad tĂ€nu selle vigadele tolerantsele loodusele.

Kuid nende protokollide suurim probleem on see, et need ei olnud algselt mĂ”eldud IoT kasutamiseks ega eeldanud töötamist pilves vĂ”i udus. Kokku lepitud kĂ€epigistusega lisavad nad igaĂŒhenduse loomisega lisaliiklust, mis kurnab arvutusressursse. Keskmiselt on TLS-i lisakoormus 6,5% ja DTLS-i omakorda 11% vĂ”rreldes turbatava puudumisega. Ressursirikkas keskkonnas, kus kasutatakse tavaliselt, pilve , ei ole see probleem, kuid IoT ja udutasemete vahelises suhtluses muutub see oluliseks piiranguks.

Mida valida? Ühtegi kindlat vastust ei ole. MQTT ja HTTP nĂ€ivad olevat kĂ”ige lootustandvamad protokollid, kuna neid peetakse vĂ”rreldes teiste protokollidega suhteliselt kĂŒpseks ja stabiilseks lahenduseks IoT-le.

Ühe kommunikatsiooniprotokolli pĂ”hised lahendused

Ühe protokolli lahenduse praktikal on palju puudusi. NĂ€iteks proto, mis sobib piiratud keskkonda, ei pruugi töötada domeenis, millel on ranged turvanĂ”uded. Arvesse vĂ”ttes, tuleb meil jĂ€tta peaaegu kĂ”ik ĂŒhe protokolli pĂ”hised lahendused IoT udust pilve ekosĂŒsteemis kĂ”rvale, vĂ€lja arvatud MQTT ja REST HTTP.

REST HTTP ĂŒhe protokolli lahendusena

On hea nĂ€ide REST HTTP pĂ€ringute ja vastuste interaktsioonist IoT-st uduni: nutifarm. Loomadele on paigaldatud kantavad andurid (IoT klient, C) ja neid hallatakse nutifarmi sĂŒsteemi kaudu pilvcomputing-i kaudu (Fog-server, S).

POST meetodi pĂ€ises mÀÀratakse muudetav ressurss (/{farm/animals}), samuti HTTP versioon ja sisutĂŒĂŒp, mis antud juhul on JSON objekt, mis esindab loomafarmi, mida sĂŒsteem peab haldama (Dulcineia/veise). Serveri vastus nĂ€itab, et pĂ€ring oli edukas, saades HTTPS seisundikoodi 201 (resource created). GET meetod peaks mÀÀrama ainult nĂ”utava ressursi URI-s (nt /farm/animals/1), mis tagastab selle ID jĂ€rgi loomade JSON-esitluse serverist.

PUT meetodit kasutatakse, kui on vajalik uuendada teatud kindlat ressursi kirjet. Sellisel juhul mÀÀratakse ressursis URI parameetrile, mida on vaja muuta, ja praegusele vÀÀrtusele (nÀiteks mÀrkides, et lehm on just praegu vÀljaspool, /farm/animals/1?state=walking). LÔpuks kasutatakse DELETE meetodit sama hÀsti kui GET meetodit, kuid see lihtsalt kustutab ressursi operatsiooni tulemusena.

MQTT kui ĂŒhesuunaline lahendus

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

VĂ”tame sama nutika talu, kuid kasutame REST HTTP asemel protokolli MQTT. Kohalik server, millel on installitud Mosquitto teek, toimib vahendajana. Antud nĂ€ites teenib lihtne arvuti (töötatakse talu serverina) Raspberry Pi MQTT kliendina, mille teostamiseks on kasutatud MQTT Paho teeki, mis on tĂ€ielikult ĂŒhilduv Mosquitto vahendajaga.

See klient vastab IoT abstraktsiooni tasemele, mis esindab seadet, millel on avastamis- ja arvutusvĂ”imed. Teisest kĂŒljest vastab vahendaja kĂ”rgemale abstraktsiooni tasemele, mis esindab udusuhte arvutussĂ”lme, mis on iseloomustatud suuremate töötlemis- ja andmete salvestamise vĂ”imetega.

Pakkumisel olevas «nutika talu» stsenaariumis on Raspberry Pi ĂŒhendatud akseleromeetri, GPS- ja temperatuurianduritega ning avaldab nende andmete postitamisel udusĂ”lmes. Nagu te tĂ”enĂ€oliselt teate, kĂ€sitleb MQTT teemasid kui hierarhiat. Üks MQTT vĂ€ljaandja vĂ”ib postitada sĂ”numeid kindlas teemasete kogumis. Meie puhul on neid kolm. Loomade talli temperatuuri mÔÔtva anduri jaoks valib klient teema (animalfarm/shed/temperature). GPS asukoha ja loomade liikumise mÔÔtmise andurite jaoks avaldab klient vĂ€rskendusi (animalfarm/animal/GPS) ja (animalfarm/animal/movement).

See teave edastatakse vahendajale, kes vÔib selle ajutiselt salvestada kohalikus andmebaasis juhuks, kui hiljem ilmub mÔni muu huvitatud tellija.

Lisaks kohalikule serverile, mis toimib MQTT maaklerina ja kuhu Raspberry Pi, mis on MQTT kliendid, saadavad andmeid sensoritest, vĂ”ib pilve tasandil olla veel ĂŒks MQTT maakler. Sellisel juhul vĂ”ib kohalikule maaklerile edastatav teave ajutiselt salvestuda kohalikku andmebaasi ja/vĂ”i saadetakse pilve. Maakler, mis kuulub tunde, kasutatakse selles olukorras, et siduda kĂ”ik andmed pilve MQTT maakleriga. Sellise arhitektuuri korral vĂ”ib mobiilirakenduse kasutaja olla tellitud mĂ”lemale maaklerile.

Ühenduse katkemise korral ĂŒhe maakleriga (nĂ€iteks pilvega) saab lĂ”ppkasutaja teavet teiselt (tundlike). See on iseloomulik tunnus segatud pilve ja tunde sĂŒsteemidele. VaikesĂ€tete kohaselt vĂ”ib mobiilirakendus olla seadistatud esimese ĂŒhenduse loomiseks tunde MQTT maakleriga ning ebaĂ”nnestumise korral ĂŒhenduse loomiseks pilve MQTT maakleriga. See lahendus on vaid ĂŒks paljusid IoT-F2C sĂŒsteemide lahendusi.

Mitme protokolli lahendused

Ühe protokolli lahendused on populaarsed oma lihtsama rakendatavuse tĂ”ttu. Kuid on ilmselge, et IoT-F2C sĂŒsteemides on mĂ”istlik ĂŒhendada erinevad protokollid. Idee on, et erinevatel tasanditel vĂ”ivad töötada erinevad protokollid. Vaatame nĂ€iteks kolme abstraktsiooni: IoT, tunne ja pilve tasand. IoT tasandi seadmed peetakse tavaliselt piiratud vĂ”imekusega. Selles ĂŒlevaates kĂ€sitleme IoT tasandeid kui kĂ”ige piiratud, pilve kui kĂ”ige vĂ€hem piiratud ja tunde arvutust kui „midagi nende vahel”. Seega on IoT ja tunde abstraktsioonide vahel praegused protokolli lahendused MQTT, CoAP ja XMPP. Tunde ja pilve vahel on AMQP ĂŒks peamisi kasutatavaid protokolle koos REST HTTP-ga, mida kasutatakse ka IoT ja tunde kihtide vahel oma paindlikkuse tĂ”ttu.

PĂ”hiprobleem seisneb protokollide funktsionaalses ĂŒhilduvuses ja sĂ”numite lihtsas tĂ”lkimises ĂŒhest protokollist teise. Ideaalis peaks tuleviku Interneti asjade arhitektuur pilve ja tunde ressurssidega olema sĂ”ltumatu kasutatavast suhtlusprotokollist ja tagama erinevate protokollide head koostööd.

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

Kuna see hetk ei ole nii, on mĂ”ttekas ĂŒhendada protokolle, millel pole olulisi erinevusi. Selle eesmĂ€rgi saavutamiseks pĂ”hineb ĂŒks potentsiaalne lahendus kahe protokolli kombinatsioonil, mis jĂ€rgivad sama arhitektuuristiili, REST HTTP ja CoAP. Teine ettepanek pĂ”hineb kahe protokolli ĂŒhendamisel, mis pakuvad „vĂ€ljaanne-tellimise” mudelit, MQTT ja AMQP. Sarnaste kontseptsioonide kasutamine (kuna nii MQTT kui ka AMQP kasutavad vahendajaid, CoAP ja HTTP kasutavad REST-i) lihtsustab nende kombinatsioonide rakendamist ja nĂ”uab vĂ€hem integreerimisjĂ”upingutusi.

IoT, udu ja pilved: rÀÀgime tehnoloogiatest?

Joonisel (a) on esitatud kaks mudelit, mis pĂ”hinevad pĂ€ringutel ja vastustel, HTTP ja CoAP, ning nende vĂ”imalik asukoht IoT-F2C lahenduses. Kuna HTTP on ĂŒks tuntumaid ja laialdaselt kohandatud protokolle kaasaegsetes vĂ”rkudes, on ebatĂ”enĂ€oline, et see asendatakse tĂ€ielikult teiste sĂ”numivahetusprotokollidega. Tugevate seadmete vahel, mis asuvad pilve ja udude vahel, on REST HTTP mĂ”istlik lahendus.

Teisest kĂŒljest on pilve ja IoT tasandite vahel seostumisel, kui seadmed on piiratud arvutusressurssidega, CoAP tĂ”husam. Üks CoAP-i suuri eeliseid on tegelikult selle ĂŒhilduvus HTTP-ga, kuna mĂ”lemad protokollid pĂ”hinevad REST-i pĂ”himĂ”tetel.

Joonisel (b) on esitatud kaks „vĂ€ljaanne-tellimine” mudeli interaktsiooni nĂ€idet, sealhulgas MQTT ja AMQP. Kuigi hĂŒpoteetiliselt vĂ”iks mĂ”lemat protokolli kasutada suhete loomiseks sĂ”lmede vahel igal abstraktsiooni tasandil, tuleks nende positsioon mÀÀrata jĂ”udluse alusel. MQTT on vĂ€lja töötatud lihtsustatud protokollina piiratud arvutusvĂ”imekusega seadmete jaoks, mistĂ”ttu saab seda kasutada seose loomiseks IoT ja udude vahel. AMQP sobib paremini vĂ”imsamate seadmete jaoks, mis asetaks selle ideaalselt udude ja pilve sĂ”lmede vahele. IoT-s vĂ”ib MQTT asemel kasutada protokolli XMPP, kuna seda peetakse kergekaaluliseks. Kuid seda ei kasutata sarnastes stsenaariumides nii laialdaselt.

JĂ€reldused

On ebat, et ĂŒkski arutletud protokoll ei pruugi katta kogu sĂŒsteemi suhtlust, alates seadmetest, mille arvutusvĂ”imsus on piiratud, kuni pilveserveriteni. Uuringud on nĂ€idanud, et kaks kĂ”ige perspektiivikamat varianti, mida arendajad sagedamini kasutavad, on MQTT ja RESTful HTTP. Need kaks protokolli on mitte ainult kĂ”ige kĂŒpsemad ja stabiilsemad, vaid sisaldavad ka hulgaliselt hĂ€sti dokumenteeritud ja edukaid rakendusi ning veebiallikasid.

Oma stabiilsuse ja lihtsa seadistamise tĂ”ttu on MQTT protokoll, mis on ajaga tĂ”estanud oma suurepĂ€rast tulemuslikkust piiratud seadmetega IoT tasemel. SĂŒsteemi osades, kus piiratud side ja aku tarbimine ei ole probleem, nagu nĂ€iteks teatud uduvaldkondades ja enamikus pilvekomputatsioonides, on RESTful HTTP lihtne valik. CoAP'i tuleb samuti arvesse vĂ”tta, kuna see areneb kiiresti IoT sĂ”numivahetusstandardina ning on tĂ”enĂ€oline, et lĂ€hiajal saavutab see stabiilsuse ja kĂŒpsuse tasemega, mis on sarnane MQTT ja HTTP-ga. Kuid standard areneb praegu, mis toob endaga kaasa lĂŒhiajalisi ĂŒhilduvuse probleeme.

Millest veel huvitavat lugeda blogis Cloud4Y

→ Arvuti teeb teile maitsvaks
→ AI aitab uurida Aafrika loomi
→ Suvi on peaaegu lĂ€bi. Peaaegu pole andmeid kaduma lĂ€inud
→ 4 viisi, kuidas pilve varundamisel raha sÀÀsta
→ Üksne föderaalne teabeallikas, mis sisaldab andmeid elanikkonna kohta

Telli meie Telegram-kanal, et mitte jÀÀda ilma jÀrgmise artikli lugemisest! Kirjutame mitte sagedamini kui kaks korda nÀdalas ja ainult olulistel teemadel.

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster