'IoT'에 해당하는 글 1건

Just like TT 이런 내 맘 모르고 너무해

■ MQTT의 이해
1. MQTT의 개념

- Message, Queuing, Telematry, Transport 의 약자

- 원격제어, 원격측정을 위한 통신 프로토콜을 말한다.

- MQTT의 역사 : 1999년에 발명 -> 2004년 MQTT.org 커뮤티니 오픈 -> 2011년 이클립스 파호 MQTT 오픈소스 프로젝트 -> 2013년 MQTT 사물인터넷 표준 프로토콜로 선정, OASIS

2. MQTT의 특징

- 요구조건, 경량화, 유연성, 확장성, 생산성

3. MQTT의 구조

- 발행과 구독 방식이다

- 발행자, 토픽, 브로커, 구독자로 구성된다 -> 비동기 방식, 메시지 큐 방식, 발생/구독(출판/가입) 방식

- 토픽 : /(슬래시)를 이용한 계층적 구조, 파일시스템 형식 -> 효율적인 관리

- 메시지 버스 시스템

- QoS(Qualiry of Service) : 발행/구독의 메시징 신뢰성을 위한 QoS 레벨 제공, 반드시 전달되어야 하는 중요 메시지에 대한 전달 보장

- 발행자와 구독자 모두 지정 가능, 발행자가 지정한 최대 QoS 수준이 우선시

- 클라이언트와 서버 간의 연결을 잃었을 때 이를 보정하기 위한 자체 기능을 갖추고 있다.

4, MQTT의 포맷분석

- MQTT 메시지 포맷 : 고정헤더, 가변헤더, 페이로드

- Qos 레벨 2의 경우 -> 최상의 품질 전송을 보장

- MQTT가 다룰 수 있는 최대 메시지 크기는 256M 제한된다

- 페이로드는 탑재 화물이라는 뜻으로 실제 메시지이다, 형식은 기본적으로 UTF-8로 되어 있다.

■ MQTT의 응용
1. 메시지 시퀀스

- 단기 구독의 경우

- 장기 구독의 경우

- keep Alive 타이머 : 서버는 클라이언트로 메시지가 설정된 시간 이상 오지 않으면 연결을 해지함, 연결을 유지하기 위하여 발행 메시지를 대신하여 핑 메시지를 전송한다.

- MQTT Will 메시지 : 클라이언트가 서버에 연결할 때 Will 플래그를 세팅하면, 서버는 클라이언트가 연결 종료되었을 때 모든 관련 구독자에게 Will 메시지를 전달하여 해당 클라이언트의 연결 상태를 알린다.

2. 전송계층

- 각 계층에 맞게 전략을 짜야한다.

- 참고로 아트멜사의 1284PV 같은 8비트 저사양 컴퓨터에도 MQTT가 돌아간다.

실제 구현에 필요한 서버, 클라이언트 구상도


<참고>

http://blog.naver.com/lool2389/220591052117


WRITTEN BY
테네시왈츠
항상 겸손하게 항상 새롭게 항상 진실하게

,