Samir Dawaliby
email: samir.dawaliby@univ-poitiers.fr

Abbas Bradai
email: abbas.bradai@univ-poitiers.fr

Yannis Pousset
email: yannis.pousset@univ-poitiers.fr

Adaptive Dynamic Network Slicing in LoRa Networks

Keywords: Internet of Things (IoT), wireless networks, LoRa, network slicing, resource allocation, quality of service (QoS) 10

Knowing the heterogeneity of applications and services that need to to be supported in the internet of things (IoT), network slicing came out as a potential solution that virtually isolates 5G networks with various service requirements over a common physical network infrastructure. The latter needs to simultaneously support and isolate traffic issued from mobile and machine services which may require different needs in terms of reliability, latency, and bandwidth. In this paper, network slicing is investigated in LoRa networks over fixed and dynamic slicing strategies. The performance of LoRa slices is evaluated with different spreading factor (SF) configurations. Then, a dynamic inter-slicing algorithm is proposed based on a maximum likelihood estimation that avoids resource starvation and prioritizes a slice over another depending on its QoS requirements. Moreover, a novel intra-slicing strategy is proposed that maximizes resource allocation efficiency of LoRa slices with regard to their delay requirements. An energy module for LoRa in NS3 is also implemented to evaluate the energy consumption of devices in each slice. Simulation results performed in realistic LoRa scenarios highlight the utility of our proposition in improving QoS requirements of IoT devices and providing isolation between slices.

Introduction

With the development of the fifth generation (5G) wireless networks, it is expected that by 2020, an all-connected world of humans and machines will be reached offering with it the needed flexibility to manage networks with various service requirements using major arising technologies namely network functions virtualization (NFV) and software defined networking (SDN). With the development of the 5 latter, network slicing is proposed as one of the most important technologies to reach this goal by using a collection of logical functions. Our objective is to provide isolation between multiple virtual networks with various QoS requirements to be created on top of a common physical device, being mutually instantiated on-demand and independently managed.

Low-power wide-area (LPWA) research efforts direct towards LoRa technology and is considered resources need to be virtually reserved in an isolated and efficient manner to provide specific service requirements for each slice. Three generic services are provisioned in 5G with conflicting quality of service (QoS) requirements (i.e., ultra-reliable low-latency communications (URLLC), enhanced mobile broadband (eMBB), and massive machine-type communications (mMTC)). Service requirements in mMTC category may vary between two applications running on a single IoT device and require heterogeneous behavior mainly when it comes for example to latency and reliability. The massive number of IoT devices continuously increasing and connecting alongside mobile devices to the new generation core network (NGCN) in 5G, brings an exceptional need for network slicing and virtualization to improve network flexibility. This leads to new challenges in designing resource allocation and slicing strategies which must guarantee slicing isolation and simultaneously provide the opportunity for infrastructure providers to easily meet the required QoS for IoT devices in a cost-effective manner.

Related Works

Performance evaluation over LoRa networks has been intensively reviewed by many research studies in the literature [START_REF] Wixted | Evaluation of lora and lorawan for wireless sensor networks[END_REF] [2] [START_REF] Vatcharatiansakul | Experimental performance evaluation of lorawan: A case study in bangkok[END_REF]. Other research studies focused on evaluating LoRa scalability [START_REF] Mikhaylov | On lorawan scalability: Empirical evaluation of susceptibility to inter-network interference[END_REF] while considering co-SF interference that comes from collisions when using the same SF configuration on the same channel [START_REF] Georgiou | Low power wide area network analysis: Can lora scale[END_REF] whereas others assumed that SFs on a channel are perfectly orthogonal [6] [7]. SF represents the ratio between the chirp rate and the data symbol rate and affects directly the data rate and the range that a LoRa device can reach away from a LoRaWAN gateway. Moreover, co-SF directly impact communication reliability, reduces the packet delivery ratio (PDR) successfully decoded at the gateway [START_REF] Croce | Impact of spreading factor imperfect orthogonality in lora communications[END_REF] and limits the scalability of a LoRa network when increasing the number of devices [START_REF] Waret | Lora throughput analysis with imperfect spreading factor orthogonality[END_REF]. Therefore, the latter should be considered in any upcoming study related to SF configuration strategies and network deployments. Some study examples focused on finding the optimal transmitter parameter settings that satisfy performance requirements using a developed link probing regime [START_REF] Bor | Lora transmission parameter selection[END_REF].

In [START_REF] Lim | Spreading factor allocation for massive connectivity in lora systems[END_REF], the authors analyze several SF configuration strategies where a group of LoRa devices can be configured with similar or heterogeneous SFs based on their position from the gateway. The goal is to find the scheme that gives the best performance in terms of PDR. However, the impact of the latter configuration on network slicing has not been previously tested.

