For the application scenario in question, let's assume A represents common devices such as smartphones or computers, B and C are Ubuntu 20.04 servers, and D serves as the server backend or the source server. Currently, B functions as a gateway router for A. There are multiple channels between B and C, such as tun1, tun2, and tun3. The question is whether it is possible to deploy MPTCP between B and C to accelerate A's access to D.
The primary objective is to solve the issue where the bandwidth of each of the tunnels like tun1 between B and C is only 10M, with tun2 and tun3 each also at 10M. However, if my smartphone or computer needs a bandwidth of 30M to access resources from D, can MPTCP be implemented between B and C to merge these into a single TCP flow? This would effectively give me a real bandwidth of 30M. Then, when A’s request passes through B and reaches C, C would perform NAT to access D normally. When D sends resources back to C, C could split the response through one TCP connection into multiple MPTCP subflows back to B. Subsequently, B reassembles and sends it back to A via a regular TCP connection. The question is whether it is feasible to achieve this kind of bandwidth aggregation.
For the application scenario in question, let's assume A represents common devices such as smartphones or computers, B and C are Ubuntu 20.04 servers, and D serves as the server backend or the source server. Currently, B functions as a gateway router for A. There are multiple channels between B and C, such as tun1, tun2, and tun3. The question is whether it is possible to deploy MPTCP between B and C to accelerate A's access to D. The primary objective is to solve the issue where the bandwidth of each of the tunnels like tun1 between B and C is only 10M, with tun2 and tun3 each also at 10M. However, if my smartphone or computer needs a bandwidth of 30M to access resources from D, can MPTCP be implemented between B and C to merge these into a single TCP flow? This would effectively give me a real bandwidth of 30M. Then, when A’s request passes through B and reaches C, C would perform NAT to access D normally. When D sends resources back to C, C could split the response through one TCP connection into multiple MPTCP subflows back to B. Subsequently, B reassembles and sends it back to A via a regular TCP connection. The question is whether it is feasible to achieve this kind of bandwidth aggregation.