Table of Contents
MQTT (Message Queuing Telemetry Transport)는 IoT 애플리케이션에서 사용되는 경량 메시징 프로토콜입니다. 그것은 메시지 배달 신뢰성을 관리하기 위해 다양한 품질 (QoS) 수준을 제공합니다. 이러한 수준의 이해는 효율적인 안정적인 통신 시스템을 설계하는 데 도움이됩니다.
MQTT QoS 레벨 개요
MQTT는 3개의 QoS 수준을 정의합니다: 0, 1 및 2. 각 수준은 메시지 납품 보험과 네트워크 머리 위 사이 다른 균형을 제공합니다. 적합한 QoS를 선정하는 것은 신뢰성과 대기권의 신청 요구에 달려 있습니다.
각 QoS 수준의 세부사항
QoS 0: 또한 "At Most once"로 알려진이 레벨은 acknowledgment없이 한 번 메시지를 전달합니다. 그것은 가장 낮은 대기 시간이지만 배달 보장을 제공합니다.
QoS 1: "At Least가되면" 메시지가 전달되었지만 중복으로 발생할 수 있습니다. 영수증을 확인하기 위해 acknowledgment를 사용합니다.
QoS 2: "정확하게 한 번 호출"은 최고 수준의 배송 보증을 제공합니다. 중복을 방지하기 위해 4단계 핸드 핸즈를 포함합니다.
의약적인
QoS 레벨은 네트워크 트래픽, 장치 성능 및 데이터 신뢰성에 영향을 미치는 영향을 감안합니다. 높은 QoS 레벨은 메시지 전달 보증을 증가시키고, 또한 대기 시간 및 처리 오버 헤드를 추가합니다. 예를 들어, 중요한 경고는 QoS 2를 필요로하며 센서 데이터는 QoS 0을 사용하여 지연을 최소화 할 수 있습니다.
MQTT QoS에 대한 설계 팁
- QoS 레벨을 선택하면 메시지 전달의 중요성을 인식합니다.
- 균형 신뢰성은 네트워크 대역폭과 대기권 제약을 필요로 합니다.
- QoS 1 및 2에 적합한 오류 처리가 중복 및 재관리를 실시합니다.
- QoS 1 및 2에 대한 지속적인 세션을 사용하여 연결 전반에 걸쳐 메시지 상태를 유지합니다.