l’internet des objets dans la ville -...

70
L’internet des objets dans la ville Laurent TOUTAIN, Alexander PELOV Associate Professors, IMT/Télécom Bretagne [email protected]

Upload: buihuong

Post on 15-Sep-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

Institut Mines-Télécom

L’internet des objets dans la ville

Laurent TOUTAIN, Alexander PELOV Associate Professors, IMT/Télécom Bretagne

[email protected]

Institut Mines-Télécom

Revolution

2

Energy  ???????Energy Limited  Traffic

Institut Mines-Télécom

Provider oriented

3

Object LP-­‐WAN  Network Internet cloud

Object oriented

ObjectLP-­‐WAN  Network Internet cloud

semtech LoRaWAN

ObjectLP-­‐WAN  Network Internet cloud

Object & Provider oriented

Institut Mines-Télécom

LP-WAN is a key player

4

Source:  Idate  and  http://iotbusinessnews.com/2013/09/18/27009-­‐idate-­‐forecasts-­‐80-­‐billion-­‐things-­‐connected-­‐in-­‐2020/

1€/year/object  up  to  20  years

Institut Mines-Télécom

LP-WAN

5

Institut Mines-Télécom

Spectrum - ISM bands

6

2.4  GHz 2.5  GHzWi-­‐Fi  -­‐  Bluetooth

500mW

25mW

863.0 865.6

25  

868.0 868.6 869.4 869.65

0.1% 1%

10%

Institut Mines-Télécom

Coding

7

Ultra  Narrow  Band

Spread  Spectrum

300  bit/s  12  Byte/msg  140  msg/day  uplink

Noise

250  bit/s  -­‐  5  kbit/s  50  bytes  -­‐  230  bytes  

bi-­‐directional

Institut Mines-Télécom

Architecture

8

backend

frontend

REST

9

Weak interaction

LPWA Internet

Internet of Things?

10

LPWA Internet

Internet

Integration

Internet of Things!

A revolution in the making

• The Good

– Low-Power (link, device, antenna) – Low-Cost

• 8000 antennas to cover France – ISM – license-free

• Private networks

11

• The  Bad  – Low-­‐Rate  (100  bps  –  200  kbps)  – Very-­‐high  density  (100k  devices  /  

antenna)  – ISM  

• Interference  • Duty  cycle  (1%  or  10%),  including  

antennas

• The  Ugly  – Several  competing  technologies,  proprietary,  non-­‐networking  oriented  

approaches  – Vertical  (silo)  architectures  – No  IP  /  Interconnection  /  ….  – Appendage  to  current  networks

12

Volume• The  Ugly  

– Several  competing  technologies,  proprietary,  non-­‐networking  oriented  approaches  

– Vertical  (silo)  architectures  – No  IP  /  Interconnection  /  ….  – Appendage  to  current  networks

The triangle of death

Velocity

Variety

The  Ugly

Dpt/Auteur13

Internet

End to end principle: • Gateway are invisible to application • Naming is uniform

L2 independence: • Evolution, universality • Abstract L2 characteristics

Cost reduction: • Interconnection • services deployment • Management:

• Objects • Networks

Durability

Internet  has  been  designed  over  an  unlimited  bandwidth  model.

Institut Mines-Télécom

IETF

14

Dpt/Auteur15

Adr

esse

sZigbee Protocol Stack

URI

IPv6

MAC

Dpt/Auteur16

REST : Client/Server

/temp

GET /temp

25

Known URI

Known Format

Dpt/Auteur17

Caching

GET /temp GET /temp

{“temp”: 25}

{“temp”: 25}

{“temp”: 10} observe

IPv4/TCP/HTTP IPv6/UDP/CoAP

generic  cache

Dpt/Auteur18

Resource definition (ontology)

draft-ipso-app-framework-04

Institut Mines-Télécom

Shrinking IP

19

Physical

Link

Network

Transport

Application

Network-centric perspective on IoT

Steve Deering’s hourglass showing the “waist” of the Internet

The Evolution of Layered Protocol Stacks Leads to an Hourglass-Shaped Architecture – Saamer Akhshabi, Constantine Dovrolis, Sigcomm 2011

CoAP on LPWA?

22

LPWA  optimization

IoT building blocks

• CoAP – Efficient transport and semantics • CBOR – Efficient data representation • CoOL – Efficient device / network

