An analytical model for wireless mesh networks with collisionfree TDMA and finite queues
Abstract
Wireless mesh networks are a promising technology for connecting sensors and actuators with high flexibility and low investment costs. In industrial applications, however, reliability is essential. Therefore, two timeslotted medium access methods, DSME and TSCH, were added to the IEEE 802.15.4 standard. They allow collisionfree communication in multihop networks and provide channel hopping for mitigating external interferences. The slot schedule used in these networks is of high importance for the network performance. This paper supports the development of efficient schedules by providing an analytical model for the assessment of such schedules, focused on TSCH. A Markov chain model for the finite queue on every node is introduced that takes the slot distribution into account. The models of all nodes are interconnected to calculate network metrics such as packet delivery ratio, endtoend delay, and throughput. An evaluation compares the model with a simulation of the Orchestra schedule. The model is applied to Orchestra as well as to two simple distributed scheduling algorithms to demonstrate the importance of trafficawareness for achieving high throughput.
Keywords
Wireless mesh networks Time division multiple access Scheduling IEEE 802.15.4 TSCHAbbreviations
 CAP
Contention access period
 CSMA/CA
Carrier sense multiple access/collision avoidance
 DSME
Deterministic and synchronous multi channel extension
 GMRES
Generalized minimal residual method
 PDR
Packet delivery ratio
 PER
Packet error ratio
 PETSc
Portable, extensible toolkit for scientific computation
 RPL
Routing protocol for low power and lossy networks
 RX
Reception
 SBD
Senderbased dedicated
 TDMA
Timedivision multiple access
 TSCH
Time slotted channel hopping
 TX
Transmission
1 Introduction
Wireless multihop networks are currently on the transition from a popular research topic to the application in realworld scenarios in the industry. Examples include oil refineries [1] and solar tower power plants [2]. However, for such applications, the reliability of stateoftheart techniques is not sufficient. This can often be traced back to packet collisions due to badly coordinated access to the wireless channel [3]. Therefore, the IEEE has recently extended the IEEE 802.15.4 standard with two approaches for timedivision multiple access (TDMA) in multihop networks, namely DSME and TSCH [4]. Especially in large networks under heavy load, these approaches are expected to perform much better than the commonly used CSMA/CA. While several implementations of these extensions already exist [5, 6], evaluations of the theoretical performance boundaries have not found much attention in the literature. This paper closes the gap by providing a framework for analytical evaluation of such networks.
The performance evaluation of techniques for wireless networks is possible in multiple ways. Building realworld testbeds provides good insights into the performance of an actual application. However, it is very cost and timeintensive. Therefore, eventbased simulators are developed that try to replicate the reality as closely as possible, while allowing reproducible experiments without the need of specialized hardware. The disadvantage is a complex and extensive implementation and large execution times.
An alternative is the analysis of mathematical models. An analytical model in the sense of this paper is a system of equations that can be solved by numerical means. While such a model usually only describes a small subset of the behavior of a real system and is therefore only an approximation to the real behavior, the calculations are often faster than a simulation by magnitudes and influences from external sources are avoided. The results can also be verified and reproduced quite easily. Last but not least, the comparison of a simulator and an analytical model helps to find inaccuracies and bugs in both approaches and gives new insights into the underlying principles.

A Markov chain model for a node’s finite queue that considers the slot schedule.

A multihop model for calculating packet delivery ratio, endtoend delay, and throughput.

An opensource implementation of the models [7].

An extensive evaluation, including a comparison with an eventbased simulation and the application to two trafficaware schedules for TSCH.
After presenting the related work in the next section, the requirements of a model for TSCH are outlined in Section 3 followed by the system model in Section 4. We then take the angle of a single node and present and evaluate the queuing model in Section 5. These models are then concatenated in Section 6 to derive global network metrics, and a comparison with a COOJA simulation is presented. In Section 7, two algorithms for building slot schedules are introduced, evaluated, and compared to the Orchestra SBD schedule. Section 8 gives an outlook to possible extensions, and the paper is finally concluded in Section 9.
2 Related work
Analyzing the performance of wireless networks is a challenging research topic of high value for practical applications [8]. Many evaluations for IEEE 802.15.4 networks are based on simulations [9] or realworld testbeds [10]. Especially for the CSMA/CA technique of IEEE 802.15.4 analytical models exist for singlehop topologies [11] and multihop networks [3, 12]. In these publications, packet collisions, especially due to hidden node constellations, are identified as a major reason for bad performance of CSMA/CA.
Since their admission to the standard, TSCH and DSME were analyzed by simulations [13], testbeds [6], and analytical models. The latter includes work focused on special aspects such as network formation [14] or transmission in the contention access period (CAP) [15]. The latter is very similar to the analysis of conventional CSMA/CA because it does not take guaranteed time slots into account. A simple formula for the throughput of DSME networks is given in [16]. Furthermore, much research exists that analyzes TDMA communication on a more general level [17, 18].
A major aspect of network analysis is the influence of the queue filling levels. The fundamentals of queuing theory are wellestablished [19]. Especially, the M/D/1/K model is of particular interest for TDMA networks, describing Poissondistributed arrival, deterministic service time, a single transmitter, and a queue of length K. In [20], closedform expressions are given for the blocking probability and other properties. Many variants were analyzed including service times following a general distribution [21]. In [22], a generalized queuing model for TDMA is developed that is also applicable for traffic that does not follow a Poisson distribution.
In this paper, a queuing model is presented that respects the specific structure of dedicated schedules, in particular, but not limited to, IEEE 802.15.4 TSCH networks. A popular schedule implemented in Contiki [23] is Orchestra [6]. It does not require any management traffic for building up the schedule. Part of the ongoing IETF standardization of 6TiSCH, the link between IPv6 networks and TSCH, is the development of scheduling functions such as SF0 [24] and SF1 [25].
Many other scheduling techniques were proposed that are applicable to TSCH networks or to one of its forerunners, the WirelessHART standard [26]. A centralized schedule for the latter is presented in [27]. Another centralized schedule, this time for TSCH, is the Traffic Aware Scheduling Algorithm (TASA) [28]. Traffic awareness is an important property for improving throughput as we will also see in the evaluation of this paper. However, centralized scheduling algorithms come with a high overhead for building, distributing, and maintaining the schedule, especially in large networks. Therefore, many decentralized approaches were suggested, such as DeTAS [29] and DIS_TSCH [30].
Another promising distributed algorithm to generate a conflictfree schedule is Wave, presented in [31] and extensively analyzed in [32]. DeBraS [33] explicitly targets dense networks where colliding slots are a major problem. All mentioned algorithms implicitly minimize energy consumption by reducing the number of slots assigned to every node. In contrast, [34] explicitly targets minimum energy consumption by formulating an energy efficiency maximization problem.
3 Requirements
The goal of the paper is to provide a tool for estimating the achievable performance of a network using the IEEE 802.15.4 TSCH data link layer with given multihop topology and associated schedule. In this section, an analysis of the potential sources for packet loss is presented. These are compared to the features provided by modern TDMA medium access protocols such as IEEE 802.15.4 TSCH and DSME. The most relevant aspects for a model are finally summarized.

