MQTT là gì? Các khái niệm cơ bản về MQTT.

  • Monday 22/08/2022

MQTT trong thời đại Internet of Things (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 đó.

Thời đại này yêu cầu một giao thức kết nối mới để đảm bảo hỗ trợ trao đổi các thông tin giữa các thiết bị, Message Queuing Telemetry Transport (MQTT) đang trở nên phổ biến. Hãy cùng nhau tìm hiểu qua bài viết dưới đây nhé.

Giao thức MQTT là gì?

I. Khái niệm cơ bản?

MQTT là cụm từ viết tắt từ Message Queueing Telemetry Transport (tạm dịch là giao thức truyền tin nhắn/thông điệp). Được sử dụng theo mô hình publish/subscribe – là một trong những giải pháp tiêu chuẩn của IoT (Internet of Things) vì quá trình truyền tải của MQTT rất nhẹ, lý tưởng để sử dụng cho các ứng dụng IoT.

MQTT là giao thức hoạt động theo theo tiêu chuẩn ISO (ISO/IEC 20922) và OASIS mở để truyền tin nhắn giữa các thiết bị. Giao thức này hoạt động trên nền tảng TCP/IP; tuy nhiên, bất kỳ giao thức mạng nào cung cấp các kết nối theo tuần tự, không mất dữ liệu (lossless), kết nối hai chiều đều có thể hỗ trợ MQTT.

II. Lịch sử hình thành.

Andy Stanford-Clark (IBM) và Arlen Nipper (Eurotech, Inc.) là tác giả phiên bản đầu tiên của giao thức vào năm 1999. MQTT khi đó được sử dụng để giám sát các đường ống dẫn dầu trong hệ thống SCADA. Mục tiêu là tạo ra một giao thức tiết kiệm băng thông, nhẹ và sử dụng ít năng lượng pin như là một giải pháp thay thế, bởi vì khi đó các thiết bị được kết nối thông qua liên kết vệ tinh cực kỳ đắt đỏ.

Vào năm 2013, IBM đã đệ trình MQTT v3.1 cho cơ quan OASIS với một điều lệ đảm bảo rằng chỉ có thể chấp nhận những thay đổi nhỏ đối với đặc điểm kỹ thuật của nó. MQTT-SN (MQTT for Sensor Networks, tạm dịch: MQTT cho Mạng cảm biến) là một biến thể (variation) của giao thức chính cho các ứng dụng chạy bằng pin trên các mạng không hỗ trợ bộ giao thức TCP/IP, như Zigbee. Sau khi tiếp nhận việc bảo trì các tiêu chuẩn từ IBM, phiên bản 3.1.1 với những thay đổi nhỏ đã được phát hành thành tiêu chuẩn OASIS vào ngày 29 tháng 10 năm 2014. Một bản nâng cấp quan trọng cho MQTT phiên bản 5, với một số tính năng mới được bổ sung, đã được phát hành vào ngày 7 tháng 3 năm 2019.

Về lịch sử phát triển, từ “MQ” trong “MQTT” đến từ dòng sản phẩm MQ của IBM (sau đó đổi tên thành “MQSeries”). Tuy nhiên, giao thức cung cấp các tin nhắn theo cơ chế publish-subscribe (tên gọi publish-subscribe có thể làm người dùng nghĩ rằng giao thức sử dụng hàng đợi (queue) nhưng hàng đợi không có trong giao thức) và được thiết kế đặc biệt cho các thiết bị hạn chế tài nguyên và băng thông thấp, mạng có độ trễ cao chẳng hạn như các đường dây quay số điện thoại và liên kết vệ tinh.

III. Cách thức hoạt động của MQTT

Các thành phần chính bao gồm Broker, Client bao gồm Publisher và Subscriber. 

Một phiên MQTT được chia thành bốn giai đoạn: kết nối, xác thực, giao tiếp và kết thúc. Client (máy khách) bắt đầu bằng cách tạo kết nối TCP/IP tới Broker bằng cách sử dụng cổng tiêu chuẩn 1883 hoặc TLS port 8883 hoặc cổng tùy chỉnh được xác định bởi các nhà phát triển Broker. Khi tạo kết nối, điều quan trọng là phải nhận ra rằng máy chủ có thể tiếp tục một phiên cũ nếu nó được cung cấp ID máy khách mà được sử dụng lại.

 Trong quá trình giao tiếp SSL/TLS, máy khách cần kiểm chứng và xác thực máy chủ. Máy khách cũng có thể cung cấp tính xác thực máy khách cho broker trong quá trình giao tiếp. Broker có thể sử dụng điều này để xác thực máy khách. Mặc dù không phải là một phần cụ thể của đặc trưng MQTT, nhưng các broker đã trở thành thông lệ để hỗ trợ xác thực máy khách bằng SSL/TLS phía máy khách.

MQTT định hướng bản tin – mỗi bản tin là một đoạn rời rạc của tín hiệu. Mỗi bản tin được publish một địa chỉ, có thể hiểu như một Topic. Client đăng kí vào một hoặc nhiều Topic để nhận dữ liệu, gọi là subscribe. Mỗi client sẽ nhận được dữ liệu khi bất kỳ trạm nào khác gửi dữ liệu vào kênh đã đăng ký. Khi một client gửi một bản tin đến một kênh nào đó gọi là publish.

Trên đây chúng tôi đã chia sẻ với các bạn một số kiển thức tổng quan về MQTT. 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 (tương tác giữa các thiết bị) và Internet of Things (IoT) đã làm cho nó trở thành một giao thức phổ biến.Hy vọng với những kiến thức trên có thể hỗ trợ các bạn nghiên cứu, tìm hiểu hay làm việc với giao thức MQTT. 

Các bạn có thể tham khảo thêm các bài viết hữu ích tại đây

HƠN 20 NĂM KINH NGHIỆM

P.A Việt Nam tiên phong trong thị trường Internet & Web.
Là nhà đăng ký tên miền lớn nhất Việt Nam.
Chuyên nghiệp trong lĩnh vực Tên miền, Lưu trữ Website.
Email, Máy Chủ, Thiết kế Web.

P.A Việt Nam cung cấp đa dạng các cấu hình Máy Chủ Ảo và Máy Chủ Riêng
Cloud Server
Cloud Server Pro
Máy Chủ Riêng

Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/

 

 

Rate this post