Internet of Things (viết tắt là IoT) là một kịch bản của thế giới, khi mà mỗi đồ vật, con người được qua một mạng duy nhất mà không cần đến sự tương tác trực tiếp giữa người với người, hay người với máy tính. IoT đã phát triển từ sự hội tụ của công nghệ không dây, công nghệ vi cơ điện tử và Internet. Nói đơn giản là một tập hợp các thiết bị có khả năng kết nối với nhau, với Internet và với thế giới bên ngoài để thực hiện một công việc nào đó.
Tính chất và những đặc điểm riêng
MQTT là giao thức gọn nhẹ được thiết kế chủ yếu để kết nối các thiết bị bị hạn chế nguồn trên các mạng băng thông thấp. Mặc dù nó đã tồn tại trong hơn một thập kỷ nhưng chỉ khi có sự ra đời của M2M (máy để truyền thông máy) và Internet of Things (IoT) mới làm cho nó trở thành một giao thức phổ biến.
Cảm ơn các bạn đã theo dõi bài viết của mình, ở bài viết tiếp theo, mình sẽ hướng dẫn các bạn Tìm hiểu và cài đặt MQTT broker Mosquitto - một MQTT broker nhỏ, nhẹ thường được sử dụng, các bạn cùng đón xem nhé ))
Vị trí của MQTT trong mô hình IoT
Một số ưu điểm nổi bật của MQTT như: băng thông thấp, độ tin cậy cao và có thể sử dụng ngay cả khi hệ thống mạng không ổn định, tốn rất ít byte cho việc kết nối với server và connection có thể giữ trạng thái open xuyên suốt, có thể kết nối nhiều thiết bị (MQTT client) thông qua một MQTT server (broker). Bởi vì giao thức này sử dụng băng thông thấp trong môi trường có độ trễ cao nên nó là một giao thức lý tưởng cho các ứng dụng IoT.
Với những tính năng, đặc điểm nổi bật trên, MQTT mang lại nhiều lợi ích nhất là trong hệ thống SCADA (Supervisory Control And Data Acquisition) khi truy cập dữ liệu IoT.
Mô hình Pub/Sub và Cơ chế hoạt động của MQTT
Trong đó Broker được coi như trung tâm, nó là điểm giao của tất cả các kết nối đến từ Client (Publisher/Subscriber). Nhiệm vụ chính của Broker là nhận thông điệp (message) từ Publisher, xếp vào hàng đợi rồi chuyển đến một địa điểm cụ thể. Nhiệm vụ phụ của Broker là nó có thể đảm nhận thêm một vài tính năng liên quan tới quá trình truyền thông như: bảo mật message, lưu trữ message, logs, ....
Client thì được chia thành hai nhóm là Publisher và Subscriber. Client chỉ làm ít nhất một trong 2 việc là publish các thông điệp (message) lên một/nhiều topic cụ thể hoặc subscribe một/nhiều topic nào đó để nhận message từ topic này.
MQTT Clients tương thích với hầu hết các nền tảng hệ điều hành hiện có: MAC OS, Windows, Linux, Android, iOS, ....