# On the Fairness of Internet Congestion Control over WiFi with Deep Reinforcement Learning
## 3 Mathematical Interpretation of Unfairness and Starvation in Representative CCAs
Case ii: Considering two CUBIC flows with the same RTTs, \(\tau\), and experiencing different losses, \(p_{1}\) and \(p_{2}\), we can evaluate how the congestion windows \(W_{1}^{\star}\) and \(W_{2}^{\star}\) evolve:  
\[\frac{W_{1}^{\star}}{W_{2}^{\star}}=\sqrt[4]{\frac{p_{2}^{3}}{p_{1}^{3}}} \tag{2}\]  
If \(p_{1}=2p_{2}\), then \(\frac{W_{1}^{\star}}{W_{2}^{\star}}=\sqrt[4]{8}\). As we know, **Starvation** is an extreme case of unfairness; the two cases discussed above will have the following consequences:  
Case i: If \(p_{1}=np_{2}\), where \(n=1,2,3,\ldots,20\)\(\frac{W_{1}^{\star}}{W_{2}^{\star}}=\sqrt[4]{\frac{1}{n^{3}}}\);  
Case ii: If \(\tau_{1}=n\tau_{2}\), where \(n=1,2,3,\ldots,20\)\(\frac{W_{1}^{\star}}{W_{2}^{\star}}=\sqrt[4]{n^{3}}\). PCC Vivace borrows the FCC architecture: a utility function framework and a learning rate-control algorithm and perceives both modules uniquely. This utility function rewards throughput to maximize performance and minimize latency, while it penalizes when packet loss occurs and increases latency [14; 15]. The learning rate-control algorithm provides an opportunity for the sender to select the sending rates that allow the senders to learn their performance through statistic aggregation, such as achieved throughput, latency, and loss rate of packets. Then based on the numerical utility value, they determine the sending rate [15]. The following equation helps to find out the utility value. With detailed derivation deferred to the Appendix A, we consider two cases to explain the causes of unfairness and starvation. Case i: Considering two PCC flows with different RTTs, \(\tau_{1}\) and \(\tau_{2}\), and experiencing the same loss \(p\), we can evaluate how the congestion windows \(U_{1}^{\star}\) and \(U_{2}^{\star}\) evolve as  
\[\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{1-b\frac{d\tau_{1}}{dT}-cL_{i}}{1-b \frac{d\tau_{2}}{dT}-cL_{i}} \tag{3}\]  
If \(\tau_{1}=2\tau_{2}\), then \(\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{1-2b\frac{d\tau_{1}}{dT}-cL_{i}}{1-b \frac{d\tau_{2}}{dT}-cL_{i}}\). Case ii: Considering two PCC flows with same RTTs, \(\tau\), and experiencing different losses, \(p_{1}\) and \(p_{2}\), we can evaluate how the congestion windows \(U_{1}^{\star}\) and \(U_{2}^{\star}\) evolve:\[\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{(1-b\frac{d\tau}{dT}-cL_{i})(1-p_{2})}{ (1-b\frac{d\tau}{dT}-cL_{i})(1-p_{1})}=\frac{1-p_{2}}{1-p_{1}} \tag{4}\]  
If \(p_{1}=2p_{2}\), then \(\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{1-p_{2}}{1-2p_{2}}\). As we know, **Starvation** is an extreme case of unfairness; the two cases discussed above will have the following consequences:  
Case i: If \(p_{1}=np_{2}\), where \(n=\{1,2,3,\ldots,20\}\)  
\[\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{1-p_{2}}{1-np_{2}}\]  
Case ii: If \(\tau_{1}=n\tau_{2}\), where \(n=1,2,3,\ldots,20\)  
\[\frac{U_{1}^{\star}}{U_{2}^{\star}}=\frac{1-n(b\frac{d\tau_{2}}{dT})-cL_{i}}{ 1-(b\frac{d\tau_{2}}{dT})-cL_{i}}\]  
BBR has a strong influence on congestion control, which measures the available Bottleneck Bandwidth (Btlbw) and lowest RTT [47]. By using those measurements, BBR creates a network path model to increase the delivery rate and decrease latency [47]. The BBR congestion control algorithm also measures the maximum delivery rate and minimum transmission delay to find Kleinrock's optimal operating point [48], also known as Bandwidth Delay Product (BDP). During this period, the delivery rate remains unchanged but RTT increases. With extensive mathematical modeling detailed at the end of this paper, we consider cases to explain the causes of unfairness and starvation as follows.