Few research works recently tackled network slicing in IoT and focused on machine critical communications over various wireless networks. The work in [START_REF] Nakao | End-toend network slicing for 5g mobile networks[END_REF] introduced a slicing infrastructure for 5G mobile networking and summarized research efforts to enable end-to-end network slicing between 5G use cases. Furthermore, authors in [START_REF] Gadallah | Dynamic lte resource reservation for critical m2m deployments[END_REF] and [START_REF] Rezende | An adaptive network slicing for lte radio access networks[END_REF] adopted network slicing in LTE mobile wireless networks. The former proposed a dynamic resource reservation for machine-to-machine (M2M) communications whereas the latter present a slice optimizer component with a common objective in both papers to improve QoS in terms of delay and link reliability. In a 5G wearable network, the authors took advantage of slicing technology to enhance the network resource sharing and energy-efficient utilization [START_REF] Hao | Network slicing technology in a 5g wearable network[END_REF]. Moreover in [START_REF] Delgado | Joint application admission control and network slicing in virtual sensor networks[END_REF], the authors perform slicing in virtual wireless sensor networks to improve lease management of physical resources with multiple concurrent application providers. In [START_REF] Kalør | Network slicing for ultrareliable low latency communication in industry 4.0 scenarios[END_REF], authors focused on URLLC and proposed several slicing methods for URLLC scenarios which require strong latency and reliability guarantees. Nowadays, guaranteeing service requirements in LoRa wireless access network (LoRaWAN) with traffic slicing remain as open research issues [START_REF] Adelantado | Understanding the limits of lorawan[END_REF]. Therefore, unlike the previous work, in this article network slicing is investigated in LoRa technology which, to the best of our knowledge, has not been treated before by the research community.

Contributions and outlines

Our main contribution with respect to the surveyed literature are stated as follows:

1. Network slicing is investigated over different SF configurations in order to evaluate system performance and find the one that serves best LoRa devices in each slice.

2. A dynamic inter-slicing algorithm is proposed where the bandwidth will be similarly reserved on all LoRa gateways based on a maximum likelihood estimation (MLE) and then the latter is improved and extended with an adaptive dynamic method that considers each LoRa gateway separately and reserves its bandwidth after applying MLE on the devices in its range. Both dynamic slicing propositions will be compared to a straightforward fixed slicing strategy in which the GW's bandwidth is equally reserved between slices.

3. An energy model for LoRaWAN is integrated in NS3 based on LoRa energy specifications to analyze the energy consumed in each slice and an intra-slicing algorithm is proposed that meets the QoS requirements of each slice in an isolated manner.

The remainder of this paper is organized as follows. Section II presents an overview of LoRa and describes the system model and the network slicing problem established in this paper. In Section III, the slicing algorithm is proposed and implemented over the LoRa module of NS3 simulator [START_REF] Magrin | Performance evaluation of lora networks in a smart city scenario[END_REF]. The performance evaluation of the algorithm and simulation results are analyzed and carried out through various scenarios in Section V. Finally, Section VI concludes the paper.

Problem Description

P rx k,l,m = P tx k,l,m g rx k,l,m g tx k,l,m L e ξ (2)
where P rx k,l,m and P tx k,l,m denotes the received and transmitted power with a channel antenna gain expressed with g rx k,l,m and g tx k,l,m respectively. L is the path loss which depends on the distance between the transmitter and the receiver and e ξ is the lognormal shadowing component with ξ ∼ N (0, σ 2 ).

Regarding interference, signal-to-interference-plus-noise ratio (SINR) varies based on the adopted SF 95 on each device. The assumptions in [START_REF] Magrin | Performance evaluation of lora networks in a smart city scenario[END_REF] are followed where a packet should survive interference that comes from other LoRa transmissions. Each LoRa device experiences a SINR value computed based on the Eq. 3 below:

SIN R i,j = P rx i σ 2 + n∈∂j P rx n (3)
where P rx i is the power of the packet n under consideration sent by device with SF = i and ∂ j a set of interfering packets with a common SF = j. Each element in the below matrix [START_REF] Goursaud | Dedicated networks for iot: Phy/mac state of the art and challenges[END_REF] denotes the minimum signal power margin threshold V i,j , with i, j ∈ {7, ..., 12}, that a packet sent with SF = i must have in order to be decoded successfully over every interfering packet with SF = j. Hence, packet survives interference with all interfering packets if, considering all combinations of SF, a higher power margin value (dB) is satisfied than the corresponding co-channel rejection value. In this paper, log-distance propagation loss model is adopted to evaluate the performance of LoRa devices in a dense environment and is expressed following to the Eq. 4 below:

SF
L = L 0 + 10.n.log 10 ( d d 0 ) (4)
where L denotes the path Loss (dB), d the length of the path (m), n represents the path loss distance exponent, d 0 the reference distance (m) and L 0 the path loss at reference distance (dB).

System Model

