# Resource Scheduling Based on Unequal Clustering in Internet of Things

Authors: Hongying Bai; Xiaotong Zhang; Yingdong Xie; Haiyan Gong; Zhuang Li; Shilong Liu
Journal: Mobile Information Systems
 (2022)

---

## Abstract

Resource scheduling in a fair and efficient manner is a significant challenge in the Internet of Things. Although unequal clustering is an effective technique for alleviating the “energy holes” problem in multihop communication, resource scheduling based on unequal clustering is scarcely conducted. In the present study, a new resource scheduling based on unequal clustering in the Internet of Things (RSUC) is proposed. In RSUC, unequal clustering and multihop routing are considered, and the “energy holes” problem is alleviated effectively. RSUC includes resource scheduling of intracluster communication and intercluster communication. In resource scheduling of intracluster communication, according to the threshold of the number of cluster members, the cluster heads (CHs) recycle resources of failed nodes. In resource scheduling of intercluster communication, CHs in the different layers based on transmission chain obtain different sending and receiving time slots. In RSUC, CHs that are near the base station (BS) have fewer intracluster communication time slots and more intercluster communication time slots. Clusters that are further away from the BS end intercluster communication earlier and enter into intracluster communication instead of waiting for all CHs to complete intercluster communication. The simulation results reveal that RSUC significantly increases the network throughput and reduces the energy consumption of the Internet of Things.


---

## Body

## 1. Introduction

The Internet of Things (IoT) is commonly regarded as the third wave of the information industry after computers and the Internet. The development trend of the IoT will guide the development direction of information technology. IoT has been applied in various fields such as smart homes, smart cities, industrial automation, intelligent transportation, and healthcare systems [1–3]. For example, the Internet of Things can be applied in smart agriculture [4]. In agricultural monitoring systems completed in reference, the massive time series data are stored by using the time series database InfluxDB, which can monitor the orchard environment and flood conditions [5]. Despite such features, several challenging research areas remain, such as the interoperability of systems, resource scheduling, and energy management.A significant challenge in data collection of the IoT is resource scheduling of a large number of IoT nodes [6]. Inspired by time slot channel frequency hopping, Yang et al. proposed a time and power resources allocation in the industrial Internet of Things to maximize the energy efficiency of the system and ensure the stability of communication between IoT nodes [7]. Liu et al. investigated a time scheduling scheme for wireless powered ambient backscatter communications in the Internet of Things [8].Clustering provides effective solutions for reducing energy consumption and extending the lifetime of the IoT. Numerous clustering protocols have been proposed by researchers in previous studies [9]. Aher et al. proposed smart agriculture using clustering and IoT to judge the parameters and present a graphical reading for the users to understand the requirement of the parameters [10]. For multihop communication of large-scale energy-limited wireless networks, the nodes closer to the base station (BS) will undertake heavy forwarding work, which will result in “energy holes” [11]. Unequal clustering is an effective technique for alleviating the “energy holes” problem. In unequal clustering, the network is divided into clusters of different sizes, and the size of the clusters far from the BS is larger than that of the clusters close to the BS.Recently, numerous studies on resource scheduling for the Internet of Things have achieved notable results [12, 13]. Several researchers focused on resource scheduling based on tree topology. Lee et al. proposed the Tree TDMA MAC algorithm using the allocation of time slots and frequencies [14]. Osamy et al. proposed TDMA scheduling for tree-based data collection using a genetic algorithm [15]. Due to the different network characteristics and application environment of various Internet of Things, resource scheduling usually needs to compromise and optimize a variety of design schemes.In the present study, resource scheduling based on unequal clustering in the Internet of Things (RSUC) is proposed. The main contributions of this paper include the following: (1) Unequal clustering is used to alleviate the “energy holes” problem, and in resource scheduling of intracluster communication, the CHs dynamically recycle resources of failed nodes. (2) A routing strategy based on unequal clustering and cluster head layering mechanism is proposed. (3) Resource scheduling based on unequal clustering (RSUC) is proposed in this paper. In RSUC, the CHs near the base station have fewer intracluster communication time slots and more intercluster communication time slots, thereby improving network throughput.The remainder of the present paper is organized as follows. Related work is discussed in Section2. The network model is given in Section 3. The resource scheduling based on unequal clustering in the Internet of Things is presented in Section 4. The theoretical analysis is given in Section 5. Experiments are discussed in Section 6, and the conclusion is provided in Section 7.


## 2. Related Work

Clustering provides effective solutions to reduce energy consumption in the large-scale IoT. For efficient connectivity and communications in the IoT, clustering of the devices was proposed in previous studies [16, 17]. The strategy of unequal clustering can alleviate the “energy holes” problem in multihop communication. Mohamed et al. proposed the dynamic load-balancing cluster-based protocol (DLCP) [18]. DLCP divides the nodes into unequal size clusters. Compared with clusters farther away from the BS, the closest clusters to the BS have smaller sizes. In the CH rotation phase, the node with the highest residual energy is selected as the CH in the next round. In previous research of the present authors, unequal clustering and a routing algorithm based on dynamic topology (DUCR) [19] were proposed, which could balance the network load and prolong the network lifetime. In DUCR, reclustering is performed only when the number of cluster members is beyond the threshold. Clustering is also beneficial for establishing the topology, which could be used to optimize the parameters of quality of service (QoS) and facilitate the management of resources of the heterogeneous Internet of Things [20]. If the nodes are densely distributed in the Internet of Things, the data collected by adjacent nodes will be the same or similar. For clustered networks, the cluster head can fuse data of cluster member. Alam et al. reviewed the data fusion of IoT focusing on mathematical methods and specific environment [21].Routing protocols generally traverse all neighbor nodes to find a relay node. Hierarchical cluster-based routing approaches are efficient solutions that can prolong network life and reduce network energy consumption. Huynh et al. proposed a routing algorithm based on unequal clustering [22]. Once the CHs are selected and clusters are formed, CHs with high residual energy and close to BS are selected as parent CHs for all other remaining CHs. In one study [23], a multibranch tree-based clustering and routing approach was proposed, in which each level is designated an independent node set which leads to the formation of the backbone of the tree. Energy conservation is a significant challenge in the Internet of Things. A cluster tree-based routing protocol (CT-RPL) is proposed [24], in which CH selection is accomplished using a game theoretic approach. Senkar et al. proposed an energy-saving clustering and routing protocol for the Internet of Things based on swarm intelligence [25], which uses a swarm algorithm to select cluster heads and reduce the delay of data to base stations. Xu et al. proposed an improved LEACH clustering routing algorithm in the perception layer of the Internet of Things [26], which optimized the cluster head selection strategy and the routing between the cluster head and the sink node. Chithaluru et al. proposed energy-saving routing scheduling of the Internet of Things based on fuzzy sorting [27]. The cluster head acts as a relay node to transmit data to the BS.Resource scheduling can improve the utilization of limited resources and network throughput. S Abdullah et al. proposed double deep Q-learning-based scheduling in the IoT (DDQL) [28], which could achieve an efficient policy in terms of time and cost-saving under the resource and deadline constraints using the deep reinforcement learning approach. Renato et al. proposed a link scheduling algorithm [29], which minimizes the number of time slots required by the link so that nodes can communicate without interference under the SINR model. Gabale et al. proposed the PIP (Packets in Pipe) algorithm [30], in which the allocation of channels is assigned based on the level of nodes. The main idea of PIP allocation is that the nodes in odd levels use odd time slots and the nodes in even levels use even time slots. However, state transitions of sending and receiving in the PIP algorithm are too frequent.For clustered networks, two-stage scheduling, which is the resource allocation of intracluster and intercluster communication, was proposed for the hierarchical structure of WSN [31]. A graph coloring method is used to allocate channels, and TDMA is used for time slot allocation in intracluster communication. For intercluster communication, according to the network topology information, dynamic programming is adopted to find the maximum set of nodes that can be transmitted in parallel. Seedha Devi et al. proposed a data collection scheme based on clustering [32] to reduce delay and packet loss. In the algorithm, the aggregation tree is constructed by the sink node using the minimum spanning tree (MST). Abdullah et al. proposed shortest processing time scheduling (SPT) [33], in which sensors are connected to make IoT groups, and each group has a designated broker. The brokers choose a scheduling strategy to transmit messages to the sink node.The various aforementioned methods of resource scheduling are not based on the unequal clustering for alleviating the “energy holes” problem, and the problems of reusing and recycling resources of failed nodes are ignored. Several methods of resource scheduling are quite complex, which creates a significant challenge in terms of computational efficiency. In the present study, in considering the requirements of dynamic topology and multihop routing, efficient resource scheduling based on unequal clustering is proposed. In intracluster communication, the cluster heads recycle resources of failed nodes according to the threshold of the number of cluster members. In intercluster communication, CHs in different layers based on transmission chain obtain different sending and receiving time slots. Clusters that are further away from the BS end intercluster communication earlier and enter into intracluster communication instead of waiting for all CHs to complete intercluster communication, which improves time slot utilization and network throughput.


