6LoWPAN is IPv6 on top of IEEE802.15.4, the low power local wireless standard. IPv6 is the an IEEE open standard, part of the TCP/IP suite, and is rapidly replacing IPv4 on the internet and local area networks. 6LoWPAN allows low power devices such as sensors and actuators to become part of the global internet and will be one of the key enabling wireless technologies for the IoT (others may include low-energy Bluetooth and LPWAN when it gets sorted out).
IPv6 is not designed for low power devices, assuming enough capability to support complex protocols such as TCP. 6LoWPAN thus acts as a "bridge" between standard IPv6 and what is supported by IEEE802.15.4. Additionally, features are added to allow autoconfiguration and device discovery - there won't be a system administrator busy handing out IP addresses to a million devices!
IPv6 packets may be upto 1280 bytes. IEEE802.15.4 will only support 127 byte packets. 6LoWPAN is responsible for fragmenting IPv6 packets and re-assembling them at the other end. This clearly costs some computation time - and network time if IEE802.15.4 packets are lost and have to be re-transmitted - so smaller IPv6 packets are preferred.
Compression techniques are also heavily used to bring down the size of packets.
IPv6 has a mechanism for auto-configuration of an IP address of an interface. Each interface will have a 48-bit MAC address. This is extended to a 64-bit link-local IPv6 address. In full IPv6, this is then broadcast to the local network to test for duplicates (different vendors may have used the same MAC address). If it is unique, that address is used.
6LoWPAN uses the same method to generate a link-local address. However, broadcast is expensive so is not done.
Routers are responsible for routing within a 6LoWPAN network. Edge routers are responsible for linking a 6LoWPAN network to an IP network.
Edge routers are responsible for broadcasting Router adverts to the 6LoWPAN network. These allow a node to join the network. The edge routers will maintain tables of nodes, so as to, for example, avoid IP address collisions and also to keep track of sleeping nodes.
Setting up a 6LoWPAN network is discussed in e.g 6LoWPAN Neighbour Discovery: a high level overview .
6LoWPAN can use IPSec - if the devices have enough capability. They can also use the secueity mechanisms supplied by IEEE802.15.4
Any of the protocols such as TCP, UDP, SCTP, etc can be used above IEEE802.15.4. And of course, any higher level protocols such as HTTP, SSH, etc can then be used. Many of these are costly. UDP is preferred as it is most lightweight, with additional features such as reliability added as necessary. UDP does not support some higher level protocols such as HTTP though, and a particular replacement for that is CoAP.
6LoWPAN brings low power devices into the IPv6 internet world from low power IEEE802.15.4 wireless. It isn't ideal, using various engineering compromises. Nevertheless, it is a critical step in building an end-to-end open IoT architecture.
Copyright © Jan Newmarch, email@example.com
"The Internet of Things - a techie's viewpoint" by Jan Newmarch is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Based on a work at https://jan.newmarch.name/IoT/.
If you like this book, please donate using PayPal