370 likes | 392 Views
Network Kernel Architectures and Implementation (01204423) IPv6 over Low-Power Wireless Personal Area Networks (6LoWPAN). Chaiporn Jaikaeo chaiporn.j@ku.ac.th Department of Computer Engineering Kasetsart University. Outline. 6LoWPAN IPv6 overview Header compression tecniques Routing
E N D
Network Kernel Architectures and Implementation(01204423) IPv6 over Low-Power Wireless Personal Area Networks(6LoWPAN) Chaiporn Jaikaeo chaiporn.j@ku.ac.th Department of Computer EngineeringKasetsart University
Outline • 6LoWPAN • IPv6 overview • Header compression tecniques • Routing • JenNet-IP • The 6lo Working Group
6LoWPAN • IPv6 over Low-power Wireless Personal Area Networks • Nodes communicate using IPv6 packets • An IPv6 packet is carried in the payload of IEEE 802.15.4 data frames
IPv6 Overview • Larger address space compared to IPv6 • 232 vs. 2128 • Autoconfiguration • Supporting both stateful (DHCPv6) and stateless operations • Simplified headers • Fixed header with optional daisy-chained headers • Mandatory security
IPv6 Header • Minimum header size = 40 bytes • Header compression mechanism is needed Bit 0 4 8 12 16 20 24 28 0 Ver Traffic Class Flow Label 32 Payload Length Next Header Hop Limit 64 Source Address 96 128 160 192 Destination Address 224 256 288
IPv6 Extended Headers • More flexible than IPv4’s option fields • Example 1: no extended header • Example 2: with a routing header Next header = 6 (TCP) TCP hdr + payload Next header = 43 (routing) Next header = 6 (TCP) TCP hdr + payload
IPv6 Addressing • Global unicast addresses • Start with 001 • Host ID usually incorporates MAC address 001 Prefix provided byservice provider Subnet ID Host ID 48 16 64
IPv6 Address Scopes • Global addresses • Globally routable • Link-local addresses • Only used within directly attached network • Belonging to FE80::/10 block 0 Interface ID 1111 1110 10 96 db c9 FF FE 00 16 fe 10 bits xxxxxxUx U = 0: not uniqueU = 1: unique 94 db c9 00 16 fe For Ethernet addresses: U=0 Global, U=1: Local See http://upload.wikimedia.org/wikipedia/commons/9/94/MAC-48_Address.svg
IEEE 802.15.4 Revisited • Allows 127 bytes MTU • Good for buffering cost and low packet error rate • Supports both 16-bit and 64-bit addresses • Supports both star and mesh topologies • Usually operates in an ad hoc fashion with unreliable links • IEEE 802.15.4 networks are considered Low-power and Lossy Networks (LLN)
6LoWPAN Adaptation Layer • Needs to make IEEE 802.15.4 comply with IPv6’s MTU size of 1280 bytes • IEEE 802.15.4’s MTU is 127 bytes • MAC header: ≤ 25 bytes • Optional security header: ≤ 21 bytes • Provides three main services • Packet fragmentation and reassembly • Header compression • Link-layer forwarding
Mesh Address Header (1) • Used with mesh-under routing approach • Only performed by FFDs
Mesh Address Header (2) • Hop left field is decremented by one every hop • Frame is discarded when hop left is 0 • Address fields are unchanged 802.15.4Header MeshHeader 802.15.4Header MeshHeader B A A D Data D C A D Data Dst Src Orig Final Dst Src Orig Final Originator Final A B C D
Mesh-under vs. Route-over Routing Application Application Transport Transport Network (IPv6) Network (IPv6) Routing 6LoWPAN Adaptation 6LoWPAN Adaptation 802.15.4 MAC 802.15.4 MAC 802.15.4 PHY 802.15.4 PHY Mesh-under routing Route-over routing
Fragment Header • Fragmentation is required when IPv6 payload size exceeds that of IEEE 802.15.4 payload limit • All fragments are in units of 8 bytes (in 8-byte units)
IPv6 Header Compression • Can be either stateless or stateful • Independent of flows
HC1 Compression (1) • Optimized for link-local addresses • Based on the following observations • Version is always 6 • IPv6 address’s interface ID can be inferred from MAC address • Packet length can be inferred from frame length • TC and flow label are commonly 0 • Next header is TCP, UDP, or ICMP Ver Traffic Class Flow Label Payload Length Next Header Hop Limit Source Address Destination Address
HC2 Compression • Compress UDP header • Length field can be inferred from frame length • Source and destination ports are shortened into 4 bits each • Given that ports fall in the well-known range of 61616 – 61631
IPHC Compression (1) • HC1 and HC2 are only optimized for link-local addresses • Globally routable addresses must be carried non-compressed • IPHC will be the main compression technique for 6LoWPAN • HC1 and HC2 will likely be deprecated
IPHC Compression (2) • TF: Traffic class and flow label • NH: Next header • HLIM: Hop limit (0NC, 11,264,3255) • CID: Context Identifier • SAC/DAC: Src/Dst address (stateful or stateless) • SAM/DAM: Src/Dst mode
IPHC’s Context Identifier • Can be used to derive source and destination addresses • Not specified how contexts are stored or maintained
Low-power and Lossy Networks • Abbr. LLN • Packet drops and link failures are frequent • Routing protocol should not over-react to failures • Not only applied to wireless networks • E.g., power-line communication Packet delivery ratio
Routing Requirements • IETF formed a working group in 2008, called ROLL (Routing over Low-power and Lossy Networks) to make routing requirements • Major requirements include • Unicast/multicast/anycast • Adaptive routing • Contraint-based routing • Traffic characteristics • Scalability • Auto-configuration and management • Security
Different Objective Functions - Minimize low and fair quality links - Avoid non-encrypted links - Minimize latency - Avoid poor quality links and battery-powered node
RPL Protocol • IPv6 Routing Protocol for Low-power and Lossy Networks • Designed to be highly modular for flexibility • Employing distance vector mechanism
RPL Operations • DODAG (Destination Oriented Directed Acyclic Graph) is created • Based on the objective function LBR LBR 1 1 11 12 13 11 12 13 21 22 23 24 21 22 23 24 31 32 33 34 35 31 32 33 34 35 41 42 43 44 45 46 41 42 43 44 45 46
Multiple DODAGs (1) • Provide alternate routes for different requirements
Multiple DODAGs (2) - High reliability (no battery-powered node) - Low latency
JenNet IP • Jennic’s implementation of 6LoWPAN • Supports tree topology • Routing is performed over a tree
The 6lo Working Group • Works on IPv6 over networks of constrained nodes, such as • IEEE 802.15.4 • ITU-T G.9959 • Bluetooth LE https://datatracker.ietf.org/wg/6lo/charter/
References • G. Montenegro, N. Kushalnagar, J. Hui, and D. Culler. Transmission of IPv6 Packets over IEEE 802.15.4 Networks, RFC 4494, September 2007. • NXP Laboratories. JenNet-IP WPAN Stack User Guide (JN-UG-3080 v1.3). 2013. • Jean-Philippe Vasseur and Adam Dunkels. Interconnecting Smart Objects with IP: The Next Internet. Morgan Kaufmann. 2010.