orchestra: robust mesh networks through autonomously ... · 16-bit mcu, 32khz crystal jn-iot: 25...

18
1 Sics th Sense SICS Networked Embedded Systems Group Orchestra: Robust Mesh Networks Through Autonomously Scheduled TSCH January 13, Lille Journées non thématiques RESCOM (published in ACM SenSys 2015) Simon Duquennoy , Inria Lille & SICS (Sweden) Beshr Al Nahas, Chalmers (Sweden) Olaf Landsiedel, Chalmers (Sweden) Thomas Watteyne, Inria Paris

Upload: others

Post on 17-Aug-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

1 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Orchestra: Robust Mesh Networks Through Autonomously Scheduled TSCH

January 13, Lille Journées non thématiques RESCOM

(published in ACM SenSys 2015)

Simon Duquennoy, Inria Lille & SICS (Sweden) Beshr Al Nahas, Chalmers (Sweden) Olaf Landsiedel, Chalmers (Sweden) Thomas Watteyne, Inria Paris

Page 2: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

2 SicsthSense SICSNetworkedEmbeddedSystemsGroup[1]L.Doherty,W.Lindsay,andJ.Simon.Channel-SpecificWirelessSensorNetworkPathData.ICCCN,2007.[2]E.Gaura,L.Girod,J.LBusey,M.Allen,G.Challen.WirelessSensorNetworks:DeploymentsandDesignFrameworks.Springer,2010.

•  Low-power mesh for the IoT (IPv6) •  Multi-purpose, non-deterministic networks, e.g. in a smart building •  Typically about 99% delivery ratio

•  We need better than that! •  Losing data must become the exception

•  Industry automation already does better than that! •  WirelessHART, ISA-100

>99.99% delivery [1,2]

What can we learn to achieve the same in IoT scenarios?

Context 99.99% delivery

… vs. 99%

Page 3: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

3 SicsthSense SICSNetworkedEmbeddedSystemsGroup

•  MAC layer: TSCH (Time Slotted Channel Hopping) •  TDMA reduces contention •  Frequency diversity •  Requires (centralized or decentralized) scheduling

•  Hard to apply in IoT networks •  Scheduler expects deterministic traffic (vs. random access) •  Integrated network (vs. more dynamic / flexible)

Reliability in WirelessHART / ISA-100

3 B->D

2 A->B A->C

1 C->A

0 D->B B->A

0 1 2 3 4 5 6 7 8 9 10D

B

A

Timeoffset

Channe

loffset

C

1slot=10ms

1sloPrame,e.g.11slots

Page 4: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

4 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Centralized

collectstaQsQc,deployschedule

Decentralized

negoQateschedule

Autonomous

inferschedulefromlocalstate(topology)

Introducing Autonomous Scheduling

Page 5: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

5 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Orchestra in a Nutshell •  Autonomous scheduling in TSCH networks •  Schedules are derived from routing state

•  Parent, children and neighbors properties •  Rendez-vous, receiver-based and sender-based slots •  Over-provisioning •  Traffic plane isolation •  Guarantees energy

•  Reliable through •  Routing–scheduling

consistency by design •  Controlled contention •  TSCH channel hopping

Page 6: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

6 SicsthSense SICSNetworkedEmbeddedSystemsGroup

4

2

1

1slot=10ms

Time

Orchestra Slots Types

1sloPrame,e.g.7slots

1.  Rendez-vous 2.  Receiver-based Shared 3.  Sender-based Shared or Dedicated

listen transmit

3

transmitorlisten

•  Discovery•  RouQng•  ContenQon-based

Page 7: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

7 SicsthSense SICSNetworkedEmbeddedSystemsGroup

ack

1.  Rendez-vous 2.  Receiver-based Shared 3.  Sender-based Shared or Dedicated

Orchestra Slots Types

4

2

1

Timelisten transmit

3

transmitorlisten

•  Forunicast•  SingleRxslotpernode•  ContenQon-based

1slot=10ms

1sloPrame,e.g.7slots

Page 8: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

8 SicsthSense SICSNetworkedEmbeddedSystemsGroup

ackack