management • DTLS, COSE – Efficient security • EAP, OAuth – Efficient AAA

23

Institut Mines-Télécom

Message Header

CoAP

24

Institut Mines-Télécom

CoAP vs HTTP

25

Layer  2

IPv640  Bytes

TCP20  Bytes

HTTP  header

Variable  Line  oriented

6LoWPAN~20  Bytes

UDP8  Bytes

CoAP4+  Bytes

Layer  2

Transport

Messages

Institut Mines-Télécom

Message header

26

type

00:  CONfirmable  01:  NON  confirmable  10:  ACK  11:  RESET

token  size

Token:  can  be  seen  as  a  connection  in  TCP

code

code codee

name

0.1 1 GET0.2 2 POST0.3 3 PUT0.4 4 DELETE0.5 5 PATCH0.6 6 iPATCH0.7 7 FETCH

code codee

name

2.01 Created  (PUT,  POST)

2.02 Deleted  (DELETE)

2.03 Valid  (caching)

2.04 Changed  (PUT,  POST)

2.05 Content  (GET)

code codee name

4.00 Bad  Request4.01 Unauthorized4.02 Bad  Option4.03 Forbidden4.04 Not  Found4.05 Method  Not  Allowed4.06 Not  Acceptable4.12 Precondition  Failed4.13 Request  Entity  Too  Large4.15 Unsupported  Content-­‐Format5.01 Not  Implemented5.02 Bad  Gateway5.03 Service  Unavailable5.04 Gateway  Timeout5.05 Proxying  Not  Supported

message  ID

Token

01version

XX class detail

Options

0xFF Data

Institut Mines-Télécom

Simple transmission

27

/light

CON  0xbeef  GET  /light

ACK  0xbeef  2.05  1

CON  0xbef0  POST  /light  0

CON  0xbef0  POST  /light  1

ACK  0xbef0  2.04  

MAX_TIMEOUT  *  

RANDOM_FACTOR

2  *  MAX_TIMEOUT  *  

RANDOM_FACTOR

MAX_TIMEOUT  *  

RANDOM_FACTOR

+-------------------+---------------+ | name | default value | +-------------------+---------------+ | ACK_TIMEOUT | 2 seconds | | ACK_RANDOM_FACTOR | 1.5 | | MAX_RETRANSMIT | 4 | +-------------------+---------------+

Institut Mines-Télécom

Message header

28

type token  size

Token:  can  be  seen  as  a  connection  in  TCP

code message  ID

Token

01version

XX class detail

Options

0xFF Data

Size  varies  from  0  (no  Token)  to  15    bytes

link  queries  and  answers

Institut Mines-Télécom

Token usage

29

/co2

CON  0xbeef  Token  0xBADDCAFE    GET  /CO2

ACK  0xbeef  0.00CON  0xfood  Token  0xBADDCAFE  2.05  102

ACK  0xfood  0.00

Institut Mines-Télécom

Message headertype token  size code message  ID

Token

01version

XX class detail

Options

0xFF Data

∆T L V

difference  from  the  previous  type  reduce  the  size,  order  the  list  

if  ∆T  >  12  one  byte  with  (length-­‐13)  is  inserted  after  Length  field  if  ∆T  >  269  two  bytes  (length  -­‐  269)  are  inserted  after  the  Length  field

Length  of  the  Value  field  if  ∆T  >  12  one  byte  with  (length-­‐13)  is  inserted  after  Length  field  if  ∆T  >  269  two  bytes  (length  -­‐  269)  are  inserted  after  the  Lth  field

Types

C

Critical  (1)  :  Error  2.04  in  response  to  CON  otherwise  discard  Elective  (0)  :  silently  ignored

UNoCacheKey

Institut Mines-Télécom

How to measure CH4 level

31

/CH4

CON  0xbeef  Token  0xBADDCAFE    GET  /CH4

ACK  0xbeef  Token  0xBADDCAFE    2.05  2

CON  0xbef0  GET  /CH4

ACK  0xbef0  2.05  3

Institut Mines-Télécom

Observe [RFC 7641]

32

/CH4

CON  0xbeef    Token  0xACCE55  GET  Observe  /CH4

ACK  0xbeef  Token  0xACCE55    2.05  Observe  1  2

NON  0xbaba  Token  0xACCE55    2.05  Observe  2  3

NON  0xbabe  Token  0xACCE55    2.05  Observe  3  5

