## 2 Related Work  
In general, two types of schemes are used to address fairness among competing flows: AQM and packet scheduling. Compared with packet scheduling, AQM has attracted more attention due to its simplicity and efficacy. Moreover, AQM can enhance the performance of congestion control algorithms. Deficit Round Robin (DRR) is a packet scheduler that can achieve approximately perfect fairness [7]. DRR allocates a virtual queue dedicated to each active flow, which accommodates its arriving packets. When the packets are enqueued into particular queues, they will be served in a round-robin fashion according to the available quantum sizes. DRR needs to maintain per-flow state. In addition, DRR must work with a pushout (PO) buffer management scheme that avoids buffer shortages on certain flows [8]. When a packet arrives at a router with a full buffer, PO will push out one or more residing packets from the longest virtual queue. In this manner, PO can make room for the new arrival. Otherwise, the arriving packet will be accepted without any constraints. PO can make buffer utilization high and packet loss low under various traffic conditions. However, PO has two main drawbacks. First, it has to find the longest virtual queue out when arriving packets encounter a full buffer. Second, it has to execute frequent pushout operations under congested traffic conditions. As a result, it is questionable whether DRR should be implemented due to the abundance of active flows in routers [9]. DRR may suffer from a large delay and jitter due to a long cycle of round robin operations, so several variants have been developed to address these issues [10, 11, 12]. A customized deficit round robin (CDRR) takes care of real-time flows by adding a new queue to schedule real-time traffic just prior to the deadline [10]. However, the extra queue increases the delay for non-real-time traffic, particularly when the traffic load is heavy. Moreover, assigning weights to the queues may enlarge overall unfairness, especially for non-real-time traffic. Another variant, fuzzy-based Adaptive Deficit Round Robin (FADRR), uses expert systems based on fuzzy logic to adjust the weights of service queues for real-time and non-real-time traffic [11]. Additionally, this scheme sacrifices fairness because it favors real-time traffic that may result in bandwidth starvation for non-real-time traffic. RED is a well-known AQM scheme employing a single FIFO buffer to accommodate arriving packets from all active flows [1]. The arriving packets encounter different drop probabilities according to average queue sizes and other parameters. RED discards packets before the buffer is full, so it can prevent the TCP connections from global synchronization. Unfortunately, RED is unable to provide fairness, especially for heterogeneous traffic. Based on RED, several variants have been proposed that enhance the fairness or robustness of RED parameters [13, 14, 15, 16, 17, 18]. Self-Configuring RED changes dropping probabilities according to the variations in average queue sizes [13]. If the average queue size oscillates around the minimum threshold, then the current dropping probability is too high. On the other hand, if it oscillates around maximum threshold, then the current dropping probability is too low. Based on the dynamics of queue sizes, the scheme adjusts packet dropping probabilities that reduce packet loss while maintaining high link utilizations. Another RED variant, weighted Destination-Based Fair Dropping (wDBFD), only needs a single queue, and packets are probabilistically dropped before they are enqueued instead of tail dropping. Furthermore, by adding weights to the drop probabilities of different destination stations, this scheme realizes destination differentiation. Additionally, wDBFD is more robust in terms of fairness when subjected to different packet arriving rates. The idea of wDBFD is similar to that of the RED, but it relies not only on past measurements of queue size but also on recent observed rates of flows.