Abstract
Keywords
Introduction
In the vision of the Internet of Things (IoT), all of the things around us are connected to the Internet and cooperate with each other to achieve a common goal without human intervention. 1 IoT is defined in many forms and contains many different research areas. Atzori et al. 2 categorize the IoT in terms of three distinct perspectives: Internet, Things, and Semantics. The implementation of the IoT requires web and Internet technologies (an Internet-oriented vision to connect things to the Internet), identification and wireless sensor network (WSN) technologies (a Things-oriented vision to connect things to each other), and context awareness technology (a Semantic-oriented vision to provide intelligent services).
In this article, we focus on the Things-oriented vision. Billions of intelligent communicating
Time-slotted channel hopping (TSCH) is one of the medium access control (MAC) behavior modes defined in the IEEE 802.15.4e MAC amendment. 4 It was designed mainly for industrial wireless networks and has become the de facto standard for industrial WSNs. Industrial wireless network technologies require the highest levels of reliability and stability, and the network must be able to operate in very harsh environments. TSCH was designed for industrial applications, and these features of TSCH make it well suited for IoT environments in coexistence with various wireless communication technologies.
Although TSCH provides high reliability, this reliability cannot be achieved automatically. First, TSCH based on IEEE 802.15.4e has several network parameters, and a TSCH network should be configured properly according to the network environment. Second, TSCH is a time-slotted access technique based on multi-channel concept, and slot scheduling is an essential element to provide reliability, although the 802.15.4e MAC amendment does not specify how to make such a schedule.
The Internet Engineering Task Force (IETF) 6TiSCH Working Group (WG) proposed a sub-layer (i.e. the 6top layer) to allow TSCH to be used easily and to utilize industrial-like reliability with IoT networks,2,5 and there is some slot scheduling research for TSCH in the IoT environment. Palattella et al. 6 and Jin et al. 7 proposed a central slot scheduling algorithm, and Accettura et al., 8 Soua et al., 9 and Choi and Chung 10 proposed a distributed slot scheduling algorithm for TSCH. However, the dynamic changes of a network can cause a lack of network resources. For example, when new devices participate in the network or the data traffic is increased, the network resources may be insufficient due to the fixed length of the TSCH slotframe. The simplest way to acquire additional resources is to extend the slotframe length. However, the conventional reconfiguration method to extend this length using an Enhanced Beacon (EB) creates significant overhead. The conventional method adversely affects the reliability of the network for IoT services, and a new idea is needed to solve the problem.
In this article, we introduce the IEEE 802.15.4e TSCH MAC behavior mode briefly in section “TSCH,” and in section “Changing the TSCH slotframe length” we analyze the problems that can occur when changing the TSCH slotframe length. To resolve these problems, we propose a virtual slotframe technique in section “Virtual slotframe.” In section “Performance evaluation,” we evaluate the performance of the conventional reconfiguration method and the proposed idea. Finally, in section “Conclusion and future work,” we draw conclusions and suggest future work.
TSCH
TSCH overview
Industrial wireless network technologies require the highest levels of reliability and stability, and the network must be able to operate in very harsh environments. TSCH was designed for industrial applications and combines
TSCH was designed for industrial applications to have high reliability and to be robust against interference. Such features make it well suited for IoT environments, in coexistence with various wireless communication technologies. The IETF WGs have been developing a Low-power Lossy Network (LLN) stack 12 to realize the IoT, and they expect that the TSCH network could open up various services to those applications that cannot currently utilize IoT wireless networks due to reliability problems (e.g. home security, smart city, assisted driving, tracking, etc.). 13
As a part of such efforts, the IETF 6TiSCH WG proposed a sub-layer for TSCH. 14 IEEE 802.15.4e only defines the TSCH mechanism for communication and does not specify a logical link control (LLC; e.g. a network policy and slot scheduling) to utilize such a mechanism. The IETF 6TiSCH WG defines an LLC layer to bridge such a gap and to control the logical link easily. Moreover, IEEE 802.15.4e defines only the MAC layer, and it is possible to utilize other IETF IoT network stacks such as Routing Protocol for Low-power and Lossy networks (RPL) and Constrained Application Protocol (CoAP). 15 These efforts will allow TSCH designed for industrial wireless networks to be used widely in IoT environments.
TSCH mechanism
A TSCH network requires time synchronization, and all devices in the network must be synchronized with a coordinator. The time synchronization algorithm used for TSCH should support a multi-hop network, which means that the algorithm must handle problems such as clock drift, which can occur in multi-hop networks. Synchronization performance is a very important issue in a TSCH network, because it is directly related to the energy efficiency and reliability of the network.
As shown in Figure 1, the slotframe of a TSCH network repeats over time, and one slotframe consists of multiple timeslots. Figure 1 shows an example of a four-length slotframe that consists of four timeslots; the actual length of a slotframe depends on the network configuration. A single communication is performed at one timeslot, and the length of each timeslot is configured to allow the exchange of data and an acknowledgment (ACK). A slot offset refers to the relative location from the start of a slotframe, and it is recounted at the start of each slotframe. In contrast, the absolute slot number (

Frame structure of a TSCH network.
The IEEE 802.15.4 PHY standard defines 16 channels at the 2.4-GHz frequency band. TSCH can use the channels selectively, and the number of channels used depends on the network configuration. A channel offset means an index of the available channel list, and the real frequency of the channel is calculated by equation (1)
where
Link scheduling for TSCH
Figure 2 shows a generic example of a multi-hop wireless network. If a transmission from device 3 reaches device 4, the reception of device 4 will be disturbed. However, if device 4 uses another channel, the transmission of device 3 does not affect device 4. Although the multi-channel technique allows collisions to be avoided, a single device can use only one channel because low-power wireless networking devices generally have only one transceiver. In other words, devices 3 and 4 cannot transmit to device 1 at the same time, even if they use separate channels.

Tree topology of a multi-hop wireless network.
Slot scheduling is required to communicate in a stable manner without collision. Moreover, utilizing parallelism in multi-channel requires a coordinated channel selection that considers the interference relationships. A goal of slot scheduling is to ensure contention-free communication by scheduling communications that could cause a collision at different times or on different channels. For this purpose, information is required about the network, in order to establish the collision and interference relationships. Slot scheduling based on the network environment must be rescheduled according to changes in environment to provide optimal performance.
In the literature,6–10 relatively recent slot scheduling algorithms for a TSCH network were proposed; they allocate links according to the level of traffic in a convergecast network and aim to transfer all data to the root device within a single slotframe. However, the traffic level can change according to changes in the network environment, such as the participation of new devices or a change of topology. In this case, rescheduling must be performed to comply with the basic settings of the network (i.e. duty cycle) or the goal of the algorithm (i.e. to transfer all data to the root within a single slotframe). However, restricted resources within a single slotframe could make this impossible. To solve such a problem, a slotframe management mechanism is required that can allocate network resources effectively.
Changing the TSCH slotframe length
Figure 3 shows an example of slot scheduling for devices 1, 4, and 7, which are shown in Figure 2; each device has its own links to communicate with its neighbors. In this example, if a new device participates in the network as a child of device 4, an additional link cannot be allocated to the new device due to a lack of resources. It might appear that the slot schedule of device 4 in Figure 3(b) has spare links, but these other links are not available because a device can listen to only one channel at a time. In order to solve this problem, a basic solution is to increase the length of the slotframe. However, in order to implement such a solution, EB messages should be transferred securely to each device in the network, which causes significant overheads.

An example of slot scheduling for devices 1, 4, and 7: (a) slot schedule of device 1, (b) slot schedule of device 4, and (c) slot schedule of device 7.
A TSCH network advertises the EB messages in order to maintain the network; these messages contain channel hopping, timeslot, initial link, and slotframe information. Coordinator devices in the TSCH network should advertise the EB messages, and a device wishing to join the network scans the EB messages. After receiving an EB message, the device synchronizes with the network and sets the network configuration using the information contained in the EB. The coordinators have a duty to advertise EB messages to support the aforementioned sequences and announce the presence of the network.
Going back to the previous problem, if the length of the slotframe is required to change according to the network environment, the coordinators would advertise the EB messages containing the update information to the TSCH slotframe and Link Information Element (IE). Devices that receive the EB message will change network configurations, so if the configuration associated with the length of slotframe is changed, it may cause a problem.
Figure 4 shows an example of such a problem. At time t0, devices D1 and D3 are synchronized with each other and operate with a four-length slotframe, and at time t1 device D1 changes the length of its slotframe and transmits an EB message containing this information. If device D3 fails to receive the EB message or does not apply the changed configuration immediately, the slotframe of device D3 will drift and all communication after time t2 will fail. Since the slotframe of device D1 starts at time t3, but the device D3, which has not received the changed information, still starts at time t2.

Example of a problem that can occur when changing the length of a slotframe (Late Change).
As shown in Figure 5, if device D3 receives the EB message and changes the length of its slotframe immediately, the start of the slotframes would be synchronized at time t3, and devices D1 and D3 can communicate successfully with each other. However, D5 (the child device of D3) will fail in every communication after time t2, because D5 is still operating using a four-length slotframe. Moreover, the misaligned schedule of D5 acts as an interference factor to the neighbor devices, and it will reduce overall network performance. In other words, regardless of the timing of applying the configuration, slotframe drift cannot be avoided. If the slotframe drift lasts for a relatively long time, a device could be disconnected from the network and lose synchronization. One solution is to synchronize the timing of applying the changed configuration by considering how much time it would take for an EB message to propagate throughout the network. However, it is very difficult to guarantee secure propagation of EB messages without loss. Even if the network can guarantee such secure propagation, calculating the propagation delay considering the loss of EB requires too complicated a process and arithmetic for constrained devices. This EB-based method forces too heavy an overhead on the devices.

Example of a problem that can occur when changing the length of slotframe (Immediate Change).
Consequently, an IEEE 802.15.4e TSCH network that does not use any special techniques should change its network configuration gradually, even if a severance of the network may occur (for convenience, let the basic method for changing the length of a slotframe be called the
Virtual slotframe
Virtual slotframe method
The basic idea of the proposed technique, called a virtual slotframe, is to make a logical slotframe by connecting multiple slotframes without reconfiguring the network. A slot scheduler will perceive the virtual slotframe as merely a long slotframe and can schedule it using more resources than it actually has (let the schedule that uses the virtual slotframe be called a virtual schedule). The devices that participate in the network can then translate the virtual schedule into a real link. Unlike the
In order to describe the proposed technique, we define certain variables shown in Table 1. The virtual slotframe coefficient (
Variables for the virtual slotframe.
The
Fundamentally, the devices shown in the example in Figure 3 cannot communicate with their neighbors by means of the virtual slot offset (

Example of a virtual slotframe structure (
When a virtual schedule is allocated to a device, the device can calculate a
In a similar manner, the real slot offset can be arrived at by the remainder value after the virtual slot offset has been divided by the length of the slotframe, as in equation (3)
At the slot scheduler and each device, the
The

Communication decision procedure.
Let us summarize the operation flow of the virtual slotframe technique:
Slot scheduling—the slot scheduler perceives that the length of the slotframe is longer than it should actually be and builds a virtual schedule using the virtual slotframe structure;
Virtual schedule translation—when the virtual schedule is allocated to devices, it is translated into a real schedule suited for the real slotframe structure using equations (2) and (3);
Execution of the schedule—by comparing the results of equations (2) and (4), the devices decide when to execute the virtual schedule.
As shown in Figures 4 and 5, when changing the TSCH slotframe length, the gradual-changing method cannot avoid network severance due to the drift of the EB slot. However, the proposed method can minimize the severance time. The virtual slotframe increases in multiples of the
The conventional method can also achieve a similar effect if the length of the slotframe is changed in multiples. However, if the length of the slotframe is not set to a prime number, the channel cannot be used evenly,
13
and if the length is increased by a multiple, it cannot be set to a prime number. Moreover, if the length is simply increased by a multiple, delicate adjustment of the slotframe is not possible. However, if the virtual slotframe is set to a small prime number and then increased by the
Local virtual slotframe
For IoT applications, such as Smart Home or Smart Factory, WSNs collect data periodically and deliver commands to actuators. Generally, when devices in a network transmit data periodically, some devices located near the root suffer heavy traffic loads in relaying the received data. Conversely, devices located far from the root have relatively light traffic loads. However, a conventional TSCH network that shares the same fixed slotframe length cannot allocate resources according to the requirements of each device under asymmetric traffic conditions.
Moreover, IoT applications can have different data collection periods, and it is difficult to configure the slotframe length considering all the applications. Let us assume
The proposed technique causes the slot scheduler to operate logically using additional information (i.e. the
In the examples shown in Figures 2 and 3, when a new device participated in the network as a child of device 4, there was a problem: device 4 could not allocate resources to the new device because device 4 did not have sufficient resources. Figure 8 shows an example of the locally applied virtual schedule to resolve such a problem. In Figure 8(b), unlike other devices (i.e. devices 1 and 7) that are operating using

Example of the locally applied virtual schedule: (a) slot schedule of device 1, (b) slot schedule of device 4 (
However, in Figure 8(a) and (b), devices 1 and 7 still have links related with device 4 (links A and B), and the remaining links may incur unnecessary communication attempts. However, when devices 1 and 7 receive the EB of device 4, they would notice that device 4 uses
Although the virtual slotframe technique allows a TSCH network to allocate resources flexibly, it has the same issue as IEEE 802.15.4e. The virtual slotframe technique can be categorized as a slotframe management method, and thus it does not define how the technique would be utilized. In order to utilize the virtual slotframe technique properly, a slot scheduling algorithm is required that can satisfy the following conditions:
It must allow the slotframe to expand freely according to the requirements of each device;
It must be able to handle the effects of adjacent devices caused by expansion;
It must be able to handle conflicts that can occur when different logical schedules are translated.
TSCH multiple slotframes
The
First, when network resources are insufficient, the multiple-slotframe technique can create a new slotframe of sufficient length without network severance. However, this approach creates multiple unique slotframes distinguished by
On the other hand, the proposed technique operates on a single slotframe structure, and it can flexibly extend a slotframe to secure resources for scheduling with lower overhead. Since the proposed technique provides a virtualized view to the slot scheduler through the VSC, the slot scheduler does not need to identify the slotframe to which the schedule is to be applied. Therefore, it is easier to manage the schedule. Furthermore, it is also possible to use multiple slotframes and simultaneously apply the proposed technique for each slotframe.
Second, the multiple-slotframe technique can be used to allocate the appropriate resources for various IoT applications with different periods. However, this approach also has a problem of increasing packet overhead and complexity and there is a limit in the local allocation of resources. For example, in peer-to-peer (P2P) communication, the multiple-slotframe technique is difficult to allocate a new slotframe only to the devices on the path. On the other hand, the proposed technique can allocate additional resources to the devices on the path by adjusting the VSC locally at the scheduler level.
Consequently, in the case of low-power networks where the length of slotframe changes frequently or multiple IoT applications operate simultaneously, the multiple-slotframe and the proposed techniques can both be considered as a way to solve the problems. However, the multiple-slotframe technique requires a more complex system and large memory footprint to manage the configuration and schedule of each slotframe, and it causes a significant overhead in a constraint low-power system. We think that if we can get a similar effect on both technologies, we do not need to endure this overhead in low-power systems. On the other hand, if the network is operated by various business operators (such as commercial network systems), strict network separation may be required for billing, security, and quality of service (QoS) provisioning. The multiple-slotframe technique could be more suitable for such a case. Compared to Wi-Fi, it is similar to running multiple networks with multiple Service Set IDentifiers (SSIDs) in a single AP to provide QoS differentiating and security management for the network. In conclusion, I argue that they have obvious differences in terms of operating environment, purpose and efficiency.
Performance evaluation
When the length of the slotframe is changed in an IEEE 802.15.4e TSCH network, the gradual-changing method (i.e. the conventional basic mechanism using an EB message) cannot avoid slotframe drift. After the change has started, the slotframe drift severs a connection to a device, and this severance will last until the device receives an EB message. It is possible that the device could receive an EB message by chance. However, it has a relatively high probability of being severed, which decreases the reliability of the network.
In order to show the comparison between the conventional method and the proposed technique, we use an OpenWSN simulator 16 developed in the Python language; the configuration of the simulator is shown in Table 2. Each device is placed randomly in a 300 m × 300 m space, and the network is formed using IETF RPL. 12 We use all 16 channels of IEEE 802.15.4 PHY, and the length of the slotframe is configured as a prime number to utilize the channels equally. Each device in the network operates as a full-function device (FFD) and advertises EB messages periodically. The basic advertising period is approximately 30 s, and it is diffused randomly to alleviate collisions of the EB messages. 17 After all devices in the network are synchronized with the root device, the root device changes a slotframe length (to another prime number). In this simulation, we measure the average and maximum time to reconfigure the slotframe length of all the devices in the network.
Simulation parameters.
MAC: medium access control; TSCH: time-slotted channel hopping; IETF: Internet Engineering Task Force; RPL: Routing Protocol for Low-power and Lossy networks.
Figures 9 and 10 show the number of EB cycles (one EB cycle is approximately 30 s) required to reconfigure the slotframe length according to the change in the number of devices and techniques. Figure 9 presents the performance of the gradual-changing method, and the slotframe length (i.e. horizontal axis) is changed to another prime number. In the case of the proposed technique (Figure 10), it does not change the real slotframe length. Therefore, the horizontal axis is changed according to the

Simulation results of changing the slotframe length using the gradual-changing method.

Simulation results of changing the slotframe length using the proposed technique.
The line graphs represent the average number of EB cycles for reconfiguration. With the gradual-changing method (15.4e), a longer slotframe length takes more time to reconfigure. A longer slotframe length produces a lower duty cycle, which increases the probability of slotframe drift. Changing the length of the longer slotframes has a higher probability of synchronization loss; therefore, the average number of EB cycles increases. However, in the case of a simulation that uses 30 devices, the reconfiguration time is shorter than the case with 20 devices, because a device in the former case has a greater chance of receiving an EB due to the number of its neighbors. 17 With the proposed technique (i.e. VS), the result shows a line that is nearly flat. Because the proposed technique does not change the real slotframe length, slotframe drift does not occur. Therefore, the devices do not lose their synchronization and EB can be forwarded stably.
The bar graphs in Figures 9 and 10 represent the maximum number of EB cycles. In the case of the proposed technique, the result is approximately the same as the average. However, in the case of the gradual-changing method, the maximum value is significantly greater than the average. Generally, the maximum value is related to the device that is farthest from the root. Therefore, in the case of the conventional method, the network severance time is closely related to the distance of a device from the root, and the farthest device is most affected by the accumulated slotframe drift.
The case of
With the gradual-changing method, an EB which contains a changed slotframe length is spread out gradually. Therefore, the distance from the root is a key factor of the network severance time. To clarify this relation, we measure the packet delivery ratio (PDR) of each device until all devices in the network are reconfigured. Figures 11 and 12 show the PDR of each device according to the method, slotframe length, and maximum hop count. The bar graphs represent the gradual-changing method (i.e. 15.4e), and the numbers in brackets refer to the slotframe length. The line graphs represent the proposed technique, and the numbers in brackets refer to the

PDR of each device during simulation (maximum three hops).

PDR of each device during simulation (maximum five hops).
In contrast, the proposed technique shows a higher PDR than the conventional method. Although the results in Figures 11 and 12 show that the PDR of the proposed technique is about 90%, the number of actual losses is two or three, because the network severance time of the proposed technique is significantly shorter than that of the conventional method. The number of actual losses per unit time is 20 times smaller than that of the conventional method.
Conclusion and future work
The unstable link of wireless networks and the resource requirement of various different IoT services create a dynamic network environment, and such a situation demands a changeable slotframe length. However, changing the length of the slotframe using an EB message, which is a basic network configuration mechanism of IEEE 802.15.4e, causes significant overhead and decreases the reliability of the network. We analyzed the problems that can occur when changing the slotframe length using a conventional EB message, and we simulated the situation regarding network severance. Furthermore, we proposed a virtual slotframe technique that makes a logical virtual slotframe by connecting multiple real slotframes. The virtual slotframe technique can decrease the network severance time drastically in comparison with the conventional gradual-changing method. The simulation results show that the proposed technique is a maximum of 18 times and an average of 10 times faster than the conventional method.
IoT applications can have different data collection periods and various data traffic patterns. Some applications may report sensor data periodically, or only when an event occurs. Moreover, various asymmetric traffic patterns occur such as a convergecast concentrated in the sink and a P2P relayed between the devices. Such an asymmetric traffic load is difficult to handle flexibly with a fixed-length TSCH, but the proposed technique can appropriately allocate network resources according to the level required by each device. This feature can help each device in the network to maintain a proper duty cycle, and we expect that it could also prolong the overall lifetime of the network. However, in order to prove such an effect, a special slot scheduling algorithm is required that considers the features of virtual slotframe technique. As future research work, we will study such algorithms and show the advantage of flexible slot allocation that uses the virtual slotframe.
