Belajar IoT Engineer - IoT Networking & Gateway
Episode 14 of 28

Belajar IoT Engineer - IoT Networking & Gateway

Memperkuat lapisan komunikasi IoT: peran gateway sebagai jembatan antar protokol, translasi protokol, buffering data, agregasi banyak perangkat, serta praktik membangun gateway dengan MQTT bridge antara jaringan lokal dan cloud.

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Di episode 6 kita mengenal berbagai teknologi wireless — dan di sanalah muncul masalah klasik: sensor Zigbee di gudang tidak bisa langsung berbicara ke cloud yang memakai MQTT. Di sinilah gateway bekerja: jembatan yang menerjemahkan dan menghubungkan dunia perangkat yang beragam dengan dunia cloud.

Mengapa gateway penting? Karena nyaris tidak ada sistem IoT nyata yang memakai satu protokol. Pabrik punya sensor Modbus, smart building punya perangkat Zigbee, dan semua harus sampai ke satu cloud IoT. Gateway mengubah kebun binatang protokol menjadi satu bahasa yang seragam.

Peran Gateway

PeranFungsi
Protocol translationMengubah protokol perangkat (Zigbee, Modbus, BLE) ke protokol cloud (MQTT/HTTP)
AgregasiMengumpulkan data banyak perangkat jadi satu koneksi ke cloud
BufferingMenyimpan data saat cloud/jaringan tidak tersedia
Local processingFilter, agregasi, dan deteksi event di dekat perangkat (episode 10)
Security boundaryTitik kontrol keamanan: otentikasi perangkat, firewall ke cloud

Bayangkan gateway seperti penerjemah di bandara: penumpang berbicara berbagai bahasa, tapi petugas tetap memahami satu bahasa resmi. Gateway menyeragamkan semua protokol perangkat menjadi satu bahasa yang dipahami cloud.

Arsitektur Gateway

100%

Pola paling umum di industri: gateway lokal mengumpulkan data, lalu meneruskan ke cloud. Tiga keputusan desain kunci:

  1. Apa protokol di sisi perangkat? — menentukan hardware dan stack gateway.
  2. Apa protokol ke cloud? — hampir selalu MQTT over TLS.
  3. Apa yang dilakukan gateway secara lokal? — berapa banyak pemrosesan di sisi ini.

Praktik: MQTT Bridge dengan Mosquitto

Cara paling sederhana membangun gateway: bridge MQTT. Dua broker di-bridge: broker lokal menerima dari perangkat, broker cloud (AWS IoT) menerima forwarding-nya. Konfigurasi Mosquitto:

/etc/mosquitto/conf.d/bridge.conf
# Bridge dari broker lokal ke AWS IoT
connection aws-iot
address xxxxxxxxxxxxx-ats.iot.ap-southeast-1.amazonaws.com:8883
bridge_cafile /etc/mosquitto/certs/root-ca.pem
bridge_certfile /etc/mosquitto/certs/gateway-cert.pem
bridge_keyfile /etc/mosquitto/certs/gateway-key.pem
 
# Forward semua topik sensor ke cloud
topic sensor/# out 1
# Terima command dari cloud ke topik lokal
topic cmd/# in 1
 
bridge_protocol_version mqttv311
keepalive_interval 60
start_type automatic
Aktifkan bridge
sudo systemctl restart mosquitto
sudo systemctl status mosquitto --no-pager -l

Sekarang perangkat lokal yang publish ke sensor/# otomatis diteruskan ke AWS IoT. Konfigurasi ini juga buffering: Mosquitto menahan pesan saat koneksi ke cloud terputus dan meneruskan setelah pulih.

Translasi Protokol: Contoh Modbus → MQTT

Jika perangkat memakai Modbus (protokol industri, episode 15), gateway harus membaca register Modbus lalu memublikasikan sebagai MQTT. Di Raspberry Pi sebagai gateway:

gateway.py - Modbus ke MQTT
import paho.mqtt.client as mqtt
import minimalmodbus
 
# sensor suhu Modbus di alamat 1, register 0 (kode fungsi 3)
instrument = minimalmodbus.Instrument("/dev/ttyUSB0", 1)
instrument.serial.baudrate = 9600
instrument.serial.timeout = 1
 
client = mqtt.Client()
client.connect("localhost", 1883)
 
while True:
    try:
        temperature = instrument.read_register(0, decimals=1)
        client.publish("factory/boiler/temperature",
                       f'{{"temp":{temperature}}}')
    except Exception as e:
        print("error:", e)
    time.sleep(5)

Gateway ini "menjelaskan" bahasa Modbus ke bahasa MQTT — dan karena dijalankan sebagai Python di gateway, bisa diperluas untuk buffer, agregasi, dan transformasi data apa pun.

Buffering dan Backpressure di Gateway

Gateway adalah posisi strategis untuk buffering: saat cloud down, data tetap aman di gateway.

StrategiKeterangan
Broker bufferMosquitto menahan pesan offline (bridge config di atas)
File/SQLiteGateway menyimpan telemetry ke storage lokal, kirim ulang saat cloud pulih
Ring bufferSimpan data terbaru saja; data lama di-overwrite

Aturan praktis: buffer event yang nilainya kontekstual (alarm, status) lebih penting daripada telemetry berulang yang nilainya segera basi.

Important

Desain gateway selalu tanya: apa yang terjadi jika cloud mati selama 24 jam? Jawabannya menentukan kebutuhan buffer, ukuran storage lokal, dan perilaku saat pulih. Gateway yang langsung membuang data saat offline membuat seluruh sistem buta pada saat paling kritis.

Keamanan Gateway

Gateway adalah security boundary — titik paling menarik bagi penyerang karena memegang semua data.

  • Segregate jaringan — sisi perangkat di VLAN terpisah dari sisi cloud.
  • Update rutin — OS dan software gateway wajib di-patch (mis. patch OpenSSL yang sering).
  • Least privilege — gateway hanya boleh akses topik yang dibutuhkan, bukan semua.
  • Hardware security — simpan kunci gateway di TPM/secure element (episode 19).

Kesalahan Umum

  1. Gateway jadi single point of failure — jika gateway mati, semua perangkat di bawahnya buta; siapkan redundansi atau mode degrade.
  2. Translasi tanpa buffer — data hilang saat cloud down; pastikan buffer di gateway.
  3. Bridge tanpa TLS — komunikasi gateway→cloud terlihat penyerang.
  4. Kredensial cloud disimpan di gateway tanpa proteksi — satu gateway diretas = akses ke cloud.
  5. Menaruh terlalu banyak logika di gateway — gateway mahal dan jadi titik kegagalan; bagi beban dengan edge device dan cloud.

Penutup

Inti yang harus dibawa pulang:

  • Gateway melakukan translasi protokol, agregasi, buffering, pemrosesan lokal, dan kontrol keamanan.
  • Pola paling umum: gateway lokal mengumpulkan perangkat → MQTT bridge ke cloud.
  • Mosquitto bridge bisa meneruskan topik dan buffering saat cloud offline.
  • Translasi protokol contoh: Modbus → MQTT via Python di gateway.
  • Wajib: TLS untuk bridge, segregate jaringan, update rutin, dan least privilege.

Di episode 15 selanjutnya, kita akan memasuki dunia industri: LPWAN & industrial IoT — LoRaWAN, Sigfox, NB-IoT, protokol Modbus/OPC UA, dan dasar SCADA — plus praktik integrasi perangkat industri ke ekosistem IoT. Kalian akan siap bekerja di pabrik!

Belajar IoT Engineer - IoT Networking & Gateway | Belajar IoT Engineer