## 3. Network Model

In this section, the network model and transmission interference model of RSUC are introduced.


### 3.1. Network Model

Resource scheduling of a large number of IoT nodes is a significant challenge in data transmission. Dynamic changes of unequal clustering and multihop routing are comprehensively considered in the present resource scheduling. Each cluster has a cluster head (CH) that collects the data from cluster members (CM) and forwards data to relay CH in a hop-by-hop manner, which continues until the data arrives at the base station (BS). Figure1 shows the network topology after unequal clustering and multihop routing.Figure 1
Network topology based on unequal clustering.The following constraints are met in RSUC:(1)
The nodes can calculate the distance based on the received signal strength indication (RSSI)(2)
The transmission power of nodes is adjustable(3)
The data of CM are generated periodically(4)
The CHs fuse the data received from CM in intracluster communication, but data of the CH is not fused during intercluster communication(5)
The BS supports multi-interface and multichannel communicationTable1 lists the symbol representation used in RSUC.Table 1
Symbol representations of RSUC.
SymbolDescriptionCHiCluster headiCMCluster memberFL_CHCHs of the first levelECHiResidual energy of CHiD(CHi,BS)Distance from CHi to BSNBrniNeighbors ofniN_NBrCHiNumber of neighbor nodes of CHiCost(CHi,CHj)Cost function of the CHi to CHjRN_CHiRelay node of CHiCRN_CHiCandidate relay node of CHiCHi_hopNumber of hops from CHi to BSLiLeveli, Lmax represents the highest level in the IoTCHLiThe set of CH inLiLCHiLevel of CHiN_ CHLiNumber of CHs in set CHLiN_CMNumber of cluster membersTN_CMThreshold of number of cluster membersTD_CMAmount of data in cluster memberSSending stateRReceiving stateCiChanneliTS_CHiTime slot of CHiTTSTotal time slot of intercluster communicationEOD_CHiEnd of data in CHi


### 3.2. Transmission Interference Model

The premise of resource scheduling is to avoid conflicts while transmitting data. There are two typical transmission interference models, namely, the graph-based protocol model and the SINR-based physical model. RSUC is based on the graph-based protocol model, which includes primary conflict and secondary conflict [34]. The primary conflict of the graph-based protocol model affects the range between one-hop neighbors. For example, as shown in Figure 2(a), A received data of both B1 and B2. In Figure 2(b), A sent data to B2 while receiving data of B1. A primary conflict occurs when one node attempts multiple operations at the same time. The secondary conflict of the graph-based protocol model affects the range among the two-hop neighbors, which is usually considered to be a hidden terminal problem. Such a problem can be observed in Figure 2(c), in which the communication between B2 and C affected the communication between B1 and A when they used the same channel to transmit. Transmission interference can be avoided by effective resource scheduling with channel and time slot allocation.Figure 2
Transmission interference model.
(a)(b)(c)


## 3.1. Network Model

Resource scheduling of a large number of IoT nodes is a significant challenge in data transmission. Dynamic changes of unequal clustering and multihop routing are comprehensively considered in the present resource scheduling. Each cluster has a cluster head (CH) that collects the data from cluster members (CM) and forwards data to relay CH in a hop-by-hop manner, which continues until the data arrives at the base station (BS). Figure1 shows the network topology after unequal clustering and multihop routing.Figure 1
Network topology based on unequal clustering.The following constraints are met in RSUC:(1)
The nodes can calculate the distance based on the received signal strength indication (RSSI)(2)
The transmission power of nodes is adjustable(3)
The data of CM are generated periodically(4)
The CHs fuse the data received from CM in intracluster communication, but data of the CH is not fused during intercluster communication(5)
The BS supports multi-interface and multichannel communicationTable1 lists the symbol representation used in RSUC.Table 1
Symbol representations of RSUC.
SymbolDescriptionCHiCluster headiCMCluster memberFL_CHCHs of the first levelECHiResidual energy of CHiD(CHi,BS)Distance from CHi to BSNBrniNeighbors ofniN_NBrCHiNumber of neighbor nodes of CHiCost(CHi,CHj)Cost function of the CHi to CHjRN_CHiRelay node of CHiCRN_CHiCandidate relay node of CHiCHi_hopNumber of hops from CHi to BSLiLeveli, Lmax represents the highest level in the IoTCHLiThe set of CH inLiLCHiLevel of CHiN_ CHLiNumber of CHs in set CHLiN_CMNumber of cluster membersTN_CMThreshold of number of cluster membersTD_CMAmount of data in cluster memberSSending stateRReceiving stateCiChanneliTS_CHiTime slot of CHiTTSTotal time slot of intercluster communicationEOD_CHiEnd of data in CHi


## 3.2. Transmission Interference Model

The premise of resource scheduling is to avoid conflicts while transmitting data. There are two typical transmission interference models, namely, the graph-based protocol model and the SINR-based physical model. RSUC is based on the graph-based protocol model, which includes primary conflict and secondary conflict [34]. The primary conflict of the graph-based protocol model affects the range between one-hop neighbors. For example, as shown in Figure 2(a), A received data of both B1 and B2. In Figure 2(b), A sent data to B2 while receiving data of B1. A primary conflict occurs when one node attempts multiple operations at the same time. The secondary conflict of the graph-based protocol model affects the range among the two-hop neighbors, which is usually considered to be a hidden terminal problem. Such a problem can be observed in Figure 2(c), in which the communication between B2 and C affected the communication between B1 and A when they used the same channel to transmit. Transmission interference can be avoided by effective resource scheduling with channel and time slot allocation.Figure 2
Transmission interference model.
(a)(b)(c)


