## 3 System Model  
### Communication Failure and Repair Mechanism with Classified PUs  
In a single-channel CRN system, there are three types of users: one PU1, one PU2, and one SU, where PU1 has a higher priority than PU2, and SU has the lowest priority. As the source of data, each type of user generates one corresponding packet at most in each slot. In the transmission process, the central controller is responsible for spectrum scheduling. Due to the low priority of SU packets, setting a cache with limited capacity for SU packets can appropriately reduce the occurrence of SU packets leaving the system. PU packets require high real-time performance, so no cache is set for them.  
We define the system as being in a normal state if there is no failure. If a system failure occurs, the system enters a failure state. To balance the influence of the existence of the failure on the two types of PU packets, we set the preemption principle based on the system state. No preemption behavior will exist between PU1 and PU2 packets in the system's normal state. In the failure state of the system, PU1 packets can preempt PU2 packets' right to use the channel. In addition, both PU1 and PU2 packets can preempt SU packets' channel access right whatever the system's state is.  
Once a failure happens, SU packets' transmission is interrupted. While PU1 and PU2 packets have higher real-time requirements, we set them to be transmitted at a low speed when the system is in a failure state to effectively enhance the throughput of PU1 and PU2 packets within a unit time slot.  
Based on the proposed communication failure and repair mechanism, the system actions for the three types of packets are described as follows:  
For PU1 packets, when there are no other PU packets in the channel, the newly arrived PU1 packet can directly enter the channel. If an SU packet exists in the channel, the newly arrived PU1 packet will preempt the channel used by the SU packet and the SU packet will enter into the cache to wait. When the system state is normal, and there is a PU1 packet or a PU2 packet in the channel, the freshly arrived PU1 packets can only leave the system. If the system state is failure, when the channel contains a PU1 packet, and the freshly arrived PU1 packet leaves the system; moreover, when the channel includes a PU2 packet, the channel used by the PU2 packet is preempted by the newly arrived PU1 packet and the PU2 packet leaves the system. A PU1 packet entering the channel is transmitted at a low speed if the system is in a failure state and at a high speed if the system state is normal.  
For PU2 packets, when there are no other PU packets in the channel, the newly arrived PU2 packet can directly enter the channel, and if there are other PU packets in the channel, the newly arrived PU2 packet can only leave the system. The channel used by the SU packet is snatched by the newly arrived PU2 packet if an SU packet exists in the channel, and the SU packet enters the cache for waiting. A PU2 packet entering the channel is transmitted at a low speed if the system is in a failure state and at a high speed if the system state is normal.  
For SU packets, if the system state is failure, the newly arrived SU packet directly enters the cache to wait, and the SU packet being transmitted is interrupted and enters the cache. If the system state is normal, the newly arrived SU packet enters the channel for transmission if there are no other packets in the channel. If there are other packets in the channel, the newly arrived SU packet enters the cache and waits. When the cache is full, the interrupted or newly arrived SU packets cannot enter the cache. When the channel is empty and the system state is normal, the SU packet at the head of the cache queue can enter the channel for further transmission.