mptcp.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Matthieu Baerts <matthieu.baerts@tessares.net>
To: David Candal Ventureira <dcandal@gti.uvigo.es>
Cc: mptcp-dev@listes.uclouvain.be, MPTCP Upstream <mptcp@lists.linux.dev>
Subject: Re: [mptcp-dev] MPTCPv1 test using multiple interfaces
Date: Tue, 8 Jun 2021 10:58:48 +0200	[thread overview]
Message-ID: <50bb1b1b-5bfb-34d5-e54f-ba41ac55e2fd@tessares.net> (raw)
In-Reply-To: <CAEE33hBe_uiaB3nmjwaZQq7eKfY19z2R02fe2aj6at8wwTXKCw@mail.gmail.com>

Hi David,

+cc MPTCP Upstream ML

On 08/06/2021 10:14, David Candal Ventureira wrote:
> I'm interested in testing MPTCP for research purposes. I would like to
> build a simple set up with two computers exchanging traffic through two
> interfaces simultaneously.
> 
> For this, I deployed two virtual machines running Ubuntu 20.04
> 5.8.0-53-generic, as this kernel seems to support MPTCPv1 by default. In
> fact, I was able to exchange a file between the two VMs through MPTCP by
> using the code in tools/testing/selftests/net/mptcp. However, with this
> setup only one interface is used to transmit the traffic.

There are currently 2 different Linux kernel implementations: a fork
(out-of-tree) and a (in progress) rewrite version now in the mainline
Linux kernel:


https://github.com/multipath-tcp/mptcp_net-next/wiki#upstream-vs-out-of-tree-implementations

mptcp-dev ML is dedicated to the out-of-tree kernel.


> After seen Multipath TCP part 3: Multiple subflows and path management
> (https://lwn.net/Articles/816144/),
> I suppose that multipath support is not available yet in current kernels
> and I should compile the kernel
> in https://github.com/multipath-tcp/mptcp_net-next
> so that I could make use of this capability. Am I right?

With the 5.8 kernel, you can create multiple subflows but use each of
them one at a time. You might at least use the 5.12.

If you are interested by MPTCP, probably best to build the latest
version from Git. As an alternative, you can also find already built
packages for your distribution, e.g.

  https://kernel.ubuntu.com/~kernel-ppa/mainline/

> On the other hand, is there any tutorial regarding how to configure
> multipath? Is it possible to configure in any way how the traffic is
> distributed among the interfaces, instead of evenly distributing it
> through them, either in a dynamic or static way?

The out-of-tree implementation is still more flexible so far and
documented on:

  https://multipath-tcp.org/

But because the development is much more active on the upstream version,
it also makes sense to look at it, report issues, ideas and patches ;)

Regarding the configuration, the path manager can be controlled with a
recent version of IPRoute and its 'ip mptcp' command:

  https://man7.org/linux/man-pages/man8/ip-mptcp.8.html

But any tutorial would be really welcome!

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net

           reply	other threads:[~2021-06-08  8:58 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <CAEE33hBe_uiaB3nmjwaZQq7eKfY19z2R02fe2aj6at8wwTXKCw@mail.gmail.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50bb1b1b-5bfb-34d5-e54f-ba41ac55e2fd@tessares.net \
    --to=matthieu.baerts@tessares.net \
    --cc=dcandal@gti.uvigo.es \
    --cc=mptcp-dev@listes.uclouvain.be \
    --cc=mptcp@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).