# An Enhanced Reliable Access Scheme for Massive IoT Applications in Ubiquitous IoT Systems

Authors: Yuhuai Peng; Yan Shi; Chenlu Wang
Journal: Wireless Communications and Mobile Computing
 (2022)

---

## Abstract

As a key infrastructure for intelligent manufacturing, the Industrial Internet of Things (IIoT) can connect people, massive intelligent terminals, automated control equipment, and convergence nodes to achieve a high integration of industrial systems with advanced computing, sensor technology, fifth-generation technology (5G), and the Internet. How to realize the robust and reliable connection of massive IoT applications has become the research focus of industry and academia. However, the massive IoT industrial equipment, diverse business types, complex networking mode, and broadcast characteristics of wireless media have posed serious challenges to providing stable and reliable connections in industrial communication scenarios. In order to overcome this problem, the paper proposes an enhanced reliable access scheme (ERAS) for massive IoT applications in software-defined industrial heterogeneous networks. Based on the idea of software-defined networking (SDN), the ERAS is designed from two perspectives of the control plane and the data plane. Based on the idea of greedy algorithms, ERAS uses priority, interference set, deadline, and other information to find the local optimal solution and then obtain the global optimum. First, low-priority periodic data is accessed to the channel based on the earliest deadline. Then, high-priority data (such as control and interactive services) judges the channel occupancy status according to the access flow table, and if there is an idle channel in the current time slot, it is normally accessed. Otherwise, the subslots reserved with high priority in the control channel are used to preempt the low-priority channel. This preemption mechanism can ensure reliable and real-time connections for massive IIoT. Simulation results show that the ERAS performs better than traditional methods in terms of delay, deadline guarantee rate, and packet loss rate.


---

## Body

## 1. Introduction

The industrial heterogeneous network is a massive Internet of Things (IoT) that covers multiple scenarios such as multiparty collaborative design, remote device control, device collaborative operation, device fault diagnosis, and production site monitoring [1]. With the addition of massive intelligent terminals in industrial fields, the scale of the network is growing exponentially. Meanwhile, the industrial production process is long, the process is complicated, and the degree of automation is high. Once the equipment has problems during channel access, it will cause data delay or interrupt transmission, and in serious cases, it may cause immeasurable losses to the entire industrial production. Therefore, the reliable access in massive IoT through the enhanced access scheme not only can improve the reliability and stability of the networks but also can be used in key areas such as equipment manufacturing, steel industry, mining industry, and power industry to provide basic network connection assurance [2].In the industrial heterogeneous massive IoT, trillions of terminals constitute a huge and complex network structure, which realizes diversified data and service interactions and enriches functions of the network [3]. However, the carrying capacity of the existing network still cannot provide sufficiently reliable access services for differentiated services [4]. In addition, the diversified application scenarios of the massive IoT require diversified functions as service support, including emergency alarms, interactive control, and real-time detection [5]. Considering the differences in the tolerance of the abovementioned services in indicators such as delay and reliability, it is difficult to meet the reliable access of different services on demand [6]. Therefore, how to provide reliable access for massive heterogeneous network devices is the main challenge today. Under the premise of providing highly reliable and stable communication services for network devices, advanced access solutions also need to consider cost, bandwidth, computing power, and other issues [7, 8].In the related research on reliability assurance of industrial heterogeneous networks, traditional access schemes are mainly based on random competition methods [9–13] and time slot-based methods [14–18]. The access scheme based on random contention can ensure low delay and sufficient throughput without serious external interference [19]. However, with the massive development of industrial heterogeneous networks and the increasing network density, this method cannot provide stable and reliable access services for massive network devices. The time slot-based access scheme can provide a stable and reliable access mechanism but cannot provide deterministic real-time access services for unpredictable and time-sensitive traffic [20].The main contributions of the paper can be summarized as follows.Firstly, the problem of reliable access for massive applications in software-defined industrial heterogeneous networks is formulized. Meanwhile, we define and formulate related concepts such as business models and channel models and discuss the complexity degree of the problem.Secondly, an enhanced reliable access solution for software-defined industrial heterogeneous massive IoT applications is proposed, which is implemented at two levels: the control plane and the data plane. Among them, the controller is responsible for formulating the access flow table, and the switch is responsible for forwarding the data request information and the access flow table. When generating the access flow table, the controller allocates transmission time slots for all data according to the deadline and allows high-priority data to preempt the transmission time slots of low-priority data, thereby ensuring real-time and reliable access to the network for time-sensitive traffic.Finally, we verify the performance indicators such as delay, deadline guarantee rate, and channel utilization through simulation evaluation. The results show that compared with the traditional CSMA/CA and PriorityMAC schemes, the proposed scheme has higher reliability and lower delay, and at the same time, it can make full use of channel resources.The rest of the paper is organized as follows. Section2 discusses related work. Section 3 describes the enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networks. Section 4 proposes the enhanced reliable access scheme for massive IoT applications in software-defined industrial heterogeneous networks. The scheme is divided into two parts, the control plane and the data plane, respectively. Section 5 analyzes the delay, deadline guarantee rate, and packet loss rate of the scheme through the simulation results. Section 6 summarizes the paper.


## 2. Related Work

At present, a mushrooming number of scholars choose to apply SDN [21] technology to the research of reliability assurance of massive IoT. Bukhari and Yoon [22] used SDN to design a new semicentralized network architecture for eMBMS/WLAN heterogeneous networks, which can provide reliable services to more users in a shorter time. Literature [23] proposed a new industrial Ethernet system based on SDN, which can reduce the delay of transmission and ensure the stability of application programs. A software-defined gateway (SD-GW) is developed using the Soft Air System by Tello-Oquendo and others [24], which can optimize the cross-layer communication between heterogeneous IoT devices and cellular systems, achieving the best energy-saving and reliable communication. Literature [25] designed a UDP-based reliable transmission framework using SDN paradigm shift technology, which can provide more effective bandwidth usage and ensure the reliability of transmission. Although the current research work on the massive IoT based on SDN technology has a certain extent, it has not formed a standardized protocol. Moreover, the current research work is still in the theoretical research stage due to the lack of consideration of practical application scenarios [26].In the related research of channel access schemes based on random contention, Ghosh and others [27] designed an improved CSMA access scheme for wireless ad hoc networks. The scheme uses the idea of channel reservation to divide the channel into several independent parts. Although the data loss caused by conflicts is avoided, it cannot provide a high real-time guarantee for wireless communication. Literature [28] designed a discrete-time version of the CSMA protocol based on Glauber dynamics in statistical physics, which considered data conflicts in the control phase, and achieved low latency while maintaining throughput optimization characteristics. Peng and others [29] designed an effective real-time deterministic scheduling mechanism for industrial cyberphysical systems to solve the problem of time slot scheduling and data transmission in microgrids. Literature [30] stipulated that the data sent by the node can access the channel according to its own priority and actual location, which makes the data transmission speed faster and more efficient. Literature [31] designed a retransmission mechanism for nodes with packet collision probability based on CSMA/CA. Although the above access scheme based on the random competition can effectively avoid data conflicts, it does not consider the reliability and real-time requirements of wireless transmission under the massive IoT.In the research of slot-based channel access schemes, literature [32] described the access problem of small time slots in wireless networks as an integer linear programming model and then proposed a decentralized small time slot model. This model is used to solve the problem of the high complexity of the integer linear programming model and the decline in channel utilization caused by data conflicts, but the real-time nature of data transmission is not considered. Literature [33] proposed a self-stabilizing distributed algorithm that can achieve transient faults and dynamic topology changes. The random distributed (RD-TDMA) access scheme designed by literature [34] can quickly generate feasible allocation strategies to deal with the competition between data in the wireless network and shorten the processing time required for channel access. Literature [35] proposed a dynamic access protocol, which establishes a channel access table for nodes within two hops by monitoring the control messages broadcasted periodically by neighboring nodes in the control period. Literature [36] proposed G-schedule using the independent characteristics of multiple channels, which can improve channel utilization while avoiding intercell interference. However, G-schedule can only guarantee the effective access of data, with the constraints of data on deadlines not being considered. The existing time slot-based channel access schemes are highly complex and rely heavily on the storage and computing capabilities of terminal devices, so they cannot be applied to special embedded devices in the massive IoT.Judging from the current research status, there are still areas that need to be improved in the related research of channel access schemes in industrial heterogeneous networks. On the one hand, most studies did not consider how to provide reliable and stable channel access for massive industrial heterogeneous network equipment. On the other hand, there is still a lack of research on targeted access solutions for the diversified data in the massive IoT [37].Accordingly, this paper aims to improve the reliability and stability of channel access in the massive IoT, based on greedy algorithms and SDN technology, to achieve enhanced reliable channel access for diversified data in the industrial heterogeneous massive IoT.