## 4. Proposed Resource Scheduling Based on Unequal Clustering

In this section, the resource scheduling based on unequal clustering in IoT (RSUC) is presented. The structure of RSUC is shown in Figure3.Figure 3
Structure of RSUC.


### 4.1. Unequal Clustering and Multihop Routing

The research of dynamic unequal clustering and routing was completed in a preliminary study by the present authors [19]. The competition radius of the node in unequal clustering is defined as denoted in(1)ni.Rc=1−μ1Dmax−Dni,BSDmax−Dmin1−μ21NBrni1−μ3Eni_init−EniEni_initRc0,where Dmax represents the maximum distance from the node to the BS, Dmin represents the minimum distance from the node to the BS, and Fc0 represents the initial maximum competition radius.After unequal clustering, the cluster size is larger where the distance from CHs to the BS is longer, the number of neighbors of CHs is smaller, and there is more remaining energy. In RSUC, the CH of the first level (FL_CH) directly communicates with the BS. The CHs in FL_CH are removed from the FL_CH when the current energy of CH reduces to the threshold of energy of the first level. If necessary, the supplement of FL_CH is required.Aside from the CHs in set FL_CH, all other CHs need to find relay node in multihop routing. The cost function of the relay node of CHi is defined as denoted in(2)CostCHi,CHj=ω1×IsRCHj+ω2ECHiECHj+ω3CM_NumCHjCM_NumCHi+1+ω4DCHi,CHj+DCHj,BSDCHi,BS.(1)
If CHi ∉ FL_CH and CHj ∈ NBrChi and CHi∉FL_CHandNBrCHi∩​FL_CH=∅andCHj∈NBrCHi∪FL_CH, then the value of Cost(CHi,CHj) can be calculated.(2)
If CHi ∈ FL_CH, then Cost(CHi,CHj) = −1, and the relay node of CHi is the BS.(3)
The parameters meet the conditions thatω1 + ω2 + ω3 + ω4 = 1.IsRCHj ∈ {0, 1}, 1 means that CHj is a relay node of CHs in the current round and 0 means that CHj is not a relay node of any CH in the current round. RN_CHi is defined as denoted in(3)RN_CHi=minCHj|costCHi,CHj,CHj∈NBrCHi.In general, CHi can only find one RN_CHi in a round, which can largely avoid the primary conflict among CHs in intercluster communication. However, when the RN_CHi fails, CH communicates with the candidate relay node of CHi (CRN_CHi) to ensure the robustness of the IoT. CRN_CHi is defined as in(4)CRN_CHi=minCHj∣costCHi,CHj,CHj∈NBrCHi,CHj∩RN_CHi=∅.If CHi cannot find RN_CHi and CRN_CHi, then the next hop can be found from the FL_CH through formula (2).


### 4.2. Levels of CHs Based on Transmission Chain

After unequal clustering and multihop routing, the level of the CH (LCHi) is defined as the number of hops (CHi_hop) from CH to BS based on the transmission chain.(5)LCHi=CHi_hop,(6)s.tC1:∀CHi∈FL_CH,LCHi=L1,C2:∀CHn∈CHLx,CHm∈CHLy,ifCHn_hop<CHm_hop,thenLx<Ly,C3:CHL1∩CHL2∩...∩CHLmax=ϕ,C4:∑i=0maxN_CHLi=K.Here, the maximum level of CH is Lmax and the number of CHs in the entire network is K. CHLi is the set of CHs in Li. The condition C1 indicates that the level of CH in FL_CH is L1. C2 indicates that the smaller the hop to BS, the smaller the level of CH. C3 indicates that one CH cannot belong to different levels at the same time. C4 indicates that all the CHs are assigned corresponding levels.CHs are layered by BS according to the routing information. The BS broadcasts the number of CHs in level (N_CHLi) and the number of CHs in the transmission chain (N_CHiTC) of all CHi.


### 4.3. RSUC Resource Scheduling

With the operation of the network, some nodes will fail, and the topology will be changed dynamically. The joint allocation of channels and time slots adapts to dynamic topology changes. The RSUC scheduling is based on unequal clustering, multihop routing, and the level of CH.In RSUC, the first channel is used for broadcasting. The number of clusters in the first level and the max number of neighbor clusters within one hop are assumed to not exceed the number of available channels. After the network is initialized or reclustered, the CHs of the first level and CHs within one hop are assigned different channels, which is based on the graph coloring in a previous study [35]. The channel allocation can avoid the secondary conflicts in intercluster communication. The number of channels (Nchannel) used in RSUC is shown in(7)NChannel=maxN_CHL1,maxN_NBrCHi,i−1,2,…,K,where N_NBrCHi represents the number of neighbor nodes of CHi. K represents the number of CHs in the entire network.The transmission slot structure of CH and CM in intracluster communication is shown in Figure4. The time slots of CH consist of intrabroadcasting slots, intracluster communication slots, handling slots, sleeping slots, intercluster communication slots, and listening slots. The time slots of the CM include receiving broadcast slots, intracluster communication slots, data acquisition slot, and sleeping slots.Figure 4
Transmission slot structure of intracluster communication.The transmission slot structure of the CHLi and CHLi+1 in intercluster communication is shown in Figure 5. The number of intracluster communication time slots of CHs far from the BS is more than the number of those close to the BS, which can be attributed to the unequal clustering. Meanwhile, the number of intercluster communication time slots of CHs far from the BS is less than the number of those far from the BS.Figure 5
Transmission slot structure of intercluster communication.


#### 4.3.1. Resource Scheduling of Intracluster Communication

