MQTT, που σημαίνει Message Queuing Telemetry Transport, είναι ένα ελαφρύ πρωτόκολλο ανταλλαγής μηνυμάτων που έχει σχεδιαστεί για περιορισμένες συσκευές και δίκτυα χαμηλού εύρους ζώνης και υψηλής καθυστέρησης. Είναι ιδιαίτερα χρήσιμο για απομακρυσμένες συνδέσεις όπου απαιτείται μικρό αποτύπωμα κώδικα ή το εύρος ζώνης δικτύου είναι περιορισμένο.
Το MQTT 5 είναι η πιο πρόσφατη έκδοση του πρωτοκόλλου, προσφέροντας πολλές βελτιώσεις σε σχέση με τους προκατόχους του. Οι νέες δυνατότητες περιλαμβάνουν κωδικούς αιτιολογίας, διαστήματα λήξης περιόδου σύνδεσης, ψευδώνυμα θεμάτων, ιδιότητες χρήστη, επιλογές συνδρομής, λειτουργίες αιτήματος/απόκρισης και κοινόχρηστες συνδρομές.
Θα εξερευνήσουμε αυτές τις νέες δυνατότητες, θα εξηγήσουμε πώς οι δημοφιλείς μεσίτες και τα SDK πελατών υποστηρίζουν το MQTT 5 και ορισμένα βασικά ζητήματα κατά τη μετεγκατάσταση από το MQTT 3.1.1 στο MQTT 5.
Σύντομη ιστορία και εξέλιξη του MQTT 5
Το MQTT αναπτύχθηκε για πρώτη φορά στα τέλη της δεκαετίας του 1990 από τον Δρ. Andy Stanford-Clark της IBM και τον Arlen Nipper της Arcom (τώρα Eurotech), για την παρακολούθηση των αγωγών πετρελαίου μέσω δορυφορικών δικτύων. Η αρχική έκδοση, MQTT v3.1, σχεδιάστηκε για να είναι ελαφριά και εύκολη στην εφαρμογή, καθιστώντας την κατάλληλη για πολλές συσκευές IoT.
Το MQTT 3.1.1, ένα πρότυπο OASIS, κυκλοφόρησε το 2014, το οποίο περιλάμβανε μικρές αλλαγές στο πρωτόκολλο για τη βελτίωση της σαφήνειας και της διαλειτουργικότητάς του. Η απλότητα και η αποτελεσματικότητά του στην παράδοση μηνυμάτων μέσω δικτύων με περιορισμένους πόρους οδήγησε στην ευρεία υιοθέτησή του σε εφαρμογές IoT.
Ωστόσο, καθώς εξελίχθηκε ο κλάδος του IoT, το ίδιο εξελίχθηκαν και οι ανάγκες των εφαρμογών του. Αυτό οδήγησε στην ανάπτυξη του MQTT 5, που κυκλοφόρησε το 2019, το οποίο εισήγαγε νέα χαρακτηριστικά για την αντιμετώπιση αυτών των μεταβαλλόμενων αναγκών. Με τα βελτιωμένα χαρακτηριστικά του, το MQTT 5 είναι καλύτερα εξοπλισμένο για να χειρίζεται τις περίπλοκες απαιτήσεις των σύγχρονων εφαρμογών IoT.
7 νέες δυνατότητες στο MQTT v5
Κωδικοί αιτίας: Κατανόηση αποσυνδέσεων ή αποτυχιών
Σε αντίθεση με τους προκατόχους του, το MQTT 5 μπορεί να παρέχει α κωδικός αιτίας για κάθε πακέτο επιβεβαίωσης, δίνοντάς μας μια καλύτερη κατανόηση του γιατί συνέβη μια αποσύνδεση ή αποτυχία. Αυτή η βελτίωση βοηθά στην αντιμετώπιση προβλημάτων και επιτρέπει πιο ακριβή χειρισμό σφαλμάτων.
Για παράδειγμα, εάν ένας πελάτης αποτύχει να συνδεθεί στον διακομιστή, ο διακομιστής θα επιστρέψει έναν κωδικό αιτίας που θα εξηγεί γιατί η σύνδεση ήταν ανεπιτυχής. Αυτό μπορεί να οφείλεται σε μια σειρά ζητημάτων, από λανθασμένα διαπιστευτήρια σύνδεσης έως μη διαθέσιμο διακομιστή.
Διαστήματα λήξης περιόδου σύνδεσης: Διαχείριση χρόνου ζωής συνεδρίας
Αυτή η δυνατότητα επιτρέπει στον πελάτη να καθορίσει τον τρόπο για πολύ καιρό ο διακομιστής θα πρέπει να διατηρήσει τη σύνοδό του μετά την αποσύνδεση του πελάτη. Σε προηγούμενες εκδόσεις MQTT, μια περίοδος σύνδεσης είτε τελείωνε αμέσως μετά την αποσύνδεση είτε συνεχιζόταν επ' αόριστον.
Με το MQTT 5, μπορείτε να ορίσετε μια συγκεκριμένη περίοδο για την οποία η συνεδρία θα πρέπει να διατηρείται ζωντανή μετά την αποσύνδεση. Αυτό παρέχει μεγαλύτερη ευελιξία στη διαχείριση της διάρκειας ζωής συνεδρίας και εξοικονομεί πόρους στον διακομιστή.
Το MQTT 5 εισάγει ψευδώνυμα θέματος για να μειώσετε τα γενικά έξοδα στις κεφαλίδες μηνυμάτων. Σε προηγούμενες εκδόσεις, το όνομα θέματος έπρεπε να περιλαμβάνεται σε κάθε μήνυμα, οδηγώντας σε μεγαλύτερα μεγέθη πακέτων.
Με ψευδώνυμα θέματος, ένα σύντομο αριθμητικό ψευδώνυμο μπορεί να εκχωρηθεί σε ένα θέμα. Αυτό το ψευδώνυμο μπορεί να χρησιμοποιηθεί στη θέση του πλήρους ονόματος θέματος σε επόμενα μηνύματα, μειώνοντας σημαντικά το μέγεθος της κεφαλίδας MQTT και διατηρώντας το εύρος ζώνης δικτύου.
Αυτή η δυνατότητα επιτρέπει στους χρήστες να περιλαμβάνουν προσαρμοσμένα μεταδεδομένα στις κεφαλίδες των πακέτων MQTT. Αυτό μπορεί να είναι ιδιαίτερα χρήσιμο για εφαρμογές που πρέπει να στείλουν πρόσθετες πληροφορίες με τα μηνύματά τους MQTT, όπως η χρονική σήμανση του μηνύματος, η τοποθεσία της συσκευής ή άλλα δεδομένα για συγκεκριμένη εφαρμογή Οι ιδιότητες χρήστη παρέχουν μεγαλύτερη ευελιξία και έλεγχο στα μηνύματα MQTT.
Επιλογές συνδρομής: Λεπτά στοιχεία ελέγχου συνδρομής
Το MQTT 5 επιτρέπει στους πελάτες να καθορίσουν πώς θέλουν να λαμβάνουν μηνύματα για κάθε εγγεγραμμένο θέμα. Για παράδειγμα, οι πελάτες μπορούν τώρα να καθορίσουν εάν θέλουν να λαμβάνουν διατηρημένα μηνύματα για μια συγκεκριμένη συνδρομή ή εάν θέλουν να λαμβάνουν μηνύματα ακόμα κι αν έχουν το ίδιο επίπεδο QoS (Ποιότητα υπηρεσίας) με τη συνδρομή.
Αίτημα/Απάντηση: Επιτρέποντας στους πελάτες να απαντήσουν σε ένα καθορισμένο θέμα
Η δυνατότητα αίτησης/απόκρισης επιτρέπει σε έναν πελάτη να καθορίσει ένα θέμα που μπορεί να χρησιμοποιήσει ο διακομιστής για να στείλει μια άμεση απάντηση.
Σε παλαιότερες εκδόσεις του MQTT, εάν ένας πελάτης ήθελε να στείλει μια απάντηση σε ένα μήνυμα, έπρεπε να δημοσιεύσει την απάντηση σε ένα θέμα και ο αρχικός αποστολέας έπρεπε να εγγραφεί σε αυτό το θέμα για να λάβει την απάντηση. Με τη δυνατότητα αιτήματος/απόκρισης του MQTT 5, η επικοινωνία μεταξύ πελατών και διακομιστών γίνεται πολύ πιο αποτελεσματική και απλή.
Κοινόχρηστη συνδρομή: Λειτουργία εξισορρόπησης φορτίου για συνδρομητές
Αυτή η δυνατότητα επιτρέπει σε πολλούς πελάτες να μοιράζονται μια συνδρομή. Όταν ένα μήνυμα δημοσιεύεται σε ένα κοινόχρηστο θέμα, ο διακομιστής διανέμει το μήνυμα σε έναν από τους πελάτες στην κοινόχρηστη συνδρομή, εξισορροπώντας αποτελεσματικά τα μηνύματα.
Αυτή η δυνατότητα είναι ιδιαίτερα χρήσιμη σε σενάρια όπου εκτελούνται πολλές περιπτώσεις μιας υπηρεσίας και θέλετε να κατανείμετε ομοιόμορφα τον φόρτο εργασίας μεταξύ τους.
Τρέχουσα υποστήριξη SDK μεσιτών και πελατών στο MQTT 5.0
Το πρωτόκολλο MQTT 5.0 έτυχε θετικής υποδοχής από την κοινότητα του IoT και πολυάριθμα Μεσίτες MQTT και τα κιτ ανάπτυξης λογισμικού πελάτη (SDK) έχουν προσθέσει υποστήριξη για αυτό. Μεγάλοι μεσίτες MQTT έχουν ήδη εφαρμόσει λειτουργίες MQTT 5.0 στις πλατφόρμες τους, επιτρέποντας στους χρήστες να αξιοποιήσουν τα οφέλη του νέου πρωτοκόλλου.
Στο μέτωπο του SDK πελάτη, βιβλιοθήκες όπως η Paho, οι οποίες διαθέτουν ευρεία βάση χρηστών, έχουν προσθέσει υποστήριξη για το MQTT 5.0. Αυτό σημαίνει ότι οι προγραμματιστές μπορούν πλέον να χρησιμοποιούν τις δυνατότητες MQTT 5.0 στις εφαρμογές τους στο IoT. Άλλα παραδείγματα SDK πελατών που υποστηρίζουν MQTT 5.0 είναι τα MQTT.js και MQTTnet.
Λίστα ελέγχου για τη μετάβαση από το MQTT 3.1.1 στο MQTT 5
Εάν χρησιμοποιείτε αυτήν τη στιγμή το MQTT 3.1.1, μάλλον ήρθε η ώρα να κάνετε αναβάθμιση σε MQTT 5. Εδώ είναι μερικά από τα κύρια πράγματα που πρέπει να λάβετε υπόψη όταν κάνετε τη μετακόμιση.
Ενημέρωση MQTT Brokers
Αφού αξιολογήσετε την τρέχουσα υποδομή σας και αποφασίσετε να προχωρήσετε στη μετεγκατάσταση, το επόμενο βήμα είναι να ενημερώσετε τους μεσίτες MQTT. Αυτό περιλαμβάνει την εγκατάσταση της πιο πρόσφατης έκδοσης του μεσίτη MQTT που υποστηρίζει το MQTT 5.0.
Η αναβάθμιση του μεσίτη σας θα πρέπει να γίνει με προσοχή, καθώς επηρεάζει όλους σας πελάτες MQTT. Συνιστάται πρώτα να δοκιμάσετε τον νέο μεσίτη σε περιβάλλον μη παραγωγής πριν τον λανσάρετε στην παραγωγή. Επίσης, βεβαιωθείτε ότι η διαμόρφωση του μεσίτη σας είναι ενημερωμένη όπως απαιτείται για την υποστήριξη των νέων δυνατοτήτων που εισάγονται στο MQTT 5.0.
Ενημερώστε τις βιβλιοθήκες πελατών
Αφού ενημερώσετε τους μεσίτες MQTT, το επόμενο βήμα είναι να ενημερώσετε τις βιβλιοθήκες πελατών MQTT. Ακριβώς όπως η ενημέρωση μεσίτη, θα πρέπει πρώτα να εκτελέσετε αυτήν την ενημέρωση σε περιβάλλον μη παραγωγής. Επίσης, βεβαιωθείτε ότι ο κωδικός της εφαρμογής σας είναι ενημερωμένος για να χειρίζεται τις νέες δυνατότητες του MQTT 5.0. Λάβετε υπόψη ότι αυτό μπορεί να περιλαμβάνει κάποια αναδιαμόρφωση κώδικα.
Διεύθυνση Ασφάλεια
Ενώ το MQTT 5.0 φέρνει αρκετές βελτιώσεις, εισάγει επίσης νέα ζητήματα ασφάλειας. Για παράδειγμα, με τη λειτουργία νέας ιδιότητας χρήστη, οι πελάτες μπορούν πλέον να στέλνουν προσαρμοσμένα δεδομένα στον μεσίτη.
Αν και αυτό είναι ένα ισχυρό χαρακτηριστικό, μπορεί να αξιοποιηθεί εάν δεν χρησιμοποιηθεί σωστά. Επομένως, είναι σημαντικό να αξιολογήσετε όλες τις νέες δυνατότητες από την άποψη της ασφάλειας.
Μερικά από τα βήματα που μπορείτε να ακολουθήσετε για την αντιμετώπιση της ασφάλειας περιλαμβάνουν τη χρήση της νέας βελτιωμένης δυνατότητας ελέγχου ταυτότητας για μεγαλύτερη ασφάλεια, τον περιορισμό των ιδιοτήτων χρήστη που μπορούν να στείλουν οι πελάτες μόνο σε ό,τι είναι απαραίτητο και τη συνεχή παρακολούθηση για τυχόν ύποπτες δραστηριότητες.
Παρακολούθηση μετά τη μετανάστευση
Τέλος, μετά τη μετεγκατάσταση στο MQTT 5.0 και την εφαρμογή των δυνατοτήτων του, είναι σημαντικό να παρακολουθείτε συνεχώς το σύστημά σας. Η παρακολούθηση δεν πρέπει να περιορίζεται μόνο σε τεχνικές πτυχές όπως η παράδοση μηνυμάτων ή οι συνδέσεις με πελάτες.
Θα πρέπει επίσης να παρακολουθείτε τη χρήση των νέων λειτουργιών MQTT 5.0 στις εφαρμογές σας. Αυτό θα σας δώσει πληροφορίες για το πώς αυτές οι δυνατότητες βελτιώνουν τις εφαρμογές σας και πού μπορούν να γίνουν περαιτέρω βελτιώσεις.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoData.Network Vertical Generative Ai. Ενδυναμώστε τον εαυτό σας. Πρόσβαση εδώ.
- PlatoAiStream. Web3 Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- PlatoESG. Ανθρακας, Cleantech, Ενέργεια, Περιβάλλον, Ηλιακός, Διαχείριση των αποβλήτων. Πρόσβαση εδώ.
- PlatoHealth. Ευφυΐα βιοτεχνολογίας και κλινικών δοκιμών. Πρόσβαση εδώ.
- πηγή: https://www.iotforall.com/mqtt-5-7-new-features-and-a-migration-checklist
- :έχει
- :είναι
- :δεν
- :που
- 1
- 2014
- 2019
- 7
- a
- Λογαριασμός
- δραστηριοτήτων
- προστιθέμενη
- Πρόσθετος
- Επιπλέον πληροφορίες
- διεύθυνση
- Υιοθεσία
- ορθός
- Μετά το
- εμπρός
- ενισχύσεων
- ζωντανός
- Όλα
- Επιτρέποντας
- επιτρέπει
- ήδη
- Επίσης
- μεταξύ των
- an
- και
- κάθε
- Εφαρμογή
- εφαρμογές
- ΕΙΝΑΙ
- AS
- πτυχές
- εκτιμώ
- ανατεθεί
- Πιστοποίηση
- εύρος ζώνης
- βάση
- BE
- γίνεται
- ήταν
- πριν
- είναι
- οφέλη
- Καλύτερα
- μεταξύ
- Φέρνει
- ευρύς
- μεσίτης
- μεσίτες
- by
- CAN
- ο οποίος
- Αλλαγές
- αλλαγή
- σαφήνεια
- πελάτης
- πελάτες
- κωδικός
- κώδικες
- Επικοινωνία
- κοινότητα
- συγκρότημα
- διαμόρφωση
- Connect
- σύνδεση
- Διασυνδέσεις
- Εξετάστε
- θεωρήσεις
- συνέχισε
- συνεχώς
- έλεγχος
- σωστά
- θα μπορούσε να
- Διαπιστεύσεις
- Ρεύμα
- Τη στιγμή
- έθιμο
- ημερομηνία
- αποφάσισε
- ορίζεται
- παράδοση
- διανομή
- σχεδιασμένα
- αναπτύχθηκε
- προγραμματιστές
- Ανάπτυξη
- συσκευή
- Συσκευές
- DID
- κατευθύνει
- αποσύνδεση
- διανέμω
- γίνεται
- dr
- δυο
- κάθε
- Νωρίτερα
- εύκολος
- αποτελεσματικά
- αποδοτικότητα
- αποτελεσματικός
- είτε
- έληξε
- ενισχυμένη
- ενίσχυση
- εξασφαλίζω
- Περιβάλλον
- εξοπλισμένο
- σφάλμα
- αξιολόγηση
- Even
- εξίσου
- Κάθε
- εξέλιξη
- εξελίχθηκε
- παράδειγμα
- παραδείγματα
- λήξη
- Εξηγήστε
- εξηγώντας
- Κακοποιημένα
- διερευνήσει
- αποτυγχάνει
- Αποτυχία
- Χαρακτηριστικό
- Χαρακτηριστικά
- Όνομα
- Ευελιξία
- Ίχνος
- Για
- από
- εμπρός
- πλήρη
- λειτουργία
- περαιτέρω
- Δώστε
- Δίνοντας
- Go
- μεγαλύτερη
- είχε
- λαβή
- Χειρισμός
- Έχω
- κεφαλίδες
- εδώ
- ιστορία
- Πως
- HTTPS
- IBM
- if
- αμέσως
- Επιπτώσεις
- εφαρμογή
- εφαρμοστεί
- σημαντικό
- βελτίωση
- βελτίωση
- βελτιώσεις
- in
- περιλαμβάνουν
- περιλαμβάνονται
- βιομηχανία
- πληροφορίες
- Υποδομή
- αρχικός
- ιδέες
- εγκατάσταση
- παράδειγμα
- περιπτώσεις
- Διαλειτουργικότητα
- σε
- εισήγαγε
- Εισάγει
- εμπλέκω
- περιλαμβάνει
- IoT
- iot συσκευές
- θέματα
- IT
- ΤΟΥ
- jpg
- μόλις
- διατηρούνται
- Κλειδί
- μεγαλύτερος
- Αργά
- αργότερο
- που οδηγεί
- Led
- Επίπεδο
- Μόχλευση
- βιβλιοθήκες
- πυγμάχος ελαφρού βάρους
- Μου αρέσει
- Περιωρισμένος
- τοποθεσία
- Σύνδεση
- που
- Κυρίως
- διατηρήσουν
- μεγάλες
- Κατασκευή
- διαχείριση
- πολοί
- max-width
- μέσα
- μήνυμα
- μηνύματα
- μηνυμάτων
- Μεταδεδομένα
- ενδέχεται να
- μετανάστευσαν
- μεταναστεύουν
- μετανάστευση
- ανήλικος
- ΜΟΝΤΕΡΝΑ
- Παρακολούθηση
- παρακολούθηση
- περισσότερο
- πιο αποτελεσματικό
- μετακινήσετε
- πολύ
- πολλαπλούς
- όνομα
- απαραίτητος
- Ανάγκη
- που απαιτούνται
- ανάγκες
- δίκτυο
- δίκτυα
- Νέα
- Νέες δυνατότητες
- επόμενη
- τώρα
- Όαση
- συνέβη
- of
- προσφορά
- Πετρέλαιο
- on
- ONE
- αποκλειστικά
- Επιλογές
- or
- πρωτότυπο
- ΑΛΛΑ
- έξω
- επί
- πακέτα
- Ειδικότερα
- ιδιαίτερα
- εκτελέσει
- περίοδος
- προοπτική
- Μέρος
- Πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- Δημοφιλής
- ισχυρός
- ανάγκη
- προηγούμενος
- πιθανώς
- παραγωγή
- ιδιότητες
- περιουσία
- πρωτόκολλο
- πρωτόκολλα
- παρέχουν
- παρέχει
- δημοσιεύει
- δημοσιεύθηκε
- ποιότητα
- σειρά
- λόγος
- λαμβάνω
- έλαβε
- μείωση
- μείωση
- κυκλοφόρησε
- μακρινός
- απάντηση
- απαιτείται
- απαιτήσεις
- Υποστηρικτικό υλικό
- απάντησης
- έκτακτος
- απόδοση
- Κυλιομένος
- τρέξιμο
- ίδιο
- δορυφόρος
- σενάρια
- SDK
- sdks
- ασφάλεια
- στείλετε
- αποστέλλει
- διακομιστής
- διακομιστές
- υπηρεσία
- Συνεδρίαση
- διάφοροι
- Κοινοποίηση
- Shared
- Κοντά
- θα πρέπει να
- σημαντικά
- απλότητα
- Μέγεθος
- μεγέθη
- small
- So
- λογισμικό
- ανάπτυξη λογισμικού
- μερικοί
- συγκεκριμένες
- καθορίζεται
- πρότυπο
- στέκεται
- Βήμα
- Βήματα
- ειλικρινής
- ισχυρότερη
- συνδρομή
- συνδρομές
- μεταγενέστερος
- τέτοιος
- κατάλληλος
- υποστήριξη
- Στήριξη
- Υποστηρίζει
- ύποπτος
- σύστημα
- Πάρτε
- Τεχνικός
- δοκιμή
- ότι
- Η
- τους
- Τους
- επομένως
- Αυτοί
- αυτοί
- πράγματα
- αυτό
- ώρα
- timestamp
- προς την
- τοπικός
- μεταφορά
- κατανόηση
- Ενημέρωση
- ενημερώθηκε
- ενημέρωση
- αναβάθμισης
- επάνω σε
- us
- Χρήση
- χρήση
- μεταχειρισμένος
- Χρήστες
- Χρήστες
- χρησιμοποιώντας
- χρησιμοποιώ
- εκδοχή
- θέλω
- ήθελε
- ήταν
- ΛΟΙΠΌΝ
- πότε
- αν
- Ποιό
- WHY
- διαδεδομένη
- θα
- με
- εσείς
- Σας
- zephyrnet