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.

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 [913] and time slot-based methods [1418]. 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. Section 2 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.

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 -schedule using the independent characteristics of multiple channels, which can improve channel utilization while avoiding intercell interference. However, -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.

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 Figure 1. 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 nodes, including HD nodes, LD nodes, and 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.

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 itself

The 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) and 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 , which is called a superframe, and each superframe is divided into a series of subtime slots with the smallest time unit. A high-priority reserved subslot (HPRS) with a size of 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.

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. 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 are radiofrequency channels in the network, and each channel is cut into 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 switches in a wired manner, and the switch is represented by (). Each switch is connected to sensor nodes, and represents the th sensor node under the th switch. The sensor nodes include HD nodes, LD nodes, and PD nodes. Switch and node together form a cell . Let denote the transmission period of sensor . 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. represents the th data sent by ( is an integer greater than 1). In this way, ’s request time can be denoted as , and its deadline is denoted by , and we have . represents the execution time of the th data sent by . It is required that the data must be connected to the channel before the start of the next cycle, which means that for the th data, the execution time must satisfy

As long as there is a data that does not meet the above conditions, it is said that an overflow has occurred.

In addition, use to represent the workload of ; that is, the size of the workload that needs to complete is . In , the workload of is denoted by . For , the workload in a cycle is represented by (). 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 , , and in

For any cell, define a wireless transmission interference set 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, . Meanwhile, for all sensors under the same switch, there must be interference between them, which means and for any . 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.

Array represents the access flow table of . indicates that can transmit data in the th time slot of the th channel in the network. When 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 is prohibited from using it.

A three-dimensional array is used to represent the access flow table of . combines the access flow tables from to . 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. has five states: -2, -1, 0, 1, and 2, as shown in Equation (3). -2 indicates that the th time slot of the th 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 th time slot of the th 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 th time slot of the th channel.

The controller needs to maintain two cache lists, and , 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 , request time , data packet expiration date , and priority . The maximum capacities of the two cache lists are and , respectively.

Here is the definition of effective access.

Definition 1 (effective access). The following conditions are sufficient and necessary for effective access:
Condition 1:, such that , and we have
Condition 2:, where
Condition 3:

Condition 1 means that for each node , if it has selected a certain time slot of a certain channel to transmit data, that is, , any node that interferes with it will not be allowed to transmit data in this time slot of this channel. That is, . The 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. Given , , , , itf, , DL, , , and , how to use the least time slot to ensure that data sent by all nodes can be accessed to channels with 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 .

3.5. Complexity Analysis

We will analyze the complexity of below. First, select a special case of the problem to be solved, where there is , , , , , and . 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 (’s complexity analysis). The special case of the problem to be solved is NP-complete.

To prove that 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, . The certification process is as follows.

Proof. (1)It is possible to verify the access scheme of problem is valid in polynomial time, indicating that it is an NP problem(2)Prove that can be reduced to . In (denoted by below), represents the vertices in the graph, and represents the set of all edges connecting the vertices in the graph. 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 can be constructed for the known problem in polynomial time. The specific process is as follows: (a)The number of cells in the network is (b)For any , if there is an edge connection between vertex and vertex in , then in the access problem , we have (c)For each cell, set the total workload Express the problem generated by the above process as . (3)In (2), the input of has been equivalent to the input of , and then we will prove that their output is also equivalent. The proof needs to be divided into two steps. First, prove that is accessible when can be successfully colored, and then prove that can be successfully colored when is accessibleStep 1. Prove that when can be colored, has an accessible scheme. When is colorable, any vertex in the graph can be colored by choosing a color in , and any two vertices directly connected by an edge are not colored in the same color. According to the coloring scheme of , an access scheme of can be obtained as follows.
If any vertex in is colored as , the cell in will transmit in time slot . Since all vertices directly connected by edges in cannot be colored in the same color, corresponding to any two interfering cells in that cannot access the same time slot, then Condition 1 of Definition 1 is satisfied. In addition, all vertices in are colored into one color in three colors, which means that each cell in is assigned a time slot, and Condition 2 of Definition 1 is satisfied at this time. Meanwhile, all vertices in can choose one of three colors for coloring. Correspondingly, all nodes in the cell in 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 .
Step 2. Prove that when is accessible, has a colorable scheme. When is accessible, any cell is allocated a time slot in . 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 , the coloring scheme of can be obtained as follows.
For any cell , if the transmission time slot is allocated at time , it means that the vertex in is colored with the color . According to the definition of effective access, the interfering cells in are assigned different transmission time slots. Correspondingly, any two vertices directly connected with edges in are colored in different colors. In addition, each cell is assigned a time slot, corresponding to any vertex in that is colored. Consequently, the coloring scheme of generated according to the access scheme of meets all the requirements of the 3-coloring problem. In summary, can be obtained. (4)According to the proof of (3), we have . That is to say, the output results of and are the same; that is, can be reduced to , so the access problem is NP-hard. And because (1) has proved that it is an NP problem, it must be NP-complete