## 3. Reliable Access Problem Description

### 3.1. Data Model

Data in the massive industrial heterogeneous IoT usually has different priority attributes according to the characteristics of applications. Before proposing the channel access scheme in this section, the data in industrial field automation applications is divided into the following three categories according to the different performance requirements such as real-time and reliability requirements: high timeliness event data (HD), low timeliness event data (LD), and periodic data (PD) [38]. Table 1 describes the priority, characteristics, and application scenarios of the three types of data.Table 1
Data classification.
TypePriorityCharacteristicsApplicationHD1 (high)Unpredictable, low repetition rate, high real-time and reliability requirementsFault alarm, emergency shutdownLD2 (medium)Predictable, high repetition rate, high real-time and reliability requirementsPressure control, airflow controlPD3 (low)Predictable, high repetition rate, low real-time and reliability requirementsTemperature monitoring, humidity monitoring


#### 3.1.1. High Timeliness Event Data

Such data includes machine failure alarm, safety interlock, emergency shutdown, and automatic fire control. This kind of data needs to ensure high real-time and reliability requirements; otherwise, it will lead to a range of catastrophic consequences. High timeliness event data has the highest priority.


#### 3.1.2. Low Timeliness Event Data

Pressure and airflow control in industrial sites are also very crucial and need to maintain a certain degree of real-time and reliability requirements. But the transmission delay will not give rise to catastrophic consequences. Its real-time performance and reliability can be lower than high timeliness event data but must be higher than periodic data. Consequently, its priority is lower than high timeliness event data and higher than periodic data.


#### 3.1.3. Periodic Data

Applications such as temperature monitoring and humidity monitoring in industrial sites are usually performed periodically and require predictable and predetermined bandwidth. This kind of data does not need to guarantee very high real-time performance and reliability in practical applications. Therefore, it is sufficient to provide best-effort transmission services for it. Therefore, the priority of periodic data is lower than that of the other two.When the priority is known, there may be multiple data with the same priority competing for the same time slot at the same time in the network or data of different priorities competing for the same time slot. Accordingly, before wireless transmission, it is necessary to consider whether the channel access scheme can meet all data transmission requirements. Also, all of the data satisfies the delay constraint premise to ensure that high-priority data is a priority access channel. In order to ensure the high real-time performance and high reliability of high-priority data as much as possible, we propose below an enhanced reliable access scheme (ERAS) for massive IoT applications in software-defined industrial heterogeneous networks.


### 3.2. Network Topology

The network model used in this paper is composed of controllers, switches, and terminal nodes, as shown in Figure1. The network is divided into three planes: application plane, control plane, and data plane. The dotted line in the data plane represents the wireless interference range. Each switch is connected to I nodes, including H HD nodes, L LD nodes, and P PD nodes. The data sent in the three types of nodes must access the channel before the deadline. If the deadline is missed, the access fails.Figure 1
Network topology.The specific performance is as follows:(1)
Each controller is responsible for completing the centralized control of a subnetwork. A controller and multiple switches are connected in a wired manner to form a star network topology. Each independent switch and multiple sensor nodes form a cell with a star topology(2)
The functions of the controller include (1) obtaining global information about the network; (2) analyzing information from each node of the switch, including node location, interference set, deadline, and priority; (3) executing the access scheme according to the information obtained by analysis; and (4) forwarding the generated access scheme to the switch in each cell in the form of flow tables(3)
There is no data transmission between the switches. The switch has two main functions. Firstly, each switch forwards the data received from the sensors in its own cell to the controller of the network. Secondly, the switch receives flow tables from the controller and sends them to nodes, and then nodes complete the channel access according to the access information that matches itselfThe sensor communicates with the switch in a one-hop manner, which means that a sensor can only send data to a fixed switch in the same cell. In this way, the probability of collisions between sensors during wireless transmission can be reduced. Practically, the switch forwards the data request in the cell to the controller, and then the controller formulates flow tables according to the relevant algorithm and sends them to switches, and finally, switches receive the data sent by sensors according to flow tables and send them to the controller. This completes a wireless transmission. In addition, the centralized control of multiple cells by one controller is conducive to achieving clock synchronization.It should be noted that in actual network deployment, the number of HD and LD nodes should be determined according to the types of events that need to be interacted with in specific industrial applications. For example, in a petrochemical plant, the number of nodes required to report a gas leak is different from that to report an alarm in an automatic firefighting scenario.


### 3.3. Channel Model

ERAS divides the available channels into one control channel (CCH) andF data transmission channels (TCH), as shown in Figure 2. TCH are used for data transmission of HD, LD, and PD nodes, and CCH are used for high-priority nodes (HD or LD) to send reservation information to the controller. All channels are divided into time slots of size Ts, which is called a superframe, and each superframe is divided into a series of subtime slots Tss with the smallest time unit. A high-priority reserved subslot (HPRS) with a size of Tss is introduced into CCH. The function of HPRS is to indicate the priority of nodes to request data and to transmit other information related to the data request.Figure 2
Channel model.When only the PD nodes request access to the channel, all HPRS time slots in the CCH are idle. When HD or LD nodes request access to the channel, they will send a predetermined instruction containing the node number, deadline, and priority to the switch in HPRS. After that, the switch forwards all the scheduled information collected to the controller, and then the controller makes a channel access scheme.Here, we introduce the concept of the superframe.T time slots form a superframe. There is a beacon frame at the head of the superframe, which is used to send configuration information and synchronization information. The controller sends a beacon frame to all devices in the form of broadcast, specifying the starting position of the superframe. At the same time, the controller sends a schedule to the device in the form of broadcast, which specifies the channels, base stations, and time slots available to the device.


### 3.4. Problem Formulation

