PROTOKOL MQTT
MQTT adalah protokol pesan berbasis standar, atau seperangkat aturan, yang digunakan untuk komunikasi mesin-ke-mesin. Sensor pintar, perangkat yang dapat dikenakan, dan perangkat Internet untuk Segala (IoT) lainnya biasanya harus mengirim dan menerima data melalui jaringan dengan sumber daya dan bandwidth terbatas. Perangkat IoT ini menggunakan MQTT untuk transmisi data, karena mudah diterapkan dan dapat mengomunikasikan data IoT secara efisien. MQTT mendukung pengiriman pesan antara perangkat ke cloud dan cloud ke perangkat.
Prinsip dari MQTT
Protokol MQTT bekerja berdasarkan prinsip model publikasi/berlangganan. Dalam komunikasi jaringan tradisional, klien dan server berkomunikasi satu sama lain secara langsung. Klien meminta sumber daya atau data dari server, kemudian server memproses dan mengirimkan kembali respons. Namun, MQTT menggunakan pola publikasi/berlangganan untuk memisahkan pengirim pesan (penerbit) dari penerima pesan (pelanggan). Sebagai gantinya, komponen ketiga, yang disebut broker pesan, menangani komunikasi antara penerbit dengan pelanggan. Tugas broker adalah memfilter semua pesan masuk dari penerbit dan mendistribusikannya dengan benar ke pelanggan. Broker memisahkan penerbit dan pelanggan seperti di bawah ini:
- Pemisahan ruang
Penerbit dan pelanggan tidak mengetahui satu sama lain lokasi jaringan dan tidak bertukar informasi seperti alamat IP atau nomor port.
- Pemisahan waktu
Penerbit dan pelanggan tidak menjalankan atau memiliki konektivitas jaringan secara bersamaan.
- Pemisahan sinkronisasi
Baik penerbit maupun pelanggan dapat mengirim atau menerima pesan tanpa saling mengganggu. Misalnya, pelanggan tidak harus menunggu penerbit mengirim pesan.
Cara Kerja MQTT
MQTT sejak awal memang dirancang untuk komunkasi Machine-to-Machine. MQTT mengirim data sebagai byte array, yang mana ini menjadi kelebihan protokol MQTT karena data yang dikirimkan sangat kecil.
Pada saat Protokol MQTT di uji dengan jaringan 3G, Protokol MQTT 93 kali lebih cepat daripada HTTP, karena paket headernya hanya 2 byte.
Publisher mengirimkan data/messages dengan topic tertentu kepada broker. Pengiriman data dapat melalui WiFi, GSM, LTE, dll. Subcriber kemudian mengambil data/messages yang diperlukan dengan topik tertentu di broker.
Pada gambar desain sistem MQTT sederhana tersebut, terdapat 3 bagian penting yaitu Publisher, Broker dan Subscriber.
Sistem kerja MQTT menerapkan Publish dan Subscribe data. Dan pada penerapannya, device akan terhubung pada sebuah Broker dan mempunyai suatu Topic tertentu.
- Broker pada MQTT berfungsi untuk menghandle data publish dan subscribe dari berbagai device, bisa diibaratkan sebagai server yang memiliki alamat IP khusus. Beberapa contoh dari Broker yang ada seperti Mosquitto, HiveMQ dan Mosca. Beberapa contoh dari Broker yang ada seperti Mosquitto, HiveMQ, dan Mosca.
- Publish merupakan cara suatu device untuk mengirimkan datanya ke subscribers. Biasanya pada publisher ini adalah sebuah device yang terhubung dengan sensor tertentu. Contoh publisher adalah Arduino, ESP32, Raspberry Pi, Android, dll.
- Subscribe merupakan cara suatu device untuk menerima berbagai macam data dari publisher. Subscriber dapat berupa aplikasi monitoring sensor dan sebagainya, subscriber ini yang nantinya akan meminta data dari publisher. Subscriber dapat berupa aplikasi monitoring sensor dan sebagainya, subscriber ini yang nantinya akan meminta data dari publisher melalui broker.
- Topic seperti halnya pengelompokan data disuatu kategori tertentu. Pada sistem kerja MQTT protokol ini, topic bersifat wajib hukumnya. Pada setiap transaksi data antara Publisher dan Subscriber harus memiliki suatu topic tertentu.
Arsitektur MQTT
Pada gambar di atas, MQTT membutuhkan dua komponen perangkat lunak utama yaitu
- MQTT Client yang nantinya akan di install di device. Untuk Arduino kita bisa memakai pubsubclient
- MQTT Broker yang berfungsi untuk menangani publish dan subscribe data
Source:
https://aws.amazon.com/id/what-is/mqtt/#:~:text=MQTT%20adalah%20protokol%20pesan%20berbasis,sumber%20daya%20dan%20bandwidth%20terbatas
https://miqbal.staff.telkomuniversity.ac.id/protokol_mqtt/
https://www.trivusi.web.id/2022/09/protokol-mqtt.html
http://reslab.sk.fti.unand.ac.id/index.php?option=com_k2&view=item&id=229:mengenal-mqtt-protokol-untuk-iot&Itemid=303
Komentar
Posting Komentar