CH and the CM thereof use the same channel in intracluster communication. The CH selects the candidate cluster head (CCH) of the next round that can reduce the energy consumption of reclustering, and the CCH has the most remaining energy in the cluster.(8)CCH=CMi∣ECMi>TCHEnergy&&ECMi>ECMj,j=1,2,...,N_CM−1.In intracluster communication, the CH sends reclustered information to the BS and generates a new TDMA scheduling table when the number of cluster members (N_CM) is less than the threshold of the number of cluster members (TN_CM). The CM is invalid when the CH does not receive data of the CM consecutively T_invalidNum times. If there are failed nodes in the cluster, but the N_CM is not reduced to TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The TN_CM is defined as follows:(9)TN_CM=N_CMinit−TM,where N_CMinit represents the initial number of cluster members and TM represents the determined number according to the actual environment.The CH broadcasts information, including intracluster time synchronization, information of CCH, cluster channel, and the TDMA scheduling table. The information of intracluster time synchronization includes the ID of CH, information of time, and the next broadcast time of the CH.In RSUC, dynamic adaption to topology changes caused by failed nodes and recycle resources of the failed nodes is considered in resource scheduling. The resource scheduling of intracluster communication in RSUC is shown in Figure6.S1: unequal clusters are formed, and clusters in the first level and clusters within the range of one hop are assigned different channels.S2: if Round = 1, the CH generates the TDMA scheduling table and assigns each CM one-time slot. The CMs are sorted by the ID thereof. The time slots of CH in intracluster communication (TSCH-intra) are defined as denoted in(10)TSCH−intra=∑i=1N_CMND_CMi×Tunit.where ND_CM represents the amount of data in the cluster member. Tunit represents the time required to send one unit of data.The time slots of CMi (TSCMi) are defined as denoted in(11)TSCMi=ND_CMi×Tunit.S3: the CM transmits data and the remaining energy thereof to CH in the corresponding time slot. The CH receives the data of CM in the time slot of intracluster communication and performs data fusion and handling. If CH does not receive data of CM consecutively T_invalidNum times, the CM is determined to be invalid, and N_CM = N_CM–1. If the current round does not end, S3 is skipped to; otherwise, S4 can be proceeded to.S4: Round ← Round + 1. The CCH becomes the new CH in the cluster.S5: if there are no failed nodes in the cluster, the nodes in the cluster partly reuse the previous round of the scheduling table. The previous round of CH becomes the normal CM and uses the time slot of the CCH in the previous round. The scheduling order of other nodes remains the same. The starting points of the time slots are added with corresponding time differences, and S3 is skipped to; otherwise, S6 can be proceeded to.S6: if there are failed nodes in the cluster, but the number of CMs in the cluster is not reduced to the threshold TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The time slots of nodes behind failed nodes are subtracted accordingly, and S3 is skipped to. The failed nodes are handled internally by CH without notifying BS so as to reduce the impact of failed nodes on the whole network; otherwise, S7 can be proceeded to.S7: if the number of CMs in the cluster is reduced to the threshold TN_CM, the CH notifies the BS to recluster and generate a new TDMA scheduling table.Figure 6
Resource scheduling of intracluster communication.The steps of resource scheduling of intracluster communication in RSUC are as follows:


#### 4.3.2. Resource Scheduling of Intercluster Communication

Due to the data among clusters potentially being highly different, data fusion in intercluster communication is not performed. The CH switches to the channel of the relay node thereof when entering intercluster communication. In RSUC, multiple CHs can communicate in parallel via effective joint allocation of time slots and channels.The time slot allocation of intercluster communication is based on channel allocation. In intercluster communication, CH has two different states, sending state (S) and receiving state (R). CH can only be in one state at the same time. The state transition of the CH consumes part of the energy. In order to save the energy consumption of the transition state, aside from the first time slot, the rest are allocated two consecutive time slots in each round in RSUC. The resource scheduling for intercluster communication in RSUC is shown in Figure7.Figure 7
Resource scheduling of intercluster communication.The steps of resource scheduling of intercluster communication in RSUC are as follows:S1: the adjacent CHs are assigned different channels by using the coloring algorithm. For each transmission chain, if the number of CHs in the transmission chain (N_CHiTC) is odd, the CHs in odd levels are in a state of S, and the CHs in even levels are in a state of R; otherwise, the states of CHs in even levels are S and the states of CHs in odd levels are R.S2: the CHs at S state switch their channel to the corresponding relay node (RN).S3: during transmission in the first round, one sending time slot is allocated to all the CHs in the S state, and one receiving time slot is allocated to all the CHs in the R state. The time slot is 1, TS1 = 1.S4: the CHs in S state send data to the corresponding RN, which is in state R. If CHi is the last-of-chain node of the transmission chain, the information of the end of data in CHi (EOD_CHi) is carried. After transmitting the data, the CH enters a listening time slot.S5: after the first round, TS2 = 1 is initialized. There can be a protection time slot in the middle of the allocated time slots.S6: aside from CHs that have transmitted EOD_CH, all the other CHs change their state; namely, the CH in S state is changed to R, and CH in R state is changed to S.S7: two consecutive sending time slots are assigned to each CH at S, and two consecutive receiving time slots are assigned to each CH at R. CH is allocated to two consecutive time slots TS1 and TS2, respectively, TS1 = TS2++ and TS2 = TS1++. For example, in the second round, TS1 = 2 and TS2 = 3. In the third round, TS1 = 4 and TS2 = 5. In the fourth round, TS1 = 6 and TS2 = 7.S8: if the CHj receives the data identified by EOD_CHi, the CHj sends data carrying EOD_CHj, which may include data of the CHj. After the CH transmits the data carrying EOD_CH, the CH enters the listening time slot. If no other data is received in the listening time slot, the CH enters intracluster communication.S9: if all the CHs enter intracluster communication, the scheduling algorithm is stopped; otherwise, S6∼S9 are looped until all the CHs enter intracluster communication.Compared with the PIP algorithm, in RSUC, the amounts of state transition and channel switching are reduced by about half because two consecutive time slots are assigned.If CHi finds that the RN_CHi has failed during transmission, the CH will buffer the received data. The CH of the lower level and upper level of the RN_CHi will transmit data as usual. The CH sends the data in the buffer thereof to the CRN_CHi using consecutive time slots until the listening time slot of CRN_CHi. The CRN_CHi sends the data to the RN with consecutive time slots in the listening time slot until the data finally arrive at the BS.An example of joint allocation of channel and time slots for intercluster communication in RSUC is shown in Figure8. To send all data to the BS in one round, 6 channels and 5-time slots are utilized. Ci indicates that CH uses channel i, and TSj indicates that CH is allocated time slot j. Generally, the CHs at the lower level complete the intercluster communication earlier than the CHs at the upper level. The number of intercluster communication time slots of the CH near the BS is more than the number of those far from the BS, which can be attributed to the unequal clustering topology. The number of intracluster communication time slots of CH far from the BS is more than the number of those close to the BS. In RSUC, an attempt is made to maximize concurrent transfers over each time slot based on unequal clustering.Figure 8
Joint allocations of channels and time slots in intercluster communication.Figure9 shows the results of joint allocation of intercluster communication in RSUC. S indicates that the CH is in the sending state. R indicates that the CH is in the receiving state. E indicates that the CH transmitted data with EOD_CH in Sloti. Figure 9 shows the corresponding time slots and channels of each node, as well as the levels and corresponding states of the node.Figure 9
Results of joint allocation of intercluster communication.The overall operation process of RSUC resource scheduling is shown in Figure10.Figure 10
Operation process of RSUC.


## 4.1. Unequal Clustering and Multihop Routing