There areF radiofrequency channels in the network, and each channel is cut into T time slots of the same size. Each data request needs to occupy a superframe to complete one transmission. Only one controller is set in each network to realize the management of the entire network resources. The controller is connected to I switches in a wired manner, and the switch is represented by SWi (i∈0,1,2,⋯,I−1). Each switch is connected to J sensor nodes, and sij represents the jth sensor node under the ith switch. The J sensor nodes include H HD nodes, L LD nodes, and P PD nodes. Switch SWi and node sij together form a cell Ci. Let Tij denote the transmission period of sensor sij. Each sensor issues a data transmission request at the beginning of the cycle that must be sent to the controller before the start of the next cycle. sij.n represents the nth data sent by sij (n is an integer greater than 1). In this way, sij.n’s request time RTijn can be denoted as n−1Tij, and its deadline is denoted by DLijn, and we have DLijn=nTij. ETijn represents the execution time of the nth data sent by sij. It is required that the data must be connected to the channel before the start of the next cycle, which means that for the nth data, the execution time ETijn must satisfy
(1)RTijn<ETijn≤DLijn.As long as there is a data that does not meet the above conditions, it is said that an overflow has occurred.In addition, useWi to represent the workload of Ci; that is, the size of the workload that Ci needs to complete is Wi. In Ci, the workload of sij is denoted by Lij. For sij, the workload in a cycle is represented by wij (wij=1). It means that the workload of a request is 1; that is, the size of the time slot required to transmit the data is 1. There is a relationship between Wi, Lij, and wij in
(2)Wi=∑j=0J−1Lij=∑i=0I−1∑j=0J−1wij=IJ.For any cell, define a wireless transmission interference setitfω=λ∣ω≠λ;thewirelesstransmissionofallsensorsinthecellλwillinterferewiththewirelesstransmissionofallsensorsinω for it. According to the definition, if λ interferes with ω, although it does not mean that ω interferes with λ, it is certain that the two cells cannot occupy the same time slot of the same channel for wireless transmission, that is, λ∈itfω⇔ω∈itfλ. Meanwhile, for all sensors under the same switch, there must be interference between them, which means ∀j,δ∈0,1,⋯,J−1 and j≠δ,sij∈itfsiδ for any sij. In addition, if there is interference between two cells, then there must be interference between the sensors among them. This scheme considers the interference set as a constraint to avoid link interference.Arraysijft represents the access flow table of sij. sijft=1 indicates thatsij can transmit data in the tth time slot of the fth channel in the network. When sijft is equal to other values, it means that data cannot be transmitted on this time slot. 0 means that this time slot is free, and -1 means that this time slot is already occupied by other nodes, and the current sij is prohibited from using it.
(3)sijft=1,transmitdata,0,free,−1,occupied.A three-dimensional arrayCift is used to represent the access flow table of Ci. Cift combines the access flow tables from si1ft to sijft. It is used to indicate the comprehensive situation of the current time slot occupied by the cell and will also be the return result of the controller. Then, update the access flow table of each terminal node. Cift has five states: -2, -1, 0, 1, and 2, as shown in Equation (3). -2 indicates that the tth time slot of the fth channel has been occupied by other LD with interference, so this time slot is prohibited from being occupied by data with a priority less than LD; -1 indicates that the tth time slot of the fth channel has been occupied by other HD with interference. Consequently, the time slot is prohibited from being occupied by data with a priority lower than PD; 0 means that the time slot is not occupied by any HD or LD but may be occupied by PD or be idle. In either case, the time slots can be preempted by any HD or LD node; 1 and 2, respectively, represent that a node in the cell transmits in the tth time slot of the fth channel.
(4)Cift=−2,allowLDtransmission,prohibitPDoccupation,−1,allowHDtransmission,prohibitLDandPDoccupation,0,idle,1,allowHDtransmission,0,allowLDtransmission.The controller needs to maintain two cache lists,HDh3 and LDl3, which are used to store data information from HD and LD, respectively. Each row in them represents a request and reservation data packet, which contains four key information: node number sij, request time RTij, data packet expiration date DLij, and priority pij. The maximum capacities of the two cache lists are h and l, respectively.Here is the definition of effective access.Definition 1 (effective access).
The following conditions are sufficient and necessary for effective access:
Condition 1:∀sij,f,ti,j,f,t∈N+,sij∈HDorsij∈LD,1≤f≤F,1≤t≤T, such that sijft=1, and we have ∀ω,τ,sωτ∈itfsij,sωτft≠1
Condition 2:∀i,j∈N+sij∈HDorsij∈LD,∑f=1F∑t=1Tcntsijft=∑Cij, where cntx=10wherex=1otherwise
Condition 3:∀i,j∈N+sij∈HDorsij∈LD,STij<ETij≤DLijCondition 1 means that for each nodesij, if it has selected a certain time slot of a certain channel to transmit data, that is, sijft=1, any node sωτ that interferes with it will not be allowed to transmit data in this time slot of this channel. That is, sωτft≠1. The cntx in condition 2 is used to count the number of 1 s in the schedule; that is, count how many data have been transmitted. If the statistical result is equal to the total load, it means that all data has been transmitted; otherwise, there are unscheduled data. Only when all the data is successfully scheduled can the scheduling prove to be effective. Condition 3 indicates that all nodes must complete the transmission between the request time and the deadline.If there is such effective access, the problem is said to be solvable; otherwise, it is unsolvable.The enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networks is to solve such a problem. GivenF, T, I, J, itf, W, DL, H, L, and P, how to use the least time slot to ensure that W data sent by all nodes can be accessed to F channels with T time slots before the arrival of the deadline (DL) is discussed. At the same time, it is necessary to ensure that any interfering node cannot transmit on the same time slot of the same channel, and the node must complete the access according to the priority. Any low-priority data cannot preempt the transmission time slot of high-priority data. For simplicity of description, this paper expresses this problem as ERASF,T,I,J,itf,W,DL,H,L,P.


### 3.5. Complexity Analysis

We will analyze the complexity ofERASF,T,I,J,itf,W,DL,H,L,P below. First, select a special case ERAS1,3,I,J,itf,1,3,0,0,I of the problem to be solved, where there is F≡1, T≡3, w≡1, DL=T≡3, H=L≡0, and P≡I. If it is proved that the special problem is NP-complete, then the more general problem must also be NP-complete. Next, analyze the complexity of the special case [39].Lemma 2 (ERAS1,3,I,J,itf,1,3,0,0,I’s complexity analysis).
The special caseERAS1,3,I,J,itf,1,3,0,0,I of the problem to be solved is NP-complete.To prove thatERAS1,3,I,J,itf,1,3,0,0,I is NP-complete, it is necessary to prove that it can be reduced to a known problem that has been proven to be NP-complete. As a result, we choose a known NP-complete problem, namely, 3-coloring problem of graphs, GV,E. The certification process is as follows.Proof.
(1)
It is possible to verify the access scheme of problemERAS1,3,I,J,itf,1,3,0,0,I is valid in polynomial time, indicating that it is an NP problem(2)
Prove thatGV,E can be reduced to ERAS1,3,I,J,itf,1,3,0,0,I. In GV,E (denoted by G below), V=v0,v1,⋯ represents the vertices in the graph, and E represents the set of all edges connecting the vertices in the graph. G is to solve such a problem: given all the vertex sets and edge sets in the graph, how to use three colors to color all vertices to ensure that any vertices directly connected by edges cannot be colored with the same color is discussed. An access problem ERAS1,3,I,J,itf,1,3,0,0,I can be constructed for the known problem G in polynomial time. The specific process is as follows:
(a)
The number of cells in the network isI=∣V∣(b)
For anyi, if there is an edge E connection between vertex vj and vertex vi in G, then in the access problem ERAS1,3,I,J,itf,1,3,0,0,I, we have Cj∈itfCi(c)
For each cell, set the total workloadWi=1
Express the problem generated by the above process asERASG.
(3)
In (2), the input ofG has been equivalent to the input of ERASG, and then we will prove that their output is also equivalent. The proof needs to be divided into two steps. First, prove that ERASG is accessible when G can be successfully colored, and then prove that G can be successfully colored when ERASG is accessible
Step 1. Prove that when G can be colored, B has an accessible scheme. When G is colorable, any vertex in the graph can be colored by choosing a color in 1,2,3, and any two vertices directly connected by an edge are not colored in the same color. According to the coloring scheme of G, an access scheme of ERASG can be obtained as follows.
If any vertexvi in G is colored as c∈1,2,3, the cell Ci in ERASG will transmit in time slot c∈1,2,3. Since all vertices directly connected by edges in G cannot be colored in the same color, corresponding to any two interfering cells in ERASG that cannot access the same time slot, then Condition 1 of Definition 1 is satisfied. In addition, all vertices in G are colored into one color in three colors, which means that each cell in ERASG is assigned a time slot, and Condition 2 of Definition 1 is satisfied at this time. Meanwhile, all vertices in G can choose one of three colors for coloring. Correspondingly, all nodes in the cell in ERASG can choose one of the three time slots before the deadline for wireless transmission. Condition 3 of Definition 1 is met at this time. In summary, we can get G⇒ERASG.
Step 2. Prove that when ERASG is accessible, G has a colorable scheme. When ERASG is accessible, any cell is allocated a time slot in 1,2,3. In addition, the two interfering cells will not be allocated the same time slot, and all the requests will complete access before the deadline. According to the access scheme of ERASG, the coloring scheme of G can be obtained as follows.
For any cellCi, if the transmission time slot is allocated at time c∈1,2,3, it means that the vertex vi in G is colored with the color c∈1,2,3. According to the definition of effective access, the interfering cells in ERASG are assigned different transmission time slots. Correspondingly, any two vertices directly connected with edges in G are colored in different colors. In addition, each cell Ci is assigned a time slot, corresponding to any vertex vi in G that is colored. Consequently, the coloring scheme of G generated according to the access scheme of ERASG meets all the requirements of the 3-coloring problem. In summary, ERASG⇒G can be obtained.
(4)
According to the proof of (3), we haveG⇔ERASG. That is to say, the output results of ERASG and G are the same; that is, GV,E can be reduced to ERAS1,3,I,J,itf,1,3,0,0,I, so the access problem ERAS1,3,I,J,itf,1,3,0,0,I is NP-hard. And because (1) has proved that it is an NP problem, it must be NP-completeIn summary, it has been successfully proved that Lemma2 is valid. Next, Theorem 3 is proposed based on Lemma 2.Theorem 3 (ERASF,T,I,J,itf,W,DL,H,L,P’s complexity analysis).
The enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networksERASF,T,I,J,itf,W,WCET,H,L,P is NP-hard.Proof.
Since Lemma2 has proved that ERAS1,3,I,J,itf,1,3,0,0,I is NP-complete, then the more general problem ERASF,T,I,J,itf,W,DL,H,L,P must be NP-hard, so Theorem 3 holds.


