MQTT: كيف يعمل هذا البروتوكول؟

ما هو MQTT؟
ما هو MQTT؟

ما هو بروتوكول MQTT؟

MQTT هو بروتوكول يضمن الاتصال بين جهازين باستخدام تقنيات مختلفة. ما هي خصائصه ، وما هي جودة الخدمة وما فائدة على Raspberry Pi؟

فهرس

ما هو MQTT؟

MQTT ، لـ “نقل القياس عن بعد لخدمة وضع الرسائل في قائمة انتظار” ، هو بروتوكول رسائل مفتوح المصدر يوفر اتصالات غير مستمرة بين الأجهزة عن طريق نقل رسائلها. تم إنشاؤه في 1999 بواسطة Andy Stanford-Clark ، المهندس في IBM ، و Arlen Nipper ، في EuroTech ، بشكل أساسي في اتصالات M2M للسماح لجهازين باستخدام تقنيات مختلفة للتواصل. يقول فابيان بيريرا فاز ، مدير المبيعات الفنية في Paessler AG: “بعد أن أصبحت MQTT أحد معايير ISO في عام 2016 ، كانت تقوم بالفعل بتوصيل ملايين الأجهزة في جميع أنحاء العالم ، في جميع أنواع التطبيقات والصناعات. إنها تقنية المستقبل”.

كيف يعمل هذا بروتوكول MQTT ؟

MQTT هو بروتوكول قياسي يعتمد على TCP / IP. “يتم استخدامه بشكل خاص لنقل البيانات من الكائنات المتصلة إلى السحابة. ومع ذلك ، فإنه يظل مرهقًا لشبكات LPWA المقيدة مثل NB-IoT ولا يسمح إلا بمعالجة التعليقات على البيانات دون مراعاة خدمات إدارة الجهاز . وهذا الأخير ضروري أثناء عمليات النشر الضخمة الأجهزة المتصلة “، يؤكد حاتم الوسلاتي ، الرئيس التنفيذي لشركة IoTerop ، وهي شركة فرنسية ناشئة متخصصة في إدارة الأجهزة. تنقسم عمليتها إلى أربع خطوات متميزة: الاتصال ، والمصادقة ، والاتصال ، والإنهاء. يسمح MQTT بإدارة عمليات فصل الجهاز وإعادة الاتصال بطريقة مبسطة. الحد الأقصى لحجم الرسالة المرسلة بواسطة MQTT هو 256 ميغا بايت.

ما هو وسيط MQTT؟

للتواصل مع MQTT ، تستخدم الكائنات المتصلة وسيطًا ، أي برنامجًا مسؤولاً عن تلقي المعلومات المنشورة من أجل إرسالها إلى العملاء المشتركين. الوسيط لديه دور الترحيل. هناك عدة أنواع من الوسطاء: ActiveMQ أو JoramMQ أو Mosquitto أو RabbitMQ.

ويضيف حاتم: “على الرغم من أنه مصمم ليكون خفيف الوزن ويستخدم نطاقًا تردديًا منخفضًا ، إلا أن آليات إعادة الإرسال القائمة على بروتوكول TCP والأمان المستند إلى TLS تجعل من المستحيل فعليًا استخدامه على NB – IoT بسبب قيود الكمون والإرسال على هذا النوع من الاتصال”. الوسلاتي. لذلك صممت IoTerop وسيط MQTT آمنًا لاسترداد الرسائل باستخدام بروتوكول CoAP أو LWM2M من الكائنات المتصلة باستخدام شبكة NB-IoT ، لنقلها في MQTT إلى منصة AWS IoT Core. يُطلق على هذا الوسيط المسمى Nebraska ، الذي طورته الشركتان ، بنية تحتية أخف من NB-IoT. 

