Paper Telecom

Only available on StudyMode
  • Topic: Representational State Transfer, OSI model
  • Pages : 11 (989 words )
  • Download(s) : 94
  • Published : March 21, 2013
Open Document
Text Preview
A Low-Power CoAP for Contiki
Matthias Kovatsch, Simon Duquennoy, and Adam Dunkels
kovatsch@inf.ethz.ch simonduq@sics.se adam@sics.se

Monday, 17 Oct 2011

Internet of Things Protocol Stack
Layer
Application Transport Network Adaption MAC Radio Duty Cycling Physical Matthias Kovatsch – ETH Zürich

Protocol
CoAP / REST Engine (Erbium) UDP IPv6 / RPL 6LoWPAN CSMA / link-layer bursts ContikiMAC IEEE 802.15.4 A Low-Power CoAP for Contiki 2

ContikiMAC

Radio on
D Data frame A ACK frame

Sender

D

D

D

D A

Receiver Channel check

D A

Transmission detected

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

3

Link-layer Bursts

Radio on
D Data frame A ACK frame

Sender

D

D

D

D A D A D A D A

Receiver Channel check

D A D A D A D A

Transmission detected

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

4

Constrained Application Protocol (CoAP)
 RESTful Web services for networked embedded devices
 Idealized architectural style of the Web  HTTP for the Internet of Things coap://sky2/

coap://sky1/

coap://sky3/

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

5

«Erbium» CoAP for Contiki

 Implements draft-ietf-core-coap-07  Available in the Contiki repository on SourceForge

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

6

«Erbium» CoAP
 Reliable UDP transport  Observing resources  Blockwise transfers  Resource discovery  Separate responses

 Blocking client requests
Matthias Kovatsch – ETH Zürich A Low-Power CoAP for Contiki 7

«Erbium» REST Engine
 Resource abstraction

CoRE Link Format
title="Hello world"; rt="TemperatureC";

RESOURCE(handle, METHODs, URI-Path, Web Linking info);  Resource handler PERIODIC_RESOURCE(handle, METHODs, URI-Path, info, period);  Additional periodic handler EVENT_RESOURCE(handle, METHODs, URI-Path, info);  Additional event handler Observable

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

8

«Erbium» Memory Footprint
ROM [kB]
CoAP REST Engine total 8.5

RAM [kB]
1.5

Measured stack usage
REST Engine CoAP-07 base CoAP-07 server CoAP-07 transport CoAP-07 observing CoAP-07 separate Matthias Kovatsch – ETH Zürich A Low-Power CoAP for Contiki


0.7 4.5 1.9 0.4 0.9 0.1

0.1
0 0 0.3 0.9 0.2 0
9

Experimental Set-up
4 hops Energy data over USB 100 Requests each 3 hops Laptop with border router Static routing

1 hop
Matthias Kovatsch – ETH Zürich

2 hops

A Low-Power CoAP for Contiki

10

Energy vs Latency for 64B Payload
1.0 400 0.8 Energy [mJ] Latency [s] 300 200 100 0 1 2 3 4 Number of hops 0.6 0.4 0.2 0 1 0.6% RDC

No duty cycling ContikiMAC

8 Hz channel check rate

2 3 4 Number of hops

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

11

Transmitting Large Data
70 65 60 55 50 45 40 35 30 25 20 15 10 0.2 5 0 0 128 256 384 512 0 0.4 1.4

4 hops 2 hops 1 hop

2

3

4

5

6

1.8

1.6

Bursts avoid steps in latency

Energy [mJ]

1.2

Latency [s]

1.0

Steps become less noticable

0.8

0.6

0

128

256

384

512

Payload [Bytes]
Matthias Kovatsch – ETH Zürich A Low-Power CoAP for Contiki

Payload [Bytes]
12

Transmitting Large Data
Number of frames sent depends on link quality, not number of fragments

Radio on
D Data frame A ACK frame

Sender

D

D

D

D A D

D

D A

Receiver Channel check

D A

D A

Transmission detected

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

13

Separate Responses
Client Request Retry Request processing Retry … Response
Benchmark and switch automatically

Server

Client Request

Server

ACK
Request processing

Response ACK

Matthias Kovatsch – ETH Zürich

A Low-Power CoAP for Contiki

14

Without With

Separate Responses over 4 Hops
150 125
Energy [mJ] Savings marginal for CoAP’s...
tracking img