Doriți să implementați în cadrul companiei dvs o suită de soluții moderne, pentru eficientizarea și protejarea afacerii?
Așteptăm întrebările dvs.
presales@openvision.ro
OPENVISION DATA SRL | J23/4326/2023 | RO16028466 | Solutii IT pentru companii de succes
Str. Elena Clucereasa 2, Sector 1, București, Romania
presales@openvision.ro
Copyright © Openvision Data 2004-2024
1. CE ESTE MQTT?
MQTT înseamnă Message Queuing Telemetry Transport. Este un protocol ușor de mesagerie pentru utilizare, în cazurile în care clienții au nevoie de o mică amprentă de cod și sunt conectați la rețele sau rețele nesigure cu resurse de lățime de bandă limitate. Este utilizat în principal pentru comunicarea de la mașină la mașină (M2M) sau tipurile de conexiuni Internet of Things.
2. ISTORIE
MQTT a fost inițial creat de Dr. Andy Stanford-Clark și Arlen Nipper în 1999. Scopul inițial al metodei de comunicare a fost acela de a permite dispozitivelor de monitorizare utilizate în industria petrolului și a gazelor să își trimită datele către serverele la distanță. În multe cazuri, astfel de dispozitive de monitorizare au fost utilizate în locații îndepărtate, unde orice fel de linie fixă, conexiune cu fir sau conexiune de transmisie radio ar fi dificilă sau imposibil de stabilit. La acea vreme, singura opțiune pentru astfel de cazuri era comunicațiile prin satelit, care erau foarte scumpe și facturate în funcție de cantitatea de date folosite. Cu mii de senzori în domeniu, industria a avut nevoie de o formă de comunicare care să poată oferi date suficient de fiabile pentru utilizare, folosind în același timp o lățime de bandă minimă.
MQTT a fost standardizat ca sursă deschisă în cadrul Organizației pentru Îmbunătățirea Standardelor Informaționale Structurate (OASIS) în 2013. OASIS gestionează în continuare standardul MQTT.
3. ARHITECTURA MQTT
MQTT rulează pe TCP / IP folosind o tipologie PUSH / SUBSCRIBE. În arhitectura MQTT, există două tipuri de sisteme: clienți și brokeri. Un broker este serverul cu care clienții comunică. Brokerul primește comunicări de la clienți și trimite aceste comunicări către alți clienți. Clienții nu comunică direct între ei, ci mai degrabă se conectează la broker. Fiecare client poate fi fie editor, abonat sau ambii.
MQTT este un protocol bazat pe evenimente. Nu există transmisie periodică sau continuă a datelor. Aceasta menține transmisia la minimum. Un client publică numai atunci când există informații care trebuie trimise, iar un broker trimite informații doar abonaților atunci când sosesc date noi.
4. ARHITECTURA MESAJELOR
Un alt mod prin care MQTT reduce la minimum transmisiile sale este cu o construcție de mesaj mică, bine definită. Fiecare mesaj are un antet fix de doar 2 octeți. Se poate folosi un antet opțional, dar crește dimensiunea mesajului. Sarcina utilă a mesajului este limitată la doar 256 MB. Trei niveluri diferite ale calității serviciilor (QoS) permit proiectanților de rețea să aleagă între minimizarea transmiterii datelor și maximizarea fiabilității.
Pentru situațiile în care comunicațiile sunt fiabile, dar limitate, QoS 0 poate fi cea mai bună opțiune. Pentru situațiile în care comunicațiile nu sunt de încredere, dar în care conexiunile nu sunt la fel de limitate de resurse, atunci QoS 2 ar fi cea mai bună opțiune. QoS 1 oferă un fel de cea mai bună soluție din ambele lumi, dar necesită ca aplicația care primește datele să știe să gestioneze duplicatele.
Atât pentru QoS 1 cât și pentru QoS 2, mesajele sunt salvate sau puse în coadă pentru clienții care nu sunt conectati și care au o sesiune persistentă stabilită. Aceste mesaje sunt trimise din nou (în funcție de nivelul QoS corespunzător) odată ce clientul este din nou online.
5. SUBIECTE
Mesajele din cadrul MQTT sunt publicate ca subiecte. Subiectele sunt structuri dintr-o ierarhie folosind caracterul slash (/) ca delimitator. Această structură seamănă cu cea a unui arbore de directoare pe un sistem de fișiere computer. O structură precum senzori / OilandGas / Pressure / permite unui abonat să precizeze că ar trebui să fie trimise doar date de la clienții care publică subiectul Pressure, sau pentru o vizualizare mai largă, probabil toate datele de la clienți care publică pe orice senzori / OilandGas subiect . Subiectele nu sunt create în mod explicit în MQTT. Dacă un broker primește date publicate pe un subiect care nu există în prezent, subiectul este creat simplu, iar clienții se pot abona la noul subiect.
6. MESAJE RETINUTE
Pentru a menține amprenta mică, mesajele primite nu sunt stocate pe broker decât dacă sunt marcate cu steagul reținut. Aceasta se numește un mesaj reținut. Utilizatorii care doresc să stocheze mesajele primite vor trebui să le stocheze în altă parte în afara protocolului MQTT. Există o excepție.
Ca un protocol bazat pe evenimente, este posibil, chiar probabil, ca un abonat să primească foarte puține mesaje pentru un anumit subiect, chiar și pe o perioadă lungă de timp. În structura subiectului menționată anterior, poate mesajele către subiectul Pressure sunt trimise doar atunci când un senzor detectează că presiunea a depășit o anumită cantitate. Presupunând că orice monitorizare a acestui senzor nu reușește, adesea ar putea trece luni sau chiar ani înainte ca un client să publice un mesaj la subiectul respectiv.
Pentru a vă asigura că un nou abonat primește mesajele de la un subiect, brokerii pot păstra ultimul mesaj trimis fiecărui subiect. Aceasta se numește un mesaj reținut. Ori de câte ori un nou client se abonează la un subiect sau când un client existent revine online, mesajul reținut este trimis abonaților, asigurând astfel că abonamentul este activ și că are cele mai recente informații.
7. ULTIMA DORINTA SI TESTAMENT
În cazul în care comunicațiile sunt fiabile, este posibil ca un editor să se deconecteze de la rețea fără avertisment. Un editor poate înregistra un mesaj care să fie trimis abonaților în cazul în care editorul se deconectează în mod neașteptat, aceasta este o așa-numită ultimă dorinta și testament. Acest mesaj este cache pe broker și este trimis abonaților în cazul în care editorul se deconectează în mod necorespunzător. De obicei, un astfel de mesaj include informații care să permită identificarea editorului deconectat, astfel încât să poată fi luate măsurile adecvate.
8. MESAJELE MQTT
Pentru a menține protocolul mic, există doar patru acțiuni posibile cu orice comunicare: publicare, abonare, dezabonare sau ping.
9. SECURITATE
Scopul inițial al protocolului MQTT a fost acela de a face cea mai mică și mai eficientă transmisie de date pe linii de comunicare scumpe și nesigure. Ca atare, securitatea nu a fost o preocupare primordială în timpul proiectării și implementării MQTT.
Cu toate acestea, există câteva opțiuni de securitate disponibile cu costul unei transmisii de date mai mari și a unei amprente mai mari.
Multe cazuri de utilizare necesită un nume de utilizator și o parolă nu ca protecție împotriva actorilor de rea-credință, ci ca o modalitate de a evita conexiunile neintenționate.
10. Actualizări standard MQTT v5.0
Pe 3 aprilie 2019, OASIS a publicat standardul oficial MQTT v5.0
Caracteristici majore noi MQTT v5.0
Sursa: https://www.paessler.com/it-explained/mqtt
Recent Posts
Recent Comments
Recent Posts
Procedura adaugare Out Of Office (OOO) pentru
June 20, 20246 sfaturi de securitate pentru angajații care
March 22, 2024Impactul atacurilor de tip ransomware asupra îngrijirii
February 27, 20247 greșeli de securitate în cloud pe
February 23, 2024Categories