토픽 124 / 147·네트워크 응용 및 고급 프로토콜
MQTT (Message Queuing Telemetry Transport)
MQTT (Message Queuing Telemetry Transport)
제한된 대역폭과 불안정한 네트워크 환경에서 경량 메시지를 전송하기 위한 발행-구독(Pub/Sub) 기반 프로토콜(ISO 표준)로, IoT 센서와 모바일 디바이스 간 M2M(Machine-to-Machine) 통신에 최적화
목적: IoT 메시징, 경량 통신, 저전력/저대역폭, 신뢰성, 대규모 디바이스 연결
특징: 발행-구독 패턴, 경량(2바이트 최소 헤더), TCP 기반, QoS 레벨, 지속 세션
구성요소
- •Broker: 메시지 중개, 토픽 관리, 클라이언트 연결, Mosquitto, EMQX, HiveMQ
- •Publisher: 메시지 발행, 토픽에 전송
- •Subscriber: 토픽 구독, 메시지 수신
- •Topic: 계층적 구조(/home/sensor/temp), 와일드카드(+, #)
QoS 레벨
- •QoS 0 (At most once): 최대 1회 전달, 확인 없음, Fire-and-Forget, 가장 빠름
- •QoS 1 (At least once): 최소 1회 전달, PUBACK 확인, 중복 가능
- •QoS 2 (Exactly once): 정확히 1회 전달, 4단계 핸드셰이크, 가장 느림
주요 기능
- •Retained Message: 마지막 메시지 저장, 새 구독자에게 즉시 전달
- •Last Will and Testament(LWT): 비정상 종료 시 유언 메시지 발행
- •Clean Session: 세션 지속 여부, 구독/메시지 상태 유지
- •Keep Alive: 연결 유지 핑, 타임아웃 설정
토픽 와일드카드
- •+ (Single Level): home/+/temp → home/living/temp, home/bed/temp
- •# (Multi Level): home/# → home/아래 모든 토픽
MQTT 5.0 신기능: 사용자 속성, 메시지 만료, 요청-응답 패턴, 공유 구독
장점: 경량(저전력), 신뢰성(QoS), 대규모 연결, 비동기, 방화벽 친화적(TCP 1883/8883)
단점: 보안(기본 암호화 없음, TLS 필요), 브로커 단일 장애점, 메시지 크기 제한
적용사례: IoT(스마트홈, 센서), 차량 텔레매틱스, 모바일 푸시, 산업 자동화(Industry 4.0)
기술요소: Pub/Sub, Broker, QoS, Retained, LWT, Topic, Mosquitto, EMQX
비교: MQTT(경량/IoT) vs AMQP(엔터프라이즈/복잡) vs HTTP(요청-응답/무거움) vs CoAP(UDP/제약)
연관: IoT, M2M, Pub/Sub, 메시지 브로커, CoAP, Kafka, 센서 네트워크