The research of dynamic unequal clustering and routing was completed in a preliminary study by the present authors [19]. The competition radius of the node in unequal clustering is defined as denoted in(1)ni.Rc=1−μ1Dmax−Dni,BSDmax−Dmin1−μ21NBrni1−μ3Eni_init−EniEni_initRc0,where Dmax represents the maximum distance from the node to the BS, Dmin represents the minimum distance from the node to the BS, and Fc0 represents the initial maximum competition radius.After unequal clustering, the cluster size is larger where the distance from CHs to the BS is longer, the number of neighbors of CHs is smaller, and there is more remaining energy. In RSUC, the CH of the first level (FL_CH) directly communicates with the BS. The CHs in FL_CH are removed from the FL_CH when the current energy of CH reduces to the threshold of energy of the first level. If necessary, the supplement of FL_CH is required.Aside from the CHs in set FL_CH, all other CHs need to find relay node in multihop routing. The cost function of the relay node of CHi is defined as denoted in(2)CostCHi,CHj=ω1×IsRCHj+ω2ECHiECHj+ω3CM_NumCHjCM_NumCHi+1+ω4DCHi,CHj+DCHj,BSDCHi,BS.(1)
If CHi ∉ FL_CH and CHj ∈ NBrChi and CHi∉FL_CHandNBrCHi∩​FL_CH=∅andCHj∈NBrCHi∪FL_CH, then the value of Cost(CHi,CHj) can be calculated.(2)
If CHi ∈ FL_CH, then Cost(CHi,CHj) = −1, and the relay node of CHi is the BS.(3)
The parameters meet the conditions thatω1 + ω2 + ω3 + ω4 = 1.IsRCHj ∈ {0, 1}, 1 means that CHj is a relay node of CHs in the current round and 0 means that CHj is not a relay node of any CH in the current round. RN_CHi is defined as denoted in(3)RN_CHi=minCHj|costCHi,CHj,CHj∈NBrCHi.In general, CHi can only find one RN_CHi in a round, which can largely avoid the primary conflict among CHs in intercluster communication. However, when the RN_CHi fails, CH communicates with the candidate relay node of CHi (CRN_CHi) to ensure the robustness of the IoT. CRN_CHi is defined as in(4)CRN_CHi=minCHj∣costCHi,CHj,CHj∈NBrCHi,CHj∩RN_CHi=∅.If CHi cannot find RN_CHi and CRN_CHi, then the next hop can be found from the FL_CH through formula (2).


## 4.2. Levels of CHs Based on Transmission Chain

After unequal clustering and multihop routing, the level of the CH (LCHi) is defined as the number of hops (CHi_hop) from CH to BS based on the transmission chain.(5)LCHi=CHi_hop,(6)s.tC1:∀CHi∈FL_CH,LCHi=L1,C2:∀CHn∈CHLx,CHm∈CHLy,ifCHn_hop<CHm_hop,thenLx<Ly,C3:CHL1∩CHL2∩...∩CHLmax=ϕ,C4:∑i=0maxN_CHLi=K.Here, the maximum level of CH is Lmax and the number of CHs in the entire network is K. CHLi is the set of CHs in Li. The condition C1 indicates that the level of CH in FL_CH is L1. C2 indicates that the smaller the hop to BS, the smaller the level of CH. C3 indicates that one CH cannot belong to different levels at the same time. C4 indicates that all the CHs are assigned corresponding levels.CHs are layered by BS according to the routing information. The BS broadcasts the number of CHs in level (N_CHLi) and the number of CHs in the transmission chain (N_CHiTC) of all CHi.


## 4.3. RSUC Resource Scheduling

With the operation of the network, some nodes will fail, and the topology will be changed dynamically. The joint allocation of channels and time slots adapts to dynamic topology changes. The RSUC scheduling is based on unequal clustering, multihop routing, and the level of CH.In RSUC, the first channel is used for broadcasting. The number of clusters in the first level and the max number of neighbor clusters within one hop are assumed to not exceed the number of available channels. After the network is initialized or reclustered, the CHs of the first level and CHs within one hop are assigned different channels, which is based on the graph coloring in a previous study [35]. The channel allocation can avoid the secondary conflicts in intercluster communication. The number of channels (Nchannel) used in RSUC is shown in(7)NChannel=maxN_CHL1,maxN_NBrCHi,i−1,2,…,K,where N_NBrCHi represents the number of neighbor nodes of CHi. K represents the number of CHs in the entire network.The transmission slot structure of CH and CM in intracluster communication is shown in Figure4. The time slots of CH consist of intrabroadcasting slots, intracluster communication slots, handling slots, sleeping slots, intercluster communication slots, and listening slots. The time slots of the CM include receiving broadcast slots, intracluster communication slots, data acquisition slot, and sleeping slots.Figure 4
Transmission slot structure of intracluster communication.The transmission slot structure of the CHLi and CHLi+1 in intercluster communication is shown in Figure 5. The number of intracluster communication time slots of CHs far from the BS is more than the number of those close to the BS, which can be attributed to the unequal clustering. Meanwhile, the number of intercluster communication time slots of CHs far from the BS is less than the number of those far from the BS.Figure 5
Transmission slot structure of intercluster communication.


### 4.3.1. Resource Scheduling of Intracluster Communication

CH and the CM thereof use the same channel in intracluster communication. The CH selects the candidate cluster head (CCH) of the next round that can reduce the energy consumption of reclustering, and the CCH has the most remaining energy in the cluster.(8)CCH=CMi∣ECMi>TCHEnergy&&ECMi>ECMj,j=1,2,...,N_CM−1.In intracluster communication, the CH sends reclustered information to the BS and generates a new TDMA scheduling table when the number of cluster members (N_CM) is less than the threshold of the number of cluster members (TN_CM). The CM is invalid when the CH does not receive data of the CM consecutively T_invalidNum times. If there are failed nodes in the cluster, but the N_CM is not reduced to TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The TN_CM is defined as follows:(9)TN_CM=N_CMinit−TM,where N_CMinit represents the initial number of cluster members and TM represents the determined number according to the actual environment.The CH broadcasts information, including intracluster time synchronization, information of CCH, cluster channel, and the TDMA scheduling table. The information of intracluster time synchronization includes the ID of CH, information of time, and the next broadcast time of the CH.In RSUC, dynamic adaption to topology changes caused by failed nodes and recycle resources of the failed nodes is considered in resource scheduling. The resource scheduling of intracluster communication in RSUC is shown in Figure6.S1: unequal clusters are formed, and clusters in the first level and clusters within the range of one hop are assigned different channels.S2: if Round = 1, the CH generates the TDMA scheduling table and assigns each CM one-time slot. The CMs are sorted by the ID thereof. The time slots of CH in intracluster communication (TSCH-intra) are defined as denoted in(10)TSCH−intra=∑i=1N_CMND_CMi×Tunit.where ND_CM represents the amount of data in the cluster member. Tunit represents the time required to send one unit of data.The time slots of CMi (TSCMi) are defined as denoted in(11)TSCMi=ND_CMi×Tunit.S3: the CM transmits data and the remaining energy thereof to CH in the corresponding time slot. The CH receives the data of CM in the time slot of intracluster communication and performs data fusion and handling. If CH does not receive data of CM consecutively T_invalidNum times, the CM is determined to be invalid, and N_CM = N_CM–1. If the current round does not end, S3 is skipped to; otherwise, S4 can be proceeded to.S4: Round ← Round + 1. The CCH becomes the new CH in the cluster.S5: if there are no failed nodes in the cluster, the nodes in the cluster partly reuse the previous round of the scheduling table. The previous round of CH becomes the normal CM and uses the time slot of the CCH in the previous round. The scheduling order of other nodes remains the same. The starting points of the time slots are added with corresponding time differences, and S3 is skipped to; otherwise, S6 can be proceeded to.S6: if there are failed nodes in the cluster, but the number of CMs in the cluster is not reduced to the threshold TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The time slots of nodes behind failed nodes are subtracted accordingly, and S3 is skipped to. The failed nodes are handled internally by CH without notifying BS so as to reduce the impact of failed nodes on the whole network; otherwise, S7 can be proceeded to.S7: if the number of CMs in the cluster is reduced to the threshold TN_CM, the CH notifies the BS to recluster and generate a new TDMA scheduling table.Figure 6
Resource scheduling of intracluster communication.The steps of resource scheduling of intracluster communication in RSUC are as follows:


