티스토리 뷰
IoT 용 애플리케이션 프로토콜
IoT의 주요 특징 중 하나는 센서, 서버, 데이터베이스, 비즈니스 엔진 및 컨텐트 소비자 간의 데이터 교환입니다. 다른 종단점 클래스간에 이 통신을 가능하게하는 많은 프로토콜이 있지만 IoT 특정 요구 사항을 염두에 두고 설계된 일부 프로토콜이 있습니다. IoT 애플리케이션에서 점점 더 인기를 얻고 있는 프로토콜에 대해 살펴 보겠습니다.
1. Message Queuing Telemetry Transport (MQTT):
2. Advanced Message Queuing Protocol (AMQP):
AMQP (Advanced Message Queuing Protocol)는 응용 프로그램간에 비즈니스 메시지를 전달하기위한 개방형 표준입니다. AMQP는 낮은 대역폭에서 낮은 성공률을 갖지만 대역폭이 증가하면 증가합니다. 그러나 AMQP를 REST와 비교하면 AMQP가 초당 더 많은 양의 메시지를 보낼 수 있습니다.
주요 사항 :
지점 간 메시지 교환 (서버 간)
유연한 메시징 패턴
TCP / IP 기반
최소 패킷 크기 : 60 바이트
QoS 지원
보안을 위해 SSL / TLS 사용
3. Constrained Application Protocol (CoAP):
Constrained Application Protocol (CoAP)은 IoT에서 제한된 노드 및 제한된 네트워크에 사용하기위한 특수 웹 전송 프로토콜입니다. UDP (TCP 오버 헤드 없음)를 통해 전체 구현을 가볍게 유지하고 GET, POST, PUT 및 DELETE와 같은 HTTP 명령을 사용하여 리소스 지향 상호 작용을 제공합니다.
주요 사항 :
요청 / 응답 아키텍처
UDP / IP 기반
QoS 지원
멀티 캐스트뿐만 아니라 유니 캐스트도 지원합니다.
보안을 위해 DTLS 사용
자원 발견 지원
CoAP 노드가 서버 역할도 수행함 (NAT 문제)
분산 형 (단일 장애 지점 없음)
4. Extensible Messaging and Presence Protocol (XMPP):
XMPP는 인스턴트 메시징, 현재 상태, 다자간 채팅, 음성 및 화상 통화, 공동 작업, 경량 미들웨어, 콘텐츠 배급 및 XML 데이터의 일반화 된 라우팅을위한 개방형 기술 집합 인 확장 가능 메시징 및 상태 프로토콜입니다.
주요 사항 :
게시 / 구독 및 요청 / 응답 아키텍처
인스턴트 메시징, 현재 상태, 음성 / 화상 통화 등에 널리 사용됩니다.
QoS 지원 없음
텍스트 기반 통신 (XML 페이로드)
보안 인증 (SASL) 및 TLS 기반 보안
XML 페이로드 작성 및 구문 분석에 별도의 계산 및 배터리 전원이 필요할 수 있습니다.
5. Very Simple Control Protocol (VSCP):
VSCP는 M2M, IoT 및 기타 원격 제어 및 측정 어플리케이션을위한 오픈 소스 표준 프로토콜입니다. 이 제품을 사용하면 단순하고 저렴한 장치를 고급 컴퓨터와 네트워크로 연결하거나 통신 매체가 무엇이든 자치 시스템으로 사용할 수 있습니다.
주요 사항 :
이벤트 기반 아키텍처
RS-323, CAN 및 / 또는 TCP / IP 활용
장치 검색, 식별 및 구성 지원
보안 장치 펌웨어 업데이트 지원
센서에서 UI까지 솔루션
6. Data Distribution Service (DDS):
DDS (Data Distribution Service)는 객체 관리 그룹의 데이터 중심 연결을위한 미들웨어 프로토콜 및 API 표준입니다. 이 시스템은 시스템의 구성 요소를 하나로 통합하여 대기 시간이 적은 데이터 연결, 극한의 안정성 및 비즈니스 및 미션 크리티컬 인터넷 (IoT) 애플리케이션에 필요한 확장 가능한 아키텍처를 제공합니다.
주요 사항 :
게시 / 구독 및 요청 / 응답 아키텍처
관계형 데이터 모델링
QoS 지원
일반 UDP 소켓을 통한 멀티 캐스트 지원
TCP / IP 및 UDP / IP 전송 모두 활용
보안을 위해 TLS 및 DTLS 사용
분산 형 (단일 장애 지점 없음)
7. RESTful HTTP (REST):
Representational State Transfer (REST)는 실제로 프로토콜이 아니라 아키텍처 스타일입니다. REST는 GET, POST, PUT 및 DELETE HTTP 메소드를 사용하여 동기 요청 / 응답 HTTP 명령을 사용하여 모든 조치를 간단하게 수행 할 수있는 자원 지향 메시징 시스템을 제공합니다.
주요 사항 :
요청 / 응답 아키텍처
TCP / IP 기반
QoS 지원 없음
클라이언트 측에서의 복잡한 구현
다른 IoT 프로토콜과 비교할 때 더 큰 헤더 (높은 대역폭 요구 사항)
보안을 위해 SSL / TLS 사용
8. OMA LightweightM2M (LWM2M):
![LWM2M](https://iotbytes.files.wordpress.com/2016/05/lwm2m.png?w=616)
LightweightM2M은 기본적으로 장치 관리 프로토콜이지만 응용 프로그램의 요구 사항을 충족 할 수 있도록 확장되어야합니다. LightweightM2M은 장치 관리에만 국한되지 않고 서비스 / 응용 프로그램 데이터를 전송할 수 있어야합니다.
주요 사항 :
단순 오브젝트 기반 자원 모델. 생성 / 검색 / 갱신 / 삭제 / 속성 설정에 대한 자원 운영
TLV, Json, 일반 텍스트, 불투명 한 데이터 형식 지원
UDP / IP 및 SMS 전송 계층 지원
보안을 위해 DTLS 사용
기본 M2M 기능 : LWM2M 서버, 액세스 제어, 장치, 연결성, 펌웨어 업데이트, 위치, 연결 통계