NON  0xbead  Token  0xACCE55    2.05  Observe  4  3

CON  0xbead    Token  0xACCE55  GET  Observe  1  /CH4

ACK  0xbead  Token  0xACCE55    2.05  3.5stop  observe

Institut Mines-Télécom

Observe [RFC 7641]

33

/CH4

CON  0xbeef    Token  0xACCE55  GET  Observe  /CH4?limit=4

ACK  0xbeef  Token  0xACCE55    2.05  Observe  1  2

NON  0xface  Token  0xACCE55    2.05  Observe  2  4

Institut Mines-Télécom

Uniform Resource Identifier (RFC 3986)

34

http s.exa.com:8080/ / ? & #1200

authority path

b 3

0 6

query fragment

uri-­‐path 47

05

uri-­‐query

log access from=09coap to=10://

scheme

GET

GET 0xb3  log  0x06  access  0x47  from=09  0x05  to=10

With  Observe  ?   GET 0x60  0x53  log  0x06  access  0x47  from=09  0x05  to=10

Institut Mines-Télécom

Data types

35

Institut Mines-Télécom

Types

36

plain  text

25

no  structure  

XML<?xml version="1.0" encoding="UTF-8"?> <query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="1" yahoo:created="2016-02-10T09:51:12Z" yahoo:lang="en-US"> <results> <channel> <title>Yahoo! Weather - Nome, AK</title> <link>http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html</link> <description>Yahoo! Weather for Nome, AK</description> <language>en-us</language> <lastBuildDate>Tue, 09 Feb 2016 11:52 pm AKST</lastBuildDate> <ttl>60</ttl> <yweather:location xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" city="Nome" country="United States" region="AK"/> <yweather:units xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" distance="mi" pressure="in" speed="mph" temperature="F"/> <yweather:wind xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" chill="10" direction="360" speed="6"/> <yweather:atmosphere xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" humidity="81" pressure="30.02" rising="2" visibility="10"/> <yweather:astronomy xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" sunrise="10:19 am" sunset="6:15 pm"/> <image> <title>Yahoo! Weather</title> <width>142</width> <height>18</height> <link>http://weather.yahoo.com</link> <url>http://l.yimg.com/a/i/brand/purplelogo//uh/us/news-wea.gif</url> </image> <item> <title>Conditions for Nome, AK at 11:52 pm AKST</title> <geo:lat xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">64.5</geo:lat> <geo:long xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">-165.41</geo:long> <link>http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html</link> <pubDate>Tue, 09 Feb 2016 11:52 pm AKST</pubDate> <yweather:condition xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="33" date="Tue, 09 Feb 2016 11:52 pm AKST" temp="18" text="Fair"/> <description><![CDATA[ <img src="http://l.yimg.com/a/i/us/we/52/33.gif"/><br /> <b>Current Conditions:</b><br /> Fair, 18 F<BR /> <BR /><b>Forecast:</b><BR /> Tue - Clear. High: 30 Low: 17<br /> Wed - Sunny. High: 23 Low: 9<br /> Thu - Partly Cloudy. High: 12 Low: 2<br /> Fri - Sunny. High: 6 Low: 1<br /> Sat - Mostly Cloudy. High: 18 Low: 13<br /> <br /> <a href="http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html">Full Forecast at Yahoo! Weather</a><BR/><BR/> (provided by <a href="http://www.weather.com" >The Weather Channel</a>)<br/> ]]></description> <yweather:forecast xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="31" date="9 Feb 2016" day="Tue" high="30" low="17" text="Clear"/> <yweather:forecast xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="32" date="10 Feb 2016" day="Wed" high="23" low="9" text="Sunny"/> <yweather:forecast xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="30" date="11 Feb 2016" day="Thu" high="12" low="2" text="Partly Cloudy"/> <yweather:forecast xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="32" date="12 Feb 2016" day="Fri" high="6" low="1" text="Sunny"/> <yweather:forecast xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" code="28" date="13 Feb 2016" day="Sat" high="18" low="13" text="Mostly Cloudy"/> <guid isPermaLink="false">USAK0170_2016_02_13_7_00_AKST</guid> </item> </channel> </results> </query>

Structured  verbose  

