MQTT는 Client-Server 게시/구독 메시징 전송 프로토콜입니다. 경량이고, 개방적이며, 단순하고, 구현하기 쉽도록 설계되었습니다. 이러한 특성으로 인해 작은 코드 풋프린트가 필요하거나 네트워크 대역폭이 제한된 Machine to Machine(M2M) 통신 및 사물 인터넷(IoT) 컨텍스트와 같은 제약된 환경을 포함하여 많은 상황에서 사용하기에 이상적입니다.
이 프로토콜은 TCP/IP 또는 순서가 보장되고, 손실이 없으며, 양방향 연결을 제공하는 다른 네트워크 프로토콜을 통해 실행됩니다. 기능은 다음과 같습니다:
· 일대다 메시지 배포와 애플리케이션의 분리를 제공하는 게시/구독 메시지 패턴 사용.
· 페이로드의 내용에 구애받지 않는 메시징 전송.
· 메시지 전달을 위한 세 가지 서비스 품질:
· "At most once", 여기서 메시지는 운영 환경의 최선의 노력에 따라 전달됩니다. 메시지 손실이 발생할 수 있습니다. 이 수준은 예를 들어 개별 측정값이 손실되어도 다음 측정값이 곧 게시되므로 문제가 되지 않는 주변 센서 데이터에 사용할 수 있습니다.
· "At least once", 메시지가 도착하는 것은 보장되지만 중복이 발생할 수 있습니다.
· "Exactly once", 메시지가 정확히 한 번 도착하도록 보장됩니다. 이 수준은 예를 들어 중복되거나 손실된 메시지가 잘못된 청구로 이어질 수 있는 청구 시스템에서 사용될 수 있습니다.
· 작은 전송 오버헤드와 네트워크 트래픽을 줄이기 위해 최소화된 프로토콜 교환.
· 비정상적인 연결 해제가 발생할 때 관심 있는 당사자에게 알리는 메커니즘.
3.1.1 및 5.0 MQTT 버전을 지원합니다.
Publish/subscribe 메시지 패턴은 일대다 메시지 분배와 애플리케이션의 분리를 제공합니다.
TsgcWSPClient_MQTT: MQTT Client Component.