{"id":38375,"date":"2019-10-31T22:23:21","date_gmt":"2019-10-31T19:23:21","guid":{"rendered":"https:\/\/prohoster.info\/blog\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii\/"},"modified":"2019-10-31T22:23:21","modified_gmt":"2019-10-31T19:23:21","slug":"iot-tuman-i-oblaka-pogovorim-pro-tehnologii","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/news\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii","title":{"rendered":"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/89eae3426589d2ed8041fd6dd26498cb.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>A szoftver- \u00e9s hardvertechnol\u00f3gi\u00e1k fejl\u0151d\u00e9se, valamint az \u00faj kommunik\u00e1ci\u00f3s protokollok megjelen\u00e9se a dolgok internet\u00e9nek (IoT) terjed\u00e9s\u00e9t eredm\u00e9nyezte. A k\u00e9sz\u00fcl\u00e9kek sz\u00e1ma napr\u00f3l napra n\u0151, \u00e9s \u00f3ri\u00e1si mennyis\u00e9g\u0171 adatot gener\u00e1lnak. Ez\u00e9rt sz\u00fcks\u00e9g van egy k\u00e9nyelmes rendszerarchitekt\u00far\u00e1ra, amely k\u00e9pes feldolgozni, t\u00e1rolni \u00e9s tov\u00e1bb\u00edtani ezeket az adatokat.<\/p>\n<p>Jelenleg ezekhez a c\u00e9lokhoz felh\u0151szolg\u00e1ltat\u00e1sokat haszn\u00e1lnak. Azonban a mind n\u00e9pszer\u0171bb\u00e9 v\u00e1l\u00f3 k\u00f6d sz\u00e1m\u00edt\u00e1si paradigm\u00e1k (Fog) kieg\u00e9sz\u00edthetik a felh\u0151s megold\u00e1sokat, \u00e9s optimaliz\u00e1lhatj\u00e1k az IoT infrastrukt\u00far\u00e1j\u00e1t. <\/i><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>A \"felh\u0151k\" k\u00e9pesek lefedni a legt\u00f6bb IoT ig\u00e9nyt. P\u00e9ld\u00e1ul biztos\u00edtani tudj\u00e1k a szolg\u00e1ltat\u00e1sok monitoroz\u00e1s\u00e1t, a k\u00e9sz\u00fcl\u00e9kek \u00e1ltal gener\u00e1lt adatmennyis\u00e9gek gyors feldolgoz\u00e1s\u00e1t \u00e9s vizualiz\u00e1ci\u00f3j\u00e1t. A k\u00f6d sz\u00e1m\u00edt\u00e1sok viszont hat\u00e9konyabbak a real-time feladatok megold\u00e1s\u00e1ban. Gyors v\u00e1laszid\u0151t \u00e9s minim\u00e1lis k\u00e9sleltet\u00e9st biztos\u00edtanak az adatok feldolgoz\u00e1sa sor\u00e1n. Vagyis a Fog val\u00f3ban kieg\u00e9sz\u00edti a \"felh\u0151ket\", b\u0151v\u00edti azok lehet\u0151s\u00e9geit.<\/p>\n<p>A legfontosabb k\u00e9rd\u00e9s azonban m\u00e1s: hogyan kell mindennek k\u00f6lcs\u00f6nhat\u00e1sba l\u00e9pnie az IoT kontextus\u00e1ban? Milyen kommunik\u00e1ci\u00f3s protokollok lesznek a leghat\u00e9konyabbak az IoT-Fog-Cloud integr\u00e1lt rendszer m\u0171k\u00f6dtet\u00e9sekor?<\/p>\n<p>B\u00e1r a HTTP l\u00e1tsz\u00f3lag domin\u00e1l, az IoT, Fog \u00e9s Cloud rendszerekben sz\u00e1mos m\u00e1s megold\u00e1st is haszn\u00e1lnak. Ennek oka, hogy az IoT-nak \u00f6tv\u00f6znie kell a k\u00fcl\u00f6nf\u00e9le eszk\u00f6z\u00f6k \u00e9rz\u00e9kel\u0151inek funkcion\u00e1lis k\u00e9pess\u00e9geit a biztons\u00e1ggal, a kompatibilit\u00e1ssal \u00e9s a felhaszn\u00e1l\u00f3k \u00e1ltal t\u00e1masztott egy\u00e9b k\u00f6vetelm\u00e9nyekkel.<\/p>\n<p>A f\u0151 probl\u00e9ma azonban az, hogy nincs egys\u00e9ges elk\u00e9pzel\u00e9s a referenciaarchitekt\u00far\u00e1r\u00f3l \u00e9s a kapcsolati szabv\u00e1nyokr\u00f3l. Ez\u00e9rt egy \u00faj protokoll l\u00e9trehoz\u00e1sa vagy a megl\u00e9v\u0151 protokollak konkr\u00e9t IoT feladatokhoz val\u00f3 testreszab\u00e1sa az IT k\u00f6z\u00f6ss\u00e9g sz\u00e1m\u00e1ra az egyik legfontosabb feladat.<\/p>\n<p>Milyen protokollokat haszn\u00e1lnak jelenleg, \u00e9s mit k\u00edn\u00e1lnak? N\u00e9zz\u00fck meg. De el\u0151sz\u00f6r besz\u00e9lj\u00fcnk az \u00f6kosziszt\u00e9ma alapelveir\u0151l, amelyben a felh\u0151k, a k\u00f6d \u00e9s a dolgok internetje k\u00f6lcs\u00f6nhat\u00e1sba l\u00e9p.<\/p>\n<h3>IoT Fog-to-Cloud (F2C) architekt\u00fara<\/h3>\n<p>\nBizony\u00e1ra \u00e9szrevette, milyen jelent\u0151s er\u0151fesz\u00edt\u00e9sek folynak az IoT, a felh\u0151k \u00e9s a k\u00f6d tudatos \u00e9s \u00f6sszehangolt kezel\u00e9s\u00e9nek el\u0151nyeinek \u00e9s nyeres\u00e9geinek tanulm\u00e1nyoz\u00e1s\u00e1ra. Ha nem, itt van h\u00e1rom kezdem\u00e9nyez\u00e9s a szabv\u00e1nyos\u00edt\u00e1s \u00e9rdek\u00e9ben: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openfogconsortium.org\/\">OpenFog Consortium<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/en.ecconsortium.org\/Uploads\/file\/20180328\/1522232376480704.pdf\">Edge Computing Consortium<\/a><\/noindex> \u00e9s <noindex><a rel=\"nofollow\" href=\"http:\/\/www.mf2c-project.eu\/\">mF2C H2020 EU projekt<\/a><\/noindex>. <\/p>\n<p>Ha kor\u00e1bban csak 2 szintet, a felh\u0151t \u00e9s a v\u00e9gberendez\u00e9seket vett\u00fck figyelembe, most egy \u00faj szintet vezet\u00fcnk be - a k\u00f6d\u00f6s sz\u00e1m\u00edt\u00e1st. Ezen a szinten a k\u00f6d t\u00f6bb alszintre oszthat\u00f3, az er\u0151forr\u00e1sok saj\u00e1toss\u00e1gait\u00f3l vagy azoknak a politik\u00e1knak a halmaz\u00e1t\u00f3l f\u00fcgg\u0151en, amelyek meghat\u00e1rozz\u00e1k a k\u00fcl\u00f6nb\u00f6z\u0151 eszk\u00f6z\u00f6k haszn\u00e1lat\u00e1t ezeken az alszinteken.<\/p>\n<p>Hogyan n\u00e9zhet ki ez az absztrakci\u00f3? \u00cdme egy tipikus IoT-K\u00f6d-Felh\u0151 \u00f6kosziszt\u00e9ma. Az IoT-eszk\u00f6z\u00f6k adatokat k\u00fcldenek nagyobb teljes\u00edtm\u00e9ny\u0171 szerverekre \u00e9s sz\u00e1m\u00edt\u00e1si egys\u00e9gekre, hogy megoldj\u00e1k az alacsony k\u00e9sleltetet ig\u00e9nyl\u0151 feladatokat. Ugyanebben a rendszerben a felh\u0151k felelnek a nagy sz\u00e1m\u00edt\u00e1si kapacit\u00e1st vagy adatok t\u00e1rol\u00e1s\u00e1ra alkalmas helyet ig\u00e9nyl\u0151 feladatok megold\u00e1s\u00e1\u00e9rt.<\/p>\n<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/c78ea915ac4743a3def5651778e77873.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOkostelefonok, okos\u00f3r\u00e1k \u00e9s m\u00e1s k\u00fcty\u00fck is r\u00e9szei lehetnek az IoT-nak. De ezek az eszk\u00f6z\u00f6k \u00e1ltal\u00e1ban a nagy fejleszt\u0151k \u00e1ltal k\u00e9sz\u00edtett, szabadalmaztatott kommunik\u00e1ci\u00f3s protokollokat haszn\u00e1lj\u00e1k. Az internetes dolgok \u00e1ltal gener\u00e1lt adatokat a k\u00f6d szintj\u00e9re a REST HTTP protokoll seg\u00edts\u00e9g\u00e9vel tov\u00e1bb\u00edtj\u00e1k, amely rugalmass\u00e1got \u00e9s funkcion\u00e1lis kompatibilit\u00e1st biztos\u00edt a RESTful szolg\u00e1ltat\u00e1sok l\u00e9trehoz\u00e1sakor. Ez l\u00e9tfontoss\u00e1g\u00fa a megl\u00e9v\u0151, helyi sz\u00e1m\u00edt\u00f3g\u00e9peken, szervereken vagy szerverklasztereken m\u0171k\u00f6d\u0151 sz\u00e1m\u00edt\u00e1si infrastrukt\u00far\u00e1kkal val\u00f3 visszamen\u0151leges kompatibilit\u00e1s biztos\u00edt\u00e1sa szempontj\u00e1b\u00f3l. A helyi er\u0151forr\u00e1sokat, amelyeket \"k\u00f6dcsom\u00f3pontoknak\" neveznek, a fogadott adatok sz\u0171r\u00e9s\u00e9re \u00e9s helyi feldolgoz\u00e1s\u00e1ra, vagy tov\u00e1bbi sz\u00e1m\u00edt\u00e1shoz val\u00f3 felh\u0151be val\u00f3 tov\u00e1bb\u00edt\u00e1s\u00e1ra haszn\u00e1lj\u00e1k.<\/p>\n<p>A felh\u0151k k\u00fcl\u00f6nb\u00f6z\u0151 kommunik\u00e1ci\u00f3s protokollokat t\u00e1mogatnak, amelyek k\u00f6z\u00fcl a leggyakrabban az AMQP \u00e9s a REST HTTP tal\u00e1lhat\u00f3. Mivel a HTTP k\u00f6zismert \u00e9s az internetre optimaliz\u00e1lt, felmer\u00fclhet a k\u00e9rd\u00e9s: \"Nem lenne-e \u00e9rdemes azt haszn\u00e1lni az IoT \u00e9s a k\u00f6d m\u0171k\u00f6d\u00e9s\u00e9hez?\" Azonban ennek a protokollnak teljes\u00edtm\u00e9nybeli probl\u00e9m\u00e1i vannak. Err\u0151l k\u00e9s\u0151bb.<\/p>\n<p>\u00d6sszess\u00e9g\u00e9ben 2 olyan kommunik\u00e1ci\u00f3s protokollmodellt ismer\u00fcnk, amelyek megfelelnek a sz\u00fcks\u00e9ges rendszer\u00fcnknek. Ezek a k\u00e9r\u00e9s-v\u00e1lasz \u00e9s a k\u00f6zz\u00e9t\u00e9tel-el\u0151fizet\u00e9s modell. Az els\u0151 modell sz\u00e9lesebb k\u00f6rben ismert, k\u00fcl\u00f6n\u00f6sen a szerver-kliens architekt\u00far\u00e1ban. A kliens inform\u00e1ci\u00f3t k\u00e9r a szervert\u0151l, amely megkapja a k\u00e9rd\u00e9st, feldolgozza azt, \u00e9s visszak\u00fcldi a v\u00e1lasz \u00fczenetet. E modellek alapj\u00e1n m\u0171k\u00f6dnek a REST HTTP \u00e9s CoAP protokollok.<\/p>\n<p>A m\u00e1sodik modell a forr\u00e1sok, amelyek adatokat gener\u00e1lnak, \u00e9s az adatok fogad\u00f3i k\u00f6z\u00f6tti aszinkron, elosztott, laza \u00f6sszek\u00f6ttet\u00e9s biztos\u00edt\u00e1s\u00e1nak sz\u00fcks\u00e9gess\u00e9g\u00e9b\u0151l fakadt.<\/p>\n<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/acf3b411fb9a0b7a61cf0188e4c29292.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nA modell h\u00e1rom r\u00e9sztvev\u0151t felt\u00e9telez: a kiad\u00f3t (adatforr\u00e1st), a br\u00f3kert (ir\u00e1ny\u00edt\u00f3t) \u00e9s az el\u0151fizet\u0151t (fogad\u00f3t). Ebben az esetben az \u00fcgyf\u00e9l, aki el\u0151fizet\u0151k\u00e9nt m\u0171k\u00f6dik, nem k\u00e9rheti az inform\u00e1ci\u00f3t a szervert\u0151l. A k\u00e9r\u00e9s helyett az esem\u00e9nyekre iratkozik fel a rendszerben a br\u00f3ker seg\u00edts\u00e9g\u00e9vel, aki felel\u0151s az \u00f6sszes bej\u00f6v\u0151 \u00fczenet sz\u0171r\u00e9s\u00e9\u00e9rt \u00e9s azok kiad\u00f3k \u00e9s el\u0151fizet\u0151k k\u00f6z\u00f6tti ir\u00e1ny\u00edt\u00e1s\u00e1\u00e9rt. Amikor egy esem\u00e9ny t\u00f6rt\u00e9nik egy adott t\u00e9m\u00e1val kapcsolatban, a kiad\u00f3 azt k\u00f6zz\u00e9teszi a br\u00f3kernek, amely tov\u00e1bb\u00edtja az adatokat az el\u0151fizet\u0151nek a k\u00e9rt t\u00e9m\u00e1ban.<\/p>\n<p>Alapvet\u0151en ez az architekt\u00fara esem\u00e9nyeken alapul. Ez az interakci\u00f3s modell \u00e9rdekes az IoT, felh\u0151, \u00e9s k\u00f6dalkalmaz\u00e1sok sz\u00e1m\u00e1ra, mivel k\u00e9pes sk\u00e1l\u00e1zhat\u00f3s\u00e1got biztos\u00edtani \u00e9s egyszer\u0171s\u00edteni a k\u00fcl\u00f6nb\u00f6z\u0151 eszk\u00f6z\u00f6k k\u00f6z\u00f6tti kapcsolatokat, fenntartani a dinamikus \"sok-sok\" kapcsol\u00f3d\u00e1st \u00e9s az aszinkron kommunik\u00e1ci\u00f3t. A legismertebb szabv\u00e1nyos \u00fczenetk\u00fcld\u00e9si protokollok, amelyek a \"kiad\u00e1s-el\u0151fizet\u00e9s\" modellt haszn\u00e1lj\u00e1k, p\u00e9ld\u00e1ul az MQTT, AMQP \u00e9s DDS.<\/p>\n<p>Nyilv\u00e1nval\u00f3, hogy a \"kiad\u00e1s-el\u0151fizet\u00e9s\" modell sz\u00e1mos el\u0151nnyel j\u00e1r:<\/p>\n<ul>\n<li>A kiad\u00f3knak \u00e9s az el\u0151fizet\u0151knek nem kell tudniuk egym\u00e1s l\u00e9tez\u00e9s\u00e9r\u0151l;<\/li>\n<li>Egyetlen el\u0151fizet\u0151 inform\u00e1ci\u00f3t kaphat sz\u00e1mos k\u00fcl\u00f6nb\u00f6z\u0151 kiad\u00f3t\u00f3l, m\u00edg egyetlen kiad\u00f3 adatokat k\u00fcldhet sz\u00e1mos k\u00fcl\u00f6nb\u00f6z\u0151 el\u0151fizet\u0151nek (\"sok-sok\" elv);<\/li>\n<li>A kiad\u00f3nak \u00e9s az el\u0151fizet\u0151nek nem sz\u00fcks\u00e9ges egyszerre akt\u00edvnak lennie az adatok cser\u00e9j\u00e9hez, mivel a br\u00f3ker (mint sor kezel\u0151 rendszer) t\u00e1rolhatja az \u00fczenetet azoknak a klienseknek, akik jelenleg nincsenek online.<\/li>\n<\/ul>\n<p>\nA \"k\u00e9r\u00e9s-v\u00e1lasz\" modellnek azonban megvannak a maga er\u0151ss\u00e9gei is. Abban az esetben, amikor a szerveroldali k\u00e9r\u00e9skezel\u00e9s lehet\u0151s\u00e9gei nem probl\u00e9m\u00e1t jelentenek t\u00f6bb kliens sz\u00e1m\u00e1ra, \u00e9rdemes lehet a m\u00e1r bev\u00e1lt megb\u00edzhat\u00f3 megold\u00e1sok haszn\u00e1lata.<\/p>\n<p>Vannak olyan protokollok is, amelyek mindk\u00e9t modellt t\u00e1mogatj\u00e1k. P\u00e9ld\u00e1ul az XMPP \u00e9s a HTTP 2.0 t\u00e1mogatja a \u201eserver push\u201d lehet\u0151s\u00e9get. Az IETF kiadott egy CoAP-t is. A kommunik\u00e1ci\u00f3s probl\u00e9m\u00e1k megold\u00e1s\u00e1nak \u00e9rdek\u00e9ben sz\u00e1mos m\u00e1s megold\u00e1st fejlesztettek ki, p\u00e9ld\u00e1ul a WebSocket protokollt vagy a HTTP protokollt a QUIC (Quick UDP Internet Connections) seg\u00edts\u00e9g\u00e9vel.<\/p>\n<p>A WebSocket eset\u00e9ben, b\u00e1r az val\u00f3s idej\u0171 adat\u00e1tvitelre haszn\u00e1lhat\u00f3 a szerver \u00e9s a webkliens k\u00f6z\u00f6tt, \u00e9s folyamatos, k\u00e9tir\u00e1ny\u00fa kommunik\u00e1ci\u00f3t biztos\u00edt, nem olyan eszk\u00f6z\u00f6kh\u00f6z k\u00e9sz\u00fclt, amelyek korl\u00e1tozott sz\u00e1m\u00edt\u00e1si kapacit\u00e1ssal rendelkeznek. A QUIC is figyelmet \u00e9rdemel, mivel az \u00faj sz\u00e1ll\u00edt\u00e1si protokoll sok \u00faj lehet\u0151s\u00e9get k\u00edn\u00e1l. Azonban mivel a QUIC m\u00e9g nem szabv\u00e1nyos\u00edtott, korai lenne el\u0151re jelezni lehets\u00e9ges alkalmaz\u00e1s\u00e1t \u00e9s hat\u00e1s\u00e1t az IoT megold\u00e1sokra. \u00cdgy a WebSocket \u00e9s a QUIC a j\u00f6v\u0151re n\u00e9zve eml\u00e9kezet\u00fcnkben marad, de r\u00e9szletesebben egyel\u0151re nem vizsg\u00e1ljuk.<\/p>\n<h3>Ki a legkedvesebb a vil\u00e1gon: protokollok \u00f6sszehasonl\u00edt\u00e1sa<\/h3>\n<p>\nMost besz\u00e9lj\u00fcnk a protokollok er\u0151ss\u00e9geir\u0151l \u00e9s gyenges\u00e9geir\u0151l. El\u0151re bocs\u00e1tva, hogy nincs egy\u00e9rtelm\u0171 vezet\u0151. Minden protokollnak megvannak a maga el\u0151nyei \u00e9s h\u00e1tr\u00e1nyai.<\/p>\n<p><b>V v\u00e1laszid\u0151<\/b><\/p>\n<p>A kommunik\u00e1ci\u00f3s protokollok egyik legfontosabb jellemz\u0151je, k\u00fcl\u00f6n\u00f6sen az IoT eset\u00e9ben, a v\u00e1laszid\u0151. Azonban a megl\u00e9v\u0151 protokollok k\u00f6z\u00f6tt nincs egy\u00e9rtelm\u0171 gy\u0151ztes, amely minim\u00e1lis k\u00e9sleltet\u00e9st mutat k\u00fcl\u00f6nb\u00f6z\u0151 k\u00f6r\u00fclm\u00e9nyek k\u00f6z\u00f6tt. Viszont rengeteg kutat\u00e1s \u00e9s \u00f6sszehasonl\u00edt\u00e1s l\u00e9tezik a protokollok lehet\u0151s\u00e9geir\u0151l.<\/p>\n<p>P\u00e9ld\u00e1ul, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.researchgate.net\/publication\/323943358_Performance_Analysis_of_Internet_of_Things_Protocols_Based_FogCloud_over_High_Traffic\">eredm\u00e9nyek <\/a><\/noindex>Az HTTP \u00e9s az MQTT hat\u00e9konys\u00e1g\u00e1nak \u00f6sszehasonl\u00edt\u00e1sa az IoT-val kapcsolatban azt mutatta, hogy az MQTT-nek a lek\u00e9rdez\u00e9sek v\u00e1laszideje kisebb, mint az HTTP eset\u00e9ben. Emellett <noindex><a rel=\"nofollow\" href=\"https:\/\/www.researchgate.net\/publication\/303188719_Comparison_of_two_lightweight_protocols_for_smartphone-based_sensing\">a v\u00e1laszid\u0151 <\/a><\/noindex>az MQTT \u00e9s a CoAP \u00e1tv\u00e9teli-\u00e1tviteli ideje (RTT) azt mutatta, hogy a CoAP \u00e1tlagos RTT-je 20%-kal alacsonyabb, mint az MQTT-\u00e9.<\/p>\n<p>M\u00e1s <noindex><a rel=\"nofollow\" href=\"https:\/\/ieeexplore.ieee.org\/document\/7740559\">k\u00eds\u00e9rletet <\/a><\/noindex>Az MQTT \u00e9s a CoAP RTT-j\u00e9t k\u00e9t scen\u00e1ri\u00f3ban vizsg\u00e1lt\u00e1k: helyi h\u00e1l\u00f3zaton \u00e9s IoT h\u00e1l\u00f3zaton. Kider\u00fclt, hogy az \u00e1tlagos RTT 2-3-szorosa volt az IoT h\u00e1l\u00f3zatban. Az MQTT QoS0-val alacsonyabb eredm\u00e9nyt mutatott a CoAP-hoz k\u00e9pest, m\u00edg az MQTT QoS1 magasabb RTT-t mutatott az alkalmaz\u00e1si \u00e9s sz\u00e1ll\u00edt\u00e1si szinteken l\u00e9v\u0151 ACK miatt. A k\u00fcl\u00f6nb\u00f6z\u0151 QoS szinteken a nem terhelt h\u00e1l\u00f3zaton az MQTT k\u00e9sleltet\u00e9sei milliszekundumok voltak, m\u00edg a CoAP eset\u00e9ben sz\u00e1z mikroszekundumok. Fontos azonban megjegyezni, hogy a kev\u00e9sb\u00e9 megb\u00edzhat\u00f3 h\u00e1l\u00f3zatokban az MQTT, amely TCP f\u00f6l\u00f6tt m\u0171k\u00f6dik, teljesen m\u00e1s eredm\u00e9nyt fog mutatni.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.diva-portal.org\/smash\/get\/diva2:1092136\/FULLTEXT01.pdf\">\u00d6sszehasonl\u00edt\u00e1s <\/a><\/noindex>Az AMQP \u00e9s MQTT protokollok v\u00e1laszidej\u00e9nek vizsg\u00e1lata sor\u00e1n, a terhel\u00e9s n\u00f6vel\u00e9s\u00e9vel azt tapasztalt\u00e1k, hogy alacsony terhel\u00e9s mellett a k\u00e9sleltet\u00e9s szintje szinte azonos. Azonban nagy adatmennyis\u00e9gek \u00e1tvitele eset\u00e9n az MQTT kevesebb v\u00e1laszid\u0151t mutatott. Egy m\u00e1sik vizsg\u00e1latban <noindex><a rel=\"nofollow\" href=\"http:\/\/www.tfzr.rs\/esociety\/issues\/eSocietyVol3No1.pdf#page=26\">kutat\u00e1s <\/a><\/noindex>A CoAP-ot az HTTP-hoz hasonl\u00edtott\u00e1k olyan g\u00e9pek k\u00f6z\u00f6tti kommunik\u00e1ci\u00f3s szcen\u00e1ri\u00f3ban, amelyek j\u00e1rm\u0171veken helyezkedtek el, \u00e9s g\u00e1zelvezet\u0151, id\u0151j\u00e1r\u00e1s-\u00e9rz\u00e9kel\u0151, GPS helymeghat\u00e1roz\u00f3 \u00e9s mobilh\u00e1l\u00f3zati interf\u00e9sszel (GPRS) voltak felszerelve. A CoAP \u00fczenet mobilh\u00e1l\u00f3zaton t\u00f6rt\u00e9n\u0151 \u00e1tvitel\u00e9hez sz\u00fcks\u00e9ges id\u0151 majdnem h\u00e1romszor r\u00f6videbb volt, mint az HTTP \u00fczenetek alkalmaz\u00e1s\u00e1hoz sz\u00fcks\u00e9ges id\u0151.<\/p>\n<p>Kutat\u00e1sokat v\u00e9geztek, amelyekben nem k\u00e9t, hanem h\u00e1rom protokollt hasonl\u00edtottak \u00f6ssze. P\u00e9ld\u00e1ul <noindex><a rel=\"nofollow\" href=\"https:\/\/ieeexplore.ieee.org\/document\/7496622\">\u00f6sszehasonl\u00edt\u00e1s <\/a><\/noindex>az IoT-protokollok, mint az MQTT, DDS \u00e9s CoAP teljes\u00edtm\u00e9ny\u00e9t orvosi alkalmaz\u00e1sban, h\u00e1l\u00f3zati emulator seg\u00edts\u00e9g\u00e9vel. A DDS a m\u00e9rt telemetriai k\u00e9sleltet\u00e9s szempontj\u00e1b\u00f3l fel\u00fclm\u00falta az MQTT-t k\u00fcl\u00f6nb\u00f6z\u0151 gyenge h\u00e1l\u00f3zati k\u00f6r\u00fclm\u00e9nyek k\u00f6z\u00f6tt. A UDP alap\u00fa CoAP j\u00f3l m\u0171k\u00f6d\u00f6tt a gyors v\u00e1laszid\u0151t ig\u00e9nyl\u0151 alkalmaz\u00e1sok sz\u00e1m\u00e1ra, de a UDP alap\u00fa m\u0171k\u00f6d\u00e9se miatt jelent\u0151s, kisz\u00e1m\u00edthatatlan csomagveszt\u00e9s t\u00f6rt\u00e9nt.<\/p>\n<p><b>S\u00e1vsz\u00e9less\u00e9g<\/b><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.researchgate.net\/publication\/267636202_Performance_evaluation_of_MQTT_and_CoAP_via_a_common_middleware\">\u00d6sszehasonl\u00edt\u00e1s <\/a><\/noindex>Az MQTT \u00e9s a CoAP hat\u00e9konys\u00e1g\u00e1nak \u00e9rt\u00e9kel\u00e9s\u00e9t a csatorna kihaszn\u00e1l\u00e1s szempontj\u00e1b\u00f3l az \u00fczenetenk\u00e9nt \u00e1tadott adatok \u00f6sszmennyis\u00e9g\u00e9nek sz\u00e1m\u00edt\u00e1s\u00e1val v\u00e9gezt\u00e9k. A CoAP kisebb s\u00e1vsz\u00e9less\u00e9get mutatott, mint az MQTT kis \u00fczenetek \u00e1tvitele sor\u00e1n. Azonban a protokollok hat\u00e9konys\u00e1g\u00e1nak vizsg\u00e1lat\u00e1n\u00e1l, amikor a hasznos inform\u00e1ci\u00f3s byte-ok \u00e9s az \u00e1tadott byte-ok \u00f6sszmennyis\u00e9ge k\u00f6z\u00f6tti ar\u00e1nyt n\u00e9zt\u00e9k, a CoAP hat\u00e9konyabbnak bizonyult.<\/p>\n<p>Mikor <noindex><a rel=\"nofollow\" href=\"https:\/\/ieeexplore.ieee.org\/document\/7496622\">elemz\u00e9s <\/a><\/noindex>az MQTT, DDS (TCP mint sz\u00e1ll\u00edt\u00f3 protokoll) \u00e9s CoAP s\u00e1vsz\u00e9less\u00e9g-haszn\u00e1lat\u00e1nak vizsg\u00e1lata sor\u00e1n kider\u00fclt, hogy a CoAP \u00e1ltal\u00e1ban alacsonyabb s\u00e1vsz\u00e9less\u00e9g-fogyaszt\u00e1st mutatott, amely nem n\u00f6vekedett a h\u00e1l\u00f3zati csomagveszt\u00e9s vagy a megn\u00f6vekedett h\u00e1l\u00f3zati k\u00e9sleltet\u00e9s eset\u00e9n, ellent\u00e9tben az MQTT-vel \u00e9s DDS-sel, ahol a fent eml\u00edtett szcen\u00e1ri\u00f3kban a csatorna kihaszn\u00e1l\u00e1s\u00e1nak n\u00f6veked\u00e9se figyelhet\u0151 meg. Egy m\u00e1sik szcen\u00e1ri\u00f3ban sz\u00e1mos eszk\u00f6z egyidej\u0171 adat\u00e1tvitel\u00e9t vizsg\u00e1lt\u00e1k, ami tipikus helyzet az IoT k\u00f6rnyezetekben. Az eredm\u00e9nyek azt mutatt\u00e1k, hogy magasabb terhel\u00e9s eset\u00e9n a CoAP haszn\u00e1lata a jobb v\u00e1laszt\u00e1s.<\/p>\n<p>Kis terhel\u00e9s mellett a CoAP a legalacsonyabb s\u00e1vsz\u00e9less\u00e9get haszn\u00e1lta, ezt k\u00f6vette az MQTT \u00e9s a REST HTTP. Azonban, amikor a hasznos terhel\u00e9sek m\u00e9rete n\u0151tt, a legjobb eredm\u00e9nyeket a REST HTTP \u00e9rte el.<\/p>\n<p><b>Energiagys\u00e1g<\/b><\/p>\n<p>Az energiafogyaszt\u00e1s k\u00e9rd\u00e9se mindig fontos, az IoT rendszerekben pedig k\u00fcl\u00f6n\u00f6sen. Ha <noindex><a rel=\"nofollow\" href=\"https:\/\/ieeexplore.ieee.org\/document\/7899537\">\u00f6sszehasonl\u00edtjuk <\/a><\/noindex>az MQTT \u00e9s a HTTP energiafogyaszt\u00e1s\u00e1t, akkor a HTTP sokkal t\u00f6bb energi\u00e1t \"fogyaszt\". Ezzel szemben a CoAP sokkal <noindex><a rel=\"nofollow\" href=\"https:\/\/www.mdpi.com\/1424-8220\/16\/12\/2044\/htm\">energiahat\u00e9konyabb <\/a><\/noindex>az MQTT-hez k\u00e9pest, lehet\u0151v\u00e9 t\u00e9ve az energia kezel\u00e9s\u00e9t. Ugyanakkor egyszer\u0171 forgat\u00f3k\u00f6nyvekben az MQTT jobban alkalmas inform\u00e1ci\u00f3cser\u00e9re az IoT h\u00e1l\u00f3zatokban, k\u00fcl\u00f6n\u00f6sen, ha nincsenek teljes\u00edtm\u00e9nykorl\u00e1toz\u00e1sok.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/cgweb1.northumbria.ac.uk\/SubjectAreaResources\/KF7046\/papers\/review\/iot\/lpb15.pdf\">M\u00e1s <\/a><\/noindex>A k\u00eds\u00e9rlet, amelyben az AMQP \u00e9s az MQTT lehet\u0151s\u00e9geit hasonl\u00edtott\u00e1k \u00f6ssze egy mobil vagy instabil vezet\u00e9k n\u00e9lk\u00fcli h\u00e1l\u00f3zati tesztpulton, azt mutatta, hogy az AMQP nagyobb biztons\u00e1gi lehet\u0151s\u00e9geket k\u00edn\u00e1l, m\u00edg az MQTT energiahat\u00e9konyabb.<\/p>\n<p><b>Biztons\u00e1g<\/b><\/p>\n<p>A biztons\u00e1g egy m\u00e1sik rendk\u00edv\u00fcl fontos k\u00e9rd\u00e9s, amely a dolgok internet\u00e9nek \u00e9s a k\u00f6d-\/felh\u0151alap\u00fa sz\u00e1m\u00edt\u00e1stechnika tanulm\u00e1nyoz\u00e1sakor mer\u00fcl fel. A biztons\u00e1gi mechanizmusok \u00e1ltal\u00e1ban a TLS-ra \u00e9p\u00fclnek a HTTP, MQTT, AMQP \u00e9s XMPP eset\u00e9ben, vagy DTLS-ra a CoAP-ban, valamint mindkett\u0151t t\u00e1mogat\u00f3 DDS-re.<\/p>\n<p>A TLS \u00e9s DTLS a kliens- \u00e9s szerveroldali kapcsolatok l\u00e9trehoz\u00e1s\u00e1val kezd\u0151dnek, hogy megossz\u00e1k a t\u00e1mogatott titkos\u00edt\u00e1si k\u00e9szleteket \u00e9s kulcsokat. Mindk\u00e9t f\u00e9l egyes\u00edti a k\u00e9szleteket, hogy biztos\u00edtsa, hogy a tov\u00e1bbi kommunik\u00e1ci\u00f3 biztons\u00e1gos csatorn\u00e1ban t\u00f6rt\u00e9njen. A k\u00fcl\u00f6nbs\u00e9g k\u00f6z\u00f6tt\u00fck apr\u00f3 m\u00f3dos\u00edt\u00e1sokban rejlik, amelyek lehet\u0151v\u00e9 teszik a DTLS sz\u00e1m\u00e1ra, hogy UDP alap\u00fa, megb\u00edzhatatlan kapcsolatban m\u0171k\u00f6dj\u00f6n.<\/p>\n<p>Mikor <noindex><a rel=\"nofollow\" href=\"http:\/\/www.isg.rhul.ac.uk\/tls\/lucky13.html\">teszt t\u00e1mad\u00e1sok<\/a><\/noindex> t\u00f6bb k\u00fcl\u00f6nb\u00f6z\u0151 TLS \u00e9s DTLS megval\u00f3s\u00edt\u00e1s ellen azt tapasztaltuk, hogy a TLS jobban teljes\u00edtett a feladatn\u00e1l. A DTLS ellen ir\u00e1nyul\u00f3 t\u00e1mad\u00e1sok sikeresebbek voltak, mivel a hiba toleranci\u00e1ja miatt k\u00f6nnyebben t\u00e1madhat\u00f3.<\/p>\n<p>Mindazon\u00e1ltal, a legnagyobb probl\u00e9ma ezekkel a protokollokkal az, hogy eredetileg nem voltak tervezve IoT k\u00f6rnyezetekben val\u00f3 haszn\u00e1latra, \u00e9s nem sz\u00e1m\u00edtottak a k\u00f6dben vagy felh\u0151ben val\u00f3 m\u0171k\u00f6d\u00e9sre. A k\u00e9zbes\u00edtett k\u00e9zfog\u00e1sok (handshaking) r\u00e9v\u00e9n minden egyes kapcsolat kialak\u00edt\u00e1s\u00e1val t\u00f6bbletfeladatokat adnak hozz\u00e1, amelyek kimer\u00edtik a sz\u00e1m\u00edt\u00e1si er\u0151forr\u00e1sokat. \u00c1tlagosan 6,5%-os n\u00f6veked\u00e9s figyelhet\u0151 meg a TLS \u00e9s 11%-os a DTLS eset\u00e9ben a biztons\u00e1gi szint n\u00e9lk\u00fcli kapcsolathoz k\u00e9pest. Azokban a k\u00f6rnyezetekben, ahol gazdag er\u0151forr\u00e1sok \u00e1llnak rendelkez\u00e9sre, amelyek \u00e1ltal\u00e1ban <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cloud4y.ru\/cloud-hosting\/cloud-server\/?utm_source=habr&amp;utm_medium=referral&amp;utm_campaign=article\">a felh\u0151ben tal\u00e1lhat\u00f3k <\/a><\/noindex>a szinten ez nem jelent probl\u00e9m\u00e1t, de az IoT \u00e9s a k\u00f6d szintje k\u00f6z\u00f6tti kapcsolat miatt ez fontos korl\u00e1toz\u00e1ss\u00e1 v\u00e1lik.<\/p>\n<p>Mit v\u00e1lasszunk? Nincs egy\u00e9rtelm\u0171 v\u00e1lasz. Az MQTT \u00e9s a HTTP t\u0171nnek a leg\u00edg\u00e9retesebb protokolloknak, mivel viszonylag \u00e9rettebb \u00e9s stabilabb megold\u00e1soknak sz\u00e1m\u00edtanak az IoT ter\u00fclet\u00e9n m\u00e1s protokollokhoz k\u00e9pest.<\/p>\n<h3>Egyetlen kommunik\u00e1ci\u00f3s protokollon alapul\u00f3 megold\u00e1sok<\/h3>\n<p>\nAz egy protokollos megold\u00e1snak rengeteg h\u00e1tr\u00e1nya van. P\u00e9ld\u00e1ul egy protokoll, amely egy korl\u00e1tozott k\u00f6rnyezethez megfelel\u0151, nem biztos, hogy m\u0171k\u00f6dik egy olyan tartom\u00e1nyban, amely szigor\u00fa biztons\u00e1gi k\u00f6vetelm\u00e9nyekkel b\u00edr. Ezt figyelembe v\u00e9ve, szinte minden egy protokollon alapul\u00f3 megold\u00e1st le kell vetn\u00fcnk a Fog-to-Cloud \u00f6kosziszt\u00e9m\u00e1ban az IoT ter\u00fclet\u00e9n, kiv\u00e9ve az MQTT-t \u00e9s a REST HTTP-t.<\/p>\n<p><b>REST HTTP mint egy protokollos megold\u00e1s<\/b><\/p>\n<p>J\u00f3 p\u00e9lda az IoT-to-Fog ter\u00fcleteken a REST HTTP k\u00e9r\u00e9sek \u00e9s v\u00e1laszok interakci\u00f3j\u00e1ra: <noindex><a rel=\"nofollow\" href=\"https:\/\/dl.acm.org\/citation.cfm?doid=3152130.3152140\">intelligens farm<\/a><\/noindex>. Az \u00e1llatok hordozhat\u00f3 \u00e9rz\u00e9kel\u0151kkel vannak ell\u00e1tva (IoT-kliens, C), \u00e9s egy felh\u0151alap\u00fa intelligens gazd\u00e1lkod\u00e1si rendszer (Fog-szerver, S) ir\u00e1ny\u00edtja \u0151ket.<\/p>\n<p>A POST m\u00f3dszer header\u00e9ben a m\u00f3dos\u00edtand\u00f3 er\u0151forr\u00e1s van megadva (\/_farm\/_animals), valamint HTTP verzi\u00f3 \u00e9s tartalomt\u00edpus, amely jelen esetben egy JSON objektum, ami a kezelend\u0151 \u00e1llatteny\u00e9szt\u00e9si farmot reprezent\u00e1lja (Dulcinea\/_teh\u00e9n). A szervert\u0151l \u00e9rkez\u0151 v\u00e1lasz jelzi, hogy a k\u00e9r\u00e9s sikeres volt, \u00e9s HTTPS 201 st\u00e1tusz k\u00f3dot k\u00fcld (resource created). A GET m\u00f3dszernek csak a k\u00e9rt er\u0151forr\u00e1st kell megadnia az URI-ban (p\u00e9ld\u00e1ul \/farm\/animals\/1), ami visszaadja a szerverr\u0151l az adott azonos\u00edt\u00f3val rendelkez\u0151 \u00e1llat JSON reprezent\u00e1ci\u00f3j\u00e1t. <\/p>\n<p>A PUT m\u00f3dszer akkor haszn\u00e1latos, amikor egy konkr\u00e9t er\u0151forr\u00e1s rekordot kell friss\u00edteni. Ebben az esetben az er\u0151forr\u00e1shoz a m\u00f3dos\u00edtand\u00f3 param\u00e9ter URI-ja \u00e9s a jelenlegi \u00e9rt\u00e9k (p\u00e9ld\u00e1ul ami azt jelzi, hogy a teh\u00e9n \u00e9ppen legel, \/farm\/animals\/1?state=walking) van megadva. V\u00e9g\u00fcl a DELETE m\u00f3dszert egyenl\u0151en haszn\u00e1lj\u00e1k a GET m\u00f3dszerrel, de csak t\u00f6rli az er\u0151forr\u00e1st a m\u0171velet eredm\u00e9nyek\u00e9nt. <\/p>\n<p><b>MQTT mint egy protokollos megold\u00e1s<\/b><\/p>\n<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/529857b556ea5a186ac1519e2804d1b8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVegy\u00fck ugyanazt az okosfarmot, de az REST HTTP helyett az MQTT protokollt haszn\u00e1ljuk. A helyi szerver, amelyen a Mosquitto k\u00f6nyvt\u00e1r telep\u00edtve van, broker szerepet t\u00f6lt be. Ebben a p\u00e9ld\u00e1ban egy egyszer\u0171 sz\u00e1m\u00edt\u00f3g\u00e9p (ami a farm szerverek\u00e9nt van megjel\u00f6lve), a Raspberry Pi MQTT kliensk\u00e9nt m\u0171k\u00f6dik, amelyet az MQTT Paho k\u00f6nyvt\u00e1r telep\u00edt\u00e9s\u00e9vel val\u00f3s\u00edtanak meg, teljes m\u00e9rt\u00e9kben kompatibilis a Mosquitto brokerrel.<\/p>\n<p>Ez a kliens megfelel az IoT absztrakci\u00f3s szintj\u00e9nek, amely egy \u00e9rz\u00e9kel\u00e9si \u00e9s sz\u00e1m\u00edt\u00e1si lehet\u0151s\u00e9gekkel rendelkez\u0151 eszk\u00f6zt k\u00e9pvisel. A k\u00f6zvet\u00edt\u0151 viszont egy magasabb absztrakci\u00f3s szintet k\u00e9pvisel, amely egy k\u00f6d sz\u00e1m\u00edt\u00e1si csom\u00f3pont, amely nagyobb sz\u00e1m\u00edt\u00e1si teljes\u00edtm\u00e9nnyel \u00e9s adatkezel\u00e9si kapacit\u00e1ssal jellemezhet\u0151.<\/p>\n<p>A javasolt \u201eokosfarm\u201d forgat\u00f3k\u00f6nyvben a Raspberry Pi csatlakozik egy gyorsul\u00e1sm\u00e9r\u0151h\u00f6z, GPS-hez \u00e9s h\u0151m\u00e9rs\u00e9klet-\u00e9rz\u00e9kel\u0151kh\u00f6z, \u00e9s az \u00e9rz\u00e9kel\u0151kr\u0151l sz\u00e1rmaz\u00f3 adatokat k\u00f6d csom\u00f3pontba publik\u00e1lja. Ahogy val\u00f3sz\u00edn\u0171leg tudja, az MQTT a t\u00e9m\u00e1kat hierarchiak\u00e9nt kezeli. Egy MQTT kiad\u00f3 bizonyos t\u00e9m\u00e1k halmaz\u00e1ban publik\u00e1lhat \u00fczeneteket. A mi eset\u00fcnkben ezekb\u0151l h\u00e1rom van. Az \u00e1llatok ist\u00e1ll\u00f3j\u00e1ban m\u00e9rt h\u0151m\u00e9rs\u00e9kletet m\u00e9r\u0151 \u00e9rz\u00e9kel\u0151 eset\u00e9n a kliens az (animalfarm\/shed\/temperature) t\u00e9m\u00e1t v\u00e1lasztja. A GPS helymeghat\u00e1roz\u00e1s \u00e9s az \u00e1llatok mozg\u00e1s\u00e1nak m\u00e9r\u00e9s\u00e9re szolg\u00e1l\u00f3 \u00e9rz\u00e9kel\u0151k eset\u00e9ben a kliens friss\u00edt\u00e9seket tesz k\u00f6zz\u00e9 (animalfarm\/animal\/GPS) \u00e9s (animalfarm\/animal\/movement).<\/p>\n<p>Ez az inform\u00e1ci\u00f3 a brokerhez ker\u00fcl, amely ideiglenesen t\u00e1rolhatja azt egy helyi adatb\u00e1zisban, arra az esetre, ha k\u00e9s\u0151bb egy m\u00e1sik \u00e9rdekl\u0151d\u0151 el\u0151fizet\u0151 jelenne meg.<\/p>\n<p>A helyi szerver mellett, amely az MQTT broker szerep\u00e9t t\u00f6lti be a k\u00f6dben, \u00e9s amelyhez a Raspberry Pi, mint MQTT kliensek, k\u00fcldik az \u00e9rz\u00e9kel\u0151kt\u0151l sz\u00e1rmaz\u00f3 adatokat, az felh\u0151szinten lehet m\u00e9g egy m\u00e1sik MQTT broker is. Ebben az esetben a helyi brokerhez tov\u00e1bb\u00edtott inform\u00e1ci\u00f3 ideiglenesen t\u00e1rolhat\u00f3 a helyi adatb\u00e1zisban \u00e9s\/vagy elk\u00fcldhet\u0151 a felh\u0151be. A k\u00f6dMQTT broker ebben a helyzetben a felh\u0151beli MQTT brokerhez k\u00f6t\u0151d\u0151 \u00f6sszes adat \u00f6sszekapcsol\u00e1s\u00e1ra szolg\u00e1l. Ilyen architekt\u00far\u00e1val a mobilalkalmaz\u00e1s felhaszn\u00e1l\u00f3ja mindk\u00e9t brokerre feliratkozhat.<\/p>\n<p>Ha megszakad a kapcsolat az egyik br\u00f3kerrel (p\u00e9ld\u00e1ul a felh\u0151vel), a v\u00e9gfelhaszn\u00e1l\u00f3 inform\u00e1ci\u00f3t kap egy m\u00e1sikt\u00f3l (a k\u00f6db\u0151l). Ez a k\u00f6d\u00f6s \u00e9s felh\u0151 alap\u00fa sz\u00e1m\u00edt\u00e1stechnikai rendszerek jellemz\u0151je. Alap\u00e9rtelmez\u00e9s szerint a mobilalkalmaz\u00e1s az els\u0151 kapcsolatot a k\u00f6dbeli MQTT-br\u00f3kerrel l\u00e9tes\u00edti, \u00e9s ha ez nem siker\u00fcl, akkor a felh\u0151beli MQTT-br\u00f3kerhez csatlakozik. Ez a megold\u00e1s csak egy a sok k\u00f6z\u00fcl az IoT-F2C rendszerekben. <\/p>\n<h3>T\u00f6bbprotokollos megold\u00e1sok<\/h3>\n<p>\nAz egy protokollos megold\u00e1sok n\u00e9pszer\u0171ek, mert k\u00f6nnyebben megval\u00f3s\u00edthat\u00f3k. De nyilv\u00e1nval\u00f3, hogy az IoT-F2C rendszerekben \u00e9rdemes k\u00fcl\u00f6nb\u00f6z\u0151 protokollokat kombin\u00e1lni. Az a l\u00e9nyeg, hogy k\u00fcl\u00f6nb\u00f6z\u0151 szinteken k\u00fcl\u00f6nb\u00f6z\u0151 protokollok m\u0171k\u00f6dhetnek. Vegy\u00fcnk p\u00e9ld\u00e1ul h\u00e1rom absztrakci\u00f3t: IoT, k\u00f6d \u00e9s felh\u0151sz\u00e1m\u00edt\u00e1st. Az IoT szinten l\u00e9v\u0151 eszk\u00f6z\u00f6k \u00e1ltal\u00e1ban korl\u00e1tozottak. E fel\u00fclvizsg\u00e1lat sor\u00e1n tekints\u00fck az IoT szintet a legkorl\u00e1tozottabbnak, a felh\u0151t a legkev\u00e9sb\u00e9 korl\u00e1tozottk\u00e9nt \u00e9s a k\u00f6d sz\u00e1m\u00edt\u00e1st pedig \u201evalahol a k\u00f6z\u00e9pen\u201d. Ez\u00e9rt a k\u00f6d \u00e9s az IoT absztrakci\u00f3k k\u00f6z\u00f6tt a jelenlegi protokollmegold\u00e1sok k\u00f6z\u00e9 tartozik az MQTT, CoAP \u00e9s XMPP. A k\u00f6d \u00e9s a felh\u0151 k\u00f6z\u00f6tt pedig az AMQP az egyik legfontosabb haszn\u00e1lt protokoll, egy\u00fctt a REST HTTP-val, amely a rugalmass\u00e1ga miatt szint\u00e9n haszn\u00e1latos az IoT \u00e9s a k\u00f6dszintek k\u00f6z\u00f6tt. <\/p>\n<p>A legnagyobb probl\u00e9ma itt a protokollok funkcion\u00e1lis kompatibilit\u00e1sa \u00e9s az \u00fczenetek egyik protokollb\u00f3l a m\u00e1sikba val\u00f3 egyszer\u0171 \u00e1tkonvert\u00e1l\u00e1sa. Ide\u00e1lisan, a j\u00f6v\u0151ben az IoT rendszer architekt\u00far\u00e1ja felh\u0151- \u00e9s k\u00f6dforr\u00e1sokkal f\u00fcggetlen lenne a haszn\u00e1lt kommunik\u00e1ci\u00f3s protokollt\u00f3l, \u00e9s j\u00f3 interakci\u00f3t biztos\u00edtana a k\u00fcl\u00f6nb\u00f6z\u0151 protokollok k\u00f6z\u00f6tt.<\/p>\n<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/cddc564cad572966002ae22eff8cb99d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nMivel jelenleg ez nem \u00edgy van, \u00e9rdemes egyes\u00edteni azokat a protokollokat, amelyek nem jelentenek jelent\u0151s elt\u00e9r\u00e9st. Ennek \u00e9rdek\u00e9ben egy potenci\u00e1lis megold\u00e1s k\u00e9t, azonos architektur\u00e1lis st\u00edlust k\u00f6vet\u0151 protokoll kombin\u00e1ci\u00f3j\u00e1ra \u00e9p\u00fcl, a REST HTTP-ra \u00e9s a CoAP-ra. Egy m\u00e1sik javasolt megold\u00e1s k\u00e9t, 'k\u00f6zz\u00e9t\u00e9tel-el\u0151fizet\u00e9s' modellt k\u00edn\u00e1l\u00f3 protokoll, az MQTT \u00e9s az AMQP egyes\u00edt\u00e9s\u00e9n alapul. A k\u00f6zeli koncepci\u00f3k haszn\u00e1lata (az MQTT \u00e9s az AMQP is br\u00f3kereket, a CoAP \u00e9s az HTTP pedig REST-t haszn\u00e1l), megk\u00f6nny\u00edti ezen kombin\u00e1ci\u00f3k megval\u00f3s\u00edt\u00e1s\u00e1t \u00e9s kevesebb er\u0151fesz\u00edt\u00e9st ig\u00e9nyel az integr\u00e1ci\u00f3hoz.<\/p>\n<p><img decoding=\"async\" alt=\"IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lgess\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l?\" src=\"\/wp-content\/uploads\/2019\/09\/395bc75880a154aeab7b61d043476802.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA \u00e1br\u00e1n (a) l\u00e1that\u00f3 k\u00e9t, a k\u00e9r\u00e9s-v\u00e1lasz alap\u00fa HTTP \u00e9s CoAP modellek, valamint azok lehets\u00e9ges elhelyezked\u00e9se az IoT-F2C megold\u00e1sban. Mivel a HTTP az egyik legismertebb \u00e9s a modern h\u00e1l\u00f3zatokban legjobban alkalmazott protokoll, val\u00f3sz\u00edn\u0171tlen, hogy teljesen m\u00e1s \u00fczenetk\u00fcld\u0151 protokollokkal helyettes\u00edten\u00e9k. Az er\u0151forr\u00e1sokkal rendelkez\u0151 eszk\u00f6z\u00f6k k\u00f6z\u00f6tt, amelyek a felh\u0151 \u00e9s a k\u00f6d k\u00f6z\u00f6tt helyezkednek el, a REST HTTP \u00e9sszer\u0171 megold\u00e1s.<\/p>\n<p>M\u00e1sr\u00e9szr\u0151l a korl\u00e1tozott sz\u00e1m\u00edt\u00e1si kapacit\u00e1ssal rendelkez\u0151 eszk\u00f6z\u00f6kn\u00e9l, amelyek a k\u00f6d \u00e9s az IoT szintek k\u00f6z\u00f6tt kommunik\u00e1lnak, hat\u00e9konyabb a CoAP haszn\u00e1lata. A CoAP egyik nagy el\u0151nye val\u00f3j\u00e1ban a HTTP-val val\u00f3 kompatibilit\u00e1sa, mivel mindk\u00e9t protokoll a REST elvein alapul.<\/p>\n<p>A \u00e1br\u00e1n (b) l\u00e1that\u00f3 k\u00e9t \u00abpublik\u00e1l\u00e1s-feliratkoz\u00e1s\u00bb interakci\u00f3s modell egy forgat\u00f3k\u00f6nyvben, bele\u00e9rtve az MQTT-t \u00e9s az AMQP-t. B\u00e1r hipotetikusan mindk\u00e9t protokoll haszn\u00e1lhat\u00f3 a csom\u00f3pontok k\u00f6z\u00f6tti kommunik\u00e1ci\u00f3ra minden absztrakci\u00f3s szinten, a pozicion\u00e1l\u00e1sukat a teljes\u00edtm\u00e9ny\u00fck alapj\u00e1n kell meghat\u00e1rozni. Az MQTT-t \u00fagy tervezt\u00e9k, mint egy egyszer\u0171s\u00edtett protokollt a korl\u00e1tozott sz\u00e1m\u00edt\u00e1si kapacit\u00e1ssal rendelkez\u0151 eszk\u00f6z\u00f6k sz\u00e1m\u00e1ra, ez\u00e9rt a k\u00f6d \u00e9s az IoT k\u00f6z\u00f6tti kommunik\u00e1ci\u00f3ra is haszn\u00e1lhat\u00f3. Az AMQP jobban megfelel\u0151 a nagyobb teljes\u00edtm\u00e9ny\u0171 eszk\u00f6z\u00f6kh\u00f6z, amelyeket ide\u00e1lisan a k\u00f6d \u00e9s a felh\u0151 csom\u00f3pontjai k\u00f6z\u00e9 lehet helyezni. Az IoT-ban az MQTT helyett az XMPP protokollt is lehet haszn\u00e1lni, mivel k\u00f6nny\u0171s\u00faly\u00fanak sz\u00e1m\u00edt. De nem olyan sz\u00e9les k\u00f6rben haszn\u00e1lj\u00e1k hasonl\u00f3 forgat\u00f3k\u00f6nyvekben.<\/p>\n<h3>K\u00f6vetkeztet\u00e9sek<\/h3>\n<p>\nVal\u00f3sz\u00edn\u0171tlen, hogy a vizsg\u00e1lt protokollok egyike elegend\u0151 lenne a rendszer \u00f6sszes kommunik\u00e1ci\u00f3j\u00e1nak lefed\u00e9s\u00e9re, a korl\u00e1tozott sz\u00e1m\u00edt\u00e1si kapacit\u00e1ssal rendelkez\u0151 eszk\u00f6z\u00f6kt\u0151l kezdve a felh\u0151 szerverekig. A kutat\u00e1s azt mutatta, hogy a k\u00e9t leg\u00edg\u00e9retesebb lehet\u0151s\u00e9g, amelyet a fejleszt\u0151k gyakrabban haszn\u00e1lnak, az MQTT \u00e9s a RESTful HTTP. Ezek a protokollok nemcsak a leg\u00e9rettebbek \u00e9s legstabilabbak, hanem sz\u00e1mos j\u00f3l dokument\u00e1lt \u00e9s sikeres megval\u00f3s\u00edt\u00e1st \u00e9s online er\u0151forr\u00e1st is tartalmaznak.<\/p>\n<p>Stabilit\u00e1sa \u00e9s egyszer\u0171 konfigur\u00e1ci\u00f3ja r\u00e9v\u00e9n az MQTT olyan protokoll, amely id\u0151vel kiv\u00e1l\u00f3 teljes\u00edtm\u00e9ny\u00e9t bizony\u00edtotta az IoT szintj\u00e9n korl\u00e1tozott eszk\u00f6z\u00f6k haszn\u00e1lata sor\u00e1n. Azokban a rendszer r\u00e9szekben, ahol a korl\u00e1tozott kapcsolat \u00e9s az energiafogyaszt\u00e1s nem probl\u00e9ma, p\u00e9ld\u00e1ul a k\u00f6d bizonyos ter\u00fcletein \u00e9s a legt\u00f6bb felh\u0151alap\u00fa sz\u00e1m\u00edt\u00e1s ter\u00fclet\u00e9n, a RESTful HTTP egyszer\u0171 v\u00e1laszt\u00e1s. A CoAP-ot is \u00e9rdemes figyelembe venni, mivel szint\u00e9n gyorsan fejl\u0151dik az IoT \u00fczenetk\u00fcld\u00e9si szabv\u00e1nyk\u00e9nt, \u00e9s val\u00f3sz\u00edn\u0171, hogy a k\u00f6zelj\u00f6v\u0151ben el\u00e9ri az MQTT \u00e9s a HTTP szintj\u00e9ig stabilit\u00e1s\u00e1t \u00e9s \u00e9retts\u00e9g\u00e9t. Azonban a szabv\u00e1ny jelenleg fejl\u0151dik, ami r\u00f6vid t\u00e1v\u00fa kompatibilit\u00e1si probl\u00e9m\u00e1kkal j\u00e1r.<\/p>\n<p><b>Milyen hasznos dolgokat olvashat m\u00e9g a blogban <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cloud4y.ru\/?utm_source=habr&amp;utm_medium=referral&amp;utm_campaign=article\">Cloud4Y<\/a><\/noindex><\/b><\/p>\n<p>\u2192 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/cloud4y\/blog\/466755\/\">A sz\u00e1m\u00edt\u00f3g\u00e9p finom \u00e9telt fog k\u00e9sz\u00edteni.<\/a><\/noindex><br \/>\n\u2192 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/464155\/\">Az AI seg\u00edt tanulm\u00e1nyozni Afrika \u00e1llatait <\/a><\/noindex><br \/>\n\u2192 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/cloud4y\/blog\/465251\/\">A ny\u00e1r majdnem v\u00e9get \u00e9rt. Szinte nincs elveszett adat.<\/a><\/noindex><br \/>\n\u2192 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/461713\/\">4 m\u00f3dszer a felh\u0151beli biztons\u00e1gi ment\u00e9seken val\u00f3 megtakar\u00edt\u00e1shoz<\/a><\/noindex><br \/>\n\u2192 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/cloud4y\/blog\/467769\/\">Egy egys\u00e9ges \u00e1llami inform\u00e1ci\u00f3s er\u0151forr\u00e1s, amely inform\u00e1ci\u00f3kat tartalmaz a n\u00e9pr\u0151l.<\/a><\/noindex><\/p>\n<p>Iratkozzon fel az <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/cloud4y\">Telegram<\/a><\/noindex>-csatorn\u00e1nkra, hogy ne maradjon le a leg\u00fajabb cikk\u00fcnkr\u0151l! Hetente legfeljebb k\u00e9tszer \u00edrunk \u00e9s csak hasznos tartalommal.<br \/>\n<br \/>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/cloud4y\/blog\/467711\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438 \u0436\u0435\u043b\u0435\u0437\u0430, \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u0441\u0432\u044f\u0437\u0438 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u043a \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0432\u0435\u0449\u0435\u0439 (IoT). \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0440\u0430\u0441\u0442\u0451\u0442 \u0434\u0435\u043d\u044c \u043e\u0442\u043e \u0434\u043d\u044f, \u0438 \u043e\u043d\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0442 \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u043e\u0431\u044a\u0451\u043c \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u044c \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c, \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435. \u0421\u0435\u0439\u0447\u0430\u0441 \u0434\u043b\u044f \u044d\u0442\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0449\u0430\u044f\u0441\u044f \u0432\u0441\u0451 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28806,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-38375","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/news\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47IoT, \u0442\u0443\u043c\u0430\u043d \u0438 \u043e\u0431\u043b\u0430\u043a\u0430: \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/news\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:23:21+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:23:21+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47IoT, k\u00f6d \u00e9s felh\u0151k: besz\u00e9lj\u00fcnk a technol\u00f3gi\u00e1kr\u00f3l? | ProHoster","description":"A szoftverek ter\u00e9n zajl\u00f3 technol\u00f3giai fejl\u0151d\u00e9s.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/news\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47IoT, \u0442\u0443\u043c\u0430\u043d \u0438 \u043e\u0431\u043b\u0430\u043a\u0430: \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438? | ProHoster","og:description":"\u0420\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438.","og:url":"https:\/\/prohoster.info\/hu\/blog\/news\/iot-tuman-i-oblaka-pogovorim-pro-tehnologii","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:23:21+00:00","article:modified_time":"2019-10-31T19:23:21+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38375","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 21:45:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:10:24","updated":"2026-01-23 21:45:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/38375","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=38375"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/38375\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/28806"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=38375"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=38375"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=38375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}