Collisions of transmissions of the same network.

External interferences, for example between IEEE 802.15.4 and IEEE 802.11 transceivers or with another unsynchronized IEEE 802.15.4 network.

High path loss, for example due to a large distance or fading.

Queue drops if the rate of packets that are generated or have to be forwarded is higher than the rate at which packets can be transmitted. This can be permanent or during a burst.

A slot structure with predefined timing to arrange the transmissions in the time domain to avoid collisions within the same network.

Time synchronization to ensure an aligned timing throughout the multihop network.

Channel adaption (only DSME) and channel hopping (both) to arrange transmission in the frequency domain to increase the number of transmissions per time as well as to mitigate external interferences.

Procedures for setting up time and frequency schedules in a distributed fashion to ensure conflictfree transmissions. This is only integrated in DSME, but the ongoing IETF standardization of 6TiSCH provides related features for TSCH.
To calculate the performance in steadystate, it can be assumed that all nodes are already associated to the network, are properly synchronized to the global notion of time, and have negotiated a conflictfree and valid multihop schedule. In such a schedule, a combination of a time slot and a frequency channel is either free or assigned to exactly one transmitter and one receiver in every neighborhood. By this, packet collisions can be avoided, even in hidden node constellations. In DSME networks, this constraint is inherent, given that no failures happen during the negotiation [35]. For TSCH networks, such a fixed assignment is not necessarily required, but sharing will obviously lead to collisions, even if they might not be as severe as with CSMA/CA. Furthermore, the schedule should avoid using links with high path loss or highly fluctuating channel conditions to avoid occasional packet loss on the physical layer by means of an appropriate neighborhood management [36].
In large industrial plants, the frequencies of the used radio components are usually coordinated and monitored to avoid crossinterferences and as a security measure [37]. However, external interferences can often not be avoided completely, so TSCH and DSME can dynamically use multiple frequency channels. Apart from mitigating external interferences, this can also be used to increase the throughput by assigning the same time slot to multiple transceiver pairs on different frequency channel and is therefore also modeled in this paper. It can either be implemented as channel adaption where a fixed frequency channel is assigned at a given time or channel hopping where the channel to be used is iterated over a given sequence. Yet, in this paper, external interferences are not considered, so channel hopping with nonoverlapping hopping sequences is equivalent to a fixed assignment as for channel adaption.
It is therefore concluded that in properly constructed TSCH and DSME networks without a lot of external disturbances, the occurrence of queue drops is the main factor that determines the maximum achievable network performance. Yet, in realworld networks, other losses can still occur, so Sect. 8.2 gives an outlook about how to consider these in the model.
As noted in the previous section, the M/D/1/K model is often used to model queues in the context of TDMA networks. However, it has two major weaknesses in the given scenario: Even if the traffic generation itself is modeled as Poisson distributed, this distribution does not necessarily hold for forwarding nodes, so the M/D/1/K model is not suitable for multihop networks. Furthermore, the service times are not necessarily deterministic but can diverge significantly, due to two effects: First, the schedule itself might be irregular, for example if multiple subsequent transmission slots are followed by a large idle phase. Secondly, even if the schedule is regular, the service time of packet that arrives at an empty queue is not constant, but depends on the time left until the next transmission slot. This effect is especially relevant in scenarios with low traffic. A proper model must take these effects into account.
4 System model
The calculations are based on fixed multihop schedules. A schedule can be calculated offline with algorithms such as the ones presented in Section 7. Alternatively, a schedule can be extracted from a realworld deployment or a simulator as presented in Section 6.4. In the following, the notation for such a schedule as used in the model is introduced.
For modeling frequency diversity, \(\mathcal {C}_{v_{n}}(i)\) is introduced that specifies the channel to use in slot i by node v_{ n }. The channel is an element of the set of channels \(\mathcal {C}\). For IEEE 802.15.4 in the 2.4 GHz band, it consists of the numbers 11 to 26.
5 Queue model
Before modeling multihop communication, this section considers the viewpoint of a single node v_{ n } and its local behavior. In the multihop model, every node of the network will get its own instance of this model. The main focus is the finite queue, so after this section, we will be able to calculate packet drops due to a full queue as well as the expected queuing delay. The inputs into this model are the probabilities for incoming traffic and the distribution of the reception slots \(\mathcal {R}_{n}\) and transmission slots \(\mathcal {T}_{n}\). Beyond the usage in a multihop model as introduced in the next section, the model in this section is also applicable in other setups, such as singlehop networks or for evaluating the performance of a single node as presented in Section 5.7.

