CoAP: запросы к устройствам с ограниченными ресурсами
CoAP — Constrained Application Protocol для узлов и сетей с ограниченными ресурсами. Он предоставляет URI, ресурсы и обмен запрос/ответ, знакомый по Web, но не является HTTP с тем же wire format.
Базовая модель
Классический CoAP по RFC7252 использует UDP и компактные сообщения. Методы GET, POST, PUT и DELETE выражают операции над ресурсами. Confirmable-сообщения предусматривают подтверждение и повторы; Non-confirmable подходят для сценариев с другими требованиями.
Пример задачи
Датчик может предоставить ресурс температуры, а контроллер — запросить его значение. Важно отдельно определить формат payload, единицы, актуальность измерения и допустимую частоту запроса. Успешный транспортный ответ не гарантирует правильность физического датчика.
Расширения и безопасность
Наблюдение за ресурсами и блочная передача описаны отдельными расширениями. Их поддержку нужно проверить в реализации, а не считать обязательной у каждого устройства. Расход батареи зависит также от радио, сна и частоты обмена.
- Проверяйте повторную доставку и дедупликацию операций.
- Ограничивайте размер и частоту запросов.
- Выбирайте подходящий механизм защиты, например DTLS/OSCORE по поддерживаемому профилю.
- Не размещайте управляющий endpoint открыто только потому, что пакет короткий.
CoAP применим к автоматизации и мониторингу. Для чувствительных, в том числе медицинских данных, его название не доказывает безопасную передачу или пригодность системы: нужны отдельные требования и проверки.