반응형
  • 정의
    • Message Queuing Telemetry Transport
    • 메시지 대기 원격 분석 전송
  • 특징
    • 응용 계층 프로토콜임 (HTTP, FTP, DNS와 같은 계층에서 동작함)
    • TCP/IP 프로토콜 위에서 동작.
    • ISO 표준 발행-구독 (Publish-Subscribe) 기반의 메시징 프로토콜.
    • 메시지를 효율적으로 압축하여 오버헤드를 최소화화하였음.
    • 자체적적으로 보안을 제공하지 않음.
  • 쓰임새
    • 작은 데이터 값(온도 값, On, OFf 값)을 송수신하는데 적합.(영상 데이터는 부적합 
    • 작은 코드 공간이 필요한 M2M, IOT와 같은 제한된 환경에 적합.
    • 대역폭이 제한되는 원격 위치와의 연결을 위해.

 

  • 개념
    • Publisher
      메시지를 보내는 클라이언트.
      메시지가 어떤 유형인지(topic)를 설정해서 보내야함.
      * Publisher이면서 Subscriber가 될 수 있음.
    • Subscriber
      메시지를 받는 알림을 설정한 클라이언트.
      어떤 유형의(topic) 메시지를 구독할 것인지 설정(subscribe)해야함.
      * Subscriber이면서 Publisher가 될 수있음. 
    • Broker
      클라이언트들이 보낸 메시지를 수집하고
      해당 메시지를 구독한(subscribe) 클라이언트에게 전송해주는 중계 역할
      * Subscriber이면서 Publisher이면서 Broker가 될 수 있음
      * 이것은 단지 기능에 대한 구분일 뿐 하나의 클라이언트가 하나의 기능을 가지는 건 아님!
      * 하지만 broker는 독립적인 서버로 놔두고 하나의 클라이언트가 sub/pub 기능을 가지는 것이 대부분!
  • 서비스 품질(Qos)
    3가지 서비스 품질을 설정하여 publish 할 수 있음
    1. 메시지 한번만 보냄. 확인 응답 X
    2. 확인 응답 수신할 때 까지 재시도. (중복 전송될 수 있음)
    3. 메시지 한번만 전달. 송신자와 수신자는 핸드셰이크함 (보장된 전달, 성능에 희생)

 

 

  • 참고

https://www.wolfssl.com/products/wolfmqtt/

https://ko.wikipedia.org/wiki/MQTT

 

반응형