# An Analysis of MPTCP Congestion Control
## 7 MPTCP Congestion Control
### Alternative Approaches  
As discussed, standard coupled CC algorithms were designed to use loss-based or delay-based techniques to detect congestion over paths and ensure TCP-friendliness, while coupling the subflow windows can potentially provide TCP-friendliness at shared bottlenecks, it might affect maximisation of throughput over disjoint paths. In theory, to achieve both goals, MPTCP needs to determine subflows that do not share a point of congestion and subflows that do. Detecting the existence of a bottleneck shared between different protocols, using end-to-end measurements, can be categorised as either using active or passive techniques. Generally, in active detection techniques, the sender probes paths to gather information. With passive techniques, existing data obtained through normal protocol behaviour ( such as ACK packets) is used instead [41]. \begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline  & \multicolumn{6}{c}{**Path Bandwidth—12 Mbps**} \\ \hline  & **RTT Path 1** & \multicolumn{3}{c}{**10 ms**} & \multicolumn{3}{c}{**50 ms**} \\ \cline{2-8}  & **RTT Path 2** & **10 ms** & **20 ms** & **30 ms** & **50 ms** & **100 ms** & **150 ms** \\ \hline  & TCP & 79.4\% & 87.6\% & 90.8\% & 105.6\% & 127.4\% & 138.0\% \\ \cline{2-8}  & MPTCP Subflow 1 & 150.9\% & 181.4\% & 190.0\% & 112.8\% & 137.2\% & 115.2\% \\ \cline{2-8}  & MPTCP Subflow 2 & 79.2\% & 34.8\% & 22.8\% & 65.2\% & 2.8\% & 4.4\% \\ \cline{2-8}  & MPTCP Combined & 115.0\% & 108.1\% & 106.4\% & 89.0\% & 70.0\% & 59.8\% \\ \hline  & TCP & 76.0\% & 72.6\% & 81.8\% & 105.8\% & 134.8\% & 137.5\% \\ \cline{2-8}  & MPTCP Subflow 1 & 217.5\% & 236.8\% & 224.0\% & 162.4\% & 117.2\% & 114.0\% \\ \cline{2-8}  & MPTCP Subflow 2 & 23.2\% & 13.6\% & 8.8\% & 9.6\% & 8.4\% & 8.4\% \\ \cline{2-8}  & MPTCP Combined & 120.3\% & 125.2\% & 116.4\% & 86.0\% & 62.8\% & 61.2\% \\ \hline  & TCP & 75.4\% & 89.2\% & 82.5\% & 107.0\% & 131.4\% & 140.0\% \\ \cline{2-8}  & MPTCP Subflow 1 & 189.2\% & 175.1\% & 208.8\% & 91.6\% & 122.8\% & 108.8\% \\ \cline{2-8}  & MPTCP Subflow 2 & 43.2\% & 34.4\% & 19.6\% & 83.6\% & 6.0\% & 5.6\% \\ \cline{2-8}  & MPTCP Combined & 116.2\% & 104.7\% & 114.2\% & 87.6\% & 64.4\% & 57.2\% \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Share of 12 Mbps bandwidth attained at Switch One-Shared Paths. \begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline  & \multicolumn{6}{c}{**Path Bandwidth—24 Mbps**} \\ \hline  & **RTT Path 1** & \multicolumn{3}{c}{**10 ms**} & \multicolumn{3}{c}{**50 ms**} \\ \cline{2-8}  & **RTT Path 2** & **10 ms** & **20 ms** & **30 ms** & **50 ms** & **100 ms** & **150 ms** \\ \hline  & TCP & 88.5\% & 99.6\% & 104.8\% & 125.2\% & 136.3\% & 143.2\% \\ \cline{2-8}  & MPTCP Subflow 1 & 85.6\% & 178.1\% & 175.4\% & 42.8\% & 116.8\% & 106.6\% \\ \cline{2-8}  & MPTCP Subflow 2 & 123.4\% & 14.8\% & 10.0\% & 96.2\% & 4.6\% & 2.0\% \\ \cline{2-8}  & MPTCP Combined & 104.5\% & 96.5\% & 92.7\% & 69.5\% & 60.7\% & 54.3\% \\ \hline  & TCP & 92.4\% & 89.4\% & 98.4\% & 121.6\% & 137.2\% & 146.9\% \\ \cline{2-8}  & MPTCP Subflow 1 & 46.0\% & 211.1\% & 195.0\% & 75.4\% & 108.2\% & 83.8\% \\ \cline{2-8}  & MPTCP Subflow 2 & 143.3\% & 6.4\% & 4.4\% & 76.4\% & 10.2\% & 15.8\% \\ \cline{2-8}  & MPTCP Combined & 94.7\% & 108.8\% & 99.7\% & 75.9\% & 59.2\% & 49.8\% \\ \hline  & TCP & 86.8\% & 103.7\% & 105.1\% & 111.2\% & 136.8\% & 147.5\% \\ \cline{2-8}  & MPTCP Subflow 1 & 78.1\% & 170.9\% & 173.2\% & 123.8\% & 109.3\% & 93.0\% \\ \cline{2-8}  & MPTCP Subflow 2 & 139.3\% & 16.8\% & 10.4\% & 36.6\% & 5.2\% & 6.8\% \\ \cline{2-8}  & MPTCP Combined & 108.7\% & 93.9\% & 91.8\% & 80.2\% & 57.3\% & 49.9\% \\ \hline \hline \end{tabular}
\end{table} 
Table 5: Share of 24 Mbps bandwidth attained at Switch One-Shared Paths. In this paper, we focus on some of the existing passive methods for the following reasons. First, probing the network with traffic can cause unnecessary congestion and impact the overall protocol performance.