Network slicing in a LoRa-like network is considered in this work, consisting of a set of K = {1, 2, ..., k} LoRa devices and M = {1, 2, ..., m} LoRa Gateways (GWs) plotted over a cell and connected to external LoRa Servers via fronthaul links. Compared to Sigfox [START_REF] Zuniga | Sigfox system description[END_REF], NB-IoT [START_REF] Ratasuk | Nb-iot system for m2m communication[END_REF] and other

IoT technologies, LoRa is more resilient to interference and jamming [START_REF] Cattani | An experimental evaluation of the reliability of lora longrange low-power wireless communication[END_REF] thanks to its ability to efficiently trade communication range with high data-rate. Network slicing mainly brings flexibility to the network by virtually reserving physical resources in order to meet the QoS requirements of each slice.

In IoT, each device requires specific QoS requirements in terms of delay and reliability depending on the running IoT application. A slicing framework is defined that consists of a set of L virtual network slices such that L = {1, 2, ..., l} can be created on physical network hardware, more specifically on LoRa GWs, where the bandwidth of each GWs is divided into l slices with l ∈ L, as shown in Fig. 1 below. The main goal behind slicing is to virtually split the network by reserving resources for each slice on the same physical device with each slice l characterized by a priority sp l and a bandwidth b l,m at the GW level. A set of virtual flows F is defined where a device k associated to slice l generates a flow f k,l,m that goes from the GW m to LoRa servers and is characterized by a utility metric U k,l,m specified later on in this paper. LoRa GWs in range will receive the packets but only one GW slice forwards the packet to LoRa servers to avoid duplicated packets.

Problem formulation

In this work, optimizing network slicing in IoT is a threefold problem and involves: 1) LoRa devices admission and association to slices; 2) Finding the best inter-slicing resources reservation strategy; 3)

Intra-slice resources allocation. First, L slices are defined based on the delay urgency factor and reliability requirements of each device. Each device is assigned next to the slice that meets best its service latency requirement. It is noteworthy that in IoT, the delay urgency and reliability represents the major key factors to define the priority of a device over another without neglecting the service type and the congestion that results from the large amount of IoT devices. Next, based on throughput requirements of each slice, slicing rate is estimated to define capacity c l that needs to be reserved for each slice l. Each GW m reserves for each slice, some of its physical receiving paths and each member of a slice is characterized by a specific utility value U k,l,m . Finally in the third step, intra-slice resource allocation is optimized by assigning each device in slice l to the most efficient virtual flow with the highest utility metric. Let α k,l ∈ {0, 1} be a binary variable that indicates whether a device k is associated with a flow f k,l,m ∈ F . The goal is to maximize the number of LoRa devices assigned to virtual flows in a way that maximizes the utility function adopted by each slice members. Therefore, the slicing and resource allocation problem for IoT can be formulated as

M ax k∈K l∈L α k,l U k,l,m , ∀m ∈ M (5)
subject to

C1 : l∈L α k,l = 1, ∀k ∈ K (6a) C2 : k K β k,m p k,l,m ≤ P max m , ∀m ∈ M, ∀l ∈ L (6b) C3 : k K α k,l β k,m r k,l,m ≤ R max l,m , ∀l ∈ L, ∀m ∈ M (6c) C4 : β k,m = 1 if device k is assigned to gateway m. 0 Otherwise. ( 6d
)
Knowing that multiple virtual network slices are isolated and built on top of a common physical gateway, (6a) ensures that each device should always choose exactly one and only network slice even if the latter was implemented on different physical gateways. Hence in a multi-gateway scenario, the device assigned to a slice will only have the option to choose between the flows that leads to the slice it belongs to. The total transmission power of each GW m is limited in constraint (6b). Moreover, constraint (6c) guarantees the sum of uplink traffic sent by slice members do not exceed the maximum data rate capacity of the slice that can be sent through each gateway. Constraint (6d) ensures binaryassociation values β k,m between a physical IoT device k and a physical LoRa gateway m. Table 2 below summarizes the key denotations adopted in the paper.

The Proposed Slicing Algorithm

In LoRa networks, the general control plane and resource management module are centralized and moved to a management and control entity (MCE) in the cloud to ensure an efficient coordination of resources. Hence, LoRa servers will be the final decision maker in assigning the devices to the appropriate slice and defining the gateway that will transmit the packet following to a three-steps optimization algorithm. In the first step, each device will be assigned to the slice that meets its QoS requirements based on a balanced iterative reducing and clustering method using hierarchies (BIRCH).

Next, after assigning each device to its corresponding slice, GW resources will be dynamically reserved for each slice based on a maximum likelihood estimation (MLE) before finally forwarding the packet to LoRa servers through the GW that provides the maximum utility value.

BIRCH-based Slicing Definition

