본문 바로가기

Life Work

[IT 서비스] MQTT 프로토콜 개요

MQTT 프로토콜은 경량 게시 및 구독 시스템으로 1999년에 처음 소개되었습니다. 이는 대역폭이 낮은 장치에 특히 유용하며, 인터넷을 통해 적은 노력으로 명령, 센서 값 또는 메시지를 보낼 수 있습니다.

작동 방식에 대한 기본 설명은 노드(예: Wi-Fi 모듈이 있는 Arduino)가 브로커에 페이로드를 보내는 것입니다. 브로커는 기본적으로 전송된 페이로드를 토픽이라는 항목에 저장하는 일종의 "중간 지점" 서버입니다. 주제는 포함된 데이터 유형에 대한 정의입니다. 예를 들어 "지하실 습도" 또는 "거실 온도"가 될 수 있습니다. 그런 다음 다른 노드가 브로커에서 이 정보를 구독할 수 있으며, 짜잔, 데이터가 인터넷을 통해 노드 A에서 노드 B로 이동되었습니다.

이를 실행하는 방법에는 여러 가지가 있으며, 사용하는 브로커 및 설정 유형에 따라 다양한 보안 계층이 있습니다. 예를 들어, 특정 위치의 온도와 같이 민감하지 않은 데이터를 처리하는 경우 누가 해당 데이터에 액세스할 수 있는지에 대해 크게 걱정하지 않습니다. 하지만 소셜 미디어 메시징 서비스와 같이 데이터를 보호해야 하는 경우도 있습니다.

데이터를 보호하는 한 가지 방법은 예를 들어 다양한 IoT 서비스를 사용할 때 흔히 사용되는 토큰을 사용하는 것입니다. 예를 들어, 브로커에 무언가를 게시하는 경우 URL이 있는 사람은 누구나 randombroker.org/randomtopic을 구독할 수 있습니다. 하지만 양쪽에 고유한 토큰을 추가하면 그렇게 할 수 없습니다. 예를 들어 이러한 토큰은 Z61253ACuLwr5T일 수 있는데 이는 정확히 추측하기 쉽지 않습니다.