A Hybrid Approach to Enhance Scalability, Reliability and Computational Speed in LoRa Networks

The spreading out of Internet of Things (IoT) facilitates with new wireless communication Technologies. To have reliable communication for long duration, low power wide area can be aimed at sensor nodes. These days, LoRa has become a recognizable preference for IoT based solutions. In this paper LoRa network performance is analyzed. A hybrid technique is proposed to overcome the scalability, reliability and computational speed issues in LoRa network. In the proposed hybrid technique, a lightweight scheduling technique is used to address scalability and reliability issues and then pruning algorithm is also incorporated to enhance the computational speed of LoRa network for IoT applications. Further, LoRa network for IoT applications is analyzed using LoRaWAN NS-3 module and the parameters packet error ratio (PER), network throughput and fairness for improved reliability and scalability are illustrated. Simulation results are obtained for multiple gateways scenarios. The analysis presents that the LoRa network has addressed scalability and reliability issues using lightweight scheduling technique and computational speed is also enhanced using pruning algorithm. Therefore, the hybrid technique illustrated for LoRa network for IoT applications is in good agreement. Keywords—Hybrid technique; Internet of Things (IoT); lightweight scheduling; LoRa; pruning algorithm; scalability; reliability


I. INTRODUCTION
To accomplish enhanced horizontal integration among IoT service, data aggregation, smart management and protocol adaptation services are very much essential. An overview of IoT (Internet of Things) with importance on application issues, protocols and enabling technologies had been provided clearly in [1] by the author Ala Al-Fuqaha. The public availability of LoRa technology specifications is making it more momentum to balance current IoT standards as an enabler of smart city applications. LoRa supports a communications range of 5-15 km and thousands of devices can be connected to internet through a single LoRa gateway. It is a PHY (physical) layer technology built around CSS (Chirp Spread Spectrum) modulation. The major challenges faced by LoRa are: scalability, interference from other co-located networks and restrictions on duty cycle. Many researchers proposed various algorithms and designs to overcome these challenges and presented the performance evaluation of different parameters by simulating in NS-3 (Network Simualtor).

II. RELATED WORK
Authors in [2] have implemented a LoRa deployment test using LoRa network and presented LoRa coverage analysis. In [3] authors have presented the evaluation of LoRa for wireless sensor networks. A comprehensive analysis of LoRa modulation including the frame format, receiver sensitivity, data rate, spreading factor for IoT applications is described in [4]. A relative revision of LPWAN technologies for deployment of large scale IoT and known and unknown facts of LoRa are presented in [5][6]. In [7], a new private LoRa network is designed and implemented for IoT applications. Authors also addressed the hardware design and implementation of Lora Gateway and also the performance evaluation of LoRa networks in typical environments. The authors Brecht Reynders et al. [8] have designed a new MAC protocol RS-LoRa and presented a two-step lightweight scheduling algorithm to improve scalability and reliability of LoRaWAN networks. In this protocol, the entire bandwidth is splitted into a synchronous downlink channel and many asynchronous uplink/downlink channels as shown in Fig. 1.
LoRa gateways coordinated the lightweight scheduling in two steps. In the first step, the gateway schedules nodes dynamically by specifying the allowed SF (spreading factors) and transmission powers on each channel in a coarse-grained manner. In the second step, according to coarse-grained scheduling information sent by gateway, a node decides its own spreading factor transmission power, time and channel to transmit in a distributed manner. This proposed scheduling algorithm is implemented in NS-3 with the architecture illustrated in Fig. 2. With this architecture implementation, four different scenarios are simulated in NS-3: single cell scenario with one gateway for legacy LoRaWAN and RS-LoRa protocols and multi-cell scenario with seven gateways for legacy LoRaWAN and RS-LoRa protocols.
The author Floris Van den Abeele et al. [9] has presented the analysis of scalability of large scale LoRaWAN networks using NS-3. LoRaWAN. NS-3 module was modeled as presented in Fig. 3. By using one, two or four gateways, different scenarios are simulated and the scalability of LoRa networks was analyzed. www.ijacsa.thesai.org   In [10], the author Davide Magrin et al. implemented NS-3 model in urban environment to cram the performance of LoRa networks. The author Daniele Croce [11] investigated the link level performance of LoRa networks with quasi orthogonal spreading factor chrips. In [12], LoRa network performance with different PHY settings and environmental conditions was analyzed using experimental set-up. For confirmed and unconfirmed UL transmissions, performance investigation of Class A devices in LoRaWAN was presented in [13]. Using NS-3, system level and link level performance of LoRa networks was analysed for IoT and wireless sensor networks in [14][15]. Through a numerical model, LoRa performance was assessed with additive white Gaussian noise channels in [16]. In [17], authors analyzed the performance metrics of LoRa network by implementing efficient algorithms for spread factor assignment and power allocation. These algorithms have enhanced throughput and fairness with efficient energy consumption. This paper aims to address scalability and reliability issues along with improved throughput and fairness by incorporating lightweight scheduling technique in LoRa networks. In this paper, an energy efficient hybrid algorithm to enhance reliability and scalability with enhanced speed for large computations using pruning algorithm is proposed and implemented in NS-3. Rest of the paper is organized as: Section III presents the lightweight technique and algorithms to be used in LoRa networks. Section IV describes the implementation of LoRa network in NS-3 environment and the performance evaluation of simulated LoRa network in NS-3. Finally, the conclusion of paper is given in Section V.