### 4.3.2. Resource Scheduling of Intercluster Communication

Due to the data among clusters potentially being highly different, data fusion in intercluster communication is not performed. The CH switches to the channel of the relay node thereof when entering intercluster communication. In RSUC, multiple CHs can communicate in parallel via effective joint allocation of time slots and channels.The time slot allocation of intercluster communication is based on channel allocation. In intercluster communication, CH has two different states, sending state (S) and receiving state (R). CH can only be in one state at the same time. The state transition of the CH consumes part of the energy. In order to save the energy consumption of the transition state, aside from the first time slot, the rest are allocated two consecutive time slots in each round in RSUC. The resource scheduling for intercluster communication in RSUC is shown in Figure7.Figure 7
Resource scheduling of intercluster communication.The steps of resource scheduling of intercluster communication in RSUC are as follows:S1: the adjacent CHs are assigned different channels by using the coloring algorithm. For each transmission chain, if the number of CHs in the transmission chain (N_CHiTC) is odd, the CHs in odd levels are in a state of S, and the CHs in even levels are in a state of R; otherwise, the states of CHs in even levels are S and the states of CHs in odd levels are R.S2: the CHs at S state switch their channel to the corresponding relay node (RN).S3: during transmission in the first round, one sending time slot is allocated to all the CHs in the S state, and one receiving time slot is allocated to all the CHs in the R state. The time slot is 1, TS1 = 1.S4: the CHs in S state send data to the corresponding RN, which is in state R. If CHi is the last-of-chain node of the transmission chain, the information of the end of data in CHi (EOD_CHi) is carried. After transmitting the data, the CH enters a listening time slot.S5: after the first round, TS2 = 1 is initialized. There can be a protection time slot in the middle of the allocated time slots.S6: aside from CHs that have transmitted EOD_CH, all the other CHs change their state; namely, the CH in S state is changed to R, and CH in R state is changed to S.S7: two consecutive sending time slots are assigned to each CH at S, and two consecutive receiving time slots are assigned to each CH at R. CH is allocated to two consecutive time slots TS1 and TS2, respectively, TS1 = TS2++ and TS2 = TS1++. For example, in the second round, TS1 = 2 and TS2 = 3. In the third round, TS1 = 4 and TS2 = 5. In the fourth round, TS1 = 6 and TS2 = 7.S8: if the CHj receives the data identified by EOD_CHi, the CHj sends data carrying EOD_CHj, which may include data of the CHj. After the CH transmits the data carrying EOD_CH, the CH enters the listening time slot. If no other data is received in the listening time slot, the CH enters intracluster communication.S9: if all the CHs enter intracluster communication, the scheduling algorithm is stopped; otherwise, S6∼S9 are looped until all the CHs enter intracluster communication.Compared with the PIP algorithm, in RSUC, the amounts of state transition and channel switching are reduced by about half because two consecutive time slots are assigned.If CHi finds that the RN_CHi has failed during transmission, the CH will buffer the received data. The CH of the lower level and upper level of the RN_CHi will transmit data as usual. The CH sends the data in the buffer thereof to the CRN_CHi using consecutive time slots until the listening time slot of CRN_CHi. The CRN_CHi sends the data to the RN with consecutive time slots in the listening time slot until the data finally arrive at the BS.An example of joint allocation of channel and time slots for intercluster communication in RSUC is shown in Figure8. To send all data to the BS in one round, 6 channels and 5-time slots are utilized. Ci indicates that CH uses channel i, and TSj indicates that CH is allocated time slot j. Generally, the CHs at the lower level complete the intercluster communication earlier than the CHs at the upper level. The number of intercluster communication time slots of the CH near the BS is more than the number of those far from the BS, which can be attributed to the unequal clustering topology. The number of intracluster communication time slots of CH far from the BS is more than the number of those close to the BS. In RSUC, an attempt is made to maximize concurrent transfers over each time slot based on unequal clustering.Figure 8
Joint allocations of channels and time slots in intercluster communication.Figure9 shows the results of joint allocation of intercluster communication in RSUC. S indicates that the CH is in the sending state. R indicates that the CH is in the receiving state. E indicates that the CH transmitted data with EOD_CH in Sloti. Figure 9 shows the corresponding time slots and channels of each node, as well as the levels and corresponding states of the node.Figure 9
Results of joint allocation of intercluster communication.The overall operation process of RSUC resource scheduling is shown in Figure10.Figure 10
Operation process of RSUC.


## 4.3.1. Resource Scheduling of Intracluster Communication

CH and the CM thereof use the same channel in intracluster communication. The CH selects the candidate cluster head (CCH) of the next round that can reduce the energy consumption of reclustering, and the CCH has the most remaining energy in the cluster.(8)CCH=CMi∣ECMi>TCHEnergy&&ECMi>ECMj,j=1,2,...,N_CM−1.In intracluster communication, the CH sends reclustered information to the BS and generates a new TDMA scheduling table when the number of cluster members (N_CM) is less than the threshold of the number of cluster members (TN_CM). The CM is invalid when the CH does not receive data of the CM consecutively T_invalidNum times. If there are failed nodes in the cluster, but the N_CM is not reduced to TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The TN_CM is defined as follows:(9)TN_CM=N_CMinit−TM,where N_CMinit represents the initial number of cluster members and TM represents the determined number according to the actual environment.The CH broadcasts information, including intracluster time synchronization, information of CCH, cluster channel, and the TDMA scheduling table. The information of intracluster time synchronization includes the ID of CH, information of time, and the next broadcast time of the CH.In RSUC, dynamic adaption to topology changes caused by failed nodes and recycle resources of the failed nodes is considered in resource scheduling. The resource scheduling of intracluster communication in RSUC is shown in Figure6.S1: unequal clusters are formed, and clusters in the first level and clusters within the range of one hop are assigned different channels.S2: if Round = 1, the CH generates the TDMA scheduling table and assigns each CM one-time slot. The CMs are sorted by the ID thereof. The time slots of CH in intracluster communication (TSCH-intra) are defined as denoted in(10)TSCH−intra=∑i=1N_CMND_CMi×Tunit.where ND_CM represents the amount of data in the cluster member. Tunit represents the time required to send one unit of data.The time slots of CMi (TSCMi) are defined as denoted in(11)TSCMi=ND_CMi×Tunit.S3: the CM transmits data and the remaining energy thereof to CH in the corresponding time slot. The CH receives the data of CM in the time slot of intracluster communication and performs data fusion and handling. If CH does not receive data of CM consecutively T_invalidNum times, the CM is determined to be invalid, and N_CM = N_CM–1. If the current round does not end, S3 is skipped to; otherwise, S4 can be proceeded to.S4: Round ← Round + 1. The CCH becomes the new CH in the cluster.S5: if there are no failed nodes in the cluster, the nodes in the cluster partly reuse the previous round of the scheduling table. The previous round of CH becomes the normal CM and uses the time slot of the CCH in the previous round. The scheduling order of other nodes remains the same. The starting points of the time slots are added with corresponding time differences, and S3 is skipped to; otherwise, S6 can be proceeded to.S6: if there are failed nodes in the cluster, but the number of CMs in the cluster is not reduced to the threshold TN_CM, the CH needs to recycle the resources of the failed nodes and adjust the time slot schedule locally. The time slots of nodes behind failed nodes are subtracted accordingly, and S3 is skipped to. The failed nodes are handled internally by CH without notifying BS so as to reduce the impact of failed nodes on the whole network; otherwise, S7 can be proceeded to.S7: if the number of CMs in the cluster is reduced to the threshold TN_CM, the CH notifies the BS to recluster and generate a new TDMA scheduling table.Figure 6
Resource scheduling of intracluster communication.The steps of resource scheduling of intracluster communication in RSUC are as follows:


