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 메시지의 카운터를 늘린다.