The Codex of Business Writing Software for Real-World Solutions 2.pptx
201102 slides-icact-rpl for-nano_qplus
1. Design and Implementation of
Low power Wireless IPv6 Routing
for NanoQplus
Jongsoo Jeong, Jaeseok Kim, and Pyeongsoo Mah
2. 2
Contents
What is RPL?
Features
Objective
Stack Overflow Issue
IPv6 Stack for NanoQplus
Evaluation
Conclusion
3. 3
What is RPL?
CoAP
RPL: IPv6 Routing Protocol
for LLNs UDP
by IETF ROLL WG
LLNs: IEEE 802.15.4, IEEE RPL
P1901, etc.
Why RPL?
ICMPv6 IPv6
Interoperability is essential.
6LoWPAN ND
Core protocol of ‘Internet
of Things’
6LoWPAN Adaptation Layer
MAC: IEEE 802.15.4
4. 4
Features
Traffic patterns
MP2P: forward to a default router Upward (MP2P)
P2MP: storing or non-storing
P2P: combination of MP2P and P2MP
Directed Acyclic Graph
Distance-Vector (Rank)
Proactive construction Downward
Trickle timer
(P2MP)
Objective Function
To achieve various goals…
How to calculate rank values?
How to construct DAG?
Up+Down (P2P)
Separated from core function
User definable and adjustable
5. 5
Objective
Implementing IPv6 including RPL on top of
NanoQplus.
NanoQplus
OS for small wireless sensors and actuators
Multi-thread
Up to 15 user threads
Small stack space for each thread (default: 200 B)
However, IPv6 network stack is too complex to
be operated in the small stack.
6. 6
Stack Overflow Issue
User
Thread
Stack Peak Stack Usage
Usage
MAC
Max
Stack 6LP
Size
IPv6
UDP
User thread
Time
7. 7
Stack Overflow Issue:
Solution
User
Thread
Stack
Usage
Task Q
Max
Post IP Stack
Size Peak Stack Usage
App
MAC
6LP
IPv6
Task Q User thread
UDP
UDP
Task Time
Pop Queuing
App IP
8. 8
Stack Overflow Issue:
Solution Example #1, #2
RPL
Router
User #3
Thread
Stack
Usage
Max
Posting
Stack
Size Task #3
Posting RPL MAC
Task #2 ICMPv6 6LP
IPv6
IPv6
MAC 6LP ICMPv6
Time
Task #1 Task #2 Task #3
Receiving a frame Receiving a RPL control message Sending a RPL control message
9. 9
Stack overflow safety
Forwarding IP 128
Sending UDP 179
Sending RPL Control 191
UDP ICMPv6 Sending NA 165
Sending NS 181
IPv6 Sending RA 167
Sending RS 177
6LoWPAN Receiving RPL… 109
Receiving NA 108
Receiving NS 108
IEEE 802.15.4
Receiving RA 122
Receiving RS 107
0 50 100 150 200
Maximum Stack Usage
12. 12
Evaluation – Control overhead
250
Number of transmissions per minute
200 Initial state UDP
6LoWPAN-ND
RPL
150
100
Steady state
50
0
0 10 20 30
Time (min)
14. 14
Conclusion
RPL Ready in NanoQplus
Stable IPv6 and RPL operations IPv6 (RPL)
We implemented the draft-ietf-roll-
rpl-13.
After becoming RFC document, we will
update it.
Future Works
Implementing full fledge RPL with multiple
OFs.
Supporting CoAP.
Realizing the Internet of Things.