The queue can hold at most K packets.

The number of packets in the queue at the beginning of a slot is denoted as q.

New packets can arrive at any time during a slot. At most, K−q packets are accepted during a slot.

A packet is removed from the queue at the end of a slot if and only if it is a transmission slot and the packet was already in the queue at the beginning of the slot, i.e. q>0, modeling the transmission process itself.
5.1 Traffic model
5.2 Queuing probability
Obviously, the difference of A_{n,i} and Q_{ n } is the number of packets dropped due to a full queue.
5.3 Transition probabilities
either to a state with q=K−1 if the current slot is a transmission slot or else to a state with q=K.
As shown in Appendix B, these probabilities can be used to calculate the stationary distribution of this Markov chain. This results in the probability c_{n,q,i} of being in state \(\sigma ^{n}_{q,i}\) in the stationary case.
5.4 Transmission probability
5.5 Packet acceptance probability
5.6 Queuing delay
considering the additional transition to account for the arriving packet itself.
5.7 Single node evaluation
 In the M/D/1/K model, there is no option to specify multiple slots and only an overall packet rate rate can be specified.

In the Distributed approximation, the transmission and idle slots are modeled correctly, but incoming traffic is modeled to follow a Poisson distribution and not a Bernoulli distribution. Furthermore, it is distributed over all slots. To get the same \(\boldsymbol {\mathcal {A}}_{n}\) of 1 as in the actual scenario, all λ_{n,i} are set to \(\tfrac {1}{l_{S}} = 0.2\). This scenario allows to assess the deficiency of not including the β_{n,i} in the model.

The Full Model scenario additionally models the reception slot correctly as presented.