Due to the ultra-dense nature in an IoT, BIRCH algorithm is adopted [START_REF] Zhang | Birch: an efficient data clustering method for very large databases[END_REF] which belongs to the agglomerative hierarchical clustering family and was proven as the best available clustering method for handling large datasets [27] [28]. The main goal behind this method is to define slices by checking the QoS requirements of each MTCD and moving from a large set of devices into a group of subsets with similar QoS requirements. The most urgent devices are the ones that have the closest instant delay d k to their packet delay budget P DB k and are assigned the highest priority. u k denotes the urgency factor of device k with u k = d k /P DB k . Given K l devices in a cluster l, the latter will be considered as a utility point u k of each device in a cluster with k = 1, 2, ..., K l . Each node in the CF-tree is a cluster of subclusters defined by a clustering feature CF as follows:

CF = (K l , LS, SS) = (K l , K l k=1 u k , K l k=1 u 2 k ) (7)
where K l denotes the number of devices in the cluster, LS the linear sum of the K l utility points and SS the square sum of the K l utility points. BIRCH dynamically builds a CF-tree, at each time a new MTCD is inserted based on two parameters: a branching factor B and a threshold T . Each parent node contains a maximum number of B childs and a single child node contains at most T entries. In this problem, B represents the number of L slices created with K l the group of devices admitted to slice l. Hence, l nodes derive from the root representing the slices created with each slice is made up 170 of a group of subclusters. Therefore, entries in CF-tree are not considered as devices but as a set of subclusters C that belongs to slice l and groups LoRa devices with nearly similar utility points. As explained in Pseudo-code 1, the algorithm scans the clusters from the root (line 3) and recursively traverses down the CF-tree and chooses the closest node at each level with the smallest average inter-cluster distance D as follows:

Pseudo

minD = K l k=1 K l +K l k =K l +1 (u k -u k ) K l K l 1/2 , ∀k ∈ K l , ∀k ∈ K l (8)
After defining the candidate child node, a test is performed to find the closest CF-entry and defines if the device can be added to the candidate subcluster without violating the threshold condition. If so, the algorithm groups the node with the chosen entry and updates the CF-entry of the candidate 175 subcluster (line 4). If not, a new entry is created for the node inside the candidate child node without breaking the branching factor condition (line 5-6). Otherwise, the child node is splitted and the utility points are redistributed based on the closest distance criteria to obtain a set of new subclusters that do not break the branching factor constraint (line 7-8). In case the number of childs already reached the maximum, the parent nodes are splitted and the childs are redistributed to the closest parents (line 9-10). After inserting the CF-entry, all CF informations of the path are updated from the inserted information to the root (line 13).

Dynamic MLE-based Inter-Slicing Algorithm

Knowing that the physical capacity c in terms of radio resources of a GW m is limited. The goal of this scheme is to estimate and reserve the appropriate resources by finding the maximum likelihood buffer demands for each slice l starting by the one with the highest slicing priority. In this work, the traffic that needs to be uploaded follows a Poisson distribution and LoRa servers are aware of the amount of data stored in the buffer B i of each slice member.

Lemma 1. Let T i be the throughput needed by each device i, ∀i ∈ K l captured at each slicing interval time and identified by a corresponding probability distribution. For a fixed physical capacity, the optimum slicing strategy is to virtually reserve resources for each slice based on the mean throughput of its members.

Proof : T i follows a Poisson distribution P(λ i ) where λ i denotes the throughput needed by device i assigned to slice l, ∀i ∈ K l . Let f (T i |λ i ) be a probability density function similar to L(λ i |T i ) that represents the likelihood of λ i given the observed throughput.

L(λ|T 1 , T 2 , ..., T K l ) = f (T 1 |λ 1 )f (T 2 |λ 2 )....f (T l |λ l ) L(λ|T 1 , T 2 , ..., T K l ) = K l i=1 e -λi λ Ti i T i ! logL(λ|T 1 , T 2 , ..., T K l ) = log K l i=1 e -λi λ Ti i T i ! logL(λ|T 1 , T 2 , ..., T K l ) = K l i=1 log e -λi λ Ti i T i ! logL(λ|T 1 , T 2 , ..., T K l ) = K l i=1 -λ + T i logλ -log(T i !) logL(λ|T 1 , T 2 , ..., T K l ) = K l λ i + K l i=1 T i logλ i
To find the maximum likelihood parameter, the first derivative is applied and solved to zero.

∂logL(λ|T 1 , T 2 , ..., T K l ) ∂λ = -K l + K l i=1 T i λ i = 0 λ i = K l i=1 T i K l , ∀i ∈ K l
Hence, λ i represents the optimal parameter estimation which proves that the optimal slicing decision is to consider the mean throughput of each slice members. However, slices are not equal in terms of priority. Therefore, the resource on GWs will be dynamically allocated to the most urgent slice starting by the channel with the highest reliability. Let Θ i = λ i / l i=1

T i be the slicing rate based on which the algorithm reserves for each slice a capacity c i,m = c m .Θ i , ∀i ∈ L. Pseudo-code 2

summarizes the intra-slicing algorithm and starts with the most critical slice (line 2). Depending on the slicing strategy, the algorithm equally reserves the bandwidth between slices based on a straightforward fixed slicing (FS) (line [START_REF] Rezende | An adaptive network slicing for lte radio access networks[END_REF][START_REF] Hao | Network slicing technology in a 5g wearable network[END_REF][START_REF] Delgado | Joint application admission control and network slicing in virtual sensor networks[END_REF] or estimates the needed throughput λ i of all slice l members in the case of Dynamic Slicing (DS) strategy, defines Θ l for channels reservation and reserve a part of the bandwidth on all LoRa GWs in a similar manner (line 3-7). If the adaptive dynamic slicing (ADS) was adopted, slicing rate of each slice Θ l varies from a GW to another because in this case, MLE estimates throughput of each slice members deployed in the range of the corresponding GW m (line [START_REF] Croce | Impact of spreading factor imperfect orthogonality in lora communications[END_REF][START_REF] Waret | Lora throughput analysis with imperfect spreading factor orthogonality[END_REF][START_REF] Bor | Lora transmission parameter selection[END_REF][START_REF] Lim | Spreading factor allocation for massive connectivity in lora systems[END_REF][START_REF] Nakao | End-toend network slicing for 5g mobile networks[END_REF][START_REF] Gadallah | Dynamic lte resource reservation for critical m2m deployments[END_REF][START_REF] Rezende | An adaptive network slicing for lte radio access networks[END_REF]. The algorithm moves next to the following slice, repeats the process and stops when no resources are left for reservation.

Intra-Slicing Resource Allocation Algorithm

After defining and reserving the radio resources for each slice, the goal in this section is to maximize the utility function of slice members. Here, utility function for each slice is computed based on multiple criteria weights w r and w ld for reliability and load respectively manipulated using the analytical and

U k,l,m = U k,l,m + U k,l,m (12)
Each LoRa device k assigned to slice l searches for the most efficient virtual flow through GW m with the objective to find the highest utility metric U k,l,m as shown in the Pseudo-code 3 below.

Pseudo

Performance Evaluation

In uplink, centralized servers enable the opportunity to make efficient slicing configurations based 235 on data traffic in the buffer of each LoRa device. In this work, LoRa model is adopted [START_REF] Magrin | Performance evaluation of lora networks in a smart city scenario[END_REF] to simulate the network in the open source NS3 simulator [START_REF] Nsnam | [END_REF]. For additional implementation details, we invite the readers to check the work in [START_REF] Magrin | LoRaWAN Module Documentation[END_REF] which includes a complete description of the model and integrate it in NS3 platform. Each simulation is replicated 50 times and results are plotted with 95% confidence intervals with respect to the parameters shown in the first section of The experiment is realized in a realistic LoRa scenario where devices are choosing a random time for transmission but periodically uploading to LoRa servers small packet payloads that varies from 10 to 20 Bytes. Simulations start with 100 devices to emulate a load of one due to the legal dutycycle limitations of 1% in the European region [START_REF] Augustin | A study of lora: Long range & low power networks for the internet of things[END_REF]. The maximum number connected to a single gateway is limited to 1000 devices following to the scalability study in [START_REF] Haxhibeqiri | Lora scalability: A simulation model based on interference measurements[END_REF]. LoRa servers allow 8 MAC retransmissions for IoT devices before defining a packet delivery failure. Moreover, LoRa devices and gateways are both placed over a cell of 10 KM radius following to a uniform random distribution. Each device is configured with spreading factors that varies from 7-12 when uploading traffic to LoRa GWs.

Each GW is characterized by 8 receiving channels in the 867-868 MHz european sub-band. Based on the Eq. 13 below, energy consumption is evaluated when the number of LoRa devices increases in each slice.

E k,l,m = p tx i + p rx i V + epa .d tx/rx (13)
where E k,l,m is the energy consumed by an IoT device, V the LoRa supply voltage, epa the amplifier's added efficiency, d tx the duration of transmission, p rx i the power of reception and p tx i the power of transmission that varies between 2 and 14 dBm based on the spreading factor i adopted. An energy module for LoRa module is integrated in NS3, inspired by the one that already exists for Wifi, and is characterized with specific energy parameters and power model for LoRa [START_REF] Blenn | Lorawan in the wild: Measurements from the things network[END_REF] as listed in the second section of Table 4 below.

Proof of Isolation

The very first step before investigating slicing strategies is to prove the isolation concept. Assuming that all devices are uploading packets to a single LoRa GW. The number of LoRa devices is fixed to 20 in HCC slice and the rest of devices in the network are assigned to M CC and LCC slices. Fig. 3 proves the isolation concept because when the number of devices increases in M CC and LCC slices, HCC members were not affected and the percentage of packet loss rate (PLR%) remained constant and nearly null whereas PLR increased in M CC and HCC slices in a more congested scenario.

SF Configuration Variation

In this section, the performance of LoRa slices is evaluated with different SF configurations for a fixed number of 300 devices. Three major slicing strategies are considered, namely static configuration where all devices in the cell are configured with the same SF, dynamic -random where each device randomly picks a SF value and finally the dynamic -adaptive where each LoRa device estimates the best SF configuration depending on the receiving power measured from the gateway. In static configurations, the test is repeated for each SF value. However, regarding dynamic configurations, a device with a powerful receiving signal picks a small SF value whereas edge nodes are generally configured with larger SF values. Table 5 and Table 6 summarize the mean PLR% for each SF configuration with a fixed and variant packet transmission intervals respectively. Packets may be lost when the gateway is saturated due to the load in the network (Congestion PLR%), due to co-channel rejection (Interference PLR%) or due to lack of sensitivity when the packet is out of range or when it doesn't reach the gateway due to an appropriate SF configuration (Sensitivity PLR%).

Fixed Packets Transmission Period

In this subsection, a decent comparison is performed between SF configuration methods for a fixed packet transmission interval. Each device randomly select a time for transmission and then it periodically uploads a packet each 50s. static -SF 12 scored the highest PLR percentage. By adopting this configuration, packets transmitted occupy the spectrum for the longest time on air.

Therefore, the highest impact on PLR% was reached due to congestion. Packets arrive at constant intervals and cannot be decoded due to gateway saturation. It is noteworthy to mention that no packets were lost due to lack of sensitivity because increasing the spreading factor increases at its turn the range and the probability for successfully decoding a packet. Unlike static -SF 12, devices with static -SF 7 configuration lost more than half of the packets. However this time, the main loss was due to lack of sensitivity for packets that are mainly transmitted by edge nodes and cannot reach the gateway because SF7 offers the shortest range capability between SF configurations. Following these assumptions, one can now understand why static -SF 9 could be placed as a trade-off between range and spectrum occupation with the best overall PLR% between the measured static configurations. As previously mentioned, increasing SF configuration also increases the time occupation of packets sent, which also increases the interference PLR% because the probability of receiving packets with the same SF configuration at the same time will also increase. devices by measuring the receiving power that a GW gets from the device depending on its position.

The advantages that the latter configuration present are two-fold: first, depending on how far the device is from the gateway, a smaller distance requires a smaller SF configuration and secondly, the fact of adopting different SFs configuration reduces interference PLR and the probability of collisions.

Regardless of the adopted SF configuration method, the urgency character of HCC slice members explains the low percentage in terms of PLR compared to M CC and LCC slices. Urgent packets are not sent as often as other slices which reduces the probability of packets collision.

Variant Packets Transmission Interval

In Fig. 4, static -SF 9 is considered as the best static SF configuration and is compared to dynamic -random and dynamic -adaptive SF configurations when the packets transmission period increases. PLR increases in more congested scenarios. However, it is noteworthy that regardless of the adopted configuration, increasing packets transmission interval decreases the intensity and the congestion in the network. This can be shown with the decreasing behavior of all configurations for a common set of devices simulated. static -SF 9 meets the performance configuration for high transmission intervals which proves the utility of the former in realistic scenarios where the congestion is normally higher due to the massive number of IoT devices. Moreover, reducing congestion had the same impact on slices. Detailed results are shown in Table 6 below. For each transmission interval, it is shown how the percentage of PLR is distributed on each slice. Moreover, increasing the transmission period decreased PLR percentage in all slices while having the smallest impact on HCC slice with the highest reliability requirements. Following to previous simulations, dynamic -adaptive SF configuration is adopted which has proved its worthiness for this study. The goal in this section is to evaluate the performance of the f ixed (F S), dynamic (DS) and the adaptive-dynamic (ADS) slicing strategy. With F S, the number of receiving paths is reserved in an equal manner and is compared to DS and ADS strategies where slicing decisions are performed using MLE throughput estimation for each slice starting with the one with the highest priority. Moreover, the impact of adding load metric to utility calculations is studied for each slicing strategy when the number of LoRa devices assigned to each slice increases. Each slice in a LoRa gateway suffers from congestion, decreasing with it the probability of successfully decoding the packet. Simulation results in Fig. 5 prove the efficiency of load consideration when computing The goal of this study is to measure the metric that identifies underutilized channels in each slice with FS, DS and ADS strategies. Based on Eq. 14, we evaluate in Fig. 7 the Jain's fairness index of each slicing strategy as follows:

F airness index = ( n i=1 x i ) 2 n n i=1 x 2 i ( 14
)
where x i denotes the normalized throughput of each IoT device and n is the total number of active devices in each slice. Jain's fairness index varies between 0 and 1 with 1 being perfectly fair. ADS strategy provides the best distribution compared to DS and F S strategies as plotted in Fig. 7a and

Conclusion

In this paper, network slicing is evaluated in LoRa technology with the goal of maximizing utilities in each LoRa slice. Therefore, static slicing is improved with an adaptive dynamic inter-slicing algorithm that was proposed based on a maximum likelihood estimation. An intra-slicing algorithm is also introduced that improves resource allocation to meet the QoS requirements of each slice. Numerical results show the effectiveness of the proposed adaptive dynamic slicing strategy and how it outperformed static and dynamic slicing and improved the efficiency of LoRa devices in terms of reliability, energy consumption and the percentage of satisfied devices with regard to their delay requirements.

However, there's still a room to improve the proposed slicing strategy in terms of reliability and energy consumption. It would be interesting to focus in the future on improving the energy efficiency in LoRa network slicing, by optimizing LoRa parameters configuration without degrading the QoS performance in the network.

Figure 1 :

 1 Figure 1: IoT Slicing architecture in LoRa Networks

Pseudo-code 2 2 if method=DS then 3 for each GW m do 4 for each slice l ∈ L do 5 Apply 6 end 7 end 8 else if method=ADS then 9 for each GW m do 10 for each slice l ∈ L do 11 Apply 13 end 14 else 15 Reserve capacity c l,m equally between slices 16 end 17 end

 223456789101113141517 Adaptive Dynamic Intra-Slicing Algorithm Input : Capacities c m , c n ; Number of slices L; Set of Throughput Requirements T l 1 begin Put slices in decreasing order based on priority sp l MLE Estimation based on the throughput required by all slice l members Define Slicing Rate Θ l and Reserve capacity c l,m MLE Estimation based on the throughput required by slice l members in the range of GW m Define Slicing Rate Θ l and Reserve capacity c l,m 12 end Output: Set of resources reserved for each slice l

Figure 2 :

 2 Figure 2: Flow modeling for IoT Network Slicing

-code 3 2 3 Put devices in decreasing order based on u k for each device k ∈ K l do 4 5 end 6 end 7

 3234567 Max-Utility Inter-Slice Resource Allocation Input : Set of LoRa devices K, GWs M , slices L and capacity c 1 begin Initialize flow utilities to null for all e ∈ E for each slice l ∈ L do Draw network N (V, E) Find path with the highest utility U k,l,m Allocate device k to f k,l,m Update capacity c l,m end Output: Max-Utility flows allocation for LoRa devices

Figure 3 :

 3 Figure 3: Proof of Isolation

Figure 4 :

 4 Figure 4: Performance Study with/without considering load in metric calculations

Figure 5 :Figure 6 :

 56 Figure 5: Packet Loss Rate in each Slice with various Slicing Strategies

Figure 7 :

 7 Figure 7: Fairness Evaluation in each Slice with various Slicing Strategies

Figure 8 :

 8 Figure 8: Mean Energy Consumption Variation

  7 SF 8 SF 9 SF 10 SF 11 SF 12

	SF 7 -6	16	18	19	19	20
	SF 8	24	-6	20	22	22	22
	SF 9	27	27	-6	23	25	25
	SF 10 30	30	30	-6	26	28
	SF 11 33	33	33	33	-6	29
	SF 12 36	36	36	36	36	-6

Table 2 :

 2 List of parameters

	Parameter Parameter Name
	M	the set of LoRa Gateways
	K	the set of LoRa Devices
	L	the set of Slices
	K l	the set of devices associated to slice l
	∂ j	the set of packets with SF = j
	f k,l,m	virtual flow for device k in slice l through GW m
	U k,l,m	utility for device k in slice l on GW m
	sp l	slice priority of slice l
	b l,m	bandwidth assigned for slice l over GW m
	P max m	maximum transmission power of GW m
	g k,l,m	power gain between a GW m and a device k
	e ξ	lognormal shadowing component
	α k,l	admission index of device k to slice l
	β k,m	association index of device k to GW m
	u k	urgency factor for device k
	d k	instant packet delay for device k
	P DB k	packet delay budget for device k

  -code 1 BIRCH-based Slicing Admission algorithm Input : Set of devices K, diameter D, branching factor L, threshold T 1 begin

	2	Initialize as many clusters as devices
		for each k ∈ K do
	3	Start from root
		Search for closest child node according to D
		Search for closest subcluster according to D
		if number of entries < T then

4 Add k to subcluster C l,l Update CF of C l,l 5 else if number of childs < B then 6 Create a new subcluster C l,l Add k to C l,l Update CF of the parent node S l 7 else if number of parents < B then 8 Split child nodes and redistribute CF entries according to closest D 9 else 10 Split parent nodes 11 end 12 end 13 Update CF entries in CF-tree 14 end Output: Set of groups G l (l=1,2,...,L)

Table 4 .

 4

	240
	Simulation Parameters
	Simulation Time	300 seconds
	Slicing Interval Time	50 seconds
	Cell Radius	10 KM
	Number of replications	50
	MAC retransmissions	8
	LoRa devices and GWs distribution Random Uniform
	Propagation loss model	Log-distance
	Bandwidth	125 kHz
	Spreading Factor	{7,8,9,10,11,12}
	Confidence intervals	95%
	European ISM sub-band	863-870 MHz
	Power Consumption Parameters [21]
	Battery Maximum Capacity	950 mAh
	LoRa Supply Voltage	3.3V
	Amplifier Power's added Efficiency	10%
	Connected (Tx/Rx-SF7)	2 dBm
	Connected (Tx/Rx-SF8)	5 dBm
	Connected (Tx/Rx-SF9)	8 dBm
	Connected (Tx/Rx-SF10)	10 dBm
	Connected (Tx/Rx-SF11-12)	14 dBm
	Standby	0.09 mW
	Sleep	0 mW

Table 4 :

 4 Simulation Parameters

Table 5 :

 5 Packet Loss Rate Variation with various SF configurations

Table 5

 5 illustrates PLR percentage for each category in each slice. Results show that dynamicadaptive configuration was the most reliable technique because SFs are dynamically configured on LoRa

hierarchy process (AHP) approach. The latter is proved as a very decent method for multi-criteria decisions and was adopted in many applications [START_REF] Vaidya | Analytic hierarchy process: An overview of applications[END_REF]. High critical communications (HCC) slice: requires the highest slicing priority due to urgency and reliability requirements of its members, i.e: surveillance, emergency alerting and alarm monitoring.

Based on the QoS table proposed in

Based on Eq. 9, U HCC is computed to define the utility for critical communications with σ r = SIN R k,l,m /SIN R max the rate of reliability of SINR that a device k achieves on a flow f k,l,m over the highest flow reliability that can be achieved through slice l and δ r , a binary variable that guarantees a minimum threshold when searching for the highest reliability links.

Medium critical communications (MCC) slice: requires lower priority consideration and are less critical in terms of delay. This slice presents a trade-off between reliability and load, i.e: health sensors and home security systems.

Low critical communications (LCC) slice: requires the lowest priority due to their non-guaranteed data rate and delay-tolerant QoS requirements, i.e: smart metering applications.

The algorithm searches in each slice for the gateway that offers the most robust and reliable link with lowest delay [START_REF] Rogier | Network performance : Links between latency throughput and packet loss[END_REF], finds the highest U HCC metric and allocates resources accordingly. Increasing the number of devices will decrease the reliability of links due to congestion. In some cases, the most reliable link may be overloaded due to the increasing number of devices and should not be taken into consideration. Hence in Eq. 10, U M CC is defined to search for the flow that gives the best tradeoff solution and offers the highest reliability with the lowest possible load. And finally in Eq. 11,

LCC slice includes delay-tolerant devices with high packet delay budgets. Therefore, only the load is considered in the latter without taking reliability into consideration.

In Fig. 2, the mean values of slices with and without considering load in metric calculations. Being load-aware improves reliability in the network. When congestion in the network increases, the traffic is balanced to the corresponding slice but on a less-loaded gateway. Reliability on all slices improved especially in LCC slice because its most of its members lose previously lost their packets due to congestion. In a comparison between each slicing strategy, ADS with load consideration showed the most reliable performance for HCC and M CC slice as plotted in Fig. 5a and Fig. 5b respectively. This returns for example to the case of HCC slice where the sporadic nature of packet transmissions requires low latency and high reliability with unsteady throughput needs. Therefore, an appropriate estimation of throughput improves slicing and should be considered on each GW separately because it differs from a gateway to another. Moreover, Fig. 5b shows that considering load in metric calculations scored approximately 50% improvement in the PLR% of LCC slice members. However, this did not prevent ADS from being the lowest reliable strategy in LCC slice. The reason returns to the fact that ADS prioritizes a slice over another and reserves for it the needed bandwidth unlike F S where the bandwidth is equally reserved between slices. LCC members do not always get the needed bandwidth required for transmission when a small capacity is fixed for this slice. The performance of each slice is evaluated next using ADS with a load strategy in terms of energy consumption and the percentage of devices that respected their delay deadlines.

Percentage of Unserved nodes

The efficiency of ADS is mainly shown in Fig. 6 below. With ADS, LoRa devices had the highest percentage of devices that respected their delay deadlines compared to DS and F S strategies with an unserved rate that never exceeded 10% of the total number of packets transmitted. This highlights the importance of including urgency priority in slicing strategies and considering reliability in intra-slice resource allocation algorithm due to its direct impact on the spreading factor configuration and the spectrum occupation time.