Presentation of internship subject, reached objectives and future work. Subject : Border router solution in Wireless Sensors Networks, running on the Contiki OS.
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Internship end
1. 6LoWPAN border router :
Internship
Maxime D ENIS
UMONS
6 December 2012
´
Masters : Sebastien DAWANS Director : Pr. Bruno Q UOITIN
Laurent D ERU
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 1 / 41
2. Summary
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 2 / 41
3. Introduction Internship subject
Starting point
CETIC border router prototype
The CETIC border router interconnects a WLAN (IPv6) and a WSN
(6LoWPAN) using RPL for routing.
F IGURE 1 : The border router in a typical topology.
Modes
Router, hybrid bridge and full bridge.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 3 / 41
4. Introduction Internship subject
Phases of the internship
1 Documentation :
a state of the art ;
b documentation of the current implementation.
2 Evaluation :
a scenarios : use cases with sequence diagrams ;
b performance ;
c mobility ;
d etc.
3 Implementation :
a optimizations ;
b adding functionalities.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 4 / 41
5. Introduction Internship subject
Platforms
F IGURE 2 : Redwire Econotag [1] and ENC28J60[2] Ethernet controller (left),
Crossbow Telos B [3] (right).
Configuration
Redwire Econotag running the CETIC BR application and an UDP
server on Contiki ;
Crossbow Telos B running a simple webserver (Sky websense)
and an UDP sender on Contiki.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 5 / 41
6. Introduction Internship subject
Testbed
F IGURE 3 : CETIC testbed topology allowing multi-hop routing.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 6 / 41
7. Introduction Notions
6LoWPAN and RPL
6LoWPAN[4, 5]
Constitutes an adaption layer between IPv6 and IEEE 802.15.4. It
introduces packets fragmentation and reassembly, header
compression and Link layer forwarding (in case of mesh under
networks).
RPL [6, 7]
Lightweight distance vector
protocol destined to WSN. It
builds a DODAG [8]
representing the network.
RPL performs a covering of
the NDP functionalities
(Messages : DIO, DIS, DAO).
F IGURE 4 : Example of RPL DODAG.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 7 / 41
8. Introduction Notions
Contiki
Description
Real time operating system [9], for embedded platforms. Contiki made
to use only one interface : introduction of a Packet Filter.
What Contiki brings
uIP stack : small IPv6 (or IPv4) compliant stack, few RAM ;
Protothreads : light threads stackless (blockable).
F IGURE 5 : Changes between standard IPv6 stack and 6LoWPAN stack.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 8 / 41
9. Introduction CETIC prototype
Structure and modes
1 Packet filter : difference
between WSN and ethernet
RPL
data ;
2 Full bridge mode : switch,
uIPv6
forward and translating
ll-addresses ;
PacketFilter 3 Hybrid bridge mode : switch,
ND proxy and multi-hop (in
ENC28J60 802.15.4
route-over) ;
4 Router : Prefix announcement,
routing, forwarding (two
F IGURE 6 : CETIC prototype separated subnets).
structure.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 9 / 41
10. Introduction CETIC prototype
Structure and modes
1 Packet filter : difference
between WSN and ethernet
RPL
data ;
2 Full bridge mode : switch,
uIPv6
forward and translating
Translation
ll-addresses ;
PacketFilter 3 Hybrid bridge mode : switch,
ND proxy and multi-hop (in
RPL
ENC28J60 802.15.4 Traffic route-over) ;
Data 4 Router : Prefix announcement,
Traffic
routing, forwarding (two
F IGURE 6 : CETIC prototype separated subnets).
structure.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 9 / 41
11. Introduction CETIC prototype
Structure and modes
1 Packet filter : difference
between WSN and ethernet
RPL
data ;
Multi-hop ND-Proxy 2 Full bridge mode : switch,
uIPv6
forward and translating
Translation
ll-addresses ;
PacketFilter 3 Hybrid bridge mode : switch,
ND proxy and multi-hop (in
NDP RPL
Messages
ENC28J60 802.15.4
Messages route-over) ;
Data 4 Router : Prefix announcement,
Traffic
routing, forwarding (two
F IGURE 6 : CETIC prototype separated subnets).
structure.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 9 / 41
12. Introduction CETIC prototype
Structure and modes
1 Packet filter : difference
between WSN and ethernet
RPL
data ;
Routing Multi-hop 2 Full bridge mode : switch,
Table
uIPv6
forward and translating
Translation
ll-addresses ;
PacketFilter 3 Hybrid bridge mode : switch,
ND proxy and multi-hop (in
NDP RPL
Messages
ENC28J60 802.15.4
Messages route-over) ;
Data 4 Router : Prefix announcement,
Traffic
routing, forwarding (two
F IGURE 6 : CETIC prototype separated subnets).
structure.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 9 / 41
13. Evaluation phase
Outline
1 Introduction
2 Evaluation phase
Example of basic scenario
The restart
Sensors mobility
Transparent gateway
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 10 / 41
14. Evaluation phase
Organization of the evaluation phase
F IGURE 7 : Flowcharts of the evaluation phase.
During the phase
1 Twelve scenarios defined and explained in documentation,
declined in the three modes of the border router ;
2 When a issue was encountered, solutions were designed to
improve prototype.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 11 / 41
15. Evaluation phase Example of basic scenario
Description
F IGURE 8 : Actors of the scenario.
In a one-sensor topology with border router in hybrid bridge and
manual configuration
1 Wait for the DODAG to be built (typically when a DAO is received
by the border router) ;
2 Plug the computer to the border router ;
3 Start sending pings to the sensor and wait for response.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 12 / 41
16. Evaluation phase Example of basic scenario
Results
Computer BR 802.15.4 Sky
(router)
User DAD(fe80::250:c2a8:cb76:d81b)
1
DAD(fe80::250:c2a8:cb76:d81b)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(aaaa::250:c2a8:cb76:d81b)
DIO
NS(aaaa::212:7400:1465:f55e)
NA
DIO
DAO
Computer connection Ethernet
DAD(fe80::223:dfff:fe97:2492)
RA(bbbb::/64)
DAD(bbbb::223:dffff:fe97:2492)
Ping to Sky NS(bbbb::100)
NA
13s Echo Request(seq=0)
before
Echo Reply(Seq=0)
F IGURE 9 : Ping from Computer to Sensor (Sky) through the border router.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 13 / 41
17. Evaluation phase Example of basic scenario
Results
Computer BR 802.15.4 Sky
(router)
User DAD(fe80::250:c2a8:cb76:d81b)
DAD(fe80::250:c2a8:cb76:d81b)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(aaaa::250:c2a8:cb76:d81b)
DIO
NS(aaaa::212:7400:1465:f55e)
NA
DIO
DAO
2
Computer connection Ethernet
DAD(fe80::223:dfff:fe97:2492)
RA(bbbb::/64)
DAD(bbbb::223:dffff:fe97:2492)
Ping to Sky NS(bbbb::100)
NA
13s Echo Request(seq=0)
before
Echo Reply(Seq=0)
F IGURE 9 : Ping from Computer to Sensor (Sky) through the border router.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 13 / 41
18. Evaluation phase Example of basic scenario
Results
Computer BR 802.15.4 Sky
(router)
User DAD(fe80::250:c2a8:cb76:d81b)
DAD(fe80::250:c2a8:cb76:d81b)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(fe80::250:c2ff:fea8:ced0)
DAD(aaaa::250:c2a8:cb76:d81b)
DIO
NS(aaaa::212:7400:1465:f55e)
NA
DIO
DAO
Computer connection Ethernet
DAD(fe80::223:dfff:fe97:2492)
RA(bbbb::/64)
Ping to Sky
DAD(bbbb::223:dffff:fe97:2492)
NS(bbbb::100)
3
NA
13s Echo Request(seq=0)
before
Echo Reply(Seq=0)
F IGURE 9 : Ping from Computer to Sensor (Sky) through the border router.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 13 / 41
19. Evaluation phase The restart
Bridge in autoconf mode restarting in stable network
Issue encountered
When restarting, the border router requests a DODAG (using a DIS
message) and a prefix on the wired network. If it receives a DIO first, it
becomes leaf and root at the same time : loop.
F IGURE 10 : DODAG representation of the network before and after
restarting.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 14 / 41
20. Evaluation phase The restart
Solution
Changes to implementation
Increment the version number of the DODAG : the incremented
number makes the network restarting ;
Construct a prefixless DODAG (using link-local address as
DODAG ID instead of global address) in autoconfiguration mode ;
When a prefix is received from the wired network, add it to the
DIO (in Prefix Information Option) and propagate it.
Changes to Contiki
The prefix treatment in a sensor already in a DODAG was defective
and had to be modified to handle new prefix announced.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 15 / 41
21. Evaluation phase Sensors mobility
Loss in wireless sensors networks
How can a loss occur ?
Sensor problem, interferences, collisions ;
Moving topology.
F IGURE 11 : DODAG representation of the network before and after a sensor
loss.
Deal with losses
Losses in WSN can occur a lot of time : ETX metric used in RPL.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 16 / 41
22. Evaluation phase Sensors mobility
Loss in wireless sensors networks
How can a loss occur ?
Sensor problem, interferences, collisions ;
Moving topology.
F IGURE 11 : DODAG representation of the network before and after a sensor
loss.
Deal with losses
Losses in WSN can occur a lot of time : ETX metric used in RPL.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 16 / 41
23. Evaluation phase Sensors mobility
Loss in wireless sensors networks
How can a loss occur ?
Sensor problem, interferences, collisions ;
Moving topology.
F IGURE 11 : DODAG representation of the network before and after a sensor
loss.
Deal with losses
Losses in WSN can occur a lot of time : ETX metric used in RPL.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 16 / 41
24. Evaluation phase Sensors mobility
Dealing with lost destinations
Before implementation
The lifetime attribute of the route is used. When lifetime expires, the
associated route is tested and can be removed from the table. This
mechanism prevent any kind of quick mobility among several subnets.
Proposal
Use the ETX for descending routes, and remove routes when some
condition are encountered :
The ETX of the neighbor becomes greater than a threshold value ;
No-ack penalties are encountered.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 17 / 41
25. Evaluation phase Transparent gateway
Bridge mode to simplify subnets
F IGURE 12 : Several subnets visible as one subnet with bridge.
Issue encountered with full bridge
On-link prefix announced as off-link, and poorly propagated.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 18 / 41
26. Implementation
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 19 / 41
27. Implementation
Features added
1 On-link prefix management and propagation (bit set and correctly
managed by the sensor) ;
2 Incremented DODAG version number correctly managed by the
sensors when restart ;
3 Prefix Information Option propagation and management by the
sensors ;
4 Route Information Option management by the border router.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 20 / 41
28. Implementation
Route Information Option management
Option of NDP’s RA message[10] used to set routes in routing tables.
Type Length Pref Len R P R
Route lifetime
Prefix (variable length)
F IGURE 13 : Route Information Option message format as specified in [10].
Before implementation
Border router managing RA but ignoring RIOs.
After implementation
When a RIO is received from an IPv6 router, announced prefixes are
added to the routing table of the border router, and not spread to the
WSN.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 21 / 41
29. Using the testbed
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
Application
Evaluation
5 Contiki on Linux
6 Master thesis
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 22 / 41
30. Using the testbed Application
Scenario
Two applications
1 UDP client running on the sensors, and sending to a server
frequent messages identifying them (each 15s) ;
2 UDP server running on the border router, sending an
acknowledgment when receiving a message from a node.
F IGURE 14 : Testbed topology used for the scenario.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 23 / 41
31. Using the testbed Evaluation
Metrics
What is measured ?
PRR from testbed to server : the amount of messages (UDP
packets) sent is compared to the amount of messages received at
the UDP server (running on the border router) ;
PRR from server to testbed : the amount of messages
Acknowledgment sent by the server compared to the amount of
messages received on the sensors ;
TCPIP forwarding : the amount of forwards done at each sensor ;
CSMA : the amount of CSMA errors encountered at each sensor
and through time.
How ?
The packet trip is observable using traces all along the stacks (in the
application, in the uIP stack and in CSMA).
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 24 / 41
32. Using the testbed Evaluation
Results
F IGURE 15 : Metrics.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 25 / 41
33. Using the testbed Evaluation
Results
F IGURE 15 : Metrics.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 25 / 41
34. Using the testbed Evaluation
Results
F IGURE 15 : Metrics.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 25 / 41
35. Using the testbed Evaluation
Analysis
PRRs
Metric Average value
PRRTB→S 99.75%
PRRS→TB 98.01%
TABLE 1 : Average results of metrics.
RPL is optimized for collecting data (ascendant traffic).
TCPIP forwarding
Nodes T2 and T3 used for forwarding by T8 and sometimes by T5.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 26 / 41
36. Using the testbed Evaluation
RPL routing
RPL is an asymmetric routing protocol which relies on a sink system
for ascendant traffic and on routes for descendant traffic.
From sensor to border router
The current implementation
uses the default router to
forward the packet.
From border router to sensor
A lookup is performed to find
the best route to forward the
packet.
F IGURE 16 : Example of traffic on a RPL
DODAG.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 27 / 41
37. Using the testbed Evaluation
RPL routing
RPL is an asymmetric routing protocol which relies on a sink system
for ascendant traffic and on routes for descendant traffic.
From sensor to border router
The current implementation
uses the default router to
forward the packet.
From border router to sensor
A lookup is performed to find
the best route to forward the
packet.
F IGURE 16 : Example of traffic on a RPL
DODAG.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 27 / 41
38. Using the testbed Evaluation
RPL routing
RPL is an asymmetric routing protocol which relies on a sink system
for ascendant traffic and on routes for descendant traffic.
From sensor to border router
The current implementation
uses the default router to
forward the packet.
From border router to sensor
A lookup is performed to find
the best route to forward the
packet.
F IGURE 16 : Example of traffic on a RPL
DODAG.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 27 / 41
39. Contiki on Linux
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 28 / 41
40. Contiki on Linux
Successful portage of the Contiki’s app to Linux
Platform
Beaglebone using a 700Mhz ARM Cortex A8 [11], relying on the
Angstrom distribution [12].
RADVD
RPL
....
BR
Linux Server
TAP IP Tables
Eth Telos Beaglebone Eth
SLIP
RAW
802.15.4 Raw or Ctrl (MAC, channel, Ack...)
F IGURE 17 : Linux portage and platform structure.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 29 / 41
41. Master thesis
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
Subject
Concrete applications
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 30 / 41
42. Master thesis Subject
Subject
What ?
Multiple border router problematic : maintain a state between
several border router ;
Make border router more simple : using on an higher root
(outside the RPL network, in WPAN).
Why ?
Redundancy or Traffic engineering ;
Run several QoS ;
Invisible sink changes (mobility).
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 31 / 41
43. Master thesis Concrete applications
Redundancy paths and traffic engineering
Load balancing, robustness, etc.
F IGURE 18 : One QoS on same subnet : one instance and several DODAGs.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 32 / 41
44. Master thesis Concrete applications
Redundancy paths and traffic engineering
Load balancing, robustness, etc.
F IGURE 18 : One QoS on same subnet : one instance and several DODAGs.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 32 / 41
45. Master thesis Concrete applications
Several QoS
Collecting data, request data, energy-saving paths, etc., on same
network
F IGURE 19 : Two QoS on same subnet : several instances.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 33 / 41
46. Master thesis Concrete applications
Several QoS
Collecting data, request data, energy-saving paths, etc., on same
network
F IGURE 19 : Two QoS on same subnet : several instances.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 33 / 41
47. Master thesis Concrete applications
Invisible sink changes
Same QoS on two separated subnets.
F IGURE 20 : Invisible mobility.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 34 / 41
48. Master thesis Concrete applications
Invisible sink changes
Same QoS on two separated subnets.
F IGURE 20 : Invisible mobility.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 34 / 41
49. Conclusion
Outline
1 Introduction
2 Evaluation phase
3 Implementation
4 Using the testbed
5 Contiki on Linux
6 Master thesis
7 Conclusion
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 35 / 41
50. Conclusion
Internship achievements
1 Increased border router stability : some optimizations and
bugfixes ;
2 Paper :
State of the art (the border router solutions) ;
Complete description of the border router and scenarios detailed.
3 Features added :
Border router more easily deployable ;
Autoconfiguration ;
Stability increased.
Master thesis perspectives
1 RPL root outside WSN ;
2 Mobility, redundancy, traffic engineering.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 36 / 41
51. Conclusion
Questions ?
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 37 / 41
52. Conclusion
Demonstration
F IGURE 21 : Configuration.
Summary
Border router web interface, pings, etc.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 38 / 41
53. References
[1] “Redwire Econotag.”
http://redwirellc.com/store/node/1 (last access :
26/09/12).
[2] “ENC28J60.” http://www.microchip.com/wwwproducts/
Devices.aspx?dDocName=en022889 (last access : 26/09/12).
[3] Crossbow, “Telos b.”
http://www.xbow.jp/TelosbCatalog.pdf (last access :
1/10/12).
[4] “6LoWPAN Backbone Router.” http://tools.ietf.org/
html/draft-thubert-6lowpan-backbone-router-02
(last access : 2/10/12).
[5] L. M. Ara, “Neighbor Discovery Proxy-Gateway for
6LoWPAN-based Wireless Sensor Networks.” KTM Information
and Communication Technology.
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 39 / 41
54. References
[6] “RFC 6550 : RPL : IPv6 Routing Protocol for Low-Power and
Lossy Networks.”
https://datatracker.ietf.org/doc/rfc6550/ (last
access : 2/10/12).
[7] J.-P. Vasseur and A. Dunkels, Interconnecting smart objects with
IP.
Morgan Kauffman, 2012.
[8] S. Kuryla, “RPL : IPv6 Routing Protocol for Low power and Lossy
Networks.” http://cnds.eecs.jacobs-university.de/
courses/nds-2010/kuryla-rpl.pdf (last access :
20/09/12), 2010.
[9] “Contiki 2.6 Doxygen.”
http://contiki.sourceforge.net/docs/2.6/ (last
access : 17/09/12).
Maxime D ENIS (UMONS) 6LoWPAN border router : Internship 6 December 2012 40 / 41