The Simulation is a discrete event simulation of the queue based on SimPy [38] that implements the policy as presented at the beginning of Section 5. The mean and 95% confidence interval are shown of 10 runs with 10,000 packets.
While the full model matches the simulation very well, the probability of dropping packets due to a full queue is higher in the distributed scenario, since the variance of the packet reception is higher, even though the average reception rate is equal. In fact, for g_{up}=0 and at least as much TX slots as RX slots, the full model will never indicate a packet loss (P_{accept,n}=100%), while in the simplified models there is a nonzero probability that more packets are received in a slotframe than sent, eventually leading to packet loss.
The M/D/1/K model gives even less accurate results, because the service time is constant and equal to l_{ S }·T_{ s }, while in the distributed and the full model case, packets might be processed faster if the queue is empty and they arrive during the later slots.
5.8 Queue distribution
In this section, we take a deeper look into the distribution of the queue level and its influence on the probability of accepting a packet for different traffic loads.
For this, a scenario with K=10, l_{ S }=5 and a single transmission slot is considered.
In the first scenario, the traffic load is distributed over the λ_{n,i}, corresponding to a node that does only generate but does not forward traffic, and in the second scenario, it is distributed only over the β_{n,i}, corresponding to a node that only forwards traffic generated by other nodes.
For a low rate of \(\boldsymbol {\mathcal {A}}_{n}=0.5\), the queue is empty most of the time with a decaying probability of having more packets in the queue. The probabilities for queue levels larger than 3 are negligible, so the probability of accepting new packets is P_{accept,n}=1.00 for both scenarios.
For a medium rate of \(\boldsymbol {\mathcal {A}}_{n}=1\), where on average one packet is sent and received every slotframe, the distribution is nearly constant. This leads to a packet acceptance probability of P_{accept,n}=0.95 for the first and P_{accept,n}=0.96 for the second scenario. Interestingly, the probability for q=K is significantly smaller than the others.
This is due to the policy that in a transmission slot with q=K, no new packets can be pushed to the queue, but certainly, a packet will be sent, i.e., q=K−1 in the next slot. However, for all other queue levels, it is possible to maintain the same queue level by sending and receiving one packet. That is even more apparent for \(\boldsymbol {\mathcal {A}}_{n}=1.5\) where a queue level larger than q=5 most of the time leads to a packet acceptance probability of P_{accept,n}=0.67 for both scenarios. Having q=K more often than other queue levels is only possible for very high rates of \(\boldsymbol {\mathcal {A}}_{n} = 2.5\). Here, the node is highly congested and a P_{accept,n}=0.40 is achieved in both scenarios.
When comparing the scenarios, we see that the difference is not very large, but in the second scenario, the probabilities are shifted to the boundaries. This evaluation also shows that often only a small part of the queue is actually utilized. For \(\boldsymbol {\mathcal {A}}_{n} = 0.5\), a maximum queue size of K=3 would be sufficient to prevent packet loss. Also for \(\boldsymbol {\mathcal {A}}_{n} = 2.5\), this would not change the packet acceptance probability. The probability distribution would shift to the left, but does not change its overall shape relative to the upper bound. Of course, the queuing delay would be reduced by this. The bottom line is that the maximum queue length K has the highest influence in scenarios where the amount of incoming and outgoing traffic is similar.
6 Multihop model
To model multihop communication, every node in the network gets its own instance of the previously presented model. They are then linked to get a full network for allowing to determine networkwide metrics.
6.1 Traffic generation and forwarding
but other traffic patterns can be obtained by choosing individual values for λ_{n,i}.
The forwarding is modeled by the Bernoulli part of the traffic model since at most one packet can be received per slot, so β_{n,i}=μn,iRX.
6.2 Network throughput
6.3 Endtoend metrics
where p_{ n } is the parent of v_{ n } in the routing tree.
6.4 Comparing model and simulation
While the simulation uses the Routing Protocol for Low power and Lossy Networks (RPL) [40], the analytical model uses a predefined tree routing as in [41]. The PDR \(\mathfrak {R}_{\text {up},{n}}\) and the endtoend delay \(\mathfrak {D}_{\text {up},{n}}\) are shown in the plot. Obviously, no confidence intervals are shown because no randomness is included in the calculation. The results show a good conformance between model and simulation and demonstrate the applicability of the analytical model for multihop networks as well as the validity of the Contiki simulation for the given scenario. The existing differences can be mainly traced back to the varying routing trees in the simulation runs.
7 Comparing multihop schedules
The analytical model is also very useful to assess new scheduling algorithms without the need to implement them for a full simulation stack. Orchestra is an appropriate schedule for many applications, especially since it requires no management traffic, but its main disadvantage is its inability to handle different traffic loads efficiently. In the given scenario, the inner nodes have to handle the aggregated traffic of all nodes in their sub tree, so they should be able to use more slots than the leafs.
In this section, two trafficaware schedules are introduced for the data collection scenario presented in the previous section for a given tree. The main idea is that every node has enough slots for the traffic generated at that node as well as for forwarding the traffic of its children, assuming equal traffic distribution. More formally, if γ_{ n } denotes the number of proper descendants of node v_{ n }, every node will get γ_{ n }+1 transmission slots towards the sink. Algorithm 1 describes a distributed algorithm to calculate γ_{ n } for every node and also to make every node aware of the number of proper descendants of their children. For this, every node keeps the variables v_{ n }.γ for the number of proper descendants of this node n and for each child s its number of proper descendants v_{ n }.γ_{ s }. As before, v_{0} denotes the sink node and p_{ n } the index of the parent of node v_{ n }.
The algorithm is basically a depthfirst search. It is started by sending FORWARD to v_{0}. After initializing v_{0}.γ, FORWARD messages are sent until a leaf is reached. After this, a BACKTRACK message is sent back to the parent. The parent increments its counters before continuing the depthfirst search. After a subtree is fully handled, the number of nodes in this subtree is sent back to the parent in a BACKTRACK message.
In the presented distributed algorithms, we assume all messages arrive correctly and in order. Otherwise, the algorithms would get a lot more complex. Associated problems and solutions for unreliable message exchange when building schedules are presented in [35].
The schedules presented in this section are meant to demonstrate the applicability of the analytical model and the advantage of trafficaware schedules. However, they are not directly applicable to realworld applications due to their inability to cope with changes in the network topology and the traffic load without a complete recalculation. Yet, due to their simplicity, they serve as a starting point for more sophisticated trafficaware schedules.
7.1 Trafficaware schedule (singlechannel)
The first trafficaware scheduling algorithm as shown in Algorithm 2 is based on the scheduling algorithm type III from [42]. As for Orchestra’s Senderbased Dedicated Slots, only one node in the entire network is sending at every given point in time, so again \(\boldsymbol {\mathcal {D}}_{i,\cup } = \emptyset \). It is therefore denoted as singlechannel scheduling, though, similar to Orchestra, channel hopping could be used to mitigate external interferences.
The algorithm is started by sending TRACK(1) to v_{0} after every node has performed the initialization. The algorithm is a depthfirst search again, but instead of sending back the number of nodes in the subtree, multiple transmission slots are reserved towards the parent, one for handling the traffic of every proper descendant and one for the traffic generated at that node (γ_{ n }+1). The transmission slot is recorded in the local \(\mathcal {T}_{n}\) and a message is sent to the parent \(v_{p_{n}}\) to record the reception slot in its \(\mathcal {R}_{p_{n}}\). When sending the TRACK message back to the parent, the number of already assigned slots is sent along as an offset for the next slot assignment.
since every node (apart from v_{0}) performs γ_{ n }+1 slot allocations. The additional slot is the first slot of the slotframe that is usually left free for shared communication in most TSCH implementations, for example for management traffic. This also holds for the used Orchestra implementation.
7.2 Trafficaware schedule (multichannel)
In general, it is not required that only one node is sending at every point in time. Two pairs of nodes that are sufficiently apart can send at the same time without interference. Secondly, nodes can communicate on different channels to avoid interference. This spatial and frequency diversity can be exploited to shorten the slotframe and therefore increase the throughput and lower the latency.
A corresponding distributed algorithm is given in Algorithm 3. In contrast to the previous algorithm, where the child determines the transmission slots towards the parent, in this algorithm, the parent determines the reception slots in which it will expect the child to send. It is started by sending TRACK to v_{0}. As in the previous algorithm, every node requires γ_{ n }+1 transmission slots. This is also calculated in line 9 for a child u when a node is first handled by its parent. Afterwards, σ=v_{ n }.γ_{ u }+1 slot allocations are performed and the loop is always finished in line 20 if we assume there are always enough channels (see below, otherwise line 14 would fail) and l_{ S } is chosen as follows. For every allocation, a previously unused time slot is searched, recorded at sender and receiver and the used channel is blocked in the 2hop neighborhood. For this, every node maintains a set of blocked channels for every slot \({\mathcal {B}}_{n}(i)\). This search will always be successful if we choose the slotframe length as
because the root requires that the slotframe has at least one slot for receiving (potentially forwarded) traffic from every proper descendant. For all other nodes, this holds, too, but in addition, the same number of slots is required for forwarding and one slot for transmitting the traffic generated at that node. Again, the additional slot is the shared first slot in the slotframe. Since we assume enough channels are available to avoid conflicts, the slotframe length corresponds to the requirement of the node with the largest required slotframe length.
In contrast to the other algorithms, transmissions can take place simultaneously without or with very little interference by assigning a dedicated channel or a nonconflicting channel hopping sequence to every conflicting link in a neighborhood. In the presented algorithm, this is ensured by signaling every slot assignment to all neighbors N_{ n } of the sender and the receiver as well as the parents of the neighbors. Thereby, the four interference constellations in Fig. 3 are avoided. This idea is similar to the slot allocation handshake of DSME as well as the DeBraS scheduling algorithm [33] and is especially important for dense networks.
7.3 Evaluation
In general, the trafficaware schedules provide significantly more throughput than Orchestra, while the multichannel schedule has an even higher throughput than the singlechannel schedule. The higher throughput can be explained by considering that nodes higher in the tree that need to handle more traffic have more slots compared to nodes with low traffic demand.
It is also apparent in Fig. 13 that the maximum queue length K is most significant in the transition section, in conformance to Section 5.8. Compared to the applied schedule, it has a lower impact on the throughput, but the difference is larger for N=37 than for N=19 due to the higher number of hops.
Also, when comparing different network sizes, we see that the saturation is reached for smaller rates. This is expected, because the same packet generation rate applied at more nodes leads to more overall traffic. Secondly, the singlechannel schedule and even more Orchestra SBD show a significantly lower throughput, because having more nodes requires a higher number of slots during which the sink is idle. This does not hold for the multichannel schedule, because spatial reuse is possible.
In the table of Fig. 13, the slotframe lengths are given together with the number and ratio of reception slots at the sink v_{0}. For Orchestra SBD, every neighbor of v_{0} has only one slot, so v_{0} has a long phase of inactivity. For the trafficaware schedules, the inner nodes get more slots because of their higher traffic load. Thus, the sink can receive more packets per slotframe resulting in a higher throughput. The missing slot in the last row is due to the shared slot. In the multichannel schedule, the sink can even potentially receive data traffic in every slot, apart from the first one. This comparison again explains the difference in throughput for the different network sizes, because comparative to the network with 19 nodes, the RX ratio is significantly lower for N=37 and the Orchestra SBD and singlechannel schedules, while it is even larger for the multichannel schedule where the shared slot has a lower impact due to the longer slotframe length.
8 Possible extensions
8.1 IEEE 802.15.4 DSME
While the focus of this paper is TSCH due to its higher flexibility and broader usage, the model can easily be applied to DSME, too. The main difference between TSCH and DSME is the availability of distributed management procedures for setting up schedules in the latter, but since the presented model analyzes schedules in a steady state, the only major difference is the slot structure. In TSCH, the time slots can be arbitrarily dedicated as contentionfree and contentionaccess slots. DSME has a less flexible structure. It consists of one beacon slot, 8 contentionaccess slots, and 7 contentionfree slots aligned in a fixed, yet configurable, repeated sequence. The contentionaccess phase is usually used for management, similar to, but longer than the extra slot used in this paper. Secondly, the slots are usually shorter, because TSCH requires some extra time in every slot due to its time synchronization procedure, while DSME uses a dedicated beacon slot (see [43] for details). Therefore, the timing of the model has to be adapted and the schedule has to account for the slots not used for contention free communication.
Furthermore, due to the less flexible structure, a scheduling algorithm such as Algorithm 3 would lead to excess slots that are not utilized. Therefore, a more elaborate algorithm is required to achieve optimal performance by evenly distributing the excess slots.
8.2 Other sources of packet loss
where \(\text {PER}_{b,(\mathcal {K}_{n} (i),n)}(t)\) is the probability that a packet transmission with b byte fails at time t.
An example for a timeindependent calculation of PER_{b,(m,n)} can be found in [41] and in [44] a model for Rayleighlognormal fading in IEEE 802.15.4 networks is given. Time dependence is required for accurate modeling of external interferences or fading channels, but that is out of the scope of this paper.
Furthermore, since the model assumes no losses on the physical layer, retransmissions are not considered. If other sources of packet loss are considered, retransmissions have to be integrated in the model by adding transitions in the Markov chain for maintaining the queue level after a failed transmission. For the considered scenario, these transitions would never be taken and thus not change the results.
9 Conclusions
The paper presents an analytical approach for the assessment of wireless mesh networks that use a collisionfree TDMA. A queuing model based on a Markov chain is proposed that models forwarding traffic and irregular slot schedules accurately, in contrast to the wellknown M/D/1/K model. These models are linked together to build up a multihop model of the whole network for calculating packet delivery ratio, endtoend delay, and throughput.
The results demonstrate the increased accuracy compared to the M/D/1/K model and illustrate the effect of a finite queue by showing the queue level distribution. For evaluating the multihop model, a datacollection scenario is applied. The analytical model is compared to a simulation of the Orchestra schedule, showing good conformance. Finally, two distributed trafficaware scheduling algorithms are presented. The higher throughput achieved by trafficawareness is demonstrated and the influence of the maximum queue length is shown.
The calculations were conducted by means of the Portable, Extensible Toolkit for Scientific Computation (PETSc) [45, 46], the simulations with COOJA [39] and SimPy [38]. The open source implementation of the models can be accessed at [7].
Overall, the proposed analytical model, together with its software implementation, is a useful tool for testing new ideas while developing new slot schedules. It is also very helpful for practitioners who want to estimate the performance of wireless mesh networks.
10 Appendix A: Expected value of A _{n,i}
11 Appendix B: Stationary distribution
with the identity matrix I. This is a homogeneous system of (K+1)·l_{ S } linear equations and the same number of unknowns.
11.1 Irreducibility
Consider the example in Fig. 14 with l_{ S }=3, K=1, g_{up}=0 and \(\mu ^{\text {RX}}_{n,0} > 0\). Since nothing is generated and every packet received in slot 0 is immediately sent out again, the state \(\sigma ^{n}_{1,2 }\) is never visited when starting with q=0. It is also possible to construct more complex examples where blocks of states exist that are linked together, but are not reachable from any state with q=0. This property makes the Markov chain reducible and thus a unique c is not guaranteed by the following proof. Finding these states corresponds to finding the states that are not in the strongly connected set that contains \(\sigma ^{n}_{0,0 }\).
with the square matrices A and D and the matrix 0 with all elements zero.
11.2 Rank of I−P
it holds that Pe=1; thus (I−P)e=0, so the matrix Q has at least one zero eigenvalue, is therefore singular and its rank is at most n−1.
Assuming a rank of n−2 or less, then there is at least one vector x with Qx=0 that is orthogonal to e, i.e. x^{ T }e=0. Thus, all linear combinations of x and e are also in the null space of Q. In particular, this holds for d=x−m·e where m is the minimum entry of x. Then at least one, but not all, elements of d are 0 and all others are larger than 0. Note that this would not hold for x parallel to e. However, this is not possible since x^{ T }e=0.
For d_{ i }>0 ∀1≤i≤u this is only possible if all entries of C are zero or there are negative entries in C. The first one contradicts the irreducibility of P and the second one would require the existence of negative probabilities in P. Therefore, I−P has rank n−1. Since the rank is maintained by transposition, the matrix (I−P)^{ T } has rank n−1, too.
11.3 Solution of c P=c
Since (I−P)^{ T } has rank n−1, the homogeneous system of linear equations (I−P)^{ T }c^{ T }=0 has a solution space of dimension one, so since c·e=1, there is a unique stationary distribution. Furthermore, if we find any vector y≠0 with (I−P)^{ T }y^{ T }=0, we can get c by normalization.
Though most methods for the numerical solution of systems of linear equations are tailored to the handling of regular matrices, many can be adapted for the singular case as presented in [48]. For our application, the implementation of the generalized minimal residual method (GMRES) in PETSc [46] with SOR preconditioning and initial guess 0.5e turned out to work very well. For more background about why and when GMRES is applicable to Markov chains, see Section 4.4.4 in [48].
12 Nomenclature

