MQTT (Ïåðåäà÷à òåëåìåòðèè â î÷åðåäè ñîîáùåíèé, ïåðåäà÷à òåëåìåòðèè â î÷åðåäè ñîîáùåíèé) - ýòî îáëåã÷åííûé ïðîòîêîë îáìåíà ñîîáùåíèÿìè, îñíîâàííûé íà ìåòîäå ïóáëèêàöèè /ïîäïèñêè â ñîîòâåòñòâèè ñî ñòàíäàðòîì ISO, êîòîðûé îáû÷íî èñïîëüçóåòñÿ äëÿ ñâÿçè ìåæäó óñòðîéñòâàìè è ïðèëîæåíèÿìè, òàêèìè êàê Èíòåðíåò âåùåé è óìíûå äîìà.
Ïðîòîêîë MQTT ñîñòîèò èç äâóõ ÷àñòåé: èçäàòåëü/ïîäïèñ÷èê è ïîñðåäíèê ñîîáùåíèé. Êàê ïîêàçàíî íà ðèñóíêå 1, èçäàòåëü îòâå÷àåò çà îòïðàâêó ñîîáùåíèÿ ïîñðåäíèêó, à áðîêåð îòïðàâëÿåò ñîîáùåíèå ñîîòâåòñòâóþùåìó ïîäïèñ÷èêó.
Èçäàòåëü: Óñòðîéñòâî îòïðàâëÿåò ñîîáùåíèÿ ïîäïèñ÷èêàì ÷åðåç ðàçäåëû.
Ïîäïèñ÷èê: Áóäó÷è îêîíå÷íûì óñòðîéñòâîì, ïîäïèñ÷èê ïîëó÷àåò ñîîáùåíèÿ îò èçäàòåëÿ ÷åðåç ðàçäåë.
Ïîñðåäíèê ñîîáùåíèé (Broker): Ñåðâåð äåéñòâóåò êàê öåíòðàëüíûé óçåë è îòâå÷àåò çà ñâÿçü íà îðãàíèçàöèîííîì óðîâíå ìåæäó èçäàòåëÿìè è ïîäïèñ÷èêàìè.
Ñóùåñòâóåò äâå îñíîâíûå âåðñèè MQTT: v3 è v5.Ïðèíöèï ðàáîòû ýòèõ äâóõ âåðñèé â îñíîâíîì îäèíàêîâ, íî ìåæäó íèìè åñòü íåêîòîðûå êëþ÷åâûå ðàçëè÷èÿ. Íèæå áóäóò ïðåäñòàâëåíû ðàçëè÷èÿ ìåæäó íèìè â ñëåäóþùèõ àñïåêòàõ.
01
Ôîðìàò ïðîòîêîëà
 MQTT v5 äîáàâëåíî ïîëå ñâîéñòâ, êîòîðîå ïîçâîëÿåò MQTT v5 ïîääåðæèâàòü áîëüøå íîâûõ ôóíêöèé. MQTT v3 MQTT íå÷åãî ðàñøèðÿòü, ÷òî îãðàíè÷èâàåò âîçìîæíîñòü ðàñøèðåíèÿ MQTT ñâîèõ ôóíêöèé.