## 3.1. Data Model

Data in the massive industrial heterogeneous IoT usually has different priority attributes according to the characteristics of applications. Before proposing the channel access scheme in this section, the data in industrial field automation applications is divided into the following three categories according to the different performance requirements such as real-time and reliability requirements: high timeliness event data (HD), low timeliness event data (LD), and periodic data (PD) [38]. Table 1 describes the priority, characteristics, and application scenarios of the three types of data.Table 1
Data classification.
TypePriorityCharacteristicsApplicationHD1 (high)Unpredictable, low repetition rate, high real-time and reliability requirementsFault alarm, emergency shutdownLD2 (medium)Predictable, high repetition rate, high real-time and reliability requirementsPressure control, airflow controlPD3 (low)Predictable, high repetition rate, low real-time and reliability requirementsTemperature monitoring, humidity monitoring


### 3.1.1. High Timeliness Event Data

Such data includes machine failure alarm, safety interlock, emergency shutdown, and automatic fire control. This kind of data needs to ensure high real-time and reliability requirements; otherwise, it will lead to a range of catastrophic consequences. High timeliness event data has the highest priority.


### 3.1.2. Low Timeliness Event Data

Pressure and airflow control in industrial sites are also very crucial and need to maintain a certain degree of real-time and reliability requirements. But the transmission delay will not give rise to catastrophic consequences. Its real-time performance and reliability can be lower than high timeliness event data but must be higher than periodic data. Consequently, its priority is lower than high timeliness event data and higher than periodic data.


### 3.1.3. Periodic Data

Applications such as temperature monitoring and humidity monitoring in industrial sites are usually performed periodically and require predictable and predetermined bandwidth. This kind of data does not need to guarantee very high real-time performance and reliability in practical applications. Therefore, it is sufficient to provide best-effort transmission services for it. Therefore, the priority of periodic data is lower than that of the other two.When the priority is known, there may be multiple data with the same priority competing for the same time slot at the same time in the network or data of different priorities competing for the same time slot. Accordingly, before wireless transmission, it is necessary to consider whether the channel access scheme can meet all data transmission requirements. Also, all of the data satisfies the delay constraint premise to ensure that high-priority data is a priority access channel. In order to ensure the high real-time performance and high reliability of high-priority data as much as possible, we propose below an enhanced reliable access scheme (ERAS) for massive IoT applications in software-defined industrial heterogeneous networks.


## 3.1.1. High Timeliness Event Data

Such data includes machine failure alarm, safety interlock, emergency shutdown, and automatic fire control. This kind of data needs to ensure high real-time and reliability requirements; otherwise, it will lead to a range of catastrophic consequences. High timeliness event data has the highest priority.


## 3.1.2. Low Timeliness Event Data

Pressure and airflow control in industrial sites are also very crucial and need to maintain a certain degree of real-time and reliability requirements. But the transmission delay will not give rise to catastrophic consequences. Its real-time performance and reliability can be lower than high timeliness event data but must be higher than periodic data. Consequently, its priority is lower than high timeliness event data and higher than periodic data.


## 3.1.3. Periodic Data

Applications such as temperature monitoring and humidity monitoring in industrial sites are usually performed periodically and require predictable and predetermined bandwidth. This kind of data does not need to guarantee very high real-time performance and reliability in practical applications. Therefore, it is sufficient to provide best-effort transmission services for it. Therefore, the priority of periodic data is lower than that of the other two.When the priority is known, there may be multiple data with the same priority competing for the same time slot at the same time in the network or data of different priorities competing for the same time slot. Accordingly, before wireless transmission, it is necessary to consider whether the channel access scheme can meet all data transmission requirements. Also, all of the data satisfies the delay constraint premise to ensure that high-priority data is a priority access channel. In order to ensure the high real-time performance and high reliability of high-priority data as much as possible, we propose below an enhanced reliable access scheme (ERAS) for massive IoT applications in software-defined industrial heterogeneous networks.


## 3.2. Network Topology

The network model used in this paper is composed of controllers, switches, and terminal nodes, as shown in Figure1. The network is divided into three planes: application plane, control plane, and data plane. The dotted line in the data plane represents the wireless interference range. Each switch is connected to I nodes, including H HD nodes, L LD nodes, and P PD nodes. The data sent in the three types of nodes must access the channel before the deadline. If the deadline is missed, the access fails.Figure 1
Network topology.The specific performance is as follows:(1)
Each controller is responsible for completing the centralized control of a subnetwork. A controller and multiple switches are connected in a wired manner to form a star network topology. Each independent switch and multiple sensor nodes form a cell with a star topology(2)
The functions of the controller include (1) obtaining global information about the network; (2) analyzing information from each node of the switch, including node location, interference set, deadline, and priority; (3) executing the access scheme according to the information obtained by analysis; and (4) forwarding the generated access scheme to the switch in each cell in the form of flow tables(3)
There is no data transmission between the switches. The switch has two main functions. Firstly, each switch forwards the data received from the sensors in its own cell to the controller of the network. Secondly, the switch receives flow tables from the controller and sends them to nodes, and then nodes complete the channel access according to the access information that matches itselfThe sensor communicates with the switch in a one-hop manner, which means that a sensor can only send data to a fixed switch in the same cell. In this way, the probability of collisions between sensors during wireless transmission can be reduced. Practically, the switch forwards the data request in the cell to the controller, and then the controller formulates flow tables according to the relevant algorithm and sends them to switches, and finally, switches receive the data sent by sensors according to flow tables and send them to the controller. This completes a wireless transmission. In addition, the centralized control of multiple cells by one controller is conducive to achieving clock synchronization.It should be noted that in actual network deployment, the number of HD and LD nodes should be determined according to the types of events that need to be interacted with in specific industrial applications. For example, in a petrochemical plant, the number of nodes required to report a gas leak is different from that to report an alarm in an automatic firefighting scenario.


## 3.3. Channel Model

ERAS divides the available channels into one control channel (CCH) andF data transmission channels (TCH), as shown in Figure 2. TCH are used for data transmission of HD, LD, and PD nodes, and CCH are used for high-priority nodes (HD or LD) to send reservation information to the controller. All channels are divided into time slots of size Ts, which is called a superframe, and each superframe is divided into a series of subtime slots Tss with the smallest time unit. A high-priority reserved subslot (HPRS) with a size of Tss is introduced into CCH. The function of HPRS is to indicate the priority of nodes to request data and to transmit other information related to the data request.Figure 2
Channel model.When only the PD nodes request access to the channel, all HPRS time slots in the CCH are idle. When HD or LD nodes request access to the channel, they will send a predetermined instruction containing the node number, deadline, and priority to the switch in HPRS. After that, the switch forwards all the scheduled information collected to the controller, and then the controller makes a channel access scheme.Here, we introduce the concept of the superframe.T time slots form a superframe. There is a beacon frame at the head of the superframe, which is used to send configuration information and synchronization information. The controller sends a beacon frame to all devices in the form of broadcast, specifying the starting position of the superframe. At the same time, the controller sends a schedule to the device in the form of broadcast, which specifies the channels, base stations, and time slots available to the device.


## 3.4. Problem Formulation