In summary, it has been successfully proved that Lemma 2 is valid. Next, Theorem 3 is proposed based on Lemma 2.

Theorem 3 (’s complexity analysis). The enhanced reliable access problem for massive IoT applications in software-defined industrial heterogeneous networks is NP-hard.

Proof. Since Lemma 2 has proved that is NP-complete, then the more general problem must be NP-hard, so Theorem 3 holds.

4. Enhanced Reliable Access Scheme

4.1. ERAS Access Scheme Description

Since Section 3.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 access

In 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 priority , node serial number , request time , and deadline . Then, according to , the requests issued by HD and LD are stored in their respective cache lists and , 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)If is not empty, indicating that there is an HD node requesting to send data at this time, the elements in the buffer list will be allocated time slots first

Query the status of each time slot in each available channel of the current time slot, that is, . If there is a channel whose 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 to 1, and set the corresponding position of the access flow table of other nodes that interfere with 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 list . 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 is empty, the elements in start to access the channel. (2)If is not empty, it means that there are LD requesting access to the channel at this time

The access scheme of LD is similar to HD, except that the judgment conditions are different. Only when 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 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.

Input: , , , , ,
Store HD or LD requests in and in ascending order of deadline
while ()
for each: node in , develop an access scheme
  for each: channel in this time slot, if access fails, query each channel of the next time slot before the deadline
   if () then
    Priority to occupy the channel where is 0
     ; ; ;
     Delete the successfully connected node in
     for each () do; ;
     end for
    else if () then query each channel of the next time slot
   end for
   if () then return fail
  end for
while ()
  for each: node in , develop an access scheme
   for each: channel in this time slot, if access fails, query each channel of the next time slot before the deadline
    if () then
     ; ;
     Delete the successfully connected node in
     for each () do; ;
     end for
    else if () then query each channel of the next time slot
   end for
   if () then return fail
  end for
return 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 priority , 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.

Input: HD, LD, ,
Send request reservation information to the controller in HPRS, including the following:
 Priority , 1 represents the HD, 2 represents the LD;
 Node number ;
 Deadline
Waiting to receive the updated access flow table of the controller ;
Complete the channel access according to the updated access flow table.

From Algorithms 1 and 2, it can be concluded that the time complexity of ERAS is , where the number of channels is a fixed value, so the time complexity is . When the number of HD and LD nodes is fixed at a certain moment, the time complexity of ERAS is .

4.4. Example of an Access Scheme

Figure 3 is an application example of ERAS. There are three cells in the network, and each network has a PD node to periodically transmit data. and each have an LD node and , and has an HD node . The request time of high-priority nodes , , and is 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.

The process of executing ERAS according to the results of Figure 4 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 list . Since is empty, the channel resource is directly allocated to the element in . Assign channel 1 of time slot 1 to . At this time, the corresponding position of the access flow table of is set to 2, and the same position of the access flow table of with interference is -2. The access flow table corresponding to each node is set to the corresponding value(2)At time 1, two nodes and issue a channel access request, store in , and store in . Priority is given to allocating transmission resources for in . 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 are set to 1, and the same positions as and that interfere with it are set to -1. Finally, the access flow table of each node is updated

In summary, the channel access scheme shown in Figure 6 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.

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 contains () radiofrequency channels, and each channel contains () time slots with a length of 2 ms. The transmission period of each PD node satisfies the uniform distribution on , 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.

Figures 7(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.

Figures 8(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.

It can be seen from the simulation results of Figures 9(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.

The 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 as . 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.

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.

Data Availability

The authors confirm that the data supporting the findings of this study are available within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work was supported in part by the National Key Research and Development Program of China under Grant 2018YFB1702000 and in part by the Fundamental Research Funds for the Central Universities under Grant N2116012, Grant N2116013, and Grant N180708009.