\(\mathcal {A}_{n}\) Total expected number of generated or received packets per slotframe

A_{n,i} Random variable for the number of arriving, i.e., generated and received, packets in slot i at node n

β_{n,i} Packet probability in the Bernoulli part of the traffic model

\({\mathcal {B}}_{n}\) Relation of slots to blocked channels

\({\mathcal {C}}\) Channels

c ] Vector of the c_{n,q,i}

\({\mathcal {C}}_{n}\) Relation of slots to channel

c_{n,q,i} Probability of being in state \(\sigma ^{n}_{q,i}\) in the stationary distribution

D(v,w) Predicate that describes potential collisions between nodes

\({{\boldsymbol {\mathcal {D}}}}_{i,l}\) The set of possibly disturbing links during slot i

D_{ n } Random variable for the queuing delay

\({\mathfrak {D}}_{\text {up},{n}}\) Endtoend packet delay

γ_{ n } Number of proper descendants of node n

g_{up} Packet generation rate in upstream

I_{ up } Mean packet generation interval

\({\mathcal {K}}_{n}\) Relation of slots to counterpart

L_{ i } The set of active links during slot i

λ_{n,i} Packet rate in the Poisson part of the traffic model

l_{ S } Overall number of slots in the slotframe

\({\mu ^{\textsc {RX}}_{n,i}}\) Probability of receiving a packet in slot i

