# Optimizing Time-Sensitive Traffic Scheduling in Low-Earth-Orbit Satellite Networks
## 3 TPC-CQF Improved from CQF
### TPC-CQF Mechanism  
To address the limitations of the traditional CQF mechanism in satellite time-sensitive networks, we propose an improved algorithm based on CQF, termed TPC-CQF, aimed at optimizing the network throughput of TSFs in large-scale network scenarios. This approach seeks to enhance the processing capability of time-sensitive flows in satellite networks by introducing a differentiated forwarding mechanism and flexible scheduling strategies. The core improvement of our differentiated forwarding scheme enables priority-based handling for TSFs. As Figure 3 illustrates, a three-queue dynamic priority mechanism operates cyclically: during each time slot, one queue transmits packets while the other two receive incoming traffic (e.g., Q\({}_{1}\) transmits; Q\({}_{2}\) and Q\({}_{3}\) receive). This architecture allocates packets to receiving queues and resolves contention conflicts. Key objectives include prioritizing high-priority TSF processing, preventing queue starvation, minimizing packet loss, and maximizing throughput. Packet processing occurs in two phases: single-packet allocation and conflict resolution. New packets first verify remaining capacity K\({}_{\text{Q}}\) in available queues, excluding those where \(K_{\text{Q}}<s_{p}\) packet size. Allocation prioritizes the queue with the highest current priority sum S\({}_{\text{Q}}\), denoted as \(Q^{*}\). This strategy minimizes average waiting times for high-priority packets, as higher \(Q^{*}\) values typically indicate either more urgent packets or longer-queued traffic. The mechanism simplifies tie-breaking and optimizes same-priority conflicts through packet size and queue suitability assessments. \[Q^{*}=\arg\max_{\text{Q}\in\{Q_{1},Q_{2},\ldots,Q_{M}\}}S_{Q} \tag{6}\]  
If multiple queues have the same S\({}_{\text{Q}}\), assume the set of queues with equal S\({}_{\text{Q}}\) is denoted as Set \(F_{\text{tie}}\,=\,\left\{\left.Q_{i}\ \right|\ S_{Q_{i}}=\text{S}_{\text{max}}\right\}\), where S\({}_{\text{max}}\) is the highest priority sum value. Select  
Figure 2: Traditional CQF queue scheduling mechanism. the queue with the smallest remaining capacity \(\mathrm{K_{Q}}\), denoted as Queue \(Q^{*}\), to minimize wasted capacity. \[Q^{*}=\arg\min_{Q\in F_{\mathrm{tie2}}}K_{Q} \tag{7}\]  
If the capacities are also equal, select the queue with the lowest occupancy rate (i.e., the queue with the fewest packets \(\mathrm{N_{Q}}\)) to balance the load and reduce queuing delay. The occupancy rate can be defined as the number of packets in the queue \(\mathrm{N_{Q}}\). Assume the set of queues with equal \(\mathrm{S_{Q}}\) and \(\mathrm{K_{Q}}\) is denoted as Set \(F_{\mathrm{tie2}}=\{Q_{i}\mid S_{\mathrm{Q_{i}}}=S_{\mathrm{max}},K_{\mathrm{ Q_{i}}}=K_{\mathrm{min}}\}\), where \(\mathrm{K_{min}}\) is the lowest remaining capacity value. \[Q^{*}=\arg\min_{Q\in F_{\mathrm{tie2}}}N_{Q} \tag{8}\]  
After each packet allocation or processing, update the queue's priority sum and remaining capacity. To handle conflicting packets (multiple packets arriving simultaneously), the following differentiated allocation rules are designed, categorized into two scenarios: packets with different priorities and packets with the same priority. For packets with different priorities, the allocation essentially follows the aforementioned principles, prioritizing high-priority packets. Therefore, additional consideration is needed for handling packets with the same priority. Assume that the dynamic priorities of packets \(\mathrm{p_{1}}\) and \(\mathrm{p_{2}}\) satisfy \(\pi_{\mathrm{p_{1}}}=\pi_{\mathrm{p_{2}}}\). Then, evaluate \(s_{\mathrm{p1}}\) and \(s_{\mathrm{p2}}\), prioritizing the allocation of the larger packet to maximize queue utilization and enhance potential throughput. If \(s_{\mathrm{p1}}=s_{\mathrm{p2}}\), randomly select one packet to enqueue first before processing the other.