Skip to main content
Log in

mFAST: A Multipath Congestion Control Protocol for High Bandwidth-Delay Connection

  • Published:
Mobile Networks and Applications Aims and scope Submit manuscript

Abstract

Today, the smart devices are usually equipped with more than one network interfaces. A multipath congestion control protocol that exploits different paths to transmit data will improve the throughput and high-availability. Many multipath congestion control protocols have been developed in the literature. However, most of them are loss-based algorithms, hence they do not well utilize the bandwidth in high bandwidth-delay product (BDP) connections due to the conservative congestion control. From the single-path Fast TCP, we develop a multipath congestion control protocol, called mFast, for high BDP connections. MFast uses queueing delay to measure the congestion as Fast TCP does. Our framework is based on a network utility maximization model for multipath flows. The features of mFast such as load-balancing, TCP friendliness, and throughput improvement are verified via analysis and extensive simulations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  1. ITU (2017) ICT facts and figures 2017

  2. Kelly F, Voice T (2005) Stability of end-to-end algorithms for joint routing and rate control. SIGCOMM Comput Commun Rev 35:5–12

    Article  Google Scholar 

  3. Low S, Lapsley D (1999) Optimization flow control, i: basic algorithm and convergence. IEEE/ACM Trans Netw 7(6):861–874

    Article  Google Scholar 

  4. Low S (2003) A duality model of tcp and queue management algorithms. IEEE/ACM Trans Netw 11(4):525–536

    Article  Google Scholar 

  5. Wei DX, Jin C, Low SH, Hegde S (2006) FAST TCP: motivation, architecture, algorithms, performance. IEEE/ACM Trans Network (ToN) 14(6):1246–1259

    Article  Google Scholar 

  6. Wang J, Wei DX, Choi J-Y, Steven H (2007) Low, modelling and stability of FAST TCP, wireless communications. Springer, New York, pp 331–356

    MATH  Google Scholar 

  7. Wang J, Ao T, Low SH (2004) Local stability of FAST TCP. In: Proceedings of the IEEE conference on decision and control

  8. Brakmo LS, Peterson LL (1995) TCP Vegas: end to end congestion avoidance on a global internet. IEEE J Selected Areas Commun 13:465–1480

    Article  Google Scholar 

  9. Wischik D, Raiciu C, Greenhalgh A, Handley M (2011) Design, implementation and evaluation of congestion control for multipath TCP. In: Proceedings of the 8th USENIX conference on networked systems design and implementation, vol 11, pp 8–8

  10. Raiciu C, Handley M, Wischik D (2011) Coupled congestion control for multipath transport protocols. RFC6356

  11. Vo PL, Le TA, Lee S, Hong CS, Kim B, Song H (2014) Multi-path utility maximization and multi-path TCP design. J Parallel Distrib Comput 74(2):1848–1857

    Article  Google Scholar 

  12. Vo PL, Le TA, Lee S, Hong CS, Kim B, Song H (2014) mReno: a practical multipath congestion control for communication networks. Computing 96(3):189–205

    Article  MathSciNet  Google Scholar 

  13. Khalili R, Gast N, Popovic M, Upadhyay U, Le Boudec J-Y (2013) MPTCP is not Pareto-optimal: performance issues and a possible solution. IEEE/ACM Trans Network 21(5):1651–1665

    Article  Google Scholar 

  14. Peng Q, Walid A, Hwang JS, Low SH (2016) Multipath TCP: analysis, design, and implementation. IEEE/ACM Trans Network 24:596–609

    Article  Google Scholar 

  15. Cao Y, Xu M, Fu X, Dong E (2013) Explicit multipath congestion control for data center networks. In: Proceedings 9th ACM CoNEXT, pp 73–84

  16. Cao Y, Xu M, Fu X (2012) Delay-based congestion control for multipath TCP. In: Proceedings of 20th IEEE international conference on network protocols (ICNP), pp 1–10

  17. Le T, Haw R, Hong C, Lee S (2012) A multipath cubic TCP congestion control with multipath fast recovery over high bandwidth delay networks. IEICE Trans Comm, 2232–2244

  18. Ha B, Tran B, Le T, Tran C (2014) Multipath FAST TCP for large bandwidth-delay product networks. In: Proceedings of International conference on green and human information technology (ICGHIT)

  19. Horn RA, Johnson CR (2012) Matrix analysis. Cambridge University Press

  20. Boyd S, Vandenberghe L (2004) Convex optimization. Cambridge University Press

  21. NS-2 network simulator. [Online]. Available: http://www.isi.edu/nsnam/ns/

Download references

Acknowledgments

This research is funded by the Vietnamese National Foundation for Science and Technology Development (NAFOSTED) under grant number 102.02-2013.48.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tuan-Anh Le.

Appendix A

Appendix A

1.1 Proof of theorem 2

In this proof, we indicate a subflow by indexing \(r \in \mathcal F\) for convenience of representation.

Let wr(t) = wr(t) − wr. Linearize at the equilibrium point of the dynamic system (12)–(13) yields