There areF radiofrequency channels in the network, and each channel is cut into T time slots of the same size. Each data request needs to occupy a superframe to complete one transmission. Only one controller is set in each network to realize the management of the entire network resources. The controller is connected to I switches in a wired manner, and the switch is represented by SWi (i∈0,1,2,⋯,I−1). Each switch is connected to J sensor nodes, and sij represents the jth sensor node under the ith switch. The J sensor nodes include H HD nodes, L LD nodes, and P PD nodes. Switch SWi and node sij together form a cell Ci. Let Tij denote the transmission period of sensor sij. Each sensor issues a data transmission request at the beginning of the cycle that must be sent to the controller before the start of the next cycle. sij.n represents the nth data sent by sij (n is an integer greater than 1). In this way, sij.n’s request time RTijn can be denoted as n−1Tij, and its deadline is denoted by DLijn, and we have DLijn=nTij. ETijn represents the execution time of the nth data sent by sij. It is required that the data must be connected to the channel before the start of the next cycle, which means that for the nth data, the execution time ETijn must satisfy
(1)RTijn<ETijn≤DLijn.As long as there is a data that does not meet the above conditions, it is said that an overflow has occurred.In addition, useWi to represent the workload of Ci; that is, the size of the workload that Ci needs to complete is Wi. In Ci, the workload of sij is denoted by Lij. For sij, the workload in a cycle is represented by wij (wij=1). It means that the workload of a request is 1; that is, the size of the time slot required to transmit the data is 1. There is a relationship between Wi, Lij, and wij in
(2)Wi=∑j=0J−1Lij=∑i=0I−1∑j=0J−1wij=IJ.For any cell, define a wireless transmission interference setitfω=λ∣ω≠λ;thewirelesstransmissionofallsensorsinthecellλwillinterferewiththewirelesstransmissionofallsensorsinω for it. According to the definition, if λ interferes with ω, although it does not mean that ω interferes with λ, it is certain that the two cells cannot occupy the same time slot of the same channel for wireless transmission, that is, λ∈itfω⇔ω∈itfλ. Meanwhile, for all sensors under the same switch, there must be interference between them, which means ∀j,δ∈0,1,⋯,J−1 and j≠δ,sij∈itfsiδ for any sij. In addition, if there is interference between two cells, then there must be interference between the sensors among them. This scheme considers the interference set as a constraint to avoid link interference.Arraysijft represents the access flow table of sij. sijft=1 indicates thatsij can transmit data in the tth time slot of the fth channel in the network. When sijft is equal to other values, it means that data cannot be transmitted on this time slot. 0 means that this time slot is free, and -1 means that this time slot is already occupied by other nodes, and the current sij is prohibited from using it.
(3)sijft=1,transmitdata,0,free,−1,occupied.A three-dimensional arrayCift is used to represent the access flow table of Ci. Cift combines the access flow tables from si1ft to sijft. It is used to indicate the comprehensive situation of the current time slot occupied by the cell and will also be the return result of the controller. Then, update the access flow table of each terminal node. Cift has five states: -2, -1, 0, 1, and 2, as shown in Equation (3). -2 indicates that the tth time slot of the fth channel has been occupied by other LD with interference, so this time slot is prohibited from being occupied by data with a priority less than LD; -1 indicates that the tth time slot of the fth channel has been occupied by other HD with interference. Consequently, the time slot is prohibited from being occupied by data with a priority lower than PD; 0 means that the time slot is not occupied by any HD or LD but may be occupied by PD or be idle. In either case, the time slots can be preempted by any HD or LD node; 1 and 2, respectively, represent that a node in the cell transmits in the tth time slot of the fth channel.
(4)Cift=−2,allowLDtransmission,prohibitPDoccupation,−1,allowHDtransmission,prohibitLDandPDoccupation,0,idle,1,allowHDtransmission,0,allowLDtransmission.The controller needs to maintain two cache lists,HDh3 and LDl3, which are used to store data information from HD and LD, respectively. Each row in them represents a request and reservation data packet, which contains four key information: node number sij, request time RTij, data packet expiration date DLij, and priority pij. The maximum capacities of the two cache lists are h and l, respectively.Here is the definition of effective access.Definition 1 (effective access).
The following conditions are sufficient and necessary for effective access:
Condition 1:∀sij,f,ti,j,f,t∈N+,sij∈HDorsij∈LD,1≤f≤F,1≤t≤T, such that sijft=1, and we have ∀ω,τ,sωτ∈itfsij,sωτft≠1
Condition 2:∀i,j∈N+sij∈HDorsij∈LD,∑f=1F∑t=1Tcntsijft=∑Cij, where cntx=10wherex=1otherwise
Condition 3:∀i,j∈N+sij∈HDorsij∈LD,STij<ETij≤DLijCondition 1 means that for each nodesij, if it has selected a certain time slot of a certain channel to transmit data, that is, sijft=1, any node sωτ that interferes with it will not be allowed to transmit data in this time slot of this channel. That is, sωτft≠1. The cntx in condition 2 is used to count the number of 1 s in the schedule; that is, count how many data have been transmitted. If the statistical result is equal to the total load, it means that all data has been transmitted; otherwise, there are unscheduled data. Only when all the data is successfully scheduled can the scheduling prove to be effective. Condition 3 indicates that all nodes must complete the transmission between the request time and the deadline.If there is such effective access, the problem is said to be solvable; otherwise, it is unsolvable.The enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networks is to solve such a problem. GivenF, T, I, J, itf, W, DL, H, L, and P, how to use the least time slot to ensure that W data sent by all nodes can be accessed to F channels with T time slots before the arrival of the deadline (DL) is discussed. At the same time, it is necessary to ensure that any interfering node cannot transmit on the same time slot of the same channel, and the node must complete the access according to the priority. Any low-priority data cannot preempt the transmission time slot of high-priority data. For simplicity of description, this paper expresses this problem as ERASF,T,I,J,itf,W,DL,H,L,P.


## 3.5. Complexity Analysis

We will analyze the complexity ofERASF,T,I,J,itf,W,DL,H,L,P below. First, select a special case ERAS1,3,I,J,itf,1,3,0,0,I of the problem to be solved, where there is F≡1, T≡3, w≡1, DL=T≡3, H=L≡0, and P≡I. If it is proved that the special problem is NP-complete, then the more general problem must also be NP-complete. Next, analyze the complexity of the special case [39].Lemma 2 (ERAS1,3,I,J,itf,1,3,0,0,I’s complexity analysis).
The special caseERAS1,3,I,J,itf,1,3,0,0,I of the problem to be solved is NP-complete.To prove thatERAS1,3,I,J,itf,1,3,0,0,I is NP-complete, it is necessary to prove that it can be reduced to a known problem that has been proven to be NP-complete. As a result, we choose a known NP-complete problem, namely, 3-coloring problem of graphs, GV,E. The certification process is as follows.Proof.
(1)
It is possible to verify the access scheme of problemERAS1,3,I,J,itf,1,3,0,0,I is valid in polynomial time, indicating that it is an NP problem(2)
Prove thatGV,E can be reduced to ERAS1,3,I,J,itf,1,3,0,0,I. In GV,E (denoted by G below), V=v0,v1,⋯ represents the vertices in the graph, and E represents the set of all edges connecting the vertices in the graph. G is to solve such a problem: given all the vertex sets and edge sets in the graph, how to use three colors to color all vertices to ensure that any vertices directly connected by edges cannot be colored with the same color is discussed. An access problem ERAS1,3,I,J,itf,1,3,0,0,I can be constructed for the known problem G in polynomial time. The specific process is as follows:
(a)
The number of cells in the network isI=∣V∣(b)
For anyi, if there is an edge E connection between vertex vj and vertex vi in G, then in the access problem ERAS1,3,I,J,itf,1,3,0,0,I, we have Cj∈itfCi(c)
For each cell, set the total workloadWi=1
Express the problem generated by the above process asERASG.
(3)
In (2), the input ofG has been equivalent to the input of ERASG, and then we will prove that their output is also equivalent. The proof needs to be divided into two steps. First, prove that ERASG is accessible when G can be successfully colored, and then prove that G can be successfully colored when ERASG is accessible
Step 1. Prove that when G can be colored, B has an accessible scheme. When G is colorable, any vertex in the graph can be colored by choosing a color in 1,2,3, and any two vertices directly connected by an edge are not colored in the same color. According to the coloring scheme of G, an access scheme of ERASG can be obtained as follows.
If any vertexvi in G is colored as c∈1,2,3, the cell Ci in ERASG will transmit in time slot c∈1,2,3. Since all vertices directly connected by edges in G cannot be colored in the same color, corresponding to any two interfering cells in ERASG that cannot access the same time slot, then Condition 1 of Definition 1 is satisfied. In addition, all vertices in G are colored into one color in three colors, which means that each cell in ERASG is assigned a time slot, and Condition 2 of Definition 1 is satisfied at this time. Meanwhile, all vertices in G can choose one of three colors for coloring. Correspondingly, all nodes in the cell in ERASG can choose one of the three time slots before the deadline for wireless transmission. Condition 3 of Definition 1 is met at this time. In summary, we can get G⇒ERASG.
Step 2. Prove that when ERASG is accessible, G has a colorable scheme. When ERASG is accessible, any cell is allocated a time slot in 1,2,3. In addition, the two interfering cells will not be allocated the same time slot, and all the requests will complete access before the deadline. According to the access scheme of ERASG, the coloring scheme of G can be obtained as follows.
For any cellCi, if the transmission time slot is allocated at time c∈1,2,3, it means that the vertex vi in G is colored with the color c∈1,2,3. According to the definition of effective access, the interfering cells in ERASG are assigned different transmission time slots. Correspondingly, any two vertices directly connected with edges in G are colored in different colors. In addition, each cell Ci is assigned a time slot, corresponding to any vertex vi in G that is colored. Consequently, the coloring scheme of G generated according to the access scheme of ERASG meets all the requirements of the 3-coloring problem. In summary, ERASG⇒G can be obtained.
(4)
According to the proof of (3), we haveG⇔ERASG. That is to say, the output results of ERASG and G are the same; that is, GV,E can be reduced to ERAS1,3,I,J,itf,1,3,0,0,I, so the access problem ERAS1,3,I,J,itf,1,3,0,0,I is NP-hard. And because (1) has proved that it is an NP problem, it must be NP-completeIn summary, it has been successfully proved that Lemma2 is valid. Next, Theorem 3 is proposed based on Lemma 2.Theorem 3 (ERASF,T,I,J,itf,W,DL,H,L,P’s complexity analysis).
The enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networksERASF,T,I,J,itf,W,WCET,H,L,P is NP-hard.Proof.
Since Lemma2 has proved that ERAS1,3,I,J,itf,1,3,0,0,I is NP-complete, then the more general problem ERASF,T,I,J,itf,W,DL,H,L,P must be NP-hard, so Theorem 3 holds.


