MQTT

Putri Anjelia Pasaribu
4 min readNov 28, 2020

--

Sangat banyak protokol yang digunakan untuk komunikasi, seperti HTTP, TCP/IP, ICMP, FTP, DNS, SSH dan masih banyak lagi. Setiap protokol memiliki fungsi dan tujuan yang berbeda.

Apa Itu MQTT ???

Protokol MQTT (Message Queuing Telemetry Transport) adalah protokol yang berjalan di atas stack TCP/IP dirancang khusus untuk komunikasi “Machine to machine” dan mempunyai ukuran paket data yang kecil (minimum 2 bytes), MQTT dirancang untuk perangkat yang beroperasi pada daya rendah dan bandwith rendah.

Pada MQTT ada 3 pemeran utama yaitu Publisher, subscriber, dan broker. Publisher adalah peran yang memberikan suatu pesan ke topik tertentu. Subscriber yaitu klien yang subscribe suatu topik, sehingga ketika Publisher mengirimkan pesan ke topik tersebut, subscriber dengan topik yang sama akan menerima pesan tersebut. kemudian broker berperan sebagai perantara antara publisher dan subscriber. Broker akan meneruskan pesan dari publisher untuk dikomsumsi oleh subscriber.

Protokol MQTT sangat cocok digunakan untuk project IoT karena MQTT cenderung mudah penggunaaannya dibandingkan dengan HTTP/HTTPS yang lambat dan tidak real time dalam mengirim perintah serta memasukkan data, bandwith HTTP juga besar, dan HTTP hanya bisa merequest ke Server.

Sistem umum IoT memakai MQTT

Komponen MQTT

Berikut komponen komponen yang terdapat dalam MQTT

  1. Publisher dan Subscriber

Protokol MQTT ini memili kemampuan publish dan Subcribe, keuntungan dari sistem ini adalah antara sumber pengirim data (publisher) dan penerima data (klien) tidak saling mengetahui karena ada broker diantara mereka atau istilahnya adalah space decoupling dan adanya time decoupling, dimana klien dan publisher tidak perlu terkoneksi secara bersamaan.

2. Topic

Di dalam MQTT ada istilah Topic yaitu berupa UTF-8 string, hampir sama dengan topik pada chat hanya saja lebih sederhana/ Topic berfungsi sebagai filter untuk broker dalam mengirimkan pesan ke klien yang terhubung. Topik merupakan string akan tetapi ada beberapa character yang mempunyai arti khusus. Misalnya character “ / “ mempunya arti seperti halnya direktori. kemudian karakter “ +” merupakan character Wildcard dalam 1 level directory dan juga “ #” yang merupakan character wildcard dalam multiple level directory.

3. Broker

Broker merupakan bagian paling fundamental dalam MQTT. Broker berfungsi untuk menerima semua pesan, kemudian mengelolah/ menyaring semua pesan tersebut agar pesan — pesan hanya sampai pada subscriber topik yang bersesuaian.

Sinyal Kontrol protokol MQTT

MQTT mempunyai 14 type sinyal kontrol seperti berikut ini :

  1. CONNECT Client request to connect to Server
  2. CONNACK Connection Acknowledgement
  3. PUBLISH — A message which represents a new/separate publish
  4. PUBACK — QoS 1 response to a PUBLISH message
  5. PUBREC — First part
  6. PUBREL — Second part of QoS 2 message flow
  7. PUBCOMP — Last part of the QoS 2 message flow
  8. SUBSCRIBE — A message used by clients to subscribe to specific topics
  9. SUBACK — Acknowledgement of a SUBSCRIBE message
  10. UNSUBSCRIBE — A message used by clients to unsubscribe from specific topics
  11. UNSUBACK — Acknowledgement of an UNSUBSCRIBE message
  12. PINGREQ — Heartbeat message
  13. PINGRESP — Heartbeat message acknowledgement
  14. DISCONNECT — Graceful disconnect message sent by clents before disconnecting

sebelum mengaplikasikannya ke real device anda bisa mempraktekan MQTT pada local server

pertama download Mosquito broker pada link dibawah ini :

Setelah anda menginstalnya, kemudian buka foldernya dimana anda meletakkan folder Mosquitto tersebut yang anda instal sebelumnya.

jalankan mosquito nya cara mengklik 2 kali mosquito.exe, maka akan muncul seperti gambar dibawah ini

kemudian jalankan mosquitto subscriber dari cmd, seperti pada gambar dibawah ini

setelah itu masukkan perintah dibawah ini, -h disitu berarti host, kemudian masukkan ip local anda, kemudian masukkan -t yaitu topik, topik nya adalah test

Kemudian buka CMD, buka terminal mosquitto_pub.exe kemudian -h, kemudian masukkan ip local anda, masukkan -t dengan topik test dan -m yang artinya message, misalkan saya buat disitu adalah “Hallo Putri Pasaribu” . Maka pesan akan ditampilkan di terminal mosquitto_subscribe

Tampilan terminal mosquitto_pub
Tampilan terminal mosquitto_Subscribe

Oke, demikian pembahasan saya mengenai protokol MQTT, semoga bermanfaat :)

--

--

No responses yet