IoT(Internet Of Things)





WPAN - 6LoWPAN    


What is 6LoWPAN ? You may find various definition from various source. With whatever question it is, everybody wants to have short one line/one sentence answer. What is the one sentence definition for 6LoPAN ? I like the definition from 6LoPAN Seminar (Reference [1]). It was stated as '6LoPAN is an IPv6 technology designed for Low Power Wireless Communications'.

Whenever you have one line definition, your next question would almost always be 'what does it mean ? what does it practically mean ?'. Then you have to go through the whole book to figure it out. It means you need to read a lot of other writings or watch a lot of videos. I will be trying to write this page as a kind of cheatsheets or big dots for this subject to help you with connecting the dots when you read/watch further details.


Based on IETF RFC 4944 : Transmission of IPv6 Packets over IEEE 802.15.4 Networks. The title of the document would tell you a good big picture.


As you may know, 802.15.4 is mostly about MAC layer protocol based on a small MAC frame (127 Bytes). The RFC 4944 is mostly about how to form the large IPv6 packets into small 802.15.4 MAC frame. Main issue of this topic is to form IPv6 link-local address into autoconfigured 802.15.4 address. This involves a special header compression process.



6LoWPAN and Other Technologies


Like any other technolgies, I also started reading a lot of documents and watching a lot of videos about IoT at the beginning. However the more I read/watch, the more I get confused. There are a lot of technologies with different names.. but all of them sounds like same thing. It would be because all those technologies has its own unique feature but at the same time they have some commonalities. So when they are talking about their own unique feature, it would sound like they are all different. but when they are talking on commonalities they all sound like same thing.. and you may talk to yourself "Are all these same thing ? or different ?"

As I was struggling with this confusion, I got following single diagram from reference [1], [2]. This single diagram cleared a lot of my confusion (it worked great at least for me).

As you see here, 6LoWPAN is the core part of the IoT protocol stack and 6 LoWPAN is based on IPv6 in terms of structure and basic Neighbor Discovery and on ROLL in terms of routing protocol. IEEE 802.15.4 is under the umbrella of 6LoWPAN. You may say "6LoWPAN is IP and routing protocol (Network Layer Protocol) and 802.15.4 is more for MAC / PHY protocol. In case of ZigBee, it is on top of 802.15.4 MAC layer, but it is based on its own PHY layer which is a little bit different from 802.15.4 PHY. The most unique feature of ZigBee would be its network layer protocol. It used its own Network layer protocol, but now they introduced ZigBee IP which is similar to 6LoWPAN.





6LoWPAN in Full Stack Architecture


If you compare the most common IoT full stack architecture with ordinary network prtocol stack, you may understand the difference between the ordinary IP stack and IoT stack and understand the relationship between 6LoWPAN and 802.15.4 more clearly. Just look into the following diagram and I think this diagram would explain almost everything at high level. Also, it would tell you what you need to study if you want to get into IoT technology.



Following diagram would show you the relationship between 802.15.4 and 6LoWPAN more clearly. In this diagram, MAC/PHY is based on 802.15.4 and Upper Layer is based on 6LoWPAN.




6LoWPAN Packet Structure


Like most other Network Layer protocol, the most important part of 6LoWPAN study is to understand its packet structure. There are so many different types of packet structure being used in various situations. It may not be possible to show you all the different packet structure and its operating mechanism in this single post. You would need to the related specification to figure out all the details. In this page, I will try to illustrate the big picture of the packet structure and interrelationships among different packets.


The first big picture that I want to show you is following diagram. In this picture, you may instantly figure out followings

  • There is Physical Layer frame at the bottom (This is 802.15.4 PHY frame and the details of this frame varies as well depending on the implementation)
  • The Payload part of 802.15.4 PHY frame is 802.15.4 MAC frame.
  • The Payload part of the MAC frame is 6LoWPAN packet.
  • There are several categories of 6LoWPAN packet is determined by the first two bits of the packet as illustrated below.
  • Depending on the categories specified by the first 2 bits of 6LoWPAN and the following 6 bits (called as Dispatch field) the details of the remaining structure varies.



< Dispatch Type and Header >



< Mesh Addressing Type and Header >



< Fragmentation Type and Header >




Reference :


[1] 6LoWPAN Seminar

[2] 6LoWPAN - The Wireless Embedded Internet by Zach Shelby, Carsten Bormann

[3] Embedded Internet and the Internet of Things WS 12/13