## 4.3.2. Resource Scheduling of Intercluster Communication

Due to the data among clusters potentially being highly different, data fusion in intercluster communication is not performed. The CH switches to the channel of the relay node thereof when entering intercluster communication. In RSUC, multiple CHs can communicate in parallel via effective joint allocation of time slots and channels.The time slot allocation of intercluster communication is based on channel allocation. In intercluster communication, CH has two different states, sending state (S) and receiving state (R). CH can only be in one state at the same time. The state transition of the CH consumes part of the energy. In order to save the energy consumption of the transition state, aside from the first time slot, the rest are allocated two consecutive time slots in each round in RSUC. The resource scheduling for intercluster communication in RSUC is shown in Figure7.Figure 7
Resource scheduling of intercluster communication.The steps of resource scheduling of intercluster communication in RSUC are as follows:S1: the adjacent CHs are assigned different channels by using the coloring algorithm. For each transmission chain, if the number of CHs in the transmission chain (N_CHiTC) is odd, the CHs in odd levels are in a state of S, and the CHs in even levels are in a state of R; otherwise, the states of CHs in even levels are S and the states of CHs in odd levels are R.S2: the CHs at S state switch their channel to the corresponding relay node (RN).S3: during transmission in the first round, one sending time slot is allocated to all the CHs in the S state, and one receiving time slot is allocated to all the CHs in the R state. The time slot is 1, TS1 = 1.S4: the CHs in S state send data to the corresponding RN, which is in state R. If CHi is the last-of-chain node of the transmission chain, the information of the end of data in CHi (EOD_CHi) is carried. After transmitting the data, the CH enters a listening time slot.S5: after the first round, TS2 = 1 is initialized. There can be a protection time slot in the middle of the allocated time slots.S6: aside from CHs that have transmitted EOD_CH, all the other CHs change their state; namely, the CH in S state is changed to R, and CH in R state is changed to S.S7: two consecutive sending time slots are assigned to each CH at S, and two consecutive receiving time slots are assigned to each CH at R. CH is allocated to two consecutive time slots TS1 and TS2, respectively, TS1 = TS2++ and TS2 = TS1++. For example, in the second round, TS1 = 2 and TS2 = 3. In the third round, TS1 = 4 and TS2 = 5. In the fourth round, TS1 = 6 and TS2 = 7.S8: if the CHj receives the data identified by EOD_CHi, the CHj sends data carrying EOD_CHj, which may include data of the CHj. After the CH transmits the data carrying EOD_CH, the CH enters the listening time slot. If no other data is received in the listening time slot, the CH enters intracluster communication.S9: if all the CHs enter intracluster communication, the scheduling algorithm is stopped; otherwise, S6∼S9 are looped until all the CHs enter intracluster communication.Compared with the PIP algorithm, in RSUC, the amounts of state transition and channel switching are reduced by about half because two consecutive time slots are assigned.If CHi finds that the RN_CHi has failed during transmission, the CH will buffer the received data. The CH of the lower level and upper level of the RN_CHi will transmit data as usual. The CH sends the data in the buffer thereof to the CRN_CHi using consecutive time slots until the listening time slot of CRN_CHi. The CRN_CHi sends the data to the RN with consecutive time slots in the listening time slot until the data finally arrive at the BS.An example of joint allocation of channel and time slots for intercluster communication in RSUC is shown in Figure8. To send all data to the BS in one round, 6 channels and 5-time slots are utilized. Ci indicates that CH uses channel i, and TSj indicates that CH is allocated time slot j. Generally, the CHs at the lower level complete the intercluster communication earlier than the CHs at the upper level. The number of intercluster communication time slots of the CH near the BS is more than the number of those far from the BS, which can be attributed to the unequal clustering topology. The number of intracluster communication time slots of CH far from the BS is more than the number of those close to the BS. In RSUC, an attempt is made to maximize concurrent transfers over each time slot based on unequal clustering.Figure 8
Joint allocations of channels and time slots in intercluster communication.Figure9 shows the results of joint allocation of intercluster communication in RSUC. S indicates that the CH is in the sending state. R indicates that the CH is in the receiving state. E indicates that the CH transmitted data with EOD_CH in Sloti. Figure 9 shows the corresponding time slots and channels of each node, as well as the levels and corresponding states of the node.Figure 9
Results of joint allocation of intercluster communication.The overall operation process of RSUC resource scheduling is shown in Figure10.Figure 10
Operation process of RSUC.


## 5. Theoretical Analysis

