Skip to content

Kiến trúc Device–Gateway–Cloud

Hầu hết hệ thống IoT có thể mô tả bằng ba tầng: node thu thập dữ liệu, gateway gom và chuyển tiếp, cloud lưu trữ và xử lý. Trang này nêu vai trò từng tầng, các luồng dữ liệu và những ràng buộc khiến thiết kế IoT khác với một hệ thống mạng thông thường.

Ba tầng

flowchart LR
    subgraph Field["Hiện trường"]
        N1["Node BLE"]
        N2["Node Thread / Zigbee"]
        N3["Node LoRa"]
        N4["PLC / Modbus"]
    end
    GW["Gateway Linux<br/>dịch giao thức, đệm, xử lý cục bộ"]
    subgraph Cloud["Cloud / Data center"]
        B["Broker / IoT Hub"]
        R["Device registry"]
        D["Lưu trữ, phân tích, dashboard"]
        U["OTA server"]
    end
    N1 --> GW
    N2 --> GW
    N3 --> GW
    N4 --> GW
    GW -- "MQTT / HTTPS qua Ethernet, Wi-Fi, LTE" --> B
    B --> D
    R --- B
    U -. "firmware" .-> GW
    N5["Thiết bị kết nối trực tiếp<br/>(Wi-Fi, NB-IoT, LTE-M)"] -- "MQTT / LwM2M" --> B
Tầng Vai trò Phần cứng / phần mềm điển hình
Node Đọc cảm biến, điều khiển cơ cấu chấp hành, ngủ phần lớn thời gian MCU Cortex-M, RISC-V, ESP32; Zephyr, FreeRTOS, bare-metal
Gateway Nối mạng cục bộ (BLE, 802.15.4, LoRa, RS-485) với IP; gom dữ liệu, lọc, đệm khi mất mạng, chạy logic cục bộ SoC Cortex-A chạy Linux (Yocto, Debian); BlueZ, OpenThread Border Router, Mosquitto, container
Cloud Nhận dữ liệu, quản lý danh tính thiết bị, lưu trữ, phân tích, gửi lệnh và firmware Broker MQTT, device registry, time-series database, OTA server

Không phải hệ thống nào cũng có gateway: thiết bị có Wi-Fi hoặc modem cellular có thể giao tiếp trực tiếp với cloud. Gateway cần thiết khi node dùng giao thức không phải IP (BLE, LoRa, Modbus RTU), khi cần xử lý tại chỗ, hoặc khi muốn chia một kết nối WAN cho nhiều node.

Luồng dữ liệu

Luồng Chiều Ví dụ Đặc điểm
Telemetry Thiết bị → cloud Nhiệt độ, điện áp pin, trạng thái Nhiều, nhỏ, định kỳ; chấp nhận mất vài mẫu
Command Cloud → thiết bị Bật relay, khởi động lại Ít, cần xác nhận, thiết bị có thể đang ngủ
Configuration / State Hai chiều Chu kỳ gửi, ngưỡng cảnh báo Cloud lưu "trạng thái mong muốn", thiết bị báo "trạng thái thực tế" (device shadow / device twin)
Firmware Cloud → thiết bị Bản cập nhật rootfs, ứng dụng Lớn, cần ký số, cần rollback. Xem OTA Update
Log / diagnostic Thiết bị → cloud Log lỗi, core dump Theo yêu cầu, có thể lớn

Mô hình device shadow giải quyết vấn đề thiết bị không luôn online: cloud ghi giá trị desired, khi thiết bị kết nối lại thì đọc phần chênh lệch, áp dụng rồi cập nhật reported.

{
  "desired":  { "report_interval_s": 60 },
  "reported": { "report_interval_s": 300, "fw": "1.4.2" }
}

Ràng buộc đặc thù của IoT

  • Năng lượng: node chạy pin thường phải sống vài năm, nên thời gian thức chỉ chiếm một phần rất nhỏ (duty cycle thấp). Công nghệ radio và giao thức được chọn theo năng lượng tiêu tốn cho mỗi bản tin, không theo tốc độ.
  • Tài nguyên: RFC 7228 chia thiết bị hạn chế tài nguyên thành các lớp: Class 0 (RAM ≪ 10 KiB, flash ≪ 100 KiB), Class 1 (~10 KiB / ~100 KiB), Class 2 (~50 KiB / ~250 KiB). Gateway Linux có hàng trăm MB RAM, nên các chồng giao thức nặng (TLS đầy đủ, container) thường được dồn lên gateway.
  • Kết nối chập chờn: mạng di động, LoRa hay Wi-Fi hiện trường có thể mất vài phút đến vài ngày. Thiết bị phải đệm dữ liệu, gửi lại và chịu được việc nhận lệnh trễ.
  • Băng thông và chi phí: gói cước cellular tính theo dung lượng, LoRaWAN EU868 bị giới hạn duty cycle 1%. Payload nên gọn (CBOR, Protobuf thay vì JSON dài) và lọc bớt ngay tại gateway.
  • Vòng đời dài: thiết bị công nghiệp có thể chạy 10–15 năm. Cần có sẵn đường cập nhật phần mềm, quy trình quản lý lỗ hổng và kế hoạch xoay vòng chứng chỉ ngay từ thiết kế.
  • Triển khai hàng loạt, không người trực: không thể SSH vào từng thiết bị. Định danh, cấu hình và cập nhật đều phải tự động. Xem Provisioning & Device Identity.
  • Truy cập vật lý: kẻ tấn công có thể chạm vào thiết bị. Xem IoT Security & Compliance.

Edge, fog và cloud

Đặt xử lý ở đâu là quyết định đánh đổi:

Xử lý tại Ưu điểm Nhược điểm
Node Tiết kiệm băng thông radio nhất, phản ứng nhanh nhất Tài nguyên ít, khó cập nhật logic
Gateway (edge) Hoạt động khi mất WAN, giảm dữ liệu gửi lên, độ trễ thấp Phải quản lý một đội máy Linux ngoài hiện trường
Cloud Tài nguyên không giới hạn, dễ thay đổi, thấy toàn cục Phụ thuộc kết nối, độ trễ, chi phí truyền

Cách làm phổ biến: node chỉ đo và gửi, gateway lọc, gom và thực thi các luật đơn giản (ngưỡng, báo động cục bộ), cloud lưu trữ dài hạn và phân tích.

Topology mạng cục bộ

  • Star: mọi node giao tiếp trực tiếp với gateway (BLE, LoRaWAN, Wi-Fi). Đơn giản, node có thể ngủ sâu, nhưng tầm phủ bị giới hạn bởi một bước sóng.
  • Mesh: node chuyển tiếp cho nhau (Thread, Zigbee, BLE Mesh). Mở rộng vùng phủ và tự chữa khi một node hỏng, nhưng node router phải luôn thức nên cần nguồn điện.
  • Star-of-stars: nhiều gateway cùng nghe một node, network server loại bản tin trùng (LoRaWAN).