## 4 The IEEE 802.15.5 WPAN Mesh Standard
This entails a clear advantage over other technologies, for instance, 6 LoWPAN, which requires header compression and greater memory space to allocate IPv6 addresses in the routing tables; or Zigbee Pro, whose address assignment scheme may cause conflicts due to duplicate addresses. After the address assignment process, IEEE 802.15.5 activates the generation phase of local links (dotted lines in Figure 3(b)). Note that at this point, the routing tables of every network node only contain information (block address, tree level, hop distance to the device, and relationship between devices: parent, child and neighbor) referred to its up-parent and children (if any) associated to it. Under these circumstances, data transmission can only occur along the tree branches. For this reason, the third mandatory function is aimed at guaranteeing mesh connectivity and link reliability, that is, to enable the communication among devices in coverage range (neighbors) whose relationship is different from parent-child links. To achieve this goal, every node broadcasts a message containing the information stored in its routing table. This message is received by all the nodes in coverage range, which, on the one hand, update their own routing tables and, on the other hand, broadcast a new message with the new updated information. The key design issue of these broadcast transmissions is to fill out the routing tables of all network nodes with information about those placed at a distance of \(k\) hops (\(k\geq 2\)). This approach has two main advantages. Firstly, every device can select any other in its coverage area to transmit data (unicast data transmission -fourth function-, Figure 3(b)), thus sharply increasing the network connectivity in comparison to the plain tree-based topology. To this aim, Figure 3(b) compares tree routing (orange arrow) and mesh routing (green arrow). In this Figure, we can observe that a message transmitted from device 6 (L) to device 13 (D) needs five hops employing tree routing (only one possible path). However, using mesh configuration, it only requires, on average, four hops as well as to enable different alternative paths to connect source-destination. This later feature increases the probability to deliver information even when one or several intermediate nodes die or are overloaded. In this case, the previous node that forwarded data to a dead node, checks its routing table and selects another intermediate node enabling a new path towards the destination. Secondly, unlike traditional reactive routing protocols such as AODV where continuous route discovery processes must be executed, in IEEE 802.15.5 this requirement is eliminated. Instead, nodes dispatch data taking into account the information stored in their routing tables, thus reducing overhead and saving energy. Finally, in order to further improve robustness and link reliability, nodes are able to detect possible link failures. To this end, a node can follow two ways: (i) the node exchanges again local information with its neighbors to update the routing tables or (ii) the node transmits _probe messages_ (a very short control message) to test the connectivity with a specific neighbor. In the latter case, when a node detects that the communication with this neighbor fails, then, the node checks it several times by transmitting _probe messages_. If no response is obtained (ack), the node removes the neighbor under consideration from its routing table, and reports the new status to the rest of nodes in coverage range. In addition to the four mandatory functions described, one of the main contributions of the IEEE 802.15.5 standard is that it provides other significant functionalities, called _non-mandatory_ or _enhanced functions_[2]. They are addressed to applications that need specific requirements, such as long-term operation, node mobility, or reliable data transmission, without increasing the implementation complexity in the devices.