Constrained Application Protocol (CoAP)

Constrained Application Protocol (CoAP) is een protocol dat specificeert hoe low-power compute-constrained devices kunnen opereren in het internet of things (IoT). CoAP is ontworpen door de Internet Engineering Task Force (ITEF) en is gespecificeerd in IETF RFC 7252.

CoAP is ontworpen om eenvoudige, beperkte apparaten in staat te stellen deel te nemen aan het IoT, zelfs via beperkte netwerken met een lage bandbreedte en lage beschikbaarheid. Het protocol wordt over het algemeen gebruikt voor machine-to-machine (M2M) communicatie.

CoAP functioneert als een soort HTTP voor apparaten met beperkingen, waardoor apparatuur op componentniveau zoals sensoren of actuatoren kunnen communiceren op het IoT, worden bestuurd en hun gegevens doorgeven als onderdeel van een systeem. Het protocol is ontworpen voor betrouwbaarheid bij lage bandbreedte en hoge congestie door zijn lage stroomverbruik en lage netwerk overhead. Volgens Jullian Vermillard, Sierra Wireless principle engineer of software, kan CoAP in een netwerk met beperkte connectiviteit of veel congestie blijven werken waar op TCP gebaseerde protocollen zoals MQTT er niet in slagen een handshake te voltooien.

De efficiënte en conservatieve eigenschappen van CoAP kunnen apparaten die in slechte signaalkwaliteit werken in staat stellen hun data betrouwbaar te verzenden of kunnen een satelliet in een baan om de aarde in staat stellen zijn communicatie op afstand succesvol te behouden. Ondanks het feit dat CoAp op kleine apparaten kan draaien, ondersteunt het netwerken met miljarden knooppunten. Voor de beveiliging zijn de standaard gekozen DTLS parameters een equivalent van 3072 bit RSA sleutels.