02
Ïñåâäîíèì ñóáúåêòà
Òåìà - ýòî êëþ÷åâîå ïîíÿòèå â MQTT, êîòîðîå èñïîëüçóåòñÿ äëÿ îïðåäåëåíèÿ ñîäåðæàíèÿ è öåëè ñîîáùåíèÿ. MQTT v3 òåìà - ýòî âñåãî ëèøü ïðîñòàÿ ñòðîêà, è åå ñòðóêòóðà ñîñòîèò èç ðÿäà ñëîâ, ðàçäåëåííûõ êîñûìè ÷åðòàìè.
Íàïðèìåð, òåìîé MQTT v3 ìîãóò áûòü äàò÷èêè/òåìïåðàòóðà/room1, ãäå äàò÷èêè - ýòî òåìà âåðõíåãî óðîâíÿ, òåìïåðàòóðà - åå ïîäòåìà, à room1 - ýòî êîíêðåòíîå óñòðîéñòâî â ïîäòåìå.
Îäíàêî â MQTT v5 ñòðóêòóðà òåìû áûëà ðàñøèðåíà è äîáàâëåíû íåêîòîðûå áîëåå ïðîäâèíóòûå ôóíêöèè. ÷àñòíîñòè, MQTT v5 ââîäèò íîâóþ êîíöåïöèþ, íàçûâàåìóþ ñãëàæèâàíèåì òåì, êîòîðàÿ ïîçâîëÿåò êëèåíòàì ñîïîñòàâëÿòü ñòðîêè òåì ñ çàðàíåå îïðåäåëåííûìè èäåíòèôèêàòîðàìè òåì, òåì ñàìûì óìåíüøàÿ ñåòåâîé òðàôèê è ðàçìåð ñîîáùåíèÿ.
Ïñåâäîíèìû ñóáúåêòîâ ïîääåðæèâàþòñÿ êëèåíòîì è ñåðâåðîì, à æèçíåííûé öèêë è îáëàñòü äåéñòâèÿ îãðàíè÷åíû òåêóùèì ïîäêëþ÷åíèåì.
Äëÿ òåìû çàäàéòå ïñåâäîíèì ïðè åå ïåðâîé ïóáëèêàöèè, à çàòåì âû ìîæåòå èñïîëüçîâàòü ïñåâäîíèì òåìû äëÿ ïóáëèêàöèè.Ýòî ïîçâîëÿåò êëèåíòó îòïðàâëÿòü òîëüêî èäåíòèôèêàòîð òåìû ïðè îòïðàâêå ñîîáùåíèÿ, âìåñòî òîãî ÷òîáû êàæäûé ðàç îòïðàâëÿòü ïîëíóþ ñòðîêó òåìû.Ýòî î÷åíü ïîëåçíî äëÿ óñòðîéñòâ Èíòåðíåòà âåùåé è ñðåä ñ îãðàíè÷åííîé ïðîïóñêíîé ñïîñîáíîñòüþ ñåòè.
03
Îïåðàöèÿ ïîäïèñêè
MQTT v5 ââîäèò íîâûé òèï ïîäïèñêè, íàçûâàåìûé îáùåé ïîäïèñêîé.Äëÿ îáåñïå÷åíèÿ áîëåå ãèáêîé ïîäïèñêè ìîæíî èñïîëüçîâàòü äðóãèå ôëàãè è ôóíêöèè ôèëüòðàöèè.Êàê ïîêàçàíî íà ðèñóíêå íèæå, îáùèå ïîäïèñêè ïîçâîëÿþò íåñêîëüêèì êëèåíòàì ñîâìåñòíî èñïîëüçîâàòü ïîäïèñêó è ðàñïðåäåëÿòü åå â ñîîòâåòñòâèè ñ îïðåäåëåííûìè ïðàâèëàìè.Ýòîò òèï ïîäïèñêè î÷åíü ïîëåçåí äëÿ ïîäïèñêè íà òåìû ñ âûñîêîé íàãðóçêîé, ïîñêîëüêó ïîçâîëÿåò ñáàëàíñèðîâàòü çàïðîñû íà ïîäïèñêó è ñíèçèòü íàãðóçêó íà îäíîãî êëèåíòà.
Êðîìå òîãî, MQTT v5 äîáàâëÿåò êîíöåïöèþ ïàðàìåòðîâ ïîäïèñêè. Âû ìîæåòå óêàçàòü ïàðàìåòðû ïîäïèñêè, òàêèå êàê óðîâåíü QoS, Ñîõðàíèòü ïðè ïóáëèêàöèè, ñîõðàíèòü îáðàáîòêó, æèçíåííûé öèêë ñîîáùåíèé è ò.ä., ÷òîáû áîëåå òî÷íî óïðàâëÿòü ïîâåäåíèåì ïîäïèñêè.
04
Áóäóò íîâîñòè
Ñîîáùåíèå î çàâåùàíèè - ýòî âîçìîæíîñòü, êîòîðóþ MQTT ïðåäîñòàâëÿåò óñòðîéñòâàì, êîòîðûå ìîãóò áûòü ñëó÷àéíî îòêëþ÷åíû, êîððåêòíî îòïðàâëÿòü çàâåùàíèå òðåòüåé ñòîðîíå. ïîëåçíîé íàãðóçêå ñîîáùåíèÿ CONNECT èçìåíèëèñü íåêîòîðûå ïîëÿ, ñðåäè êîòîðûõ Will Message (áóäåò ñîîáùåíèå) ñòàíîâèòñÿ Will Payload (áóäåò çàãðóæàòüñÿ).
Ñâîéñòâà âîëè (WILL Properties) - ýòî íîâîå ïîëå â MQTT v5. Ðàçíûå òèïû ïàêåòîâ èìåþò ðàçíûå àòðèáóòû. Íàïðèìåð, ïàêåòû ÏÎÄÊËÞ×ÅÍÈß èìåþò òàêèå àòðèáóòû, êàê ìàêñèìàëüíàÿ äëèíà ïàêåòà è èíòåðâàë èñòå÷åíèÿ ñåàíñà, à ïàêåòû ÏÎÄÏÈÑÊÈ èìåþò òàêèå àòðèáóòû, êàê èäåíòèôèêàòîð ïîäïèñêè.Áîëåå òîãî, ïî ñðàâíåíèþ ñ âåðñèåé 3, MQTT v5 äåëàåò ñîäåðæàíèå ñîîáùåíèé áîëåå ãèáêèì è ìîæåò ñîäåðæàòü ëþáóþ òåìó è ëþáîå ñîäåðæàíèå ñîîáùåíèÿ.
05
Îáðàáîòêà îøèáîê
MQTT v5 ïîääåðæèâàåò áîëåå ïîäðîáíûé ìåõàíèçì îáðàáîòêè îøèáîê, êîòîðûé ïîçâîëÿåò íàõîäèòü è óñòðàíÿòü ïðîáëåìû ñ ïîìîùüþ êîäîâ îøèáîê è ïðè÷èí âîçíèêíîâåíèÿ îøèáîê. òî æå âðåìÿ, MQTT v5 òàêæå ââîäèò íîâîå óïðàâëÿþùåå ñîîáùåíèå - ñîîáùåíèå îá îòêëþ÷åíèè, êîòîðîå ìîæåò ïîìî÷ü êëèåíòàì è ñåðâåðàì ëó÷øå ñïðàâëÿòüñÿ ñ îøèáêàìè.
06
Óïðàâëåíèå ïîòîêîì
MQTT v5 ââîäèò íåêîòîðûå íîâûå ìåõàíèçìû óïðàâëåíèÿ ïîòîêîì íà îñíîâå âåðñèè v3, ÷òîáû ëó÷øå êîíòðîëèðîâàòü ïåðåäà÷ó è îáðàáîòêó ñîîáùåíèé è èçáåæàòü ïåðåãðóçêè ñåòè è ÷ðåçìåðíîé íàãðóçêè, âûçâàííîé ÷ðåçìåðíîé ñêîðîñòüþ ïåðåäà÷è ñîîáùåíèé.
Îãðàíè÷åíèå ìàêñèìàëüíîãî ðàçìåðà ïàêåòà (Maximum Packet Size): MQTT v5 ïîçâîëÿåò êëèåíòó è ñåðâåðó ñîãëàñîâûâàòü ìàêñèìàëüíûé ðàçìåð ïàêåòà ïðè îáìåíå ðóêîïîæàòèÿìè.Êàê ïîêàçàíî íà ðèñóíêå íèæå, ýòî îãðàíè÷åíèå ìàêñèìàëüíîãî ðàçìåðà ïàêåòà ìîæåò èñïîëüçîâàòüñÿ äëÿ óïðàâëåíèÿ ìàêñèìàëüíûì ðàçìåðîì ñîîáùåíèÿ, ïåðåäàâàåìîãî ìåæäó êëèåíòîì è ñåðâåðîì, ÷òîáû ïðåäîòâðàòèòü ïåðåãðóçêó ñåòè è ÷ðåçìåðíóþ íàãðóçêó èç-çà ÷ðåçìåðíîé ïåðåäà÷è ñîîáùåíèé.
Î÷åðåäü ñîîáùåíèé: Êîãäà ñîîáùåíèå, îòïðàâëåííîå ñåðâåðîì, ïðåâûøàåò ñêîðîñòü îáðàáîòêè êëèåíòîì, ñåðâåð ìîæåò ñîõðàíèòü ñîîáùåíèå â î÷åðåäè ñîîáùåíèé è äîæäàòüñÿ, ïîêà êëèåíò åãî îáðàáîòàåò.MQTT v5 îïðåäåëÿåò ðàçìåð î÷åðåäè è âðåìÿ îæèäàíèÿ î÷åðåäè ñîîáùåíèé äëÿ óïðàâëåíèÿ ðàçìåðîì è æèçíåííûì öèêëîì î÷åðåäè ñîîáùåíèé.
07
Ýôôåêòèâíîñòü ðàáîòû
Ïî ñðàâíåíèþ ñ MQTT v3, MQTT v5 ìîæåò ëó÷øå îáðàáàòûâàòü êðóïíîìàñøòàáíóþ ïåðåäà÷ó äàííûõ è ïîâûøàòü ýôôåêòèâíîñòü è áûñòðîäåéñòâèå ñâÿçè.Íàïðèìåð, MQTT v5 ïîääåðæèâàåò òàêèå ôóíêöèè, êàê ïàêåòíàÿ ïóáëèêàöèÿ è ïðåäâàðèòåëüíàÿ âûáîðêà ñîîáùåíèé, ÷òî ìîæåò çíà÷èòåëüíî ñíèçèòü íàêëàäíûå ðàñõîäû íà ïåðåäà÷ó äàííûõ MQTT.
Êîðî÷å ãîâîðÿ, ïî ñðàâíåíèþ ñ MQTT v3, MQTT v5 îáëàäàåò áîëüøèì êîëè÷åñòâîì íîâûõ ôóíêöèé è áåçîïàñíîñòè.Îäíàêî ñëåäóåò îòìåòèòü, ÷òî â MQTT v5 äîáàâëåíî ìíîãî íîâûõ ôóíêöèé è êîíöåïöèé. Ïîýòîìó ïðè èñïîëüçîâàíèè MQTT v5 íåîáõîäèìî èìåòü ãëóáîêîå ïðåäñòàâëåíèå î íîâûõ ôóíêöèÿõ ïðîòîêîëà MQTT, ÷òîáû ýòîò íîâûé ïðîòîêîë ìîæíî áûëî ëó÷øå èñïîëüçîâàòü äëÿ ñîçäàíèÿ íàäåæíûõ ïðèëîæåíèé.
Chengdu Ebyte Electronic Technology Co., Ltd. ñïåöèàëèçèðóåòñÿ íà ðàçðàáîòêå è ïðîèçâîäñòâå ìîäóëåé áåñïðîâîäíîé ïåðåäà÷è äàííûõ äëÿ ðàçëè÷íûõ äèàïàçîíîâ ÷àñòîò è ôóíêöèé. Åñëè ó âàñ åñòü êàêèå-ëèáî ïîòðåáíîñòè, ïîæàëóéñòà, ñâÿæèòåñü ñ íàìè email:service-ru-@cdebyte.com Èëè ïîñåòèòå âåá-ñàéò:https://www.ru-ebyte.com/