1.  Rendez-vous 2.  Receiver-based Shared 3.  Sender-based Shared or Dedicated

Orchestra Slots Types

4

2

1

Timelisten transmit

3

transmitorlisten

•  Forunicast•  SeveralRxslotpernode•  LowornocontenQon

1slot=10ms

1sloPrame,e.g.7slots

ack

Page 9: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

9 SicsthSense SICSNetworkedEmbeddedSystemsGroup

•  Solely based on local routing state (no extra traffic) •  Guarantees routing <-> scheduling consistency

Orchestra Autonomous Slot Maintenance

4

2

1

Timelisten transmit

3

transmitorlisten

1slot=10ms

1sloPrame,e.g.7slots

Page 10: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

10 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Orchestra Per-traffic Plane Scheduling •  Per traffic plane (over-)provisioning •  Slotframes cycle independently (co-prime lengths) •  Example

Slotframe 1: length: 7, TSCH beacons reception Slotframe 2: length: 5, routing traffic Slotframe 3: length: 9, application unicast

Runtime: slot overlap resolved by slotframe priority

Page 11: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

11 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Indriya:98TelosB16-bitMCU,32kHzcrystal

JN-IoT:25NXPJN516x32-bitMCU,16MHzcrystal

Evaluation Setup •  Integrated in Contiki •  >200 experiments in two testbeds, up to 72h long •  >1 million UDP packets sent

Page 12: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

12 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Always-on: plain CSMA ContikiMAC: low-power listening TSCH-min: single rendez-vous slot Orchestra-RB: Orchestra receiver-based Orchestra-SB: Orchestra sender-based

Orchestra≥99.996%(1/29,398)

Always-on99.91%(1/1139)

Reliability (98 nodes Indriya)

TSCH“minimal”99.5%(1/220)

ConLkiMAC99.4%(1/162)

Page 13: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

13 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Request-response (25 NXP nodes) •  Every 50s, the root requests any node, waits for response •  Orchestra + RPL strong even on the down link (99.98% PDR) •  Links mostly symmetric (see RPL enhancements in the paper)

Page 14: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

14 SicsthSense SICSNetworkedEmbeddedSystemsGroup

•  ContikiMAC has no usable energy bounds •  Orchestra, in some configurations, can provide tight bounds

Energy Guarantees (98 nodes Indriya)

Page 15: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

15 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Orchestra vs. Centralized Scheduling (simulation)

Every 15 minutes: 3 new nodes have their Rx rate reduced by 10 times

•  Orchestra keeps operating as RPL repairs the topology

•  Orchestra over-provisioning: •  Duty cycle 4-8x •  Latency 10x

Page 16: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

16 SicsthSense SICSNetworkedEmbeddedSystemsGroup

•  TSCH in non-deterministic IoT networks is possible •  Autonomous scheduling •  Achieved via over-provisioning

•  High reliability is possible (from 99 to 99.99%) •  Schedules consistent with routing by design •  Reduced contention + channel hopping

•  Try it! •  TSCH interoperability tested in Prague, ETSI Plugtest this July •  Now part of the official Contiki repository

Conclusion

Page 17: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

17 SicsthSense SICSNetworkedEmbeddedSystemsGroup

Orchestra: Robust Mesh Networks Through Autonomously Scheduled TSCH

January 13, Lille Journées non thématiques RESCOM

(published in ACM SenSys 2015)

Simon Duquennoy, Inria Lille & SICS (Sweden) Beshr Al Nahas, Chalmers (Sweden) Olaf Landsiedel, Chalmers (Sweden) Thomas Watteyne, Inria Paris

Page 18: Orchestra: Robust Mesh Networks Through Autonomously ... · 16-bit MCU, 32kHz crystal JN-IoT: 25 NXP JN516x 32-bit MCU, 16MHz crystal Evaluation Setup • Integrated in Contiki •

18 SicsthSense SICSNetworkedEmbeddedSystemsGroup

•  Slotframe length dictates contention level (and link quality) •  TSCH-min (100% shared links): PRR 89% •  TSCH-rb (shared links per receiver): PRR 93% •  TSCH-sb (dedicated links): PRR 96%

Orchestra and Contention Control