A Survey of Limitations and Enhancements of the IPv6 Routing Protocol for Low-power and Lossy Networks: A Focus on Core Operations <s> 3) Downward Routes Enhancements Common Challenges <s> In this work we point out the issue of the IETF RPL routing protocol's two different downwards routing schemes not being able to interoperate with each other. This problem is less of an issue when low-power and lossy networks (LLNs) are deployed homogeneously but with the industrial kickoff and large scale deployments, the interoperability of heterogeneous, standards-compliant implementations will become a significant issue. To address this, we suggest two major changes to IETF RPL (RFC 6550). First we suggest that all storing mode nodes should hold the capability to understand and attach source routing headers that the non-storing mode nodes require to forward packets. Next, we suggest that RPL's non-storing mode nodes should send their destination advertisement messages hop-by-hop, rather than the current end-to-end approach. We show, with two different IPv6 implementations in TinyOS and NanoQplus, that our suggestions high achieve high interoperability performance among different implementations for downwards traffic patterns. <s> BIB001 </s> A Survey of Limitations and Enhancements of the IPv6 Routing Protocol for Low-power and Lossy Networks: A Focus on Core Operations <s> 3) Downward Routes Enhancements Common Challenges <s> RPL, the IPv6 Routing Protocol for Low-Power and Lossy Networks, supports both upward and downward traffic. The latter is fundamental for actuation, for queries, and for any bidirectional protocol such as TCP, yet its support is compromised by memory limitation in the nodes. In RPL storing mode, nodes store routing entries for each destination in their sub-graph, limiting the size of the network, and often leading to unreachable nodes and protocol failures. We propose here D-RPL, a mechanism that overcomes the scalability limitation by mending storing mode forwarding with multicast-based dissemination. Our modification has minimal impact on code size and memory usage. D-RPL is activated only when memory limits are reached, and affects only the portion of the traffic and the segments of the network that have exceeded memory limits. We evaluate our solution using Cooja emulation over different synthetic topologies, showing a six-fold improvement in scalability. <s> BIB002 </s> A Survey of Limitations and Enhancements of the IPv6 Routing Protocol for Low-power and Lossy Networks: A Focus on Core Operations <s> 3) Downward Routes Enhancements Common Challenges <s> The devices composing Wireless Sensor Networks (WSN) are very limited in terms of memory, processing power and battery. RPL has emerged as the de facto routing standard in low-power and lossy networks. While most of the proposals focus on minimizing the global energy consumption, we aim here at designing an energy-balancing routing protocol: each node should efficiently consume the same quantity of energy to improve the network lifetime. To this end, we exploit an Expected Lifetime metric, denoting the residual time of the nodes (time until the node will run out of energy). We propose mechanisms to detect the energy-bottleneck nodes and to spread the traffic load uniformly among them. While RPL constructs a Destination-Oriented Directed Acyclic Graph (DODAG) structure, it only implements single path. We propose here to exploit its natural multipath structure. This multipath approach helps reducing the number of DODAG reconstructions that leads to instabilities and convergence problems. Simulations highlight we improve both the routing reliability and the network lifetime. <s> BIB003 </s> A Survey of Limitations and Enhancements of the IPv6 Routing Protocol for Low-power and Lossy Networks: A Focus on Core Operations <s> 3) Downward Routes Enhancements Common Challenges <s> Routing protocol for low-power and lossy networks (RPL) is the standard IPv6 based routing protocol for low power, lossy Networks (LLNs) proposed by IETF. It is proposed for networks with characteristics like small packet size, lossy links, low bandwidth, low data rate and low power resources. RPL is a single path routing protocol and the existing objective functions do not support creation of multiple routing paths between source and destination. Multipath routing can be used to achieve multifold objectives, including higher reliability, increased throughput, fault tolerance, congestion mitigation and hole avoidance. In this paper, M-RPL a multi-path extension of RPL is proposed that aims to provide temporary multipath routing during congestion over a path. Congestion is primarily detected by a forwarding node by monitoring packet delivery ratio and is mitigated by providing partially disjoint multipath routing. Detailed simulation analysis of M-RPL against RPL shows that using multi-path RPL reduces congestion and increases the overall throughput. Hence M-RPL is suitable for supporting high data rates as compared to single path RPL. <s> BIB004 </s> A Survey of Limitations and Enhancements of the IPv6 Routing Protocol for Low-power and Lossy Networks: A Focus on Core Operations <s> 3) Downward Routes Enhancements Common Challenges <s> RPL is an IPv6 routing protocol for low-power and lossy networks (LLNs) designed to meet the requirements of a wide range of LLN applications including smart grid AMIs, home and building automation, industrial and environmental monitoring, health care, wireless sensor networks, and the Internet of Things (IoT) in general with thousands and millions of nodes interconnected through multihop mesh networks. RPL constructs tree-like routing topology rooted at an LLN border router (LBR) and supports bidirectional IPv6 communication to and from the mesh devices by providing both upward and downward routing over the routing tree. In this article, we focus on the interoperability of downward routing and supporting its two modes of operations (MOPs) defined in the RPL standard (RFC 6550). Specifically, we show that there exists a serious connectivity problem in RPL protocol when two MOPs are mixed within a single network, even for standard-compliant implementations, which may result in network partitions. To address this problem, this article proposes DualMOP-RPL, an enhanced version of RPL, which supports nodes with different MOPs for downward routing to communicate gracefully in a single RPL network while preserving the high bidirectional data delivery performance. DualMOP-RPL allows multiple overlapping RPL networks in the same geographical regions to cooperate as a single densely connected network even if those networks are using different MOPs. This will not only improve the link qualities and routing performances of the networks but also allow for network migrations and alternate routing in the case of LBR failures. We evaluate DualMOP-RPL through extensive simulations and testbed experiments and show that our proposal eliminates all the problems we have identified. <s> BIB005
The development of efficient downward routing schemes for RPL faces two primary challenges: firstly, memory limitations constrain the number of entries that can be stored in a node's routing table; secondly, packet size is limited by the underlying communication technology. The first restricts the number of nodes that can be accessed by the root (table-driven) while the second limits the number of hops that can be inserted into the IP packet header (source routing) BIB001 [114] BIB002 . This is exacerbated by the fact that RPL is a single-path routing protocol which prevents nodes from benefiting from the combined capabilities of multiple parents BIB003 BIB004 . Although BIB005 propose combining the tabledriven approach (storing mode) and the source routing approach (non-storing mode), both are subject to the storage and hop constraints. As discussed above, the use of multicasting proposed in BIB002 may only be beneficial in limited cases. In other cases, using multicast will be just counterproductive, as it will harm the normal traffic efficiency of those un-overflowed nodes.