1. CoAP(Constrained Application Protocol)의 개요

 1-1. CoAP(Constrained Application Protocol)의 정의

  - IETF CORE(COnstraint Restful Environment) WG에서 개발한 메모리, 에너지, 성능 등에 제약이 있는 네트워크 환경(제약 노드)에서 사용 가능한 웹 기반 응용 프로토콜

 ※ 제약 노드: 데이터 공간(RAM)이 10kbps 이하이고, 코드 공간(Flash)이 100kbps 이하인 노드로 정의되어 있으며 이를 기준으로 표준화 진행 중

 

 1-2. CoAP(Constrained Application Protocol)의 필요성

  - 지능형 사물들은 비용상/설치상 문제로 값이 저렴한 (IEEE 802.15.4 같은) 무선 통신장치나 잡음이 굉장히 심한 (전력선 통신 같은) 유선으로 통신하기 때문에 불안정함.

  - 또한 사물들은 일반적인 PC, 스마트폰에 비해 느리고 메모리도 작은 프로세서를 사용하기 때문에 TCP, HTTP등은 다소 무거움.
 * HTTP가 아닌 별도의 경량 프로토콜이 필요

 

2. CoAP(Constrained Application Protocol)의 개념도, 핵심요소

 2-1. CoAP(Constrained Application Protocol)의 개념도

 

 2-2. CoAP(Constrained Application Protocol)의 핵심요소

 

핵심요소 설명
Transaction 메시지 - 트랜잭션을 비동기나 동기적으로 처리하는 계층
- 트랜잭션 별로 ID를 두어 새로운 트랜잭션에 대해서는 트랜잭션마다 새로운 ID를 생성하게끔 정의
CoAP REST - CoAP REST를 적용하기 위한 방법으로 HTTP 방식인 GET, POST, PUT, DELETE의 기본적인 방식을 사용
- HTTP의 요청 및 응답에 사용되는 리소스(온도, 습도 등)에 대한 표현은 약식 URI사용 (전체 URI 데이터 전송 시 데이터 사이즈 커짐)
UDP - CoAP에서 사용하는 기본 전송계층 프로토콜(User Datagram Protocol)
블로그 이미지

운명을바꾸는자

IT와 함께 살아가는 삶

,