Apa Itu Protocol MTTQ ? Protokol Unik Perangkat IoT


Ilustrasi Internet of Things 2

Ilustrasi Internet of Things

Dalam era digital yang semakin terhubung, komunikasi antar perangkat menjadi semakin penting. Seiring berkembangnya Internet of Things (IoT) dan otomatisasi industri, kebutuhan akan protokol komunikasi yang efisien dan handal terus meningkat. Salah satu protokol yang banyak digunakan untuk tujuan ini adalah MQTT (Message Queue Telemetry Transport).

MQTT adalah protokol komunikasi yang dirancang khusus untuk aplikasi M2M (Machine-to-Machine), yang memungkinkan perangkat-perangkat untuk bertukar data secara real-time dan efisien. Protokol ini telah digunakan di berbagai sektor, mulai dari industri minyak dan gas, hingga aplikasi IoT yang luas.

 

Pengertian MQTT

MQTT atau Message Queue Telemetry Transport adalah sebuah protokol komunikasi yang digunakan untuk mentransmisikan data antar perangkat secara efisien dengan cara yang ringan. MQTT diciptakan pada tahun 1999 oleh Andy Stanford-Clark dari IBM dan Arlen Nipper dari Cirrus Link. Pada awalnya, protokol ini dikembangkan untuk memantau kondisi pipa minyak dengan menggunakan sensor-sensor yang terhubung di jarak yang jauh. Dengan karakteristiknya yang hemat bandwidth dan efisien, MQTT menjadi pilihan ideal untuk komunikasi antar perangkat dengan sumber daya terbatas, seperti perangkat IoT.

Di luar aplikasi awalnya di industri minyak, MQTT kini telah banyak digunakan di berbagai sektor lain, seperti rumah pintar, kendaraan otonom, dan aplikasi perpesanan instan. Keunggulan utama dari MQTT adalah kemampuannya untuk menyediakan komunikasi real-time dengan menggunakan sedikit sumber daya, membuatnya sangat cocok untuk menghubungkan perangkat-perangkat dalam jumlah besar, yang memiliki keterbatasan daya dan bandwidth.

 

Keunggulan dan Karakteristik MQTT

IoT

  1. Protokol yang Ringan dan Efisien
    Salah satu alasan utama mengapa MQTT populer dalam komunikasi perangkat adalah karena protokol ini sangat ringan. MQTT dirancang untuk mengurangi overhead jaringan, yang berarti protokol ini menggunakan lebih sedikit bandwidth dibandingkan dengan banyak protokol komunikasi lainnya. Ukuran pesan yang dikirimkan melalui MQTT juga sangat kecil, sehingga mengurangi konsumsi daya baterai perangkat dan mengoptimalkan efisiensi penggunaan jaringan.

  2. Komunikasi Real-time
    MQTT dirancang untuk mentransmisikan pesan secara real-time. Dalam banyak aplikasi, terutama yang melibatkan sistem monitoring dan kontrol, kecepatan pengiriman dan penerimaan pesan sangat penting. MQTT memfasilitasi pengiriman data yang hampir instan, yang memungkinkan perangkat untuk bereaksi terhadap informasi yang diterima secara langsung. Hal ini sangat penting dalam sistem yang memerlukan respon cepat, seperti sistem keamanan atau sistem kontrol industri.

  3. Mekanisme Quality of Service (QoS)
    Salah satu fitur unik dari MQTT adalah adanya tingkat jaminan kualitas pengiriman pesan, yang disebut sebagai Quality of Service (QoS). QoS di MQTT memiliki tiga level yang berbeda, yang memungkinkan aplikasi untuk menyesuaikan tingkat keandalan pengiriman pesan sesuai dengan kebutuhan:

    • QoS 0: Pesan dikirimkan satu kali tanpa jaminan penerimaan. Ini cocok untuk aplikasi yang tidak terlalu kritis terhadap pengiriman pesan.
    • QoS 1: Pesan dikirimkan satu kali dan mengharuskan penerima untuk mengkonfirmasi penerimaan pesan. Ini cocok untuk aplikasi yang membutuhkan konfirmasi bahwa pesan telah diterima dengan benar.
    • QoS 2: Pesan dikirimkan dua kali untuk memastikan penerimaan dengan jaminan yang lebih tinggi. Ini digunakan dalam aplikasi yang sangat membutuhkan keandalan pengiriman pesan, seperti pengiriman data sensitif.
  4. Sederhana dan Mudah Digunakan
    MQTT sangat mudah untuk dipahami dan digunakan. Desainnya yang sederhana memudahkan pengembang untuk mengimplementasikan protokol ini dalam berbagai aplikasi. Selain itu, MQTT adalah protokol open-source, yang berarti siapa saja dapat mengakses dan memodifikasi kode sumbernya tanpa biaya lisensi. Hal ini memungkinkan fleksibilitas dan kustomisasi sesuai dengan kebutuhan aplikasi.

  5. Scalability (Skalabilitas)
    MQTT sangat skalabel, artinya protokol ini mampu menangani komunikasi antar jutaan perangkat secara simultan. Ini menjadikan MQTT sangat cocok untuk digunakan dalam aplikasi yang melibatkan banyak perangkat atau sensor, seperti dalam jaringan sensor di kota pintar atau dalam sistem otomatisasi industri yang kompleks. Kemampuan untuk menangani volume data yang besar adalah salah satu alasan mengapa MQTT digunakan dalam berbagai aplikasi IoT.

  6. Keamanan
    MQTT dapat digunakan bersama dengan protokol keamanan lainnya, seperti TLS (Transport Layer Security) atau SSL (Secure Sockets Layer), untuk memastikan bahwa data yang dikirimkan antar perangkat tetap aman. Penggunaan enkripsi ini penting dalam aplikasi yang membutuhkan tingkat keamanan tinggi, seperti dalam sistem kontrol industri atau aplikasi perbankan yang membutuhkan perlindungan data pribadi.

 

