RPL is the IPv6 routing protocol for low-power and lossy networks, standardized by IETF in 2012 as RFC6550. Specifically, RPL is designed to be a simple and inter-operable networking protocol for resource-constrained devices in industrial, home, and urban environments, intended to support the vision of the Internet of Things with thousands of devices interconnected through multihop mesh networks. More than four-years have passed since the standardization of RPL, and we believe that it is time to examine and understand its current state. In this paper, we review the history of research efforts in RPL; what aspects have been (and have not been) investigated and evaluated, how they have been studied, what was (and was not) implemented, and what remains for future investigation. We reviewed over 97 RPL-related academic research papers published by major academic publishers and present a topic-oriented survey for these research efforts. Our survey shows that only 40.2% of the papers evaluate RPL through experiments using implementations on real embedded devices, ContikiOS and TinyOS are the two most popular implementations (92.3%), and TelosB was the most frequently used hardware platform (69%) on testbeds that have average and median size of 49.4 and 30.5 nodes, respectively. Furthermore, unfortunately, despite it being approximately four years since its initial standardization, we are yet to see wide adoption of RPL as part of real-world systems and applications. We present our observations on the reasons behind this and suggest directions on which RPL should evolve.
Structural health monitoring (SHM) is an active area of research devoted to systems that can autonomously and proactively assess the structural integrity of bridges, buildings, and aerospace vehicles. Recent technological advances promise the eventual ability to cover a large civil structure with low-cost wireless sensors that can continuously monitor a building's structural health, but researchers face several obstacles to reaching this goal, including high data-rate, data-fidelity, and time-synchronization requirements. This article describes two systems the authors recently deployed in real-world structures.
27 June 2016 in IEEE Transactions on Mobile Computing
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, industrial and environmental monitoring, and wireless sensor networks. RPL allows bidirectional end-to-end IPv6 communication on resource constrained LLN devices, leading to the concept of the Internet of Things (IoT) with thousands and millions of devices interconnected through multihop mesh networks. In this article, we investigate the load balancing and congestion problem of RPL. Specifically, we show that most of the packet losses under heavy traffic are due to congestion, and a serious load balancing problem appears in RPL in terms of routing parent selection. To overcome this problem, this article proposes a simple yet effective queue utilization based RPL (QU-RPL) that achieves load balancing and significantly improves the end-to-end packet delivery performance compared to the standard RPL. QU-RPL is designed for each node to select its parent node considering the queue utilization of its neighbor nodes as well as their hop distances to an LLN border router (LBR). Owing to its load balancing capability, QURPL is very effective in lowering queue losses and increasing the packet delivery ratio. We implement QU-RPL on a low-power embedded platform, and verify all of our findings through experimental measurements on a real testbed of a multihop LLN over IEEE 802.15.4. We present the impact of each design element of QU-RPL on performance in detail, and also show that QU-RPL reduces the queue loss by up to 84 percent and improves the packet delivery ratio by up to 147 percent compared to the standard RPL.
Many applications are enabled by the ability to capture videos on a smartphone and to have these videos uploaded to an Internet-connected server. This capability requires the transfer of large volumes of data from the phone to the infrastructure. Smartphones have multiple wireless interfaces -- 3G/EDGE and WiFi -- for data transfer, but there is considerable variability in the availability and achievable data transfer rate for these networks. Moreover, the energy costs for transmitting a given amount of data on these wireless interfaces can differ by an order of magnitude. On the other hand, many of these applications are often naturally delay-tolerant, so that it is possible to delay data transfers until a lower-energy WiFi connection becomes available. In this paper, we present a principled approach for designing an optimal online algorithm for this energy-delay tradeoff using the Lyapunov optimization framework. Our algorithm, called SALSA, can automatically adapt to channel conditions and requires only local information to decide whether and when to defer a transmission. We evaluate SALSA using real-world traces as well as experiments using a prototype implementation on a modern smartphone. Our results show that SALSA can be tuned to achieve a broad spectrum of energy-delay tradeoffs, is closer to an empirically-determined optimal than any of the alternatives we compare it to, and, can save 10-40% of battery capacity for some workloads.