개발 노트

MQTT 스터디 본문

프로그래밍/IT용어설명

MQTT 스터디

알 수 없는 사용자 2022. 3. 2. 14:39

MQTT

Message Queuing Telemetry Transport => 사물인터넷 초경량 통신 프로토콜로 메시지를 발행-구독하는 방법

으로 통신하는 메시지 기반의 송수신 프로토콜

 

MQTT 개념

MQTT는 iot장치, 텔레메트리 장치 등에서 최적화되어 사용할수 있도록 개발된 프로토콜로

브로커를 사용한 publish/subscribe 방식의 라이트 메시징을 전송하는 프로토콜이다.

 

MQTT 특징

저전력 센서, 스위치, 벨브 등의 기기에 대한 표준적 인터넷환경 지원

프로토콜 리소스 점유 최소화

한정된 자원 시스템 지원

Topic 기반 MQ 메커니즘 수용

오버헤드 최소화

 

MQTT란

  • 발행, 구독 모델(Publish-subscribe pattern) 기반의 메시징 프로토콜
  • Facebook messenger가 MQTT를 사용했다고 알려져 있다
  • 경량이며 베터리 수명도 절약할 수 있어 IoT에서 많이 활용

발행자 => topic => 구독자

 

 

MQTT 구조/특징

MQTT는 말 그대로 메시지를 통한 송수신을 하게 된다

통신을 위해서는 Broker/ Publisher/ Subscriber의 3가지로 구성된다

MQTT의 메시지 발행과 구독은 오직 Broker를 통해서만 가능하며

Broker에게 Topic(주제)과  Data를 알려주면 해당 Topic을 구독하는 Client에게 Broker가 Data를 전달하는 방식으로 구성됩니다.

그렇기 때문에 MQTT통신 방식은 일대일 혹은 일대 다수의 통신이 가능합니다

Broker와 통신을 하기 위해서 Client는 연결을 요청하고 TCP/IP 소켓 연결이 되고 난 후에는ㄴ 강제적으로 연결을 종료하거나 네트워크 문제에 의해 연결이 끊어지는 경우가 아니라면 계속적으로 연결 상태를 유지하며 연결이 끊어지면 다시 접속을 하여 통신이 가능합니다.

 

Topic

메시지를 발행하고 구독하는 데 있어 가장 중요한 것이 바로 Topic 이다

Topic은 채널 단위로 구분할 수 있으며 슬래시(/)로 구분되는 계층 구조를 가지고 있습니다

 

 

Topic은 메시지를 구독과 발행할 때 여러 개의 토픽을 한 번에 지정할 수 있도록 하는 와일드카드 기능을 제공합니다.

플러스(+)문자를 통해서 단 한개의 토픽을 임의의 토픽으로 대체할 수 있습니다.

 

Topic은 샵(#)문자를 통해서 와일드카드 기능을 멀티로 지원합니다.

이 기능은 맨 마지막에만 사용될수 있으며

백화점 내의 모든 가게의 모든 물건을 체크할 수 있다는 의미입니다.

Topic은 크게 세 가지의 기능을 알고 있으면 사용상 크게 어려움은 없다고 생각합니다.

 

링크들

https://blog.naver.com/yug311861/222337392110

https://blog.naver.com/chic1007/221791986930

https://cafe.naver.com/hyperhmi/4106

https://blog.naver.com/techshare/222385138480

https://search.naver.com/search.naver?sm=tab_hty.top&where=nexearch&query=C%23+mqtt&oquery=mqtt&tqi=hAs9QdprvhGssiMIZ6VssssstFd-004742

https://blog.naver.com/guemin1212/222419895424

https://bota.tistory.com/1527

https://pros2.tistory.com/137

https://www.sysnet.pe.kr/2/0/12661

https://blog.naver.com/yug311861/222337392110

https://blog.naver.com/techshare/222385138480

https://hl4rny.tistory.com/232

http://blog.parkheesung.com/2020/02/c.html

https://msjo.kr/2020/09/11/1/

https://mobicon.tistory.com/12

https://dejavuhyo.github.io/posts/mosquitto-publisher-subscriber/

https://dejavuhyo.github.io/posts/mqtt-broker-mosquitto-install/

https://pros2.tistory.com/137

'프로그래밍 > IT용어설명' 카테고리의 다른 글

IP 관련 용어 정리  (0) 2024.01.22
TCP/IP , MQTT  (0) 2022.11.22
MQTT 예제 SubScriber Publisher  (0) 2022.03.03
MQTT정리  (0) 2022.03.03
윈도우 자동실행  (0) 2022.03.02