Komponen dalam MQTT

Keunikan MQTT terletak pada cara protokol ini mengorganisir komunikasi antar perangkat, yaitu dengan menggunakan model arsitektur publish/subscribe (terbitkan/berlangganan). Sistem ini memiliki beberapa komponen utama, yang membuatnya sangat efisien dalam mendistribusikan data antar perangkat:

  1. Publisher (Penerbit): Publisher adalah perangkat yang mengirimkan pesan. Perangkat ini mengirimkan data ke broker dengan menentukan topik tertentu yang relevan dengan pesan yang dikirimkan. Publisher tidak perlu mengetahui siapa yang akan menerima pesan tersebut; cukup dengan menentukan topik, broker akan mendistribusikan pesan tersebut ke perangkat yang sesuai.

  2. Subscriber (Pelanggan): Subscriber adalah perangkat yang berlangganan pada topik tertentu dan menerima pesan yang dikirimkan oleh publisher yang terkait dengan topik tersebut. Seorang subscriber hanya akan menerima pesan jika ia telah berlangganan pada topik yang relevan. Ini memungkinkan komunikasi yang sangat terfokus dan mengurangi pemborosan bandwidth.

  3. Broker: Broker adalah komponen yang menghubungkan publisher dengan subscriber. Broker menerima pesan dari publisher dan mendistribusikannya ke subscriber yang terdaftar pada topik yang relevan. Broker bertanggung jawab untuk menyimpan pesan jika subscriber tidak tersedia dan mengirimkannya ketika subscriber kembali online.

  4. Topik: Topik adalah kategori yang digunakan untuk mengelompokkan pesan-pesan yang dikirimkan dalam MQTT. Topik digunakan oleh broker untuk menentukan pesan mana yang harus dikirim ke subscriber. Publisher mengirimkan pesan dengan menyertakan topik tertentu, dan broker memastikan pesan tersebut diteruskan hanya ke subscriber yang berlangganan pada topik tersebut.

Dengan mekanisme ini, MQTT memungkinkan komunikasi antar perangkat yang lebih terorganisir dan efisien. Hanya perangkat yang relevan yang akan menerima pesan, sehingga mengurangi penggunaan bandwidth dan meningkatkan efisiensi jaringan.

 

Arsitektur MQTT

IoT

Protokol MQTT beroperasi di atas stack TCP/IP dan memiliki ukuran paket data yang sangat kecil (hanya 2 byte), sehingga mengurangi penggunaan bandwidth dan konsumsi daya secara signifikan.

MQTT adalah protokol data-agnostic, yang artinya dapat digunakan untuk mengirim berbagai jenis data, seperti data biner, teks, bahkan format seperti XML atau JSON.

Berbeda dengan model komunikasi client-server, MQTT menggunakan model publish/subscribe untuk pertukaran data.

Dalam arsitektur MQTT, terdapat dua komponen perangkat lunak utama yang dibutuhkan, yaitu:

  1. MQTT Client: Komponen ini diinstal pada perangkat yang ingin berkomunikasi, seperti sensor atau perangkat lainnya. Contoh aplikasi yang bisa digunakan pada perangkat seperti Arduino adalah pubsubclient.

  2. MQTT Broker: Ini adalah server yang bertugas untuk mengelola proses publish dan subscribe data antar perangkat.

Salah satu keuntungan dari sistem publish/subscribe adalah tidak ada kebutuhan bagi pengirim data (publisher) dan penerima data (subscriber) untuk saling mengetahui satu sama lain, karena ada broker yang bertindak sebagai perantara antara mereka. Proses ini disebut space decoupling.

Selain itu, ada juga time decoupling, yang berarti publisher dan subscriber tidak perlu terkoneksi pada waktu yang sama. Misalnya, seorang klien bisa saja terputus setelah melakukan subscribe ke broker. Namun, beberapa waktu kemudian, klien tersebut dapat terhubung kembali ke broker dan tetap menerima data yang tertunda. Proses ini dikenal dengan mode offline.

Untuk memperjelas konsep ini, mari kita lihat contoh sederhana:

