CoAP

CoAP ( Constrained Application Protocol ) er en weboverførselsprotokol , der er optimeret til enheder og begrænsede netværk, der bruges i trådløse sensornetværk til at danne tingens internet . Baseret på REST- arkitektoniske stil gør det det muligt at manipulere ressourcerne til at kommunikere objekter og sensorer identificeret af URI'er gennem en klient-server- interaktionsmodel ved at stole på udveksling af anmodningssvar og metoder svarende til HTTP- protokol .

I 2016 er brugen af webtjenester almindelig i internetapplikationer. CoAP udvider dette paradigme til tingenes internet og M2M- applikationer, som således kan udvikles med delte og genanvendelige RESTful webtjenester . Under hensyntagen til begrænsningerne og behovene ved tingenes internet, såsom understøttelse af asynkron eller multicast . CoAP er planlagt til at blive en allestedsnærværende applikationsprotokol i det fremtidige Internet of Things.

CoAP-protokollen er placeret på applikationsniveauet i OSI- laget og er afhængig af UDP til kommunikation. Det implementerer en ressourceobservationsmetode og giver enhedsopdagelsesfunktioner for at minimere menneskelig indblanding. Implementeret med forskellige sprog kan denne protokol bruges inden for områder som sundhed eller energistyring. Det giver ydeevne, der er velegnet til objekter med lav ressource, samt sikkerhed for følsomme data.

Beskrivelse

CoAP blev oprettet af arbejdsgruppen CoRE ( Constrained Restful Environment ) og følger op på det arbejde, der udføres af IETF med 6LoWPAN- specifikationen, som tillader begrænsede trådløse sensornetværk at bruge "IPv6" -protokollen. CoAP tillader interaktion med disse sensorer gennem RESTful webtjenester. Denne protokol blev udviklet til begrænsede batteridrevne enheder udstyret med dårligt fungerende mikroprocessorer og med en begrænset mængde RAM og ROM- hukommelse . Det giver enkelhed, lav overbelastning til begrænsede netværk med lavt strømnetværk med høje tabsprocent. CoAP muliggør M2M-kommunikation, der kræves til interaktion og drift af indbyggede systemer. Den er defineret som en generisk protokol til netværk med lav effekt og tab og er baseret på de underliggende protokoller og netværk 6LoWPAN, IEEE802.15.4 . CoAP adskiller sig imidlertid fra sin HTTP- modstykke ved sin reducerede kompleksitet med brugen af UDP, som gør det muligt for den at have en reduceret headerstørrelse, mellem 10 og 20 byte, der let kan fortolkes af begrænsede enheder, samtidig med at en mekanisme videresendes i tilfælde af tab af beskeder. Specielt udviklet til begrænsede miljøer giver det disse hovedfunktioner:

Arkitektur

CoAP er afhængig af en klientservermodel svarende til HTTP, hvor klienter sender anmodninger til REST- ressourcer for at hente oplysninger fra en sensor eller styre en enhed og dens miljø. Imidlertid behandler CoAP udvekslinger asynkront gennem UDP-datagrammer. HTTP er en dokumenteret protokol, men dens implementering kræver en stor kodestørrelse for enheder med kun 100  kb ROM-hukommelse og høj brug af netværksressourcer.

En CoAP-anmodning svarer til en HTTP-anmodning. Det sendes af klienten for at anmode om en GET-, POST-, PUT- eller SLET-handling på en ressource identificeret af en URI . Serveren reagerer med en svarkode, muligvis ledsaget af repræsentationen af ​​ressourcen.

CoAP-arkitekturen er opdelt i to lag. Et beskedlag , der giver pålidelighed og end-to-end-udvekslingssekventering baseret på UDP. Et "Request / Response" -lag, der bruger svarmetoder og koder til interaktioner med anmodning / respons. Imidlertid er det faktisk en og samme protokol, der tilbyder disse funktioner i dens header.

Beskedlag Det Message lag giver pålidelighed for confirmable indtastede beskeder . Det sikrer derefter end-to-end kontrol og deres retransmission i tilfælde af tab. Brug af et token giver CoAP mulighed for at skabe sammenhængen mellem anmodninger og svar under en kommunikation. Mens en “Etiket” genereret og indsat af klienten i hver CoAP-meddelelsesoverskrift tillader detektering af dubletter. Når meddelelserne ikke kræver en garanti for god routing, er det også muligt, mens du drager fordel af detekteringen af ​​dubletter, at bruge meddelelser af ikke-bekræftende typer . En server, der modtager en bekræftende meddelelse, skal bekræfte sin modtagelse over for klienten, der initierer forbindelsen, og svare med en ACK- type bekræftelsesmeddelelse . Hvis serveren kan give svaret med det samme, føjes det til kvitteringsmeddelelsen, og transaktionen afsluttes. Ellers returneres en tom bekræftelsesmeddelelse til klienten for at indikere, at svaret er forsinket. Når en bekræftelig besked sendes til serveren, tæller klienten den forløbne tid ned og sender meddelelsen med jævne mellemrum, indtil meddelelsen er blevet kvitteret. Hvis serveren ikke er i stand til at behandle anmodningen, kan den angive dette for klienten ved at svare med en RST- type besked .


Anmodning-svar-lag CoAP har følgende metoder:
Metode Handling
"FÅ" Denne metode henter repræsentationen af ​​de oplysninger, der svarer til den ressource, der er identificeret ved URI-anmodningen.
"STOLPE" Denne metode anmoder om behandling af repræsentationen knyttet til den ressource, der er identificeret ved URI-anmodningen. Normalt resulterer dette i oprettelsen af ​​en ny ressource eller dens opdatering.
"SÆTTE" Denne metode anmoder om, at den ressource, der er identificeret ved URI-forespørgslen, opdateres med den vedhæftede repræsentation. Repræsentationsformatet specificeres af medietypen og kodningen, der er indeholdt i indstillingen Content-Format, hvis den findes.
"SLET" Denne metode anmoder om, at den ressource, der er identificeret ved URI-anmodningen, slettes.

Svar identificeres ved svarkoder, der er analoge med HTTP-protokolsucces 2.xx, fejl 4.xx eller 5.xx statuskoder, der angiver status for operationen.

Succes 2.xx, angiver, at anmodningen blev modtaget korrekt, forstået og accepteret. Klientfejl 4.xx angiver, at klienten stødte på en fejl. Intern serverfejl 5.xx angiver, at serveren ikke er i stand til at behandle anmodningen.

Positionering i OSI-modellen

CoAP passer ind i en 5-lags model, fysisk, datalink, netværk, transport og anvendelse.

Niveau 5 CoAP som en weboverførselsprotokol på samme niveau som HTTP-protokollen, de øverste lag ligger inden for omkredsen af ​​webbrowseren og M2M-applikationer. Niveau 4 UDP-transportlaget grænseflader med Message- underlaget til CoAP. Beskederne placeres i UDP-datagrammer, dets anvendelse sparer båndbredde og giver multicast- understøttelse . Niveau 3 IPv6, UDP-datagrammer placeres i IPv6-pakker. 6LowPAN- laget foretager tilpasningerne for det underliggende lag, der har en rammestørrelse begrænset til 128 byte. Det fortsætter til komprimering af IPv6-headere, udfører fragmenteringen og samlingen af ​​IPv6-pakkerne igen. Men også ansvarlig for adressering, routing. Niveau 2 og 1 IEEE 802.15.4 er standarden, der specificerer lag 1 og lag 2 specifikationer for trådløse personlige netværk.

CoAP-meddelelsesformat

CoAP-meddelelser transporteres som standard gennem UDP-datagrammer. Denne kommunikation kan overføres via DTLS, men også på andre måder som SMS, TCP eller SCTP. Beskederne er kodet i et simpelt binært format. En meddelelse begynder med en fast overskrift på 4 bytes, efterfulgt af et "Token" -felt med variabel størrelse mellem 0 og 8 byte, der tillader udveksling at knytte anmodninger til svar. Dens længde er angivet med "TKL" -feltet. Derefter vises en sekvens af muligheder i TLV-format efterfulgt af valgfrit af de data, der optager resten af ​​datagrammet. Hvis sidstnævnte er til stede, adskilles de fra overskriften med en 1 byte-markør, der indeholder værdien "0xFF".