III. LORA NETWORK DESIGN
A LoRa network consists of Gateway and end nodes. To address scalability and reliability issues a light-weight scheduling technique is implemented at Gateway as well as at end nodes. In this light weight scheduling technique at Gateway, spreading factor and allowed transmission power for each channel are specified and schedule accordingly. The end nodes have the freedom to select their own transmission parameters by following this scheduling information. These transmission parameters include selected channel, selected spreading factor and transmission power and offset time. Transmission power and spreading factor are the important factors that affect the reliability of a Lora network. The Lora Gateway can control the transmission power of each node and by varying the thresholds of received signal strength the amount of traffic can be increased or decreased thereby resulting in low or high reliability for that specific channel. Spreading factor value usually ranges from 7 to 12. To achieve high channel reliability more spreading factors should be allowed us different spreading factor packets can be received simultaneously. This also reduces the occurrence of collisions in the network. But more energy is consumed when more spreading factors are used in the network by different end nodes. Therefore a balance between energy consumption and reliability should be achieved. At the end notes in Lora network, lightweight scheduling technique is performed by determining the transmission parameters at each node by using the information transmitted by Lora gateway. At each note to determine the transmission parameters the following Algorithm-1 is presented. The input parameters from gateway are: I  channel set, P RSS  Received signal strength at node n, S j  set of allowed spreading factor for channel j, P j  target uplink received signal strength for channel j.
The transmission parameters determined at each node using light weight scheduling technique are: S n  selected spreading factor, (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 11, No. 9, 2020 465 | P a g e www.ijacsa.thesai.org P n  selected transmission power, C n  selected channel.
In the algorithm,  Probability of selecting spreading factor sf, P PL  Path loss power, and are the bit rate achieved with the spreading factor sf and ,

Algorithm-1: Determination of transmission parameters
Step 1: P Temp  0 Step 2: flag  false Step 3: for j I do Step 4: if P Temp < Pj < P RSS then Step 5: Step 6: Step 7: Step 8: end if Step 9: end for Step 10: if flag = true then Step 11: SF n  select spreading factor using ∑ # is the probability of selecting spreading factor of sf Step 12: P n  P Temp + P PL -2.5 SF n + P Offset Step 13: else Step 14: SF n  7 Step 15: Step 16: Step 17: end if In illustrated Algorithm-1, when a message is to be transmitted by a node, most suited channel is selected in step 3 to step 9. Upon selecting a suitable channel the random spreading factor is selected in step 11. Then in step 12 transmission power is calculated based on the selected spreading factor and target received signal strength. If a channel is not selected in step 3 to 9, indicates that the node is very close to Gateway and in such case the lowest spreading factor with value 7 is selected with minimum power consumption. This is presented in step 13 to 17. Finally transmission time for each node is selected at the end of the algorithm after selecting channel spreading factor and transmission power at each node.

IV. IMPLEMENTATION IN NS-3 AND PERFORMANCE EVALUATION
LoRa network is implemented in Network Simulator NS-3. The implementation architecture consists of four layers: physical, data-link, transport and application layers as described in [8]. For simulation setup initially multi-cell scenario with seven gateways are considered as illustrated in Fig. 4. In simulation setup, gateways are located at 30 meters height and nodes are located 1meter above the ground level. Via gateway, the nodes will transmit data packets to network server for every 2 minutes.
The parameters that are set-up in NS-3 simulation are tabulated in Table I. To investigate the performance of LoRa network, all seven gateways are enabled and the cell radius is increased. The end nodes are randomly distributed and for three values of nodes 1000, 2000 and 3500, simulations results are obtained. The performance parameters packet error ratio, throughput and fairness are analyzed here.

Packet Error Ratio:
The performance of scalability and reliability can be demonstrated using the parameter Packet Error Ratio (PER). In Fig. 5 packet error ratio for 1000 nodes and 3500 nodes has been illustrated by varying the gateway distance up to 1.4 Km. PER is 6.7% for 1000 nodes at a distance of 1.3 Km from GW1. It can be observed that PER is less when the nodes are at a distance of 700 -1000 m from GW1 and nearer to GW2, GW3, GW4, GW5, GW6 and GW7. The maximum PER achieved for 3500 nodes is only 20.7% and hence PER is improved. Therefore, scalability and reliability of LoRa network are enhanced using lightweight scheduling technique.   Throughput: The throughput of the LoRa network for lightweight scheduling technique under multi-cell scenario is presented in Fig. 6. The results are demonstrated for three different values of nodes: 1000, 2000 and 3500. It is 3.2Kb/s for 1000 nodes, 6.2Kb/s for 2000 nodes and 9.6Kb/s for 3500 nodes. The network throughput increases for increased number of nodes as the network reliability has been increased with lightweight scheduling technique.

Fairness:
The network performance can be increased by increasing the fairness parameter. The lightweight scheduling technique improves the fairness of network by reducing capture effect [8]. Fairness under multi-cell scenario 0is investigated for three values of nodes: 1000, 2000 and 3500 and the investigation results are illustrated in Fig. 7. For 1000 nodes the fairness is 99.6%, it is 98.4% for 2000 nodes and 95.1% for 3500 nodes. Hence, with improved reliability and reduced capture effect, fairness of LoRa network is enhanced.
For simulation, only seven gateways are considered as shown in Fig. 4 and the gateway distance is increased till 1.4Km. In real networks, especially in urban areas, network coverage area should be large and so 19 and 37 gateway scenarios are further considered in simulation. The gateways are placed around a central gateway in hexagonal grid structure as found in cellular coverage of large area. The arrangement of 19 and 37 gateways is as presented in Fig. 8. In simulations, each gateway covers a radius of 1500m and the end nodes are placed in a radius of 7500m. Inter-cell interference can be simulated for such large network. Fig. 9 illustrates the simulation coverage of end nodes in NS-3 with different gateway densities and their respective spreading factors.
In a realistic network model, simulation of such large network with 37 gateways and a coverage area of 7500m radius require some optimizations to speed-up the computations. Pruning algorithm is one such approximation which prunes the end nodes that cause unnecessary interference at the central gateway GW1 and speeds-up the simulation computations. Pruning algorithm is represented in Algorithm-2. Let R s be the simulation radius. Let I R be the set of end nodes that are centered on central gateway GW1 and inside the radius R. Let O R be the set of end nodes that are outside the radius R. Find the smallest R for which the total energy of inside end nodes is less than the energy of outside end nodes. Then prune all the end nodes in the set of O R by detaching PHYs from the channel and removing end nodes from simulation. The effect of pruning is well presented in Fig. 10.  (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 11, No. 9, 2020 467 | P a g e www.ijacsa.thesai.org (i) Nineteen Gateways.
(ii) Thirty Seven Gateways.  E inside  Energy of inside node E outside  Energy of inside node Table. II Describes the comparison of present work with previous related works.

Algorithm-2 End Nodes Pruning.
Input: R s  Simulation radius Step1: R  0 Step2: exit  false Step3: for SF 7, . . . , 12 Step4: for R < R s , exit  false Step6: for Each end device ed Step 7: if ed's SF e  SF Step 8: E  ed's energy for a transmission Step 9: if ed's distance from center < r Step 10: E inside  E inside + E Step 11: else Step 12: E outside  E outside + E Step 13: if E outside < E inside /10 Step 14: exit  true Step 15: else Step 16: R  R + ϵ Step 17: return (i) Without Pruning Algorithm.
(ii) With Pruning Algorithm.  V. CONCLUSION In this paper, a hybrid approach to improve scalability, reliability of LoRa network and to speed-up the computations in case of large networks is presented. Lightweight scheduling technique is used to enhance scalability and reliability of LoRa network. Performance parameters packet error ratio (PER), throughput of network and fairness among nodes are evaluated and illustrated. Then by considering large network with 19 and 37 gateways in NS-3 simulation, pruning algorithm is implemented to speed-up the computations by pruning end nodes that are outside the region of interest. www.ijacsa.thesai.org LoRa networks can be reliable and scalable and for real scenarios, computations can be speed-up. Further, this work can be carried out with real-time experimentation of LoRa network.
LoRa network and edge computing can be integrated together to have sustainable solutions for IoT applications.