Misalkan ada perangkat dengan sensor suhu yang ingin mengirimkan data suhu ke server atau broker. Jika sebuah ponsel atau aplikasi desktop ingin menerima data suhu ini, dua hal akan terjadi:

  1. Subscriber (ponsel atau aplikasi desktop) pertama-tama akan mendefinisikan topik "suhu".
  2. Publisher (sensor suhu) kemudian akan mengirimkan (publish) pesan yang berisi nilai suhu.
  3. Setelah itu, ponsel atau aplikasi desktop akan subscribe ke topik suhu, sehingga mereka bisa menerima pesan yang dipublikasikan.
  4. Peran broker adalah untuk menyampaikan pesan suhu yang dipublikasikan ke ponsel atau aplikasi desktop yang telah berlangganan.

Dengan cara ini, komunikasi antara perangkat menjadi lebih efisien dan fleksibel, karena mereka tidak perlu terhubung secara langsung atau bersamaan.


Penggunaan MQTT dalam Berbagai Industri

Karena karakteristiknya yang ringan dan efisien, MQTT banyak digunakan dalam berbagai sektor industri. Beberapa contoh aplikasi MQTT yang populer antara lain:

  1. Internet of Things (IoT)
    MQTT adalah protokol yang sangat ideal untuk aplikasi IoT, karena memungkinkan perangkat-perangkat pintar seperti sensor, aktuator, dan gateway untuk saling berkomunikasi dengan cara yang ringan dan efisien. Contohnya termasuk aplikasi IoT untuk pengumpulan data sensor di pabrik, pemantauan kondisi peralatan di rumah pintar, dan pelacakan aset di gudang.

    Di sektor rumah pintar, MQTT memungkinkan perangkat-perangkat seperti lampu, termostat, dan sistem keamanan untuk saling terhubung dan berkomunikasi secara real-time. Pengguna dapat mengontrol perangkat-perangkat ini dari jarak jauh menggunakan aplikasi mobile, memberikan kemudahan dan kenyamanan.

  2. Komunikasi M2M
    Dalam industri, komunikasi antar perangkat mesin (M2M) sangat penting. MQTT digunakan untuk komunikasi antar robot industri, kendaraan otonom, dan sistem kontrol akses. Di pabrik otomatis, misalnya, MQTT memungkinkan komunikasi antar robot yang bekerja di jalur produksi, atau antara perangkat di pabrik dan sistem manajemen pusat.

  3. Aplikasi Perpesanan dan Media Sosial
    MQTT juga banyak digunakan dalam aplikasi perpesanan untuk pengiriman pesan instan. Aplikasi perpesanan seperti WhatsApp, Telegram, dan WeChat memanfaatkan MQTT untuk mengirimkan pesan secara cepat dan efisien kepada pengguna. Selain itu, platform media sosial seperti Facebook, Twitter, dan Instagram juga menggunakan MQTT untuk mengirimkan notifikasi atau pembaruan status secara real-time kepada penggunanya.

  4. Jaringan Sensor
    MQTT sangat cocok untuk aplikasi yang melibatkan jaringan sensor, di mana berbagai sensor tersebar di area yang luas dan mengumpulkan data dalam jumlah besar. Sebagai contoh, dalam pemantauan lingkungan, MQTT dapat digunakan untuk menghubungkan sensor-sensor yang mengukur kualitas udara, suhu, atau kelembapan di berbagai lokasi. Begitu juga dalam pemantauan kualitas air di sungai atau danau, di mana data dari berbagai sensor dikumpulkan dan dianalisis secara real-time.

  5. Otomatisasi Industri
    Di sektor otomasi industri, MQTT digunakan untuk mengontrol dan memantau peralatan di pabrik atau infrastruktur kritis. Misalnya, dalam pengelolaan jaringan listrik, MQTT digunakan untuk menghubungkan sensor-sensor yang memantau kondisi perangkat seperti turbin angin, pembangkit listrik, atau peralatan di pabrik. Data yang dikumpulkan dari perangkat-perangkat ini memungkinkan pengambilan keputusan yang cepat dan responsif terhadap perubahan kondisi.

 

Kesimpulan

MQTT adalah protokol komunikasi yang dirancang untuk komunikasi antar perangkat yang ringan, efisien, dan handal. Dengan arsitektur publish/subscribe, protokol ini memungkinkan perangkat-perangkat dalam jaringan untuk saling berkomunikasi dengan cara yang sangat terstruktur, mengurangi penggunaan bandwidth dan meningkatkan efisiensi sistem secara keseluruhan. Kemampuan MQTT untuk menyediakan komunikasi real-time dan jaminan kualitas pengiriman pesan menjadikannya pilihan utama dalam aplikasi yang membutuhkan kecepatan, efisiensi, dan keandalan, terutama dalam ekosistem IoT dan otomatisasi industri.

Keunggulan-keunggulan ini menjadikan MQTT sangat relevan untuk digunakan dalam berbagai aplikasi dan industri, dari rumah pintar dan kendaraan otonom hingga sistem perpesanan dan pemantauan industri. Seiring dengan berkembangnya teknologi dan meningkatnya jumlah perangkat yang terhubung, MQTT akan terus memainkan peran penting dalam membangun infrastruktur komunikasi yang lebih efisien dan lebih terhubung.


Bagikan artikel ini

Video Terkait