Theorem 1.
The RSUC resource scheduling is interference-free.Proof.
In RSUC, the data transmission is divided into intracluster communication and intercluster communication:(1)
In intracluster communication, the CMs communicate with the CH thereof in one hop in the cluster channel thereof. Adjacent clusters work in different channels. Thus, there are no secondary conflicts in a cluster. As intracluster communication is based on TDMA scheduling, primary conflicts are eliminated.(2)
In intercluster communication, all the CHs within one hop use different channels. The CH switches to the channel of the RN thereof, thereby removing secondary conflicts. CHs in odd levels and even levels use different sending time slots. As CHs only communicate with one RN at one time, primary conflicts between clusters are eliminated.
Therefore, there are no primary and secondary conflicts for any links in data transmission. RSUC is interference-free.Theorem 2.
In RSUC, for any CHi in transmission chainj, intercluster communication is completed in TS_CHi time slots when there are no failed CHs. TS_CHi is shown in the following formula:(12)TS_CHi=2×N_CHiTC−LCHi+1,where N_CHiTC represents the number of CHs in the transmission chain of CHi. LCHi represents the level of CHi.Proof.
If CHM is in the bottom level of the transmission chainj, CHM transmits the data to the RN_CHM thereof, in which the used time slot is 1. Namely, TS_CHM = 1.
If CHi = CHM-1 (the second bottom layer), the CHi receives the data of the CHM in time slot 1. In time slots 2 and 3, the CHi sends the data thereof and the data of CHM to RN_CHM-1. Thus, TS_CH M-1 = 3.
If CHi = CHM-2, the CHi sends the data thereof in time slot 1. In time slots 2 and 3, the data of CHM-1 is received. In time slots 4 and 5, the CHi sends data of CHM-1 to RN_CHM-2. Thus, TS_CH M-2 = 5.
By analogy,(13)TS_CHi+1=TS_CHi−2.
If CHi and CHi+1 are in the same transmission chain, then(14)LCHi=LCHi+1−1.
If CHi is in the bottom level of the transmission chainj, then LCHi = N_CHiTC. By combining with formula (12),(15)TS_CHi=2×N_CHiTC−LCHi+1=2×0+1=1.
Thus, formula (12) is established when CHi is at the bottom level.
An assumption is made that for any CHi in the transmission chainj, TS_CHi = 2 × (N_CHiTC – LCHi) + 1 is established. According to formulas (13) and (14), the TS_CHi+1 is shown as follows: TS_CHi+1 = TS_CHi– 2 = (2 × (N_ CHiTC – LCHi) + 1) – 2 = (2 × (N_ CHiTC – (LCHi+1 – 1)) +1) –2 = 2 × (N_ CHiTC – LCHi+1) + 1.
CHi and CHi+1 are in the same transmission chain. Thus, the number of CHs in the transmission chain is equal. Namely, N_ CHiTC = N_ CH(i + 1)TC. Then,(16)TS_CHi+1=2×N_CHi+1TC−LCHi+1+1.
By induction, CHi in the transmission chainj completes intercluster communication in 2 × (N_CHiTC – LCHi) + 1 time slots when there are no failed CHs in RSUC.Theorem 3.
In RSUC, all nodes send data to the BS within TTS time slots in intercluster communication when there are no failed CHs. TTS is shown in the following formula:(17)TTS=2×Lmax−1,where Lmax represents the highest level of the longest transmission chain.Proof.
In RSUC, all the data are always forwarded to the BS through the CH of the first level. The total time slot is directly determined by the CH of the first level in the longest transmission chain.
Bring N_ CHiTC = Lmax and LCHi = 1 into formula (12) in Theorem 2 to obtain(18)TTS=2×N_CHiTC−LCHi+1=2×Lmax−1+1=2×Lmax−1.
As such, all nodes send data to the BS within 2 ×Lmax − 1 time slots in intercluster communication in the case of no failed CHs.
Through Theorems2 and 3, an observation can be made that time slots of intercluster communication in RSUC are affected by the level of CH and the routing transmission chain.


## 6. Experiments

The experiments were perfumed using MATLAB. The simulation parameters are listed in Table2. IoT composed of 50∼300 sensor nodes and a base station was placed at the outside of the sensor field.Table 2
Simulation parameters.
ParameterValueDeployment field200 m × 200 mNumber of nodes50∼300Deployment methodRandomInitial energy50 JBS position(100 m, 300 m)Eelce50 nJ/bitԐfs10 pJ/bit/m2Ԑmp0.0013 pJ/bit/m4EDA5 nJ/bit/signalUnit energy of state transformation2 nJUnit energy of channel switching2 nJMax data packet size in intracluster32 bytesMax data packet size in intercluster125 bytesMax control packet size8 bytesTotal number of channels16Max hop numberVariableTransmission powerVariableT_invalidNum3TMround(N_CMinit/4)Figure11 shows examples of the unequal clustering and multihop routing in RSUC, in which the network was composed of 300 nodes and Rc0 = 40. Rc0 represents the initial maximum competition radius. The cost function of the node in multihop routing is defined in formula (2).Figure 11
Routing based on unequal clustering (Nint = 300; Rc0=40).Figure12 shows the average number of clusters at different levels in RSUC. As the layers increased, the number of clusters decreased because of unequal clustering. The present experimental data were obtained on average through hundreds of experimental results. The initial number of sensor nodes and the initial maximum competition radius of unequal clustering affected the number of clusters at different levels.Figure 12
Average number of clusters at different levels in RSUC.Figure13 shows the average number of channels at a different number of nodes. The number of channels used in RSUC was based on formula (7). The channels used in RSUC increased with the number of nodes and decreased with the initial maximum competition radius of unequal clustering.Figure 13
Average number of channels in RSUC.Figure14 shows the average time slots of intracluster communication at different levels. The number of slots in the intracluster communication was related to the number of cluster members in the cluster. The farther away from the BS, the more the intracluster communication slots in the cluster. As the layers increased, the intracluster communication time slot increased. The resources of failed nodes were dynamically recycled within the range of the threshold, and the previous TDMA scheduling table was partially reused. Thus, the energy of reallocating time slots in intracluster communication of RSUC was saved.Figure 14
Average time slots in intracluster communication at different levels in RSUC.Figure15 shows the average number of intercluster communication time slots in different levels. As the layers increased, the intercluster communication time slots decreased because of unequal clustering. In RSUC, the CHs near the BS had more intercluster communication time slots than CHs far away from BS.Figure 15
Average time slots in intercluster communication at different levels in RSUC.Figure16 shows the average max time slots of intercluster communication. The maximum number of time slots for intercluster communication was related to the length of the network routing transmission chain. As the number of sensor nodes increased, the time slots of intercluster communication increased. As Rc0 increased, the time slots of intercluster communication decreased.Figure 16
Average max time slots in intercluster communication.Figure17 shows the number of state transitions in a round of RSUC and PIP. In PIP, one slot is allocated each time with the status transition and the channel conversion. In RSUC, aside from the first round, the rest are allocated two consecutive time slots in each round. RSUC reduced the total number of states transition and channel switching by about 45% compared with PIP.Figure 17
Number of state transitions in a round of RSUC and PIP.Figure18 shows the energy of state transitions and channel switching in a round of intercluster communication. In resource scheduling of intercluster communication in RSUC, the energy consumption of state transitions and channel switching was reduced. Therefore, the RSUC has an advantage in saving energy of transition. Compared with PIP, RSUC reduced the energy of state transitions and channel switching by about 41%.Figure 18
Average energy of state transitions and channel switching in a round of intercluster communication of RSUC and PIP.Figure19 shows the network throughput of intercluster communication. In RSUC, clusters that are further away from the BS end intercluster communication earlier and enter intracluster communication instead of waiting for all CHs to complete intercluster communication. Such a method significantly increases the network throughput by effective utilization of time slots. Compared with waiting for all the CHs to complete intercluster communication before entering intracluster communication, RSUC increase the network throughput by about 30%.Figure 19
Network throughput.


## 7. Conclusion

Resource scheduling based on unequal clustering in IoT (RSUC) is proposed in the present study, which comprehensively considers the dynamic changes of unequal clustering and multihop routing. In resource scheduling of intracluster communication, the cluster heads recycle resources of failed nodes. In resource scheduling of intracluster communication, multiple CHs can communicate in parallel via effective joint allocation of time slots and channels. Clusters that are further away from the BS end intercluster communication earlier and enter into intracluster communication instead of waiting for all CHs to complete intercluster communication. The simulation results show that RSUC reduced the total number of state transitions and channel switching by about 45% compared with PIP. RSUC increase the network throughput by about 30% compared with waiting for all the CHs to complete intercluster communication before entering intracluster communication.Network delay of emergency data is not considered in RSUC. In future research, IoT resource scheduling based on unequal clustering and priority will be studied.



---

*Source: 1810704-2022-01-25.xml*