$$ \partial \dot{w}_{r} = J \partial w_{r}(t), $$
(22)

where J is the Jacobian matrix. In general, if the eigenvalues of the Jacobian matrix have negative real parts, then the dynamic system is locally stable at the the equilibrium point.

Let’s denote the following matrices \(A=\text {diag}\left (\frac {1}{d_{i} + q_{i}}\right )_{i \in \mathcal F}\), \(B=\text {diag}(x_{i})_{i \in \mathcal F} = \text {diag}\left (\frac {w_{i}}{d_{i}+q_{i}}\right )_{i \in \mathcal F}\), and \(C=\text {diag}\left (\frac {w_{i}}{(d_{i}+q_{i})^{2}}\right )_{i \in \mathcal F}\). We have C = AB. Let’s denote H be the Hessian matrix of U(x). H is a negative definite matrix since U(x) is strictly concave.

At the equilibrium point, we have

$$ \frac{\partial \dot{w}_{i}}{\partial w_{k}} = \gamma x_{i} \left( \sum\limits_{j \in \mathcal F} H_{ij}\frac{\partial x_{j}}{\partial w_{k}} - \frac{\partial q_{i}}{\partial w_{k}}\right), \forall i, k \in \mathcal F, $$
(23)

in which

$$\begin{array}{@{}rcl@{}} \frac{\partial x_{i}}{\partial w_{i}} & =& \frac{1}{d_{i} + q_{i}} - \frac{w_{i}}{(d_{i} + q_{i})^{2}} \frac{\partial q_{i}}{\partial w_{i}}, \forall i \in \mathcal F, \\ \frac{\partial x_{i}}{\partial w_{k}} & =& -\frac{w_{i}}{(d_{i} + q_{i})^{2}} \frac{\partial q_{i}}{\partial w_{k}} \forall i, k \in \mathcal F, i \neq k. \end{array} $$
(24)

Hence,

$$ J = \gamma B\left( H\left( A-B\frac{\partial \boldsymbol q}{\partial \boldsymbol w}\right) - \frac{\partial \boldsymbol{q}}{\partial \boldsymbol{w}}\right). $$
(25)

By a similar transformation as in [7], we have

$$ \frac{\partial \boldsymbol q}{\partial \boldsymbol w} = R^{T}(RCR^{T})^{-1}RA. $$
(26)

Therefore,

$$ J = \gamma B(H-(HC+I)R^{T}(RCR^{T})^{-1}R)A. $$
(27)

Formula (27) implies

$$\begin{array}{@{}rcl@{}} && \frac{1}{\gamma}B^{-1}JA^{-1}CR^{T} \\ && \qquad = HCR^{T}-(HC+I)R^{T}(RCR^{T})^{-1}RCR^{T} \\ && \qquad = HCR^{T}-(HC+I)R^{T} = -R^{T} \end{array} $$
(28)

Since C = AB, we obtain

$$ (J+\gamma I)BR^{T} = 0. $$
(29)

If the rank of R equals to the number of subflow (full-column rank), then the matrix BRT has |F| independent vectors. They are also the eigenvectors of J + γI. Hence, all the eigenvalues of J equals to − γ, which implies that the dynamic system is locally asymptotically stable.

1.2 Proof of theorem 3

In the proof, we will use the following lemmas:

Lemma 1

[19, p.53] X and X are two square matrices. Eigenvalues of YX are same as XY.

Lemma 2

[19, p.465] X is a positive definite matrix, Y is a symmetric matrix. XY is a diagonalizable matrix whose eigenvalues are real. Moreover, the matrix XY has the same number of positive, negative, and zero eigenvalues as Y.

Let’s consider the matrix

$$ J_{1} = (H-(HC+I)R^{T}(RCR^{T})^{-1}R)C. $$
(30)

From Lemma 1, γJ1 and J have the same set of eigenvalues (C = AB). Therefore, we need to prove the real parts of all the eigenvalues of J1 are negative (0 < γ < 1), or in other words, given J1λI singular, we need to prove λ has a negative real part.

The Woodbury’s formula is stated as follows: if X, Y, X− 1 + V Y − 1U are non-singular, then

$$ (X+UYV)^{-1} = X^{-1} - X^{-1}U(Y^{-1}+VX^{-1}U)^{-1}VX^{-1}. $$
(31)

Let’s denote X = HCλI, Y = (RCRT)− 1, U = −(HC + I)RT, and V = RC. We have J1λI = X + UY V. Hence, X or Y − 1 + V X− 1U must be singular, otherwise, X + UY V is non-singular.

  1. 1)

    If X = HCλI is a singular matrix, then λ is one of the eigenvalues of HC. Lemma 2 implies that λ is real and negative.

  2. 2)

    If HCλI is non-singular, then X− 1 + V Y − 1U must be a singular matrix.

    $$\begin{array}{@{}rcl@{}} && X^{-1}+VY^{-1}U \\ && \qquad = RCR^{T} - RC(HC-\lambda I)^{-1}(HC+I)R^{T} \\ && \qquad = R(C - C(HC-\lambda I)^{-1}(HC+I))R^{T} \\ && \qquad = R(C - CX^{-1}(X +(\lambda + 1)I)R^{T}) \\ && \qquad = (\lambda + 1)R(CX^{-1})R^{T} \\ && \qquad = (\lambda + 1)R(H - \lambda C^{-1})^{-1}R^{T}. \end{array} $$