Overskriften i version 1 indeholder følgende oplysninger
Mark Beskrivelse
Orm (version) Ver- feltet har 2 bit, der angiver den anvendte version af CoAP.
T (Type) Feltet Type bruges til at specificere typen af ​​meddelelsen:
  • Bekræftelig (0): Meddelelsen kræver et svar, der kan overføres ved en bekræftelsesmeddelelse eller sendes asynkront, hvis anmodningen ikke kan behandles med det samme. I dette tilfældereturneresen nulstilling . Bemærk, at en bekræftende meddelelsekan være både en anmodning og et svar, som skal bekræftes;
  • Kan ikke bekræftes (1): Meddelelsen kræver ikke noget svar eller bekræftelse;
  • Kvittering (2): Meddelelsen bekræfter modtagelsen af ​​en meddelelse, der kan bekræftes . Det kan muligvis indeholde svaret fra en bekræftende meddelelsei tilfælde af, at anmodningen ikke kunne behandles synkront, vil meddelelses-ID'et derefter bruges til at knytte svaret til anmodningen;
  • Nulstil (3): I tilfælde af at meddelelsen ikke kunne behandles.
TKL (tokenlængde) består af 4 bits, der angiver længden på feltet Token.
Kodet består af 8 bits, hvoraf de 3 mest betydningsfulde bits (c) angiver klassen og de 5 mindst signifikante bits detaljerne (dd). Koden i "c.dd" -format bruges til at angive typen af ​​meddelelse, "0" for en anmodning, "2" for et OK-svar, "4" for et svar i klientfejl, "5" for en serverfejl . I tilfælde af en anmodning angiver koden metoden til anmodningen, og i tilfælde af et svar koden for svaret. Koden "0.00" angiver en tom besked.
Besked-id består af 16 bits, der bruges til at registrere duplikering af meddelelser og til at matche bekræftelses- / nulstillingsmeddelelser til meddelelser, der kan bekræftes / ikke-bekræftes .
Polet består af 0 til 8 byte, der bruges til at knytte en anmodning til et svar.

Observation

Tilstanden for en ressource kan ændres over tid, og en klient har muligvis brug for disse tilstandsændringer. I HTTP initieres altid transaktioner af klienten, som udfører flere GET-anmodninger for at holde status på en ressource opdateret. Denne ressourcekrævende mekanisme er ikke egnet i et begrænset miljø med begrænsede netværksressourcer og for det meste sovende enheder. For at imødekomme dette behov drager CoAP fordel af en udvidelse af RFC7641-protokollen, der gør det muligt for klienter at observere ressourcer ved hjælp af observationsindstillingen. En CoAP-server er autoriteten til at afgøre, under hvilke betingelser ressourcerne ændrer deres tilstand, og det er derfor han, der beslutter, hvornår de skal informere observatørerne om de nye stater om disse ressourcer. Da protokollen ikke tilbyder et eksplicit middel til opsætning af udløsere eller tærskler, er det op til serveren at udsætte observerbare ressourcer, som underretter deres tilstand på en nyttig måde i forbindelse med applikationen. For eksempel kan en server med en temperatursensor udsætte en eller flere ressourcer. I tilfælde af at en ressource skifter tilstand hvert x sekund. En ressource kan ændre sin tilstand til kold eller varm i henhold til tilsvarende tærskler eller endda i henhold til komplekse udtryk.

Driftsprincip

Observatører registrerer sig med et emne for at angive, at de ønsker at blive underrettet om hver tilstandsændring. Emnet er ansvarlig for administrationen af ​​hans liste over registrerede observatører. Hvis observatøren er interesseret i flere emner, skal han registrere sig separat med hvert af dem. En klient registrerer sig ved at udstede en udvidet GET-anmodning med muligheden "observer: 0" til serveren. Værdien "0" er en registreringsanmodning, og værdien "1" svarer til en anmodning om at annullere registreringen. Serveren returnerer en 2.xx-meddelelse, der angiver, at den har tilføjet posten til listen over observatører. Når staten ændrer sig, sender serveren meddelelsen til klienten. Tokenet giver klienten mulighed for at identificere observationer, hvis de er flere. For at undgå overbelastning bør servere ikke sende mere end en anmeldelse hvert 3. sekund og bør bruge en mindre aggressiv værdi, hvis det er muligt. Der forventes optimeringer i fremtiden som CoCoA (Congestion Control / Advanced), der udvider CoAP-specifikationen med avanceret overbelastningskontrol.

Opdagelsestjeneste

I maskin-til-maskine ( M2M ) miljø skal enheder være i stand til at opdage hinanden og deres ressourcer. Disse begrænsede enheder kommunikerer med hinanden ved hjælp af trådløs kommunikation med lav effekt. Udfordringen er at gøre disse enheder så autonome som muligt og samtidig minimere menneskelig indgriben. Som illustreret er der to typer opdagelsestjenester til CoAP-protokollen: Centraliseret og distribueret.


Distribueret topologi CoAP Discovery

Distribueret ressourceopdagelse er den grundlæggende metode, der bruges af en enhed til at opdage ressourcerne på en anden enhed uden behov for et bibliotek. Når en klientenhed skal hente de ressourcer, der hostes på en server, udsender den en GET-anmodning til /.well-known/core URI på RFC5785-serveren.

I tilfælde af en unicast-anmodning, fordi serveradressen er kendt, vil kun målserveren svare ved at kommunikere alle sine synlige ressourcer i Core Link-formatet RFC6690.

Hvis IP multicast understøttes inden for netværket, er det også muligt at sende en multicast-anmodning for at finde slutpunkter og deres tilbudte ressourcer i en enkelt anmodning. Multicast-anmodninger er imidlertid upålidelige, fordi klienten ikke kan vide, om deres anmodning har nået alle destinationer. Klienter kan også starte forespørgsler efter specifikke typer ressourcer ved at angive parametre (rt). Serverne beslutter, hvad deres ressourcer er tilgængelige for at opdage. Denne distribuerede detektionsmetode har den fordel, at anmodninger rettes direkte fra klienten til serveren uden en mellemmand. Men dette kræver, at klienten kender IP-adressen eller værtsnavnet på serveren, hvilket betyder, at en ekstern applikation skal angive adressen, ellers bliver den hårdkodet i klientens firmware. I tilfælde af at IP-adressen er ukendt, kan klienten også udstede en naboopdagelsesanmodning, hvis adresse vil blive opnået af netværkslaget. Denne metode er imidlertid ikke ønskelig for et begrænset netværk, hvor energi skal bevares.


mDNS

Den DNS multicast (mDNS) er en uafhængig coap protokol defineret af RFC6762. MDNS er velegnet til tilsluttede enheder, da det fungerer uden infrastruktur, der er ikke behov for at konfigurere enhederne manuelt eller bruge yderligere administration til at administrere dem. Efter opdagelsen offentliggør enheder oplysninger om de tjenester og ressourcer, de tilbyder ved at lave en multicast-annonce. Når en klientenhed (for eksempel af switch-type) ønsker at få adgang til en ressource (for eksempel af lystype), bruger den de opnåede oplysninger (under offentliggørelse) til at få adgang til den.

Centraliseret topologi

CoRE-arbejdsgruppen foreslår brug af en Resource Directory (RD) enhed i LowPAN til ressourceefterforskning.

Coap Resource Directory

Resource Directory gemmer beskrivelserne af de ressourcer, som serverne har (registreret af dem selv på RD). Så kunder kan opdage alle de nødvendige ressourcer i en enkelt anmodning. For at bruge DR, enten til optagelse eller til søgning, skal enheden vide, hvordan man når den. Slutpunktet kan finde DR på flere måder. Enten har terminalpunktet adressen til RD'en statisk i sin firmware og opdager den ved opstart eller af Edge Router, der transmitterer informationen under routerannonceringen (for eksempel standardruten, hvis RD er installeret i routeren) eller ved at bruge CoRE Link Format ved at lave en GET / .well-known / core? rt = core.rd *.