JSON{ "query": { "count": 1, "created": "2016-02-10T09:52:50Z", "lang": "en-US", "results": { "channel": { "title": "Yahoo! Weather - Nome, AK", "link": "http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html", "description": "Yahoo! Weather for Nome, AK", "language": "en-us", "lastBuildDate": "Tue, 09 Feb 2016 11:52 pm AKST", "ttl": "60", "location": { "city": "Nome", "country": "United States", "region": "AK" }, "units": { "distance": "mi", "pressure": "in", "speed": "mph", "temperature": "F" }, "wind": { "chill": "10", "direction": "360", "speed": "6" }, "atmosphere": { "humidity": "81", "pressure": "30.02", "rising": "2", "visibility": "10" }, "astronomy": { "sunrise": "10:19 am", "sunset": "6:15 pm" }, "image": { "title": "Yahoo! Weather", "width": "142", "height": "18", "link": "http://weather.yahoo.com", "url": "http://l.yimg.com/a/i/brand/purplelogo//uh/us/news-wea.gif" }, "item": { "title": "Conditions for Nome, AK at 11:52 pm AKST", "lat": "64.5", "long": "-165.41", "link": "http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html", "pubDate": "Tue, 09 Feb 2016 11:52 pm AKST", "condition": { "code": "33", "date": "Tue, 09 Feb 2016 11:52 pm AKST", "temp": "18", "text": "Fair" }, "description": "\n<img src=\"http://l.yimg.com/a/i/us/we/52/33.gif\"/><br />\n<b>Current Conditions:</b><br />\nFair, 18 F<BR />\n<BR /><b>Forecast:</b><BR />\nTue - Clear. High: 30 Low: 17<br />\nWed - Sunny. High: 23 Low: 9<br />\nThu - Partly Cloudy. High: 12 Low: 2<br />\nFri - Sunny. High: 6 Low: 1<br />\nSat - Mostly Cloudy. High: 18 Low: 13<br />\n<br />\n<a href=\"http://us.rd.yahoo.com/dailynews/rss/weather/Nome__AK/*http://weather.yahoo.com/forecast/USAK0170_f.html\">Full Forecast at Yahoo! Weather</a><BR/><BR/>\n(provided by <a href=\"http://www.weather.com\" >The Weather Channel</a>)<br/>\n", "forecast": [ { "code": "31", "date": "9 Feb 2016", "day": "Tue", "high": "30", "low": "17", "text": "Clear" }, { "code": "32", "date": "10 Feb 2016", "day": "Wed", "high": "23", "low": "9", "text": "Sunny" }, { "code": "30", "date": "11 Feb 2016", "day": "Thu", "high": "12", "low": "2", "text": "Partly Cloudy" }, { "code": "32", "date": "12 Feb 2016", "day": "Fri", "high": "6", "low": "1", "text": "Sunny" }, { "code": "28", "date": "13 Feb 2016", "day": "Sat",

Structured  less  verbose  

Institut Mines-Télécom

JSON (RFC 7159)

37

Object  NotationJavaScript

Simple  to  parse  and  portable  across  web  browsersValue  :  false null true Number  :  12 3.1415 1e14 String  :  "Hello"

Array  :    [ 1, 2, -3, 4 ]

 Object  :    { “lastname” : “Solo”, “firstname” : “Ben”, “pseudo” : “Kylo Ren”, “episode” : 7 }

Note:  Key  is  a  string  unique  in  the  object

Institut Mines-Télécom

JSON Example { "Image": { "Width": 800, "Height": 600, "Title": "View from 15th Floor", "Thumbnail": { "Url": "http://www.example.com/image/481989943", "Height": 125, "Width": 100 }, "Animated" : false, "IDs": [116, 943, 234, 38793] } }

38

[ { "precision": "zip", "Latitude": 37.7668, "Longitude": -122.3959, "Address": "", "City": "SAN FRANCISCO", "State": "CA", "Zip": "94107", "Country": "US" }, { "precision": "zip", "Latitude": 37.371991, "Longitude": -122.026020, "Address": "", "City": "SUNNYVALE", "State": "CA", "Zip": "94085", "Country": "US" } ]

How  many  characters  to  code  this  number?

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

39

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer

if (value <= 23) V1 = Value ; no V2 else if value is uint8_t then V1=24; V2 = value if value is uint16_t then V1=25; V2 = value if value is uint32_t then V1=26; V2 = value if value is uint64_t then V1=27; V2 = value

1  :  Negative  Integer

value = |value|; value--;

if (value <= 23) V1 = Value ; no V2 else if value is uint8_t then V1=24; V2 = value if value is uint16_t then V1=25; V2 = value if value is uint32_t then V1=26; V2 = value if value is uint64_t then V1=27; V2 = value

00 => 01 => … 22 => 23 => 24 =>

345 =>

-12 =>

-256 =>

000 00000 => 0x00

000 00001 => 0x01

000 10110 => 0x16

000 10111 => 0x17000 10000 => 0x18 0x18000 10001 => 0x19 0x0159

001 01011 => 0x4B

001 10001 => 0x88 0xFF

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

40

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer1  :  Negative  Integer

2  :  Byte  string3  :  Text  string

3 5 To  be

<=  23

3 24 To  be,  or  not  to  be,  that  is  the  question:Whether  'tis  Nobler  in  the  mind  to  sufferThe  Slings  and  Arrows  of  outrageous  Fortune,130

3 25To  be,  or  not  to  be,  that  is  the  question:  Whether  'tis  Nobler  in  the  mind  to  suffer    The  Slings  and  Arrows  of  outrageous  Fortune,  Or  to  take  Arms  against  a  Sea  of  troubles,  And  by  opposing  end  them:  to  die,  to  sleep  No  more;  and  by  a  sleep,  to  say  we  end  The  Heart  ache,  and  the  thousand  Natural  shocks  That  Flesh  is  heir  to?  'Tis  a  consummation  Devoutly  to  be  wished.  To  die,  to  sleep,  To  sleep,  perchance  to  Dream;  aye,  there's  the  rub,  For  in  that  sleep  of  death,  what  dreams  may  come,  When  we  have  shufPled  off  this  mortal  coil,  Must  give  us  pause.  There's  the  respect  That  makes  Calamity  of  so  long  life:  For  who  would  bear  the  Whips  and  Scorns  of  time,  The  Oppressor's  wrong,  the  proud  man's  Contumely,  [F:  poor]  The  pangs  of  despised  Love,  the  Law’s  delay,  [F:  disprized]  The  insolence  of  OfPice,  and  the  Spurns  That  patient  merit  of  the  unworthy  takes,  When  he  himself  might  his  Quietus  make  With  a  bare  Bodkin?  Who  would  Fardels  bear,  [F:  these  Fardels]  To  grunt  and  sweat  under  a  weary  life,  But  that  the  dread  of  something  after  

death,  The  undiscovered  Country,  from  whose  bourn  No  Traveller  returns,  Puzzles  the  will,  And  makes  us  rather  bear  those  ills  we  have,  Than  Ply  to  others  that  we  know  not  of.  Thus  Conscience  does  make  Cowards  of  us  all,  And  thus  the  Native  hue  of  Resolution  Is  sicklied  o'er,  with  the  pale  cast  of  Thought,  And  enterprises  of  great  pitch  and  moment,  [F:  pith]  With  this  regard  their  Currents  turn  awry,  [F:  away]  And  lose  the  name  of  Action.  Soft  you  now,  

The  fair  Ophelia?  Nymph,  in  thy  Orison    Be  all  my  sins  remembered.

1568

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

41

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer1  :  Negative  Integer

2  :  Byte  string3  :  Text  string4  :  Array

4 4

<=  23

Array  :    [ 1, 2, -3, 4 ]

01

02

22

04

if  more  than  23  items  :  next  byte  gives  length

17  Bytes,  can  be  compress  to  10  Bytes

5  Bytes

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

42

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer1  :  Negative  Integer

2  :  Byte  string3  :  Text  string4  :  Array5  :  Object  list

5 4

<=  23

 Object  :    { “lastname” : “Solo”, “firstname” : “Ben”, “pseudo” : “Kylo Ren”, “episode” : 7 }

3 8 lastname 3 4 Solo

3 9 firstname 3 3 Ben

3 6 pseudo 3 8 Kylo Ren

3 7 episode 0 7

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

43

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer1  :  Negative  Integer

2  :  Byte  string3  :  Text  string4  :  Array5  :  Object  list6  :  Optional  semantic  tagging

0 Text  string Standard  date/time  (RFC  4287)  1 multiple Epoch-­‐based  date/time2 Byte  string big  positive  Integer3 Byte  string big  negative  integer4 Array decimal  fraction5 Array big  float21 multiple convertion  to  base64url22 multiple conversion  to  base6423 multiple conversion  to  base1624 Byte  string embedded  CBOR  32 Text  string URI33 Text  string base64url34 Text  string base6435 Text  string regular  expression36 Text  string MIME  message55799 multiple self  describing  CBOR  (magic  value)

Institut Mines-Télécom

CBOR: Constrained Binary Object Representation [RFC7049]

44

Major V1 (V2)

3  bits 5  bits n  Bytes

0  :  Positive  Integer1  :  Negative  Integer

2  :  Byte  string3  :  Text  string4  :  Array5  :  Object  list6  :  Optional  semantic  tagging7  :  Simple  value  and  float

CoAP on LPWA?

45

LPWA  optimization

CoOL[draft-veillette-core-cool]

• From operator-grade management for networks • NETCONF/SMIv2, RESTCONF/YANG

– Used for SDNs (e.g. OpenDaylight/OpenFlow)

• To operator-grade management for IoT – CoOL: Constrained Objects’ Language

• CoAP-based RESTCONF

• YANG data modeling language – What parameters does a device poses ? What are the valid values? How are they

queried, modified? – JSON/XML/…

46

Managing devices with CoOLConstrained Non-constrained

HTTPCoAP

RESTCONF+YANG

/ietf-interfaces:interfaces/interface/ietf-ip:ipv4 Bulk

operations, Transactions,

32 bit ID

CoOL+YANG

NMS

CoOL - CoRE - 6/11/2015 - A. Pelov ([email protected])

CoOL

• Perform on a single resource (e.g. GET /cool) – “Fields” option contains the list of nodes selected,

encoded using a CBOR array

REQ: GET /cool Fields([14337, 18, 19]) RES: 2.05 Content (Content-Format: application/cbor) { 14337: 57, 18 : 76, 19 : 837 }

Unqualified

Qualified

CBOR

CBOR

EAP over CoAP

49

Institut Mines-Télécom

Fabian Network

50

Users: » build an open network » facilitate IoT new

usages » Develop programming

environments

Experimentation

Long Range Radio + FabLab Lo Ra Fab

ian» Partners :

» New traffics » Manage access to ISM

band » Develop Internet based

architecture » Prepare 5G for IoT

Institut Mines-Télécom

FABian Network

52

Institut Mines-Télécom

Prototyping with Arduino

53

Cortex M3

Semtech

Built-in antenna

Arduino

53

dzeta.t.eu.org

/NO2/lum

Architecture

Architecture

RadioFar Gateway Service

DNS  –  Localisation,  …  AAA  –  RADIUS,  Diameter

Internet

Long-­‐Range  Radio  IEEE  802.15.4  framing

JSON  tunnel  over  UDP  

Full  control  over  radio  (~  raw  socket)

Long-­‐Range  Radio  IEEE  802.15.4  framing

HTTPS  Tunnel

JSON  tunnel  over  UDP  

Full  control  over  radio  (~  raw  socket)

Long-­‐Range  Radio  IEEE  802.15.4  framing

Internet

HTTPS  Tunnel

JSON  tunnel  over  UDP  

Full  control  over  radio  (~  raw  socket)

Long-­‐Range  Radio  IEEE  802.15.4  framing

Security

HTTPS  TunnelEncryption  /  Integrity  AES128  

AAA:  EAP

Naming

MAC  address DNS  name

Internet

Control plane

● IETF  CoAP  ● Authentication  ● Key  management  

● Radio  management  

● OTA  ● …  

Signaling protocol

POST  /g

POST  /n

POST  /a

● IETF  CoAP  ● Authentication  ● Key  management  

● Radio  management  

● OTA  ● …  

Data plane

Internet

User protocol

GET  /temp

{25}

PUT  /state  {"on"}

CoAP HTTPS

GET  /temp

{25}PUT  /state  {"on"}

Internet

Institut Mines-Télécom

LoRa Fabian outcomes

• Teaching à Télécom Bretagne and other universities: • Student projects • Research projects • Rescom Summer school

• Maison Mix • FabLab workshops

• Standardisation • Startup

67

Next Steps

• Official mailing list – 150 subscribers (cisco, huawei, …)

• April 2016: barbof – Gap analysis – Requirements

• July 2016 : bof for working group creation – Charter, Area, chairs,…

68

Dpt/Auteur Nom du cours - Notes de cours69

Où en est-on ?

IoT: Where are we ?

The Next 20 bln Internet Users

70

Standard-based Technology-independent

Operator-grade network management Industry-strength security

Internet-ready