Offcanvas

How To / IoT / 모바일 / 신기술|미래 / 애플리케이션 / 통신|네트워크

기고 | XMPP, CoAP, MQTT··· IoT용 실시간 프로토콜 둘러보기

2015.08.20 Kurt Collins  |  InfoWorld


MQTT
MQTT(Message Queue Telemetry Transport)는 퍼블리시/섭스크라이브 메시징 프로토콜로, CoAP와 마찬가지로 자원 제약이 있는 기기를 타깃으로 개발됐다. MQTT는 메모리 및 전력 이용을 효율화하기 위한 가벼운 패킷 구조를 채택하고 있으며, 여기에 연결된 기기는 MQTT 브로커 상에 호스팅 되는 토픽에 인용된다. 어떠한 기기나 서비스가 데이터를 토픽에 발행하면, 여기에 인용된 모든 기기들은 자동적으로 갱신된 정보를 획득하게 된다.

MQTT의 주된 장점으로는 퍼블리쉬/섭스크라이브 메시지 큐(message queue)와 다-대-다 송출 기능이 이야기된다. MQTT 브로커에 수명이 긴 방출 TCP 연결을 이용하고 제한된 대역폭의 메시지를 전후방으로 전송함으로써 MQTT는 간결함과 직관성을 보장한다.

하지만 이처럼 항시 연결을 유지하는 구조는 기기의 휴식 시간을 제한한다는 단점을 지니기도 하는데, MQTT는 기기의 대부분이 휴식하는 시점에도 다른 MQTT 프로토콜인 MQTT-S(TCP가 아닌 UDP와 동작한다)를 활용함으로써 이러한 문제를 방지한다.

사물인터넷의 ABC
MQTT의 또 다른 단점은 베이스 프로토콜의 암호화 부재다. MQTT는 가벼운 프로토콜로 제작되었고 여기에 암호화를 더하게 되면 커넥션에 엄청난 오버헤드를 더하게 될 것이다. 때문에 커스텀 보안을 애플리케이션 레벨에서 더할 수는 있지만 그러려면 꽤 성가신 작업이 될 수도 있다.


기저 프로토콜에 대한 이해는 IoT 기술의 장점을 십분 누리고자 하는 개발자들에게는 매우 중요하다. IoT에 대한 관심이 높아질수록 기기간의 효율적 커뮤니케이션을 위해 필요한 것이 무엇인지 더 많은 이들이 궁금해 할 것이다.

또한, 기기와의 상호작용뿐 아니라 기기를 컨트롤 할 수 있는 API를 제작하는 이들에게 있어 실시간 커뮤니케이션은 필수다. 처음에는 인터넷을 통해 커뮤니케이션 할 수 있도록 개발되었던 것이 시간이 지나며 훨씬 더 다재다능한 무언가로 변해가고 있는 것이다.

개발자들은 언제나 가능한 모든 선택권을 열어두는 습관을 가져야 한다. 이용 가능한 프로토콜 유형과 그들 각각의 장단점을 이해하는 것은 좋은 상품을 개발하는데 반드시 필요한 노력이다.

또한 자신의 테크놀로지 프로필에 실시간 커뮤니케이션 역량을 더하는 것 역시 개발 과정을 개선하는데 많은 도움을 줄 것임을 기억하자. 아직 시장에 실시간 커뮤니케이션을 지원하는 백 엔드 서비스는 그리 많지 않은 것이 현실이다.

IoT 플랫폼 개발에 파이어베이스(Firebase)나 소켓.io(Socket.io)m 빌트.io(Built.io)를 이용한다면 개발 시간을 큰 폭으로 절감하는 것이 가능하다. 그러나 이들 역시 모든 상황의 만능 열쇠는 아님을 잊지 말자. 처한 상황에 가장 적합한 옵션을 찾는 것은 언제까지나 자신의 몫이다.

* Kurt Collins는 인포월드닷컴 뉴 테크 포럼에 기고하는 전문 기고가다. 뉴 테크 포럼에서는 부상 중인 엔터프라이즈 기술에 대한 소개와 논의를 다룬다. ciokr@idg.co.kr 

CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.