Med hensyn til opdateringer kan serverne opdatere deres post, DR kan kontrollere, om en post er gyldig ved at spørge slutpunktet, og posterne kan slettes af slutpunktet når som helst. RD kan også slette poster efter detektering af en udløbet levetid.

DNS-SD

CoAP og DNS-SD undersøges af Internetsamfundet for opdagelsestjenesten i M2M-begrænsede netværk. DNS-SD er en separat protokol defineret af RFC6763. DNS-SD definerer, hvordan man navngiver og arrangerer DNS-poster For centraliseret DNS-SD-serviceopdagelse skal en DNS-SD-server være tilgængelig inden for netværksinfrastrukturen. Enhederne registrerer sig i DNS-SD efter at have opdaget det ved en af ​​følgende metoder: IPV6-router-reklame ved hjælp af mDNS-metoden beskrevet tidligere eller ved den velkendte metode. Efter registrering vil enhver enhed være i stand til at søge efter tjenester gennem DNS- forespørgsler til DNS-SD-serveren.

Gruppekommunikation

IETF CoRE- arbejdsgruppen anerkendte behovet for at støtte afsendelse af en multicast-besked til en gruppe enheder for at manipulere deres ressourcer. Arbejdet i denne gruppe resulterede i den eksperimentelle RFC7390 offentliggjort til gennemgang, der beskriver gruppekommunikation til CoAP-protokollen. Fordelen er, at begrænsede enheder kan arbejde i grupper, for eksempel til automatisering af en bygning, hvor alle lysene i et rum muligvis skal aktiveres og / eller deaktiveres på samme tid. Anmodningerne sendes i multicast, mens svarene er i unicast (aspekt specificeret i afsnit 8 i RFC7252). Der er ikke angivet nogen sikkerhedstilstand for Multicast CoAP, dvs. i denne ramme er CoAP ikke krypteret eller godkendt, og der er ingen adgangskontrol. IP multicast er generelt klassificeret som en upålidelig tjeneste, fordi der ikke er nogen garanti for levering af pakker til hvert medlem af gruppen. Imidlertid kan kvaliteten af ​​denne service forbedres ved at anvende Multicast-protokollen til MPL (Low-Power and Lossy Networks), der udfører periodiske genoverførsler. Coap reducerer risikoen for multicast-overbelastning med de foranstaltninger, der er beskrevet på side 19 og 20 i RFC7390. Der er værker, der foreslår alternative løsninger til let at manipulere grupper af ressourcer gennem enheder, der administreres af en enhedsadministrator.

Dataformat

