Post on 21-Jan-2015
description
Traffic engineering, redundancy and mobility with RPLand several border routers
Maxime Denis
Departement d’InformatiqueUniversite de Mons
June 21th 2013
Director : Pr. Bruno Quoitin External experts : M. Sebastien DawansReviewers : Pr. Sebastien Bette M. Laurent Deru
M. Mathieu Michel
Summary
Outline
1 Introduction
2 Background
3 Multi-BR problematic
4 State of the art
5 Validation
6 Conclusion
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 2 / 29
Introduction
Introduction
Figure 1 : WSN layout on the bridge[1].
Wireless Sensors Network (WSN)
Set of sensors, i.e., devices with limited capabilities, often with energyconstraints and wireless interface.
Internet of Things (IoT)
Allows Internet connectivity for any devices : Smart Cities, Smart Building,Smart Grids, Smart . . .IoT = interconnection of WSNs.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 3 / 29
Introduction
Interfacing WSNs with classical networks
With Border Routers (BRs)
A sensor with two stacks, bridging the WLAN and the WSN ;
Most of the time a more capable sensor without energyconstraints ;
In this master thesis : interconnection between IEEE 802.15.4 andEthernet.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 4 / 29
Introduction
Master thesis subject
Study the interconnection through multiple BRs with a focus on :
1 Redundancy ;
2 Mobility ;
3 Traffic engineering.
using RPL and Contiki.Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 5 / 29
Background
Outline
1 Introduction
2 BackgroundIPv6StacksRPLContiki
3 Multi-BR problematic
4 State of the art
5 Validation
6 Conclusion
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 6 / 29
Background IPv6
IPv6
IPv6 [2, 3, 4]
large address space (2128 adresses) ;
minimal MTU (1280 Bytes) ;
autoconfiguration process (NDP) ;
...
Neighbor Discovery Protocol [5]
contains ARP (IPv4) ;
Autoconfiguration using the Duplicate Address Detection (DAD)mechanism ;
Reachability detection using the Neighbor Unreachability Detection(NUD).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 7 / 29
Background Stacks
Stacks
IPv6
ICMPNDP UDP TCP
802.3 MAC layer802.3 PHY layer
Figure 2 : Classical stack.
IPv6
ICMPRPL UDP TCP
802.15.4 MAC layer
802.15.4 PHY layer
6LoWPAN layer
Figure 3 : WSN stack.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 8 / 29
Background RPL
Routing Protocol for Lossy networks (RPL)
Lightweight distance vector protocol [6] used in WSNs.
Description
Collect oriented : designed to collect data from sensors to sink.
Topology covered by a tree with a single root.
Datapath validation : no periodical messages.
Two concepts : instances and DODAGs (Destination OrientedDirected Acyclic Graphs).
Traffic
RPL allows three kinds of traffic : Peer-to-Peer, Peer-to-Multi-Peer andMulti-Peer-to-Peer.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 9 / 29
Background RPL
DODAGs
DODAG : tree covering and partitioning the WSN.
Root : node managing the DODAG ;
Upward routes : created by DIOs, to reach the root ;
A node owns a parent which leads to the root ;
Downward routes : created by DAOs, to reach the sensor ;
Node’s rank means the distance between the node and the root ;
Metrics are used to qualify links and choose parents ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 10 / 29
Background RPL
DODAGs
DODAG : tree covering and partitioning the WSN.
Root : node managing the DODAG ;
Upward routes : created by DIOs, to reach the root ;
A node owns a parent which leads to the root ;
Downward routes : created by DAOs, to reach the sensor ;
Node’s rank means the distance between the node and the root ;
Metrics are used to qualify links and choose parents ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 10 / 29
Background RPL
DODAGs
DODAG : tree covering and partitioning the WSN.
Root : node managing the DODAG ;
Upward routes : created by DIOs, to reach the root ;
A node owns a parent which leads to the root ;
Downward routes : created by DAOs, to reach the sensor ;
Node’s rank means the distance between the node and the root ;
Metrics are used to qualify links and choose parents ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 10 / 29
Background RPL
DODAGs
DODAG : tree covering and partitioning the WSN.
Root : node managing the DODAG ;
Upward routes : created by DIOs, to reach the root ;
A node owns a parent which leads to the root ;
Downward routes : created by DAOs, to reach the sensor ;
Node’s rank means the distance between the node and the root ;
Metrics are used to qualify links and choose parents ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 10 / 29
Background RPL
DODAGs
DODAG : tree covering and partitioning the WSN.
Root : node managing the DODAG ;
Upward routes : created by DIOs, to reach the root ;
A node owns a parent which leads to the root ;
Downward routes : created by DAOs, to reach the sensor ;
Node’s rank means the distance between the node and the root ;
Metrics are used to qualify links and choose parents ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 10 / 29
Background RPL
Instances
Set of DODAGs, optimized for a QoS or designed for a constraint.
Rules
A node can join only a single DODAG per instance ;
A node can join all the instances available ;
A node may not join an instance if the QoS is not appropriate.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 11 / 29
Background Contiki
Contiki : a lightweight operating system for WSNs
Description
Real time operating system [7], for embedded platforms.
What Contiki brings
uIP stack : small IPv6 (or IPv4) compliant stack, few RAM, singleinterface support ;
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 12 / 29
Multi-BR problematic
Outline
1 Introduction
2 Background
3 Multi-BR problematicMobilityRedundancyTraffic engineeringExtracted RPL root
4 State of the art
5 Validation
6 Conclusion
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 13 / 29
Multi-BR problematic Mobility
Mobility
Mobility case
Parent failure : switching to another parent in the DODAG.
Mobility : new neighborhood : DODAG ? Instance ?
In multi-BR case...
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 14 / 29
Multi-BR problematic Mobility
Mobility
Mobility case
Parent failure : switching to another parent in the DODAG.
Mobility : new neighborhood : DODAG ? Instance ?
In multi-BR case...
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 14 / 29
Multi-BR problematic Mobility
MobilityMobility case
Parent failure : switching to another parent in the DODAG.
Mobility : new neighborhood : DODAG ? Instance ?
In multi-BR case...
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 14 / 29
Multi-BR problematic Mobility
Mobility
Mobility case
Parent failure : switching to another parent in the DODAG.
Mobility : new neighborhood : DODAG ? Instance ?
In multi-BR case...
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 14 / 29
Multi-BR problematic Redundancy
Redundancy
Redundancy consequences
Border router failures : recovery increased ;
RPL overhead on sensors (several DODAGs).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 15 / 29
Multi-BR problematic Redundancy
Redundancy
Redundancy consequences
Border router failures : recovery increased ;
RPL overhead on sensors (several DODAGs).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 15 / 29
Multi-BR problematic Traffic engineering
Traffic engineering
Force paths on the WSN to balance the traffic among several paths.
Solutions
Multi-instance to balance traffic over sensors ;
Multi-instance over several channels to balance traffic over channels.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 16 / 29
Multi-BR problematic Traffic engineering
Traffic engineering
Force paths on the WSN to balance the traffic among several paths.
Solutions
Multi-instance to balance traffic over sensors ;
Multi-instance over several channels to balance traffic over channels.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 16 / 29
Multi-BR problematic Extracted RPL root
Implementation : extracted RPL root over Ethernet
1 RPL root over Ethernet ;
2 Border routers running in a single DODAG per instance ;
3 Mobility and redundancy increased, complexity decreased.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 17 / 29
Multi-BR problematic Extracted RPL root
Implementation : extracted RPL root over Ethernet
1 RPL root over Ethernet ;
2 Border routers running in a single DODAG per instance ;
3 Mobility and redundancy increased, complexity decreased.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 17 / 29
State of the art
Outline
1 Introduction
2 Background
3 Multi-BR problematic
4 State of the art6LBR
5 Validation
6 Conclusion
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 18 / 29
State of the art
Existing 6LoWPAN border router solutions
Computer dependant
Contiki’s border router integrated solution ;
Jackdaw USB stick [8] ;
Computer independant
Grinch project[9] ;
6LoWPAN-ND on Hogaza platform[10] ;
CETIC’s 6LBR[11, 12].
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 19 / 29
State of the art 6LBR
6LBR
Features
6LoWPAN border router using RPL ;
Support of two interfaces in Contiki (filtering rules and translation).
Platforms
Linux native (PC, Raspberry Pi, BeagleBone), Redwire Econotag withEthernet controller.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 20 / 29
Validation
Outline
1 Introduction
2 Background
3 Multi-BR problematic
4 State of the art
5 ValidationConfigurationExperimentationsResults
6 Conclusion
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 21 / 29
Validation Configuration
Scenarios
Platforms
Zolertia Z1 (N1, N2, BR2) ;
Crossbow TelosB (BR1) ;
Four scenarios captured in five experimentations. Traffic capture doneusing sniffer[13]. Traces in pcap format and sequence diagrams,performance indication (values measured in traces).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 22 / 29
Validation Experimentations
Scenario 1 (S1) : Multi-instance advertisement
Multi-instance advertisement and the route creation with packetexchange between the WSN and the Ethernet using the extracted RPLroot. A single BR and a single sensor are used in this scenario.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 23 / 29
Validation Experimentations
Scenario 1 (S1) : Multi-instance advertisement
Multi-instance advertisement and the route creation with packetexchange between the WSN and the Ethernet using the extracted RPLroot. A single BR and a single sensor are used in this scenario.
BR 802.15.4EthernetRPL Root
DIO(instance=2)DIO(instance=2)
DAO(instance=2, target=BR)
DAO(instance=1, target=BR)
DIO(instance=1)DIO(instance=1)
DIO(instance=2)
DIO(instance=1)
DAD(global)
DAD(link-local)
Visual Paradigm for UML Standard Edition(University of Mons)
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 23 / 29
Validation Experimentations
Scenario 1 (S1) : Multi-instance advertisement
Multi-instance advertisement and the route creation with packetexchange between the WSN and the Ethernet using the extracted RPLroot. A single BR and a single sensor are used in this scenario.
1
2
3
(3) Time
Sensor
802.15.4RPL Root Ethernet BR
UDP(Ack)UDP(Ack)
UDP UDP
DIO(instance=1)
DIO(instance=1)
DAO(instance=1, target=Sensor)
DIS
Sensor turned on
DIO(instance=2)
DIO(instance=1)
DAO(instance=1, target=Sensor)
DIO(instance=2)
DIO(instance=1)
Visual Paradigm for UML Standard Edition(University of Mons)
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 23 / 29
Validation Experimentations
Scenario 4 (S4) : Mobility
A single instance with two BRs and a single sensor. Simulation of mobilitybetween two BRs.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 24 / 29
Validation Experimentations
Scenario 4 (S4) : Mobility
A single instance with two BRs and a single sensor. Simulation of mobilitybetween two BRs.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 24 / 29
Validation Experimentations
Scenario 4 (S4) : Mobility
A single instance with two BRs and a single sensor. Simulation of mobilitybetween two BRs.
Ethernet 802.14.5
Sensor
BR1RPL root
DIO
DIO
DIO
DIO
DIODIO
DAD(global)
DAD(link-local)
UDP
DAO(target=Sensor)
UDP
UDP
DAO(target=Sensor)
UDP
DAO(target=BR1)
DAO(target=BR1)
UDP(Ack)UDP(Ack)
Visual Paradigm for UML Standard Edition(University of Mons)
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 24 / 29
Validation Experimentations
Scenario 4 (S4) : Mobility
A single instance with two BRs and a single sensor. Simulation of mobilitybetween two BRs.
2
1
(1) Time
802.14.5Ethernet
BR2
SensorBR1RPL root
UDP UDP
UDP UDP
DAO(target=Sensor)
DIODAO(target=BR2)
DIS
UDP
DIO
DIS
UDP UDP
UDP(Ack)
DAO(target=Sensor)
UDP(Ack)
UDP
UDP
UDP
UDP(Ack)UDP(Ack)
Visual Paradigm for UML Standard Edition(University of Mons)
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 24 / 29
Validation Results
Results - S1 and S4
Summary of the main values gathered during scenarios
Route creation (S1) : about 7s ;
Retransmissions in mobility (S4) : about 30 ;
Route recreation after switch (S4) : about 18s.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 25 / 29
Conclusion
Outline
1 Introduction
2 Background
3 Multi-BR problematic
4 State of the art
5 Validation
6 ConclusionContributionsFuture work
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 26 / 29
Conclusion Contributions
Contributions
1 Complete description of the background notions used : RPL,IPv6, NDP, 6LoWPAN and IEEE 802.15.4. ;
2 State of the art of the existing BRs solutions ;
3 The multi-BR problematic developed using redundancy, mobilityand traffic engineering ;
4 Design and implementation of the extracted RPL root and theborder routers ;
5 Four scenarios with traces and sequence diagrams ;
6 Multi-instance validation.
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 27 / 29
Conclusion Future work
Future work
1 Implementation of several instances using several channels ;
2 Dynamic load balancing implementation ;
3 Dynamic instance determination for Ethernet traffic ;
4 Validation using other applications (e.g., Pings, HTTP) ;
5 Bigger testbed and simulation validation ;
6 More realistic topologies (border routers and RPL root connectedthrough a backbone network) ;
7 ...
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 28 / 29
Conclusion Future work
Thank you for your attention
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 29 / 29
Conclusion Future work
[1] Sukun Kim, Shamim Pakzad, David Culler, James Demmel, GregoryFenves, Steven Glaser, and Martin Turon, “Health Monitoring of CivilInfrastructures Using Wireless Sensor Networks.” http:
//www.cs.berkeley.edu/~binetude/work/ipsn07_ggb.pdf (lastaccess : 12/05/13).
[2] J.-P. Vasseur and A. Dunkels, Interconnecting smart objects with IP.Morgan Kauffman, 2012.
[3] B. Quoitin, “IPv6.” Computer Networks course (UMONS).
[4] Internet Engineering Task Force, “RFC 2460 : Internet Protocol,Version 6 (IPv6) Specification.”http://tools.ietf.org/html/rfc2460 (last access : 16/03/13).
[5] Internet Engineering Task Force, “RFC 4861 : Neighbor Discovery forIP version 6 (IPv6).”https://datatracker.ietf.org/doc/rfc4861/ (last access :2/10/12).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 29 / 29
Conclusion Future work
[6] Internet Engineering Task Force, “RFC 6550 : RPL : IPv6 RoutingProtocol for Low-Power and Lossy Networks.”https://datatracker.ietf.org/doc/rfc6550/ (last access :2/10/12).
[7] “Contiki 2.6 Doxygen.”http://contiki.sourceforge.net/docs/2.6/ (last access :17/09/12).
[8] “Jackdaw USB stick.”http://dak664.github.com/contiki-doxygen/a01677.html
(last access : 2/10/12).
[9] “Grinch - simple 6lowpan RPL border router.”http://sixpinetrees.blogspot.be/2011/06/
grinch-simple-6lowpan-rpl-border-router.html (last access :2/10/12).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 29 / 29
Conclusion Future work
[10] L. M. Ara, “Neighbor Discovery Proxy-Gateway for 6LoWPAN-basedWireless Sensor Networks.” KTM Information and CommunicationTechnology.
[11] Maxime Denis, “6LoWPAN Border Router prototype on a RedwireEconotag,” February 2013.
[12] CETIC, “A deployment-ready 6LoWPAN Border Router solutionbased on Contiki.” https://github.com/cetic/6lbr (last access :23/02/13).
[13] David Hauweele, “Wsn tools.”https://github.com/gawen947/wsn-tools (last access :22/05/13).
Maxime Denis (UMONS) Traffic engineering, redundancy and mobility with RPL June 21th 2013 29 / 29