## 4. Enhanced Reliable Access Scheme

### 4.1. ERAS Access Scheme Description

Since Section3.5 proves that the problem to be solved is NP-hard, it is impossible to propose an optimal polynomial algorithm. Accordingly, this section proposes a pseudopolynomial time ERAS algorithm based on the greedy algorithm.The core idea of ERAS is as follows. For the known periodic data, a fixed transmission time slot is allocated to it using a channel access scheme based on the earliest deadline first. When random high-priority data arrives, time slots are allocated for it according to channel occupancy. At this time, high-priority data (HD or LD) can preempt the time slot of low-priority data (LD or PD), and data of the same priority are also allocated time slots according to the principle of the earliest deadline first.It must always be ensured that the three types of nodes are time synchronized. The centralized control of the SDN controller can easily achieve this.At a certain moment, if there is an HD or LD with a higher priority requesting access to the channel, the ERAS proposed below will be used to access the wireless channel resources. The specific ideas of the access scheme are as follows:(1)
In order to ensure the real-time and reliability requirements of high-priority data, it is allowed to preempt the transmission time slot of low-priority data. The low-priority data that is forcibly taken is either delayed for a period of time and sent again or discarded.(2)
The high-priority data will send the reservation request information to the switch in the cell in CCH and align it with the next superframe. Then, the switch transmits all the requested information in the cell where it is located to the controller in a wired manner. Finally, the controller allocates the resources of TCH to the requesting nodes(3)
When the current time slot is occupied by the PD, if there is a new LD (HD) request to send data, the PD abandons the data transmission of this period and then assigns the time slot to the higher priority and more urgent LD (HD). When the current time slot is occupied by LD, if there is a new HD request to send data, and the deadline of the LD that has been accessed to the channel has not yet expired, it will be put into the buffer table to be allocated again and wait for the next time. The slot reallocates wireless channel resources for it. At the same time, the time slot is allocated to the newly arrived HD with higher priority(4)
In order to improve the efficiency of network processing, the switch sends the data to the controller, and the controller performs centralized processing of this information and then sends the processing result to each terminal node in the form of broadcast, and finally, each node matches its own access flow table and completes channel accessIn summary, ERAS will be divided into two parts: the transmission control algorithm (TCA) in the controller and the transmission indication algorithm (TIA) in the switch.


### 4.2. TCA in the Controller

When the controller hears the request information from HD or LD in CCH at a certain moment, it first parses the predetermined information forwarded by the switch, including prioritypij, node serial number sij, request time RTij, and deadline DLij. Then, according to pij, the requests issued by HD and LD are stored in their respective cache lists HDh3 and LDl3, and the elements in each cache list are arranged in the order of expiration date from smallest to largest. If the deadline is the same, put the first arriving data packet first. Then, each node in the two buffer lists is allocated a transmission channel and a time slot, and the execution process is as follows:
(1)
IfHDh3 is not empty, indicating that there is an HD node requesting to send data at this time, the elements in the buffer list HDh3 will be allocated time slots firstQuery the status of each time slot in each available channel of the current time slot, that is,Chft. If there is a channel whose Chft is -2, 0, or 2, the current time slot of the channel is allocated to the HD that requests to access the channel. During preemption, the channel with 0 will be preempted first. Set the allocated Chft to 1, and set the corresponding position of the access flow table of other nodes that interfere with sij to -1, which means that the time slot has been occupied by the HD.If there is no channel that can be preempted in the current time slot, each available channel in the next time slot is queried and so on.The node that completes the channel access will be removed from the buffer listHDh3. If a new node requests access to the channel at this time, the buffer table is updated, and then access time slots and channels are assigned to the nodes in the buffer table in turn. Until HDh3 is empty, the elements in LDl3 start to access the channel.
(2)
IfLDl3 is not empty, it means that there are LD requesting access to the channel at this timeThe access scheme of LD is similar to HD, except that the judgment conditions are different. Only whenBhft is 0 can the time slot of the channel be used to transmit the data of LD. Similarly, after the access is completed, it is necessary to delete the elements of the accessed channel from LDl3 and set the corresponding position of the access flow table of the interfering node to -2, which indicates that the time slot has been occupied by LD.The pseudocode of TCA is as follows.Algorithm 1: TCA in the controller.
Input: pij, sij, RTij, DLij, Chft, sijft.Store HD or LD requests inHDh3 and LDl3 in ascending order of deadlinewhile (HDh3!=null)for each: node in HDh3, develop an access schemefor each: channel in this time slot, if access fails, query each channel of the next time slot before the deadlineif (Chft==2or0or−2) thenPriority to occupy the channel whereChft is 0Chft⟵1; sijft⟵1; wij−−;Delete the successfully connected node inHDh3for each (sωτ∈itfsij) doChft⟵−1; sωτft⟵−1;end forelse if (Chft⟵1) then query each channel of the next time slotend forif (wij!=0) then return failend forwhile (LDl3!=null)for each: node in LDl3, develop an access schemefor each: channel in this time slot, if access fails, query each channel of the next time slot before the deadlineif (Clft==0) thenClft⟵2; sijft⟵1; wij−−Delete the successfully connected node inLDl3for each (sωτ∈itfsij) doClft⟵−2; sωτft⟵−1;end forelse if (Clft==1or2or−1or−2) then query each channel of the next time slotend forif (wij!=0) then return failend forreturn success


### 4.3. TIA in the Switch

When HD or LD nodes want to access the channel, they first send the requested information to the switch in HPRS of CCH. There are two cases for prioritypij, 1 or 2. Among them, 1 represents that the data packet from HD, and the priority is the highest; 2 represents that the data packet from LD, and the priority is the second. Here, no matter what kind of data it is, it must be sent before the deadline. After the switch requests predetermined information from the node in its own cell, it forwards the information to the controller and waits for the controller to send updated information. After the switch receives the updated access flow table from the controller, the terminal node will perform wireless transmission according to the new access flow table.The pseudocode of TIA is as follows.Algorithm 2: TIA in the switch.
Input: HD, LD, Chft, sijftSend request reservation information to the controller in HPRS, including the following:Prioritypij, 1 represents the HD, 2 represents the LD;Node numbersij;DeadlineDLijWaiting to receive the updated access flow table of the controllersijft;Complete the channel access according to the updated access flow table.From Algorithms1 and 2, it can be concluded that the time complexity of ERAS is OhF+lF, where the number of channels F is a fixed value, so the time complexity is Oh+l. When the number of HD and LD nodes is fixed at a certain moment, the time complexity of ERAS is O1.


