MQTT چیست؟
MQTT چیست؟
MQTT یا پروتکل انتقال تلهمتری صفبندی پیامها در سال 1999 اختراع شد و بهگونهای طراحی شده است که پهنای باند مؤثری دارد و سبکوزن است که این موضوع باعث میشود باتری آن نیز کارآمد باشد. این پروتکل در ابتدا، برای نظارت بر خطوط لوله نفت تولید شد.
پروتکل ام کیو تی تی بر اساس استاندارد ایزو (ISO/IEC 20922) تعریف شده است و به دلیل مناسب بودن آن برای اینترنت اشیا (IoT)، شبکههای حسگر، اتوماسیون خانگی، ارتباط ماشین به ماشین و برنامههای کاربردی تلفن همراه، بهطور فزایندهای به کار گرفته میشود. MQTT معمولاً از پروتکل TCP / IP بهعنوان پروتکل انتقال در درگاههای 1883 استفاده میکند و میتواند با استفاده از مکانیزم انتقال TLS با 8883 بهعنوان درگاه پیشفرض رمزگذاری شود.
طیف متنوعی از MQTT وجود دارد، مانند MQTT-SN (MQTT برای شبکههای حسگر) که برای شبکههای غیر TCP / IP، مانند Zigbee (پروتکل مبتنی بر رادیو IEEE 80215.4) یا سایر پیادهسازیهای مبتنی بر UDP / Bluetooth استفاده میشود.
۲ نوع از موجودیتهای شبکه وجود دارد: «کارگزار پیام» و «مشتری»
MQTT از سه سطح خدمات کیفیت پشتیبانی میکند:
– 0: حداکثر یکبار تحویل – «آتش بزن و فراموش کن» که ممکن است پیام را دریافت کنید یا ممکن است دریافت نکنید.
– 1: حداقل یکبار تحویل – پیام میتواند چندین بار ارسال شود و یا تحویل داده شود.
– 2: دقیقاً یکبار تحویل – مطمئنترین و کندترین سرویس.
ام کیو تی تی بر اساس مکانیسم «انتشار» / «اشتراک در موضوع» کار میکند:
1. انتشار / اشتراک
کارگزار پیام MQTT پیامهای منتشرشده توسط مشتریان (در سمت چپ) را با استفاده از موضوعات دوسطحی (مانند، برای مثال، دمای دفتر، رطوبت دفتر یا کیفیت هوای داخلی) مصرف میکند. مشتریهای طرف حقوق بهعنوان مشترکانی که هرگونه اطلاعات منتشرشده در مورد یک موضوع خاص را دریافت میکنند، عمل میکنند. هر زمان که پیامی برای کارگزار منتشر میشود، کارگزار همه مشترکان را مطلع میکند (مشتریان 3 و 4) و این مشتریان مقدار حسگر را دریافت میکنند.
2. انتشار / اشتراک ترکیبی
مشتری میتواند همزمان مشترک و ناشر باشد؛ بنابراین، در این مثال، مشتری 1 در حال انتشار یک مقدار روشنایی است و مشتری 3 برای آن مقدار روشنایی اشتراک دارد. مشتری 3 ممکن است بهعنوانمثال تصمیم بگیرد روشنایی 1500 بسیار پایین باشد. بنابراین میتواند پیام جدیدی را بهعنوان «دفتر» منتشر کند تا به کنترلکننده نور اطلاع دهد که باید روشنایی را افزایش دهد، درحالیکه بهعنوانمثال مشتری 2، کنترلکننده نور با یک اشتراک، ممکن است با دریافت پیام میزان روشنایی را تغییر دهد.
3. مشترکین کارتهای خودکار
کارتهای خودکار در MQTT آسان هستند؛ بنابراین، میتوانید مثلاً موضوع «دفتر + روشنایی» را داشته باشید که در آن علامت “+” میتواند با هر نام موضوعی جایگزین شود. اگر علامت “+” فقط یک سطح را در موضوع ما جایگزین کند، این یک کارت حافظه خودکار تک سطحی است. درحالیکه علامت پوند برای کارت حافظه خودکار چند سطحی کار میکند.
ویژگیهای ام کیو تی تی
- مشتریان میتوانند یک یا چند موضوع را منتشر و مشترک شوند.
- یک مشتری میتواند همزمان منتشر کند و مشترک شود.
- مشتریان میتوانند با استفاده از کارتهای خودکار تک سطحی یا چند سطحی مشترک شوند.
- مشتریان میتوانند از بین سه سطح مختلف مدیریت ارسال اطلاعات در شبکه (QoS)، یکی را انتخاب کنند.
ویژگیهای پیشرفته MQTT
پیامها را میتوان از طریق کارگزار برای مشترکین جدید نگهداری کرد؛ بنابراین، اگر یک مشتری جدید برای یک موضوع خاص مشترک شود، ناشر میتواند پیامهای خود را بهعنوان «حفط شده» علامتگذاری کند تا مشترک جدید آخرین پیام حفظشده را دریافت کند.
مشتریان میتوانند «آخرین پیام» را ارائه دهند که در صورت قطع ارتباط کارگزار و مشتری، توسط کارگزار منتشر خواهد شد.
امنیت ام کیو تی تی
MQTT از سازوکارهای مختلف تأیید اعتبار و امنیت داده پشتیبانی میکند. لازم به ذکر است که این مکانیزمهای امنیتی بر روی کارگزار MQTT پیکربندی شدهاند و رعایت مکانیزمهای موجود به عهده مشتری است.
اینترنت اشیا و ام کیو تی تی
اینترنت صنعتی اشیا (IIoT) را میتوان بهعنوان سیستمی از حسگرها و سایر دستگاهها در تعامل با سیستمهای صنعتی و تولیدی تعریف کرد که همگی در تلاش برای ارتقای فعالیتهای تجاری هستند. صنایعی مانند تولید، معدن، نفت و گاز و تجارت کشاورزی، تعداد زیادی حسگر را به کار میگیرند. این حسگرها بهنوبه خود دادههای مهم تلهمتری را به موتورهای تجزیهوتحلیل ارسال میکنند و در آنجا دادهها برای روندها و یا ناهنجاریها تجزیهوتحلیل میشوند. این موضوع میتواند سازمانها را قادر سازد عملکرد خود را بهتر درک کنند و یا آن را بهبود ببخشند.
در محیطهایی که از راهحلهای شبکه با پهنای کم (LPWAN) استفاده میکنند، دادههای حسگر از طریق انتقال رادیویی بیسیم در جایی که توسط یک یا چند ایستگاه پایه مرکزی دریافت میشود، ارسال میشود. این دادههای کوچک بهصورت بستههای منفرد هستند، اما هنگامیکه باهم جمع میشوند و خیلی بزرگ میشوند، به ابزارهای تجزیهوتحلیل و تجسم اعم از ابر یا محل ارسال میشوند. اینجا همان مکانی است که MQTT وارد میشود. ام کیو تی تی که روی شبکه TCP / IP قرار دارد، یک پروتکل پیامرسانی انتشار / اشتراک سبکوزن است که برای پهنای باند کارآمد، تأخیر زیاد و شبکههای غیرقابل اطمینان طراحی شده است. ویژگیهای MQTT آن را به گزینهای عالی برای ارسال حجم بالای پیامهای حسگر به سیستمعاملهای تجزیهوتحلیل و راهحلهای ابری تبدیل کرده است.
منبع: زبیکس