The Internet is composed of many networks, a number of which are typically traversed by a packet on its way from source to destination. Thus, for each type of link layer technology which the network is based on, there needs to be an “IP-over-X” specification that defines how to transport IP packets. In many cases, to map the services required by the IP layer onto the services provided by the lower layer (i.e, the link layer), the “IP-over-X” specification can amount to a (sub)layer of its own, often called adaptation layer.
In the process of shaping the IoT world, in 2007 the IETF IPv6 over Low power WPAN (6LoWPAN) working group started to work on specifications for transmitting IPv6 over IEEE 802.15.4 networks. Typically, Low power WPANs are characterized by: small packet sizes 1 , support for addresses with different lengths, low bandwidth, star and mesh topologies, battery supplied devices, low cost, large number of devices, unknown node positions, high unreliability, and long idle periods during which communications interfaces are turned off to save energy.
Given the aforementioned features, it is clear that the adoption of IPv6 on top of a Low power WPAN is not straightforward, but poses strong requirements for optimization of this adaptation layer. For instance, due to the IPv6 default minimum MTU size of 1280 bytes, a no-fragmented IPv6 packet would be too large to fit in an IEEE 802.15.4 frame; moreover, the overhead due to the 40 bytes long IPv6 header would waste the scarce bandwidth available at the PHY layer.
For these reasons, the 6LoWPAN working group has devoted huge efforts for defining an effective adaptation layer called 6LowPAN. Further issues encompass the auto-configuration of IPv6 addresses, the compliance with the recommendation on supporting link-layer subnet broadcast in shared networks, the eduction of routing and management overhead, the adoption of lightweight application protocols (or novel data encoding techniques) and the support for security mechanisms (i.e., confidentiality and integrity protection, device bootstrapping, key establishment and management).
Referenced by OpenMote