## 4 M2M Communication
### Low Power and Lossy Networks  
A Low Power and Lossy Network (LLN) is a network between constrained embedded devices, in which the communication links may change frequently, or even disappear. In order to face the challenges in those networks, the IETF has set working groups to elaborate standards which guarantee that such an infrastructure is scalable, secure and reliable in terms of communications between each device. One of the most important aspects of these standardization activities is the use of the IP layer as the reference layer. Using this reference, new protocols have been developed for routing, transport, and applications in LLNs. IPv6 brings some outstanding benefits such as an addressing scheme which \begin{table}
\begin{tabular}{l l l l l} \hline \hline  & & Wired & Radio & Full IP \\ \hline Cellular & 3 GPP & No & Yes & Yes \\ \hline Bluetooth & Bluetooth Special & No & Yes & No \\  & Interest Group & & & \\ \hline Bluetooth LE & Bluetooth Special & No & Yes & No \\  & Interest Group & & & \\ \hline Ant/Ant\(+\) & & & & \\ \hline ZigBee & ZigBee Alliance (and IEEE) & No & Yes & No \\ \hline ZigBee IP & ZigBee Alliance & & & \\  & (and IEEE and IETF) & No & Yes & Yes \\ \hline
6 LowPan & IETF & No & Yes & Yes \\ \hline Z-Wave & Z-Wave alliance & No & Yes & No \\ \hline WiFi low power & IEEE & No & Yes & Yes \\ \hline Modbus & Modicon (society) & Yes & No & No \\ \hline BacNet & ASHRAE & Yes & No & No \\ \hline LonWorks & ANSI & Yes & No & No \\ \hline KNX & ISO/IEC & Yes & Yes & No \\ \hline \hline \end{tabular}
\end{table} 
Table 3: _Cont._allows identifying billions of devices and supporting point-to-point communications between a device and a PC connected to Internet. However, the IPv6 protocol is inadequate for LLNs in terms of network overhead. As a result, the IETF 6 LowPAN WG [109] proposes adaptations of the IPv6 protocol when the underlying network is constrained. For example, standards have been proposed for the transmission of compressed IPv6 packets over IEEE 802.15.4 networks [110]. IPv6 and 6 LowPAN network stacks are natively available on common operating systems for embedded devices (e.g., Contiki and TinyOS), therefore making them able to communicate with both Internet and LLNs devices. Another aspect or LLNs is the strong constraints on routing protocols, which must be different from those used in traditional IP networks. First of all, link conditions may change frequently during time; therefore a routing protocol must react quickly to these changes. Second, the nodes have really strong storage constraints; therefore, a routing protocol should work even if a node has not stored all the routes to each of the other nodes in the network. Third, since the nodes have severe energy constraints, the exchange of control messages should be kept as low as possible. One solution to the above-mentioned LLNs limitations is provided by the RPL routing protocol. It has been developed to have really limited control traffic, to fit harsh and constrained environments, with limited data rate and potentially elevated error rate. RPL is a distance-vector protocol based on the creation of a routing tree, referred to as Destination Oriented Acyclic Directed Graph (DODAG), where the cost of each path is evaluated according to the metrics defined in an objective function. The goal of this protocol is the creation of a collection tree protocol, as well as a point-to-multipoint network from the root of the network to the devices inside the LLN. In order to keep the status of the network updated, the root of the RPL tree sends periodical messages, referred to as DODAG Information Object (DIO). The receiving nodes may relay this message or just consume it, if configured as leaves of the tree. The RPL protocol also introduces a _trickle_ mechanism which allows reducing the transmission frequency of DIO messages according to the stability of the network. In addition, RPL offers several advanced functionalities, the detection of loops in the routes, and the management of local faults (via local or global repair).