\({\mu ^{\textsc {TX}}_{n,i}}\) Probability of sending a packet in slot i

N_{ n } Neighbors of node n

P_{accept,n} Packet accepting probability

PER_{b,l} Packet error rate for a transmission of b bytes

p_{ n } Parent of node n

Π_{n,i} Random variable for the number of arriving packets according to the Poisson part of the traffic model

Q_{ n } Random variable for the number packets inserted into the queue

\({\mathcal {R}_{n}}\) Reception slots

\({\mathfrak {R}}_{\text {up},n}\) Reliability that a packet sent by n arrives at the sink

r_{n,i} Reception slot.

\({\left \vert \mathcal {T}_{n}\right \vert }\) Number of transmission slots in the schedule for node n

Σ_{ n } The set of states for the queuing model

\(\sigma ^{n}_{q,i}\) State in the queuing model

\({\mathcal {T}_{n}}\) Transmission slots

T_{ s } Duration of a slot

t_{n,i} Transmission slot

v_{0} Root node

v_{ n } Node with index n
Notes
Funding
This study was funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation)  Projektnummer 392323616 and the Hamburg University of Technology (TUHH) in the funding programme Open Access Publishing.
Availability of data and materials
The software implementing the presented model is available at https://github.com/koalo/AnalyticalMultiHopunder the terms of the GNU General Public License v3.0. It is written in C++ and based on the Portable, Extensible Toolkit for Scientific Computation (PETSc) available for Linux and Windows.
Authors’ contributions
FK developed and evaluated the presented model and wrote the draft as main author. VT provided many useful proposals and significantly contributed to the revision of the whole paper. All authors read and approved the final manuscript.
Competing interests
The authors declare that they have no competing interests.
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
References
 1.T O’donovan, T Brown, F Büsching, A Cardoso, J Cecílio, JD Ó, P Furtado, P Gil, A Jugel, WB Pöttner, et al., The GINSENG System for wireless monitoring and control: design and deployment experiences. ACM Trans. Sen. Netw.10(1), 4:1–4:40 (2013).Google Scholar
 2.A Pfahl, M Randt, F Meier, M Zaschke, CPW Geurts, M Buselmeier, in Proceedings of the 20th International Conference on Concentrated Solar Power and Chemical Energy Technologies (SolarPACES). A holistic approach for low cost heliostat fields (ElsevierBeijing, 2014).Google Scholar
 3.F Meier, V Turau, in Proceedings of the 11th International Conference on the Design of Reliable Communication Networks (DRCN). An Analytical Model for Fast and Verifiable Assessment of Large Scale Wireless Mesh Networks (IEEEKansas City, 2015).Google Scholar
 4.IEEE, IEEE 802.15.4™2015  IEEE Standard for Local and metropolitan area networks–Part 15.4: LowRate Wireless Personal Area Networks (WPANs) (2016).Google Scholar
 5.M Köstler, F Kauer, T Lübkert, V Turau, in Proceedings of the 15. GI/ITG KuVS Fachgespräch Sensornetze, ed. by J Scholz, A von Bodisco. Towards an Open Source Implementation of the IEEE 802.154 DSME Link Layer (Hochschule AugsburgAugsburg, 2016).Google Scholar
 6.S Duquennoy, B Al Nahas, O Landsiedel, T Watteyne, in Proceedings of the 13th ACM Conference on Embedded Networked Sensor Systems. Orchestra: Robust Mesh Networks Through Autonomously Scheduled TSCH (ACMSeoul, 2015).Google Scholar
 7.F Kauer, Analytical Model for IEEE 802.154 Mesh Networks  Implementation. GitHub Repository (2017). https://github.com/koalo/AnalyticalMultiHop. Accessed 18 Jul 2017.
 8.P Pathak, R Dutta, A survey of network design problems and joint design approaches in wireless mesh networks. IEEE Commun. Surv. Tutorials. 13(3), 396–428 (2011).CrossRefGoogle Scholar
 9.J Zheng, MJ Lee, in Sensor Network Operations, ed. by S Phoha, T LaPorta, and C Griffin. A Comprehensive Performance Study of IEEE 802.15.4. (WileyHoboken, 2005), pp. 218–236.Google Scholar
 10.P Dutta, J Hui, J Jeong, S Kim, C Sharp, J Taneja, G Tolle, K Whitehouse, D Culler, in Proceedings of the 5th International Conference on Information Processing in Sensor Networks (IPSN). Trio: Enabling Sustainable and Scalable Outdoor Wireless Sensor Network Deployments (IEEENashville, 2006).Google Scholar
 11.J Mišić, S Shafi, VB Mišić, Performance of a Beacon Enabled IEEE 802.15.4 Cluster with Downlink and Uplink Traffic. IEEE Trans. Parallel Distributed Syst. 17(4), 361–376 (2006).CrossRefGoogle Scholar
 12.P Di Marco, P Park, C Fischione, KH Johansson, Analytical Modeling of Multihop IEEE 802.15.4 Networks. IEEE Trans. Vehicular Technol. 61(7), 3191–3208 (2012).CrossRefGoogle Scholar
 13.G Alderisi, G Patti, O Mirabella, LL Bello, in Proceedings of the 13th International Conference on Industrial Informatics (INDIN). Simulative Assessments of the IEEE 802.15.4e DSME and TSCH in Realistic Process Automation Scenarios (IEEECambridge, 2015).Google Scholar
 14.DD Guglielmo, A Seghetti, G Anastasi, M Conti, in Proceedings of the 19th IEEE Symposium on Computers and Communications (ISCC). A Performance Analysis of the Network Formation Process in IEEE 802.15.4e TSCH Wireless Sensor/Actuator Networks (IEEEMadeira, 2014).Google Scholar
 15.P Sahoo, S Pattanaik, SL Wu, A Novel IEEE 802.15.4e DSME MAC for Wireless Sensor Networks. Sensors. 17(1), 168 (2017).CrossRefGoogle Scholar
 16.WC Jeong, J Lee, in Proceedings of the First IEEE Workshop on Enabling Technologies for Smartphone and Internet of Things (ETSIoT). Performance Evaluation of IEEE 802.15.4e DSME MAC Protocol for Wireless Sensor Networks (IEEESeoul, 2012).Google Scholar
 17.J Gronkvist, J Nilsson, D Yuan, in Proceedings of the 59th IEEE Vehicular Technology Conference (VTC). Throughput of Optimal Spatial Reuse TDMA for Wireless Adhoc Networks (IEEEMilan, 2004).Google Scholar
 18.P Bjorklund, P Varbrand, Di Yuan, in Proceedings of the 22th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM). Resource Optimization of Spatial TDMA in Ad Hoc Radio Networks: A Column Generation Approach (IEEESan Francisco, 2003).Google Scholar
 19.CH Ng, S BoonHee, Queueing Modelling Fundamentals: With Applications in Communication Networks, 2nd edn. (Wiley,Hoboken, 2008).CrossRefMATHGoogle Scholar
 20.DW Seo, Explicit Formulae for Characteristics of FiniteCapacity M/D/1 Queues. ETRI J. 36(4), 609–616 (2014).CrossRefGoogle Scholar
 21.J MacGregor Smith, Properties and Performance Modelling of Finite Buffer M/G/1/K Networks. Comput. Oper. Res. 38(4), 740–754 (2011).MathSciNetCrossRefMATHGoogle Scholar
 22.K Khan, H Peyravi, in Proceedings of the 6th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS). Delay and Queue Size Analysis of TDMA with General Traffic (IEEEMontreal, 1998).Google Scholar
 23.A Dunkels, B Grönvall, T Voigt, in Proceedings of the 29th International Conference on Local Computer Networks. Contiki  A Lightweight and Flexible Operating System for Tiny Networked Sensors (IEEETampla, 2004).Google Scholar
 24.D Dujovne, L Grieco, M Palattella, N Accettura, 6TiSCH 6top Scheduling Function Zero (SF0), Internet Engineering Task Force (2017).Google Scholar
 25.S Anamalamudi, M Zhang, A Sangi, C Perkins, SVR Anand, Scheduling Function One (SF1) for hopbyhop Scheduling in 6tisch Networks, Internet Engineering Task Force (IETF) (2017).Google Scholar
 26.IEC, IEC 62591:2010  Industrial communication networks  Wireless communication network and communication profiles  WirelessHART™ (2010).Google Scholar
 27.WB Pöttner, H Seidel, J Brown, U Roedig, L Wolf, Constructing Schedules for TimeCritical Data Delivery in Wireless Sensor Networks. ACM Trans. Sen. Netw. 10(3), 44:1–44, 31 (2014).Google Scholar
 28.MR Palattella, N Accettura, LA Grieco, G Boggia, M Dohler, T Engel, On Optimal Scheduling in DutyCycled Industrial IoT Applications Using IEEE802.15.4e TSCH. IEEE Sensors J. 13(10), 3655–3666 (2013).CrossRefGoogle Scholar
 29.N Accettura, E Vogli, MR Palattella, LA Grieco, G Boggia, M Dohler, Decentralized Traffic Aware Scheduling in 6TiSCH Networks: Design and Experimental Evaluation. IEEE Internet Things J.2(6), 455–470 (2015).CrossRefGoogle Scholar
 30.RH Hwang, CC Wang, WB Wang, A Distributed Scheduling Algorithm for IEEE 802.15.4e Wireless Sensor Networks. Comput. Stand. Interfaces. 52(C), 63–70 (2017).CrossRefGoogle Scholar
 31.R Soua, P Minet, E Livolant, Wave: a Distributed Scheduling Algorithm for Convergecast in IEEE 802.15.4e TSCH Networks. Trans. Emerging Telecommun. Technol. 27(4), 557–575 (2016).CrossRefGoogle Scholar
 32.R Soua, P Minet, E Livolant, Wave: a Distributed Scheduling Algorithm for Convergecast in IEEE 802.15.4e TSCH Networks (Extended Version), Research Report RR8661, Inria (2015).Google Scholar
 33.E Municio, S Latré, in Proceedings of the Workshop on Mobility in the Evolving Internet Architecture (MobiArch). Decentralized Broadcastbased Scheduling for Dense Multihop TSCH Networks (ACMNew York, 2016).Google Scholar
 34.M Ojo, S Giordano, G Portaluri, D Adami, M Pagano, in Proceedings of the IEEE International Conference on Communications Workshops (ICC Workshops). An Energy Efficient Centralized Scheduling Scheme in TSCH Networks (IEEEParis, 2017).Google Scholar
 35.F Kauer, M Köstler, T Lübkert, V Turau, in Proceedings of the 19th ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWIM). Formal Analysis and Verification of the IEEE 802.154 DSME Slot Allocation (ACMMalta, 2016).Google Scholar
 36.G Siegemund, V Turau, C Weyer, in Proceedings of the International Conference on Adhoc, Mobile and Wireless Networks (ADHOCNOW). A Dynamic Topology Control Algorithm for Wireless Sensor Networks (SpringerAthens, 2015).Google Scholar
 37.T Kuruganti, W Dykas, W Manges, T Flowers, M Hadley, P Ewing, T King, Wireless System Considerations When Implementing NERC Critical Infrastructure Protection Standards, Oak Ridge National Laboratory, TN, USA, Flowers Control Center Solutions, Todd Mission, TX, USA (Pacific Northwest National Laboratory, Richland, 2009).Google Scholar
 38.Team SimPy, SimPy  Discrete Event Simulation for Python (2017). https://simpy.readthedocs.io. Accessed 14 Jul 2017.
 39.F Osterlind, A Dunkels, J Eriksson, N Finne, T Voigt, in Proceedings of the 31st International Conference on Local Computer Networks. CrossLevel Sensor Network Simulation with COOJA (IEEETampla, 2006).Google Scholar
 40.R Alexander, A Brandt, J Vasseur, J Hui, K Pister, P Thubert, P Levis, R Struik, R Kelsey, T Winter, RPL: IPv6 Routing Protocol for LowPower and Lossy Networks (Internet Engineering Task Force, Fremont, 2012).Google Scholar
 41.F Meier, V Turau, Analytical Model for IEEE 802.15.4 MultiHop Networks with Improved Handling of Acknowledgements and Retransmissions (2015). arXiv:1501.07594 [cs.NI], http://arxiv.org/abs/1501.07594.Google Scholar
 42.V Turau, C Weyer, in Proceedings of the IEEE International Conference on Mobile Adhoc and Sensor Systems (MASS). TDMAschemes for treerouting in data intensive wireless sensor networks (IEEEPisa, 2007).Google Scholar
 43.I Juc, O Alphand, R Guizzetti, M Favre, A Duda, in Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC). Energy Consumption and Performance of IEEE 802.15.4e TSCH and DSME (IEEEDoha, 2016).Google Scholar
 44.P Di Marco, C Fischione, F Santucci, K Johansson, in Proceedings of the IEEE International Conference on Communications (ICC), Effects of RayleighLognormal Fading on IEEE 802.15.4 Networks (IEEEBudapest, 2013).Google Scholar
 45.S Balay, WD Gropp, LC McInnes, BF Smith, in Modern Software Tools in Scientific Computing, ed. by E Arge, AM Bruaset, and HP Langtangen. Efficient Management of Parallelism in Object Oriented Numerical Software Libraries (Birkhäuser, Boston, 1997), pp. 163–202.Google Scholar
 46.S Balay, S Abhyankar, MF Adams, J Brown, P Brune, K Buschelman, L Dalcin, V Eijkhout, WD Gropp, D Kaushik, et al, PETSc Users Manual, Technical Report ANL95/11  Revision 3.7 (2016).Google Scholar
 47.IM Chakravarti, On a Characterization of Irreducibility of a NonNegative Matrix. Linear Algebra Appl.10(2), 103–109 (1975).MathSciNetCrossRefMATHGoogle Scholar
 48.WJ Stewart, Introduction to the numerical solution of markov chains (Princeton University Press, Princeton, 1994).MATHGoogle Scholar
Copyright information
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.