### 4.4. Example of an Access Scheme

Figure3 is an application example of ERAS. There are three cells in the network, and each network has a PD node to periodically transmit data. C0 and C2 each have an LD node s01 and s21, and C1 has an HD node s11. The request time of high-priority nodes s01, s21, and s11is shown in Figure 3(b). Before performing ERAS, the PD node has completed the time slot allocation according to the principle of the earliest deadline first, and the access flow table after allocation is shown in Figure 4. The node access flow table is integrated into the cell access flow table.Figure 3
Example of an access scheme.
(a)
Topology diagram of an access scheme example(b)
Node request time and deadlineFigure 4
Access flow table for PD.The process of executing ERAS according to the results of Figure4 is shown in Figure 5. There are assigned access slots to the elements in the two cache lists. The description is as follows.
(1)
At time 0, there is only one LD node requesting to send data and put it in the cache listLDl3. Since HDh3 is empty, the channel resource is directly allocated to the element s21 in LDl3. Assign channel 1 of time slot 1 to s21. At this time, the corresponding position of the access flow table of C2 is set to 2, and the same position of the access flow table of C1 with interference is -2. The access flow table corresponding to each node is set to the corresponding value(2)
At time 1, two nodess11 and s01 issue a channel access request, store s11 in HDh3, and store s01 in LDl3. Priority is given to allocating transmission resources for s11 in HDh3. It can be seen from Figure 4 that the two channels of time slot 1 are occupied by HD and PD nodes, respectively, so the channel used by the PD node is preferentially preempted, that is, channel 2. At this time, slot 1 and channel 2 of I are set to 1, and the same positions as C0 and C2 that interfere with it are set to -1. Finally, the access flow table of each node is updatedFigure 5
ERAS execution process.In summary, the channel access scheme shown in Figure6 is finally obtained. The controller sends this result to the switches of each network, and the switch forwards the access flow table to the matching node, and finally, the node completes the channel access.Figure 6
ERAS access scheme results.


## 4.1. ERAS Access Scheme Description

Since Section3.5 proves that the problem to be solved is NP-hard, it is impossible to propose an optimal polynomial algorithm. Accordingly, this section proposes a pseudopolynomial time ERAS algorithm based on the greedy algorithm.The core idea of ERAS is as follows. For the known periodic data, a fixed transmission time slot is allocated to it using a channel access scheme based on the earliest deadline first. When random high-priority data arrives, time slots are allocated for it according to channel occupancy. At this time, high-priority data (HD or LD) can preempt the time slot of low-priority data (LD or PD), and data of the same priority are also allocated time slots according to the principle of the earliest deadline first.It must always be ensured that the three types of nodes are time synchronized. The centralized control of the SDN controller can easily achieve this.At a certain moment, if there is an HD or LD with a higher priority requesting access to the channel, the ERAS proposed below will be used to access the wireless channel resources. The specific ideas of the access scheme are as follows:(1)
In order to ensure the real-time and reliability requirements of high-priority data, it is allowed to preempt the transmission time slot of low-priority data. The low-priority data that is forcibly taken is either delayed for a period of time and sent again or discarded.(2)
The high-priority data will send the reservation request information to the switch in the cell in CCH and align it with the next superframe. Then, the switch transmits all the requested information in the cell where it is located to the controller in a wired manner. Finally, the controller allocates the resources of TCH to the requesting nodes(3)
When the current time slot is occupied by the PD, if there is a new LD (HD) request to send data, the PD abandons the data transmission of this period and then assigns the time slot to the higher priority and more urgent LD (HD). When the current time slot is occupied by LD, if there is a new HD request to send data, and the deadline of the LD that has been accessed to the channel has not yet expired, it will be put into the buffer table to be allocated again and wait for the next time. The slot reallocates wireless channel resources for it. At the same time, the time slot is allocated to the newly arrived HD with higher priority(4)
In order to improve the efficiency of network processing, the switch sends the data to the controller, and the controller performs centralized processing of this information and then sends the processing result to each terminal node in the form of broadcast, and finally, each node matches its own access flow table and completes channel accessIn summary, ERAS will be divided into two parts: the transmission control algorithm (TCA) in the controller and the transmission indication algorithm (TIA) in the switch.


## 4.2. TCA in the Controller

When the controller hears the request information from HD or LD in CCH at a certain moment, it first parses the predetermined information forwarded by the switch, including prioritypij, node serial number sij, request time RTij, and deadline DLij. Then, according to pij, the requests issued by HD and LD are stored in their respective cache lists HDh3 and LDl3, and the elements in each cache list are arranged in the order of expiration date from smallest to largest. If the deadline is the same, put the first arriving data packet first. Then, each node in the two buffer lists is allocated a transmission channel and a time slot, and the execution process is as follows:
(1)
IfHDh3 is not empty, indicating that there is an HD node requesting to send data at this time, the elements in the buffer list HDh3 will be allocated time slots firstQuery the status of each time slot in each available channel of the current time slot, that is,Chft. If there is a channel whose Chft is -2, 0, or 2, the current time slot of the channel is allocated to the HD that requests to access the channel. During preemption, the channel with 0 will be preempted first. Set the allocated Chft to 1, and set the corresponding position of the access flow table of other nodes that interfere with sij to -1, which means that the time slot has been occupied by the HD.If there is no channel that can be preempted in the current time slot, each available channel in the next time slot is queried and so on.The node that completes the channel access will be removed from the buffer listHDh3. If a new node requests access to the channel at this time, the buffer table is updated, and then access time slots and channels are assigned to the nodes in the buffer table in turn. Until HDh3 is empty, the elements in LDl3 start to access the channel.
(2)
IfLDl3 is not empty, it means that there are LD requesting access to the channel at this timeThe access scheme of LD is similar to HD, except that the judgment conditions are different. Only whenBhft is 0 can the time slot of the channel be used to transmit the data of LD. Similarly, after the access is completed, it is necessary to delete the elements of the accessed channel from LDl3 and set the corresponding position of the access flow table of the interfering node to -2, which indicates that the time slot has been occupied by LD.The pseudocode of TCA is as follows.Algorithm 1: TCA in the controller.
Input: pij, sij, RTij, DLij, Chft, sijft.Store HD or LD requests inHDh3 and LDl3 in ascending order of deadlinewhile (HDh3!=null)for each: node in HDh3, develop an access schemefor each: channel in this time slot, if access fails, query each channel of the next time slot before the deadlineif (Chft==2or0or−2) thenPriority to occupy the channel whereChft is 0Chft⟵1; sijft⟵1; wij−−;Delete the successfully connected node inHDh3for each (sωτ∈itfsij) doChft⟵−1; sωτft⟵−1;end forelse if (Chft⟵1) then query each channel of the next time slotend forif (wij!=0) then return failend forwhile (LDl3!=null)for each: node in LDl3, develop an access schemefor each: channel in this time slot, if access fails, query each channel of the next time slot before the deadlineif (Clft==0) thenClft⟵2; sijft⟵1; wij−−Delete the successfully connected node inLDl3for each (sωτ∈itfsij) doClft⟵−2; sωτft⟵−1;end forelse if (Clft==1or2or−1or−2) then query each channel of the next time slotend forif (wij!=0) then return failend forreturn success


## 4.3. TIA in the Switch

When HD or LD nodes want to access the channel, they first send the requested information to the switch in HPRS of CCH. There are two cases for prioritypij, 1 or 2. Among them, 1 represents that the data packet from HD, and the priority is the highest; 2 represents that the data packet from LD, and the priority is the second. Here, no matter what kind of data it is, it must be sent before the deadline. After the switch requests predetermined information from the node in its own cell, it forwards the information to the controller and waits for the controller to send updated information. After the switch receives the updated access flow table from the controller, the terminal node will perform wireless transmission according to the new access flow table.The pseudocode of TIA is as follows.Algorithm 2: TIA in the switch.
Input: HD, LD, Chft, sijftSend request reservation information to the controller in HPRS, including the following:Prioritypij, 1 represents the HD, 2 represents the LD;Node numbersij;DeadlineDLijWaiting to receive the updated access flow table of the controllersijft;Complete the channel access according to the updated access flow table.From Algorithms1 and 2, it can be concluded that the time complexity of ERAS is OhF+lF, where the number of channels F is a fixed value, so the time complexity is Oh+l. When the number of HD and LD nodes is fixed at a certain moment, the time complexity of ERAS is O1.


