MQTT

MQTT의 작동방식

DoosanBaek 2023. 2. 3. 10:42

MQTT의 작동방식

  • 1. MQTT 클라이언트가 MQTT 브로커와의 연결을 설정한다.
  • 2. 연결되면 클라이언트에서 메시지를 게시하거나 특정  메시지를 구독하거나 둘 다 수행할 수 있다.
  • 3. MQTT 브로커는 메시지를 수신한 후 메시지에 관심이 있는 구독자에게 메시지를 전달한다.

이해를 높이기 위해 세부 정보를 항목별로 나눈다면

 

1. MQTT 주제

'주제' 라는 용어는 MQTT 브로커가 MQTT 클라이언트를 위한 메세지를 필터링할 때 사용하는 키워드다.

주제는 파일 또는 폴더 디렉터리와 유사한 계층 구조로 정렬된다.

예를 들어 여러 층으로 된 주택에서 작동하는 스마트 홈 시스템을 생각해보면, 각층에는 서로다른 스마트 디바이스가 있다. 이 경우 MQTT 브로커는 주제를 다음과 같이 정렬할 수 있다.

ourhome/groundfloor/ligingroom/light

ourhome/firstfloor/kitchen/temperature

 

2. MQTT 게시

MQTT 클라이언트는 주제 및 데이터가 바이트 형식으로 포함된 메시지를 게시한다.

클라이언트는 텍스트 데이터, 바이너리 데이터, XML 또는 JSON 파일과 같은 데이터 형식을 결정한다.

예를들어 스마트 홈 시스템의 조명은 livingroom/light 주제에 on 이라는 메시지를 게시할 수 있다.

 

3. MQTT 구독

MQTT 클라이언트는 MQTT 브로커에 SUBSCRIBE 메시지를 보내 관심 주제에 대한 메세지를 수신한다.

이 메시지에는 구독의 고유 식별자와 목록이 포함된다.

예를 들어 스마트 홈 앱을 사용하여 집안에 켜져 있는 조명의 수를 표시하려면,

light 주제를 구독하고 모든 on 메시지의 카운터를 늘린다.