MQTT được phát triển bởi Tiến sĩ Andy Stanford-Clark của công ty IBM và Arlen Nipper của cơng ty Arcom từ năm 1999. Từ đó MQTT được triển khai rộng rãi trong các ngành công nghiệp trên thế giới. Hiện tại MQTT v3.1.1 là phiên bản đang được sử dụng phổ biến.
3.2.1.3 Cách thức kết nối đƣợc sử dụng trên IBM IOT Platform Kết nối giữa Client và Application
Cơ chế chính được sử dụng cho sự kết nối giữa ứng dụng (application) và các thiết bị (device) trên IBM Watson IoT platform là MQTT, đây là giao thức làm tăng tính hiệu quả trong việc trao đổi dữ liệu thời gian thực với các cảm biến hay thiết bị ngoại vi khác. IBM Watson IoT platform cung cấp cho người dùng service với tên miền xác định (organization) nhă m mục đích cho các thiết bị ( MQTT client for Device) đăng kí truyền nhận dữ liệu từ nó.
Tên miền có dạng : org_id.messaging.internetofthings.ibmcloud.com Kết nối qua cổng 1883. Trong đó org_id là một chuỗi 6 ký tự được cung cấp riêng khi đăng kí dịch vụ.
Khi được cấp một tên miền xác định, việc tiếp theo là đăng kí thiết bị ( register device) để thực hiện gửi và nhận dữ liệu trên IoT platform.
50 Cách đăng kí thiết bị .
Nhận diện và xác thực kết nối MQTT từ Client
Mỗi thiết bị đều được nhận diện dựa trên một client ID có dạng : d : org_id : device_type : device_id
Trong đó:
- d : xác định MQTT client vừa được gửi đến từ thiết bị org_id : là tên miền do IoT Platform cung cấp, để xác định đúng service mà MQTT client được gửi đến.
- device_type : Tên thiết bị khi đăng ký (register device) trên service.
- device_id : là id của thiết bị nhằm xác định thiết bị đó với thiết bị khác. Xác thực
MQTT (MQTT authentication):
MQTT service hiện nay có yêu cầu xác thực từ client kết nối. Để đảm bảo tính bảo mật, IoT Platform cần xác thực dữ liệu được gửi đến trước khi ghi nhận dữ liệu đó.