Kommunikationsenheder adresseres ved hjælp af universelle ressourcer (URI'er), og data udveksles gennem standard XML. RESTful webservices paradigme har mange fordele for netværk med lav effekt i forhold til RPC webservices ved hjælp af SOAP (og derfor XML ). XML præsenterer en stor kompleksitet i fortolkningen, hvis den bruges i nyttelasten. Selvom webservices har mange fordele, er de anvendte protokoller og nyttelastformater ikke nødvendigvis optimeret til trådløse enheder. Mange kompressionsteknikker er udviklet til at tilpasse XML-data til begrænsede netværk, men den valgte er EXI .

EXI-formatet (Effektiv XML-udveksling) er en kompakt XML-repræsentation, der i øjeblikket er standardiseret af World Wide Web Consortium W3C. Det er designet til at understøtte højtydende XML-applikationer til ressourcebegrænsede miljøer, hvilket dramatisk reducerer kravene til båndbredde og forbedrer kodnings- og dekodningsydelsen. EXI kompression kombinerer XML med en standard komprimering algoritme til at opnå en høj kompression satser , hvilket reducerer informationsmængde af XML-dokumenter. Arbejdet har vist, at brug af EXI-komprimering til nyttelast kan være op til 50 gange mere effektiv end blot at bruge grundlæggende XML.

Praktiske implementeringer og applikationer

Der er mange CoAP-implementeringer skrevet på forskellige sprog, de leverer biblioteker og API'er, der kan bruges til integration af CoAP i trådløse sensorer og udvikling af applikationer i forskellige miljøer.

Implementering Sprog Platform Beskrivelse
Californium Java JVM Det er en Java Framework til ikke-begrænsede enheder. Det muliggør udvikling af klienter og webapplikationer, der er i stand til at kommunikere med trådløse sensornetværk.
Erbium VS Contiki Dette er en letvægts REST-motor til Contiki-operativsystemet. Det bringer internetforbindelse til begrænsede enheder.
Kobber Javascript Firefox Kobber er et Firefox-plugin til styring af CoAP-enheder, det giver brugerne mulighed for at udføre tests.
libcoap VS Posix / Contiki Libcoap-biblioteket kan bruges til implementering på enheder i klasse 1, 2 og højere.
CoapBlip VS TinyOS Det er en tilpasning af biblioteket "libcoap" til TinyOS, der er beregnet til periferiudstyr i klasse 1.
jCoAP Java JVM Skrevet i Java er jCoAP rettet mod ubegrænsede enheder såsom Android-smartphones og indlejrede systemer. Det tillader udførelse af CoAP-til-HTTP og HTTP-til-CoAP-proxy, der oversættes mellem de 2 protokoller.
coap.me Rubin Det er et testværktøj, der er tilgængeligt på en webfront på adressen, det gør det muligt at gendanne CoAP-servere.
Watteco VS Contiki Det er en kommerciel implementering af Contiki klasse 1-enheder baseret på Erbium.
Cooja VS Contiki Cooja er et simuleringsværktøj baseret på Contiki-operativsystemet, det tillader simulering og implementeringstest.

Disse implementeringer adresserer forskellige enheder, som IETF klassificerer som følger:

Klasse 0 Disse enheder er ikke i stand til sikkert at køre en RFC-kompatibel IP-stak. De skal bruge en gateway til at oprette forbindelse til Internettet. Klasse 1 Det inkluderer de fleste enheder, der har begrænsede ressourcer, der er i stand til at oprette forbindelse til Internettet med indbyggede sikkerhedsmekanismer. De har 100  kb ROM og 10  kb RAM. De kan ikke implementere en HTTP-protokolstak over TLS og kræver brug af lette protokoller med optimeret energiforbrug. Med den meget begrænsede størrelse på deres cache-hukommelse bruger de for det meste netværk med lav effekt som IEE802.15.4 på 6LowPAN. I kraft af deres ydeevne og deres beskedne omkostninger er de de foretrukne perifere enheder til dannelse af tingenes internet. Klasse 2 Dette er enheder, der kan oprette forbindelse til Internettet og har computere, der ligner smartphones. Dette er muliggjort med ca.  250 KB ROM og 50 KB RAM. De kan drage fordel af fordelene ved en letvægts- og lavenergiprotokol for at frigøre ressourcer til deres applikationer og reducere deres produktionsomkostninger.

Forskningsmiljøet har foretaget mange implementeringer af CoAP. Flere store aktører inden for bygningsautomation og måling har vist deres interesse i at bruge denne protokol i deres indbyggede systemer. Disse undersøgelser har vist muligheden for at implementere CoAP med kun omkring ti kilobyte ROM og RAM-hukommelse, men også for at evaluere dens ydeevne: responstid, energiforbrug, dens overbelastning. En implementering af Contiki OS fremhæver CoAP's gevinster med hensyn til energistyring, men også at brugen af ​​" ContiMAC RDC " -protokollen til at optimere driftscyklusser for forbrugerradiokomponenter giver lignende gevinster og rejser spørgsmålet. interessen for at holde energibesparende mekanismer på niveauet med applikationslagene. CoAP-implementeringen udført på Contiki viser en besættelse på 8,5  kb ROM og 1,5  kb RAM med det tilknyttede REST-lag. Eksperimentering viser også, at udvekslingen af ​​anmodninger og svar er mere energieffektive, når hver besked kan passe ind i en enkelt 802.15.4 ramme.

Evalueringen af ​​CoapBlip-biblioteket fremhæver et problem i processen med at tilpasse bibliotekerne uafhængigt af operativsystemet, hvilket derefter ikke garanterer ydeevne og pålidelig udførelse. En indbygget implementering af operativsystemet er meget mere effektiv. Målingerne viser, at nyttelasten ikke kan overstige 650 byte med CoapBlip, når den specifikke TinyCoAP-implementering når 1200 byte. TinyCoAP er hurtigere end CoapBlip-tilpasningen, bruger mindre energi og kan håndtere et større antal anmodninger

Endelig udføres i flere implementeringer end-to-end-kommunikation med sensornetværk ved hjælp af CoAP gennem en proxyserver, der er ansvarlig for at foretage protokoltilpasninger. En anden tilgang er mulig ved at deportere tilpasningsbehandlingen til klientens webbrowser ved brug af en JVM og JavaScript, hvorfor man undgår brugen af ​​mellemliggende servere.

Praktiske anvendelser

Der er mange anvendelsesområder. CoAP er med succes implementeret i eksperimenter inden for sundhed, energistyring og konstruktion.

Sundhedsovervågningssystem

Inden for sundhed er en af ​​de praktiske anvendelser realiseringen af ​​et sundhedsovervågningssystem med et netværk af trådløse sensorer baseret på CoAP for at reducere arbejdsbyrden for de medicinske centre, der udfører analyserne og lette hurtig patientbehandling i en nødsituation. Denne infrastruktur overvåger patientens sundhedsmæssige forhold og giver adgang til vigtige parametre til enhver tid med en webbrowser fra ethvert sted. Dette giver patienter, der ikke er i kritisk tilstand, mulighed for at forlade hospitalet, da deres vitale tegn kan overvåges i realtid hjemmefra. CoAP gør det muligt at modellere egenskaberne for sundhedsfølere som ressourcer og udsætte dem for klienter. Disse ressourcer manipuleres derefter ved hjælp af HTTP-metoder gennem en webbrowser.

I et CoAP-baseret trådløst sensornetværk kan hver opføre sig som en server og udsætte stien til en ressource "  /.well-known/core  " for at muliggøre opdagelse af ressourcer fra klienter. Sidstnævnte får adgang til denne placering ved hjælp af en "POST" -metode for at erklære deres egne ressourcer eller en "GET" -metode for at finde de allerede deklarerede ressourcer. Indstillingen Observer , når den bruges med en "GET" -metode, giver klienter mulighed for at signalere deres interesse for en ressource. I tilfælde af en opdatering af denne ressource underretter serveren derefter asynkront klienterne. I eksperimentet er de traditionelle sensorer, der er ansvarlige for at kontrollere hjertefrekvensen, iltmætning i blodet og elektrokardiogrammer , forbundet til begrænsede perifere enheder såsom “Telos Mote” gennem et serielt link, hvor Contiki OS er installeret. Erbium-implementeringen med sin REST-motor er ansvarlig for at udsætte ressourcerne for hver sensor. I tilfælde af en sensor, der overvåger hjerterytmen og udsætter dens ressourcer til adressen "coap: // server / oximeter / hrs". Klienten sender en anmodning, der indeholder en "GET" -metode med "uri-host = server" og "uri-path = / oximeter / hrs" for at få patientens puls og fremtidige opdateringer tilbage. Oplysninger, der opnås med patientens sensorer, overføres til webserveren i JSON- format , derefter gemt og brugt af medicinsk personale.

Intelligent energistyringssystem, Smart Grid

Et intelligent el-distributionsnet stræber efter at optimere energiproduktion, distribution og forbrug. Implementeringen af ​​et hjemmeenergistyringssystem, der er i stand til at interagere med husholdningsudstyr og kommunikere med et smart net, gør det muligt at kontrollere forbruget og opnå energibesparelser. Systemet består af et hjemmeenergistyringssystem kaldet HEMS installeret i hjemmet baseret på en gratis løsning og et netværk af aktuatorer og sensorer kaldet HEC ved hjælp af CoAP-protokollen tilsluttet husholdningsudstyr. HEC'er tilsluttet hjemmets lokale netværk genvinder energiforbrug: spænding, øjeblikkelig strøm fra det tilsluttede udstyr. Disse data sendes asynkront til HEMS takket være  CoAP- observationsmekanismen . Disse behandles af energioptimeringsalgoritmer, der udføres på HEMS-systemet, som derefter kan styre HEC-ressourcerne gennem CoAP-metoder for at anmode om, at de er slået til eller fra.

Bygningsautomatisering

Inden for bygningsautomatisering. De ressourcer, der administreres af det historiske BacNet , LON- protokoller, kan tilpasses til at arbejde med CoAP, de historiske meddelelser kan overføres i nyttelasten af ​​CoAP-meddelelser. Med understøttelse af multicast- og gruppekommunikation kan en enhed kommunikere med andre enheder, der deler de samme karakteristika (for eksempel: adressering af alle enheder i et rum).

Andre anvendelsesområder

CoAP kan også bruges i applikationsområder som transport, industri, landbrug, hjem.


Forestillinger

De forskellige implementeringer fremhæver følgende punkter:

  • Effektivt energiforbrug takket være det reducerede CoAP-header. Brugen af ​​sidstnævnte er mere effektiv end dets HTTP-modstykke og bedre egnet til trådløse sensornetværk;
  • EXI (Compact Representation of XML) komprimering forbundet med CoAP er en mere energieffektiv tilgang end CoAP / XML kombinationen. Dette fører til reduceret kompleksitet, besparelser med hensyn til båndbredde og lettere fortolkning;
  • Reduceret ventetid på grund af brugen af ​​UDP;

Økonomisk viser andre undersøgelser, at valget om at bruge CoAP viser sig at være et klogt valg sammenlignet med HTTP:

  • Observer-funktionen i CoAP sparer batteriet på et tilsluttet objekt: det går i dvale i slutningen af ​​deres forbindelsessession og genaktiveres med hver nye session;
  • enkelheden af ​​CoAP-specifikationen sammenlignet med HTTP kan føre til besparelser i softwareudviklingsomkostninger på grund af hurtigere og lettere implementering af CoAP;
  • Den lave trafik, der genereres af CoAP, oversættes også til et lavt forbrug af trafikmængde, hvilket sparer på forbindelsesomkostninger (afsnit 5.2). Undersøgelsen afslører, at en CoAP-løsning på 10.000 tilsluttede objekter har brug for 64  GB data og mere end 400  GB til en CoAP / HTTP-løsning.

Udført arbejde sammenligner CoAP-ydeevne med sin forgænger, HTTP. CoAP-responstider er meget kortere end HTTP med en estimeret besparelsestid på omkring 30% takket være headerkomprimering og det faktum, at CoAP bruger UDP. Hovedkomprimering vil også have en indvirkning på strømforbruget. Antallet af overførte bytes er lavere i en CoAP-transaktion sammenlignet med en HTTP-transaktion

På niveauet med CoAP-opdagelsesprotokollerne overgår den distribuerede mekanisme den centraliserede mekanisme vedrørende overbelastning, siden opdagelsen af ​​RD (Resource Discovery) og de forskellige registreringsfaser ikke udføres. Med hensyn til DNS-opdagelsesprotokollerne er de mindre effektive med hensyn til overbelastning end CoAp-protokollen. Faktisk er CoAP-opdagelse den mest rimelige tilgang i et begrænset enhedsmiljø med lavt strømforbrug.

Processen med at sikre strømme i CoAP er ikke uden indflydelse på udstyrets ROM-hukommelse, når datakryptering udføres på en hardware måde, og brugen af ​​RAM på mere end 80% kan også være et problem, fordi dette kan forhindre korrekt drift af andre applikationer, der kører på udstyret.

Netværksprotokolydelse spiller en vigtig rolle i strømforbrug, og CoAP er afhængig af denne ydeevne på grund af den underliggende transportprotokol UDP, hyppig pakkefragmentering og enkle retransmissionsmekanismer. Strømforbruget i CoAP stiger, når pakkestørrelsen bliver større end 1024 byte på grund af fragmentering.

sikkerhed

Enheder, der bruger CoAP-protokollen, skal være i stand til at beskytte informationsstrømmen af ​​følsom karakter (for eksempel for sundhedssektoren). Effektiv sikkerhed i CoAP kan opsummeres i de forskellige temaer, der præsenteres i følgende tabel:

Temaer Tilknyttede trusler
Integritet Downloader ondsindet kode
Tilgængelighed Denial of service ( DoS )
Fortrolighed Trafikanalyse

Aflytning (aflytning)

For at sikre strømme i CoAP, DTLS , Datagram Transport Layer Security, den største sikkerhedsprotokol i IoT, der blev specificeret af IETF i RFC  6347, var designet til at sikre end-til-end-kommunikation mellem to enheder. DTLS er en version af TLS og overtager funktionaliteten af ​​sidstnævnte, men bruger Transportlaget fra UDP i modsætning til TLS, der bruger TCP .


DTLS-repræsentation i protokolstakken

CoAP
Sikkerhed - DTLS
Transportlag - UDP
Netværkslag - IPV6
Fysisk lag - IEEE 802.15.4


DTLS er en protokol, der består af to lag:

  • det nedre "Record Protocol" -lag, der giver sikker symmetrisk nøglekryptering for at sikre meddelelsens fortrolighed og / eller integritet;
  • Det øverste lag består af fire protokoller, der tager sig af værtsgodkendelse, fejlrapportering og datakryptering.

CoAP-baserede IoT-enheder er konfigureret i en af ​​følgende 4 sikkerhedstilstande:

  • NoSec: Der er ingen sikkerhed på protokolniveau. DTLS er deaktiveret;
  • PreSharedKey: DTLS er aktiveret, der er en liste over fordelte nøgler (RFC4279), og hver nøgle indeholder en liste over noder;
  • RawPublicKey: DTLS er aktiveret, og enheden har et asymmetrisk nøglepar uden certifikat;
  • Certifikat: DTLS er aktiveret, og enheden har et asymmetrisk nøglepar med et X.509- certifikat .

I "NoSec" -tilstand er systemet kun beskyttet ved at blokere afsendelse eller modtagelse af pakker på netværket af en angriber og sender simpelthen pakkerne via UDP.

CoAP er baseret på URI-kommandoerne "coap" eller "coaps" - når DTLS bruges - til at identificere ressourcer og deres placering. Brugen af ​​"coaps" indebærer, at UDP-datagrammer er sikret med DTLS. De tilgængelige ressourcer gennem "coaps" deles ikke med "coap", selvom deres ressourceidentifikator er identisk.

CoaP er pr. Definition en begrænset protokol, og dets anvendelse med DTLS, som det er, udgør et problem, fordi det var designet til traditionelle computernetværk.

DTLS er en tung protokol, og dens overskrifter er for lange til at passe i en enkelt IEEE802.15.4-ramme. For at overvinde kompatibilitetsproblemer giver 6LoWPAN , netværkslaget, som CoAP er afhængig af, headerkomprimeringsmekanismer for at reducere størrelsen på de øverste lagheadere (DTLS).

IPSec , sikkerhedsprotokollen til IP-stakken, kan bruges til at sikre CoAP-strømme i begrænsede miljøer og især ESP, når CoAP bruges uden DTLS.
Brugen af ​​IPsec mellem CoAP-slutpunkter er gennemsigtig for applikationslaget og kræver ikke særlige betingelser for implementering i CoAP. Imidlertid er IPsec muligvis ikke egnet til alle miljøer: firewalls og NAT'er kan i høj grad begrænse brugen af ​​IPsec
.

Brug af en beskyttelsesmekanisme som DTLS er afgørende for CoAP-netværk og -systemer, men de giver ikke adgangskontrol. Brug af adgangskontrol på en CoAP-enhed kan give LÆS / SKRIF adgang til sine tjenester til en gruppe brugere, mens kun LÆS kun adgang til en anden gruppe. Dette tilføjer endnu et lag af beskyttelse og øger dermed sikkerheden på niveauet for CoAP-strømme.

Historisk

CoRE-arbejdsgruppen, Constrained RESTFul Environment oprettede CoAP-protokollen som et resultat af arbejdet i 6LoWPAN- arbejdsgruppen . CoAPs mål er at udvide WEB-arkitekturen til Machine to Machine (M2M) og Internet of Things (IoT) -applikationer ved hjælp af begrænsede systemer Webtjenester over Internettet er vigtige elementer i de fleste applikationer og afhænger af REST-arkitekturen. For at gøre dette muligt har CORE defineret CoAP-protokollen, Constrained Application Protocol. Denne protokol tillader kommunikation mellem forbundne objekter i en begrænset arkitektur. CoAP-protokollen er målrettet mod udstyr og maskiner, som undertiden kun har en 8-bit processor mikrocontroller med meget lidt hukommelse, og som er forbundet med langsomme og upålidelige radioforbindelser, LowPAN'erne.
CoAP udvikler sig konstant. Protokollen er beriget med udvidelser som Observer, Gruppekommunikation ...


December 2009 Grundlaget for protokollen (draft-bormann-core-coap-block-00). Maj 2010 Protokolspecifikationer (CoAP) Constrained Application Protocol (draft-shelby-core-coap-01). 2010-2014 Udvikling af protokollen (de forskellige version-draft-ietf-core-coap-versioner fra 00 til 18). Juni 2014 Oprettet af RFC7252 The Constrained Application Protocol (CoAP). Oktober 2014 Oprettelse RFC7390 gruppekommunikation til CoAP (Constrained Application Protocol). September 2015 RFC7641 Overholdelse af ressourcer i den begrænsede applikationsprotokol. August 2016 RFC7959 Block-Wise-overførsler i CoAP (Constrained Application Protocol).

Bibliografi

RFC (er)

Artikler

  • (en) C. Bormann , AP Castellani og Z. Shelby , "  CoAP: En applikationsprotokol for milliarder af små internetnoder  " , IEEE Internet Computing , vol.  16, nr .  21 st marts 2012, s.  62–67 ( ISSN  1089-7801 , DOI  10.1109 / MIC.2012.29 , læst online , adgang til 9. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (da) W. Colitti , K. Steenhaut , N. De Caro , B. Buta og V. Dobrota , ”  Evaluering af begrænset applikationsprotokol til trådløse sensornetværk  ” , Local & Metropolitan Area Networks (LANMAN), 2011 18. IEEE Workshop om ,Marts-april 2011( ISSN  1944-0375 , DOI  10.1109 / LANMAN.2011.6076934 ) Dokument, der bruges til at skrive artiklen
  • ( fr ) Reem Abdul. Raham og B. Shah , “  Sikkerhedsanalyse af IoT-protokoller: Et fokus i CoAP  ” , 2016 3. MEC International Conference on Big Data and Smart City (ICBDSC) ,marts 2016, s.  1-7 ( DOI  10.1109 / ICBDSC.2016.7460363 ) Dokument, der bruges til at skrive artiklen
  • (en) R. Martins , V. Schaurich , L. Knob , J. Wickboldt , A. Filho , L. Granville og M. Pias , "  Performance Analysis of 6LoWPAN and CoAP for Secure Communications in Smart Homes  " , Advanced Information Networking and Applications (AINA), 2016 IEEE 30. internationale konference om ,marts 2016( ISSN  1550-445X , DOI  10.1109 / AINA.2016.82 ) Dokument, der bruges til at skrive artiklen
  • (en) A. Betzler , C. Gomez , I. Demirkol og J. Paradells , "  CoCoA +: En avanceret overbelastningskontrolmekanisme for CoAP  " , Ad Hoc Networks , vol.  33,april 2015, s.  126-139 ( DOI  10.1016 / j.adhoc.2015.04.007 )
  • (da) Angelo P. Castellani , M. Rossi og M. Zorzi , "  Modtryksbelastningskontrol for CoAP / 6LoWPAN-netværk  " , Ad Hoc Networks , vol.  18,Marts 2013, s.  71-84 ( DOI  10.1016 / j.adhoc.2013.02.007 )
  • (en) G. Cho , S. Chun , X. Jin og K. Lee , "  Enhancing CoAP proxy for semantic composition and multicast communication  " , UbiComp / ISWC'15 Adjunct ,september 2015, s.  205-208 ( DOI  10.1145 / 2800835.2800920 )
  • (en) F. Abeele , J. Hoebeke , I. Ishaq , Girum K. Teklemariam , J. Rossey , I. Moerman og P. Demeester , ”  Opbygning af indlejrede applikationer via REST-tjenester til tingenes internet  ” , Forløb den 11. ACM-konference om integrerede netværkssensorsystemer , nr .  82,November 2013( DOI  10.1145 / 2517351.2517426 )
  • (en) A. Betzler , J. Isern , C. Gomez , I. Dermirkol og J. Paradells , "  Eksperimentel evaluering af overbelastningskontrol til CoAP-kommunikation uden end-to-end pålidelighed  " , Ad Hoc Networks , bind.  52,december 2016, s.  183-194 ( DOI  10.1016 / j.adhoc.2016.07.011 ) Dokument, der bruges til at skrive artiklen
  • (en) M. Prakash og CJ KavithaPriya , "  En analyse af protokolletyper implementeret på internet af ting baseret på pakkeforhold  " , ICTCS '16 , nr .  27,marts 2016( DOI  10.1145 / 2905055.2905085 ) Dokument, der bruges til at skrive artiklen
  • (en) M. Kovatsch , "  CoAP for tingenes web: fra små ressourcebegrænsede enheder til webbrowseren  " , UbiComp'13 Adjunct ,September 2013( DOI  10.1145 / 2494091.2497583 ) Dokument, der bruges til at skrive artiklen
  • (en) A. Al-Fuqaha , M. Guizani , M. Mohammadi , M. Aledhari og M. Ayyash , "  Internet of Things: A Survey on Enabling Technologies, Protocols and Applications  " , IEEE Communications Surveys & Tutorials , bind.  17, nr .  4,juni 2015, s.  2347-2376 ( ISSN  1553-877X , DOI  10.1109 / COMST.2015.2444095 ) Dokument, der bruges til at skrive artiklen
  • (en) I. Ishaq , J. Hoebeke , F. Van Den Abeele , I. Moerman og P. Demeester , "  Gruppekommunikation i begrænsede miljøer ved hjælp af CoAP-baserede enheder  " , Distribueret databehandling i sensorsystemer (DCOSS), 2013 IEEE International Konference om ,maj 2013( DOI  10.1109 / DCOSS.2013.14 ) Dokument, der bruges til at skrive artiklen
  • (en) Shahid Raza , Simon Duquennoy , Tony Chung , Dogan Yazar , Thiemo Voigt og Utz Roedig , "  Sikring af kommunikation i 6LoWPAN med komprimeret IPsec  " , Distribueret databehandling i sensorsystemer og workshops (DCOSS), 2011 International Conference on ,august 2011( DOI  10.1109 / DCOSS.2011.5982177 )
  • (en) Ajit A. Chavan og Mininath K. Nighot , "  Sikker og omkostningseffektiv applikationslagsprotokol med godkendelsesinteroperabilitet for IOT  " , Elsevier Science Direct Freedom Collection , bind.  78,december 2015, s.  646 - 651 ( DOI  10.1016 / j.procs.2016.02.112 )
  • (en) Shahid Raza , Hossein Shafagh , Kasun Hewage , René Hummen og Thiemo Voigt , "  Lithe: Lightweight Secure CoAP for the Internet of Things  " , IEEE Sensors Journal , bind.  13,August 2013, s.  3711 - 3720 ( DOI  10.1109 / JSEN.2013.2277656 )
  • (en) Shahid Raza , Daniele Trabalza og Thiemo Voigt , "  6LoWPAN Compressed DTLS for CoAP  " , Distribueret databehandling i sensorsystemer (DCOSS), 2012 IEEE 8. internationale konference om ,Maj 2012, s.  287 - 289 ( DOI  10.1109 / DCOSS.2012.55 ) Dokument, der bruges til at skrive artiklen
  • (en) Sye Loong Keoh , Sandeep S. Kumar og Hannes Tschofenig , ”  Sikring af tingenes internet: et standardiseringsperspektiv  ” , IEEE Internet of Things Journal , bind.  1,juni 2014, s.  265 - 275 ( DOI  10.1109 / JIOT.2014.2323395 )
  • (en) Stefanie Gerdes , Olaf Bergmann og Carsten Bormann , "  Delegeret godkendt autorisation til begrænsede miljøer  " , netværksprotokoller (ICNP), 2014 IEEE 22. internationale konference om ,oktober 2014, s.  654 - 659 ( DOI  10.1109 / ICNP.2014.104 )
  • (en) S Bandyopadhyay og A Bhattacharyya , "  Letvægts internetprotokoller til internetaktivering af sensorer ved hjælp af begrænsede gateway-enheder  " , Computing, Networking and Communications (ICNC), 2013 International Conference on ,Januar 2013( DOI  10.1109 / ICCNC.2013.6504105 ) Dokument, der bruges til at skrive artiklen
  • (da) B Villaverde , D Pesch , R Alberola , S Fedor og M Boubekeur , "  Constrained Application Protocol for Low Power Embedded Networks: A Survey  " , Innovative Mobile and Internet Services in Ubiquitous Computing (IMIS), 2012 Sjette internationale konference om , Ud over dette skal du vide mere om det.Juli 2012( DOI  10.1109 / IMIS.2012.93 ) Dokument, der bruges til at skrive artiklen
  • (en) M. Castra , A. Jara og A. Skarmeta , "  Aktivering af ende-til-ende CoAP-baseret kommunikation til tingenes web  " , Journal of Network and Computer Applications , vol.  59,januar 2016, s.  230-236 ( DOI  10.1016 / j.jnca.2014.09.019 )
  • (en) M. Kovatsch , S. Duquennoy og A. Dunkels , “  A Low-Power CoAP for Contiki  ” , Mobile Adhoc and Sensor Systems (MASS), 2011 IEEE 8. internationale konference om ,oktober 2011( ISSN  2155-6806 , DOI  10.1109 / MASS.2011.100 ) Dokument, der bruges til at skrive artiklen
  • (en) T. Leva , O. Mazhelis og H. Suomi , "  Sammenligning af omkostningseffektiviteten af ​​CoAP og HTTP i Web of Things-applikationer  " , Decision Support Systems , vol.  63,juli 2014, s.  23-28 ( DOI  10.1016 / j.dss.2013.09.009 ) Dokument, der bruges til at skrive artiklen
  • (in) MP. Palattella , N. Accettura , X. Vilajosana , T. Watteyne , LA. Grieco , G. Boggia og M. Dohler , "  Standardiseret protokolstak til Internettet af (vigtige) ting  " , IEEE Communications Surveys & Tutorials , vol.  15, nr .  3,December 2012, s.  1389-1406 ( ISSN  1553-877X , DOI  10.1109 / SURV.2012.111412.00158 ) Dokument, der bruges til at skrive artiklen
  • (en) G. Ketema , J. Hoebeke , I. Moerman og P. Demeester , “  Effektivt at observere Internet of Things Resources  ” , 2012 IEEE International Conference on Green Computing and Communications (GreenCom) ,1 st november 2012, s.  446–449 ( DOI  10.1109 / GreenCom.2012.70 , læst online , adgang 21. november 2016 )
  • (en) C. Hennebert og JD Santos , “  Sikkerhedsprotokoller og privatlivsproblemer i 6LoWPAN Stack: A Synthesis  ” , IEEE Internet of Things Journal , vol.  1, nr .  5,1 st oktober 2014, s.  384–398 ( ISSN  2327-4662 , DOI  10.1109 / JIOT.2014.2359538 , læst online , adgang til 22. november 2016 ) Dokument, der bruges til at skrive artiklen
  • (da) August Betzler , Javier Isern , Carles Gomez og Ilker Demirkol , "  Eksperimentel evaluering af overbelastningskontrol for CoAP-kommunikation uden end-to-end pålidelighed  " , Ad Hoc-netværk , modellering og ydeevneevaluering af trådløse Ad Hoc-netværk, bind.  52,1 st december 2016, s.  183–194 ( DOI  10.1016 / j.adhoc.2016.07.011 , læst online , adgang 23. november 2016 ) Dokument, der bruges til at skrive artiklen
  • (da) J. Pradilla , R. González , M. Esteve og C. Palau , “  Sensor Observation Service (SOS) / Constrained Application Protocol (CoAP) proxy design  ” , 2016 18. Middelhavs Elektroteknisk Konference (MELECON) ,1 st april 2016( DOI  10.1109 / MELCON.2016.7495411 )
  • (en) B. Carballido Villaverde , RDP Alberola , AJ Jara og S. Fedor , "  Service Discovery Protocols for Constrained Machine-to-Machine Communications  " , IEEE Communications Surveys Tutorials , vol.  16, nr .  1,1 st januar 2014( ISSN  1553-877X , DOI  10.1109 / SURV.2013.102213.00229 ) Dokument, der bruges til at skrive artiklen
  • (en) Isam Ishaq , Jeroen Hoebeke , Floris Van den Abeele og Jen Rossey , "  Fleksibel Unicast-baseret gruppekommunikation til CoAP-aktiverede enheder  " , Sensors , vol.  14, nr .  6,4. juni 2014, s.  9833–9877 ( PMID  24901978 , PMCID  4118386 , DOI  10.3390 / s140609833 ) Dokument, der bruges til at skrive artiklen
  • (da) Alessandro Ludovici , Pol Moreno og Anna Calveras , "  TinyCoAP: En romanbegrænset applikationsprotokol (CoAP) Implementering til indlejring af RESTful Web Services i trådløse sensornetværk baseret på TinyOS  " , Journal of Sensor and Actuator Networks , vol.  2 n o  214. maj 2013, s.  288–315 ( DOI  10.3390 / jsan2020288 ) Dokument, der bruges til at skrive artiklen
  • (en) Miguel Castro , Antonio J. Jara og Antonio F. Skarmeta , "  Aktivering af ende-til-ende CoAP-baseret kommunikation til tingenes web  " , Journal of Network and Computer Applications , bind.  59,1 st januar 2016, s.  230–236 ( DOI  10.1016 / j.jnca.2014.09.019 ) Dokument, der bruges til at skrive artiklen
  • (en) Miguel Castro , Antonio J. Jara og Antonio F. Skarmeta , "  Aktivering af ende-til-ende CoAP-baseret kommunikation til tingenes web  " , Journal of Network and Computer Applications , bind.  59,1 st januar 2016, s.  230–236 ( DOI  10.1016 / j.jnca.2014.09.019 )
  • (en) Isam Ishaq , Jeroen Hoebeke , Ingrid Moerman og Piet Demeester , "  Observation CoAP-grupper effektivt  " , Ad Hoc Networks , vol.  37, del 2,1 st februar 2016, s.  368–388 ( DOI  10.1016 / j.adhoc.2015.08.030 , læst online , adgang til 5. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) Isam Ishaq , Jeroen Hoebeke , Ingrid Moerman og Piet Demeester , "  Experimental Evaluation of Unicast and Multicast CoAP Group Communication  " , Sensors , vol.  16, nr .  7,21. juli 2016, s.  1137 ( PMID  27455262 , PMCID  4970179 , DOI  10.3390 / s16071137 , læst online , adgang til 6. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) HA Khattak , M. Ruta , E. Di Sciascio og D. Sciascio , “  CoAP-baserede sundhedsfølernetværk: En undersøgelse  ” , Proceedings of 2014 11. internationale Bhurban-konference om anvendt videnskabsteknologi (IBCAST) Islamabad, Pakistan, 14. - 18. januar 2014 ,1 st januar 2014, s.  499–503 ( DOI  10.1109 / IBCAST.2014.6778196 ) Dokument, der bruges til at skrive artiklen
  • (en) D. Ugrenovic og G. Gardasevic , ”  CoAP-protokol til webbaseret overvågning i IoT-sundhedsapplikationer  ” , 23. 23. telekommunikationsforum Telfor (℡FOR) ,1 st november 2015, s.  79–82 ( DOI  10.1109 / TELFOR.2015.7377418 ) Dokument, der bruges til at skrive artiklen
  • (da) W. Colitti , K. Steenhaut , N. De Caro og B. Buta , “  Evaluering af begrænset applikationsprotokol til trådløse sensornetværk  ” , 18. 18. IEEE-workshop om lokale metropolitanetværk (LANMAN) ,1 st oktober 2011, s.  1–6 ( DOI  10.1109 / LANMAN.2011.6076934 , læst online , adgang 8. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (da) Eleonora Borgia , ”  Tingenes internetvision: Nøglefunktioner, applikationer og åbne udgaver  ” , Computer Communications , vol.  54,2014, s.  1–31 ( DOI  10.1016 / j.comcom.2014.09.008 , læs online ) Dokument, der bruges til at skrive artiklen
  • (en) G. Belcredi , P. Modernell , N. Sosa og L. Steinfeld , “  En implementering af en hjemmestyringsplatform til Smart Grid  ” , 2015 IEEE PES Innovative Smart Grid Technologies Latinamerika (ISGT LATAM) ,1 st oktober 2015, s.  270–274 ( DOI  10.1109 / ISGT-LA.2015.7381166 ) Dokument, der bruges til at skrive artiklen
  • (da) Kihong Kim , Jinkeun Hong , Yongick Jung og Sangyi Yi , "  Ny sikker session genoptager protokol ved hjælp af IV-antal til trådløse netværk  " , 2005 IEEE 16. internationale symposium om personlig, indendørs og mobil radiokommunikation , bind.  3,1 st september 2005, s.  1999-2003 bind 3 ( DOI  10.1109 / PIMRC.2005.1651790 , læst online , adgang til 8. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) AP Castellani , M. Gheda , N. Bui og M. Rossi , "  Webtjenester til tingenes internet gennem CoAP og EXI  " , 2011 IEEE International Conference on Communications Workshops (ICC) ,1 st juni 2011, s.  1–6 ( DOI  10.1109 / iccw.2011.5963563 , læst online , adgang til 8. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) G. Moritz , F. Golatowski , C. Lerche og D. Timmermann , "  Beyond 6LoWPAN: Web Services in Wireless Sensor Networks  " , IEEE Transactions on Industrial Informatics , vol.  9, nr .  4,1 st november 2013, s.  1795–1805 ( ISSN  1551-3203 , DOI  10.1109 / TII.2012.2198660 , læst online , adgang til 8. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) PP Pereira , J. Eliasson og J. Delsing , "  En autentificerings- og adgangskontrolramme for CoAP-baseret tingenes internet  " , IECON 2014 - 40. årskonference for IEEE Industrial Electronics Society ,1 st oktober 2014, s.  5293–5299 ( DOI  10.1109 / IECON.2014.7049308 , læst online , adgang til 8. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) V. Lakkundi og K. Singh , "  Letvægts DTLS-implementering i CoAP-baseret Internet of Things  " , 20. årlige internationale konference om avanceret computing og kommunikation (ADCOM) ,1 st september 2014, s.  7–11 ( DOI  10.1109 / ADCOM.2014.7103240 , læst online , adgang 9. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) A. Capossele , V. Cervo , G. De Cicco og C. Petrioli , "  Sikkerhed som en CoAP-ressource: En optimeret DTLS-implementering til IoT  " , 2015 IEEE International Conference on Communications (ICC) ,1 st juni 2015, s.  549–554 ( DOI  10.1109 / ICC.2015.7248379 , læst online , adgang til 11. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) RA Fuentes-Samaniego , AR Cavalli og JA Nolazco-Fores , "  En analyse af sikker M2M-kommunikation i WSN'er ved hjælp af DTLS  " , 2016 IEEE 36. international konference om distribuerede computersystemer-workshops (ICDCSW) ,1 st juni 2016, s.  78–83 ( DOI  10.1109 / ICDCSW.2016.13 , læst online , adgang 11. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) SH Shaheen og M. Yousaf , "  Sikkerhedsanalyse af DTLS-struktur og dens anvendelse til sikring af multicast-kommunikation  " , 12. internationale konference om grænser for informationsteknologi 2014 ,1 st december 2014, s.  165–169 ( DOI  10.1109 / FIT.2014.39 , læst online , adgang til 11. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (da) W. Colitti , K. Steenhaut og N. De Caro , Integrering af trådløse sensornetværk med internettet  " Dokument, der bruges til at skrive artiklen
  • (en) J. Granjal , E. Monteiro og J. Sá Silva , "  Om gennemførligheden af ​​sikker applikationslagskommunikation på tingenes web  " , 37. årlig IEEE-konference om lokale computernetværk ,1 st oktober 2012, s.  228–231 ( DOI  10.1109 / LCN.2012.6423615 , læst online , adgang til 12. december 2016 ) Dokument, der bruges til at skrive artiklen
  • (en) DH Mun , ML Dinh og YW Kwon , “  En vurdering af Internet of Things-protokoller til ressourcebegrænsede applikationer  ” , 2016 IEEE 40. årlige computersoftware og applikationskonference (COMPSAC) , bind.  1,1 st juni 2016, s.  555–560 ( DOI  10.1109 / COMPSAC.2016.51 , læst online , adgang til 12. december 2016 ) Dokument, der bruges til at skrive artiklen

Noter, referencer og eksterne links

Bemærkninger

  1. På engelsk, Wireless Sensor Network, "WSN"
  2. På engelsk lavt overhead
  3. På engelsk, Embedded Devices
  4. På engelsk, Low Power and Lossy Network: LLN
  5. På engelsk, Token
  6. "TLV", type længde værdi
  7. CoCoA, overbelastningskontrol / avanceret
  8. På engelsk slutpunkt
  9. På engelsk firmware
  10. På engelsk, Border Router
  11. På engelsk Entity Manager
  12. HEMS, Home Energy Management System
  13. HEC, Home Energy Controller

Referencer

  1. C. Bormann 2012 , s.  66
  2. rfc7252 2014 , s.  1
  3. Vilaverde 2012 , s.  702
  4. M. Palattella 2013 , s.  1400
  5. C. Bormann 2012 , s.  64
  6. R A. Raham 2016 , s.  3
  7. R A. Raham 2016 , s.  4
  8. rfc7252 2014 , s.  10
  9. M. Prakash 2016 , s.  3
  10. rfc7252 2014 , s.  11
  11. M. Palattella 2013 , s.  1401
  12. rfc7252 2014 , s.  47
  13. S. Bandyopadhyay 2013 , s.  336
  14. R A. Raham 2016 , s.  1
  15. R A. Raham 2016 , s.  2
  16. rfc7252 2014 , s.  16
  17. rfc7252 2014 , s.  17
  18. rfc7641 2015 , s.  5
  19. Bormann 2012 , s.  65
  20. I. Ishaq 2016 , s.  372
  21. rfc7641 2015 , s.  7
  22. A. Betzler 2012 , s.  3
  23. rfc7641 2015 , s.  18
  24. 2016 kakao udkast , s.  1
  25. A. Betzler 2016 , s.  185
  26. B. Carballido 2014 , s.  41
  27. B. Carballido 2014 , s.  44
  28. B. Carballido 2014 , s.  47
  29. rfc5785 2012 , s.  1
  30. rfc6690 2012 , s.  3
  31. B.Carballido 2014 , s.  48
  32. rfc6762 2012 , s.  1
  33. A. Al-Fuqaha 2015 , s.  2357
  34. B. Carballido 2014 , s.  50
  35. I. Ishaq 2014 , s.  9839
  36. draft-ietf-core-resource-directory-09 2016 , s.  5
  37. draft-ietf-core-resource-directory-09 2016 , s.  15
  38. B. Carballido 2014 , s.  46
  39. rfc6763 2013 , s.  1
  40. B. Carballido 2014 , s.  49
  41. I. Ishaq 2013 , s.  5
  42. I. Ishaq 2014 , s.  9840
  43. I. Ishaq 2013 , s.  346
  44. rfc7390 2014 , s.  1
  45. rfc7252 2014 , s.  65
  46. rfc7390 2014 , s.  4
  47. rfc7390 2014 , s.  6
  48. rfc7731 2016 , s.  1
  49. rfc7390 2014 , s.  19 og 20
  50. I. Ishaq 2013 , s.  6
  51. I. Ishaq 2016 , s.  373
  52. I. Ishaq 2014 , s.  9844
  53. AP. Castellani 2011 , s.  1
  54. Webtjenester og EXI 2011 , s.  1799
  55. WebServicesAndEXI 2011 , s.  1
  56. AP Castellani 2011 , s.  3
  57. EXI Low Power Embedded Networks 2011 , s.  702
  58. R. Abdul Rahman 2016 , s.  4
  59. Vilaverde 2012 , s.  706
  60. det officielle Califorium-websted
  61. det officielle Erbium-websted
  62. det officielle kobbersted
  63. det officielle libcoap-sted
  64. webstedet for CoapBlip-projektet
  65. jCoAP-projektstedet
  66. det officielle websted for coap.me
  67. Wattecos officielle hjemmeside
  68. den officielle hjemmeside for Cooja
  69. M. Kovatsch 2013 , s.  1497
  70. C. Bormann 2012 , s.  63
  71. Vilaverde 2012 , s.  703
  72. R. Abdul Rahman 2016 , s.  5
  73. M. Kovatsch 2011 , s.  856
  74. M. Kovatsch 2011 , s.  858
  75. M. Kovatsch 2011 , s.  860
  76. A. Ludovici 2013 , s.  301
  77. M.Castro 2016 , s.  232
  78. HA Khattak 2014 , s.  500
  79. D. Ugrenovic 2015 , s.  79
  80. HA Khattak 2014 , s.  499
  81. HA Khattak 2014 , s.  501
  82. H. A. Khattak 2014 , s.  502
  83. G. Belcredi 2015 , s.  270
  84. G. Belcredi 2015 , s.  272
  85. G. Belcredi 2015 , s.  273
  86. Vilaverde 2012 , s.  705
  87. Vilaverde 2012 , s.  704
  88. B. Borgia 2014 , s.  9
  89. T. Leva 2014 , s.  33
  90. W. Colitti 2011 , s.  1-6
  91. SH Shaheen 2014 , s.  3
  92. B. Carballido 2014 , s.  51
  93. B. Carballido 2014 , s.  54
  94. J. Granjal 2012 , s.  230
  95. DH Mun 2016 , s.  556
  96. DH Mun 2016 , s.  557
  97. R. Martins 2016 , s.  1029-1030
  98. (in) Anmodning om kommentarer nr .  6347 .
  99. A. Capossele 2015 , s.  550
  100. rfc4347 2005 , s.  1
  101. SH Shaheen 2014 , s.  165
  102. A. Fuentes-Samaniego 2016 , s.  79
  103. rfc7925 2005 , s.  5
  104. rfc7252 2014 , s.  68
  105. ; rfc4279 2005 , s.  1
  106. C. Hennebert 2014 , s.  387
  107. V. Lakkundi 2014 , s.  8
  108. Shahid Raza 2012 , s.  1
  109. draft-ietf-core-coap-12 2012 , s.  68
  110. rfc7959 2016 , s.  1
  111. PP Pereira 2014 , s.  5293
  112. PP Pereira 2014 , s.  5294
  113. draft-bormann-core-coap-block-00 2009 , s.  1
  114. I. Ishaq 2013 , s.  346
  115. CoAP (Constrained Application Protocol) -udkast-shelby-core-coap-01 2010 , s.  1
  116. rfc7252 Historie 2014 , s.  1
  117. . rfc7641 2015 , s.  1
  118. rfc7959 2016 , s.  1

eksterne links