Research Article

Hierarchical Cross Traffic Scheduling Based on Time-Aware Shapers for Mobile Time-Sensitive Fronthaul Network

Algorithm 2

Outbound algorithm based on queue status.
Input:
{frame.Q} Queue that data frames need to enter
{W.start} Transmission time of each data frame
{slot} Time slot obtained by GCL
Output:
Q.status  Forwarding status of the queue
(1)   WHILE Q is not empty THEN
       // whether queue Q is empty, i.e., whether there is data waiting to be forwarded
(2)    FOR (i = 1; i++; i < = 4) //Update Q.start
(3)      Qi.start ← W.start_first (Qi)
       // W.start of the first data frame to be transmitted in each queue is Q.start
(4)   END FOR
(5)  Qk ← min (Qi.start); // Select the queue with the lowest value of Qi.start
(6)   Calculate the number of frames that need to be transmitted continuously in Qk according to frame.Q.
(7)   Qk.end ←Qk_finish (Qk)
     //Determine Qk according to the number of frames that can be transmitted continuously
(8)   WHILE (t_now > = Qk.start)
(9)     Qk.status = 1; // The queue status is 1, and forwarding is performed
(10)       IF (t_now > = Qk.end)
(11)     Qk.status = 0;
(12)     break;
(13)       END IF
(14)   Update Q.start
(15)  END WHILE