وبالتالي فإن جودة الخدمة (QoS) هي سمة أساسية لبروتوكول MQTT. إنها اتفاقية تحدد ضمان تسليم رسالة معينة ونوع المصادقة المستخدمة. هناك ثلاثة مستويات من جودة الخدمة في MQTT: مرة واحدة على الأقل ومرة ​​واحدة بالضبط. يجب أخذ جانبي الرسالة المرسلة في الاعتبار: تسليم الرسالة من العميل إلى الوسيط والرسالة من الوسيط إلى العميل المشترك. يقوم العميل الذي ينشر الرسالة إلى الوسيط بتعيين مستوى جودة الخدمة للرسالة عندما يرسل الرسالة إلى الوسيط. يقوم الوسيط بإعادة توجيه هذه الرسالة إلى العملاء المشتركين ، أثناء استخدام مستوى جودة الخدمة الذي يعينه كل عميل مشترك أثناء عملية الاشتراك. إذا حدد العميل المشترك جودة خدمة “أقل” من العميل ، يقوم الوسيط بنقل الرسالة بجودة خدمة أقل. وبالتالي ، تمنح QoS العميل القدرة على اختيار مستوى من الخدمة يتوافق مع موثوقية شبكته بالإضافة إلى منطق التطبيق الخاص به.

ما هو الوسيط Mosquitto وكيف أبدأ؟

Mosquitto هو الوسيط الأكثر استخدامًا لمشاريع ESP8266 (Arduino و Raspberry). تم إطلاقه في عام 2008 ، وهو متاح على جميع الأنظمة الأساسية (MacOS و Windows XP-10 و Linux). يمكن تثبيته بطريقتين: من طرف الكمبيوتر (عن طريق توصيل لوحة المفاتيح والماوس والشاشة أولاً بـ Pi) ، قبل تشغيله من الجهاز ، أو (دائمًا من خلال الكمبيوتر) لتثبيته باستخدام المعجون (SSH) والوصول إلى الجذر.

لماذا تستخدم MQTT؟

السمة الرئيسية لـ MQTT هي خفتها ، حيث لا يتطلب البروتوكول سوى الحد الأدنى من الموارد ، وبالتالي يمكن استخدامه على وحدات التحكم الدقيقة الصغيرة. يوضح فابيان بيريرا فاز ، من Paessler AG: “تتمثل فكرة MQTT في امتلاك معدات ليس لها مواردها الخاصة للتواصل مع بعضها البعض لضمان اتصال دائم”. بالنسبة له ، تتميز MQTT بمرونتها وبساطتها في التنفيذ ، بالإضافة إلى ضمان نقل البيانات ثنائي الاتجاه. وبالتالي يكتسب البروتوكول أهمية في التقنيات التشغيلية للصناعة. 

MQTT وجوجل هوم

MQTT هو بروتوكول مفتوح المصدر. وبالتالي يمكن استخدامه لتكوين أنظمة التشغيل الآلي للمنزل ويمكن للمستخدمين ربط Google Home الخاص بهم بوسيط MQTT. 

ما بدائل MQTT؟

بروتوكول MQTT هو الأكثر استخدامًا في بيئات إنترنت الأشياء ، ولكن هناك بدائل أخرى:

  • مودبوس 
  • لغة البرمجة، 
  • OPC-UA
  • AMQP ،
  • CoAP ،
  • إلخ

MQTT والأمن

“يجب أن يكون تأمين المعدات المتصلة أولوية” ، كما يذكر فابيان بيريرا فاز ، من Paessler AG. تسهل MQTT تشفير الرسائل باستخدام طبقة أمان TLS ومصادقة العميل باستخدام بروتوكولات المصادقة الحديثة ، مثل OAuth. يجب أن تكون الشركات التي تستخدم MQTT حريصة على أن هذا هو الحال بالفعل لأنه إذا قام طرف ثالث بالوصول إلى البيئة ، فيمكنه الاشتراك في جميع الرسائل التي يتم تداولها. “يتم تسجيل جميع الإجراءات التي تم تنفيذها ، لضمان عدم وجود شذوذ ، يكفي تتبع العمليات” ، كما يشير توماس جاييه ، رئيس CERT Digital Security.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *