Skip to main content

Dynamic multi-frame multi-spreading factor scheduling algorithm for LoRaWAN

Abstract

Long-Range Wide Area Network (LoRaWAN), as Low Power Wide Area Network that connects battery-powered devices, has gained much attention lately. The LoRaWAN technology uses ALOHA as the medium access control where the End Devices (EDs) transmit data randomly and re-transmit up to eight times if collisions occur, which is not feasible in large networks. Several techniques, including synchronization and scheduling schemes, to address the challenge have been reported. However, the existing synchronization and scheduling algorithms transmit synchronization messages randomly using one super frame with fixed time slots that accommodate devices using different Spreading Factors (SFs). This phenomenon can result in collisions, idle slots, and inefficient energy use, hence limiting the LoRaWAN network scalability. To alleviate the aforementioned problems, this work proposes a dynamic Multi-Frame Multi-Spreading Factor (MFMSF) scheduling algorithm with slotted synchronization approach. In the proposed algorithm, the time slots are assigned dynamically to EDs on first to synchronize first to be assigned basis. It was revealed that the proposed dynamic MFMSF TDMA algorithm is more energy-efficient than the existing algorithm in a denser network with devices arranged in a circular disk with different radii. The packet delivery rate for the dynamic MFMSF TDMA is about 99% signifying reduced collisions during data transmission. This implies that the use of the proposed dynamic MFMSF scheduling algorithm in LoRaWAN allows large number of EDs to communicate with reduced collisions and enhanced energy efficiency of the battery-powered devices.

Introduction

Long-Range Wide Area Network (LoRaWAN) has recently attracted the attention of many researchers and industrial practitioners due to its affordability. The LoRaWAN network operates in an unlicensed Industrial Scientific Mechanical (ISM) band which is region specific. LoRAWAN also provides a long-range communication for Internet of Things (IoT) devices [3, 22] with promising long-life batteries [15]. The technology is divided into physical and the Medium Access Control (MAC) layers with pure ALOHA as the default Media Access Control (MAC) protocol [9]. In ALOHA, end devices (EDs) are allowed to transmit randomly and re-transmit the same packet up to eight times in case of transmission failure [21]. The random nature of ALOHA limits the network scalability due to collisions, especially in denser networks [6]. Several methods including Slotted ALOHA [18], Carrier Sense Multiple Access (CSMA) [11], new MAC layer protocols [23] and scheduling schemes [1, 10], have been proposed to address the limitations of using ALOHA in LoRaWAN.

In Slotted ALOHA (S-ALOHA), the channel is divided into slots and (EDs) are allowed to transmit randomly at the beginning of a slot [18]. The use of S-ALOHA can result in collisions if more than one device attempts to transmit at the beginning of a slot. The use of CSMA and Listen Before Talk (LBT) [4] senses an idle channel before data transmission, which reduces collisions significantly. However, sensing of an idle channel before data transmission consumes the energy of the battery-powered devices which impact the EDs’ lifetimes. Lastly, the use of synchronization and scheduling algorithms results in reduced collisions [5, 9, 10]. However, some of the scheduling solutions such as [20] define a fixed time slot for each ED to transmit without considering the synchronization which may result in collisions due to ED clock drifts caused by the change in surrounding temperature and device aging. Other scheduling solutions as [1] synchronize the EDs before data transmission, in their fixed scheduled time slot, which causes unavoidable collisions . The synchronization collisions in the existing synchronization and scheduling algorithms are energy-inefficient and intolerable by the battery-powered devices.

Therefore, this work proposed a dynamic Multi-Frame Multi-Spreading Factor (MFMSF) Scheduling algorithm with slotted synchronization approach to reduce collisions and improve network scalability in the existing synchronization and scheduling algorithms. In the proposed dynamic MFMSF scheduling algorithm, synchronization is slotted and the time slots are assigned dynamically to EDs which are grouped according to their SFs based on first to synchronize first to be assigned basis. The synchronization phase is separated from the data transmission phase to avoid collisions between resynchronization and the data packets. In addition, the proposed dynamic MFMSF TDMA Scheduling algorithm uses multiple frames in multiple Spreading Factors (SFs) to improve the network scalability

The rest of this paper is organized as follows;similar works are revised and discussed in the “Related works” Section. A discussion of what motivated this study to be conducted is presented in the “Motivation” Section. The system design is presented in detail under “System model” Section. The proposed algorithm is presented under “Proposed dynamic MFMSF scheduling algorithm” section. The performance evaluation of the proposed algorithm is discussed in the “Performance evaluation” section. Finally, the paper presents ”Conclusion and suggested works” that can be done to further improve the performance of LoRaWAN network.

Related works

Several studies in the literature addressed the limitations imposed by ALOHA in LoRaWAN. In [7], the authors proposed the use of CSMA to reduce collisions, in which the EDs must check the channel’s status before data transmission. To further lower the collisions, the authors proposed CSMA-x where the EDs listen to the channel for interval x before transmissions. These methods are not energy-efficient as they use the ED’s limited power to sense an idle channel before the actual transmission.

To replace the use of pure ALOHA in the LoRaWAN MAC layer, S-ALOHA was proposed in [18]. In S-ALOHA, different packets suffer differently when interference occurs in the network. Consequently, S-ALOHA does not greatly increase scalability.

Authors in [13] proposed a scheduling algorithm with time-synchronized transmissions to schedule SFs, frequency channels, and time slots for EDs and gateways, which introduces an intolerable delay in the network. Other authors in [19] proposed a new MAC layer to improve both the LoRaWANs’ reliability and scalability which involved two-step lightweight scheduling: First, a gateway schedules nodes in a coarse-grained manner through dynamically specifying the allowed transmission powers and SFs on each channel; then, based on the coarse-grained scheduling information, a node determines its transmission power, SF, and when and in which channel to transmit. Although the system uses asynchronous uplink and downlink transmission channels that are framed, the channel in the sub-frames is still accessed using pure ALOHA causing inevitable collisions.

Authors in [17] presented an architecture using on-demand TDMA communication protocol for IoT applications, improving both the energy efficiency and the latency of standard LoRa networks. However, the use of wake-up radios may cause the device to wake up periodically even when there are no data to transmit thus wasting energy. To overcome the challenge, a longer wake-up time is set which increases the data latency.

The use of LBT medium access scheme, based on the Markovian framework, has been proposed in [16]. Results show a promising performance compared to ALOHA-based method. However, LBT schemes use Clear Channel Assessment (CCA) techniques to check the status of the channel, and thus, they are not energy-efficient. Also, the assessment of clear channels is performed in the vicinity of devices using the same SFs, which can increase the probability of collisions for devices using different SFs.

Another initiative to address the limitations of ALOHA in LoRaWAN is the use of a synchronization and scheduling mechanism in which a central Network Synchronization and Scheduling Entity (NSSE) schedules uplink and downlink transmissions [10]. The method is not energy-efficient as the synchronization process uses the limited power of the EDs.

A fine-grained scheduling scheme for Reliable and Energy Efficiency (FREE) is a data collection scheme in LoRaWAN. FREE schedules SFs, transmission powers, frequency channels, timeslots, and slot numbers in frames for LoRaWAN EDs. As a result, FREE overcomes the scalability issue of LoRaWAN by eliminating collisions and grouping acknowledgments [1]. Despite its good performance, the use of a random synchronization approach forces the EDs to acquire multiple time slots in the first phase which are used in the consecutive transmission phases, for either retransmission of synchronization requests or data transmission. This approach is energy-consuming as the ED should be active to periodically check and process the data structure to identify the time slots.

Motivation

This work has been motivated by the work in [1] which proposes FREE as an energy-efficient scheduling algorithm. The synchronization and the scheduling algorithms proposed in [1] uses a random approach in the synchronization phase which is prone to collisions. These collisions can further be reduced to increase the LoRaWAN network scalability. The FREE algorithm also involved active synchronization which shares the same channels used for data transmission resulting into collisions between synchronization and data packets. The LoRaWAN network scalability can further be improved if the random transmission approach is rehabilitated with a transmission approach that eliminate collisions. Finally, the FREE algorithm uses one superframe with a fixed time slot which may result in an unused time slot when the end device has nothing to transmit which causes unnecessary delays to other devices in the network.

This work, therefore, proposes a synchronization and scheduling algorithm that uses a slotted transmission approach in both synchronization and data transmission phases to further improved the LoRaWAN network scalability. The proposed algorithm also suggests multiple frames with dynamic time slots for the different spreading factors to reduce delay and improve network scalability.

System model

Consider a LoRaWAN network with N EDs, randomly distributed in a circular area with radius R from the gateway placed at the center, as presented in Fig. 1. A single network gateway architecture is considered and the assignment of SF to the EDs depends on the radius, R which maintains the required gateway sensitivity. Let us denote that \(P_i\) is the received signal power from link i, and R(k) is the receiver sensitivity when the spreading factor is k. Then, as presented in [16], the spreading factor of transmission on link i, denoted by \(S_i\), can be described as in Eq. (2).

$$\begin{aligned}{} & {} {\textbf {S}}_i=\left\{ \frac{k}{P_i}\ge {R(k)}+\lambda \right\} \end{aligned}$$
(1)
$$\begin{aligned}{} & {} {S}_i=\min {\textbf {S}}_i \end{aligned}$$
(2)

The propagation loss, \(L_i\), in a path \(P_i\) is used to determine the strength of the signal that will be received at the gateway as described in Eq. (3) [20]. The amount of time spent by each ED on air,Time on Air (ToA) depends on the SF used by the device. The connection between the EDs and the gateway is wireless, while the wired link is used between the gateway and server.

$$\begin{aligned} PL(d)=10n\log \left( \frac{d}{d_o}\right) +PL_0 \end{aligned}$$
(3)
Fig. 1
figure 1

The system model

where n is the path loss exponent, d is the distance between the transmitter and receiver and \(PL_0\) is the path loss at reference distance \(d_o\) which is calculated using the Friis equation.

The number of EDs that can be connected in a single gateway network architecture and able to transmit successfully depends on the channel access mechanism deployed in the MAC layer. For random channel access, collisions are likely to increase when compared with the scheduling access. In order to reduce collisions in the time-scheduled channel access, the slotted synchronization approach is proposed. In the slotted synchronization approach, EDs transmit synchronization requests in a slotted manner using Eq. (4) which was adopted from [17] . The time slot, \(T_{next},\) for the ED to synchronize depends on the time to trigger the ED,\(T_{trigger}\), the time on air for the packet to be transmitted, \(ToA_{pkt}\) (which depends on the used SF), and the guard time, \(T_g\) between two consecutive time slots

$$\begin{aligned} { T_{next} = T_{trigger} + (ToA_{pkt} + T_g)N_id } \end{aligned}$$
(4)
$$\begin{aligned} { ToA_{pkt}} =\left[ (npre+4.25)\frac{1}{R_sym}\right] +... \end{aligned}$$
$$\begin{aligned} \left[ 8+\max \left( \left( \left[ \frac{8PL-4SF+28+16CRC-20H}{4(SF-2DE)}\right] (CR+4), 0)\times \frac{1}{R_sym}\right) \right] \right. \end{aligned}$$
(5)

where \(n_{pre}\) is programmed preamble length, defined as \(10.5\le n_{pre}\le 65,539.25\) symbols, \(R_{sym}\) is symbol rate, PL is the payload length in bytes, (1-255), SF is the Spreading Factor(6-12), H is packet header length, DE is data rate optimizer, CR is coding rate. From 4, the time slot for the ED depends on the device network identity number which is unique for the different EDs.

Since communication occurs around the 868 MHz band, both gateways and EDs have to comply with a duty cycle limit of 1%. To overcome the effect of duty cycle limitation, slot length of 300 ms for a packet of 50 Bytes using a spreading factor of 7 to 12, respectively, was chosen. Therefore, every device in the sub-band was forced to be off for a duration \(T_{off}\) presented in (6) in each transmission round. The time for the device to be off is a fraction of the time spent on air by the ED which affects the transmission cycle duration, \(T_{cd}\) as presented in (7). The total time to complete one transmission cycle is the sum of time spent on air, the time for two receive windows and the time for the device to be off.

$$\begin{aligned}{} & {} { T_{off}=ToA_{pkt}\left( \frac{1}{D}-1\right) } \end{aligned}$$
(6)
$$\begin{aligned}{} & {} {T_{cd}=ToA_{pkt}+T_{rw}+T_{off}} \end{aligned}$$
(7)

where \(T_{rw}\) is the time for the EDs’two receive windows, D is the duty cycle and \(ToA_{pkt}\) is the time on air of the packet. The transmission delay between the gateway and the network server is assumed to be constant and both the gateway and the ED use Real-Time Clock (RTC). The clock accuracy, in milliseconds, captures the minimum clock drift in the EDs. In the slotted approach, if the device fails to get an acknowledgment, the synchronization failed counter is incremented while eight retransmission trials in the random approach are considered before the synchronization failed counter is incremented. The clock drift in an ED that receives an acknowledgment will be calculated according to (8). The slotted synchronization approach is presented in lines 1 to 17 of Algorithm 1.

$$\begin{aligned} { \delta =T_{d}- T_{g}} \end{aligned}$$
(8)

where \(\delta\) is the clock drift,\(T_{d}\) is ED clock reading which should be adjusted according to the gateway clock readings, \(T_g\). If \(T_d\) = \(T_g,\) the clock drift is zero and nothing will be updated. However, \(\delta\) is positive if the ED device clock is behind gateway time and negative otherwise. Therefore, ED device clock can be updated by \(\pm\) \(\delta\) to the device clock reading \(T_d\).

Proposed dynamic MFMSF scheduling algorithm

The dynamic MFMSF scheduling algorithm proposed in this work was designed to adhere to the normal operation of LoRaWAN Class A. The EDs are slotted to transmit synchronization request messages in the synchronization phase and the slots for the data transmission phase are assigned to devices that synchronize successfully.

In the proposed dynamic MFMSF scheduling algorithm (Algorithm 1), the time slot for the data transmission,\(T_{next},\) depends on the time taken to synchronize all devices in the network and can be calculated using Eq. (9). In the algorithm, the ED can send the synchronization request once in each transmission round, and if the device fails to synchronize, it will not participate in the data transmission phase and forced to wait for the next Transmission round. If an ED fails to synchronize, the response time is delayed which can not be tolerated in real-time communication systems.

$$\begin{aligned} { T_{next} (n)=S_l(N+n-1)-T_{d}} \end{aligned}$$
(9)

where \(S_l=ToA_{pkt}+T_G\) , \(ToA_{pkt}\) is the longest transmission time on air and \(T_G\) is the guard time defined in (10).

$$\begin{aligned} { T_G=T_{syn}+T_{up}} \end{aligned}$$
(10)

\(T_{syn}\) is the time to complete the synchronization phase and \(T_{up}\) is the time taken by the end device to update its clock if there is clock drift. N is the total number of devices in the network, n is the position of a device in a frame and \(T_{d}\) is the current time of the device’s RTC.

figure a

The traffic model for each ED is assumed to be periodic and uniformly distributed. Devices with the same SF form SF sub-groups. Each SF sub-group consists of one or multiple frames of different lengths. The SF assignment in the dynamic MFMSF algorithm depends on the distances, d and \(d_o\) and signal losses, \(PL_0\) in dB due to channel impairments as modeled by (3). Therefore, SF is assigned to an ED to ensure that the received signal strength is larger than the receiver sensitivity. In this work, parameter values from real measurements conducted in [8] are adopted and used in the loss propagation model.

The slot length for the data transmission of each packet is the maximum time on air for each SF. The algorithm is dynamic because new time slots will be assigned to the ED in each transmission round depending on the signal strength received during the transmission time. In addition, the time slot will be assigned to the end device if and only if there is an unused time slot in the SF sub-group. However, an ideal situation where the number of slots in a SF sub-group equals the number of devices assigned to that SF was considered in this work. Each time slot assignment made by the network server is saved, including the channel that saves the communication, the node ID, and the SNR value of the received synchronization request signal. For memory efficiency, previous time slots are cleared from the database after every time slot is used. To improve the scalability of the LoRaWAN network, the proposed algorithm allows the same time slots to be shared by devices from different SF sub-group since the SFs are orthogonal. Also, three 125 KHz channels at 868 MHz are used in both synchronization and data transmission phases. The EDs only wake up if triggered to transmit synchronization requests to the gateway. The time slots are assigned to synchronized EDs on First Synched First Assigned (FSFA) basis. If there are more than one synchronized EDs, the farthest device is given priority and assigned first. Sharing the time slot for devices using different SF allows seven parallel transmissions in each transmission round. The time slots for the data transmission and clock offset information are packed in the acknowledgment packet from the network server. The ED first updates its clock and uses its updated clock to wait for the assigned time slot to transmit the data packet. If a new device joins a network, it has to be grouped and added to the available frames.

The performance of the proposed dynamic MFMSF TDMA scheduling algorithm was evaluated and compared to the FREE algorithm presented in [1]. Two performance parameters: packet delivery and energy efficiency (energy consumption), were used to quantify the performance of the two algorithms. During the performance evaluation, each ED is configured to send one packet in each frame for a maximum duration of time on air of the SF used. The transmitted packet consists of the buffered data for 10 minutes, making the number of devices equal to the number of packets. The number of EDs varied from 1 to 900 . The number of EDs varied from 1 to 900 which is the theoretical maximum number that can be supported by a single gateway network architecture. The devices are distributed in a uniform disk with a radius ranging from 1 to 5 km. The used simulation parameters are summarized in Table 1.

Table 1 Simulation parameters

Performance evaluation

The performance of the proposed algorithm was evaluated using ns3 simulations in both a standard LoRaWAN and industrial LoRaWAN environments. The propagation losses in standard LoRaWAN are governed by the log distance propagation model presented in presented in Eq. (3). The two environments differ in the propagation ranges and the amount of noise. The ever-growing demand for LoRaWAN in industrial applications has motivated the evaluation of the proposed dynamic MFMSF TDMA scheduling algorithm in the industrial setup. The indoor industrial application scenario was chosen because the environment is challenging compared to an outdoor industrial setup. In addition, the indoor industrial LoRaWAN model is readily available making the process of evaluating the performance of the proposed dynamic MFMSF TDMA scheduling algorithm relatively simple.

The most important performance metrics analyzed were packet delivery and energy consumption. The packet delivery was used to measure collisions in the network where higher values of packets delivery signify reduced collisions and vice versa. The energy efficiency is the measure of an ability for EDs to use small amount of energy when in active states mostly during data transmission. Energy efficiency was evaluated by measuring the total current consumed during each transmission slot.

The EDs were considered to be uniformly distributed in a circular area with different radii in a range of 5 km and 500 m in the standard LoRaWAN and industrial LoRaWAN, respectively. The gateway was placed at the center of the circle. The EDs were triggered to transmit after every 30 minutes. The 30-minute time represents the minimum time for a LoRaWAN ED to transmit in one-day time. When triggered, the EDs transmit a synchronization request message to the gateway in a given time slot, opening the receive window to receive the correct clock and the time slot to be used in the data transmission phase. If the ED does not receive an acknowledgment, the device will not participate in the data transmission phase and will remain asleep until the next trigger which is after 30 minutes. It was assumed that all data collected in 30 minutes will fit in one packet allowing each device to transmit one packet in each transmission round. It was also assumed that one packet should be delivered in each transmission round and a count of more than one packet signified a retransmission.

Results and discussion

The performance results in terms of the packet delivery and energy consumption in both standard and industrial LoRaWANs are presented as follows;

Packet delivery

Packets delivered by the proposed dynamic MFMSF scheduling algorithm were 45% greater than that of FREE as the number of EDs in the network increases from 3 to 12 (see Fig. 2a). This means that the probability of collision in a denser network increases when using the FREE algorithm, attaining a maximum retransmission level before delivering the packets to the network server. On the contrary, all the packets transmitted using the proposed dynamic MFMSF scheduling algorithm are delivered to the network server regardless of the number of EDs in the network. When the number of EDs increases to 900, the number of delivered packets using the proposed dynamic MFMS scheduling algorithm is still higher than that of FREE. Further, the packets delivered by FREE decreases by around 0.5% when the number of EDs is greater than 200, as presented in Fig. 2b. The good performance of the proposed dynamic MFMSF scheduling algorithm is contributed by the use of a slotted synchronization approach which reduces collision. However, slotted synchronization operates by putting the EDs in a queue while transmitting the synchronization request which introduces a delay in the data transmission.

Increasing the propagation range to R=5 km, which is the longest range that the LoRaWAN can support in an urban environment, the packets delivered for both algorithms decrease significantly. The packet delivery for the proposed dynamic MFMS scheduling algorithm doubles that of FREE algorithm except when the number of EDs is four through seven, as shown in Fig. 3a. The exception cases for FREE to deliver larger number of packets (almost ALL) are possible due to the retransmission trials.

Fig. 2
figure 2

Packet delivery for the range of R=1 km a N=12 devices b N=900)

Increasing the number of EDs in an area of R=5 km, the proposed dynamic MFMSF scheduling algorithm achieves a PDR of 45% higher than FREE when the EDs increase from 100 to 400. The PDR for FREE shows a significant drop as EDs increase from 400 to 900 (Fig. 3b). The packet delivery drop of the proposed dynamic MFMSF TDMA scheduling algorithm is due to the increase in propagation range, which pushes some of the devices out of the transmission range. The random transmission of the synchronization messages contributes to the PDR drop of FREE when the number of devices increases in the network.

Fig. 3
figure 3

Packet delivery for the range of 5 km a N=12 devices b N=900)

Energy efficiency

The results show that the proposed dynamic MFMSF scheduling algorithm is more energy-efficient than the FREE algorithms when used in a standard LoRaWAN network with devices uniformly distributed in a circular area of R=1 km. The average energy consumed by the proposed dynamic MFMSF scheduling algorithm is approximately 3.3 J (see Fig. 4a) regardless of the number of EDs in the network when a maximum of 12 EDs is considered. This is because, in the proposed dynamic MFMSF scheduling algorithm, only one ED is transmitting at a time. On the other hand, the maximum average energy consumed by FREE is about 4J when the number of EDs is \(N=12\). The improved energy efficiency in the proposed dynamic MFMSF scheduling algorithm is due to the minimized collisions as a result of slotted synchronization procedures and avoiding of the active synchronization during the data transmission phase.

Increasing the number of devices to \(N=900\), using the same \(R=1 km\), maintains the same results as the coverage range of 1 km, which is approximately 3.3 J for the proposed dynamic MFMSF scheduling algorithm. Surprisingly, the constant average energy consumption of approximately 3.5 J for the FREE is observed as the number of EDs increases from 100 to 900, as shown in Fig. 4b. The constant energy consumption is caused by extreme collisions, which cause transmission failure with the increase in EDs

Fig. 4
figure 4

Energy consumed for R= 1 km a N=12 devices b N=900)

Increasing the radius to 5 km, which is considered the worst-case propagation range, increases the energy consumption of the FREE algorithm by 17 J compared to the proposed dynamic MFMSF scheduling algorithm (Fig. 5a). The higher energy consumption in FREE is because when the coverage radius increases, most of the devices use the maximum transmission trials of eight to achieve synchronization.

Increasing the number of EDs to 900 in the coverage range of 5 km causes a significant energy consumption of about 16 J while consuming constant energy of about 6 J when the number of EDs increases beyond 100, with the FREE algorithm. The average energy consumption of the proposed dynamic MFMSF scheduling algorithm remains constant at about 4 J, which is 2 J less than that of FREE when the number of EDs exceeds 200 as shown in Fig. 5b.

Fig. 5
figure 5

Energy consumed for R= 5 km a N=10 devices b N=900)

Variation in the energy consumption with propagation range

The analysis of energy consumption with coverage ranges was performed in both small and large networks. The results show that the energy consumed by the proposed algorithm is almost constant at about 4 J when the coverage range increases from 1 to 5 km in the small network (Fig. 6a). On the other hand, the energy consumed by FREE varies from about 4 to 6 J when the coverage range changes from 1 to 3 km. Again, a maximum energy consumption of about 20 J for the FREE algorithm occurs at the propagation range of 4 km and decreases to about 6 J when the propagation range increases to 5 km. The energy drops in FREE are due to transmission failure caused by the large propagation range. The random energy consumption by the FREE is due to the random transmission of the synchronization requests which deliver the packets with different numbers of transmission attempts.

Fig. 6
figure 6

Variation in the energy consumption with the range a small network, N=12 b large network, N= 900 EDs)

Energy consumption for the same range with the large network (N=900) decreases to around 3.5 J for all coverage ranges from 1 to 5 km for the proposed algorithm, as shown in Fig. 6b. The energy consumption by the FREE algorithm shows similar behavior as for small networks but with a decrease in the maximum energy consumption. The energy consumption by FREE is observed to be constant as the propagation range increases from 4 to 5 km because most of the EDs will get out of the coverage ranges.

The average energy consumption of the proposed algorithm is constant and smaller than that of FREE in all scenarios. The low consumption in the proposed dynamic MFMSF scheduling algorithm is contributed by the fact that one ED transmits at a time and remains in sleep mode, while others are transmitting. The swings in the FREE algorithm are a result of the random transmission of synchronization requests that are active throughout the transmission period.

Evaluation of the proposed algorithm in industrial LoRaWAN

The performance of the proposed dynamic MFMSF scheduling algorithm was also evaluated in the indoor industrial use case. The selected use case for industrial LoRaWAN was added to the modified standard LoRaWAN model to form a realistic industrial LoRaWAN module. The module considered all impairments including path loss, shadowing, and fading, affecting the received power at the sink where the propagation model for indoor industrial monitoring was adapted from work by [14]. The values of other parameters in the link propagation model were deduced from a work by [12] and [2]. The choice of these parameters was influenced by the fact that the measurements were taken at 900MHz, which is similar to the operating frequency of the LoRaWAN network. The message length of 50 B was considered to be the maximum data that would be collected in 30 minutes.

Packet delivery

The proposed scheduling algorithm successfully delivers all transmitted packets to the gateway in a network of 10 EDs in a coverage range of 100 m, as shown in Fig. 7a. The PDR of the FREE algorithm is random and 20% less than the required industrial performance when the number of devices increases from 5 to 10. When the number of devices increases to 900, the PDR of the proposed algorithm is still higher than that of FREE when devices increase from 200 to 900 EDs (Fig. 7b). This alludes that fewer packets will be received at the gateway using FREE in a denser network.

Fig. 7
figure 7

Variation in packet delivery with the number of transmitted packets for R=100 m a N=10 b N=900

All packets are delivered using the proposed algorithm in a 10 EDs network, even with the increase in the coverage range from 100 to 500 m (Fig. 8a). On the other hand, the FREE algorithm can deliver all the packets when there are only six EDs in the network. The PDR for FREE drops to a constant value (6 packets) when increasing the number of EDs from 9 to 10 (Fig. 8a). Increasing the number of EDs to 900 maintains the higher PDR for the proposed algorithm. A significant PDR drop, the same experienced in the standard LoRaWAN, can be seen when FREE is used, as presented in Fig. 8b.

Fig. 8
figure 8

Packet delivery for R=500 m a N=10 b N=900

Generally, the PDR for the proposed algorithm is higher regardless of the coverage range when the number of EDs is 10. The performance of FREE is lower than the required performance for the indoor industrial use. The good performance of FREE when the coverage range is 500 m is because the large coverage range forces the EDs to use different SFs, which maximizes the number of delivered packets. Increasing the number of EDs in both coverage ranges has no significant effect on the performance of the proposed algorithm.

Energy efficiency

When the number of EDs is \(N=10\) and the coverage range \(R=100 m\), the energy consumed by the proposed algorithm is lower than that of the FREE algorithm (Fig. 9a). The minimum and maximum energies of about 4 J and of 14 J are wasted to deliver 3 packets and up to 10 packets to the gateway, respectively, using the FREE algorithm (Fig. 9a). The constant energy in the proposed is due to the use of slotted transmission in both synchronization requests and data transmissions. The higher energy consumptions are possibly due to the retransmissions of collided packets during the transmission of the synchronization packets. Increasing the number of the EDs to 900 on the same coverage range of 100 m increases the energy consumption of the proposed algorithm to 3.25 J, which is 0.25 J more than when the number of EDs was 10 (Fig. 9b).

Fig. 9
figure 9

Energy consumption for R=100 m a N=10 b N=900

Variation in the energy consumption with propagation range

The energy consumed by the proposed algorithm in an industrial LoRaWAN when there are 10 EDs is about 3 J, as shown in Fig. 10a. The average energy consumed by FREE increases from 3.5 to 4.1 J when the coverage range increases from 100 to 200 m, respectively, and remains constant beyond the coverage range of 200 m. When the number of EDs increases to 900, the average energy consumed by the proposed algorithm is constant by about 3 J, but the energy consumed by FREE is about 0.5 J more than the energy consumed by the proposed algorithm as shown in Fig. 10b.

Generally, the energy consumed by the proposed dynamic MFMSF scheduling algorithm in the indoor industrial application is lower than that consumed by FREE. The average energy consumed by FREE is about 1 J higher when the EDs is 10 and 0.5 J when the EDs increase to 900. The lower energy consumption by FREE when the number of EDs increases is contributed by the fact that no packets are delivered to the gateway using the FREE algorithm.

Fig. 10
figure 10

Energy consumption for R=100 m a N=10 b N=900

Scalability analysis for the proposed dynamic MFMSF algorithm

The scalability of the LoRaWAN network using the dynamic MFMSF scheduling algorithm was quantified by the maximum number of devices that can be managed by the network. A transmission period of 10 minutes with a data payload of 21 B and a total of three 125 kHz transmission channels were considered. The chosen parameters act as a basis for comparison as they have been used to evaluate the performance of the FREE algorithm.

The analysis was carried out under saturated conditions, considering more uplink traffic than can be handled by the network capacity, and synchronization success of 85%. The maximum number of EDs supported by the network depends on the available time slots in which the proposed dynamic MFMSF scheduling algorithm can connect larger number of EDs by approximately 85% than the number of devices supported when the FREE algorithm is used. The improvement is contributed by the fact that no time slots are reserved for resynchronization when using the dynamic MFMSF scheduling algorithm.

The synchronization success rate varied between 1 and 90%, considering the spreading factors of SF7 and SF12. The total number of EDs that FREE can support increases proportionally but is always less than the number of EDs that can be supported by the proposed dynamic MFMSF scheduling algorithm, as shown in Fig. 11a and b, respectively. The lower SF can support a large number of EDs than the higher SF due to shorter ToA.

Fig. 11
figure 11

Number of supported EDs for a SF7 b SF12

Conclusion and future work

In this work, the proposed dynamic MFMSF algorithm that can be deployed on top of LoRaWAN MAC to improve the LoRaWAN network scalability has been successfully developed. A slotted synchronization approach has been proposed to be incorporated in the developed algorithm due to its good performance when compared to the random synchronization approach. The performance of the proposed dynamic MFMSF scheduling algorithm in comparison with the existing algorithms in both standard LoRaWAN and industrial LoRaWAN has been evaluated by using ns3 simulations. The key performance parameters including energy-efficient and packet delivery were used in the evaluation. It was revealed that the proposed dynamic MFMSF algorithm is more energy-efficient than the existing algorithm in a denser network with devices arranged in a circular disk with different radii. The packet delivery rate for the proposed algorithm is about 99% signifying reduced collisions during data transmission. The packet delivery rate of the existing algorithms was relatively lower and zero in some cases. The performance of the developed algorithm was tested in the industrial setup which is more prone to signal losses. The required performance for industrial monitoring application was used as a benchmark to compare the performance of the developed algorithm with the existing algorithms. It was noted that the proposed dynamic MFMSF-TDMA algorithm outperforms the existing algorithms in terms of energy efficiency in all scenarios. However, the required performance for industrial monitoring application was met by the dynamic MFMSF scheduling algorithm. The existing algorithm did not meet all the required performance which may be the lifetime for the EDs in an industrial setup environment. The scalability analysis proved that the use of a dynamic MFMSF scheduling algorithm improves the LoRaWAN scalability by factor \(\lambda\), which depends on the synchronization failure in the existing FREE algorithm. The scalability improvement in the proposed dynamic MFMSF algorithm has been contributed by the use of a slotted synchronization approach and the use of a minimum energy consumption constraint in assigning a SF to the EDs.

The slotting in the dynamic MFMSF TDMA scheduling algorithm uses slotted synchronization based on the device network identity forcing devices with large network IDs to unfairly wait for a long time before transmitting the synchronization request to the gateway which affect the response time of an ED. Therefore, an innovative slot assignment technique independent of device network ID can be considered as a future work.

The proposed dynamic MFMSF TDMA scheduling algorithm uses the Log distance loss propagation model to assign different SFs to the EDs. Evaluating the performance of the dynamic MFMSF TDMA scheduling algorithm with other loss propagation models such as Okumura Hata is also recommended for future work. The evaluation can be done in both standard LoRaWAN and industrial LoRaWAN applications.

The performance evaluation of the dynamic MFMSF TDMA scheduling algorithm was evaluated in the indoor industrial use case. The outdoor industrial use cases can also be considered in future work. The performance of the algorithm in a complicated multi-gateway network structure can also be considered for future work. Finally evaluating the performance of an innovative slotting in the synchronization approach combined with the fixed MFMSF TDMA scheduling algorithm can be worked on in future work.

The performance of the proposed dynamic MFMSF TDMA scheduling algorithm has been compared with FREE which is one among many existing algorithms in the literature. The performance of the proposed dynamic MFMSF TDMA scheduling algorithm in comparison with other existing algorithms is also recommended for future work. The performance evaluation of the proposed dynamic MFMSF TDMA Scheduling algorithm considering LoRaWAN class B and C can be considered as future work. The computational complexity of the proposed dynamic MFMSF scheduling algorithm is also recommended for future work.

Availability of data and materials

All data generated or analyzed in this study are included in the manuscript.

References

  1. Abdelfadeel Khaled Q, Zorbas Dimitrios, Cionca Victor, Pesch Dirk (2020) FREE - Fine-grained scheduling for reliable and energy-efficient data collection in LoRaWAN. IEEE Int. Things J. 7(1):669–683

    Article  Google Scholar 

  2. Ai Y, Cheffena M, Li Q (2015) Radio frequency measurements and capacity analysis for industrial indoor environments. In: 2015 9th European conference on antennas and propagation, EuCAP 2015, 1

  3. Almuhaya MA, Jabbar WA, Sulaiman N, Abdulmalek S (2022) A survey on LoRaWAN technology: recent trends, opportunities simulation tools and future directions. Electronics (Switzerland) 11(1):164

    Google Scholar 

  4. Beltramelli L, Mahmood A, Österberg P, Gidlund M (2020) LoRa beyond ALOHA: an investigation of alternative random access protocols. pp. 1–10

  5. Beltramelli L, Mahmood A, Osterberg P, Gidlund M, Ferrari P, Sisinni E (2021) Energy efficiency of slotted LoRaWAN communication with out-of-band synchronization. IEEE Trans Instrum Measur 70:1–10

    Article  Google Scholar 

  6. Chasserat L, Accettura N, Berthou P (2020) Short: achieving energy efficiency in dense LoRaWANs through TDMA. Proceedings - 21st IEEE International symposium on a world of wireless, mobile and multimedia networks, WoWMoM 2020, pp 26–29

  7. Duda A (2018) Design issues of energy-efficient access methods for cellular IoT networks. In 2018 11th International symposium on communication systems, networks and digital signal processing, CSNDSP 2018, IEEE, pp 1–6

  8. El Chall R, Lahoud S, El Helou Melhem (2019) LoRaWAN network: radio propagation models and performance evaluation in various environments in Lebanon. IEEE Int Thing J 6(2):2366–2378

    Article  Google Scholar 

  9. Finnegan J, Farrell R, Brown S (2020) Lightweight timeslot scheduling through periodicity detection for increased scalability of LoRaWAN. Proceedings - 21st IEEE International symposium on a world of wireless, mobile and multimedia networks, WoWMoM 2020, pp 8–15

  10. Haxhibeqiri J, Moerman I, Hoebeke Jeroen (2019) Low overhead scheduling of LoRa transmissions for improved scalability. IEEE Int Thing J 6(2):3097–3109

    Article  Google Scholar 

  11. Kouvelas N, Rao V, Venkatesha Prasad RR (2018) Employing p-CSMA on a LoRa network simulator

  12. Krasnov TV, Sharshavin PV, Baturin TN, Kudinov DS, Tokarev RI (2021) The LoRaWAN link budget for UWB anchors data management. IOP Conf Series: Mater Sci Eng 1047(1):012107

    Article  Google Scholar 

  13. Lee J, Jeong WC, Choi BC (2018) A scheduling algorithm for improving scalability of LoRaWAN. 9th International conference on information and communication technology convergence: ICT convergence powered by smart intelligence, ICTC 2018, pp 1383–1388

  14. Luvisotto M, Tramarin F, Vangelista L, Vitturi S (2018) On the use of LoRaWAN for indoor industrial IoT applications. Wirel Commun Mobile Comp. https://doi.org/10.1155/2018/3982646

    Article  Google Scholar 

  15. Mekki K, Bajic Eddy, Chaxel F, Meyer F (2019) A comparative study of LPWAN technologies for large-scale IoT deployment. ICT Express 5(1):1–7

    Article  Google Scholar 

  16. Ortin Jorge, Cesana Matteo, Redondi Alessandro (2019) Augmenting LoRaWAN performance with listen before talk. IEEE Trans Wirel Commun 1276(c):1–1

    Google Scholar 

  17. Piyare R, Murphy AL, Magno M, Benini L (2018) On-demand LoRa: asynchronous TDMA for energy efficient and low latency communication in IoT. Sensors (Switzerland) 18(11):1–22

    Article  Google Scholar 

  18. Polonelli T, Member S, Brunelli D, Member S, Benini L (2018) Slotted ALOHA overlay on LoRaWAN – a distributed synchronization approach. 2018 IEEE 16th International conference on embedded and ubiquitous computing (EUC)

  19. Reynders B, Wang Q, Tuset-Peiro P, Vilajosana X, Pollin Sofie (2018) Improving reliability and scalability of LoRaWANs through lightweight scheduling. IEEE Int Thing J 5(3):1830–1842

    Article  Google Scholar 

  20. Rizzi M, Depari A, Ferrari P, Flammini A, Rinaldi S, Sisinni E (2019) Synchronization uncertainty versus power efficiency in LoRaWAN networks. IEEE Trans Instrum Measur 68(4):1101–1111

    Article  Google Scholar 

  21. Sa-Ingthong Jirapon, Phonphoem Anan, Jansang Aphirak, Jaikaeo Chaiporn (2021) Probabilistic analysis and optimization of packet losses in dense LoRa networks. SN Comp Sci 3(1):25

    Article  Google Scholar 

  22. Stoynov Viktor R, Poulkov Vladimir K, Valkova-Jarvis Zlatka V (2018) Interference management in LoRaWANs - overview and simulation study. Proceedings - 2018 advances in wireless and optical communications, RTUWO 2018, pp 251–256

  23. Triantafyllou A, Sarigiannidis P, Lagkas T, Moscholios ID, Sarigiannidis A (2021) Leveraging fairness in LoRaWAN: a novel scheduling scheme for collision avoidance. Comp Netw 186(December 2020):107735

    Article  Google Scholar 

Download references

Acknowledgements

Not Applicable

Funding

No funding received.

Author information

Authors and Affiliations

Authors

Contributions

ES performed data collection and analysis and wrote the initial draft of the manuscript, AA performed intensive review of the manuscript and AM reviewed the manuscript. All authors have read and approved the manuscript.

Corresponding author

Correspondence to Eva I. Shayo.

Ethics declarations

Ethics approval and consent to participate

Not Applicable

Consent for publication

This manuscript has been approved by all authors for publication.

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Shayo, E.I., Abdalla, A.T. & Mwambela, A.J. Dynamic multi-frame multi-spreading factor scheduling algorithm for LoRaWAN. Journal of Electrical Systems and Inf Technol 10, 11 (2023). https://doi.org/10.1186/s43067-023-00077-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s43067-023-00077-2

Keywords