A Review of 6LoWPAN Routing Protocols Presented by Ee Gee Keng - - PowerPoint PPT Presentation
A Review of 6LoWPAN Routing Protocols Presented by Ee Gee Keng - - PowerPoint PPT Presentation
A Review of 6LoWPAN Routing Protocols Presented by Ee Gee Keng Department of Computer and Communication Systems Faculty of Engineering University Putra Malaysia Outline Introduction 6LoWPAN Overview 6LoWPAN Adaptation Layer
Outline
- Introduction
- 6LoWPAN Overview
- 6LoWPAN Adaptation Layer Mechanisms
And Header Types
- Existing Routing Protocols in 6LoWPAN
- Comparison of 6LoWPAN Routing
Protocols
- Conclusion
Introduction
Personal Area Network (PAN) Low power Wireless Personal Area Network (LoWPAN) IEEE 802.15.4 (PHY and MAC) Wireless Sensor Network (WSN) IPv6 vs IPv4 6LoWPAN Ex: ZigBee
WSN vs 6LoWPAN
NAT devices obviated !
6LoWPAN Overview
- Provides a WSN node with IP communication capabilities.
- RFD (end device) FFD (router) Gateway IP-enabled devices
6LoWPAN Protocol Stack
Adaptation layer Header compression, fragmentation, reassembly !
IPv6 packet (1280 bytes) MAC frame size (25+102= 127 bytes)
IEEE 802.15.4 PHY and MAC
General MAC frame format in PHY frame
- dictates how the IEEE 802.15.4 devices may communicate with
each other over a wireless channel.
- The IEEE 802.15.4 standard total 27 channels defined in PHY layer.
- specifies when the devices may access the channel for
communication.
- 4 frame structures for MAC layer: beacon frame, data frame,
acknowledgement frame and MAC command frame.
- A beacon frame - to transmit beacons.
- A data frame
- data transfers.
- Acknowledgement frame - confirm successful frame reception.
- MAC command frame - handling all MAC peer entity control
transfers.
868MHz / 915MHz PHY
868.3 MHz
Channel 0 Channels 1-10 Channels 11-26
928 MHz 902 MHz 5 MHz 2 MHz
2.4 GHz PHY
20Kb/s 40Kb/s 250Kb/s
- Header compression, fragmentation and layer-two
forwarding.
- 4 basic 6LoWPAN header types:
- HC1 header ( IPv6 Header Compression Header)
- Fragmentation header
- Mesh header
- Dispatch header
- Header stacking principle is used.
- Device only uses specific 6LoWPAN defined headers to send its
packet.
6LoWPAN Adaptation Layer Mechanisms
First two bits
- f header
are used to identify
6LoWPAN Adaptation Layer Mechanisms
Header Field IPv6 header length 6LoWPAN HC1 length Explanation Version 4 bits
- Assuming communicating with IPv6.
Traffic class 8 bits 1 bit 0 = Not compressed. The field is in full size. 1 = Compressed. The traffic class and flow label are both zero. Flow label 20 bits Payload length 16 bits
- Can be derived from MAC frame length or adaptation layer datagram size
(6LoWPAN fragmentation header). Next header 8 bits 2 bits Compressed whenever the packet uses UDP, TCP or Internet Control Message Protocol version 6 (ICMPv6). Hop limit 8 bits 8 bits The only field always not compressed. Source address 128 bits 2 bits If Both source and destination IPv6 addresses are in link local, their 64-bit network prefix are compressed into a single bit each with a value of one. Another single bit is set to one to indicate that 64-bit interface identifier are elided if the destination can derive them from the corresponding link-layer address in the link-layer frame or mesh addressing header when routing in a mesh. Destination address 128 bits 2 bits HC2 encoding
- 1 bit
Another compression scheme follows a HC1 header. Total 40 bytes 2 bytes Fully compressed, the HC1 encoding reduces the IPv6 header to two bytes.
a) HC1 header
- Used to compress those header fields to a few bits while reserving an escape
value for the less common ones appear. -> reduce transmission overhead !
1 1 Datagram size (11 bits) Datagram tag (16 bits)
1 O F Hops left (4 bits) Originator address (16-64 bits) Final address (16-64 bits) 1 O F 0xF Hops left (8 bits) Originator address (16-64 bits) Final address (16-64 bits)
6LoWPAN Adaptation Layer Mechanisms
b) Fragmentation header
- Datagram size - specify the size of the entire IP packet before adaptation-layer
fragmentation.
- Datagram tag - identify all of the fragments of a single original packet.
- An extra byte in subsequent fragmentation is used for datagram offset field.
C) Mesh header
- Accomplish intra-PAN routing.
6LoWPAN Adaptation Layer Mechanisms
d) Dispatch header
1 Dispatch (6 bits) 1 0x3F Dispatch (8 bits) 01 000001 The following bits are IPv6 uncompressed header 01 000010 The following bits are IPv6 HC1 compressed encoding 01 010000 The following bits are broadcast header 01 111111 The following 8 bits are an additional field for dispatch value.
- Used to define the type of header to follow.
- Only 5 of the 64 dispatch header types have thus far been defined.
IEEE 802.15.4 frame Mesh addressing Broadcast header Fragmentation header Dispatch header Compressed IP header Payload
6LoWPAN header sequences
- Header stacking principle headers present only if needed !
Dispatch Header ( new 6-bit sequence) Routing header Payload
6LoWPAN routing header
- To achieve full routing functionality.
- Mesh-under (intra-PAN) vs route-over (inter-PAN).
6LoWPAN Adaptation Layer Mechanisms
Mesh Under Route Over Mesh Under
- Performs its routing at adaptation layer.
- Performs no IP routing within LoWPAN.
- Based on MAC address (16-bit or 64-bit).
Route Over
- Performs its routing at network layer.
- Performs IP routing.
- IP address = IPv6 prefix + interface identifier
=> automatically (stateless auto-configuration)
- Each node serves as an IP router.
6LoWPAN Routing classification
Existing 6LoWPAN Routing
AODV protocol message exchange
a) 6LoWPAN Ad-hoc On-Demand Distance Vector (LOAD)
LOAD protocol message exchange
Modification done in LOAD:
- Destination sequence number is not used.
- For ensure loop freedom, only destination generates RREP.
- new routing metric : link quality indication (LQI) is used.
- Link Layer Notification (LLN) instead of Hello message.
b) Dynamic MANET On-demand for 6LoWPAN Routing (DYMO-low)
Existing 6LoWPAN Routing
Differences with LOAD :
- 16-bit destination sequence
number is used.
- local repair and route cost
accumulation are not used.
17 18
PAN coordinator Parent Nodes Child Nodes
c) Hierarchical Routing (HiLow)
Existing 6LoWPAN Routing
Uses 16-bit short address as interface identifier instead of 64-bit as AODV and LOAD => memory saving and larger scalability.
AODV (WSN) LOAD DYMO- low HiLow RERR message Use Use Use No use Sequence number Use No use Use No use Precursor list Use No use No use No use Hop count Use Optional Optional Use Hello message Use No use Use No use Local repair Use Use No use No use Energy Usage High Low Low Low Memory usage High Medium Medium Low Mobility Mobile Mobile Mobile Static Scalability Low Low Low High Routing delay High Low High Low Convergence to topology change Fast Fast Fast Slow
Comparison of 6LoWPAN Routing
Conclusion
- With the knowledge of the 6LoWPAN header
encapsulation, the new routing header can be added in the 6LoWPAN packet to achieve full routing functionality.
- Existing 6LoWPAN routing protocols such as
LOAD, DYMO-low and HiLow are reviewed.
- There are always some tradeoffs between the