CoAP nhằm mục đích để cho phép các thiết bị nhỏ với khả năng công suất thấp, tính toán và thông tin liên lạc để sử dụng tương tác RESTful. CoAP có thể được chia thành hai phân lớp, cụ thể là: các tin nhắn sub-layer và các yêu cầu / phản ứng phụ lớp. Các tin nhắn phụ lớp phát hiện sự trùng lặp và cung cấp thông tin liên lạc đáng tin cậy trên tầng giao vận UDP sử dụng backoff mũ từ UDP không có một cơ chế phục hồi lỗi built-in. Các yêu cầu / phản ứng phụ lớp mặt khác xử lý các thông tin liên lạc REST. CoAP sử dụng bốn loại thông điệp: confirmable, không confirmable, thiết lập lại và thừa nhận. Độ tin cậy của CoAP được thực hiện bằng cách kết hợp các thông điệp confirmable và không confirmable. Nó cũng sử dụng bốn phương thức phản ứng như minh họa trong hình. 6. Chế độ phản ứng riêng biệt được sử dụng khi máy chủ cần phải chờ một thời gian cụ thể trước khi trả lời cho khách hàng. Trong chế độ phản ứng không confirmable CoAP của, khách hàng sẽ gửi dữ liệu mà không cần chờ đợi một tin ACK, trong khi ID nhắn được sử dụng để phát hiện các bản sao. Phía máy chủ đáp ứng với một thông điệp RST khi thông điệp được bỏ qua hoặc các vấn đề truyền thông xảy ra. CoAP, như HTTP, sử dụng các phương pháp như GET, PUT, POST và DELETE để đạt được Tạo, Retrieve, Update và Delete hoạt động (CRUD). Ví dụ, phương thức GET có thể được sử dụng bởi một máy chủ để hỏi nhiệt độ của khách hàng sử dụng các phản ứng piggybacked
chế độ. Các khách hàng sẽ gửi trở lại nhiệt độ nếu nó tồn tại; nếu không, nó trả lời với một mã trạng thái để cho biết rằng các dữ liệu được yêu cầu không được tìm thấy. CoAP sử dụng một định dạng đơn giản và nhỏ để mã hóa thông điệp. Phần đầu và cố định của mỗi tin nhắn là bốn byte header. Sau đó, một giá trị thẻ có thể xuất hiện mà phạm vi từ zero đến tám byte chiều dài. Các giá trị thẻ được sử dụng cho tương quan yêu cầu và trả lời. Các tùy chọn và tải trọng là các trường tùy chọn tiếp theo. Một tin nhắn CoAP điển hình có thể từ 10 đến 20 byte [67]. Các định dạng tin nhắn của gói CoAP được mô tả trong hình. 7 [64]. Các trường trong tiêu đề như sau: Ver là phiên bản của CoAP, T là loại hình giao dịch, OC là lựa chọn số, và Mã đại diện cho phương thức yêu cầu (1-10) hoặc mã phản hồi (40-255). Ví dụ mã cho GET, POST, PUT, và
DELETE là 1, 2, 3 và 4, tương ứng. ID giao dịch trong tiêu đề là một định danh duy nhất cho phù hợp với các phản ứng. Một số tính năng quan trọng được cung cấp bởi CoAP bao gồm [65], [68]:
• Resource quan sát:. Theo yêu cầu đăng ký để theo dõi các thông quan tâm sử dụng xuất bản / đăng ký cơ chế
• vận chuyển tài nguyên Block-khôn ngoan: Khả năng trao đổi dữ liệu thu phát giữa khách hàng và các máy chủ mà không
đang được dịch, vui lòng đợi..
