시나브로

[ MQTT ] MQTT에 대하여 본문

임베디드/MQTT

[ MQTT ] MQTT에 대하여

혬혬 2020. 11. 11. 17:41
728x90

 

MQTT 프로토콜 : Message Queue Telemetry Transport
- ISO 표준 경량 메시지 프로토콜 
- Broker 중심으로 통신하는 구조
- Broker와 Client는 Socket으로 연결
- 계속 연결 상태 유지

 

MQTT에 대해 알아보겠습니다.

Topic

Topic은 계층적은 주체를 의미합니다. /를 이용하여 계층을 표현합니다

/building/ground/store 이러한 형태를 가지고 있으며, 채팅방의 개념과 유사하다고 생각할 수 있습니다. 

여기서  만약 store 대신 #을 적는다면, /building/ground/# ground 밑에 있는 모든 방에서 메시지를 받을 수 있게 도비니다. 이와같은 것은 Multi Level이라고 합니다. 

/building/+/store 이렇게 작성을 한다면, building 밑에 모든 객체에서 store방 있는 곳에서 모두 메시지를 받을 수 있습니다. 이와 같은 것을 Single Level이라고 합니다. 

 

Broker

Publisher(발행자 : 메시지를 보내는 쪽)와 Subscriber(구독자 : 메시지를 받는 쪽) 사이에서 중개자 역할을 하며, 메지시를 전달해주거나 가져가는 역할을 합니다.

  1.  Subscriber는 특정 Topic를 구독해둡니다
  2.  Publisher들이 특정 Topic에 메시지를 보냅니다
  3.  Broker에 Publisher가 보낸 메시지를 저장합니다
  4.  Subscriber는 Polling으로 Topic에 메시지가 있는지 확인합니다. 

위와 같은 순서로 작동됩니다. 

 

 

728x90

'임베디드 > MQTT' 카테고리의 다른 글

[ MQTT ] IoT 프로젝트  (0) 2020.11.11
Comments