## 4.4. Example of an Access Scheme

Figure3 is an application example of ERAS. There are three cells in the network, and each network has a PD node to periodically transmit data. C0 and C2 each have an LD node s01 and s21, and C1 has an HD node s11. The request time of high-priority nodes s01, s21, and s11is shown in Figure 3(b). Before performing ERAS, the PD node has completed the time slot allocation according to the principle of the earliest deadline first, and the access flow table after allocation is shown in Figure 4. The node access flow table is integrated into the cell access flow table.Figure 3
Example of an access scheme.
(a)
Topology diagram of an access scheme example(b)
Node request time and deadlineFigure 4
Access flow table for PD.The process of executing ERAS according to the results of Figure4 is shown in Figure 5. There are assigned access slots to the elements in the two cache lists. The description is as follows.
(1)
At time 0, there is only one LD node requesting to send data and put it in the cache listLDl3. Since HDh3 is empty, the channel resource is directly allocated to the element s21 in LDl3. Assign channel 1 of time slot 1 to s21. At this time, the corresponding position of the access flow table of C2 is set to 2, and the same position of the access flow table of C1 with interference is -2. The access flow table corresponding to each node is set to the corresponding value(2)
At time 1, two nodess11 and s01 issue a channel access request, store s11 in HDh3, and store s01 in LDl3. Priority is given to allocating transmission resources for s11 in HDh3. It can be seen from Figure 4 that the two channels of time slot 1 are occupied by HD and PD nodes, respectively, so the channel used by the PD node is preferentially preempted, that is, channel 2. At this time, slot 1 and channel 2 of I are set to 1, and the same positions as C0 and C2 that interfere with it are set to -1. Finally, the access flow table of each node is updatedFigure 5
ERAS execution process.In summary, the channel access scheme shown in Figure6 is finally obtained. The controller sends this result to the switches of each network, and the switch forwards the access flow table to the matching node, and finally, the node completes the channel access.Figure 6
ERAS access scheme results.


## 5. Simulation and Result Analysis

In this section, the performance of ERAS on the delay, deadline guarantee rate, and channel utilization is tested through simulation, and compared with the traditional CSMA/CA based on competition and PriorityMAC based on priority classification.The simulation environment is set up as follows. The network topology includes a controller and four cells. Each cell includes several sensor nodes (HD, LD, or PD nodes), and the number of nodes can be set by parameters. The number of PD nodes in each cell is the same, and the transmission time slot has been allocated before the ERAS algorithm is executed. It is stipulated that there is wireless interference between two adjacent cells, and there is no interference if they are not adjacent. The simulation simulates a wireless data transmission link that containsF (F=4) radiofrequency channels, and each channel contains T (T=1000) time slots with a length of 2 ms. The transmission period of each PD node satisfies the uniform distribution on 50,500, and the transmission period of the node is all set to an integer. The sending moments of HD and LD nodes are randomly generated. The proportion of various nodes can be adjusted according to actual needs.In this paper, when testing the delay, deadline guarantee rate, and channel utilization, each experiment is repeated 1000 times. Then, the abnormal data is deleted, the average value of the remaining data is calculated, and the image is drawn.Figures7(a) and 7(b), respectively, describe the average delay of the three access schemes when the ratio of HD, LD, and PD nodes is different. The average delay of ERAS is lower than that of PriorityMAC and CSMA/CA, and this difference becomes more significant when the HD node accounts for a larger proportion of all nodes. This is because when the HD occupancy ratio increases, the more channel resources that exist between data preemption, and the number of nodes competing for the same time slot will also increase significantly. This situation will cause a part of HD or LD nodes to give time slots to HDs with a shorter deadline, thus resulting in a larger time delay. However, because ERAS uses a network resource multiplexing strategy to allocate time slots, this delay will be reduced to a certain extent, so the delay of ERAS is still lower than that of the other two access schemes. Since CSMA/CA adopts a competition-based mechanism, various services fairly compete for transmission channels and time slots. It is easy for multiple data packets to compete to use the same time slot when the amount of data is high. Currently, some data packets must be backed off, which causes a large amount of delay and ultimately leads to a lower overall delay. PriorityMAC introduces an HPIS of two subslots in each time slot, and the node performs channel access through continuous attempts, which will cause the average delay of the node to transmit data to increase significantly.Figure 7
Delay analysis.
(a)
HD:LD:PD=1:2:4(b)
HD:LD:PD=1:1:2Figures8(a) and 8(b), respectively, describe the average data transmission delay of the node with the highest priority when ERAS and PriorityMAC have different proportions of data transmission nodes. The average data transmission delay of HD nodes in ERAS is lower than the average data transmission delay of TC1 nodes in PriorityMAC, and this difference becomes more and more significant as the proportion of emergency data nodes in all nodes increases. This is because ERAS adopts the channel multiplexing method and the centralized control concept of SDN, which can ensure the real-time requirements of HD nodes. Although PriorityMAC has developed a dedicated time slot allocation method for HD nodes, this method is based on the idea of random contention, which will cause collisions between HD nodes and increase network delay.Figure 8
Delay analysis of high-priority nodes.
(a)
HD:LD:PD=1:2:4(b)
HD:LD:PD=1:1:2It can be seen from the simulation results of Figures9(a) and 9(b) that the deadline guarantee rates of ERAS, PriorityMAC, and CSMA/CA all decrease with the increase of the number of nodes. ERAS always prioritizes the allocation of time slots to the data with the smallest deadline in each category during the execution process, so it can achieve a higher deadline guarantee rate, but if the proportion of HD nodes increases, the deadline guarantee rate cannot be guaranteed to maintain at a high level. When the number of nodes increases, the probability of data collision using the CSMA/CA strategy also increases, so there is a large amount of data that cannot be completed before the deadline. PriorityMAC did not consider the deadline for the data during execution, so it is difficult to guarantee a high deadline guarantee rate.Figure 9
Deadline guarantee rate analysis.
(a)
HD:LD:PD=1:2:4(b)
HD:LD:PD=1:1:2The channel utilization rate is the proportion of the total number of time slots used in the data transmission process occupying all the time slots in the network, which can be expressed asU=E∑i=1NSi/EFTscheduled. It can be clearly seen from the simulation diagram of Figures 10(a) and 10(b) that ERAS can achieve very high channel utilization no matter how many nodes there are. This is because ERAS uses a channel preemption mechanism; under this mechanism, no matter what type of data it is, the time slot can be fully used. However, CSMA/CA will have multiple data competing to use the same time slot at a certain moment, so there will be a large number of idle time slots, and the more the number of nodes, the more frequent this situation will occur, and the channel utilization of the network will be reduced as a result. PriorityMAC performs channel access for the data with the lowest priority according to the TDMA strategy, which will cause some time slots in the channel to remain idle for a long time. Even if these time slots are used first when higher priority data arrives, these time slots can only be wasted when there is no high-priority data.Figure 10
Channel utilization analysis.
(a)
HD=3LD, J=20(b)
HD=2LD, J=20


## 6. Conclusion

Aiming at the problem of low reliability caused by large-scale equipment access to the network, this paper mainly proposed an enhanced reliable access scheme for massive IoT applications in software-defined industrial heterogeneous networks. Firstly, according to the different real-time performance requirements of various data, the data in industrial heterogeneous networks is divided into three types: high timeliness event data, low timeliness event data, and periodic data. Secondly, an enhanced reliable access scheme (ERAS) for heterogeneous network mixed service flow is proposed. The scheme is divided into two parts: the transmission control algorithm in the controller and the transmission indication algorithm in the switch. To indicate the priority of the data, a high-priority reserved subslot is designed in the superframe model. And the delay constraint of the high-priority data is guaranteed as much as possible. Meanwhile, the transmission interference between neighboring nodes is considered in the access scheme, and it will effectively avoid this problem by means of time slot allocation. Finally, the time delay, deadline guarantee rate, and channel utilization rate of ERAS are compared and analyzed with two typical access schemes through simulation. As the simulation results show, the performance of ERAS is better than that of the other two access schemes, and it realizes high-reliability access in the industrial heterogeneous massive IoT. In particular, the scheme provides higher reliability and lower delay for data with higher urgency.



---

*Source: 7241362-2022-01-19.xml*