If λ = − 1, then λ is real and negative. Otherwise, R(HλC− 1)− 1RT must be singular.

HλC− 1 is a block diagonal matrix in which each block corresponds to a flow. We analyze a specific block associated with multipath flow s. Assuming that s has N subflows with subflow rates xs,1,…,xs,N. \(x_{s} = {\sum }_{n = 1}^{N} x_{s,n}\). Let’s denote \(\theta _{s,k} = \frac {x_{s,k}}{x_{s}}\) and \(g_{s,k} = \frac {(1-\epsilon )\alpha _{s}\theta ^{2}_{s,k}}{\epsilon \alpha _{s} + \lambda w_{s,k}}\), for all ks.

$$\begin{array}{@{}rcl@{}} &&H_{s} - \lambda C_{s}^{-1} = \\ &&\left[\begin{array}{cccc} \!-\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} -\frac{\epsilon\alpha_{s}}{x_{s,1}^{2}} & -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} & {\ldots} & -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} \\ -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} & \!\!-\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} -\frac{\epsilon\alpha_{s}}{x_{s,2}^{2}} & {\ldots} & -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} \\ {\ldots} &{\ldots} &{\ldots} &{\ldots} \\ -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} & -\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} & {\ldots} & \!-\frac{(1-\epsilon)\alpha_{s}}{{x_{s}^{2}}} - \frac{\epsilon\alpha_{s}}{x_{s,N}^{2}} \end{array}\right] \\ &&= -\frac{(1-\epsilon)\alpha_{s}}{{x^{2}_{s}}} \left( \text{diag}\left( \frac{1}{g_{s,k}}\right)_{k \in s} + \mathbf{1}\mathbf{1}^{T}\right) \\ &&= -\frac{(1-\epsilon)\alpha_{s}}{{x^{2}_{s}}} (G_{s} + \mathbf{1}\mathbf{1}^{T}), \end{array} $$
(32)

where 1 is an all-ones column vector, and \(G_{s} = \text {diag}\left (\frac {1}{g_{s,k}}\right )_{k \in s}\).

From Sherman-Morrison’s formula,

$$\begin{array}{@{}rcl@{}} (H_{s} - \lambda C_{s}^{-1})^{-1} & \! = & -\frac{{x^{2}_{s}}}{(1 - \epsilon)\alpha_{s}}\left( G_{s} + \mathbf{1}\mathbf{1}^{T}\right)^{-1} \\ &\! = & -\frac{{x^{2}_{s}}}{(1 - \epsilon)\alpha_{s}}\left( G_{s}^{-1} - \frac{G_{s}^{-1}\mathbf{1}\mathbf{1}^{T} G_{s}^{-1}}{1 + \mathbf{1}^{T} G_{s}^{-1}\mathbf{1}}\right). \end{array} $$
(33)

In the special case in which there is a multipath flow f1 and a single-path flow f2 on a bottleneck link (Fig. 2), the routing matrix R becomes an all-ones row vector and R(HλC− 1)− 1RT is a scalar number. Moreover, x1 = Nx1,k and w1,k = w1,1 for all kf1. We obtain

$$\begin{array}{@{}rcl@{}} && R(H - \lambda C^{-1})^{-1}R^{T} = \\ && \quad - \frac{{x^{2}_{1}}}{(1-\epsilon)\alpha_{1}}\frac{{\sum}_{k \in f_{1}} g_{1,k}}{1 + {\sum}_{k \in f_{1}} g_{1,k}} - \frac{{x^{2}_{2}}}{(1-\epsilon)\alpha_{2}}\frac{g_{2}}{1 + g_{2}}, \end{array} $$

where \(g_{2} = \frac {(1-\epsilon )\alpha _{2}}{\epsilon \alpha _{2} + \lambda w_{2}}\). Solving the equation R(HλC− 1)− 1RT = 0 for λ yields

$$ \lambda = -\frac{ \frac{(1+(N-1)\epsilon) \alpha_{1}}{{x_{1}^{2}}} + \frac{\alpha_{2}}{{x_{2}^{2}}}}{N\frac{w_{1,1}}{{x_{1}^{2}}} + \frac{w_{2}}{{x_{2}^{2}}}}. $$
(34)

We have λ < 0, hence, the dynamic system of one-bottleneck link is locally stable at the equilibrium point.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Vo, P.L., Le, TA. & Tran, N.H. mFAST: A Multipath Congestion Control Protocol for High Bandwidth-Delay Connection. Mobile Netw Appl 24, 115–123 (2019). https://doi.org/10.1007/s11036-018-1143-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11036-018-1143-7

Keywords

Navigation