# A Green Routing Protocol with Wireless Power Transfer for Internet of Things
## 1 Introduction  
Billions of \"smart\" objects are going to be connected to each other and in Internet according to the Internet of Things (IoT) paradigm. Emerging applications for smart city, smart building, industrial context, etc., increase the demand of IP-based networks to allow full interaction among heterogeneous devices with different features. Due to the constrained resources of IoT devices and the lossy links of IoT networks, new definitions of protocols suitable for Low-Power and Lossy Networks (LLNs) are needed, such as (i) IPv6 for Low-Power Wireless Personal Area Networks (6 LoWPAN) [1], which allows to send IPv6 frames over IEEE 802.15.4 networks through a header compression mechanism proposed by the Internet Engineering Task Force (IETF) 6 LoWPAN Working Group, and (ii) the IPv6 Routing Protocol for Low-Power and Lossy Networks (RPL) [2], issued by the Internet Engineering Task Force (IETF) Routing over Low-Power and Lossy Networks (RoLL) Working Group. RPL is an adaptive distance-vector routing protocol suitable for the requirements of different applications as it uses one or more Objective Function (OF) to find the best route from the leaf nodes to the destination (named sink node or root node, or gateway or border router). The routing topology created is a Destination Oriented Directed Acyclic Graph (DODAG) which is a logical topology formed over a physical network according to different metrics and constraints. Default routing metrics for RPL are objective function zero (OF0) and the Minimum Rank with the Hysteresis Objective Function (MRHOF) based on the expected transmission count (ETX) [3, 4]. As new OFs can be designed, RPL can be adapted to a large variety of applications for different LLN networks by defining the most suitable OF. Indeed, recent studies focus on different OFs and hybrid metrics aimed at evaluating the performance of RPL based on packet loss rate, energy consumption and latency [5, 6, 7, 8, 9]. These OFs do not consider the node level congestion and can create unbalanced load and inefficient energy distribution in the network, especially for heterogeneous traffic load [10]. Saving power, together ensuring acceptable service quality, is an important challenge since in wireless sensor networks (WSN), sensors nodes are powered by limited time batteries and are usually distributed and not replaced in the case where they are energy depleted due to high costs. Therefore, energy-based OFs for RPL have been proposed in the literature to preserve the sensor nodes energy and prolong the network lifetime [7, 8, 11]. Energy harvesting (EH) overcomes the major drawback of battery, i.e., the reduction of stored energy due to the sensing, data processing, and communications. Compared to battery-operated nodes, energy harvesting can achieve almost unlimited lifetime, but at the same time, it raises the issue of operating a sensor node with intermittent energy supply and a limited capability of energy storing. Several solutions adopt the use of energy harvested from the photovoltaic cell which imposes in some cases very low duty cycles as shown in ref. [12]. Recently, Wireless Power Transfer (WPT) offers a promising solution for facilitating efficient and sustainable communication networks serving energy-limited communication devices. The existing WPT technologies can be categorized as: inductive coupling, magnetic resonant coupling, and RF-based WPT. RF-based energy-harvesting technology enables the possibility of simultaneous wireless information and power transfer (SWIPT), wireless-powered communication (WPC), and wireless-powered backscatter communication (WPBC) [13, 14]. The SWIPT mechanism captures RF radiation from the environment and supports the harvesting of energy and decodes information from the same RF signal received in parallel by means of an energy and information division mechanism. In the literature, two practical approaches are proposed, namely \"time switching\" (TS) and \"power splitting\" (PS).