Long-Lived LoRa: Prolonging the Lifetime of a LoRa Network
Sezana Fahmida, Venkata P Modekurthy, Mahbubur Rahman, Abusayeed Saifullah, Marco Brocanelli
aa r X i v : . [ c s . N I] A ug Long-Lived LoRa: Prolonging the Lifetime of aLoRa Network
Sezana Fahmida †§ , Venkata P Modekurthy †§ , Mahbubur Rahman ‡ , Abusayeed Saifullah § , Marco Brocanelli §§ Wayne State University and ‡ CUNY Queens College
Abstract —Prolonging the network lifetime is a major con-sideration in many Internet of Things applications. In thispaper, we study maximizing the network lifetime of an energy-harvesting LoRa network. Such a network is characterized byheterogeneous recharging capabilities across the nodes that isnot taken into account in existing work. We propose a link-layer protocol to achieve a long-lived LoRa network whichdynamically enables the nodes with depleting batteries to exploitthe superfluous energy of the neighboring nodes with affluentbatteries by letting a depleting node offload its packets to anaffluent node. By exploiting the LoRa’s capability of adjustingmultiple transmission parameters, we enable low-cost offloadingby depleting nodes instead of high-cost direct forwarding. Suchoffloading requires synchronization of wake-up times as well astransmission parameters between the two nodes which also needto be selected dynamically. The proposed protocol addresses thesechallenges and prolongs the lifetime of a LoRa network throughthree novel techniques. (1) We propose a lightweight mediumaccess control protocol for peer-to-peer communication to enablepacket offloading which circumvents the synchronization over-head between the two nodes. (2) We propose an intuitive heuristicmethod for effective parameter selections for different modes(conventional vs. offloading). (3) We analyze the energy overheadof offloading and, based on it, the protocol dynamically selectsaffluent and depleting nodes while ensuring that an affluent nodeis not overwhelmed by the depleting ones. Simulations in NS-3as well as real experiments show that our protocol can increasethe network lifetime up to times while maintaining the samethroughput compared to traditional LoRa network. I. I
NTRODUCTION
LoRa (Long Range) is a leading low-power wide-areanetwork (LPWAN) technology that enables low-power (mil-liwatts) wireless devices to transmit at low data rates (kbps)over long distances (kms) using narrowband (kHz) [1]. It canbe deployed for direct communication between numerous enddevices (also called sensor nodes) and a gateway in manywide-area Internet of Things (IoT) applications includingsmart agriculture [2], smart city [3], and environmental mon-itoring [4]. While these end devices are usually powered bytraditional single-use batteries, energy-harvesting technologiesthat exploit the light [5], the vibrations [6], and/or the heat[7] of the environment have emerged as an efficient alter-native (e.g., in smart agriculture, environmental monitoring)for providing sustainable energy. The carbon footprint ofsuch energy-harvesting technologies is many times lower thanthe other energy sources including single-use batteries [8], † Co-first-author [9]. However, relying on energy-harvesting for recharging thesensor nodes can lead to heterogeneous state of charge forthe batteries in the network. Thus, it is crucial to regulatethe energy consumption of the nodes dynamically to ensuremaximum network availability.Prolonging the network lifetime is a major considerationin most IoT applications. We consider network lifetime asthe interval starting at any given point in time until the firstnode depletes its battery. In many IoT applications the lifetimedirectly implies the availability of the services as failure tocollect sensor data from even one node may lead to unmetapplication requirements. In this paper, we propose the firstmethod to maximize the network lifetime in a generic setupof an energy-harvesting LoRa network [10], [11].Recently there has been some research focusing on adoptinga general energy minimization strategy for all nodes to ensurethe energy-efficiency of LoRa networks [12], [13]. However,following the same energy minimization strategy for all nodesmay not always be beneficial for prolonging the lifetime ina network where nodes may have heterogeneous rechargingcapabilities. Insufficient energy generation in a recharge cyclemay lead to an unexpected depletion of a node’s batteryeven with the most energy-efficient transmission parameterallocation. Hence, in order to maximize the network lifetimeit is required to have an approach that prevents such depletion.For example, a depleting node that has not harvested enoughenergy can drain its battery rapidly if proper action is nottaken. However, there may be affluent nodes in the networkthat have superfluous residual energy in their batteries thatwill remain unused in the current recharge cycle. We pro-pose a link-layer protocol to maximize the network lifetimeby dynamically enabling the depleting nodes to exploit thesuperfluous energy of the neighboring affluent nodes.In our approach, the superfluous energy of an affluent nodeis exploited by letting a depleting node offload its workload tothe former. Namely, if the two nodes are within communica-tion range of each other, a depleting node offloads its packetswhen needed to an affluent node which then transmits thoseto the gateway. In a LoRa network, transmission to a close-bynode can be made at much less energy by adjusting multipletransmission parameters compared to directly forwarding tothe gateway. We exploit this feature of the LoRa technologyand enable low-cost (in energy) offloading by depleting nodesinstead of high-cost direct forwarding. Note that, in thisstrategy, the overall energy consumption at the affluent nodeand, possibly, the total energy needed for delivering a packet o the gateway may be higher than that needed for directforwarding from the depleting node. However, as counter-intuitive as it may seem, it is very effective in maximizing thelifetime of the network because it prevents the depleting nodefrom rapidly consuming its battery. This idea forms the centralthesis of this paper to achieve a long-lived LoRa network.Enabling packet offloading between nodes in a LoRa net-work raises three main challenges. First, the energy-efficientoffloading of packets requires synchronization of wake-uptimes between the nodes, which typically introduces additionalenergy overheads. Second, a successful offloading requires thatthe nodes be operating on the same transmission parameters.Thus, we need to decide energy-efficient transmission parame-ters to enable offloading. Third, we need to dynamically selectdepleting and affluent nodes without overwhelming the latter,while also preventing the rapid battery depletion of the former.We address the above challenges by developing the pro-posed link-layer protocol which enables a long-lived LoRanetwork. It prolongs the lifetime of a LoRa network throughthree novel techniques. (1) We propose a lightweight MediumAccess Control (MAC) protocol for peer-to-peer communi-cation to enable packet offloading which circumvents thesynchronization overhead between the two nodes, therebyensuring low power consumption and reliable packet deliveryduring offloading. (2) We propose an intuitive heuristic methodfor parameter selections for different modes (conventionalvs. offloading) to ensure that only the required energy forsuccessful transmission is spent in each mode. (3) We analyzethe energy overhead for an affluent node when a packet is of-floaded to it. Based on this analysis, the protocol dynamicallyselects affluent and depleting nodes during network operationas well as the duration in such modes so that an affluent nodeis not overwhelmed by the depleting ones. We have evaluatedthe proposed protocol through extensive simulations in NS-3and physical experiments. The results show that it can increasethe network lifetime up to times while maintaining the samethroughput compared to traditional LoRa network.In the rest of the paper, Section II describes backgroundand model. Section III describes related work. Section IV de-scribes the protocol to prolong the network lifetime. Section Vprovides the evaluation results. Section VI concludes the paper.II. B ACKGROUND AND S YSTEM M ODEL
A. An Overview of LoRa and LoRaWAN
LoRa is a physical layer technology for LPWAN with acommunication range of 3-10 miles [1] (depending on theenvironment). Modulation in LoRa is derived from the chirpspread spectrum (CSS). In CSS, one bit of information orchirp is a signal continuously varying in frequency, oftenrepresented as multiple chips. Spreading the frequency of thesignal enables the successful reception of a packet at longranges and low/negative signal-to-noise ratios. The amount offrequency spreading applied to the signal in a chirp is calledthe spreading factor of transmission. LoRa adopts seven or-thogonal spreading factors in the range [6 , for simultaneousreception on the same channel. Each spreading factor is a binary log-scale representation of the number of chips presentin one symbol, i.e., spreading factor represents chips arepresent in one symbol. In CSS, apart from spreading factors,nodes can be configured to use different bandwidth settings,channel, coding rates, transmission powers.In North America, LoRa supports sixty-four channels witha maximum bandwidth of kHz and eight channels witha maximum bandwidth of kHz for uplink communicationbetween a node and a gateway. Additionally, it supports eightdownlink channels with a maximum bandwidth of kHz. Apacket in LoRa communication supports four levels of forwarderror detection and correction mechanisms called codingrate.Coding rate ranges from to . Lower coding rates enablebetter error detection and correction mechanism; however, theyincrease the packet size and energy consumption. E nd D e v i ce s Gateway Network ServerJoin Server Application Dashboard Application Server S ec u r e I P L o R a R F Fig. 1. LoRa Network Architecture
LoRaWAN (LoRaWide Area Network)is a MAC protocol forLoRa. LoRaWAN ischaracterized by smallpacket size, low bit rate,and low communicationpower. As Figure 1 shows,the LoRaWAN networkconsists of nodes/end-devices, gateway, network server, application server, anda join server. A gateway acts as a relay between wirelesscommunication (with the nodes) and wired communication(with the network server). The network server manages thenetwork parameters, security, and application requirements.The application server interprets sensor and application datafrom the sensors. Nodes in the network initiate a join requestupon deployment, which is handled by the joinserver.LoRaWAN supports three classes of operation. For theuplink communication, LoRaWAN adopts pure ALOHA fortransmission in all three classes, where a node transmitswhenever it has a packet. In class A, every transmissionprecedes two receive time windows for successfully receivingan acknowledgment (ACK). In class B, the gateway periodi-cally transmits a beacon for time synchronization. Betweentwo beacons, a node periodically wakes up to receive anypackets sent by the gateway. In classC, nodes are continuouslylistening to a packet transmission from the gateway.
B. System Model
The nodes in the network are powered by batteries rechargedthrough energy harvesting devices (e.g., solar panels). Thenodes collect and transmit sensor information to the gateway.They typically use class A mode for transmitting their packetsto the gateway and sleep for the rest of the time to conserveenergy. We denote the transmission parameters such as spread-ing factor, channel, coding rate, and bandwidth of a node v by SF v , C v , CR v , and BW v , respectively.The line-powered gateways listen for packets, acknowledgethem, and forward them to the network server and applicationserver. In addition to providing security, the network server2tores the location and current battery level of each networknode. Because node localization is out of scope for thispaper, we assume it is performed at network deployment timethrough manual configuration or some existing localizationtechniques for low-power networks [14]. The battery level ofeach network node is embedded in the existing uplink packetto the network server for timely state of charge updates.Typically, the nodes periodically sense the state of thesystem. However, in some cases, the sensed informationmay not change over time; hence, some nodes may locallydetermine if the sensed data needs reporting, which leads toaperiodic transmissions with a known minimum inter-arrivaltime between packets. When a node does not have any packetsto transmit for long intervals, it communicates a heartbeatmessage with the gateway to maintain connectivity. The periodof the heartbeat message is set by the network manager. Transmission Energy Model.
The energy consumed forpacket transmissions from a node v can be modeled as follows: E tx ( v ) = P tx ( P L v ) × N symbols ( v ) × T symbol ( v ) (1)where P tx ( P L v ) represents the power consumed by the LoRachip to transmit a packet at power level P L v , T symbol ( v ) represents the time required to transmit one symbol withspreading factor SF v and bandwidth BW v , and N symbols ( v ) denotes the number of symbols in a packet. The number ofsymbols in a packet from v including a header and cyclicredundancy check (CRC) code is modeled as follows: N symbols ( v ) = preamble v + 4 .
25 + 8+max (cid:18)(cid:24) payload v − SF v + 24 SF v − DE v (cid:25) CR v , (cid:19) where preamble v represents the length of the preamble and payload v represents the length of the payload. Equation (2)models T symbol ( v ) and Equation (3) describes the low data rateoptimization mode DE v : T symbol ( v ) = 2 SF v BW v (2) DE v = ( , if low data rate optimization is enabled , otherwise (3)During a receive window of length T rx ( v ) seconds, node v consumes energy as follows: E rx ( v ) = P rx ( DE v ) × T rx ( v ) (4)where P rx ( DE v ) is the power consumed by the LoRa chip. Recharge Energy Model.
Each network node is equippedwith an independent green energy source that recharges thenode’s local battery. Typically, the instantaneous power gen-erated by any green source varies over time but repeats overa fixed time interval of length ζ called a recharge cycle. Arecent study has shown that the average power generated forone hour interval by a solar panel repeats every 24 hours [15].Thus, the network server can estimate the energy generated atnode v during a recharge cycle as the integral of the estimatedinstantaneous power ( P recharge ( v ) ) over the recharge cycle, asshown in Equation (5). B ∗ v = Z ζ P recharge ( v ) dt (5)When the network is deployed, the batteries are usually fullycharged. Typically, the energy harvesting system is conserva-tively designed to be sized (1) proportionally to the batterysize of each node, i.e., the energy stored in a fully-chargedbattery is no less than B ∗ v , and (2) so that the average energyconsumed during a recharge cycle is no greater than theaverage recharged energy during the same period. Thus, wedefine batterybudget of a node v during ζ time units as B ∗ v ,an estimation of the energy generated during that interval.The network server synchronizes the start and end of therecharge cycle to ensure all nodes reset the battery budgetat the same time and perpetuate network communication.In this conservative scenario, within an interval of length ζ , neighboring nodes can have different battery budgets dueto environmental effects such as shadows that impact theenergy generation. Similarly, nodes can have different energyconsumption due to the heterogeneity of hardware and/orcommunication patterns. Network Lifetime.
We calculate the network lifetime as thetime interval from the start of the recharge cycle until the firstnode consumes its battery budget. Although there are otherdefinitions of network lifetime, we choose this definition ofnetwork lifetime as it hampers the data collection from at leastone node in the present or the future intervals. Given the aboveconsiderations, we regulate the nodes’ energy consumption ineach interval according to the estimated B ∗ v energy rechargedwithin each interval ζ . This strategy ensures (1) there is nodowntime in the current interval and (2) the batteries’ energylevel at the end of the current interval is higher than a certainlevel necessary to ensure continuous operations for the next.III. R ELATED W ORK
Due to their ability to overcome the coverage and scalabilitylimitations in traditional short-range wireless sensor network[16], LPWANs have received considerable attention recently[17]–[23]. While many LPWANs have been designed (e.g,LoRa [1], SigFox [24], IQRF [25], RPMA [26], DASH7 [27],Telensa [28], NB-IoT [29], SNOW [30], [31], and LTE CatM1 [32], [33]), LoRa has gained popularity due to its wideavailability. It has been the focus of much research in bothacademia and industry [34]. A comprehensive review of theseworks can be found in [35]. Most of these existing works havefocused on enhancing throughput [36], [37], latency [38], [39],reliability [21], [40]–[43], or scalability and coverage [22],[44]–[47] of a LoRa network.Energy efficiency of a LoRa network was studied in [12]using additional hardware and in [13], [48] by minimizingenergy consumption at all nodes through transmission param-eters selection [13], [48]. However, these approaches are notapplicable to maximize the network lifetime of an energyharvesting LoRa network. Insufficient energy generation ina recharge cycle may lead to an unexpected depletion of anodes battery even with the most energy-efficient transmission3arameters. On the contrary, our proposed approach minimizessuch depletion, thereby maximizing the network lifetime.IV. P
ROPOSED P ROTOCOL FOR L ONG -L IVED L O R A For nodes with battery recharging capabilities, minimizingenergy consumption is not always beneficial for maximizingthe lifetime of the network. For example, if a node is fullycharged at time and is expected to generate B ∗ units ofenergy by time ζ , then consuming any amount of energy inthe range [0, B ∗ ] will still result in a full battery at time ζ .Thus, the network lifetime is not negatively affected as longas it is ensured that a node’s energy consumption is no greaterthan its expected energy generation (or battery budget).We rely on the above observation to maximize the networklifetime by enabling the nodes to exploit superfluous residualenergy of neighboring nodes. This is done through a packetoffloading mechanism where a node whose battery budget isinsufficient to deliver all subsequent packets directly to thegateway dynamically forwards a subset of its future packetsto a neighboring node with an affluent battery budget. Theneighboring node forwards these packets to the gateway onbehalf of the depleting node. Since we select neighboringnodes that are significantly closer to the node than the gateway,transmission to a neighboring node can be made at muchless power by adjusting multiple transmission parametersthan transmitting directly to the gateway. Note that, in thisstrategy, the overall energy consumption at an affluent nodeincreases and the total energy needed for delivering a packetto the gateway may be higher than that required for directtransmission to the gateway from a depleting node. However, itconserves energy at the depleting node. Thus, it helps prolongthe network lifetime as long as we select the affluent anddepleting nodes dynamically and ensure that the latter are notoverloaded. uv % o f p a c k e t s % o f p ac k e t s Node Gateway % o f p ac k e t s (a) Network lifetime w/o offloading % o f p a c k e t s
40% of packets % o f p ac k e t s uvNode Gateway (b) Network lifetime with offloadingFig. 2. An example of maximizing network lifetime through packet offloading Fig. 2 shows an example of the proposed offloading mecha-nism. In this example, two nodes, u and v , transmit packets tothe base station. Packet transmission from node v consumes of its battery, while that from node u consumes of its battery for transmitting only of the packets. Inthe traditional setting, u runs out of charge before the nextcharging cycle. Assuming u needs energy to transmit apacket to v compared to the base station, offloading of u ’s transmission to v can ensure u ’s (and thereby the network)lifetime is longer than the charging window. Definition 1 (
Affluent Node ): A node v with an energybudget B ∗ v and an estimated energy consumption B v ( t, ζ ) during the interval [ t , ζ ], where t is the current time and ζ isthe start of next interval, is said to be an affluent node at time t if and only if B v ( t, ζ ) < B ∗ v . (6) Definition 2 (
Depleting Node ): A node v with an energybudget B ∗ v , residual energy β v that needs to be saved forfuture, and estimated energy consumption B v ( t, ζ ) during theinterval [ t , ζ ], where t is the current time and ζ is the start ofnext interval, is a depleting node at time t if and only if B v ( t, ζ ) > B ∗ v − β v (7)The value of β v depends on the estimated energy generationin the next recharge cycle of node v and can be estimated bythe network manager during network deployment. At time t ,the estimate of energy consumption, battery budget for thatinterval, and Equations (6) and (7) are used to designate anode as affluent or depleting. Packet offloading from a depleting node u to an affluentnode v in our approach means transferring the responsibilitiesof transmitting a set of packets to the gateway from u to v . To enable packet offloading, we consider three modes ofoperation for a node: offloading , lading , and conventional .In the conventional mode, a node transmits packets directlyto the gateway. In the lading mode, a node receives packetsfrom a depleting node and forward them to the gateway. Theoffloading mode enables packet offloading to an affluent node.Packet offloading increases the energy consumption of anaffluent node but does not affect its lifetime when its totalenergy consumption is no greater than its battery budget.To ensure that the total energy consumption of an affluentnode remains within its battery budget, we propose to find(i) the pairing between affluent nodes and depleting nodesthat communicate with each other and (ii) an estimate ofthe operation time in lading and offloading mode for theaffluent and depleting node, respectively. Since the solution toan optimal pairing of affluent-depleting nodes and operationtime in lading and offloading mode is unknown, we proposea heuristic solution.The proposed heuristic for finding the affluent-depletingnode pair that communicate with each other depends onthe node’s energy consumption in the lading mode. Energyconsumption in the lading mode depends on the link-layerprotocol that enables packet offloading. In the followingsections, we describe the proposed link-layer protocol thatenables packet offloading between the depleting and affluentnodes, transmission parameter selection, energy overhead inthe lading mode, and selection of affluent and depleting nodepairs that communicate with each other. A. Enabling Peer-to-Peer Communication for Offloading
Enabling communication between an affluent node and a de-pleting node requires synchronization between their sleep andwake-up times. Such a synchronization can incur huge energyoverheads for both affluent and depleting nodes. To overcomethis limitation, we adopt the low-power listening techniqueused in low-power network. In low-power listening, a nodeperforms clear channel assessment (CCA) for a fixed duration4
Fig. 3. Timing diagram in Lading Mode. to determine the channel activity. If the node detects channelactivity, it wakes up and listens to the packet; otherwise, itsleeps. We propose to adopt a similar approach for the ladingmode of LoRa. However, adopting low-power listening forLoRa has the following challenges: (1) using CCA to monitorthe start of a packet can lead to several false-negatives sincenodes can decode packets below the noise level, and (2) due tolong communication range, a node can be in communicationrange with many other nodes, which can increase the numberof false wake-ups in lading mode. We address these limitationsby adopting channel activity detection (CAD) for low-powerlistening. The proposed peer-to-peer communication betweenan affluent and a depleting node is described in the followingsections. First, we describe the communication in the ladingmode and then in the offloading mode.
1) Lading Mode for LoRa:
In LoRa’s lading mode, theaffluent node periodically wakes up and performs CAD. Notethat most of the existing and commercially available off-the-shelf LoRa communication chips such as SX1276, SX1277,SX1278, and SX1279 implement and support CAD [49]. Dur-ing CAD, the affluent node receives signals for two symbolsand probes for correlation between the received signal and aknown preamble to identify any ongoing packet transmissions.If the affluent node detects a packet transmission, it continueslistening to the packet transmission; otherwise, it sleeps.Because a node probes for correlation with a known symbol,CAD overcomes the false-negative detection of packets. Afterreceiving a packet, the affluent node forwards the packet to thegateway. Since there is a minimum inter-arrival time betweentwo packets at a node, the affluent node can transmit to thegateway in the interval between two offloading packets withoutinterfering the depleting node’s communications. The affluentnode can also use this interval to transmit its own packets.Fig. 3 shows the timing diagram of a node operating inlading mode. An affluent node wakes up once every T CAD = T + T seconds, where T and T are timer interrupts. Thenode sleeps for T seconds. Within the T seconds, the nodeperforms CAD for T symbol seconds and remains in low-poweridle mode for the rest if a packet is not detected (for example,after the first CAD operation in Fig. 3). If the node detects apacket during the CAD, for example, after the second CADoperation in Fig. 3, it wakes up and listens to the packet. Onthe other hand, in LoRa communication the preamble for allpackets is the same. Thus, during CAD an affluent node maynot distinguish between transmissions to the affluent node andgateway, which would result in a significantly high numberof false wake-ups. To solve this problem, we use reverse I-Qsignals for packet transmissions to lading node and regular I-Qsignals for packet transmissions to the gateway. During CAD,an affluent node can only listen to regular I-Q or reverse I-Q but not both, thus minimizing the number of false wake-ups.
2) Offloading Mode for LoRa:
The objective of the of-floading mode is to minimize the energy consumption at anode, thereby increasing the network lifetime. To meet thisrequirement, we propose to adopt a lightweight MAC protocolsimilar to LoRaWAN class A to send a packet. A nodetransmits a packet whenever it has data to send. If the affluentnode acknowledges the packet reception in the next two timewindows, it goes back to sleep until it has data to send.Otherwise, it retransmits the packet after a random back-off.For a depleting node’s packet to be successfully received byan affluent node through CAD, the duration of the preambleshould be a minimum of T + 2 T . Since each symbol takes SF BW , the length of the preamble is at least ( T +2 T ) BW SF . When T = T = 4 . ms (the smallest feasible value possible for T and T ), the preamble should be at least symbols long fora spreading factor of and bandwidth of kHz. B. Transmission Parameter Selection
Packet offloading between nodes requires both the affluentnode and the depleting node to operate on the same chan-nel, spreading factor, bandwidth, and coding rate. Due tothe complex nature of this problem, we leave the optimalproblem formulation and analyzing its complexity class as anopen problem. In our approach, we develop a heuristic fortransmission parameter selection in the conventional mode andoffloading-lading mode to enable communication from node togateway and from depleting node to affluent node, respectively.
CellGateway Node
Fig. 4. A channel assignmentexample (each color represents adifferent transmission channel).
Channel Assignment.
The ob-jective of channel allocation isto ensure potential neighboringaffluent and depleting nodes areassigned the same channel. Thenetwork server segregates thenetworks into cells and assignsthe same channel to all the nodeswithin a cell. Furthermore, adja-cent cells are assigned differentchannels to minimize the interference from depleting nodes inneighboring cells. Since neighboring nodes can have differentcommunication patterns and battery budgets, the nodes withinthe same cell can have both depleting and affluent nodes. Fig. 4shows an example of our channel allocation. To generate cells,the network server uses location-based segregation of nodes.Initially, the network server creates cells equal to the numberof channels. At the end of each recharge cycle, it can furtherdivide one cell into smaller cells if the number of affluent anddepleting nodes within one cell is above a certain threshold.The network manager can set this threshold based on requiredperformance improvement in the network lifetime. The samechannel assignment is used in all operation modes.
Transmission power.
In conventional mode, the nodes usetransmission power based on ADR (adaptive data rate) adoptedin LoRaWAN. In ADR, the nodes initially use the maximumtransmission power to transmit a packet [50]. After every20 packets received by the gateway, the nodes decrease5he transmission power by 3dBm to compute the minimumtransmission power that results in a successful reception.We use a similar approach in the lading-offloading mode,where an affluent node starts with a transmission power of
P L i = P s + L + 10 n log dd , where P s is the receiversensitivity, L = 7 . dBm, the path loss at reference distance d = 1 m, and n = 3 . is the path loss exponent. An affluentnode decreases the transmission power if the signal to noiseratio (SNR) is significantly higher than the receiver sensitivity. Coding rate.
LoRaWAN specifies a coding rate of 4/5 to beused in the US915 band to limit the maximum dwell time ineach channel [51]. We use a coding rate of 4/5 in both theconventional and offloading-lading mode.
Spreading factor.
In the conventional mode, the nodes usespreading factors in the range [9,10] for the US band and [9,12] for the EU band to enable long-distance communicationbetween nodes and base stations. The ADR algorithm gives aspecific spreading factor for each node based on the signal tonoise ratio observed at the gateway. In the offloading mode,depleting nodes use lower spreading factors such as 7 and8 to communicate with the affluent node. Lower spreadingfactors typically consume less power and are known to haveshorter communication range, and hence, are better suited forpacket offloading. Low spreading factors are used only forpacket offloading to reduce the number of collisions withother transmissions, thereby conserving energy at the depletingnode. In the lading mode, a node receives packets on lowspreading factors but uses high spreading factor to transmitpackets to the gateway like conventional mode.
C. Energy Overhead during Lading Mode
Typically, the energy consumed by the communication mod-ule in an embedded low-power device is higher than that ofthe computation platform [52]. Thus, in this work, we focus onestimating the energy overhead required by the communicationmodule of an affluent node in the lading mode and onensuring that the overhead does not decrease the lifetime ofthe affluent node. Note that the energy overhead derived inthis section is based on the energy model for communicationgiven in the datasheet of LoRa communication model [49].In the lading mode, there are three main sources of energyoverheads: periodic CAD, packet reception and forwarding,and acknowledgement transmission and reception.
Periodic CAD.
Affluent node v in the lading mode performsCAD once every T CAD ( v ) seconds, where T CAD ( v ) = T + T (as shown in Fig. 3). Within T CAD ( v ) interval, v consumes P rx power for a duration of SF offload BW offload to probe for correlation.The affluent node consumes P RC-Oscillator for a duration of T − SF offload BW offload to remain in low-power idle mode with only RC-Oscillator on. For the rest T time units, the affluent nodesleeps and consumes close to energy. Thus, the total energyconsumed during an interval of T CAD ( v ) seconds is E CAD ( v ) = T P RC-Oscillator + 2 (1+ SF offload ) BW offload (cid:0) P rx − P RC-Oscillator (cid:1)
The actual power consumption values for P rx and P RC-Oscillator can be obtained from the datasheet of LoRa communication module, and typically power consumed inreceive mode is twice that of low-power idle mode [49].Because an affluent node v remains in lading mode for a totalduration of T LM time units, the total energy consumed duringCAD is given by T LM ( v ) T CAD E CAD ( v ) . Packet reception and forwarding.
The total energy overheadto receive a packet in the lading mode is a product of thepower drawn by the chip and time on air of the packet,which is given by the product of number of symbols in thepackets and time to transmit one symbol. In the lading mode,a node receives packets transmitted to it using the offloading-lading transmission parameters. The number of symbols in u ’spacket when transmitted by u to v using the offloading-ladingtransmission parameters, is given as follows: N symbols ( u u −→ v ) = preamble u + 4 .
25 + 8+ max (cid:18)(cid:24) payload u − SF offload + 24 SF offload − DE offload (cid:25) CR offload , (cid:19) (8)Similarly, the time to transmit one symbol of node u ’s packetfrom u with offloading-lading transmission parameters is: T symbol ( u u −→ v ) = 2 SF offload BW offload (9)To receive a packet from u , the affluent node v consumes P rx power for a duration of N symbols ( u u −→ v ) T symbol ( u u −→ v ) .In the lading mode, the affluent node forwards offloadedpacket using its conventional mode parameters. Thus, thenumber of symbols in u ’s packet when transmitted by v using v ’s conventional mode transmission parameters is given by N symbols ( v u −→ Gateway ) = preamble u + 4 .
25 + 8+ max (cid:18)(cid:24) payload u − SF v + 24 SF v − DE v (cid:25) CR v , (cid:19) (10)Similarly, the time to transmit on symbol of node u ’s packetfrom node v to Gateway with v ’s conventional mode trans-mission parameters is given by Equation (2). To forwardan offloaded packet, an affluent node v consumes P tx ( P L v ) power for N symbols ( v u −→ Gateway ) T symbol ( v ) duration. Thus,the total energy consumed by an affluent node v for receivingand forwarding one packet from u is given as follows: E FW ( u, v ) = P rx N symbols ( u u −→ v ) T symbol ( u u −→ v )+ P tx ( P L v ) N symbols ( v u −→ Gateway ) T symbol ( v ) (11)Note that the number of symbols and time to transmit apacket using the offload parameters, as given by Equation (8)and (9) are significantly lower than that using the conventionalparameters, as given by Equation (10) and (2). Furthermore,the power level used for transmission in offloading-ladingmode is lower than that of conventional mode. Thus the totalenergy consumed during a packet’s offloading is significantlylower than that needed for its transmission to the gateway. Acknowledgment transmission and reception.
Similar topacket transmission, energy overhead during transmitting andreceiving acknowledgments is a product of power drawn,number of symbols, and time to transmit one symbol. In thelading mode, a node transmits an ACK to a depleting nodeusing the offloading-lading transmission parameters. Thus, thenumber of symbols in node v ’s ACK to node u is given by6quation (12), assuming that the packet transmitted containsonly the preamble and header (i.e., no payload and CRC). N symbols ( v ack −−→ u ) = preamble u + 4 .
25 + 8+max (cid:18)(cid:24) − SF offload SF offload − DE offload (cid:25) CR offload , (cid:19) (12)Here, v ack −−→ u denotes the transmission of ACK fromnode v to node u after a successful packet reception. Theduration of each symbol in node v ’s ACK to node u ( T symbol ( v ack −−→ u ) ) is the same as T symbol ( u u −→ v ) since thetransmission parameters are the same. Equation (9) gives theexpression for T symbol ( u u −→ v ) . The affluent node transmitsan acknowledgment twice and each acknowledgment takes N symbols ( v ack −−→ u ) T symbol ( u u −→ v ) time to transmit andconsumes P tx ( P L offload ) power. In the lading node, node v receives an ACK for node u ’s packet from the gateway usingits transmission parameters. To receive an ACK, node v openstwo receive window slots with a total length of T rx ( v ) . For theduration of T rx , it consumes P rx power. Thus, the total energyconsumed to transmit and receive an ACK is: E ack ( u, v ) = 2 P rx T rx ( v )+ 2 P tx ( P L offload ) N symbols ( v ack −−→ u ) T symbol ( u u −→ v ) (13)A depleting node u generates T LM ( v ) τ u packets in the ladingmode of v , where τ u is its minimum inter-packet generationtime. If each packet of node u needs an average of γ retrans-missions to successfully reach v , the total energy consumedto offload T LM ( v ) τ u packets including ACKs is given by γT LM ( v ) τ u (cid:0) E FW ( u, v ) + E ack ( u, v ) (cid:1) A node does not perform CAD during the reception andtransmission of a packet or an ACK. Thus, the energy correc-tion is the product of E CAD ( v ) and the number of occurrencesof CAD during the reception and transmission of both theoffloaded packet and its ACK. The energy correction at node v per packet offloaded by u is given by Equation (14). E CR ( u, v ) = E CAD ( v ) T symbol (cid:18) T rx + 2 N symbols ( v ack −−→ u ) T symbol ( u u −→ v )+ N symbols ( u u −→ v ) T symbol ( u u −→ v )+ N symbols ( v u −→ Gateway ) T symbol ( v ) (cid:19) (14) Overall overhead.
Considering packet offloading from multi-ple depleting nodes and three sources of energy overhead, thetotal energy overhead in the lading mode of a node v is givenby Equation (15), where DN represents the set of depletingnodes, and AF DN represents the set of affluent and depletingnode pairs that communicate with each other. E LM ( v ) = T LM ( v ) T CAD E CAD ( v )+ X { u,v }∈ AF DN u ∈ DN γ T LM ( v ) τ u (cid:0) E FW ( u, v ) + E ack ( u, v ) − E CR ( u, v ) (cid:1) (15) Note that Equation (15) gives an upper bound on the energyoverhead on the lading mode, assuming that nodes are alwaysperforming CAD during the lading mode. In practice, thenodes can be sleeping for short periods, i.e., between inter-arrival times of packets. To simplify the computation ofaffluent and depleting node pairs that communicate with eachother, we use this upper bound on the lading mode’s energyconsumption. As we explain in the following section, thisenergy overhead for an affluent node is used to find the affluentand depleting node pairs that communicate with each other. D. Selecting Different Modes of Operation1) Workload Prediction:
The network server distinguishesaffluent nodes from depleting nodes based on the total en-ergy consumption of the node in the current recharge cycle.Unfortunately, the unreliability in wireless networks makesit difficult to predict the number of transmission attemptseach node will make before the packet has been successfullyreceived at the gateway. In case of packet reception failure atthe gateway, a node can retransmit it up to times. However,the actual number of retransmissions can be less than that.To estimate the number of retransmissions from the nodes,we use a sliding window approach. Each node embeds theretransmission attempt information in the packet it transmits.The network server keeps the retransmission count from thelast w packets in a sliding window. The size of the slidingwindow can be decided by the network manager. The averageretransmission count of the window is used as the retransmis-sion overhead, γ , for the network. There are existing worksthat use various machine learning techniques such as Auto-Regressive Moving Integrated Average Technique (ARIMA),Seasonal ARIMA [53], Support Vector Machines, Multi-LayerPerception, [54] Gaussian Process and Long Short TermMemory (LSTM) architecture [55] to predict the wirelessnetwork traffic pattern. However, such approaches increase thecomplexity of the system. Thus, we leave the integration ofsuch prediction algorithms in our approach as a future work.
2) Selection of Affluent and Depleting Nodes:
The networkserver selects the affluent and depleting nodes based on theirexpected energy consumption in the conventional mode. Foreach node in v in the network, it estimates the total numberof transmission attempts N tx ( v ) in the current recharge cycleas N tx ( v ) = γ × T ζ τ v , where T ζ denotes the time intervalfrom current time t to the start of the next recharge cycle.Using this information, the network server estimates theenergy consumption in conventional mode for each node v as E CM ( v ) = N tx × E tx ( v ) , where, E CM ( v ) is the energyconsumption in conventional mode and E tx ( v ) is the energyconsumption for packet transmission given by Equation (1).The network server can estimate the battery budget B ∗ v foreach node v in the network. Thus, if B ∗ v − β v > E CM ( v ) , itassigns node v to the set of affluent nodes AN. Otherwise,we assign node v to the set of depleting nodes DN. In thisway, the network server divides all nodes into two disjoint setsAN and DN as presented in Algorithm 1. The server runs thisAlgorithm after every packet reception.7 lgorithm 1 Selecting Affluent and Depleting Nodes
Input:
Set of all nodes V Output:
Disjoint sets AN , DN AN ← ∅ DN ← ∅ for v ∈ V do E CM ( v ) ← N tx × E tx ( v ) if E CM ( v ) < B ∗ v − β v then AN ← AN ∪ { v } else DN ← DN ∪ { v } end ifend for E. Selecting Lading and Offloading Mode
After executing Algorithm 1, if the network server identifiesany depleting node u ∈ DN, it immediately starts to look fora suitable affluent node v ∈ AN in the same cell which cansupport the lading mode of operation. To this end, the networkserver creates the set AF DN of affluent and depleting nodesthat communicate with each other. Each member in the setAF DN is a pair ( u, v ) where u is the depleting node and v is the affluent node. For every pair ( u, v ) ∈ AF DN, thelading time T LM ( v ) for affluent node v should be at least aslarge as τ u , one sampling period of u , to successfully enableoffloading of at least one packet from u to v . Thus, every pair ( u, v ) ∈ AF DN should satisfy the constraint: T LM ( v ) ≥ τ u ∀ ( u, v ) ∈ AF DN . (16)Furthermore, in order to prevent depletion of budget at theaffluent node, the time for lading mode should be carefullyselected so that energy consumption in lading mode does notexceed the superfluous residual energy E r for v , calculatedas the difference between node v ’s budget and E CM ( v ) . Thus,for an affluent node v , the energy consumption in lading mode E LM is bounded as E LM ( v ) ≤ E r ( v ) . (17)Since optimal pairs of affluent and depleting nodes areunknown, we rely on a greedy heuristic which enables anaffluent node to assist as many depleting nodes as possiblewithout hampering its own lifetime. To this end, the networkserver constructs the set AF DN by pairing an affluent node v with every depleting node u in the same cell. Then, thenetwork server calculates the time in lading mode T LM ( v ) such that Equation (17) is satisfied. Such an approach preventsan affluent node from becoming a depleting node. Note that,if node v is paired with a large number of depleting nodes, T LM ( v ) is shortened to keep E LM ( v ) bounded. Thus, the esti-mated value of T LM might not satisfy Equation (16). In otherwords, the affluent node may not be able to support packetoffloading from these many depleting nodes u ∈ AF DN withits superfluous residual energy. Thus, the network server needsto remove some pairs from AF DN to increase T LM ( v ) andsatisfy Equation (16). Since our goal is to prolong the lifetimeof depleting nodes, we select to remove the pairs with thehighest offloading overhead E OM ( u, v ) given by the followingequation which represents the energy consumption for node u to offload one packet to node v : E OM ( u, v ) = P tx ( P L
OFFLOAD ) × N symbols ( u u −→ v ) T symbol ( u u −→ v ) Algorithm 2
Selecting Lading and Offloading Mode
Input:
Disjoint sets AF , DN Output:
Set AF DN for v ∈ AN do AF DN ← { v } × DN for ( u, v ) ∈ AF DN do sort AF DN in ascending order of E OM ( u, v ) calculate T LM ( v ) for AF DN from Equation (15) while Equation 16 is not satisfied do Remove last pair ( u, v ) from AF DNcalculate T LM ( v ) for AF DN from Equation (15) end whileend forend for In the above equation,
P L
OFFLOAD is the transmission powerfor node u in offloading mode. Thus, the network servergreedily removes the pair ( u, v ) with the highest offloadingoverhead from the set AF DN until node v is able to supportpacket offloading for every pair ( u, v ) in the set as describedin Algorithm 2. After the set AF DN is constructed, for eachpair ( u, v ) ∈ AF DN, the network server enables offloadingand lading mode in u and v , respectively, for the duration of T LM ( v ) . Note that, the network server only provides an upperbound of time in lading and offloading mode.
1) Transitioning between Conventional andLading/Offloading Modes:
Upon deciding the setAF DN, the network server broadcasts the informationvia acknowledgments. One challenge in transitioning fromconventional mode to lading/offloading mode is estimatingthe start of the lading/offloading mode. Since nodes transmit aheartbeat message periodically, the network server can predictthe arrival of the next heartbeat message from each node thatis transitioning from conventional mode to lading/offloadingmode. This information can be used to estimate the next timeinstant before which all nodes will have a minimum of onecommunication (either heartbeat or data) with the gateway.The network server chooses this instant as the start of thelading and offloading mode of operation. This ensures thatall nodes that are transitioning to offloading/lading modesreceive information about the transition.The network server chooses the affluent node to start itslading mode a few seconds before the offloading mode starts.Such a proactive approach circumvents any time synchroniza-tion errors between the devices. When its reserve energy isexhausted, an affluent node can use piggy-backed acknowl-edgments to inform the depleting nodes to transition fromoffloading mode to conventional mode. Once all depletingnodes are notified to switch to the conventional mode, anaffluent node can transition to conventional mode.V. E
VALUATION
We have evaluated our results in simulation and experiment.
A. Simulation1) Simulation Setup:
We evaluate the efficiency of ourapproach by conducting simulations using up to 1200 nodesand a single gateway placed in a disc of radius 3500m. Ourimplementation is based on the LoRaWAN module for NS-3 [56]. The nodes and the gateway use 8 channels between802.3 and 903.7 MHz with a channel bandwidth of 125 kHz.To conform with the US regulations, we do not use SF11 andSF12. Unless stated otherwise, the parameters were set usingour transmission parameter selection approach.We configure a percentage of nodes to transmit at a higherrate of 20 to 30 packets per hour. All other nodes transmit ata rate of 2 to 4 packets per hour. The packet interarrival rateremained unchanged for the duration of the simulation. Foreach node, a rechargeable battery was simulated by assigningbattery budgets randomly in the range [6,25] joules for thecurrent recharge cycle. The heterogeneity of battery budgetsand traffic patterns of the nodes introduce depleting nodesin the network. Affluent and depleting nodes, if any, wereselected based on Algorithm 1 after every packet receptionat the gateway. For simplicity, we use a fixed retransmissionoverhead, γ = 2 . Energy consumption for packet transmission(including retransmissions), packet reception and CAD aresubtracted from this budget. Packet transmission from a nodewas stopped upon depletion of its budget. For each setup, wereported the network lifetime and throughput for a single run.Network throughput was measured by the number of bytesreceived per unit of time at the gateway. Baseline.
To our knowledge, no existing work studied lifetimemaximization of energy-harvesting LoRa networks. Thus wecompare the performance of our approach (shown as ‘LLL’i.e., Long-Lived LoRa in figures) with standard LoRaWAN.
2) Results under Varying Number of Nodes:
We first eval-uate our approach under varying number of nodes, whereapproximately 3% of the nodes are depleting. Figure 5 demon-strates the performance in terms of lifetime and throughput.In Figure 5(a), the network lifetime remains fairly constantfor our approach despite the increase in number of nodeswhereas for LoRaWAN the lifetime decreases as the numberof nodes increase (at 200 nodes the lifetime is 10.42 Hoursfor LoRaWAN which decreases to 7.53 Hours at 1200 nodes).The small variations in network lifetime across experimentsin Figure 5(a) are mainly due to the randomly assignedbattery budgets. As the figure shows, our approach (LLL) isconsistently better than the legacy LoRa (LoRaWAN). Ourapproach has a lifetime of 23.8 Hours on average comparedto 7.53 Hours in LoRa. When the number of nodes is 800,we achieve more than 4 times better performance in terms oflifetime. As shown in Figure 5(b), LLL maintains throughputno less than the standard LoRaWAN under the same set up.It is worth noting that, in our approach, offloading mayincrease the latency of some (offloaded) packets. However,the applications deployed in a LoRa network such as datacollection in smart agriculture [2], smart metering [57], smartcities [3] and wild-life monitoring [58] are usually not time-sensitive. Rather, lifetime maximization is of greater impor-tance as it ensures seamless data collection from all sensors.Thus, by increasing the latency of some packets, we aresignificantly prolonging the lifetime of the network whilekeeping the throughput no less than the standard LoRaWAN.
3) Results under Varying Number of Depleting Nodes:
We now evaluate our approach under varying percentage of
200 400 600 800 1000 1200Number of nodes0102030 L i f e t i m e ( H ou r) LLLLoRaWAN (a) Network lifetime
200 400 600 800 1000 1200Number of nodes510152025 T h r oughpu t ( B y t e / s ) LLLLoRaWAN (b) ThroughputFig. 5. Network lifetime and throughput under varying number of nodes depleting nodes. We fix the number of nodes at 1000 andvary the percentage of depleting nodes in the network from2 to 10. As shown in Figure 6(a), the lifetime of our ap-proach is significantly better than the traditional LoRa, as thepercentage of the depleting nodes increases. On average, thenetwork lifetime for our approach is 22.58 Hours, whereas forLoRaWAN, the lifetime is 6.03 Hours. We observe the lifetimefor our approach decreases as the percentage of depleting nodeincrease as the set of affluent nodes are not able to supporta large number of depleting nodes (at 2% depleting nodes,the lifetime is 24 Hours which decreases to 22 Hours at 10%depleting nodes). Figure 5(b) shows that our approach hasnetwork throughput of 23 Byte/s where LoRaWAN has 22.39Byte/s. As we introduce more depleting nodes in the networkby increasing the packet rate at some nodes, the throughputof both approaches increase. However, our approach preventsearly depletion of batteries and thus achieves higher through-put than LoRaWAN under many depleting nodes. L i f e t i m e ( H ou r) LLLLoRaWAN (a) Network lifetime T h r oughpu t ( B y t e / s ) LLLLoRaWAN (b) ThroughputFig. 6. Lifetime and throughput under varying % of offloading nodes
4) Results under Duty Cycle Enabled EU Band:
We haveevaluated our approach in the EU band using 8 channelsranging from 868 MHz to 869.55 MHz under varying numberof nodes. Duty-cycle for each channel was set according tothe regulatory rules. As such, the same channel cannot bereused for multiple transmissions immediately. To comply withthis, we change our channel assignment in offloading andlading mode such that after each transmission, an affluentnode asks the depleting nodes through ACKs to change tothe same channel for the next transmission. However, in caseof more than one depleting nodes with different transmissionpatterns, this introduces an overhead as ACKs cannot betransmitted to all of them immediately. Thus, in Figure 7we see a slight decrease in lifetime and throughput for ourapproach. While throughput of both approaches increases withthe number of nodes in Figure 7(b), the throughput for ourapproach is slightly lower than LoRa. However, as shown inFigure 7(a), we observe that our approach is significantly better9han LoRaWAN in terms of lifetime. On average our approachhas lifetime of 20.2 Hours compared to 7.35 Hours in LoRa.
200 400 600 800 1000 1200Number of nodes0102030 L i f e t i m e ( H ou r) LLLLoRaWAN (a) Network lifetime
200 400 600 800 1000 1200Number of nodes510152025 T h r oughpu t ( B y t e / s ) LLLLoRaWAN (b) ThroughputFig. 7. Lifetime and throughput under varying number of nodes in EU band
B. Experiments
In this section, we conduct a proof-of-concept experiment ofour design with the commercially available LoRa nodes, gate-way, and network server to show that the simulation results areconsistent also in our real testbed, i.e., the measured networklifetime increases while maintaining a similar throughput.
1) Implementation:
In our implementation, we use theDragino SX1276 LoRa transceiver HAT [59] on RaspberryPi 3 [60] as the LoRa nodes. On the other hand, we use theRAK2245 HAT [61] on Raspberry pi 3 to build a gateway.Specifically, each LoRa node runs a custom built version (forour protocol) of the LMIC 1.6 LoRa/LoRaWAN library [62]and the Raspberry Pi hosting the gateway runs the open-sourceChirpStack LoRaWAN network server [63] locally.
2) Experimental Setup:
We use 15 LoRa nodes and onegateway in our experiments. Figure 8 shows the locations ofthe nodes in our indoor deployment of an area of (30x20)ft , where the dark circle represents the gateway and therest represent the nodes (labeled from N1 to N15). Note that GatewayN3 N2N8 N9N10N11 N12 N13N7 N6N5N4 N1 N14 N1530 ft f t Fig. 8. Gateway and node’s positionsin indoor deployment. we were unable toperform wide-area outdoorexperiments due to theCOVID-19 pandemic [64].The gateway has twohalf-duplex transceiverradios, and each node hasone half-duplex transceiverradio. Our LoRa networkoperates in the 915 MHz frequency band and adopts no dutycycle requirements (as per the LoRa regional regulations [1]).Each node in our experiments maintains a variable (i.e.,storage area in the node’s memory) to emulate its energybudget. At the beginning of the experiments, each node isassigned a different energy budget that ranges between 6 to20 joules. Based on the radio states (e.g., transmit, receive,CAD, sleep, etc.), each node deducts appropriate energyfrom its budget according to the energy model presented inSection IV-C which maintains the accuracy of the energymodel given in the SX1276 datasheet [49] and that of thesimulation setup in Section V-A1.In conventional LoRa mode (Class-A), each node adopts theADR. In offloading mode, a node uses a channel bandwidthof 125 kHz, SF of 7, transmit power of 2 dBm (minimum forthe SX1276 LoRa module in the LMIC library), and coding rate of . Using these settings, we enable 3 to 15 nodes totransmit data in the experiments. Each node transmits its CPUtemperature (2 bytes) to the gateway with the ACK bit set.In each run of the experiment (e.g., with different number ofnodes), two-thirds of the nodes adopt an inter-packet intervalof 2 to 4 minutes. On the other hand, one-third of the nodessend packets with an interval of 40 to 60 seconds. It maythus introduce depleting nodes in the network. Unless statedotherwise, these are our default experimental setups.Note that the Raspberry pi 3 used as LoRa nodes in oursetup has a higher static power consumption than light-weightsensors used in real deployments. We did not attach a batteryto the nodes as the raspberry pi’s static power usage wouldoverwhelm the power consumed in transmissions and rapidlydeplete the battery, instead the nodes were line-powered. Inthis proof-of-concept setup, the supply current values fromthe SX1276 datasheet [49] were used to calculate the totalenergy consumption in our proposed Algorithms.
3) Results:
With the above settings, we evaluate the net-work lifetime and throughput of our design and compare withLoRaWAN. Figure 9(a) shows the network lifetime for bothof the approaches with varying number of nodes. On averageour approach has lifetime of 30.24 minutes, compared to17.84 minutes in LoRa. As the nodes use a higher packet ratethan simulation, the lifetime is much lower than observed insimulation. This figure also shows that as the number of nodesincreases, the lifetime in LoRaWAN decreases sharply com-pared to our approach. Figure 9(b) shows the overall networkthroughput for both of the approaches with varying number ofnodes. As shown in this figure, on average, the throughput inLoRaWAN and our approach remain competitive (18.72 vs 19Bytes/s). The results in simulations and experiments exhibitsimilar trends in network lifetime and throughput. L i f e t i m e ( M i nu t e s ) LLLLoRaWAN (a) Network lifetime T h r oughpu t ( B y t e / s ) LLLLoRaWAN (b) ThroughputFig. 9. Network lifetime and throughput under varying number of nodes
VI. C
ONCLUSION
As LoRa networks are widely being adopted for variousIoT applications, prolonging their lifetime is a very importantresearch problem. In this paper, we have proposed a link-layerprotocol to prolong the lifetime of an energy-harvested LoRanetwork. Simulations and experiments show that our protocolcan increase the network lifetime up to times compared totraditional LoRa network. In our future work we intent to studyhow to preserve the privacy of packets while offloading.A CKNOWLEDGMENT
This work was supported by NSF through grants CAREER-1846126 and CNS-2006467.10
Nature Energy
IEEEAccess , vol. 6, pp. 40 846–40 853, 2018.[11] H. H. R. Sherazi, G. Piro, L. A. Grieco, and G. Boggia, “Whenrenewable energy meets lora: A feasibility analysis on cable-less deploy-ments,”
IEEE Internet of Things Journal , vol. 5, no. 6, pp. 5097–5108,2018.[12] R. Piyare, A. L. Murphy, M. Magno, and L. Benini, “On-demand lora:Asynchronous tdma for energy efficient and low latency communicationin iot,”
Sensors , vol. 18, no. 11, p. 3718, 2018.[13] W. Gao, W. Du, Z. Zhao, G. Min, and M. Singhal, “Towards energy-fairness in lora networks,” in
IEEE ICDCS , 2019.[14] G. Mao, B. Fidan, and B. D. O. Anderson, “Wireless sensor networklocalization techniques,”
Computer networks , vol. 51, no. 10, pp. 2529–2553, 2007.[15] A. Jahid, K. H. Monju, S. Hossain, and F. Hossain, “Hybrid powersupply solutions for off-grid green wireless networks,”
Internationaljournal of green energy , vol. 16, no. 1, pp. 12–33, 2019.[16] A. Saifullah, S. Sankar, J. Liu, C. Lu, R. Chandra, and B. Priyantha,“CapNet: A real-time wireless management network for data centerpower capping,” in , 2014,pp. 334–345.[17] U. Raza, P. Kulkarni, and M. Sooriyabandara, “Low power widearea networks: An overview,”
IEEE Communications Surveys Tutorials ,vol. 19, no. 2, pp. 855–873, 2017.[18] A. Saifullah, M. Rahman, D. Ismail, C. Lu, J. Liu, and R. Chandra,“Enabling reliable, asynchronous, and bidirectional communication insensor networks over white spaces,” in
Proceedings of the 15th ACMConference on Embedded Network Sensor Systems , ser. SenSys 17.Association for Computing Machinery, 2017.[19] D. Ismail, M. Rahman, and A. Saifullah, “Low-power wide-area net-works: Opportunities, challenges, and directions,” in
Proceedings of theWorkshop Program of the 19th International Conference on DistributedComputing and Networking , ser. Workshops ICDCN 18. Associationfor Computing Machinery, 2018.[20] M. Rahman and A. Saifullah, “Integrating low-power wide-area net-works in white spaces,” in , 2018,pp. 255–260.[21] A. Dongare, R. Narayanan, A. Gadre, A. Luong, A. Balanuta, S. Kumar,B. Iannucci, and A. Rowe, “Charm: exploiting geographical diversitythrough coherent combining in low-power wide-area networks,” in . IEEE, 2018, pp. 60–71.[22] R. Eletreby, D. Zhang, S. Kumar, and O. Ya˘gan, “Empowering low-power wide area networks in urban settings,” in
Proceedings of the Conference of the ACM Special Interest Group on Data Communication ,ser. SIGCOMM 17, 2017, p. 309321.[23] M. Rahman, D. Ismail, V. P. Modekurthy, and A. Saifullah, “Imple-mentation of lpwan over white spaces for practical deployment,” in
Proceedings of the International Conference on Internet of ThingsDesign and Implementation
IEEE/ACM Trans-actions on Networking , vol. 26, no. 4, pp. 1893–1906, 2018.[31] A. Saifullah, M. Rahman, D. Ismail, C. Lu, R. Chandra, and J. Liu,“SNOW: Sensor network over white spaces,” in
Proceedings of the 14thACM Conference on Embedded Network Sensor Systems
Proceedings of the 2016 International Conference on EmbeddedWireless Systems and Networks , ser. EWSN ’16, 2016, pp. 361–366.[35] R. A. and P. A., “Survey on lora technology: Solution for internet ofthings,”
Intelligent Systems, Technologies and Applications , vol. 1148,pp. 259–271, 2020.[36] X. Wang, L. Kong, L. He, and G. Chen, “mLoRa: A multi-packetreception protocol in LoRa networks,” in , 2019, pp. 1–11.[37] X. Xia, Y. Zheng, and T. Gu, “Ftrack: Parallel decoding for loratransmissions,” in
Proceedings of the ACM Conference on EmbeddedNetworked Sensor Systems , 2019.[38] W. Wu, Y. Li, Y. Zhang, B. Wang, and W. Wang, “Distributed queueingbased random access protocol for lora networks,”
IEEE Internet ofThings Journal , 2019.[39] L. Leonardi, F. Battaglia, and L. L. Bello, “Rt-lora: A medium accessstrategy to support real-time flows over lora-based networks for indus-trial iot applications,”
IEEE Internet of Things Journal , 2019.[40] B. Reynders, Q. Wang, P. Tuset-Peiro, X. Vilajosana, and S. Pollin,“Improving reliability and scalability of lorawans through lightweightscheduling,”
IEEE Internet of Things Journal , 2018.[41] P. J. Marcelis, V. S. Rao, and R. V. Prasad, “Dare: Data recovery throughapplication layer coding for lorawan,” in . IEEE, 2017, pp. 97–108.[42] C. Pham, A. Bounceur, L. Clavier, U. Noreen, and M. Ehsan, “Inves-tigating and experimenting interference mitigation by capture effect inlora networks,” in
Proceedings of the 3rd International Conference onFuture Networks and Distributed Systems . ACM, 2019, p. 31.[43] C. Orfanidis, L. M. Feeney, M. Jacobsson, and P. Gunningberg, “In-vestigating interference between lora and ieee 802.15. 4g networks,”in
Wireless and Mobile Computing, Networking and Communications(WiMob), . IEEE, 2017, pp. 1–8.[44] M. C. Bor, U. Roedig, T. Voigt, and J. M. Alonso, “Do lora low-power wide-area networks scale?” in
Proceedings of the 19th ACMInternational Conference on Modeling, Analysis and Simulation ofWireless and Mobile Systems , 2016, pp. 59–67.[45] M. Slabicki, G. Premsankar, and M. Di Francesco, “Adaptive configu-ration of lora networks for dense iot deployments,” in , 2018,pp. 1–9.[46] A. Mahmood, E. G. Sisinni, L. Guntupalli, R. Rondon, S. A. Hassan,and M. Gidlund, “Scalability analysis of a lora network under imperfectorthogonality,”
IEEE Transactions on Industrial Informatics , 2018.[47] F. Van den Abeele, J. Haxhibeqiri, I. Moerman, and J. Hoebeke,“Scalability analysis of large-scale lorawan networks in ns-3,”
IEEEInternet of Things Journal , vol. 4, no. 6, pp. 2186–2198, 2017.[48] M. N. Ochoa, A. Guizar, M. Maman, and A. Duda, “Evaluating loraenergy efficiency for adaptive networks: From star to mesh topologies,”in
Wireless and Mobile Computing, Networking and Communications(WiMob), . IEEE, 2017, pp. 1–8.
49] Semtech, “SX1276 datasheet,” 2019. [Online]. Available:https://semtech.my.salesforce.com/sfc/p/
IEEE INFOCOM2003. Twenty-second Annual Joint Conference of the IEEE Computerand Communications Societies (IEEE Cat. No. 03CH37428) , vol. 3.IEEE, 2003, pp. 1713–1723.[53] Yantai Shu, Minfang Yu, Jiakun Liu, and O. W. W. Yang, “Wirelesstraffic modeling and prediction using seasonal arima models,” in
IEEEInternational Conference on Communications, 2003. ICC ’03. , vol. 3,May 2003, pp. 1675–1679 vol.3.[54] A. Y. Nikravesh, S. A. Ajila, C. Lung, and W. Ding, “Mobile networktraffic prediction using mlp, mlpwd, and svm,” in , June 2016, pp.402–409.[55] S. Cao and W. Liu, “Lstm network based traffic flow prediction forcellular networks,” in
Simulation Tools and Techniques , H. Song andD. Jiang, Eds. Cham: Springer International Publishing, 2019, pp.643–653.[56] D. Magrin, M. Capuzzo, and A. Zanella, “A thorough study of lorawanperformance under different parameter settings,”
IEEE Internet of ThingsJournal
Pro-ceedings of the 2Nd International Conference on Embedded NetworkedSensor Systems