[mosh-devel] multipath mosh

Matthieu Boutier boutier at pps.univ-paris-diderot.fr
Sat Aug 1 08:53:58 EDT 2015


Hi all,

First thanks to all developers and maintainers for the 1.2.5 release.

I also have the pleasure to announce an update for my multipath version.
The main changes are:

  - link-local addresses now works well,

  - add loss ratio computation for each path, and use it to limit the
    global loss ratio,

  - simplification of the sending procedure.

The incoming loss ratio compution is based on the path sequence number
with a 64 bits sliding window, and the outgoing loss ratio is received
from the remote peer.  For this purpose, I took 8 bits of the flag field
in the network protocol.

The paths are still ordered and selected by RTT, but multiple paths can
be used to send the same packet (duplicates), to achieve a configurable
maximum loss ratio (the -m option), which defaults to 0.  If you set it
up to 10(%), and if your 3 best (RTT) paths have an estimated loss ratio
of respectively 30, 20 and 0%, then only the two firsts will be used,
having together a loss ratio estimated to 30% * 20% = 6% < 10%.

Remark that paths with a loss ratio estimated to 100% are used, except
if they are idle for too long.  This allow us to set the loss ratio to
100% on new paths: it's particularly usefull at the beginning, where all
paths are used together.  Idle flows are quickly discarded.

The source code is at:

    https://github.com/boutier/mosh

Enjoy,

Matthieu




More information about the mosh-devel mailing list