MQTT dan DDS:Komunikasi Mesin ke Mesin di IoT
Internet of Things (IoT) akhir-akhir ini banyak mendapat perhatian. Dorongan di balik beberapa hal ini adalah pengumuman baru-baru ini tentang inisiatif OASIS untuk menstandarisasi protokol IBM MQTT sebagai sarana untuk "Hal-hal" untuk berkomunikasi. Posting blog New York Times ini memberikan beberapa latar belakang tentang MQTT dan pengumumannya.
Jika MQTT memberi Anda kesan déjà vu, maka Anda mungkin sudah familiar dengan standar Object Management Group (OMG) Data Distribution Service for Real-Time Systems (DDS). Seperti MQTT, DDS dirancang khusus untuk menangani komunikasi mesin-ke-mesin (M2M), dasar untuk IoT.
DDS vs. MQTT
Namun, meskipun mereka mungkin memiliki aspirasi yang sama, MQTT dan DDS adalah standar yang sangat berbeda. Masing-masing dioptimalkan berdasarkan asumsi yang berbeda tentang bagaimana IoT akan disusun:
- MQTT dioptimalkan untuk pengumpulan dan analisis data terpusat – menghubungkan sensor dan perangkat seluler ke aplikasi yang berjalan di pusat data.
- DDS dioptimalkan untuk pemrosesan terdistribusi – menghubungkan sensor, perangkat, dan aplikasi secara langsung tanpa ketergantungan pada infrastruktur TI terpusat.
Perbedaan antara MQTT dan DDS terlihat pada arsitektur dasarnya.
Arsitektur MQTT
MQTT adalah hub-and-spoke. Sensor, perangkat, dan aplikasi berkomunikasi melalui perantara pesan yang berjalan di server (atau alat) di pusat data. Semua rute komunikasi melalui broker terpusat ini.
Arsitektur DDS
DDS didesentralisasi. Hal-hal yang menghasilkan data berkomunikasi langsung dengan aplikasi dan Hal-hal yang mengkonsumsi data tersebut. Dengan kata lain, peer-to-peer. Data hanya mengalir ke pusat data jika diperlukan di pusat data.
Karena arsitekturnya yang berbeda, MQTT dan DDS cocok untuk berbagai jenis aplikasi.
Aplikasi MQTT
MQTT mengakomodasi M2M klasik aplikasi, di mana mesin klien berbicara dengan mesin server, satu-ke-satu. Contohnya adalah pemantauan aset jarak jauh, seperti sensor yang memantau sumur minyak dan jaringan pipa.
Aplikasi DDS
DDS adalah yang terbaik ketika tidak semua pemrosesan data terpusat. Misalnya, pertimbangkan sistem pemantauan pasien. Data sensor (seperti statistik vital) diperlukan di samping tempat tidur, di ruang perawat, untuk catatan kesehatan elektronik dan bahkan di perangkat seluler dokter. Akan sangat tidak efisien untuk merutekan data sensor melalui pusat data untuk membawanya ke monitor di samping tempat tidur. Bahkan mungkin secara teknis tidak dapat dipertahankan karena persyaratan bandwidth agregat.
Protokol Komunikasi IoT Mana yang Terbaik?
Jadi, meskipun MQTT dan DDS menyediakan dasar komunikasi standar untuk Internet of Things, arsitektur mereka cocok untuk topologi penyebaran yang sangat berbeda. Memilih solusi terpusat saat aliran data Anda didistribusikan dapat berdampak besar pada skalabilitas dan efisiensi aplikasi Anda.