티스토리 뷰
1. MQTT 프로토콜
MQTT(Message Queue Telemetry Transport) 프로토콜.
MQTT는 중앙 집중식 Broker를 통해 통신하게 됩니다. 최종 장치 간의 모든 통신이 Broker를 통과합니다. Broker는 Public Server에 설치할 수 있습니다.
MQTT의 핵심은 publish / subscribe (메시지 발행 / 메시지 구독) 아키텍처를 기반으로 통신합니다.
MQTT 프로토콜에서 연결을 설정하려면 사용자 이름과 암호가 필요합니다.
2.REST 프로토콜
REST(Representational State Transfer) 프로토콜.
HTTP/TCP 계층에서 구축되며, REST 프로토콜은 Broker가 필요하지 않고 최종 장치에 직접 통신 할 수 있는 버스 기반 아키텍처를 사용합니다.
이 요청 및 응답 메시지는 정보를 교환하기 위해 최종 장치간에 사용됩니다.
|
MQTT |
REST |
Full Form (전체 양식) |
Message Queue Telemetry Transport |
Representational State Transfer |
Messages used (사용 메시지) |
Connect, connect ack, publish, publish ack, subscribe, subscribe ack, disconnect etc. (연결, 연결 요청, 메시지 발행, 메시지 발행 요청, 구독, 구독 요청, 연결해제 등.) |
GET, PUT, POST and DELETE (자원 조회, 자원 수정, 자원 생성 그리고 자원 삭제) |
Architecture (아키텍처) |
Publish/Subscribe |
Request/Response |
Need of centralized broker (중앙 브로커 유무) |
required, end devices communicate via broker (필요함, 최종 디바이스는 broker를 통해 통신) |
not required, end devices direct communicate (필요 없음, 최종 디바이스와 다이렉트 통신) |
Transport protocol (전송 프로토콜) |
TCP/IP |
TCP/IP |
Security protocol (보안 프로토콜) |
TLS |
HTTPS |
fault tolerance (내결함성) |
broker in SPoF (single point of failure) |
server in SPoF (single point of failure) |
Interoperability (상호운용성) |
foundational |
semantic |
scope (범위) |
device to cloud cloud to cloud |
device to cloud cloud to cloud |