
From nobody Wed Oct  4 00:53:18 2017
Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C2B2C13295C for <multipathtcp@ietfa.amsl.com>; Wed,  4 Oct 2017 00:53:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.399
X-Spam-Level: 
X-Spam-Status: No, score=-1.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KSXCnzBDQ2um for <multipathtcp@ietfa.amsl.com>; Wed,  4 Oct 2017 00:53:14 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [IPv6:2001:200:0:8803::53]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4342713202D for <multipathtcp@ietf.org>; Wed,  4 Oct 2017 00:53:13 -0700 (PDT)
Received: from mail-qt0-f175.google.com (mail-qt0-f175.google.com [209.85.216.175]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 800E727874E for <multipathtcp@ietf.org>; Wed,  4 Oct 2017 16:53:11 +0900 (JST)
Received: by mail-qt0-f175.google.com with SMTP id 34so461762qtb.13 for <multipathtcp@ietf.org>; Wed, 04 Oct 2017 00:53:11 -0700 (PDT)
X-Gm-Message-State: AMCzsaWxPHjJnHAkkDpKHCqjOauFJvIl5NYEB/0wUrqvdjc/Xzng9Zrb fN8S26kuEtSct2tE8s4+Vlcj2qPTgcK+NwfGUcw=
X-Google-Smtp-Source: AOwi7QCm/TooF/uJzviingkJnbYIl8L26y6KJ4P50VlOVwd/ip2/tQvBIKA6kiFFJtET9qenJ8Wtv2+2gsyo1H4t5oc=
X-Received: by 10.37.179.9 with SMTP id l9mr3362289ybj.434.1507103590156; Wed, 04 Oct 2017 00:53:10 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.37.185.9 with HTTP; Wed, 4 Oct 2017 00:53:09 -0700 (PDT)
In-Reply-To: <272695de663e4adca1930203b32f44e7@HE105686.emea1.cds.t-internal.com>
References: <64f1b27aee214f6b99b5c474158d7426@HE105686.emea1.cds.t-internal.com> <e51005d7-23dd-d10e-9c8f-27ef155461b1@uclouvain.be> <79ac6cb307784db3a6d8ae1550a49573@HE105686.emea1.cds.t-internal.com> <272695de663e4adca1930203b32f44e7@HE105686.emea1.cds.t-internal.com>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Wed, 4 Oct 2017 00:53:09 -0700
X-Gmail-Original-Message-ID: <CAO249yc4P9-NsHvwxAUBEQprtOXRTh5jChpOcZ=37hzMKj+h8Q@mail.gmail.com>
Message-ID: <CAO249yc4P9-NsHvwxAUBEQprtOXRTh5jChpOcZ=37hzMKj+h8Q@mail.gmail.com>
To: Markus.Amend@telekom.de
Cc: multipathtcp <multipathtcp@ietf.org>
Content-Type: multipart/alternative; boundary="f403045f2b0821910d055ab3e6c7"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/D5kDSKn8stg66lk5oxhPhPwDxA0>
Subject: Re: [multipathtcp] A proposal for MPTCP Robust session Establishment (MPTCP RobE)
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 04 Oct 2017 07:53:17 -0000

--f403045f2b0821910d055ab3e6c7
Content-Type: text/plain; charset="UTF-8"

Hi Markus,

I still need to think about it a bit more, but here's my current thoughts..
Sorry for slow response.

1: I am guessing we cannot use this approach with TFO yet. But, if TFO
cannot be used, it might affect the latency of some apps.

2: Although I am not sure as I'm not an implementor, but I feel it could be
a bit tricky to implement MP_JOIN_CAP as servers cannot be sure if this
subflow becomes primary or secondary until several packets are exchanged.
(also, I'm not sure how to merge connections when TFO is used.)

3: I guess we'll need another step after SA6.2 to verify the response from
host B.
    Also, MP_JOIN_CAP will require extra RTTs when the other end doesn't
support it. (because it will need to send RST and MP_JOIN to establish a
subflow)

4: I tend to prefer just sending MP_JOIN after SA6.1 for simplicity so far.
We might be able to do everything in a shim layer.

--
Yoshi

On Tue, Sep 19, 2017 at 3:00 AM, <Markus.Amend@telekom.de> wrote:

> Dear all,
>
> any comments to my proposal from two weeks ago?
>
> BR
>
> Markus
>
> > -----Original Message-----
> > From: Amend, Markus
> > Sent: Montag, 4. September 2017 14:17
> > To: multipathtcp@ietf.org
> > Subject: RE: [multipathtcp] A proposal for MPTCP Robust session
> > Establishment (MPTCP RobE)
> >
> > Dear all,
> >
> > Based on feedback at IETF99, regarding MPTCP RobE proposal
> > (https://datatracker.ietf.org/meeting/99/materials/slides-99-mptcp-a-
> > proposal-for-mptcp-robust-session-establishment-mptcp-robe), I
> completely
> > reconsider the original approach, I presented. Remember, the "Downgrade"-
> > approach (see slides) was preferred from my side, because it combines
> > robustness and a huge latency reduction.
> >
> > The main feedback I got was:
> >
> >   (1) Relying on SYN-Key-A as identifier to combine potential initial
> flows, raise
> > several issues
> >     (1.1) not available in RFC6824bis anymore
> >     (1.2) security, because
> >         (1.2.1) Key-A is transmitted many times
> >         (1.2.2) can be abused by accident/intend
> >   (2) Separate robustness and latency functionality
> >   (3) To much computing resources needed on receiver side to detect
> > duplicate Key-A
> >   (4) Do it in the application layer library (build a shim layer); not
> in the
> > MPTCP standard and/or implementation to reduce complexity
> >
> > With the following reworked proposal (based on the "Downgrade" approach,
> > see slides), I try to address all of the points above.
> >
> > With Fig. 1, the flow diagram for the new proposal is depicted. It is
> referred
> > to MPTCP version 0, but should be equivalent to probable version 1
> > (RFC6284bis), just without a SYN-MP_CAPABLE containing Key-A.
> > To reach robustness, several separate MPTCP initial flows are initiated
> at the
> > beginning, in the following denoted as "potential initial flows". In
> step SA1
> > and SA2, respectively SB3 and SB4, standard MPTCP initial flow procedure
> is
> > applied, so no change so far. With occurring SA3/SA4 the requester "Host
> A"
> > has to decide which potential initial flow will be used further as
> initial flow
> > (e.g. the first which returns) and what shall happen with the other
> potential
> > flows. Either it can break all but one (e.g. sending RST at SA6.1) OR
> recycle
> > them (step SA6.2). Thereby, it is a full client side decision to use
> robustness
> > only or benefit from latency reduction as well and can be toggled
> separately
> > by e.g. sysctl globally and/or socket option.
> > Until SA6.1, it doesn't require any MPTCP standard modification!
> >
> >               Host A                                  Host B
> >      ------------------------                       ----------
> >      Address A1    Address A2                       Address B1
> >      ----------    ----------                       ----------
> >          |             |                                |
> >          |            SYN + MP_CAPABLE(Key-A)           |
> >  (SA1)   |--------------------------------------------->|  (SB1)
> >          |             |    SYN + MP_CAPABLE(Key-A')    |
> >  (SA2)   |             |------------------------------->|  (SB2)
> >          |             |                                |
> >  (SA3)   |<---------------------------------------------|  (SB3)
> >          |          SYN/ACK + MP_CAPABLE(Key-B)         |
> >  (SA4)   |             |<-------------------------------|  (SB4)
> >          |             |   SYN/ACK + MP_CAPABLE(Key-B') |
> >          |             |                                |
> >          |        ACK + MP_CAPABLE(Key-A, Key-B)        |
> >  (SA5)   |--------------------------------------------->|  (SB5)
> >          |             |             RST                |
> >  (SA6.1) |             |------------------------------->|  (SB6.1)
> > robust   |             |                                |
> > ness     |             |                                |
> > -------------------------------------------------------------------
> > latency  |             |                                |
> > red.     |             | ACK + MP_JOIN_CAP(Key-A, HMAC) |
> >  (SA6.2) |             |------------------------------->|  (SB6.2)
> >
> >    Key-B_fast_hash = crc16(Key-B) & 0x3FF               -> (10bit)
> >    HMAC_keys =  HMAC(Key-A+Key-B+Key-B')                -> (>=96bit)
> >    HMAC =  (HMAC_keys & ~0x3FF) | Key-B_fast_hash       -> (size same as
> > HMAC_keys)
> >
> > Figure 1: Example Use of MPTCP RobE (for MPTCP version 0)
> >
> > For not wasting resources by breaking all but one and benefit in addition
> > from a huge latency reduction (see MPTCP RobE proposal, p.12,14+15,17),
> > one can make use of a new proposed MPTCP option "MP_JOIN_CAP",
> > illustrated in Fig. 2. According to Fig. 1, A1<->B1 is assumed as
> initial flow at
> > SA3 and A2<->B1 shall be recycled at SA6.2 (SA6.1 is skipped therefore).
> > Instead of sending an MP_CAPABLE in the third ACK, an MP_JOIN_CAP is
> > sent, which includes Key-A of the selected initial flow A1<->B1 and an
> HMAC,
> > coding Key-A, Key-B, Key-B' in a determined way (see Fig. 1 bottom).
> >
> >                    1                   2                   3
> >  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
> > +---------------+---------------+-------+-------+---------------+
> > |     Kind      |    Length     |Subtype|       |    ADDR_ID    |
> > +---------------+---------------+-------+-------+---------------+
> > |                    Sender's Key-A (64 bits)                   |
> > |                                                               |
> > |                                                               |
> > +---------------------------------------------------------------+
> > |                        HMAC (>=96 bits)                       |
> > |                                                               |
> > |                                                               |
> > :                                                               :
> > +---------------------------------------------------------------+
> > Figure 2: Multipath Join Capable (MP_JOIN_CAP) Option (for Third
> > MP_CAPABLE ACK)
> >
> > For the MP_CAPABLE, ADDR_ID is set to zero (like RFC6824) and for
> > MP_JOIN_CAP it is sent with.
> >
> > Which boundary conditions can happen:
> >
> > 1. Like Fig. 1, A1<->B1 is assumed as initial flow and MP_CAPABLE
> receives
> > first at Host B (SB5), A2<->B1 shall be recycled and ACK is sent with
> > MP_JOIN_CAP
> >    If MP_JOIN_CAP is received it has to iterate once (like MP_JOIN) the
> > connection list and check for Key-A availability. If a Key-A connection
> is
> > found, it is validated against HMAC value. The validation has two
> reasons,
> > firstly several Key-A can exist, because different Hosts choose same
> Key-A by
> > accident. Furthermore no one can join a connection by just
> recording/brute-
> > forcing Key-A and duplicate the request. (solves point (1) from the
> feedback)
> >
> > 2. Like 1., but MP_JOIN_CAP arrives before the MP_CAPABLE at Host B
> >
> >     2.1 draft-ietf-mptcp-rfc6824bis-09
> >         Based on Key-A, it will iterate over the connection list, but it
> will not
> > match, because Key-A from formerly selected initial flow hasn't arrived
> yet.
> > So it will continue with a fast iterate only over the connections, which
> are still
> > in establishment phase, using the 10bit Key-B_fast_hash (crc16(Key-B) &
> > 0x3FF). If it matches against a (precomputed) existing Key-B_fast_hash
> in the
> > connection list, it will validate with the HMAC(Key-A+Key-B+Key-B')
> again to
> > ensure legitimation. If successful, both, the initial flow and the
> MP_JOIN_CAP
> > flow, can be immediately established. This is true, because without the
> > knowledge of Key-B, Host A couldn't calculate the HMAC. So it is clear,
> that
> > host A had received the SYN/ACK (SB3).
> > This also mitigates the requirement of a reliable ACK (draft-ietf-mptcp-
> > rfc6824bis-09, p.15) exchange, because only one
> > MP_CAPABLE/MP_JOIN_CAP needs to reach receiver side.
> >
> >     2.2 MPTCP version 0 (RFC6824)
> >         Can match based on Key-A, like 1., same effort as for a MP_JOIN.
> >
> > 3. A2<->B1 is selected as initial flow, because according SYN/ACK returns
> > earlier at Host A.
> >     It is the same as 1. and 2., just the other way round :-)
> >
> > With these boundary conditions it has been shown, that no additional
> > computing resources are required (see feedback (3)), compared to todays
> > MPTCP, with a minimal exception of 2.1.
> >
> > With such a simple approach, and by adding an inconspicuous simple MPTCP
> > option MP_JOIN_CAP, MPTCP would be extended towards robustness and if
> > desired, latency reduction can be enabled on top, but obviously requires
> > receiver support. Negotiation is inherently given by the new MP_JOIN_CAP
> > which is either accepted or not. If not, the standard MP_JOIN process
> can be
> > applied.
> >
> > Because of such a simplicity and the massive benefit by optional latency
> > reduction, I still believe it fits best in the MPTCP layer itself and
> not in an
> > application shim layer (see feedback (4)).
> >
> > Due to the separation of robustness and latency reduction functionality,
> it
> > offers the chance to implement "robustness" in plain TCP as well. It
> could
> > look the same like in Fig. 1, (SA1)-(SA6.1), just without MP_CAPABLE
> option.
> > But be aware, it needs some kind of path management, which is already
> > present in MPTCP, but not in TCP. Furthermore I assume "robustness" is a
> > topic more related to taps working group, whereas "latency reduction" is
> > related to MPTCP obviously and depends on "robustness"!
> >
> > BR
> >
> > Markus
> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp
>

--f403045f2b0821910d055ab3e6c7
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Markus,<div><br></div><div>I still need to think about =
it a bit more, but here&#39;s my current thoughts.. Sorry for slow response=
.</div><div><br></div><div>1: I am guessing we cannot use this approach wit=
h TFO yet. But, if TFO cannot be used, it might affect the latency of some =
apps.</div><div><br></div><div>2: Although I am not sure as I&#39;m not an =
implementor, but I feel it could be a bit tricky to implement MP_JOIN_CAP a=
s servers cannot be sure if this subflow becomes primary or secondary until=
 several packets are exchanged. (also, I&#39;m not sure how to merge connec=
tions when TFO is used.)</div><div>=C2=A0</div><div>3: I guess we&#39;ll ne=
ed another step after SA6.2 to verify the response from host B.</div><div>=
=C2=A0 =C2=A0 Also, MP_JOIN_CAP will require extra RTTs when the other end =
doesn&#39;t support it. (because it will need to send RST and MP_JOIN to es=
tablish a subflow)</div><div>=C2=A0 =C2=A0</div><div>4: I tend to prefer ju=
st sending MP_JOIN after SA6.1 for simplicity so far. We might be able to d=
o everything in a shim layer.</div><div><br></div><div>--</div><div>Yoshi</=
div><div>=C2=A0<div class=3D"gmail_extra"><div class=3D"gmail_quote">On Tue=
, Sep 19, 2017 at 3:00 AM,  <span dir=3D"ltr">&lt;<a href=3D"mailto:Markus.=
Amend@telekom.de" target=3D"_blank">Markus.Amend@telekom.de</a>&gt;</span> =
wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8=
ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear all,<br>
<br>
any comments to my proposal from two weeks ago?<br>
<br>
BR<br>
<br>
Markus<br>
<span class=3D"gmail-m_-1131101779764598360m_5431547675716661155m_443611077=
5673772281m_-4872592706109679169m_3461884454097646065gmail-im gmail-m_-1131=
101779764598360m_5431547675716661155m_4436110775673772281m_-487259270610967=
9169m_3461884454097646065gmail-HOEnZb"><br>
&gt; -----Original Message-----<br>
&gt; From: Amend, Markus<br>
&gt; Sent: Montag, 4. September 2017 14:17<br>
&gt; To: <a href=3D"mailto:multipathtcp@ietf.org" target=3D"_blank">multipa=
thtcp@ietf.org</a><br>
&gt; Subject: RE: [multipathtcp] A proposal for MPTCP Robust session<br>
&gt; Establishment (MPTCP RobE)<br>
&gt;<br>
</span><div class=3D"gmail-m_-1131101779764598360m_5431547675716661155m_443=
6110775673772281m_-4872592706109679169m_3461884454097646065gmail-HOEnZb"><d=
iv class=3D"gmail-m_-1131101779764598360m_5431547675716661155m_443611077567=
3772281m_-4872592706109679169m_3461884454097646065gmail-h5">&gt; Dear all,<=
br>
&gt;<br>
&gt; Based on feedback at IETF99, regarding MPTCP RobE proposal<br>
&gt; (<a href=3D"https://datatracker.ietf.org/meeting/99/materials/slides-9=
9-mptcp-a-" rel=3D"noreferrer" target=3D"_blank">https://datatracker.ietf.o=
rg/<wbr>meeting/99/materials/slides-99<wbr>-mptcp-a-</a><br>
&gt; proposal-for-mptcp-robust-sess<wbr>ion-establishment-mptcp-robe), I co=
mpletely<br>
&gt; reconsider the original approach, I presented. Remember, the &quot;Dow=
ngrade&quot;-<br>
&gt; approach (see slides) was preferred from my side, because it combines<=
br>
&gt; robustness and a huge latency reduction.<br>
&gt;<br>
&gt; The main feedback I got was:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0(1) Relying on SYN-Key-A as identifier to combine potentia=
l initial flows, raise<br>
&gt; several issues<br>
&gt;=C2=A0 =C2=A0 =C2=A0(1.1) not available in RFC6824bis anymore<br>
&gt;=C2=A0 =C2=A0 =C2=A0(1.2) security, because<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(1.2.1) Key-A is transmitted many tim=
es<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(1.2.2) can be abused by accident/int=
end<br>
&gt;=C2=A0 =C2=A0(2) Separate robustness and latency functionality<br>
&gt;=C2=A0 =C2=A0(3) To much computing resources needed on receiver side to=
 detect<br>
&gt; duplicate Key-A<br>
&gt;=C2=A0 =C2=A0(4) Do it in the application layer library (build a shim l=
ayer); not in the<br>
&gt; MPTCP standard and/or implementation to reduce complexity<br>
&gt;<br>
&gt; With the following reworked proposal (based on the &quot;Downgrade&quo=
t; approach,<br>
&gt; see slides), I try to address all of the points above.<br>
&gt;<br>
&gt; With Fig. 1, the flow diagram for the new proposal is depicted. It is =
referred<br>
&gt; to MPTCP version 0, but should be equivalent to probable version 1<br>
&gt; (RFC6284bis), just without a SYN-MP_CAPABLE containing Key-A.<br>
&gt; To reach robustness, several separate MPTCP initial flows are initiate=
d at the<br>
&gt; beginning, in the following denoted as &quot;potential initial flows&q=
uot;. In step SA1<br>
&gt; and SA2, respectively SB3 and SB4, standard MPTCP initial flow procedu=
re is<br>
&gt; applied, so no change so far. With occurring SA3/SA4 the requester &qu=
ot;Host A&quot;<br>
&gt; has to decide which potential initial flow will be used further as ini=
tial flow<br>
&gt; (e.g. the first which returns) and what shall happen with the other po=
tential<br>
&gt; flows. Either it can break all but one (e.g. sending RST at SA6.1) OR =
recycle<br>
&gt; them (step SA6.2). Thereby, it is a full client side decision to use r=
obustness<br>
&gt; only or benefit from latency reduction as well and can be toggled sepa=
rately<br>
&gt; by e.g. sysctl globally and/or socket option.<br>
&gt; Until SA6.1, it doesn&#39;t require any MPTCP standard modification!<b=
r>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Host A=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Host B<br>
&gt;=C2=A0 =C2=A0 =C2=A0 ------------------------=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0----------<br>
&gt;=C2=A0 =C2=A0 =C2=A0 Address A1=C2=A0 =C2=A0 Address A2=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Addres=
s B1<br>
&gt;=C2=A0 =C2=A0 =C2=A0 ----------=C2=A0 =C2=A0 ----------=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0------=
----<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 SYN + MP_CAPABLE(Key-A)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|<br=
>
&gt;=C2=A0 (SA1)=C2=A0 =C2=A0|----------------------------<wbr>------------=
-----&gt;|=C2=A0 (SB1)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0 SYN + MP_CAPABLE(Key-A&#39;)=C2=A0 =C2=A0 |<br>
&gt;=C2=A0 (SA2)=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0|----------------------------<wbr>---&gt;|=C2=A0 (SB2)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt;=C2=A0 (SA3)=C2=A0 =C2=A0|&lt;---------------------------<wbr>---------=
---------|=C2=A0 (SB3)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
SYN/ACK + MP_CAPABLE(Key-B)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|<br>
&gt;=C2=A0 (SA4)=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0|&lt;---------------------------<wbr>----|=C2=A0 (SB4)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0SYN/ACK + MP_CAPABLE(Key-B&#39;) |<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 ACK + M=
P_CAPABLE(Key-A, Key-B)=C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt;=C2=A0 (SA5)=C2=A0 =C2=A0|----------------------------<wbr>------------=
-----&gt;|=C2=A0 (SB5)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0RST=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt;=C2=A0 (SA6.1) |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|------=
----------------------<wbr>---&gt;|=C2=A0 (SB6.1)<br>
&gt; robust=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt; ness=C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt; ------------------------------<wbr>------------------------------<wbr>=
-------<br>
&gt; latency=C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>
&gt; red.=C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0| ACK + MP_JOIN_CAP(Key-A, HMAC) |<br>
&gt;=C2=A0 (SA6.2) |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|------=
----------------------<wbr>---&gt;|=C2=A0 (SB6.2)<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 Key-B_fast_hash =3D crc16(Key-B) &amp; 0x3FF=C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-&gt; (10bit)<br>
&gt;=C2=A0 =C2=A0 HMAC_keys =3D=C2=A0 HMAC(Key-A+Key-B+Key-B&#39;)=C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -&gt; (&gt;=3D96bit)<br>
&gt;=C2=A0 =C2=A0 HMAC =3D=C2=A0 (HMAC_keys &amp; ~0x3FF) | Key-B_fast_hash=
=C2=A0 =C2=A0 =C2=A0 =C2=A0-&gt; (size same as<br>
&gt; HMAC_keys)<br>
&gt;<br>
&gt; Figure 1: Example Use of MPTCP RobE (for MPTCP version 0)<br>
&gt;<br>
&gt; For not wasting resources by breaking all but one and benefit in addit=
ion<br>
&gt; from a huge latency reduction (see MPTCP RobE proposal, p.12,14+15,17)=
,<br>
&gt; one can make use of a new proposed MPTCP option &quot;MP_JOIN_CAP&quot=
;,<br>
&gt; illustrated in Fig. 2. According to Fig. 1, A1&lt;-&gt;B1 is assumed a=
s initial flow at<br>
&gt; SA3 and A2&lt;-&gt;B1 shall be recycled at SA6.2 (SA6.1 is skipped the=
refore).<br>
&gt; Instead of sending an MP_CAPABLE in the third ACK, an MP_JOIN_CAP is<b=
r>
&gt; sent, which includes Key-A of the selected initial flow A1&lt;-&gt;B1 =
and an HMAC,<br>
&gt; coding Key-A, Key-B, Key-B&#39; in a determined way (see Fig. 1 bottom=
).<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A02=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A03<br>
&gt;=C2=A0 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1<=
br>
&gt; +---------------+-------------<wbr>--+-------+-------+-----------<wbr>=
----+<br>
&gt; |=C2=A0 =C2=A0 =C2=A0Kind=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 Length=C2=
=A0 =C2=A0 =C2=A0|Subtype|=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2=A0 ADDR_ID=
=C2=A0 =C2=A0 |<br>
&gt; +---------------+-------------<wbr>--+-------+-------+-----------<wbr>=
----+<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 Sender&#39;s Key-A (64 bits)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0|<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|<br>
&gt; +-----------------------------<wbr>------------------------------<wbr>=
----+<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 HMAC (&gt;=3D96 bits)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|<br>
&gt; |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|<br>
&gt; :=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0:<br>
&gt; +-----------------------------<wbr>------------------------------<wbr>=
----+<br>
&gt; Figure 2: Multipath Join Capable (MP_JOIN_CAP) Option (for Third<br>
&gt; MP_CAPABLE ACK)<br>
&gt;<br>
&gt; For the MP_CAPABLE, ADDR_ID is set to zero (like RFC6824) and for<br>
&gt; MP_JOIN_CAP it is sent with.<br>
&gt;<br>
&gt; Which boundary conditions can happen:<br>
&gt;<br>
&gt; 1. Like Fig. 1, A1&lt;-&gt;B1 is assumed as initial flow and MP_CAPABL=
E receives<br>
&gt; first at Host B (SB5), A2&lt;-&gt;B1 shall be recycled and ACK is sent=
 with<br>
&gt; MP_JOIN_CAP<br>
&gt;=C2=A0 =C2=A0 If MP_JOIN_CAP is received it has to iterate once (like M=
P_JOIN) the<br>
&gt; connection list and check for Key-A availability. If a Key-A connectio=
n is<br>
&gt; found, it is validated against HMAC value. The validation has two reas=
ons,<br>
&gt; firstly several Key-A can exist, because different Hosts choose same K=
ey-A by<br>
&gt; accident. Furthermore no one can join a connection by just recording/b=
rute-<br>
&gt; forcing Key-A and duplicate the request. (solves point (1) from the fe=
edback)<br>
&gt;<br>
&gt; 2. Like 1., but MP_JOIN_CAP arrives before the MP_CAPABLE at Host B<br=
>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A02.1 draft-ietf-mptcp-rfc6824bis-09<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Based on Key-A, it will iterate over =
the connection list, but it will not<br>
&gt; match, because Key-A from formerly selected initial flow hasn&#39;t ar=
rived yet.<br>
&gt; So it will continue with a fast iterate only over the connections, whi=
ch are still<br>
&gt; in establishment phase, using the 10bit Key-B_fast_hash (crc16(Key-B) =
&amp;<br>
&gt; 0x3FF). If it matches against a (precomputed) existing Key-B_fast_hash=
 in the<br>
&gt; connection list, it will validate with the HMAC(Key-A+Key-B+Key-B&#39;=
) again to<br>
&gt; ensure legitimation. If successful, both, the initial flow and the MP_=
JOIN_CAP<br>
&gt; flow, can be immediately established. This is true, because without th=
e<br>
&gt; knowledge of Key-B, Host A couldn&#39;t calculate the HMAC. So it is c=
lear, that<br>
&gt; host A had received the SYN/ACK (SB3).<br>
&gt; This also mitigates the requirement of a reliable ACK (draft-ietf-mptc=
p-<br>
&gt; rfc6824bis-09, p.15) exchange, because only one<br>
&gt; MP_CAPABLE/MP_JOIN_CAP needs to reach receiver side.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A02.2 MPTCP version 0 (RFC6824)<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Can match based on Key-A, like 1., sa=
me effort as for a MP_JOIN.<br>
&gt;<br>
&gt; 3. A2&lt;-&gt;B1 is selected as initial flow, because according SYN/AC=
K returns<br>
&gt; earlier at Host A.<br>
&gt;=C2=A0 =C2=A0 =C2=A0It is the same as 1. and 2., just the other way rou=
nd :-)<br>
&gt;<br>
&gt; With these boundary conditions it has been shown, that no additional<b=
r>
&gt; computing resources are required (see feedback (3)), compared to today=
s<br>
&gt; MPTCP, with a minimal exception of 2.1.<br>
&gt;<br>
&gt; With such a simple approach, and by adding an inconspicuous simple MPT=
CP<br>
&gt; option MP_JOIN_CAP, MPTCP would be extended towards robustness and if<=
br>
&gt; desired, latency reduction can be enabled on top, but obviously requir=
es<br>
&gt; receiver support. Negotiation is inherently given by the new MP_JOIN_C=
AP<br>
&gt; which is either accepted or not. If not, the standard MP_JOIN process =
can be<br>
&gt; applied.<br>
&gt;<br>
&gt; Because of such a simplicity and the massive benefit by optional laten=
cy<br>
&gt; reduction, I still believe it fits best in the MPTCP layer itself and =
not in an<br>
&gt; application shim layer (see feedback (4)).<br>
&gt;<br>
&gt; Due to the separation of robustness and latency reduction functionalit=
y, it<br>
&gt; offers the chance to implement &quot;robustness&quot; in plain TCP as =
well. It could<br>
&gt; look the same like in Fig. 1, (SA1)-(SA6.1), just without MP_CAPABLE o=
ption.<br>
&gt; But be aware, it needs some kind of path management, which is already<=
br>
&gt; present in MPTCP, but not in TCP. Furthermore I assume &quot;robustnes=
s&quot; is a<br>
&gt; topic more related to taps working group, whereas &quot;latency reduct=
ion&quot; is<br>
&gt; related to MPTCP obviously and depends on &quot;robustness&quot;!<br>
&gt;<br>
&gt; BR<br>
&gt;<br>
&gt; Markus<br>
</div></div><div class=3D"gmail-m_-1131101779764598360m_5431547675716661155=
m_4436110775673772281m_-4872592706109679169m_3461884454097646065gmail-HOEnZ=
b"><div class=3D"gmail-m_-1131101779764598360m_5431547675716661155m_4436110=
775673772281m_-4872592706109679169m_3461884454097646065gmail-h5">__________=
____________________<wbr>_________________<br>
multipathtcp mailing list<br>
<a href=3D"mailto:multipathtcp@ietf.org" target=3D"_blank">multipathtcp@iet=
f.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/multipathtcp" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/l<wbr>istinfo/multipa=
thtcp</a><br>
</div></div></blockquote></div><br></div></div></div>

--f403045f2b0821910d055ab3e6c7--


From nobody Mon Oct 16 13:11:59 2017
Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C1711132F8F for <multipathtcp@ietfa.amsl.com>; Mon, 16 Oct 2017 13:11:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.5
X-Spam-Level: 
X-Spam-Status: No, score=0.5 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, HTML_MESSAGE=0.001, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Wb7hdH-Nx-qt for <multipathtcp@ietfa.amsl.com>; Mon, 16 Oct 2017 13:11:56 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [IPv6:2001:200:0:8803::53]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 29034124B18 for <multipathtcp@ietf.org>; Mon, 16 Oct 2017 13:11:55 -0700 (PDT)
Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 22DD427834E for <multipathtcp@ietf.org>; Tue, 17 Oct 2017 05:11:53 +0900 (JST)
Received: by mail-wm0-f41.google.com with SMTP id q124so6297793wmb.0 for <multipathtcp@ietf.org>; Mon, 16 Oct 2017 13:11:53 -0700 (PDT)
X-Gm-Message-State: AMCzsaUiaLeLWDE1KsVJWzp8SYATkfe+mmYyVBlasyX2vIu843i3fb7Y s3c/iT2GAlnhvprptY1WvSTM9ZBH1n8Fgm9qiZk=
X-Google-Smtp-Source: ABhQp+Qpncns5+qEPB1iSiLSKJJ8svnk4OHbGlv2FfxqHWT08BWoutdeRiAhwgkLc1VbptIF0q6KffBgH9FgqHg12jw=
X-Received: by 10.28.105.76 with SMTP id e73mr1923402wmc.116.1508184711191; Mon, 16 Oct 2017 13:11:51 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.171.232 with HTTP; Mon, 16 Oct 2017 13:11:50 -0700 (PDT)
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Mon, 16 Oct 2017 13:11:50 -0700
X-Gmail-Original-Message-ID: <CAO249yd6ab1s2__b638D8=7L0S71LdWuuuZp_XAHhB11YCR=bQ@mail.gmail.com>
Message-ID: <CAO249yd6ab1s2__b638D8=7L0S71LdWuuuZp_XAHhB11YCR=bQ@mail.gmail.com>
To: multipathtcp <multipathtcp@ietf.org>
Content-Type: multipart/alternative; boundary="001a1147c4eaf76410055baf9df8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/1PELSCjL4Y6sf9N2mh9JHufNJDg>
Subject: [multipathtcp] Agenda for mptcp meeting at IETF 100
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 16 Oct 2017 20:11:58 -0000

--001a1147c4eaf76410055baf9df8
Content-Type: text/plain; charset="UTF-8"

Hello,
According to the current preliminary agenda (
https://datatracker.ietf.org/meeting/100/agenda.html), we will have a
2-hour meeting slot on 11/14 Tuesday afternoon (15:50 -17:50). (Please note
this might be changed as it's still preliminary)

If you're planning to present something, please provide us the following
info.

   1: presenter's name
   2: title
   3: length of the presentation

Thanks,
--
Yoshi & Phil

--001a1147c4eaf76410055baf9df8
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><span style=3D"font-size:12.8px">Hello,</span><br style=3D=
"font-size:12.8px"><span style=3D"font-size:12.8px">According to the curren=
t preliminary=C2=A0</span><span class=3D"gmail-il" style=3D"font-size:12.8p=
x">agenda</span><span style=3D"font-size:12.8px">=C2=A0(<a href=3D"https://=
datatracker.ietf.org/meeting/100/agenda.html">https://datatracker.ietf.org/=
meeting/100/agenda.html</a>), we will have a 2-hour meeting slot on 11/14 T=
uesday afternoon (15:50 -17:50). (Please note this might be changed as it&#=
39;s still preliminary)</span><br style=3D"font-size:12.8px"><br style=3D"f=
ont-size:12.8px"><span style=3D"font-size:12.8px">If you&#39;re planning to=
 present something, please provide us the following info.=C2=A0</span><br s=
tyle=3D"font-size:12.8px"><br style=3D"font-size:12.8px"><span style=3D"fon=
t-size:12.8px">=C2=A0 =C2=A01: presenter&#39;s name</span><br style=3D"font=
-size:12.8px"><span style=3D"font-size:12.8px">=C2=A0 =C2=A02: title</span>=
<br style=3D"font-size:12.8px"><span style=3D"font-size:12.8px">=C2=A0 =C2=
=A03: length of the presentation</span><br style=3D"font-size:12.8px"><br s=
tyle=3D"font-size:12.8px"><span style=3D"font-size:12.8px">Thanks,</span><b=
r style=3D"font-size:12.8px"><span style=3D"font-size:12.8px">--</span><br =
style=3D"font-size:12.8px"><span style=3D"font-size:12.8px">Yoshi &amp; Phi=
l</span><br></div>

--001a1147c4eaf76410055baf9df8--


From nobody Fri Oct 20 17:28:48 2017
Return-Path: <agenda@ietf.org>
X-Original-To: multipathtcp@ietf.org
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id AFD76134518; Fri, 20 Oct 2017 17:24:23 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: "\"IETF Secretariat\"" <agenda@ietf.org>
To: <philip.eardley@bt.com>, <mptcp-chairs@ietf.org>
Cc: multipathtcp@ietf.org, ietf@kuehlewind.net
X-Test-IDTracker: no
X-IETF-IDTracker: 6.63.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <150854546371.20809.4184500071528602501.idtracker@ietfa.amsl.com>
Date: Fri, 20 Oct 2017 17:24:23 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/Vo7AJ-FMUSRBQTh2gRrONKVUH5E>
Subject: [multipathtcp] mptcp - Requested session has been scheduled for IETF 100
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 21 Oct 2017 00:24:24 -0000

Dear Philip Eardley,

The session(s) that you have requested have been scheduled.
Below is the scheduled session information followed by
the original request. 

mptcp Session 1 (2:00:00)
    Tuesday, Afternoon Session II 1550-1750
    Room Name: Collyer size: 250
    ---------------------------------------------
    


Request Information:


---------------------------------------------------------
Working Group Name: Multipath TCP
Area Name: Transport Area
Session Requester: Philip Eardley

Number of Sessions: 1
Length of Session(s):  2 Hours
Number of Attendees: 60
Conflicts to Avoid: 
 First Priority: ippm tcpinc tcpm tsvarea tsvwg tls banana
 Second Priority: taps iccrg rtcweb manet
 Third Priority: nfvrg quic maprg


People who must be present:
  Yoshifumi Nishida
  Philip Eardley
  Mirja Kuehlewind

Resources Requested:

Special Requests:
  please avoid any transport area BoFs
---------------------------------------------------------


From nobody Mon Oct 23 01:47:29 2017
Return-Path: <philip.eardley@bt.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E440513F15C for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:47:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.401
X-Spam-Level: 
X-Spam-Status: No, score=-5.401 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hhWFh4v8uLmp for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:47:25 -0700 (PDT)
Received: from smtpb1.bt.com (smtpb1.bt.com [62.7.242.136]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 25E6813F159 for <multipathtcp@ietf.org>; Mon, 23 Oct 2017 01:47:24 -0700 (PDT)
Received: from EPDAG01D-UKBR.domain1.systemhost.net (193.113.197.205) by EVMED02-UKBR.bt.com (10.216.161.32) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 23 Oct 2017 09:47:17 +0100
Received: from rew09926dag03c.domain1.systemhost.net (10.55.202.26) by EPDAG01D-UKBR.domain1.systemhost.net (193.113.197.205) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Mon, 23 Oct 2017 09:47:21 +0100
Received: from rew09926dag03b.domain1.systemhost.net (10.55.202.22) by rew09926dag03c.domain1.systemhost.net (10.55.202.26) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Mon, 23 Oct 2017 09:47:21 +0100
Received: from rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e]) by rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e%12]) with mapi id 15.00.1293.004; Mon, 23 Oct 2017 09:47:20 +0100
From: <philip.eardley@bt.com>
To: <francois.finfe@tessares.net>, <multipathtcp@ietf.org>
CC: <olivier.bonaventure@tessares.net>
Thread-Topic: [multipathtcp] Multipath TCP FAST_CLOSE - abrupt closing
Thread-Index: AQHTLJW79yxOIgXwBUCfJbDIHTBKs6LxXclg
Date: Mon, 23 Oct 2017 08:47:20 +0000
Message-ID: <1cef00806c7c4402962c3c6d8180b1f6@rew09926dag03b.domain1.systemhost.net>
References: <b3968dc9-0500-5907-4e13-8aa350d12f11@tessares.net>
In-Reply-To: <b3968dc9-0500-5907-4e13-8aa350d12f11@tessares.net>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.55.202.242]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/CfddhrcwICRIkwEIlhJ0BoQ442s>
Subject: Re: [multipathtcp] Multipath TCP FAST_CLOSE - abrupt closing
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Oct 2017 08:47:28 -0000

RGlkIHdlIHJlYWNoIGNvbnNlbnN1cyBhYm91dCB0aGlzIHByb3Bvc2VkIGNoYW5nZT8NClRoYW5r
cw0KcGhpbA0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogbXVsdGlwYXRodGNw
IFttYWlsdG86bXVsdGlwYXRodGNwLWJvdW5jZXNAaWV0Zi5vcmddIE9uIEJlaGFsZiBPZiBGcmFu
w6dvaXMgRmluZmUNClNlbnQ6IDEzIFNlcHRlbWJlciAyMDE3IDE0OjM5DQpUbzogbXVsdGlwYXRo
dGNwQGlldGYub3JnDQpDYzogT2xpdmllciBCb25hdmVudHVyZSA8b2xpdmllci5ib25hdmVudHVy
ZUB0ZXNzYXJlcy5uZXQ+DQpTdWJqZWN0OiBbbXVsdGlwYXRodGNwXSBNdWx0aXBhdGggVENQIEZB
U1RfQ0xPU0UgLSBhYnJ1cHQgY2xvc2luZw0KDQpIaSwNCg0KDQpSRkM2ODI0IGFuZCBSRkM2ODI0
YmlzIHVzZSB0aGUgRkFTVF9DTE9TRSBvcHRpb24gdG8gYWJydXB0bHkgY2xvc2UgYSBNdWx0aXBh
dGggVENQIGNvbm5lY3Rpb24uIFRoZSBtb3RpdmF0aW9uIGZvciB0aGUgcHJvY2VkdXJlIGRlZmlu
ZWQgaW4gc2VjdGlvbiAzLjUgaXMgdG8gZW5hYmxlIGEgaG9zdCB0byBxdWlja2x5IHRlcm1pbmF0
ZSBhIE11bHRpcGF0aCBUQ1AgY29ubmVjdGlvbiB3aXRob3V0IGJlaW5nIGZvcmNlZCB0byBzZW5k
IERBVEFfRklOcy4NCg0KVGhlIGN1cnJlbnQgcHJvY2VkdXJlIGRlZmluZWQgaW4gc2VjdGlvbiAz
LjUgaXMgdGhhdCB0aGUgaG9zdCB0aGF0IHdpc2hlcyB0byBhYnJ1cHRseSB0ZXJtaW5hdGUgYSBj
b25uZWN0aW9uIG11c3Qgc2VuZCBhIFJTVCBvbiBhbGwgc3ViZmxvd3MgZXhjZXB0IG9uZSB3aGVy
ZSBpdCBzZW5kcyBhbiBBQ0sgd2l0aCB0aGUgRkFTVF9DTE9TRSBvcHRpb24gYW5kIHdhaXRzIGZv
ciBhIFJTVCBiZWZvcmUgY2xvc2luZyB0aGUgTXVsdGlwYXRoIFRDUCBjb25uZWN0aW9uLiBUaGUg
RkFTVF9DTE9TRSBvcHRpb24gaW5jbHVkZXMgdGhlIHJlY2VpdmVy4oCZcyBrZXkgdG8gYXV0aGVu
dGljYXRlIHRoZSBhYnJ1cHQgcmVsZWFzZSBvZiB0aGUgc3ViZmxvdy4gVGhpcyBwcmV2ZW50cyBh
dHRhY2tzIHdoZXJlIGEgcmVtb3RlIGF0dGFja2VyIGNvdWxkIHNlbmQgc3Bvb2ZlZCBwYWNrZXRz
IHRoYXQgd291bGQgdGVybWluYXRlIHRoZSBNdWx0aXBhdGggVENQIGNvbm5lY3Rpb24uDQoNClVu
Zm9ydHVuYXRlbHksIHRoZSBwcm9jZWR1cmUgZGVmaW5lZCBpbiBzZWN0aW9uIDMuNSBoYXMgYSB2
ZXJ5IGltcG9ydGFudCBkcmF3YmFjay4gQWx0aG91Z2ggdGhlIGhvc3Qgd2FudHMgdG8gYWJydXB0
bHkgY2xvc2UgdGhlIE11bHRpcGF0aCBUQ1AgY29ubmVjdGlvbiwgaXQgbmVlZHMgdG8gbWFpbnRh
aW4gc3RhdGUgZm9yIHRoaXMgY29ubmVjdGlvbiB1bnRpbCB0aGUgb3RoZXIgaG9zdCBoYXMgY29u
ZmlybWVkICh3aXRoIGEgUlNUKSB0aGUgdGVybWluYXRpb24gb2YgdGhlIGNvbm5lY3Rpb24uDQpU
aGlzIGdvZXMgYWdhaW5zdCB0aGUgaWRlYSBvZiBhYnJ1cHRseSBjbG9zaW5nIGNvbm5lY3Rpb25z
IGR1ZSB0byBsYWNrIG9mIHJlc3NvdXJjZXMgZm9yIGV4YW1wbGUuIFdlIGhhdmUgZmFjZWQgc29t
ZSBpc3N1ZXMgd2l0aCBhcHBsaWNhdGlvbnMgdXNpbmcgU09fTElOR0VSIHNldCB0byB6ZXJvIHRo
YXQgd2VyZSBleHBlY3RpbmcgdGhlIHNvY2tldCB0byBoYXZlIGRpc2FwcGVhcmVkIGFmdGVyIGFu
IGFicnVwdCByZWxlYXNlIHdoaWxlIGl0IGRpZCBub3QgZGlzYXBwZWFyLg0KDQpJdCB3b3VsZCBt
YWtlIHNlbnNlIHRvIHJlY29uc2lkZXIgdGhlIGFicnVwdCBjb25uZWN0aW9uIHRlcm1pbmF0aW9u
IHByb2NlZHVyZSBkZWZpbmVkIGluIHNlY3Rpb24gMy41IHRvIGVuYWJsZSBhIGhvc3QgdG8gaW1t
ZWRpYXRlbHkgdGVybWluYXRlIGEgTXVsdGlwYXRoIFRDUCBjb25uZWN0aW9uIGFuZCByZWxlYXNl
IHRoZSBhc3NvY2lhdGVkIGRhdGEgc3RydWN0dXJlcy4gT25lIHBvc3NpYmlsaXR5IHdvdWxkIGJl
IHRvIHdvcmsgYXMgZm9sbG93cy4NCg0KQ29uc2lkZXIgYSBNdWx0aXBhdGggVENQIGNvbm5lY3Rp
b24gZXN0YWJsaXNoZWQgYmV0d2VlbiBhIGNsaWVudCBhbmQgYSBzZXJ2ZXIuIFRoZXJlIGFyZSB0
d28gc3ViZmxvd3MsIEEgYW5kIEIuIFRoZSBzZXJ2ZXIgd2FudHMgdG8gYWJydXB0bHkgY2xvc2Ug
dGhlIGNvbm5lY3Rpb24uIEZvciB0aGlzLCB3ZSBwcm9wb3NlIHRvIGNvbnRpbnVlIHRvIHVzZSB0
aGUgRkFTVF9DTE9TRSBvcHRpb24sIGJ1dCBwbGFjZSBpdCBpbnNpZGUgdGhlIFJTVCBwYWNrZXQg
c2VudCBvdmVyIGFsbCBzdWJmbG93cy4gQnkgdXNpbmcgYSBSU1QgaW5zdGVhZCBvZiBhbiBBQ0sg
YXMgaW4gc2VjdGlvbiAzLjUsIHRoZSBzZXJ2ZXIgZG9lcyBub3QgbmVlZCB0byBtYWludGFpbiBh
bnkgc3RhdGUgYW5kIGNhbiByZW1vdmUgdGhlIGRhdGEgc3RydWN0dXJlcyBhc3NvY2lhdGVkIHdp
dGggdGhlIGNsb3NlZCBjb25uZWN0aW9uIGltbWVkaWF0ZWx5LiBJZiBvbmUgb2YgdGhlIFJTVCBw
YWNrZXRzIHJlYWNoZXMgdGhlIGNsaWVudCwgaXQgd2lsbCBrbm93IHRoYXQgdGhlIGVudGlyZSBj
b25uZWN0aW9uIGhhcyBiZWVuIGNsb3NlZCBieSB0aGUgc2VydmVyLg0KDQpUaGUgb25seSBpc3N1
ZSB3aXRoIHRoaXMgbmV3IGFwcHJvYWNoIGlzIHdoZW4gbm9uZSBvZiB0aGUgUlNUIHBhY2tldHMg
c2VudCBieSB0aGUgc2VydmVyIHJlYWNoIHRoZSBjbGllbnQuIFdlIHdvdWxkIGJlIGluIGEgc2l0
dWF0aW9uIHdoZXJlIHRoZSBjbGllbnQgY29uc2lkZXJzIHRoYXQgdGhlIE11bHRpcGF0aCBUQ1Ag
aXMgYWN0aXZlIHdoaWxlIGl0IGRvZXMgbm90IGV4aXN0IGFueW1vcmUgb24gdGhlIHNlcnZlci4g
QWZ0ZXIgc29tZSB0aW1lLCB0aGUgY2xpZW50IHdpbGwgc2VuZCBhIHBhY2tldCB0byB0aGUgc2Vy
dmVyIG92ZXIgb25lIG9mIHRoZSBzdWJmbG93cy4gU2luY2UgdGhlIE11bHRpcGF0aCBUQ1AgY29u
bmVjdGlvbiBkb2VzIG5vdCBleGlzdCBhbnltb3JlIG9uIHRoZSBzZXJ2ZXIsIGl0IHdpbGwgcmVw
bHkgd2l0aCBhIFJTVCBwYWNrZXQgdGhhdCB3aWxsIGNsb3NlIHRoaXMgc3ViZmxvdy4gVGhlIGNs
aWVudCB3aWxsIHJlY2VpdmUgdGhlIHNhbWUgUlNUIG92ZXIgYWxsIHRoZSBlc3RhYmxpc2hlZCBz
dWJmbG93cy4gV2hlbiBhbGwgc3ViZmxvd3MgaGF2ZSBiZWVuIGNsb3NlZCwgdGhlIGNsaWVudCBz
aG91bGQgdHJ5IHRvIGVzdGFibGlzaCBhIG5ldyBzdWJmbG93IHRvIHRoZSBzZXJ2ZXIgYnkgc2Vu
ZGluZyBhIFNZTiB3aXRoIE1QX0pPSU4uIFVwb24gcmVjZXB0aW9uIG9mIHRoaXMgU1lOLCB0aGUg
c2VydmVyIHdpbGwgdHJ5IHRvIG1hdGNoIHRoZSBjb25uZWN0aW9uIHRva2VuIHdpdGggdGhlIGVz
dGFibGlzaGVkIE11bHRpcGF0aCBUQ1AgY29ubmVjdGlvbiBhbmQgd2lsbCBmaW5kIHRoYXQgdGhl
cmUgaXMgbm8gbWF0Y2hpbmcgY29ubmVjdGlvbi4NCkFjY29yZGluZyB0byBSRkM2ODI0LCB0aGUg
c2VydmVyIHNob3VsZCByZXBseSB3aXRoIGEgUlNUIHBhY2tldCB0byBjbG9zZSB0aGUgc3ViZmxv
dy4gV2UgY291bGQgYWRkIHRvIHRoaXMgUlNUIHBhY2tldCBhIG5ldyBNUF9UQ1BSU1Qgb3B0aW9u
IGluZGljYXRpbmcgdGhhdCB0aGUgc2VydmVyIGNvdWxkIG5vdCBtYXRjaCB0aGUgcmVjZWl2ZWQg
dG9rZW4gd2l0aCBhbiBleGlzdGluZyBjb25uZWN0aW9uLiBVcG9uIHJlY2VwdGlvbiBvZiBhIFJT
VCBjYXJyeWluZyB0aGlzIG9wdGlvbiwgdGhlIGNsaWVudCB3b3VsZCBrbm93IHRoYXQgdGhlIGNv
cnJlc3BvbmRpbmcgY29ubmVjdGlvbiBoYXMgYmVlbiBjbG9zZWQgYnkgdGhlIHNlcnZlciBhbmQg
d291bGQgY2xvc2UgaXQgaXRzZWxmLg0KDQpXZSBiZWxpZXZlIHRoYXQgdGhpcyBhcHByb2FjaCBp
cyBzaW1wbGVyIG9uIHRoZSBzZXJ2ZXIgc2lkZSB3aGlsZSBzdGlsbCBhbGxvd2luZyBjbGllbnRz
IHRvIGRldGVjdCBjbG9zZWQgTXVsdGlwYXRoIFRDUCBjb25uZWN0aW9ucy4gVGhlIGFicnVwdCBj
bG9zaW5nIChlLmcuIHNvY2tldCBvcHRpb24gU09fTElOR0VSIHdpdGggemVybyB0aW1lb3V0KSBp
cyBhbHNvIHByb3Blcmx5IGltcGxlbWVudGVkLiBJbiBjb250cmFzdCB3aXRoIHRoZSBjdXJyZW50
IGFwcHJvYWNoLCBpdCBwbGFjZXMgdGhlIGJ1cmRlbiBvbiB0aGUgY2xpZW50IGluc3RlYWQgb2Yg
b24gdGhlIHNlcnZlciwgYnV0IHdlIGJlbGlldmUgdGhpcyBpcyBiZW5lZmljaWFsIGZvciBzZXJ2
ZXJzIHRoYXQgb2Z0ZW4gbmVlZCB0byBhYnJ1cHRseSBjbG9zZSBjb25uZWN0aW9ucy4NCg0KDQpG
cmFuw6dvaXMNCg0KLS0gDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRElTQ0xB
SU1FUi4NClRoaXMgZW1haWwgYW5kIGFueSBmaWxlcyB0cmFuc21pdHRlZCB3aXRoIGl0IGFyZSBj
b25maWRlbnRpYWwgYW5kIGludGVuZGVkIHNvbGVseSBmb3IgdGhlIHVzZSBvZiB0aGUgaW5kaXZp
ZHVhbCBvciBlbnRpdHkgdG8gd2hvbSB0aGV5IGFyZSBhZGRyZXNzZWQuIA0KSWYgeW91IGhhdmUg
cmVjZWl2ZWQgdGhpcyBlbWFpbCBpbiBlcnJvciBwbGVhc2Ugbm90aWZ5IHRoZSBzeXN0ZW0gbWFu
YWdlci4gDQpUaGlzIG1lc3NhZ2UgY29udGFpbnMgY29uZmlkZW50aWFsIGluZm9ybWF0aW9uIGFu
ZCBpcyBpbnRlbmRlZCBvbmx5IGZvciB0aGUgaW5kaXZpZHVhbCBuYW1lZC4gSWYgeW91IGFyZSBu
b3QgdGhlIG5hbWVkIGFkZHJlc3NlZSB5b3Ugc2hvdWxkIG5vdCBkaXNzZW1pbmF0ZSwgZGlzdHJp
YnV0ZSBvciBjb3B5IHRoaXMgZS1tYWlsLiBQbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRp
YXRlbHkgYnkgZS1tYWlsIGlmIHlvdSBoYXZlIHJlY2VpdmVkIHRoaXMgZS1tYWlsIGJ5IG1pc3Rh
a2UgYW5kIGRlbGV0ZSB0aGlzIGUtbWFpbCBmcm9tIHlvdXIgc3lzdGVtLiBJZiB5b3UgYXJlIG5v
dCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50IHlvdSBhcmUgbm90aWZpZWQgdGhhdCBkaXNjbG9zaW5n
LCBjb3B5aW5nLCBkaXN0cmlidXRpbmcgb3IgdGFraW5nIGFueSBhY3Rpb24gaW4gcmVsaWFuY2Ug
b24gdGhlIGNvbnRlbnRzIG9mIHRoaXMgaW5mb3JtYXRpb24gaXMgc3RyaWN0bHkgcHJvaGliaXRl
ZC4NCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCm11
bHRpcGF0aHRjcCBtYWlsaW5nIGxpc3QNCm11bHRpcGF0aHRjcEBpZXRmLm9yZw0KaHR0cHM6Ly93
d3cuaWV0Zi5vcmcvbWFpbG1hbi9saXN0aW5mby9tdWx0aXBhdGh0Y3ANCg==


From nobody Mon Oct 23 01:48:57 2017
Return-Path: <philip.eardley@bt.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 35BA513F177 for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:48:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_PASS=-0.001, WEIRD_PORT=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6c2pg3l8ZzRi for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:48:54 -0700 (PDT)
Received: from smtpb1.bt.com (smtpb1.bt.com [62.7.242.141]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3E09813F17A for <multipathtcp@ietf.org>; Mon, 23 Oct 2017 01:48:54 -0700 (PDT)
Received: from E07HT05-UKBR.domain1.systemhost.net (193.113.197.167) by EVMED05-UKBR.bt.com (10.216.161.37) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 23 Oct 2017 09:48:47 +0100
Received: from rew09926dag03a.domain1.systemhost.net (10.55.202.18) by E07HT05-UKBR.domain1.systemhost.net (193.113.197.167) with Microsoft SMTP Server (TLS) id 8.3.342.0; Mon, 23 Oct 2017 09:48:51 +0100
Received: from rew09926dag03b.domain1.systemhost.net (10.55.202.22) by rew09926dag03a.domain1.systemhost.net (10.55.202.18) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Mon, 23 Oct 2017 09:48:51 +0100
Received: from rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e]) by rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e%12]) with mapi id 15.00.1293.004; Mon, 23 Oct 2017 09:48:51 +0100
From: <philip.eardley@bt.com>
To: <multipathtcp@ietf.org>
Thread-Topic: Changes to RFC6824bis
Thread-Index: AdMF4tNWzyK6qEchQXuzuihLvNQscwggXS1gCV3ZedA=
Date: Mon, 23 Oct 2017 08:48:50 +0000
Message-ID: <024cc75349d249b1b62df41ee5840125@rew09926dag03b.domain1.systemhost.net>
References: <6ad50c5f057742c096fdd1f9088e551d@rew09926dag03b.domain1.systemhost.net> <7a02a641ed684b3c8aa8e7899e5624ee@rew09926dag03b.domain1.systemhost.net>
In-Reply-To: <7a02a641ed684b3c8aa8e7899e5624ee@rew09926dag03b.domain1.systemhost.net>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.55.202.242]
Content-Type: multipart/alternative; boundary="_000_024cc75349d249b1b62df41ee5840125rew09926dag03bdomain1sy_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/zFUkkJGMlJ9ueB_sXksK7Ud3YOU>
Subject: Re: [multipathtcp] Changes to RFC6824bis
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Oct 2017 08:48:56 -0000

--_000_024cc75349d249b1b62df41ee5840125rew09926dag03bdomain1sy_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Is there any news about #2 and #3 below?
Thanks
phil
From: Eardley,PL,Philip,TUD1 R
Sent: 05 September 2017 17:32
To: Eardley,PL,Philip,TUD1 R <philip.eardley@bt.com>; multipathtcp@ietf.org
Subject: RE: Changes to RFC6824bis

Just wanted to check where we are re these 3 changes.
#1 - thanks to Alan for making this change
#2 - Christoph, Olivier - any news?
#3 - Quentin - any news?
Thanks!
Phil

From: multipathtcp [mailto:multipathtcp-bounces@ietf.org] On Behalf Of phil=
ip.eardley@bt.com<mailto:philip.eardley@bt.com>
Sent: 26 July 2017 08:51
To: multipathtcp@ietf.org<mailto:multipathtcp@ietf.org>
Subject: [multipathtcp] Changes to RFC6824bis

Hi,
During the discussions in Prague, we had good agreement about the following=
 change to the bis. This is a change to the wire protocol. Please say as so=
on as possible if you disagree with this change, otherwise we'll go ahead a=
nd make this change:-

Remove address identifier from MP-PRIO, as it can be used as an attack.

Explanation at https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWaQ3AKW=
EMgsBSPKc_R9Ct_YoI and follow up emails. The issue was briefly summarised d=
uring the Friday meeting in Prague - eg see the etherpad for a summary http=
://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMonospaceFont=3Dtr=
ue

Alan - are you ok to make this change please?

--

In addition, we agreed in principle to the following (informational) change=
s to the bis - exact text to be proposed.

2.       Guidance about MPTCP & TFP interactions, based on https://www.ietf=
.org/proceedings/99/slides/slides-99-mptcp-sessb-mptcp-tfo-00.pdf - Christo=
ph & Olivier, please propose text.

3.       There was a suggestion, arising from the hackathon, to discuss on =
the list whether clarifications or extra 'reason codes' would be useful in =
the context of reset option. Quentin (& others), please make a proposal.
Best wishes,
Phil & Yoshi


--_000_024cc75349d249b1b62df41ee5840125rew09926dag03bdomain1sy_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.m-4280601541718211318msolistparagraph, li.m-4280601541718211318msolistpar=
agraph, div.m-4280601541718211318msolistparagraph
	{mso-style-name:m_-4280601541718211318msolistparagraph;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
span.EmailStyle20
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle21
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-GB" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1F497D;mso-fareast-language:EN-US">Is there a=
ny news about #2 and #3 below?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1F497D;mso-fareast-language:EN-US">Thanks<o:p=
></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1F497D;mso-fareast-language:EN-US">phil<o:p><=
/o:p></span></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:11.0pt;fo=
nt-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span lang=3D"EN-=
US" style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif"> =
Eardley,PL,Philip,TUD1 R
<br>
<b>Sent:</b> 05 September 2017 17:32<br>
<b>To:</b> Eardley,PL,Philip,TUD1 R &lt;philip.eardley@bt.com&gt;; multipat=
htcp@ietf.org<br>
<b>Subject:</b> RE: Changes to RFC6824bis<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">Just wanted to check whe=
re we are re these 3 changes.<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">#1 &#8211; thanks to Ala=
n for making this change<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">#2 &#8211; Christoph, Ol=
ivier &#8211; any news?<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">#3 &#8211; Quentin &#821=
1; any news?<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">Thanks!<o:p></o:p></span=
></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">Phil</span><span lang=3D=
"EN" style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;c=
olor:#1F497D"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p>&nbsp=
;</o:p></span></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:11.0pt;fo=
nt-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span lang=3D"EN-=
US" style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif"> =
multipathtcp [<a href=3D"mailto:multipathtcp-bounces@ietf.org">mailto:multi=
pathtcp-bounces@ietf.org</a>]
<b>On Behalf Of </b><a href=3D"mailto:philip.eardley@bt.com">philip.eardley=
@bt.com</a><br>
<b>Sent:</b> 26 July 2017 08:51<br>
<b>To:</b> <a href=3D"mailto:multipathtcp@ietf.org">multipathtcp@ietf.org</=
a><br>
<b>Subject:</b> [multipathtcp] Changes to RFC6824bis<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Hi,<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">During the discussions in Prague, we had good agreement about the =
following change to the bis. This is a change to the wire protocol. Please =
say as soon as possible if you disagree
 with this change, otherwise we&#8217;ll go ahead and make this change:-<o:=
p></o:p></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Remove=
 address identifier from MP-PRIO, as it can be used as an attack.
<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Explan=
ation at <a href=3D"https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWa=
Q3AKWEMgsBSPKc_R9Ct_YoI" target=3D"_blank">
https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWaQ3AKWEMgsBSPKc_R9Ct_=
YoI</a> and follow up emails. The issue was briefly summarised during the F=
riday meeting in Prague &#8211; eg see the etherpad for a summary
<a href=3D"http://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMon=
ospaceFont=3Dtrue">
http://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMonospaceFont=
=3Dtrue</a>
<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Alan &=
#8211; are you ok to make this change please?<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">--<o:p=
></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">In add=
ition, we agreed in principle to the following (informational) changes to t=
he bis &#8211; exact text to be proposed.</span><o:p></o:p></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">2.</sp=
an><span lang=3D"EN" style=3D"font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;</span><span lang=3D"EN"> Guidance about MPTCP &amp; TFP interactio=
ns, based on
<a href=3D"https://www.ietf.org/proceedings/99/slides/slides-99-mptcp-sessb=
-mptcp-tfo-00.pdf" target=3D"_blank">
https://www.ietf.org/proceedings/99/slides/slides-99-mptcp-sessb-mptcp-tfo-=
00.pdf</a> - Christoph &amp; Olivier, please propose text.</span><o:p></o:p=
></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">3.</sp=
an><span lang=3D"EN" style=3D"font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;
</span><span lang=3D"EN">There was a suggestion, arising from the hackathon=
, to discuss on the list whether clarifications or extra &#8216;reason code=
s&#8217; would be useful in the context of reset option. Quentin (&amp; oth=
ers), please make a proposal.</span><o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Best wishes,<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Phil &amp; Yoshi<o:p></o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>

--_000_024cc75349d249b1b62df41ee5840125rew09926dag03bdomain1sy_--


From nobody Mon Oct 23 01:52:22 2017
Return-Path: <philip.eardley@bt.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4FF3113F1E4 for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:52:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.399
X-Spam-Level: 
X-Spam-Status: No, score=-5.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001, WEIRD_PORT=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dk2pnqHrgM3K for <multipathtcp@ietfa.amsl.com>; Mon, 23 Oct 2017 01:52:19 -0700 (PDT)
Received: from smtpb1.bt.com (smtpb1.bt.com [62.7.242.136]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F2F2913F1E0 for <multipathtcp@ietf.org>; Mon, 23 Oct 2017 01:52:17 -0700 (PDT)
Received: from E07HT02-UKBR.domain1.systemhost.net (193.113.197.160) by EVMED02-UKBR.bt.com (10.216.161.32) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 23 Oct 2017 09:52:11 +0100
Received: from rew09926dag03d.domain1.systemhost.net (10.55.202.30) by E07HT02-UKBR.domain1.systemhost.net (193.113.197.160) with Microsoft SMTP Server (TLS) id 8.3.342.0; Mon, 23 Oct 2017 09:52:15 +0100
Received: from rew09926dag03b.domain1.systemhost.net (10.55.202.22) by rew09926dag03d.domain1.systemhost.net (10.55.202.30) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Mon, 23 Oct 2017 09:52:15 +0100
Received: from rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e]) by rew09926dag03b.domain1.systemhost.net ([fe80::d514:fe50:560c:401e%12]) with mapi id 15.00.1293.004; Mon, 23 Oct 2017 09:52:15 +0100
From: <philip.eardley@bt.com>
To: <multipathtcp@ietf.org>
Thread-Topic: Finishing RFC6824bis
Thread-Index: AdMF5BJq4+8S67w/R2Sl1/JdvcshdxF97+gQAAAW6CA=
Date: Mon, 23 Oct 2017 08:52:14 +0000
Message-ID: <162e9b4c97b44700affb0b1096cdea7e@rew09926dag03b.domain1.systemhost.net>
References: <8efe9632021940bbac21fc1d12fa4539@rew09926dag03b.domain1.systemhost.net> 
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.55.202.242]
Content-Type: multipart/alternative; boundary="_000_162e9b4c97b44700affb0b1096cdea7erew09926dag03bdomain1sy_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/d_ggLO1uc2r09BWa71bzIYPjgqQ>
Subject: Re: [multipathtcp] Finishing RFC6824bis
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Oct 2017 08:52:21 -0000

--_000_162e9b4c97b44700affb0b1096cdea7erew09926dag03bdomain1sy_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi,
<< Implementers - implement SHA-256. As I understand it, this is the only p=
art of the bis for which we don't have at least one implementation. Is ther=
e any timescale for implementing this?>>
I was wondering if there was an update or plans about this. Alternatively, =
we may decide it's ok to go ahead with last call without an implementation =
for this aspect.
Thanks
phil
From: Eardley,PL,Philip,TUD1 R
Sent: 26 July 2017 15:46
To: Eardley,PL,Philip,TUD1 R <philip.eardley@bt.com<mailto:philip.eardley@b=
t.com>>
Subject: Finishing RFC6824bis

We are close to finalising the bis and being able to WG Last call and send =
it to the IESG. Here's a list of actions. If we've forgotten anything, or a=
nyone has another mod /addition to the bis, please say.

1.      Make the changes agreed - see email below.

2.      Implementers - implement SHA-256. As I understand it, this is the o=
nly part of the bis for which we don't have at least one implementation. Is=
 there any timescale for implementing this?

3.      Chairs /all - list of changes between RFC & bis, along with a short=
 justification

4.      Chairs /all - a short justification for obsoleting RFC6824

5.      Chairs /all - List of implementations of the protocol & bis (ie a c=
heck of which parts are implemented once or also in iOS)
Our proposed plan is that once the various parts of #1 are done, we'll do a=
 WGLC. Items 3, 4 & 5 are things that will be useful to the IESG. Item 2 is=
 certainly something that would be nice to have - if there'll be a signific=
ant delay implementing it, then we should discuss whether to wait, or wheth=
er it's acceptable to progress without an implementation of this part.
Finally a reminder that the plan is that RFC6824bis advances on the Standar=
ds track


From: Eardley,PL,Philip,TUD1 R
Sent: 26 July 2017 08:51
To: multipathtcp <multipathtcp@ietf.org<mailto:multipathtcp@ietf.org>>
Subject: Changes to RFC6824bis

Hi,
During the discussions in Prague, we had good agreement about the following=
 change to the bis. This is a change to the wire protocol. Please say as so=
on as possible if you disagree with this change, otherwise we'll go ahead a=
nd make this change:-

Remove address identifier from MP-PRIO, as it can be used as an attack.

Explanation at https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWaQ3AKW=
EMgsBSPKc_R9Ct_YoI and follow up emails. The issue was briefly summarised d=
uring the Friday meeting in Prague - eg see the etherpad for a summary http=
://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMonospaceFont=3Dtr=
ue

Alan - are you ok to make this change please?

--

In addition, we agreed in principle to the following (informational) change=
s to the bis - exact text to be proposed.

2.       Guidance about MPTCP & TFP interactions, based on https://www.ietf=
.org/proceedings/99/slides/slides-99-mptcp-sessb-mptcp-tfo-00.pdf - Christo=
ph & Olivier, please propose text.

3.       There was a suggestion, arising from the hackathon, to discuss on =
the list whether clarifications or extra 'reason codes' would be useful in =
the context of reset option. Quentin (& others), please make a proposal.
Best wishes,
Phil & Yoshi


--_000_162e9b4c97b44700affb0b1096cdea7erew09926dag03bdomain1sy_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0cm;
	margin-right:0cm;
	margin-bottom:0cm;
	margin-left:36.0pt;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
p.m-4280601541718211318msolistparagraph, li.m-4280601541718211318msolistpar=
agraph, div.m-4280601541718211318msolistparagraph
	{mso-style-name:m_-4280601541718211318msolistparagraph;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle20
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
span.EmailStyle21
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:842553631;
	mso-list-type:hybrid;
	mso-list-template-ids:-490155724 134807567 134807577 134807579 134807567 1=
34807577 134807579 134807567 134807577 134807579;}
@list l0:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-GB" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">Hi,<o:p></o:p></span></p=
>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">&lt;&lt;</span>
<span lang=3D"EN">Implementers &#8211; implement SHA-256. As I understand i=
t, this is the only part of the bis for which we don&#8217;t have at least =
one implementation. Is there any timescale for implementing this?</span><sp=
an style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;col=
or:#1F497D;mso-fareast-language:EN-US">&gt;&gt;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">I was wondering if there=
 was an update or plans about this. Alternatively,
 we may decide it&#8217;s ok to go ahead with last call without an implemen=
tation for this aspect.<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">Thanks<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sa=
ns-serif;color:#1F497D;mso-fareast-language:EN-US">phil<o:p></o:p></span></=
p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:11.0pt;fo=
nt-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span lang=3D"EN-=
US" style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif"> =
Eardley,PL,Philip,TUD1 R
<br>
<b>Sent:</b> 26 July 2017 15:46<br>
<b>To:</b> Eardley,PL,Philip,TUD1 R &lt;<a href=3D"mailto:philip.eardley@bt=
.com">philip.eardley@bt.com</a>&gt;<br>
<b>Subject:</b> Finishing RFC6824bis<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">We are close to finalising the bis and being able to WG Last call =
and send it to the IESG. Here&#8217;s a list of actions. If we&#8217;ve for=
gotten anything, or anyone has another mod /addition
 to the bis, please say.<o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"mso-margin-top-alt:auto;mso-margin-b=
ottom-alt:auto;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style=3D"mso-list:Ignore">1.<span style=3D"font:=
7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Make the changes agreed &#8211; see email below.<o:=
p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"mso-margin-top-alt:auto;mso-margin-b=
ottom-alt:auto;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style=3D"mso-list:Ignore">2.<span style=3D"font:=
7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=3D"EN">Implementers &#8211; implement SH=
A-256. As I understand it, this is the only part of the bis for which we do=
n&#8217;t have at least one implementation. Is there any timescale for impl=
ementing this?</span><o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"mso-margin-top-alt:auto;mso-margin-b=
ottom-alt:auto;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style=3D"mso-list:Ignore">3.<span style=3D"font:=
7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=3D"EN">Chairs /all &#8211; list of chang=
es between RFC &amp; bis, along with a short justification</span><o:p></o:p=
></p>
<p class=3D"MsoListParagraph" style=3D"mso-margin-top-alt:auto;mso-margin-b=
ottom-alt:auto;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style=3D"mso-list:Ignore">4.<span style=3D"font:=
7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=3D"EN">Chairs /all &#8211; a short justi=
fication for obsoleting RFC6824</span><o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"mso-margin-top-alt:auto;mso-margin-b=
ottom-alt:auto;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style=3D"mso-list:Ignore">5.<span style=3D"font:=
7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=3D"EN">Chairs /all - List of implementat=
ions of the protocol &amp; bis (ie a check of which parts are implemented o=
nce or also in iOS)</span><o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Our proposed plan is that once the various parts of #1 are done, w=
e&#8217;ll do a WGLC. Items 3, 4 &amp; 5 are things that will be useful to =
the IESG. Item 2 is certainly something that would
 be nice to have &#8211; if there&#8217;ll be a significant delay implement=
ing it, then we should discuss whether to wait, or whether it&#8217;s accep=
table to progress without an implementation of this part.
<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Finally a reminder that the plan is that RFC6824bis advances on th=
e Standards track<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto"><span lang=3D"EN" style=3D"font-size:11.0pt;font-family:&quot;Cali=
bri&quot;,sans-serif;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p>&nbsp=
;</o:p></span></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:11.0pt;fo=
nt-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span lang=3D"EN-=
US" style=3D"font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif"> =
Eardley,PL,Philip,TUD1 R
<br>
<b>Sent:</b> 26 July 2017 08:51<br>
<b>To:</b> multipathtcp &lt;<a href=3D"mailto:multipathtcp@ietf.org">multip=
athtcp@ietf.org</a>&gt;<br>
<b>Subject:</b> Changes to RFC6824bis<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Hi,<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">During the discussions in Prague, we had good agreement about the =
following change to the bis. This is a change to the wire protocol. Please =
say as soon as possible if you disagree
 with this change, otherwise we&#8217;ll go ahead and make this change:-<o:=
p></o:p></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Remove=
 address identifier from MP-PRIO, as it can be used as an attack.
<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Explan=
ation at <a href=3D"https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWa=
Q3AKWEMgsBSPKc_R9Ct_YoI" target=3D"_blank">
https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWaQ3AKWEMgsBSPKc_R9Ct_=
YoI</a> and follow up emails. The issue was briefly summarised during the F=
riday meeting in Prague &#8211; eg see the etherpad for a summary
<a href=3D"http://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMon=
ospaceFont=3Dtrue">
http://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMonospaceFont=
=3Dtrue</a>
<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">Alan &=
#8211; are you ok to make this change please?<o:p></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">--<o:p=
></o:p></span></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">In add=
ition, we agreed in principle to the following (informational) changes to t=
he bis &#8211; exact text to be proposed.</span><o:p></o:p></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">2.</sp=
an><span lang=3D"EN" style=3D"font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;</span><span lang=3D"EN"> Guidance about MPTCP &amp; TFP interactio=
ns, based on
<a href=3D"https://www.ietf.org/proceedings/99/slides/slides-99-mptcp-sessb=
-mptcp-tfo-00.pdf" target=3D"_blank">
https://www.ietf.org/proceedings/99/slides/slides-99-mptcp-sessb-mptcp-tfo-=
00.pdf</a> - Christoph &amp; Olivier, please propose text.</span><o:p></o:p=
></p>
<p class=3D"m-4280601541718211318msolistparagraph"><span lang=3D"EN">3.</sp=
an><span lang=3D"EN" style=3D"font-size:7.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;
</span><span lang=3D"EN">There was a suggestion, arising from the hackathon=
, to discuss on the list whether clarifications or extra &#8216;reason code=
s&#8217; would be useful in the context of reset option. Quentin (&amp; oth=
ers), please make a proposal.</span><o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Best wishes,<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:auto;mso-margin-bottom-a=
lt:auto">Phil &amp; Yoshi<o:p></o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>

--_000_162e9b4c97b44700affb0b1096cdea7erew09926dag03bdomain1sy_--


From nobody Wed Oct 25 05:08:17 2017
Return-Path: <Markus.Amend@telekom.de>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1D2261377B3 for <multipathtcp@ietfa.amsl.com>; Wed, 25 Oct 2017 05:08:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.32
X-Spam-Level: 
X-Spam-Status: No, score=-4.32 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=telekom.de
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 37ggIDOuCv8y for <multipathtcp@ietfa.amsl.com>; Wed, 25 Oct 2017 05:08:12 -0700 (PDT)
Received: from mailout23.telekom.de (MAILOUT23.telekom.de [80.149.113.253]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AC71D13ACA2 for <multipathtcp@ietf.org>; Wed, 25 Oct 2017 05:08:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telekom.de; i=@telekom.de; q=dns/txt; s=dtag1; t=1508933291; x=1540469291; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=QIv1k4wgFO7nQuctxN0tdeMR45b6m/EKXDKTGkr6GUo=; b=rphAIXZV0swymv/2g+OSIUhcLbfyNuZvZBpNPzi3LMpDRezLX4W+KWlX dt/sNYhmIbUnaTQBqKAOX95GBRh6vQwzbNIhVCW++FsI1lMx+fNQiUwWd yGdyW88KHEfWNgHR9j1pzLan5mWp9GJVVJZ90om5/CsRUrLsxydCwpmwU 9eY9M1wOD+dGhK690FnZSol9uq5iq+ZBroiVNL7jJUMLNXAbKL0CXoNvW y/W+e/NsTl6WsawipjJDy1AtNVR0h1LvUQXqbX1mTUGUF3ElQr3/LtVBH cQnNEKCF4TlX+BA6yuHPwn940jFq2WKikumg2Ge0+T9hRJYRFefb/FKdE Q==;
Received: from qdec94.de.t-internal.com ([10.171.255.41]) by MAILOUT21.telekom.de with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Oct 2017 14:08:08 +0200
X-IronPort-AV: E=Sophos;i="5.43,431,1503352800"; d="scan'208";a="55149877"
Received: from he105684.emea1.cds.t-internal.com ([10.169.119.46]) by QDEC97.de.t-internal.com with ESMTP/TLS/AES256-SHA; 25 Oct 2017 14:08:07 +0200
Received: from HE105686.EMEA1.cds.t-internal.com (10.169.119.48) by HE105684.emea1.cds.t-internal.com (10.169.119.46) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Wed, 25 Oct 2017 14:08:06 +0200
Received: from HE105686.EMEA1.cds.t-internal.com ([fe80::a951:f05b:3de5:32d9]) by HE105686.emea1.cds.t-internal.com ([fe80::a951:f05b:3de5:32d9%26]) with mapi id 15.00.1347.000; Wed, 25 Oct 2017 14:08:06 +0200
From: <Markus.Amend@telekom.de>
To: <nishida@sfc.wide.ad.jp>
CC: <multipathtcp@ietf.org>
Thread-Topic: [multipathtcp] A proposal for MPTCP Robust session Establishment (MPTCP RobE)
Thread-Index: AdL5l2p+5KDR4ahqRJeh9onNd2ThSgBn5kmAACWZiyAKaI2ZkALvaGdgAunzIYADuymGcA==
Date: Wed, 25 Oct 2017 12:08:06 +0000
Message-ID: <a9ba162ce384447596fef2de3d0fd984@HE105686.emea1.cds.t-internal.com>
References: <64f1b27aee214f6b99b5c474158d7426@HE105686.emea1.cds.t-internal.com> <e51005d7-23dd-d10e-9c8f-27ef155461b1@uclouvain.be> <79ac6cb307784db3a6d8ae1550a49573@HE105686.emea1.cds.t-internal.com> <272695de663e4adca1930203b32f44e7@HE105686.emea1.cds.t-internal.com> <CAO249yc4P9-NsHvwxAUBEQprtOXRTh5jChpOcZ=37hzMKj+h8Q@mail.gmail.com>
In-Reply-To: <CAO249yc4P9-NsHvwxAUBEQprtOXRTh5jChpOcZ=37hzMKj+h8Q@mail.gmail.com>
Accept-Language: de-DE, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.117.30.68]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/HtQWvYIx7_tkotutgmVhoXP4ezU>
Subject: Re: [multipathtcp] A proposal for MPTCP Robust session Establishment (MPTCP RobE)
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 25 Oct 2017 12:08:15 -0000

RGVhciBZb3NoaSwNCg0Kc2VlIGlubGluZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t
DQo+IEZyb206IFlvc2hpZnVtaSBOaXNoaWRhIFttYWlsdG86bmlzaGlkYUBzZmMud2lkZS5hZC5q
cF0NCj4gU2VudDogTWl0dHdvY2gsIDQuIE9rdG9iZXIgMjAxNyAwOTo1Mw0KPiBUbzogQW1lbmQs
IE1hcmt1cyA8TWFya3VzLkFtZW5kQHRlbGVrb20uZGU+DQo+IENjOiBtdWx0aXBhdGh0Y3AgPG11
bHRpcGF0aHRjcEBpZXRmLm9yZz4NCj4gU3ViamVjdDogUmU6IFttdWx0aXBhdGh0Y3BdIEEgcHJv
cG9zYWwgZm9yIE1QVENQIFJvYnVzdCBzZXNzaW9uDQo+IEVzdGFibGlzaG1lbnQgKE1QVENQIFJv
YkUpDQo+IA0KPiBIaSBNYXJrdXMsDQo+IA0KPiBJIHN0aWxsIG5lZWQgdG8gdGhpbmsgYWJvdXQg
aXQgYSBiaXQgbW9yZSwgYnV0IGhlcmUncyBteSBjdXJyZW50IHRob3VnaHRzLi4gU29ycnkNCj4g
Zm9yIHNsb3cgcmVzcG9uc2UuDQo+IA0KPiAxOiBJIGFtIGd1ZXNzaW5nIHdlIGNhbm5vdCB1c2Ug
dGhpcyBhcHByb2FjaCB3aXRoIFRGTyB5ZXQuIEJ1dCwgaWYgVEZPIGNhbm5vdA0KPiBiZSB1c2Vk
LCBpdCBtaWdodCBhZmZlY3QgdGhlIGxhdGVuY3kgb2Ygc29tZSBhcHBzLg0KPiANCldlIGFzc3Vt
ZSwgUm9iRSBjYW4gaW5jb3Jwb3JhdGUgVEZPLiBUaGVyZWZvcmUgd2UgaGF2ZSBkaWZmZXJlbnQg
c29sdXRpb25zIGluIG1pbmQuIEJ1dCBmaXJzdCB3ZSBuZWVkIGFuIGFsaWduZWQgdW5kZXJzdGFu
ZGluZyBvZiBURk8uIFRoZXJlIGlzIG9uZSBhc3BlY3QsIHdoaWNoIGlzbid0IGZ1bGx5IGNsZWFy
IGZvciBtZSBvciByZXNwZWN0aXZlbHkgZnJvbSBteSB2aWV3IG5vdCBzcGVjaWZpZWQgZXhwbGlj
aXRseSBpbiBSRkM3NDEzLg0KVEZPIGFsbG93cyBwYXlsb2FkIGluIGEgU1lOIGFuZCBpbiBjYXNl
IG9mIGEgdmFsaWQgVEZPIGNvb2tpZSwgdGhpcyBpcyBkaXJlY3RseSBkZWxpdmVyZWQgdG8gcmVj
ZWl2ZXJzIGFwcGxpY2F0aW9uLiBOb3cgdGhlIHF1ZXN0aW9uOiAgSXMgdGhlIHNlbmRlciBhbGxv
d2VkIHRvIHByb2NlZWQgZGlyZWN0bHkgYWZ0ZXIgc2VuZGluZyB0aGUgU1lOIHdpdGggZnVydGhl
ciBkYXRhIHBhY2tldHMgb3IgaXMgYSBTWU4vQUNLIHJlc3BvbnNlIHJlcXVpcmVkPw0KQnkgaW52
ZXN0aWdhdGluZyBjdXJyZW50IExpbnV4IFRGTyBpbXBsZW1lbnRhdGlvbiBpdCBzZWVtcywgc2Vu
ZGVyIGZpcnN0IHdhaXQgZm9yIHRoZSBTWU4vQUNLIGJlZm9yZSBzZW5kaW5nIGZ1cnRoZXIgZGF0
YSBwYWNrZXRzLiBCdXQgd2hhdCBzaGFsbCB3ZSBhc3N1bWU/IEF0IHRoZSBlbmQgdGhpcyBpcyBw
cmV0dHkgaW1wb3J0YW50IGZvciBhIHBvc3NpYmxlIFJvYkU8LT5URk8gaW50ZWdyYXRpb24uDQoN
Cj4gMjogQWx0aG91Z2ggSSBhbSBub3Qgc3VyZSBhcyBJJ20gbm90IGFuIGltcGxlbWVudG9yLCBi
dXQgSSBmZWVsIGl0IGNvdWxkIGJlIGENCj4gYml0IHRyaWNreSB0byBpbXBsZW1lbnQgTVBfSk9J
Tl9DQVAgYXMgc2VydmVycyBjYW5ub3QgYmUgc3VyZSBpZiB0aGlzDQo+IHN1YmZsb3cgYmVjb21l
cyBwcmltYXJ5IG9yIHNlY29uZGFyeSB1bnRpbCBzZXZlcmFsIHBhY2tldHMgYXJlIGV4Y2hhbmdl
ZC4NCj4gKGFsc28sIEknbSBub3Qgc3VyZSBob3cgdG8gbWVyZ2UgY29ubmVjdGlvbnMgd2hlbiBU
Rk8gaXMgdXNlZC4pDQo+IA0KdW50aWwgTVBfSk9JTl9DQVAgb3IgdGhpcmQgTVBfQ0FQQUJMRSBp
cyByZWNlaXZlZCBhbGwgY29ubmVjdGlvbnMgYXJlIHBvdGVudGlhbCBtYXN0ZXIuDQpUaGUgcGF0
aCByZWNlaXZpbmcgTVBfSk9JTl9DQVAsIHRoZW4gd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBzdWJm
bG93Lg0KVGhhdCBhcmUgbm90IHNldmVyYWwgZXhjaGFuZ2VzIGJ1dCBvbmx5IG9uZSByb3VuZC10
cmlwLiwgY29tcGFyZWQgdG8gUkZDNjgyNChiaXMpIHRoZSBzYW1lIG9yIGV2ZW4gYmV0dGVyIGJl
Y2F1c2UgTVBfSk9JTiBpc24ndCBuZWNlc3NhcnkuDQpGcm9tIGFuIGltcGxlbWVudGF0aW9uIHBv
aW50IG9mIHZpZXcgdGhpcyBpcyByYXRoZXIgc2ltcGxlLg0KDQo+IDM6IEkgZ3Vlc3Mgd2UnbGwg
bmVlZCBhbm90aGVyIHN0ZXAgYWZ0ZXIgU0E2LjIgdG8gdmVyaWZ5IHRoZSByZXNwb25zZSBmcm9t
DQo+IGhvc3QgQi4NCg0Kbm8sIHdlIGRvbid0LiBkYXRhIGNhbiBiZSBzZW50IHRvZ2V0aGVyIHdp
dGggdGhlIE1QX0pPSU5fQ0FQIGFuZCBpbW1lZGlhdGVseSBhZnRlcndhcmRzLiBpZiBpdCBpcyBu
b3Qgc3VjY2Vzc2Z1bCwgZWl0aGVyIHdlIHJlY2VpdmUgYSBSU1QgKHN0YW5kYXJkIGNhc2UpIG9y
IHdlIHJ1biBpbnRvIGEgdGltZW91dCAoZXJyb3IgY2FzZSkuIEluIGJvdGggY2FzZXMgYSByZXRy
YW5zbWl0IG92ZXIgdGhlIGZpcnN0IHBhdGggaXMgZG9uZS4NCg0KPiDCoCDCoCBBbHNvLCBNUF9K
T0lOX0NBUCB3aWxsIHJlcXVpcmUgZXh0cmEgUlRUcyB3aGVuIHRoZSBvdGhlciBlbmQgZG9lc24n
dA0KPiBzdXBwb3J0IGl0LiAoYmVjYXVzZSBpdCB3aWxsIG5lZWQgdG8gc2VuZCBSU1QgYW5kIE1Q
X0pPSU4gdG8gZXN0YWJsaXNoIGENCj4gc3ViZmxvdykNCj4gDQp5ZXMsIGluZGVlZCB0aGlzIGlz
IGEgcHJvYmxlbS4gdGhlcmUgYXJlIHNldmVyYWwgcG9zc2liaWxpdGllcyB0byBhZGRyZXNzIHRo
YXQgcHJvYmxlbToNCmEpIG1vZGlmeSB0aGUgTVBfQ0FQQUJMRSwgYWRkaW5nIGFuIGV4dHJhIGJp
dCBpbiBzeW4vc3luLWFjay4gKGUuZy4gb25lIG9mIA0KICAgdGhlIEEtSCBiaXRzKS4NCiAgIGhv
d2V2ZXIgdGhpcyB2aW9sYXRlcyB0aGUgc3RhbmRhcmQsIGFuZCB0aHVzIHdpbGwgYmUgaW5jb21w
YXRpYmxlIHdpdGgNCiAgIGV4aXN0aW5nIGltcGxlbWVudGF0aW9ucyAtIHVubGVzcyBpdCBpcyBp
bnRyb2R1Y2VkIHRvZ2V0aGVyIHdpdGgNCiAgIHZlci4gMSAtIHdoaWNoIGFscmVhZHkgaXMgaW5j
b21wYXRpYmxlLCBzbyBpdCBkb2Vzbid0IG1hdHRlci4NCmIpIGlmIGludHJvZHVjZWQgdG9nZXRo
ZXIgd2l0aCB2ZXIuIDEgLSB3ZSBrbm93IHRoYXQgdGhlIHNlcnZlciBzdXBwb3J0cw0KICAgaXQg
aWYgaXQgc3VwcG9ydHMgdmVyLiAxIC0gaG93ZXZlciBpdCBzdGlsbCBtaWdodCBiZSBkZWFjdGl2
YXRlZC4NCmMpIGFkZCBhbiBleHRyYSBNUFRDUC1vcHRpb24uIA0KICAgaW4gdmVyc2lvbiAwLCB0
aGlzIGNhbiBleGhhdXN0IHRoZSB0Y3Agb3B0aW9uIHNwYWNlLg0KICAgaW4gdmVyc2lvbiAxLCAo
ZHVlIHRvIG1pc3Npbmcga2V5IGluZm8pIHRoaXMgaXMgZmVhc2libGUsIGlmIFRGTw0KICAgaXMg
bm90IGFjdGl2ZS4gd2l0aCBURk8gd2UgYWxyZWFkeSBoYXZlIHRoYXQgaW5mbywgYW4gZXh0cmEg
b3B0aW9uDQogICBpcyBub3QgbmVjZXNzYXJ5LiANCmQpIGNhY2hlIHRoYXQgaW5mb3JtYXRpb24s
IHNvIG9ubHkgdGhlIGZpcnN0IHRyeSBhZGRzIGFuIGV4dHJhIHJ0dC4NCiAgIGxhdGVyIG9uICh1
bnRpbCBjYWNoZSBleHBpcmF0aW9uKSB3ZSBkb24ndCB0cnkgZmFzdC1qb2luIGFnYWluLg0KZSkg
c2VuZGluZyBhbiBNUF9KT0lOX0NBUCArIHNlbmRpbmcgYW4gTVBfSk9JTiAobm90ZSB0aGUgam9p
biBpcyBhDQogICBuZXcgY29ubmVjdGlvbiByZXF1ZXN0IChTWU4pLCBidXQgY2FuIGJlIGFzc29j
aWF0ZWQgd2l0aCB0aGUNCiAgIE1QX0pPSU5fQ0FQIGJ5IHRoZSBrZXkvdG9rZW4pLg0KICAgLSBJ
biBjYXNlIHRoZSBNUF9KT0lOX0NBUCBzdWNjZWVkcywgdGhlIE1QX0pPSU4gaXMgaWdub3JlZC4N
CiAgIC0gSW4gY2FzZSBpdCBmYWlscywgdGhlIGpvaW4gaXMgaW5pdGlhdGVkIGJlZm9yZSB0aGUg
UlNUIGFycml2ZXMNCiAgICAgb24gc2VuZGVyIHNpdGUuIEF2b2lkaW5nIHRoZSBleHRyYSBSVFQs
IHdpdGggdGhlIGNvc3Qgb2YNCiAgICAgZXh0cmEgcGFja2V0cyBvbiB0aGUgd2lyZS4NCiAgIC0g
VGhlIHByb2JsZW0gd2l0aCByZW9yZGVyaW5nIG9uIHRoZSB3aXJlIChNUF9KT0lOIGFycml2ZXMg
YmVmb3JlDQogICAgIE1QX0pPSU5fQ0FQKSwgY2FuIGJlIGF2b2lkZWQgdXNpbmcgb25lIG9mIHRo
ZSB0aHJlZSByZXNlcnZlZCBiaXRzDQogICAgIGluIHRoZSBNUF9KT0lOLiBUaGVzZSBzaG91bGQg
YmUgaWdub3JlZCBieSBjdXJyZW50IGltcGxlbWVudGF0aW9ucy4NCmYpIGEgY29tYmluYXRpb24g
b2YgdGhvc2UgYWJvdmUuDQoNCj4gNDogSSB0ZW5kIHRvIHByZWZlciBqdXN0IHNlbmRpbmcgTVBf
Sk9JTiBhZnRlciBTQTYuMSBmb3Igc2ltcGxpY2l0eSBzbyBmYXIuIFdlDQo+IG1pZ2h0IGJlIGFi
bGUgdG8gZG8gZXZlcnl0aGluZyBpbiBhIHNoaW0gbGF5ZXIuDQo+IA0KT2YgY291cnNlIGl0IGlz
IHBvc3NpYmxlIHRvIGRvIGl0IGluIHR3byBzdGVwcy4gRmlyc3Qgb25seSByb2J1c3RuZXNzIGFu
ZCBsYXRlciBvbiBleHRlbmQgaXQgd2l0aCB0aGUgZmFzdC1qb2luIGFwcHJvYWNoLg0KQnV0IHdo
eSBhIHNoaW0tbGF5ZXIsIGRvIHlvdSBzdXNwZWN0IHNvbWUgaW5jb21wYXRpYmlsaXR5IGlzc3Vl
cz8gT3IgZG8geW91IGp1c3Qgd2FudCB0byBrZWVwIGl0IG91dCBvZiBNUFRDUD8gDQpCdXQgdGhl
biBub3RlOiBFdmVuIHRoYXQgc2hpbS1sYXllciBuZWVkcyBhIHBhdGgtbWFuYWdlbWVudC4gRWl0
aGVyIE1QVENQIGhhcyB0byBwcm92aWRlIGEgc3RhbmRhcmQgQVBJIHRvIGFjY2VzcyB0aGUgcGF0
aC1tYW5hZ2VtZW50IGZyb20gdGhlIG91dHNpZGUgd29ybGQuDQpPciBhIG5ldyBwYXRoLW1hbmFn
ZW1lbnQgaGFzIHRvIGJlIGRldmVsb3BlZCwgaW5jbHVkaW5nIGFkZHJlc3MtYWRkIGFuZCBhZGRy
ZXNzLXJlbW92ZS4gVGh1cyB5b3UgbmVlZCB0byBkZWZpbmUgYSBuZXcgcHJvdG9jb2wgKGVpdGhl
ciBleHRyYSBUQ1Atb3B0aW9ucyBvciBzb21lIG5ldyBJQ01QLXR5cGVzLi4uKS4gT25jZSBpbXBs
ZW1lbnRlZCB0aGUgcGF0aC1tYW5hZ2VtZW50IG91dHNpZGUgb2YgTVBUQ1AsIGl0IGRvZXNuJ3Qg
bWFrZSBzZW5zZSB0byBoYXZlIGEgc2Vjb25kIG9uZSBpbiBNUFRDUCBpdHNlbGYuDQpTbyB5b3Ug
Y2FuIHRocm93IGl0IG91dCwgYW5kIHVzZSB0aGUgcGF0aC1tYW5hZ2VtZW50IGZyb20gdGhlIG91
dHNpZGUgd29ybGQuDQpGb3Igc3VyZSBhbiBpbnRlcmVzdGluZyBhcHByb2FjaC4gSG93ZXZlciBp
dCBpcyBldmVyeXRoaW5nIGJ1dCBzaW1wbGUhDQoNCkZ1cnRoZXIgaGF2aW5nIFJvYkUgb3V0c2lk
ZSBvZiBNUFRDUCBtYWtlcyBpdCBpbXBvc3NpYmxlIHRvIGV4dGVuZCBpdCB3aXRoIHRoZSBmYXN0
LWpvaW4sIG9yIHlvdSBoYXZlIHRvIHByb3ZpZGUgc29tZSBleHRyYSBBUElzIGluIE1QVENQIHRv
IGVuYWJsZSB0aGUgZmFzdC1qb2luIGZyb20gb3V0c2lkZSENCg0KQlINCg0KTWFya3VzDQo+IC0t
DQo+IFlvc2hpDQo+IA0KPiBPbiBUdWUsIFNlcCAxOSwgMjAxNyBhdCAzOjAwIEFNLCA8bWFpbHRv
Ok1hcmt1cy5BbWVuZEB0ZWxla29tLmRlPg0KPiB3cm90ZToNCj4gRGVhciBhbGwsDQo+IA0KPiBh
bnkgY29tbWVudHMgdG8gbXkgcHJvcG9zYWwgZnJvbSB0d28gd2Vla3MgYWdvPw0KPiANCj4gQlIN
Cj4gDQo+IE1hcmt1cw0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZy
b206IEFtZW5kLCBNYXJrdXMNCj4gPiBTZW50OiBNb250YWcsIDQuIFNlcHRlbWJlciAyMDE3IDE0
OjE3DQo+ID4gVG86IG1haWx0bzptdWx0aXBhdGh0Y3BAaWV0Zi5vcmcNCj4gPiBTdWJqZWN0OiBS
RTogW211bHRpcGF0aHRjcF0gQSBwcm9wb3NhbCBmb3IgTVBUQ1AgUm9idXN0IHNlc3Npb24NCj4g
PiBFc3RhYmxpc2htZW50IChNUFRDUCBSb2JFKQ0KPiA+DQo+ID4gRGVhciBhbGwsDQo+ID4NCj4g
PiBCYXNlZCBvbiBmZWVkYmFjayBhdCBJRVRGOTksIHJlZ2FyZGluZyBNUFRDUCBSb2JFIHByb3Bv
c2FsDQo+ID4gKGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvbWVldGluZy85OS9tYXRlcmlh
bHMvc2xpZGVzLTk5LW1wdGNwLWEtDQo+ID4gcHJvcG9zYWwtZm9yLW1wdGNwLXJvYnVzdC1zZXNz
aW9uLWVzdGFibGlzaG1lbnQtbXB0Y3Atcm9iZSksIEkNCj4gY29tcGxldGVseQ0KPiA+IHJlY29u
c2lkZXIgdGhlIG9yaWdpbmFsIGFwcHJvYWNoLCBJIHByZXNlbnRlZC4gUmVtZW1iZXIsIHRoZQ0K
PiAiRG93bmdyYWRlIi0NCj4gPiBhcHByb2FjaCAoc2VlIHNsaWRlcykgd2FzIHByZWZlcnJlZCBm
cm9tIG15IHNpZGUsIGJlY2F1c2UgaXQgY29tYmluZXMNCj4gPiByb2J1c3RuZXNzIGFuZCBhIGh1
Z2UgbGF0ZW5jeSByZWR1Y3Rpb24uDQo+ID4NCj4gPiBUaGUgbWFpbiBmZWVkYmFjayBJIGdvdCB3
YXM6DQo+ID4NCj4gPsKgIMKgKDEpIFJlbHlpbmcgb24gU1lOLUtleS1BIGFzIGlkZW50aWZpZXIg
dG8gY29tYmluZSBwb3RlbnRpYWwgaW5pdGlhbCBmbG93cywNCj4gcmFpc2UNCj4gPiBzZXZlcmFs
IGlzc3Vlcw0KPiA+wqAgwqAgwqAoMS4xKSBub3QgYXZhaWxhYmxlIGluIFJGQzY4MjRiaXMgYW55
bW9yZQ0KPiA+wqAgwqAgwqAoMS4yKSBzZWN1cml0eSwgYmVjYXVzZQ0KPiA+wqAgwqAgwqAgwqAg
wqAoMS4yLjEpIEtleS1BIGlzIHRyYW5zbWl0dGVkIG1hbnkgdGltZXMNCj4gPsKgIMKgIMKgIMKg
IMKgKDEuMi4yKSBjYW4gYmUgYWJ1c2VkIGJ5IGFjY2lkZW50L2ludGVuZA0KPiA+wqAgwqAoMikg
U2VwYXJhdGUgcm9idXN0bmVzcyBhbmQgbGF0ZW5jeSBmdW5jdGlvbmFsaXR5DQo+ID7CoCDCoCgz
KSBUbyBtdWNoIGNvbXB1dGluZyByZXNvdXJjZXMgbmVlZGVkIG9uIHJlY2VpdmVyIHNpZGUgdG8g
ZGV0ZWN0DQo+ID4gZHVwbGljYXRlIEtleS1BDQo+ID7CoCDCoCg0KSBEbyBpdCBpbiB0aGUgYXBw
bGljYXRpb24gbGF5ZXIgbGlicmFyeSAoYnVpbGQgYSBzaGltIGxheWVyKTsgbm90IGluIHRoZQ0K
PiA+IE1QVENQIHN0YW5kYXJkIGFuZC9vciBpbXBsZW1lbnRhdGlvbiB0byByZWR1Y2UgY29tcGxl
eGl0eQ0KPiA+DQo+ID4gV2l0aCB0aGUgZm9sbG93aW5nIHJld29ya2VkIHByb3Bvc2FsIChiYXNl
ZCBvbiB0aGUgIkRvd25ncmFkZSINCj4gYXBwcm9hY2gsDQo+ID4gc2VlIHNsaWRlcyksIEkgdHJ5
IHRvIGFkZHJlc3MgYWxsIG9mIHRoZSBwb2ludHMgYWJvdmUuDQo+ID4NCj4gPiBXaXRoIEZpZy4g
MSwgdGhlIGZsb3cgZGlhZ3JhbSBmb3IgdGhlIG5ldyBwcm9wb3NhbCBpcyBkZXBpY3RlZC4gSXQg
aXMgcmVmZXJyZWQNCj4gPiB0byBNUFRDUCB2ZXJzaW9uIDAsIGJ1dCBzaG91bGQgYmUgZXF1aXZh
bGVudCB0byBwcm9iYWJsZSB2ZXJzaW9uIDENCj4gPiAoUkZDNjI4NGJpcyksIGp1c3Qgd2l0aG91
dCBhIFNZTi1NUF9DQVBBQkxFIGNvbnRhaW5pbmcgS2V5LUEuDQo+ID4gVG8gcmVhY2ggcm9idXN0
bmVzcywgc2V2ZXJhbCBzZXBhcmF0ZSBNUFRDUCBpbml0aWFsIGZsb3dzIGFyZSBpbml0aWF0ZWQg
YXQNCj4gdGhlDQo+ID4gYmVnaW5uaW5nLCBpbiB0aGUgZm9sbG93aW5nIGRlbm90ZWQgYXMgInBv
dGVudGlhbCBpbml0aWFsIGZsb3dzIi4gSW4gc3RlcCBTQTENCj4gPiBhbmQgU0EyLCByZXNwZWN0
aXZlbHkgU0IzIGFuZCBTQjQsIHN0YW5kYXJkIE1QVENQIGluaXRpYWwgZmxvdyBwcm9jZWR1cmUg
aXMNCj4gPiBhcHBsaWVkLCBzbyBubyBjaGFuZ2Ugc28gZmFyLiBXaXRoIG9jY3VycmluZyBTQTMv
U0E0IHRoZSByZXF1ZXN0ZXIgIkhvc3QNCj4gQSINCj4gPiBoYXMgdG8gZGVjaWRlIHdoaWNoIHBv
dGVudGlhbCBpbml0aWFsIGZsb3cgd2lsbCBiZSB1c2VkIGZ1cnRoZXIgYXMgaW5pdGlhbCBmbG93
DQo+ID4gKGUuZy4gdGhlIGZpcnN0IHdoaWNoIHJldHVybnMpIGFuZCB3aGF0IHNoYWxsIGhhcHBl
biB3aXRoIHRoZSBvdGhlcg0KPiBwb3RlbnRpYWwNCj4gPiBmbG93cy4gRWl0aGVyIGl0IGNhbiBi
cmVhayBhbGwgYnV0IG9uZSAoZS5nLiBzZW5kaW5nIFJTVCBhdCBTQTYuMSkgT1IgcmVjeWNsZQ0K
PiA+IHRoZW0gKHN0ZXAgU0E2LjIpLiBUaGVyZWJ5LCBpdCBpcyBhIGZ1bGwgY2xpZW50IHNpZGUg
ZGVjaXNpb24gdG8gdXNlIHJvYnVzdG5lc3MNCj4gPiBvbmx5IG9yIGJlbmVmaXQgZnJvbSBsYXRl
bmN5IHJlZHVjdGlvbiBhcyB3ZWxsIGFuZCBjYW4gYmUgdG9nZ2xlZA0KPiBzZXBhcmF0ZWx5DQo+
ID4gYnkgZS5nLiBzeXNjdGwgZ2xvYmFsbHkgYW5kL29yIHNvY2tldCBvcHRpb24uDQo+ID4gVW50
aWwgU0E2LjEsIGl0IGRvZXNuJ3QgcmVxdWlyZSBhbnkgTVBUQ1Agc3RhbmRhcmQgbW9kaWZpY2F0
aW9uIQ0KPiA+DQo+ID7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEhvc3QgQcKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIEhvc3QgQg0KPiA+wqAgwqAgwqAg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0twqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAtLS0tLS0tLS0tDQo+ID7CoCDCoCDCoCBBZGRyZXNzIEExwqAgwqAgQWRkcmVzcyBBMsKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQWRkcmVzcyBCMQ0KPiA+wqAgwqAgwqAgLS0t
LS0tLS0tLcKgIMKgIC0tLS0tLS0tLS3CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oC0tLS0tLS0tLS0NCj4gPsKgIMKgIMKgIMKgIMKgIHzCoCDCoCDCoCDCoCDCoCDCoCDCoHzCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCB8DQo+ID7CoCDCoCDC
oCDCoCDCoCB8wqAgwqAgwqAgwqAgwqAgwqAgU1lOICsgTVBfQ0FQQUJMRShLZXktQSnCoCDCoCDC
oCDCoCDCoCDCoHwNCj4gPsKgIChTQTEpwqAgwqB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tPnzCoCAoU0IxKQ0KPiA+wqAgwqAgwqAgwqAgwqAgfMKgIMKgIMKg
IMKgIMKgIMKgIMKgfMKgIMKgIFNZTiArIE1QX0NBUEFCTEUoS2V5LUEnKcKgIMKgIHwNCj4gPsKg
IChTQTIpwqAgwqB8wqAgwqAgwqAgwqAgwqAgwqAgwqB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLT58wqAgKFNCMikNCj4gPsKgIMKgIMKgIMKgIMKgIHzCoCDCoCDCoCDCoCDCoCDCoCDC
oHzCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCB8DQo+ID7C
oCAoU0EzKcKgIMKgfDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS18wqAgKFNCMykNCj4gPsKgIMKgIMKgIMKgIMKgIHzCoCDCoCDCoCDCoCDCoCBTWU4vQUNLICsg
TVBfQ0FQQUJMRShLZXktQinCoCDCoCDCoCDCoCDCoHwNCj4gPsKgIChTQTQpwqAgwqB8wqAgwqAg
wqAgwqAgwqAgwqAgwqB8PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18wqAgKFNCNCkN
Cj4gPsKgIMKgIMKgIMKgIMKgIHzCoCDCoCDCoCDCoCDCoCDCoCDCoHzCoCDCoFNZTi9BQ0sgKyBN
UF9DQVBBQkxFKEtleS1CJykgfA0KPiA+wqAgwqAgwqAgwqAgwqAgfMKgIMKgIMKgIMKgIMKgIMKg
IMKgfMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHwNCj4g
PsKgIMKgIMKgIMKgIMKgIHzCoCDCoCDCoCDCoCBBQ0sgKyBNUF9DQVBBQkxFKEtleS1BLCBLZXkt
QinCoCDCoCDCoCDCoCB8DQo+ID7CoCAoU0E1KcKgIMKgfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58wqAgKFNCNSkNCj4gPsKgIMKgIMKgIMKgIMKgIHzCoCDC
oCDCoCDCoCDCoCDCoCDCoHzCoCDCoCDCoCDCoCDCoCDCoCDCoFJTVMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIHwNCj4gPsKgIChTQTYuMSkgfMKgIMKgIMKgIMKgIMKgIMKgIMKgfC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0+fMKgIChTQjYuMSkNCj4gPiByb2J1c3TCoCDCoHzCoCDCoCDC
oCDCoCDCoCDCoCDCoHzCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCB8DQo+ID4gbmVzc8KgIMKgIMKgfMKgIMKgIMKgIMKgIMKgIMKgIMKgfMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHwNCj4gPiAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+
ID4gbGF0ZW5jecKgIHzCoCDCoCDCoCDCoCDCoCDCoCDCoHzCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCB8DQo+ID4gcmVkLsKgIMKgIMKgfMKgIMKgIMKgIMKg
IMKgIMKgIMKgfCBBQ0sgKyBNUF9KT0lOX0NBUChLZXktQSwgSE1BQykgfA0KPiA+wqAgKFNBNi4y
KSB8wqAgwqAgwqAgwqAgwqAgwqAgwqB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT58
wqAgKFNCNi4yKQ0KPiA+DQo+ID7CoCDCoCBLZXktQl9mYXN0X2hhc2ggPSBjcmMxNihLZXktQikg
JiAweDNGRsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLT4gKDEwYml0KQ0KPiA+wqAgwqAgSE1BQ19r
ZXlzID3CoCBITUFDKEtleS1BK0tleS1CK0tleS1CJynCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAt
PiAoPj05NmJpdCkNCj4gPsKgIMKgIEhNQUMgPcKgIChITUFDX2tleXMgJiB+MHgzRkYpIHwgS2V5
LUJfZmFzdF9oYXNowqAgwqAgwqAgwqAtPiAoc2l6ZSBzYW1lIGFzDQo+ID4gSE1BQ19rZXlzKQ0K
PiA+DQo+ID4gRmlndXJlIDE6IEV4YW1wbGUgVXNlIG9mIE1QVENQIFJvYkUgKGZvciBNUFRDUCB2
ZXJzaW9uIDApDQo+ID4NCj4gPiBGb3Igbm90IHdhc3RpbmcgcmVzb3VyY2VzIGJ5IGJyZWFraW5n
IGFsbCBidXQgb25lIGFuZCBiZW5lZml0IGluIGFkZGl0aW9uDQo+ID4gZnJvbSBhIGh1Z2UgbGF0
ZW5jeSByZWR1Y3Rpb24gKHNlZSBNUFRDUCBSb2JFIHByb3Bvc2FsLCBwLjEyLDE0KzE1LDE3KSwN
Cj4gPiBvbmUgY2FuIG1ha2UgdXNlIG9mIGEgbmV3IHByb3Bvc2VkIE1QVENQIG9wdGlvbiAiTVBf
Sk9JTl9DQVAiLA0KPiA+IGlsbHVzdHJhdGVkIGluIEZpZy4gMi4gQWNjb3JkaW5nIHRvIEZpZy4g
MSwgQTE8LT5CMSBpcyBhc3N1bWVkIGFzIGluaXRpYWwgZmxvdyBhdA0KPiA+IFNBMyBhbmQgQTI8
LT5CMSBzaGFsbCBiZSByZWN5Y2xlZCBhdCBTQTYuMiAoU0E2LjEgaXMgc2tpcHBlZCB0aGVyZWZv
cmUpLg0KPiA+IEluc3RlYWQgb2Ygc2VuZGluZyBhbiBNUF9DQVBBQkxFIGluIHRoZSB0aGlyZCBB
Q0ssIGFuIE1QX0pPSU5fQ0FQIGlzDQo+ID4gc2VudCwgd2hpY2ggaW5jbHVkZXMgS2V5LUEgb2Yg
dGhlIHNlbGVjdGVkIGluaXRpYWwgZmxvdyBBMTwtPkIxIGFuZCBhbg0KPiBITUFDLA0KPiA+IGNv
ZGluZyBLZXktQSwgS2V5LUIsIEtleS1CJyBpbiBhIGRldGVybWluZWQgd2F5IChzZWUgRmlnLiAx
IGJvdHRvbSkuDQo+ID4NCj4gPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIDHCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoDLCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDMNCj4g
PsKgIDAgMSAyIDMgNCA1IDYgNyA4IDkgMCAxIDIgMyA0IDUgNiA3IDggOSAwIDEgMiAzIDQgNSA2
IDcgOCA5IDAgMQ0KPiA+ICstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0r
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rDQo+ID4gfMKgIMKgIMKgS2luZMKgIMKgIMKgIHzCoCDC
oCBMZW5ndGjCoCDCoCDCoHxTdWJ0eXBlfMKgIMKgIMKgIMKgfMKgIMKgIEFERFJfSUTCoCDCoCB8
DQo+ID4gKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLSsNCj4gPiB8wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgU2VuZGVy
J3MgS2V5LUEgKDY0IGJpdHMpwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqB8DQo+ID4gfMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgfA0KPiA+IHzCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHwNCj4gPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+IHzCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBITUFDICg+PTk2IGJpdHMpwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqB8DQo+ID4gfMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgfA0KPiA+IHzCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHwN
Cj4gPiA6wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqA6DQo+ID4gKy0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSsNCj4gPiBGaWd1cmUgMjogTXVsdGlwYXRoIEpvaW4gQ2FwYWJsZSAoTVBfSk9JTl9DQVApIE9w
dGlvbiAoZm9yIFRoaXJkDQo+ID4gTVBfQ0FQQUJMRSBBQ0spDQo+ID4NCj4gPiBGb3IgdGhlIE1Q
X0NBUEFCTEUsIEFERFJfSUQgaXMgc2V0IHRvIHplcm8gKGxpa2UgUkZDNjgyNCkgYW5kIGZvcg0K
PiA+IE1QX0pPSU5fQ0FQIGl0IGlzIHNlbnQgd2l0aC4NCj4gPg0KPiA+IFdoaWNoIGJvdW5kYXJ5
IGNvbmRpdGlvbnMgY2FuIGhhcHBlbjoNCj4gPg0KPiA+IDEuIExpa2UgRmlnLiAxLCBBMTwtPkIx
IGlzIGFzc3VtZWQgYXMgaW5pdGlhbCBmbG93IGFuZCBNUF9DQVBBQkxFIHJlY2VpdmVzDQo+ID4g
Zmlyc3QgYXQgSG9zdCBCIChTQjUpLCBBMjwtPkIxIHNoYWxsIGJlIHJlY3ljbGVkIGFuZCBBQ0sg
aXMgc2VudCB3aXRoDQo+ID4gTVBfSk9JTl9DQVANCj4gPsKgIMKgIElmIE1QX0pPSU5fQ0FQIGlz
IHJlY2VpdmVkIGl0IGhhcyB0byBpdGVyYXRlIG9uY2UgKGxpa2UgTVBfSk9JTikgdGhlDQo+ID4g
Y29ubmVjdGlvbiBsaXN0IGFuZCBjaGVjayBmb3IgS2V5LUEgYXZhaWxhYmlsaXR5LiBJZiBhIEtl
eS1BIGNvbm5lY3Rpb24gaXMNCj4gPiBmb3VuZCwgaXQgaXMgdmFsaWRhdGVkIGFnYWluc3QgSE1B
QyB2YWx1ZS4gVGhlIHZhbGlkYXRpb24gaGFzIHR3byByZWFzb25zLA0KPiA+IGZpcnN0bHkgc2V2
ZXJhbCBLZXktQSBjYW4gZXhpc3QsIGJlY2F1c2UgZGlmZmVyZW50IEhvc3RzIGNob29zZSBzYW1l
IEtleS1BDQo+IGJ5DQo+ID4gYWNjaWRlbnQuIEZ1cnRoZXJtb3JlIG5vIG9uZSBjYW4gam9pbiBh
IGNvbm5lY3Rpb24gYnkganVzdA0KPiByZWNvcmRpbmcvYnJ1dGUtDQo+ID4gZm9yY2luZyBLZXkt
QSBhbmQgZHVwbGljYXRlIHRoZSByZXF1ZXN0LiAoc29sdmVzIHBvaW50ICgxKSBmcm9tIHRoZQ0K
PiBmZWVkYmFjaykNCj4gPg0KPiA+IDIuIExpa2UgMS4sIGJ1dCBNUF9KT0lOX0NBUCBhcnJpdmVz
IGJlZm9yZSB0aGUgTVBfQ0FQQUJMRSBhdCBIb3N0IEINCj4gPg0KPiA+wqAgwqAgwqAyLjEgZHJh
ZnQtaWV0Zi1tcHRjcC1yZmM2ODI0YmlzLTA5DQo+ID7CoCDCoCDCoCDCoCDCoEJhc2VkIG9uIEtl
eS1BLCBpdCB3aWxsIGl0ZXJhdGUgb3ZlciB0aGUgY29ubmVjdGlvbiBsaXN0LCBidXQgaXQgd2ls
bCBub3QNCj4gPiBtYXRjaCwgYmVjYXVzZSBLZXktQSBmcm9tIGZvcm1lcmx5IHNlbGVjdGVkIGlu
aXRpYWwgZmxvdyBoYXNuJ3QgYXJyaXZlZCB5ZXQuDQo+ID4gU28gaXQgd2lsbCBjb250aW51ZSB3
aXRoIGEgZmFzdCBpdGVyYXRlIG9ubHkgb3ZlciB0aGUgY29ubmVjdGlvbnMsIHdoaWNoIGFyZQ0K
PiBzdGlsbA0KPiA+IGluIGVzdGFibGlzaG1lbnQgcGhhc2UsIHVzaW5nIHRoZSAxMGJpdCBLZXkt
Ql9mYXN0X2hhc2ggKGNyYzE2KEtleS1CKSAmDQo+ID4gMHgzRkYpLiBJZiBpdCBtYXRjaGVzIGFn
YWluc3QgYSAocHJlY29tcHV0ZWQpIGV4aXN0aW5nIEtleS1CX2Zhc3RfaGFzaCBpbg0KPiB0aGUN
Cj4gPiBjb25uZWN0aW9uIGxpc3QsIGl0IHdpbGwgdmFsaWRhdGUgd2l0aCB0aGUgSE1BQyhLZXkt
QStLZXktQitLZXktQicpIGFnYWluDQo+IHRvDQo+ID4gZW5zdXJlIGxlZ2l0aW1hdGlvbi4gSWYg
c3VjY2Vzc2Z1bCwgYm90aCwgdGhlIGluaXRpYWwgZmxvdyBhbmQgdGhlDQo+IE1QX0pPSU5fQ0FQ
DQo+ID4gZmxvdywgY2FuIGJlIGltbWVkaWF0ZWx5IGVzdGFibGlzaGVkLiBUaGlzIGlzIHRydWUs
IGJlY2F1c2Ugd2l0aG91dCB0aGUNCj4gPiBrbm93bGVkZ2Ugb2YgS2V5LUIsIEhvc3QgQSBjb3Vs
ZG4ndCBjYWxjdWxhdGUgdGhlIEhNQUMuIFNvIGl0IGlzIGNsZWFyLCB0aGF0DQo+ID4gaG9zdCBB
IGhhZCByZWNlaXZlZCB0aGUgU1lOL0FDSyAoU0IzKS4NCj4gPiBUaGlzIGFsc28gbWl0aWdhdGVz
IHRoZSByZXF1aXJlbWVudCBvZiBhIHJlbGlhYmxlIEFDSyAoZHJhZnQtaWV0Zi1tcHRjcC0NCj4g
PiByZmM2ODI0YmlzLTA5LCBwLjE1KSBleGNoYW5nZSwgYmVjYXVzZSBvbmx5IG9uZQ0KPiA+IE1Q
X0NBUEFCTEUvTVBfSk9JTl9DQVAgbmVlZHMgdG8gcmVhY2ggcmVjZWl2ZXIgc2lkZS4NCj4gPg0K
PiA+wqAgwqAgwqAyLjIgTVBUQ1AgdmVyc2lvbiAwIChSRkM2ODI0KQ0KPiA+wqAgwqAgwqAgwqAg
wqBDYW4gbWF0Y2ggYmFzZWQgb24gS2V5LUEsIGxpa2UgMS4sIHNhbWUgZWZmb3J0IGFzIGZvciBh
IE1QX0pPSU4uDQo+ID4NCj4gPiAzLiBBMjwtPkIxIGlzIHNlbGVjdGVkIGFzIGluaXRpYWwgZmxv
dywgYmVjYXVzZSBhY2NvcmRpbmcgU1lOL0FDSyByZXR1cm5zDQo+ID4gZWFybGllciBhdCBIb3N0
IEEuDQo+ID7CoCDCoCDCoEl0IGlzIHRoZSBzYW1lIGFzIDEuIGFuZCAyLiwganVzdCB0aGUgb3Ro
ZXIgd2F5IHJvdW5kIDotKQ0KPiA+DQo+ID4gV2l0aCB0aGVzZSBib3VuZGFyeSBjb25kaXRpb25z
IGl0IGhhcyBiZWVuIHNob3duLCB0aGF0IG5vIGFkZGl0aW9uYWwNCj4gPiBjb21wdXRpbmcgcmVz
b3VyY2VzIGFyZSByZXF1aXJlZCAoc2VlIGZlZWRiYWNrICgzKSksIGNvbXBhcmVkIHRvIHRvZGF5
cw0KPiA+IE1QVENQLCB3aXRoIGEgbWluaW1hbCBleGNlcHRpb24gb2YgMi4xLg0KPiA+DQo+ID4g
V2l0aCBzdWNoIGEgc2ltcGxlIGFwcHJvYWNoLCBhbmQgYnkgYWRkaW5nIGFuIGluY29uc3BpY3Vv
dXMgc2ltcGxlDQo+IE1QVENQDQo+ID4gb3B0aW9uIE1QX0pPSU5fQ0FQLCBNUFRDUCB3b3VsZCBi
ZSBleHRlbmRlZCB0b3dhcmRzIHJvYnVzdG5lc3MgYW5kDQo+IGlmDQo+ID4gZGVzaXJlZCwgbGF0
ZW5jeSByZWR1Y3Rpb24gY2FuIGJlIGVuYWJsZWQgb24gdG9wLCBidXQgb2J2aW91c2x5IHJlcXVp
cmVzDQo+ID4gcmVjZWl2ZXIgc3VwcG9ydC4gTmVnb3RpYXRpb24gaXMgaW5oZXJlbnRseSBnaXZl
biBieSB0aGUgbmV3DQo+IE1QX0pPSU5fQ0FQDQo+ID4gd2hpY2ggaXMgZWl0aGVyIGFjY2VwdGVk
IG9yIG5vdC4gSWYgbm90LCB0aGUgc3RhbmRhcmQgTVBfSk9JTiBwcm9jZXNzIGNhbg0KPiBiZQ0K
PiA+IGFwcGxpZWQuDQo+ID4NCj4gPiBCZWNhdXNlIG9mIHN1Y2ggYSBzaW1wbGljaXR5IGFuZCB0
aGUgbWFzc2l2ZSBiZW5lZml0IGJ5IG9wdGlvbmFsIGxhdGVuY3kNCj4gPiByZWR1Y3Rpb24sIEkg
c3RpbGwgYmVsaWV2ZSBpdCBmaXRzIGJlc3QgaW4gdGhlIE1QVENQIGxheWVyIGl0c2VsZiBhbmQg
bm90IGluIGFuDQo+ID4gYXBwbGljYXRpb24gc2hpbSBsYXllciAoc2VlIGZlZWRiYWNrICg0KSku
DQo+ID4NCj4gPiBEdWUgdG8gdGhlIHNlcGFyYXRpb24gb2Ygcm9idXN0bmVzcyBhbmQgbGF0ZW5j
eSByZWR1Y3Rpb24gZnVuY3Rpb25hbGl0eSwgaXQNCj4gPiBvZmZlcnMgdGhlIGNoYW5jZSB0byBp
bXBsZW1lbnQgInJvYnVzdG5lc3MiIGluIHBsYWluIFRDUCBhcyB3ZWxsLiBJdCBjb3VsZA0KPiA+
IGxvb2sgdGhlIHNhbWUgbGlrZSBpbiBGaWcuIDEsIChTQTEpLShTQTYuMSksIGp1c3Qgd2l0aG91
dCBNUF9DQVBBQkxFDQo+IG9wdGlvbi4NCj4gPiBCdXQgYmUgYXdhcmUsIGl0IG5lZWRzIHNvbWUg
a2luZCBvZiBwYXRoIG1hbmFnZW1lbnQsIHdoaWNoIGlzIGFscmVhZHkNCj4gPiBwcmVzZW50IGlu
IE1QVENQLCBidXQgbm90IGluIFRDUC4gRnVydGhlcm1vcmUgSSBhc3N1bWUgInJvYnVzdG5lc3Mi
IGlzIGENCj4gPiB0b3BpYyBtb3JlIHJlbGF0ZWQgdG8gdGFwcyB3b3JraW5nIGdyb3VwLCB3aGVy
ZWFzICJsYXRlbmN5IHJlZHVjdGlvbiIgaXMNCj4gPiByZWxhdGVkIHRvIE1QVENQIG9idmlvdXNs
eSBhbmQgZGVwZW5kcyBvbiAicm9idXN0bmVzcyIhDQo+ID4NCj4gPiBCUg0KPiA+DQo+ID4gTWFy
a3VzDQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+
IG11bHRpcGF0aHRjcCBtYWlsaW5nIGxpc3QNCj4gbWFpbHRvOm11bHRpcGF0aHRjcEBpZXRmLm9y
Zw0KPiBodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFuL2xpc3RpbmZvL211bHRpcGF0aHRjcA0K
DQo=


From david.pradas@toulouse.viveris.com  Thu Oct 26 01:20:44 2017
Return-Path: <david.pradas@toulouse.viveris.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1E13F13A9F5 for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 01:20:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qFZ_88yNKlVE for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 01:20:41 -0700 (PDT)
Received: from mailS.toulouse.viveris.com (mail.toulouse.viveris.com [212.99.125.10]) by ietfa.amsl.com (Postfix) with ESMTP id DE77613A25A for <multipathtcp@ietf.org>; Thu, 26 Oct 2017 01:20:16 -0700 (PDT)
Received: from hp (unknown [172.20.5.75]) by mailS.toulouse.viveris.com (Postfix) with ESMTPA id 6BEE1AC0095; Thu, 26 Oct 2017 10:20:01 +0200 (CEST)
From: David Pradas <david.pradas@toulouse.viveris.com>
To: multipathtcp@ietf.org
Cc: Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, fabrice.arnal@thalesaleniaspace.com,  SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>
Message-ID: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
Date: Thu, 26 Oct 2017 10:19:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------ACF2508570F481F58EE2940E"
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/tMDBt16OrjvBA0pgmUKfy6sX2z8>
X-Mailman-Approved-At: Thu, 26 Oct 2017 01:45:25 -0700
Subject: [multipathtcp]  MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 26 Oct 2017 08:32:50 -0000

This is a multi-part message in MIME format.
--------------ACF2508570F481F58EE2940E
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Dear All,

We contact you regarding the MPTCP implementation (v0.92) and some 
problems we have encountered in a specific use case (transparent 
sockets). We will try to summarise the context of our study, as well as 
the problem and the solutions we propose to solve it.

The objective of the study has been to work on a MPTCP-PEP proxy, where 
the proxy (PEPsalimplementation) splits the TCP connection and, with 
MPTCP, aggregates two link (satellite and terrestrial). We have also 
focused on other scenarios (e.g. PEPsal only on the satellite link), but 
we prefer to discuss only the one presented in the figure below:

While trying to put together our implementation of PEPsal (transparent 
proxy) in a MPTCPcompliant kernel, we had to face a problem with the 
MPTCP implementation due to the transparent socketsusedin PEPsal. After 
carefully reading the MPTCP code, we discovered that when opening new 
subflows (using the fullmesh algorithm), first it is checked if the IP 
address of the main subflow corresponds to any of the network interfaces 
on the machine. This presents a problem when working with transparent 
sockets, since these sockets can be bound to external IP addresses, not 
present on the machine. In this case, the MPTCP implementation falls 
back to a classical TCP connection, which is not the behaviour wetarget.

We assume such behaviour of  MPTCP implementation was a deliberate 
choice (e.g. for security concerns). Is it actually the main driver ? 
Could such compatibility with transparent proxying be acceptable for 
subsequent MPTCP versions ?
We have proceeded to such code modification, and we are happy to share 
it with you, for review and possible integration in the main MPTCP code. 
You may decide for instance if this feature shall be implemented under 
all circumstances, or restricted to a certain mode only (e.g. activated 
through a control option, sysctl command, ... ).

Secondly,we have carried out some performances tests with applications 
such as HTTP (measuring the page load time) or file transfer over TCP, 
and we have observed that MPTCP outperforms (or equals) the case where 
only one access is used (terrestrial or satellite), specially under 
congestion conditions. That being said, we expect to further work on 
this issue, mainly assessing (1) the performance of MPTCP schedulers 
with such large asymmetry, (2) the performance of the different coupled 
congestion control in our use-case and (3) consider the relevance of the 
second sub-flow opening (mainly for short flows). Do not hesitate to let 
us know if you have any interest in collaborating in this future work.

We attached herein the modification we used, which allows MPTCP to work 
when using transparent sockets.

We would be glad to discuss with you about this subject.

Best Regards,

David PRADAS
Joaquin MUGUERZA


--------------------//_

_//
diff --git a/net/mptcp/mptcp_fullmesh.c b/net/mptcp/mptcp_fullmesh.c
index 1e5b753..665560a 100644
--- a/net/mptcp/mptcp_fullmesh.c
+++ b/net/mptcp/mptcp_fullmesh.c
@@ -629,6 +629,38 @@ static void update_addr_bitfields(struct sock 
*meta_sk,
         }
  }

+static int mptcp_find_address_transp(const struct mptcp_loc_addr 
*mptcp_local,
+                             sa_family_t family, const union inet_addr 
*addr,
+                             int if_idx)
+{
+       int i;
+       u8 loc_bits;
+       bool found = false;
+
+       if (family == AF_INET)
+               loc_bits = mptcp_local->loc4_bits;
+       else
+               loc_bits = mptcp_local->loc6_bits;
+
+       mptcp_for_each_bit_set(loc_bits, i) {
+               if (family == AF_INET &&
+                   (!if_idx || mptcp_local->locaddr4[i].if_idx == 
if_idx)) {
+                       found = true;
+                       break;
+               }
+               if (family == AF_INET6 &&
+                   (!if_idx || mptcp_local->locaddr6[i].if_idx == 
if_idx)) {
+                       found = true;
+                       break;
+               }
+       }
+
+       if (!found)
+               return -1;
+
+       return i;
+}
+
  static int mptcp_find_address(const struct mptcp_loc_addr *mptcp_local,
                               sa_family_t family, const union inet_addr 
*addr,
                               int if_idx)
@@ -1271,9 +1303,18 @@ static void full_mesh_new_session(const struct 
sock *meta_sk)
         rcu_read_lock();
         mptcp_local = rcu_dereference(fm_ns->local);

-       index = mptcp_find_address(mptcp_local, family, &saddr, if_idx);
-       if (index < 0)
+       if(inet_sk(meta_sk)->transparent) {
+               mptcp_debug("Meta socket is transparent");
+               index = mptcp_find_address_transp(mptcp_local, family, 
&saddr, if_idx);
+       }
+       else {
+               mptcp_debug("Meta socket is NOT transparent");
+               index = mptcp_find_address(mptcp_local, family, &saddr, 
if_idx);
+       }
+       if (index < 0) {
+               mptcp_debug("Falling back");
                 goto fallback;
+       }

         if (family == AF_INET)
                 master_tp->mptcp->low_prio = 
mptcp_local->locaddr4[index].low_prio;

--------------------//
////////

--------------ACF2508570F481F58EE2940E
Content-Type: multipart/related;
 boundary="------------C21E9FE054BC92F47EA83BFB"


--------------C21E9FE054BC92F47EA83BFB
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">Dear All, </span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">We contact you regarding the MPTCP implementation
        (v0.92) and some problems we have encountered in a specific use
        case (transparent sockets). We will try to summarise the context
        of our study, as well as the problem and the solutions we
        propose to solve it.</span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">The objective of the study has been to work on a
        MPTCP-PEP proxy, where the proxy (PEPsal</span><span
        style="font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;;"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">implementation) splits the TCP connection and, with
        MPTCP, aggregates two link (satellite and terrestrial). </span><span
        style="font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;;"
        lang="EN-US">We have also focused on other scenarios (e.g.
        PEPsal only on the satellite link), but we prefer to discuss
        only the one presented in the figure below:</span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US"> <img
          src="cid:part1.4B06FCD9.282C03E8@toulouse.viveris.com" alt=""
          height="168" width="727"></span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">While trying to put together our implementation of
        PEPsal (transparent proxy) in a MPTCP</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">compliant kernel, we had to face a problem with the
        MPTCP implementation due to the transparent sockets</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">used</span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">in PEPsal. After carefully reading the MPTCP code,
        we discovered that when opening new subflows (using the fullmesh
        algorithm), first it is checked if the IP address of the main
        subflow corresponds to any of the network interfaces on the
        machine. This presents a problem when working with transparent
        sockets, since these sockets can be bound to external IP
        addresses, not present on the machine. In this case, the MPTCP
        implementation falls back to a classical TCP connection, which
        is not the behaviour we</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">target.<br>
        <br>
      </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">We
        assume such behaviour of  MPTCP implementation was a deliberate
        choice (e.g. for security concerns). Is it actually the main
        driver ? Could such compatibility with transparent proxying be
        acceptable for subsequent MPTCP versions ? <br>
        We have proceeded to such code modification, and we are happy to
        share it with you, for review and possible integration in the
        main MPTCP code. You may decide for instance if this feature
        shall be implemented under all circumstances, or </span><span
        style="font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;;">restricted
        to </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">a
        certain mode only (</span><span style="font-family:
        &quot;Calibri&quot;,&quot;sans-serif&quot;;">e.g. activated </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">through
        a control option, sysctl command, ... ).</span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">Secondly,</span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
        lang="EN-US"> </span><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
        lang="EN-US">we have carried out some performances tests with
        applications such as HTTP (measuring the page load time) or file
        transfer over TCP, and we have observed that MPTCP outperforms
        (or equals) the case where only one access is used (terrestrial
        or satellite), specially under congestion conditions. That being
        said, we expect to further work on this issue, mainly assessing
        (1) the performance of MPTCP schedulers with such large
        asymmetry, (2) the performance of the different coupled
        congestion control in our use-case and (3) consider the
        relevance of the second sub-flow opening (mainly for short
        flows). Do not hesitate to let us know if you have any interest
        in collaborating in this future work.<br>
        <br>
        We attached herein the modification we used, which allows MPTCP
        to work when using transparent sockets. <br>
        <br>
        We would be glad to discuss with you about this subject.</span></p>
    <p><span
        style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">Best
        Regards,</span></p>
    <p><font face="Calibri,sans-serif"><span
          style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"><font
            face="Calibri,sans-serif">David</font> <font
            face="Calibri,sans-serif">PRADAS</font><br>
          <font face="Calibri,sans-serif">Joaquin MUGUERZA<br>
          </font></span></font></p>
    <span style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"></span>
    <div class="moz-signature"><font size="2"><br>
        --------------------<i><i><u><br>
              <br>
            </u></i></i></font><br>
      diff --git a/net/mptcp/mptcp_fullmesh.c
      b/net/mptcp/mptcp_fullmesh.c <br>
      index 1e5b753..665560a 100644 <br>
      --- a/net/mptcp/mptcp_fullmesh.c <br>
      +++ b/net/mptcp/mptcp_fullmesh.c <br>
      @@ -629,6 +629,38 @@ static void update_addr_bitfields(struct sock
      *meta_sk, <br>
              } <br>
       } <br>
      <br>
      +static int mptcp_find_address_transp(const struct mptcp_loc_addr
      *mptcp_local, <br>
      +                             sa_family_t family, const union
      inet_addr *addr, <br>
      +                             int if_idx) <br>
      +{ <br>
      +       int i; <br>
      +       u8 loc_bits; <br>
      +       bool found = false; <br>
      + <br>
      +       if (family == AF_INET) <br>
      +               loc_bits = mptcp_local-&gt;loc4_bits; <br>
      +       else <br>
      +               loc_bits = mptcp_local-&gt;loc6_bits; <br>
      + <br>
      +       mptcp_for_each_bit_set(loc_bits, i) { <br>
      +               if (family == AF_INET &amp;&amp; <br>
      +                   (!if_idx || mptcp_local-&gt;locaddr4[i].if_idx
      == if_idx)) { <br>
      +                       found = true; <br>
      +                       break; <br>
      +               } <br>
      +               if (family == AF_INET6 &amp;&amp; <br>
      +                   (!if_idx || mptcp_local-&gt;locaddr6[i].if_idx
      == if_idx)) { <br>
      +                       found = true; <br>
      +                       break; <br>
      +               } <br>
      +       } <br>
      + <br>
      +       if (!found) <br>
      +               return -1; <br>
      + <br>
      +       return i; <br>
      +} <br>
      + <br>
       static int mptcp_find_address(const struct mptcp_loc_addr
      *mptcp_local, <br>
                                    sa_family_t family, const union
      inet_addr *addr, <br>
                                    int if_idx) <br>
      @@ -1271,9 +1303,18 @@ static void full_mesh_new_session(const
      struct sock *meta_sk)
      <br>
              rcu_read_lock(); <br>
              mptcp_local = rcu_dereference(fm_ns-&gt;local); <br>
      <br>
      -       index = mptcp_find_address(mptcp_local, family,
      &amp;saddr, if_idx); <br>
      -       if (index &lt; 0) <br>
      +       if(inet_sk(meta_sk)-&gt;transparent) { <br>
      +               mptcp_debug("Meta socket is transparent"); <br>
      +               index = mptcp_find_address_transp(mptcp_local,
      family, &amp;saddr, if_idx);
      <br>
      +       } <br>
      +       else { <br>
      +               mptcp_debug("Meta socket is NOT transparent"); <br>
      +               index = mptcp_find_address(mptcp_local, family,
      &amp;saddr, if_idx); <br>
      +       } <br>
      +       if (index &lt; 0) { <br>
      +               mptcp_debug("Falling back"); <br>
                      goto fallback; <br>
      +       } <br>
      <br>
              if (family == AF_INET) <br>
                      master_tp-&gt;mptcp-&gt;low_prio =
      mptcp_local-&gt;locaddr4[index].low_prio;
      <p> </p>
      --------------------<span style="font-size:10.0pt"><i> </i></span><br>
      <font size="2"><i><i>
          </i></i></font><i><i>
        </i></i></div>
  </body>
</html>

--------------C21E9FE054BC92F47EA83BFB
Content-Type: image/png;
 name="jdbhjdpheonpopmg.png"
Content-Transfer-Encoding: base64
Content-ID: <part1.4B06FCD9.282C03E8@toulouse.viveris.com>
Content-Disposition: inline;
 filename="jdbhjdpheonpopmg.png"

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
d8+eB/fv3eO+8/gRDzv75rcLo69eterE8aOiIoIKcrIqSgrS0lL6+ro2VhZmpsYKcnK6Olpa
mho62lp2ttYO9raqKsoOdjZ2tlY6OtqGBnoG+np2djY+Xh7GRgYHD3L88cfc//3vfwsWLAgK
CvqU48/KzNQxtEwrbeGR1lI1cVd6XmwRXJIYH+fx7HlUZOTbJUiYFN2T5nAISctp2NjaV1QN
7X4SVCrVxNg46UWKlbXtzdu37z3mExIjXLly+c6d+7d5H9jbaopfu8K6Zae8qmZZ2WAXC/Wo
piGPJhQGKOpzl3D4NxOu5sDEAQZkvK1BmFOrnnUP0X1bPN5UZBN8YUMUHE+CJWGAngF63t0I
99HZWF6wLhoelgKK+ALniMuoKpGAguAHr+b/eTX/z7sFlw8WrxbkSUKhgMJwGWUlGpBJ9o+C
drusE24ltbFGwTi/N3WdRXnv2juvFY4ldleevYbQ9byFlxeg5/BnEFxKheD6d28vooByIfxC
fJPnfgkEzhS4Glg6T9EH8dogtWgUO9K/6F4lGlAQLA4ibYls/TdidJfo9n3x1PRmurS0tJS0
JGmISe7S5TO5eWOqTY6psLBIT1//ibSUqoqSqbGBkJDAtatXrl+7snHjhq1bt54+ffIgx4E/
5sxhhrm/Fi26cIFLUIBv3969GzZsOH+eS1ZGWkdbw9zMRE9XR19Xx8TYyMhQX1NDTU1VxdLC
zMhQ39TU2NraMojo//yZq5qq0vFjx2bOmIEQ2rhxo52dXX5+/qccfEFBgYauWWpJk5CikYKe
vUtMtU9SdXZ2dnhYRHxCclNzK4VKJ7fRKO00Sgdd0ilh+n4RkSeq5uZW+QUFQ9oRlUo1MTEp
Ki555uHJ/YDnJvf9qzdu3rhx8xzXeY5Dh27cvM5x4MDW3QeV1HXKB5/kaugosFMpvyOpqfMz
l0Z6QmPX5awhTJhCXjDRB04ng1Yx7ImD6f7wg++7p8b5APKGib4wPQBmEOGXQPgjCH4JhCn+
MH7AJLcsAbxqGUmN9M9/jrj0VxIaO63KOkxLO8y+YrEr7+BMpCA/6mSv5tl+LbP9SbgMUOb4
k5YEt/4TTMJlVJUVEdRfTFKQgD0SclymGXQtqIw7hbYmEqYGAGs0FFGgvgMaaNBEg2YaFFHA
vQZEcmFFxCAqWE9AHvAbEc6lQEQDFFFArwT2xMHMAJgdDMcSGY+TWvbYJU+XcEcCDkjS61/j
8BGvSXqVxMZO7vR2lrDWdWGtLKO7rA2n7IhpT23qlJaWlpSSIJErd+/ZJvtU9BtPcgDQ2dmZ
np4uLy8vJiZqbKhnbKAnIS7Gefr0wgUL5s/7c9eunVznzv23Y8f+ffu4uM6xs7OvXvPG6tWr
165dy87Ozs/H6/Xc3dXZ0djI0NrKQkFeTltbw8rCzMzUyM7WxtXF2czU+PSpU7Nnz0YI/fHH
H0JCQqmpqVVVVT1vZT0MxcXF6trGLwrrZXRsRZWMDAOKtX2KEpPSArw9woICG1/X0+l0SltH
c2tbQwtFn5j5wwGxRxIqZibmaWnpQ9oRlUo1NTXLzMq2d3CUkZV7+Jj3Fvc9Xl7+m7fuXLp8
hZeX7zQn55ad+xRUtcrLyga5TeY4OZ/aLzIpoAtAtgBm9R0k1/efnjDOGzZGgWPVuxv/OVTC
/OA3vag7Y6GuA0h0aKLB6w543QG5reBaA5IvYU88TBlgFU0f2JkOzkV4caRvn1cNfXlw66KQ
tsWBpMVBuAxYAklLg0lLg3AZXWVlJPUXkxQk5IhEnJGQ42SC60rtkHthFbzJrYcTGNsTYXUU
zAuF6USY5A/TA2BOEMwkdl/xDnCR7N3difEc0HOYGgCLwmBxOLDEwIUEqmBi4yHHtF9lPZCw
ExJyQqIuSMbvoGXkSP+g+0FnQCudQe4EcidjNJdWOoPSCZ0MBoFAkJSSbGmt2Ltvh7yCeH1j
3jee5JgoFEpsXJyysjJBVFRfV9vO1kpeTvbUyRNr1qz5778dx48d+++//9jY2NatW7d+/Xrm
xIj169ezsLAsX76cjY1NUVHe0d7G2dHBytLCxNjQ1MTI1sbq+TNXMxOjixcu/PXXXwihSZMm
nThxIjg4uKqqqrGxsX2I0w76Ki8vV9c2Ssip0rJ8foFPScmzyDC4yie2wNIj1sIrPjqrLruq
I6+WXlhPL23ock95Pe644jURZXNTi+iYmCHtiEqlGhsbZ+XkmppbPOR5dPf+g9v37t/lvnfp
8lWuCxfvcnMfOXJkA/sOBVXNoSW5LzZ3lQHgX0vfnNJ7lcuf/AE9f28e1vIwUCp8t7BIJwOC
6uFkEoz3AeQFUwPeDPLo6LHeX1IznEqGSb7v9yP0aZCbFgh3sxg8vkNehxkbi8ooXZmkrmxS
Jy6DKF24jLZSQoX7vplI2heJuiBRFyTsjISdxgk7/aHoe8gp9XZI+dWohpMJtH3JsDEOlkbA
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
AAAAAElFTkSuQmCC
--------------C21E9FE054BC92F47EA83BFB--

--------------ACF2508570F481F58EE2940E--


From nobody Thu Oct 26 02:00:03 2017
Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CD9D513F44D for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 02:00:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.607
X-Spam-Level: 
X-Spam-Status: No, score=-2.607 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cGufSZoruSlw for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 01:59:59 -0700 (PDT)
Received: from orange.com (mta240.mail.business.static.orange.com [80.12.66.40]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6C66913ACAB for <multipathtcp@ietf.org>; Thu, 26 Oct 2017 01:59:59 -0700 (PDT)
Received: from opfedar00.francetelecom.fr (unknown [xx.xx.xx.11]) by opfedar21.francetelecom.fr (ESMTP service) with ESMTP id 0382E100965; Thu, 26 Oct 2017 10:59:58 +0200 (CEST)
Received: from Exchangemail-eme2.itn.ftgroup (unknown [xx.xx.31.42]) by opfedar00.francetelecom.fr (ESMTP service) with ESMTP id C619F18003F; Thu, 26 Oct 2017 10:59:57 +0200 (CEST)
Received: from OPEXCLILMA3.corporate.adroot.infra.ftgroup ([fe80::60a9:abc3:86e6:2541]) by OPEXCLILM41.corporate.adroot.infra.ftgroup ([fe80::c845:f762:8997:ec86%19]) with mapi id 14.03.0361.001; Thu, 26 Oct 2017 10:59:57 +0200
From: <mohamed.boucadair@orange.com>
To: David Pradas <david.pradas@toulouse.viveris.com>, "multipathtcp@ietf.org" <multipathtcp@ietf.org>
CC: Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>, "fabrice.arnal@thalesaleniaspace.com" <fabrice.arnal@thalesaleniaspace.com>, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>
Thread-Topic: [multipathtcp]  MPTCP transparent proxy
Thread-Index: AQHTTjbHK3tKcoKEXUCrCj76PWITMKL101Kw
Date: Thu, 26 Oct 2017 08:59:56 +0000
Message-ID: <787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
In-Reply-To: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [10.168.234.4]
Content-Type: multipart/related; boundary="_004_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_"; type="multipart/alternative"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/E5S8fXFonG76C1FINu1eYFcAETA>
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 26 Oct 2017 09:00:02 -0000

--_004_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_
Content-Type: multipart/alternative;
	boundary="_000_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_"

--_000_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

RGVhciBEYXZpZCwgYWxsLA0KDQpUaGFuayB5b3UgZm9yIHNoYXJpbmcgdGhpcyBpbmZvcm1hdGlv
bi4gWW91IG1heSB3YW50IHRvIGRpcmVjdCB0aGlzIG1lc3NhZ2UgdG8gdGhlIG1haW50YWluZXJz
IG9mIHRoZSBNUFRDUCBpbXBsZW1lbnRhdGlvbiB5b3UgbWVudGlvbmVkLg0KDQpJIGhhdmUgc29t
ZSBhcmNoaXRlY3R1cmFsIHF1ZXN0aW9uczogSXMgdGhlcmUgYW55IHJlYXNvbiB3aHkgeW91IGRl
Y2lkZWQgdG8gdXNlIHRoZSB0cmFuc3BhcmVudCBwcm94eSBtb2RlPyBEaWQgeW91IGNvbnNpZGVy
ZWQgdG8gdXNlIHRoZSBleHBsaWNpdCBtb2RlPyBIb3cgZG8geW91IGVuc3VyZSB0aGF0IHRoZSBw
cm94eSB3aWxsIGJlIG9uLXBhdGggd2hhdGV2ZXIgdGhlIGxpbmsgeW91IHVzZSB0byBwbGFjZSB0
aGUgZmlyc3Qgc3ViZmxvdz8NCg0KVGhhbmsgeW91Lg0KDQpDaGVlcnMsDQpNZWQNCg0KRGUgOiBt
dWx0aXBhdGh0Y3AgW21haWx0bzptdWx0aXBhdGh0Y3AtYm91bmNlc0BpZXRmLm9yZ10gRGUgbGEg
cGFydCBkZSBEYXZpZCBQcmFkYXMNCkVudm95w6kgOiBqZXVkaSAyNiBvY3RvYnJlIDIwMTcgMTA6
MjANCsOAIDogbXVsdGlwYXRodGNwQGlldGYub3JnDQpDYyA6IEpvYXF1aW4gTXVndWVyemE7IGZh
YnJpY2UuYXJuYWxAdGhhbGVzYWxlbmlhc3BhY2UuY29tOyBLdWhuIE5pY29sYXM7IEVtbWFudWVs
IER1Ym9pczsgU0FMTEFOVElOIFJlbmF1ZDsgUmlhZGggRGhhb3U7IEZBU1NPTiBKdWxpZW4NCk9i
amV0IDogW211bHRpcGF0aHRjcF0gTVBUQ1AgdHJhbnNwYXJlbnQgcHJveHkNCg0KDQpEZWFyIEFs
bCwNCg0KV2UgY29udGFjdCB5b3UgcmVnYXJkaW5nIHRoZSBNUFRDUCBpbXBsZW1lbnRhdGlvbiAo
djAuOTIpIGFuZCBzb21lIHByb2JsZW1zIHdlIGhhdmUgZW5jb3VudGVyZWQgaW4gYSBzcGVjaWZp
YyB1c2UgY2FzZSAodHJhbnNwYXJlbnQgc29ja2V0cykuIFdlIHdpbGwgdHJ5IHRvIHN1bW1hcmlz
ZSB0aGUgY29udGV4dCBvZiBvdXIgc3R1ZHksIGFzIHdlbGwgYXMgdGhlIHByb2JsZW0gYW5kIHRo
ZSBzb2x1dGlvbnMgd2UgcHJvcG9zZSB0byBzb2x2ZSBpdC4NCg0KVGhlIG9iamVjdGl2ZSBvZiB0
aGUgc3R1ZHkgaGFzIGJlZW4gdG8gd29yayBvbiBhIE1QVENQLVBFUCBwcm94eSwgd2hlcmUgdGhl
IHByb3h5IChQRVBzYWwgaW1wbGVtZW50YXRpb24pIHNwbGl0cyB0aGUgVENQIGNvbm5lY3Rpb24g
YW5kLCB3aXRoIE1QVENQLCBhZ2dyZWdhdGVzIHR3byBsaW5rIChzYXRlbGxpdGUgYW5kIHRlcnJl
c3RyaWFsKS4gV2UgaGF2ZSBhbHNvIGZvY3VzZWQgb24gb3RoZXIgc2NlbmFyaW9zIChlLmcuIFBF
UHNhbCBvbmx5IG9uIHRoZSBzYXRlbGxpdGUgbGluayksIGJ1dCB3ZSBwcmVmZXIgdG8gZGlzY3Vz
cyBvbmx5IHRoZSBvbmUgcHJlc2VudGVkIGluIHRoZSBmaWd1cmUgYmVsb3c6DQoNCiBbY2lkOmlt
YWdlMDAyLmpwZ0AwMUQzNEU0OS44RUVBNUY2MF0NCg0KV2hpbGUgdHJ5aW5nIHRvIHB1dCB0b2dl
dGhlciBvdXIgaW1wbGVtZW50YXRpb24gb2YgUEVQc2FsICh0cmFuc3BhcmVudCBwcm94eSkgaW4g
YSBNUFRDUCBjb21wbGlhbnQga2VybmVsLCB3ZSBoYWQgdG8gZmFjZSBhIHByb2JsZW0gd2l0aCB0
aGUgTVBUQ1AgaW1wbGVtZW50YXRpb24gZHVlIHRvIHRoZSB0cmFuc3BhcmVudCBzb2NrZXRzIHVz
ZWQgaW4gUEVQc2FsLiBBZnRlciBjYXJlZnVsbHkgcmVhZGluZyB0aGUgTVBUQ1AgY29kZSwgd2Ug
ZGlzY292ZXJlZCB0aGF0IHdoZW4gb3BlbmluZyBuZXcgc3ViZmxvd3MgKHVzaW5nIHRoZSBmdWxs
bWVzaCBhbGdvcml0aG0pLCBmaXJzdCBpdCBpcyBjaGVja2VkIGlmIHRoZSBJUCBhZGRyZXNzIG9m
IHRoZSBtYWluIHN1YmZsb3cgY29ycmVzcG9uZHMgdG8gYW55IG9mIHRoZSBuZXR3b3JrIGludGVy
ZmFjZXMgb24gdGhlIG1hY2hpbmUuIFRoaXMgcHJlc2VudHMgYSBwcm9ibGVtIHdoZW4gd29ya2lu
ZyB3aXRoIHRyYW5zcGFyZW50IHNvY2tldHMsIHNpbmNlIHRoZXNlIHNvY2tldHMgY2FuIGJlIGJv
dW5kIHRvIGV4dGVybmFsIElQIGFkZHJlc3Nlcywgbm90IHByZXNlbnQgb24gdGhlIG1hY2hpbmUu
IEluIHRoaXMgY2FzZSwgdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIGZhbGxzIGJhY2sgdG8gYSBj
bGFzc2ljYWwgVENQIGNvbm5lY3Rpb24sIHdoaWNoIGlzIG5vdCB0aGUgYmVoYXZpb3VyIHdlIHRh
cmdldC4NCg0KV2UgYXNzdW1lIHN1Y2ggYmVoYXZpb3VyIG9mICBNUFRDUCBpbXBsZW1lbnRhdGlv
biB3YXMgYSBkZWxpYmVyYXRlIGNob2ljZSAoZS5nLiBmb3Igc2VjdXJpdHkgY29uY2VybnMpLiBJ
cyBpdCBhY3R1YWxseSB0aGUgbWFpbiBkcml2ZXIgPyBDb3VsZCBzdWNoIGNvbXBhdGliaWxpdHkg
d2l0aCB0cmFuc3BhcmVudCBwcm94eWluZyBiZSBhY2NlcHRhYmxlIGZvciBzdWJzZXF1ZW50IE1Q
VENQIHZlcnNpb25zID8NCldlIGhhdmUgcHJvY2VlZGVkIHRvIHN1Y2ggY29kZSBtb2RpZmljYXRp
b24sIGFuZCB3ZSBhcmUgaGFwcHkgdG8gc2hhcmUgaXQgd2l0aCB5b3UsIGZvciByZXZpZXcgYW5k
IHBvc3NpYmxlIGludGVncmF0aW9uIGluIHRoZSBtYWluIE1QVENQIGNvZGUuIFlvdSBtYXkgZGVj
aWRlIGZvciBpbnN0YW5jZSBpZiB0aGlzIGZlYXR1cmUgc2hhbGwgYmUgaW1wbGVtZW50ZWQgdW5k
ZXIgYWxsIGNpcmN1bXN0YW5jZXMsIG9yIHJlc3RyaWN0ZWQgdG8gYSBjZXJ0YWluIG1vZGUgb25s
eSAoZS5nLiBhY3RpdmF0ZWQgdGhyb3VnaCBhIGNvbnRyb2wgb3B0aW9uLCBzeXNjdGwgY29tbWFu
ZCwgLi4uICkuDQoNClNlY29uZGx5LCB3ZSBoYXZlIGNhcnJpZWQgb3V0IHNvbWUgcGVyZm9ybWFu
Y2VzIHRlc3RzIHdpdGggYXBwbGljYXRpb25zIHN1Y2ggYXMgSFRUUCAobWVhc3VyaW5nIHRoZSBw
YWdlIGxvYWQgdGltZSkgb3IgZmlsZSB0cmFuc2ZlciBvdmVyIFRDUCwgYW5kIHdlIGhhdmUgb2Jz
ZXJ2ZWQgdGhhdCBNUFRDUCBvdXRwZXJmb3JtcyAob3IgZXF1YWxzKSB0aGUgY2FzZSB3aGVyZSBv
bmx5IG9uZSBhY2Nlc3MgaXMgdXNlZCAodGVycmVzdHJpYWwgb3Igc2F0ZWxsaXRlKSwgc3BlY2lh
bGx5IHVuZGVyIGNvbmdlc3Rpb24gY29uZGl0aW9ucy4gVGhhdCBiZWluZyBzYWlkLCB3ZSBleHBl
Y3QgdG8gZnVydGhlciB3b3JrIG9uIHRoaXMgaXNzdWUsIG1haW5seSBhc3Nlc3NpbmcgKDEpIHRo
ZSBwZXJmb3JtYW5jZSBvZiBNUFRDUCBzY2hlZHVsZXJzIHdpdGggc3VjaCBsYXJnZSBhc3ltbWV0
cnksICgyKSB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIGRpZmZlcmVudCBjb3VwbGVkIGNvbmdlc3Rp
b24gY29udHJvbCBpbiBvdXIgdXNlLWNhc2UgYW5kICgzKSBjb25zaWRlciB0aGUgcmVsZXZhbmNl
IG9mIHRoZSBzZWNvbmQgc3ViLWZsb3cgb3BlbmluZyAobWFpbmx5IGZvciBzaG9ydCBmbG93cyku
IERvIG5vdCBoZXNpdGF0ZSB0byBsZXQgdXMga25vdyBpZiB5b3UgaGF2ZSBhbnkgaW50ZXJlc3Qg
aW4gY29sbGFib3JhdGluZyBpbiB0aGlzIGZ1dHVyZSB3b3JrLg0KDQpXZSBhdHRhY2hlZCBoZXJl
aW4gdGhlIG1vZGlmaWNhdGlvbiB3ZSB1c2VkLCB3aGljaCBhbGxvd3MgTVBUQ1AgdG8gd29yayB3
aGVuIHVzaW5nIHRyYW5zcGFyZW50IHNvY2tldHMuDQoNCldlIHdvdWxkIGJlIGdsYWQgdG8gZGlz
Y3VzcyB3aXRoIHlvdSBhYm91dCB0aGlzIHN1YmplY3QuDQoNCkJlc3QgUmVnYXJkcywNCg0KRGF2
aWQgUFJBREFTDQpKb2FxdWluIE1VR1VFUlpBDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCg0K
ZGlmZiAtLWdpdCBhL25ldC9tcHRjcC9tcHRjcF9mdWxsbWVzaC5jIGIvbmV0L21wdGNwL21wdGNw
X2Z1bGxtZXNoLmMNCmluZGV4IDFlNWI3NTMuLjY2NTU2MGEgMTAwNjQ0DQotLS0gYS9uZXQvbXB0
Y3AvbXB0Y3BfZnVsbG1lc2guYw0KKysrIGIvbmV0L21wdGNwL21wdGNwX2Z1bGxtZXNoLmMNCkBA
IC02MjksNiArNjI5LDM4IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9hZGRyX2JpdGZpZWxkcyhzdHJ1
Y3Qgc29jayAqbWV0YV9zaywNCiAgICAgICAgfQ0KIH0NCg0KK3N0YXRpYyBpbnQgbXB0Y3BfZmlu
ZF9hZGRyZXNzX3RyYW5zcChjb25zdCBzdHJ1Y3QgbXB0Y3BfbG9jX2FkZHIgKm1wdGNwX2xvY2Fs
LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FfZmFtaWx5X3QgZmFtaWx5LCBjb25z
dCB1bmlvbiBpbmV0X2FkZHIgKmFkZHIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgaWZfaWR4KQ0KK3sNCisgICAgICAgaW50IGk7DQorICAgICAgIHU4IGxvY19iaXRzOw0KKyAg
ICAgICBib29sIGZvdW5kID0gZmFsc2U7DQorDQorICAgICAgIGlmIChmYW1pbHkgPT0gQUZfSU5F
VCkNCisgICAgICAgICAgICAgICBsb2NfYml0cyA9IG1wdGNwX2xvY2FsLT5sb2M0X2JpdHM7DQor
ICAgICAgIGVsc2UNCisgICAgICAgICAgICAgICBsb2NfYml0cyA9IG1wdGNwX2xvY2FsLT5sb2M2
X2JpdHM7DQorDQorICAgICAgIG1wdGNwX2Zvcl9lYWNoX2JpdF9zZXQobG9jX2JpdHMsIGkpIHsN
CisgICAgICAgICAgICAgICBpZiAoZmFtaWx5ID09IEFGX0lORVQgJiYNCisgICAgICAgICAgICAg
ICAgICAgKCFpZl9pZHggfHwgbXB0Y3BfbG9jYWwtPmxvY2FkZHI0W2ldLmlmX2lkeCA9PSBpZl9p
ZHgpKSB7DQorICAgICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7DQorICAgICAgICAg
ICAgICAgICAgICAgICBicmVhazsNCisgICAgICAgICAgICAgICB9DQorICAgICAgICAgICAgICAg
aWYgKGZhbWlseSA9PSBBRl9JTkVUNiAmJg0KKyAgICAgICAgICAgICAgICAgICAoIWlmX2lkeCB8
fCBtcHRjcF9sb2NhbC0+bG9jYWRkcjZbaV0uaWZfaWR4ID09IGlmX2lkeCkpIHsNCisgICAgICAg
ICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsNCisgICAgICAgICAgICAgICAgICAgICAgIGJy
ZWFrOw0KKyAgICAgICAgICAgICAgIH0NCisgICAgICAgfQ0KKw0KKyAgICAgICBpZiAoIWZvdW5k
KQ0KKyAgICAgICAgICAgICAgIHJldHVybiAtMTsNCisNCisgICAgICAgcmV0dXJuIGk7DQorfQ0K
Kw0KIHN0YXRpYyBpbnQgbXB0Y3BfZmluZF9hZGRyZXNzKGNvbnN0IHN0cnVjdCBtcHRjcF9sb2Nf
YWRkciAqbXB0Y3BfbG9jYWwsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYV9mYW1p
bHlfdCBmYW1pbHksIGNvbnN0IHVuaW9uIGluZXRfYWRkciAqYWRkciwNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBpZl9pZHgpDQpAQCAtMTI3MSw5ICsxMzAzLDE4IEBAIHN0YXRp
YyB2b2lkIGZ1bGxfbWVzaF9uZXdfc2Vzc2lvbihjb25zdCBzdHJ1Y3Qgc29jayAqbWV0YV9zaykN
CiAgICAgICAgcmN1X3JlYWRfbG9jaygpOw0KICAgICAgICBtcHRjcF9sb2NhbCA9IHJjdV9kZXJl
ZmVyZW5jZShmbV9ucy0+bG9jYWwpOw0KDQotICAgICAgIGluZGV4ID0gbXB0Y3BfZmluZF9hZGRy
ZXNzKG1wdGNwX2xvY2FsLCBmYW1pbHksICZzYWRkciwgaWZfaWR4KTsNCi0gICAgICAgaWYgKGlu
ZGV4IDwgMCkNCisgICAgICAgaWYoaW5ldF9zayhtZXRhX3NrKS0+dHJhbnNwYXJlbnQpIHsNCisg
ICAgICAgICAgICAgICBtcHRjcF9kZWJ1ZygiTWV0YSBzb2NrZXQgaXMgdHJhbnNwYXJlbnQiKTsN
CisgICAgICAgICAgICAgICBpbmRleCA9IG1wdGNwX2ZpbmRfYWRkcmVzc190cmFuc3AobXB0Y3Bf
bG9jYWwsIGZhbWlseSwgJnNhZGRyLCBpZl9pZHgpOw0KKyAgICAgICB9DQorICAgICAgIGVsc2Ug
ew0KKyAgICAgICAgICAgICAgIG1wdGNwX2RlYnVnKCJNZXRhIHNvY2tldCBpcyBOT1QgdHJhbnNw
YXJlbnQiKTsNCisgICAgICAgICAgICAgICBpbmRleCA9IG1wdGNwX2ZpbmRfYWRkcmVzcyhtcHRj
cF9sb2NhbCwgZmFtaWx5LCAmc2FkZHIsIGlmX2lkeCk7DQorICAgICAgIH0NCisgICAgICAgaWYg
KGluZGV4IDwgMCkgew0KKyAgICAgICAgICAgICAgIG1wdGNwX2RlYnVnKCJGYWxsaW5nIGJhY2si
KTsNCiAgICAgICAgICAgICAgICBnb3RvIGZhbGxiYWNrOw0KKyAgICAgICB9DQoNCiAgICAgICAg
aWYgKGZhbWlseSA9PSBBRl9JTkVUKQ0KICAgICAgICAgICAgICAgIG1hc3Rlcl90cC0+bXB0Y3At
Pmxvd19wcmlvID0gbXB0Y3BfbG9jYWwtPmxvY2FkZHI0W2luZGV4XS5sb3dfcHJpbzsNCg0KDQot
LS0tLS0tLS0tLS0tLS0tLS0tLQ0K

--_000_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPCEtLVtp
ZiAhbXNvXT48c3R5bGU+dlw6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kb1w6KiB7
YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0
I1ZNTCk7fQ0KLnNoYXBlIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9DQo8L3N0eWxlPjwh
W2VuZGlmXS0tPjxzdHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNl
DQoJe2ZvbnQtZmFtaWx5OldpbmdkaW5nczsNCglwYW5vc2UtMTo1IDAgMCAwIDAgMCAwIDAgMCAw
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6V2luZ2RpbmdzOw0KCXBhbm9zZS0xOjUgMCAw
IDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDYWxpYnJpOw0KCXBh
bm9zZS0xOjIgMTUgNSAyIDIgMiA0IDMgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
VGFob21hOw0KCXBhbm9zZS0xOjIgMTEgNiA0IDMgNSA0IDQgMiA0O30NCi8qIFN0eWxlIERlZmlu
aXRpb25zICovDQpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21h
cmdpbjowY207DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJ
Zm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjpibGFjazt9DQph
OmxpbmssIHNwYW4uTXNvSHlwZXJsaW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xv
cjpibHVlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KYTp2aXNpdGVkLCBzcGFuLk1z
b0h5cGVybGlua0ZvbGxvd2VkDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpwdXJw
bGU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQpwDQoJe21zby1zdHlsZS1wcmlvcml0
eTo5OTsNCgltc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGNtOw0KCW1z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvOw0KCW1hcmdpbi1sZWZ0OjBjbTsNCglmb250LXNpemU6
MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7DQoJY29sb3I6
YmxhY2s7fQ0KcC5Nc29MaXN0UGFyYWdyYXBoLCBsaS5Nc29MaXN0UGFyYWdyYXBoLCBkaXYuTXNv
TGlzdFBhcmFncmFwaA0KCXttc28tc3R5bGUtcHJpb3JpdHk6MzQ7DQoJbWFyZ2luLXRvcDowY207
DQoJbWFyZ2luLXJpZ2h0OjBjbTsNCgltYXJnaW4tYm90dG9tOjBjbTsNCgltYXJnaW4tbGVmdDoz
Ni4wcHQ7DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9u
dC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpzcGFu
LkVtYWlsU3R5bGUxOA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1yZXBseTsNCglmb250LWZh
bWlseToiQ291cmllciBOZXciOw0KCWNvbG9yOmJsYWNrOw0KCWZvbnQtd2VpZ2h0Om5vcm1hbDsN
Cglmb250LXN0eWxlOm5vcm1hbDt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpl
eHBvcnQtb25seTsNCglmb250LXNpemU6MTAuMHB0O30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtz
aXplOjYxMi4wcHQgNzkyLjBwdDsNCgltYXJnaW46NzAuODVwdCA3MC44NXB0IDcwLjg1cHQgNzAu
ODVwdDt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi8qIExpc3Qg
RGVmaW5pdGlvbnMgKi8NCkBsaXN0IGwwDQoJe21zby1saXN0LWlkOjE5NDc5MzA4NzY7DQoJbXNv
LWxpc3QtdHlwZTpoeWJyaWQ7DQoJbXNvLWxpc3QtdGVtcGxhdGUtaWRzOi0xMzEyMTU0MTEyIDE5
MTk2ODkxMDggNjc4OTUyOTkgNjc4OTUzMDEgNjc4OTUyOTcgNjc4OTUyOTkgNjc4OTUzMDEgNjc4
OTUyOTcgNjc4OTUyOTkgNjc4OTUzMDE7fQ0KQGxpc3QgbDA6bGV2ZWwxDQoJe21zby1sZXZlbC1z
dGFydC1hdDowOw0KCW1zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwt
dGV4dDrvgrc7DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1w
b3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0xOC4wcHQ7DQoJZm9udC1mYW1pbHk6U3ltYm9s
Ow0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJbXNvLWJpZGktZm9udC1mYW1p
bHk6IlRpbWVzIE5ldyBSb21hbiI7fQ0KQGxpc3QgbDA6bGV2ZWwyDQoJe21zby1sZXZlbC1udW1i
ZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDpvOw0KCW1zby1sZXZlbC10YWItc3Rv
cDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDot
MTguMHB0Ow0KCWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7fQ0KQGxpc3QgbDA6bGV2ZWwzDQoJ
e21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgqc7DQoJ
bXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0
Ow0KCXRleHQtaW5kZW50Oi0xOC4wcHQ7DQoJZm9udC1mYW1pbHk6V2luZ2RpbmdzO30NCkBsaXN0
IGwwOmxldmVsNA0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVs
LXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXIt
cG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotMTguMHB0Ow0KCWZvbnQtZmFtaWx5OlN5bWJv
bDt9DQpAbGlzdCBsMDpsZXZlbDUNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0K
CW1zby1sZXZlbC10ZXh0Om87DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxldmVs
LW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0xOC4wcHQ7DQoJZm9udC1mYW1p
bHk6IkNvdXJpZXIgTmV3Ijt9DQpAbGlzdCBsMDpsZXZlbDYNCgl7bXNvLWxldmVsLW51bWJlci1m
b3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6
bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LTE4
LjBwdDsNCglmb250LWZhbWlseTpXaW5nZGluZ3M7fQ0KQGxpc3QgbDA6bGV2ZWw3DQoJe21zby1s
ZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgrc7DQoJbXNvLWxl
dmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRl
eHQtaW5kZW50Oi0xOC4wcHQ7DQoJZm9udC1mYW1pbHk6U3ltYm9sO30NCkBsaXN0IGwwOmxldmVs
OA0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ6bzsN
Cgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxl
ZnQ7DQoJdGV4dC1pbmRlbnQ6LTE4LjBwdDsNCglmb250LWZhbWlseToiQ291cmllciBOZXciO30N
CkBsaXN0IGwwOmxldmVsOQ0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNv
LWxldmVsLXRleHQ674KnOw0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1u
dW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotMTguMHB0Ow0KCWZvbnQtZmFtaWx5
OldpbmdkaW5nczt9DQpvbA0KCXttYXJnaW4tYm90dG9tOjBjbTt9DQp1bA0KCXttYXJnaW4tYm90
dG9tOjBjbTt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVk
ZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0t
PjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0K
PG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+
PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgbGFuZz0iRlIiIGxp
bms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNrIj5EZWFyIERhdmlkLCBhbGws
PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29s
b3I6YmxhY2siPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+VGhhbmsgeW91IGZvciBzaGFy
aW5nIHRoaXMgaW5mb3JtYXRpb24uIFlvdSBtYXkgd2FudCB0byBkaXJlY3QgdGhpcyBtZXNzYWdl
IHRvIHRoZSBtYWludGFpbmVycyBvZiB0aGUgTVBUQ1AgaW1wbGVtZW50YXRpb24geW91IG1lbnRp
b25lZC4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNr
Ij5JIGhhdmUgc29tZSBhcmNoaXRlY3R1cmFsIHF1ZXN0aW9uczogSXMgdGhlcmUgYW55IHJlYXNv
biB3aHkgeW91IGRlY2lkZWQgdG8gdXNlIHRoZSB0cmFuc3BhcmVudCBwcm94eSBtb2RlPyBEaWQg
eW91IGNvbnNpZGVyZWQgdG8gdXNlIHRoZSBleHBsaWNpdCBtb2RlPyBIb3cNCiBkbyB5b3UgZW5z
dXJlIHRoYXQgdGhlIHByb3h5IHdpbGwgYmUgb24tcGF0aCB3aGF0ZXZlciB0aGUgbGluayB5b3Ug
dXNlIHRvIHBsYWNlIHRoZSBmaXJzdCBzdWJmbG93PzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEw
LjBwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PG86
cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJp
ZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNrIj5UaGFuayB5b3UuPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNp
emU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNr
Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
Q291cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPkNoZWVycyw8bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
c2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29sb3I6Ymxh
Y2siPk1lZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtw
YWRkaW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9u
ZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzozLjBwdCAwY20gMGNtIDBj
bSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZv
bnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+RGUmbmJzcDs6PC9zcGFuPjwvYj48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFo
b21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+IG11bHRp
cGF0aHRjcCBbbWFpbHRvOm11bHRpcGF0aHRjcC1ib3VuY2VzQGlldGYub3JnXQ0KPGI+RGUgbGEg
cGFydCBkZTwvYj4gRGF2aWQgUHJhZGFzPGJyPg0KPGI+RW52b3nDqSZuYnNwOzo8L2I+IGpldWRp
IDI2IG9jdG9icmUgMjAxNyAxMDo8L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6d2luZG93dGV4dCI+MjA8YnI+DQo8Yj7DgCZuYnNwOzo8L2I+IG11bHRpcGF0aHRjcEBpZXRm
Lm9yZzxicj4NCjxiPkNjJm5ic3A7OjwvYj4gSm9hcXVpbiBNdWd1ZXJ6YTsgZmFicmljZS5hcm5h
bEB0aGFsZXNhbGVuaWFzcGFjZS5jb207IEt1aG4gTmljb2xhczsgRW1tYW51ZWwgRHVib2lzOyBT
QUxMQU5USU4gUmVuYXVkOyBSaWFkaCBEaGFvdTsgRkFTU09OIEp1bGllbjxicj4NCjxiPk9iamV0
Jm5ic3A7OjwvYj4gW211bHRpcGF0aHRjcF0gTVBUQ1AgdHJhbnNwYXJlbnQgcHJveHk8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86
cD4mbmJzcDs8L286cD48L3A+DQo8cD48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+RGVhciBBbGws
IDwvc3Bhbj4NCjxvOnA+PC9vOnA+PC9wPg0KPHA+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPldl
IGNvbnRhY3QgeW91IHJlZ2FyZGluZyB0aGUgTVBUQ1AgaW1wbGVtZW50YXRpb24gKHYwLjkyKSBh
bmQgc29tZSBwcm9ibGVtcyB3ZSBoYXZlIGVuY291bnRlcmVkIGluIGEgc3BlY2lmaWMgdXNlIGNh
c2UgKHRyYW5zcGFyZW50IHNvY2tldHMpLiBXZSB3aWxsIHRyeSB0byBzdW1tYXJpc2UgdGhlIGNv
bnRleHQgb2Ygb3VyIHN0dWR5LA0KIGFzIHdlbGwgYXMgdGhlIHByb2JsZW0gYW5kIHRoZSBzb2x1
dGlvbnMgd2UgcHJvcG9zZSB0byBzb2x2ZSBpdC48L3NwYW4+PG86cD48L286cD48L3A+DQo8cD48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+VGhlIG9iamVjdGl2ZSBvZiB0aGUgc3R1ZHkgaGFzIGJl
ZW4gdG8gd29yayBvbiBhIE1QVENQLVBFUCBwcm94eSwgd2hlcmUgdGhlIHByb3h5IChQRVBzYWwg
aW1wbGVtZW50YXRpb24pIHNwbGl0cyB0aGUgVENQIGNvbm5lY3Rpb24gYW5kLCB3aXRoIE1QVENQ
LCBhZ2dyZWdhdGVzIHR3byBsaW5rIChzYXRlbGxpdGUgYW5kIHRlcnJlc3RyaWFsKS4NCiBXZSBo
YXZlIGFsc28gZm9jdXNlZCBvbiBvdGhlciBzY2VuYXJpb3MgKGUuZy4gUEVQc2FsIG9ubHkgb24g
dGhlIHNhdGVsbGl0ZSBsaW5rKSwgYnV0IHdlIHByZWZlciB0byBkaXNjdXNzIG9ubHkgdGhlIG9u
ZSBwcmVzZW50ZWQgaW4gdGhlIGZpZ3VyZSBiZWxvdzo8L3NwYW4+PG86cD48L286cD48L3A+DQo8
cD48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+Jm5ic3A7PGltZyB3aWR0aD0iNzI3IiBoZWlnaHQ9
IjE2OCIgaWQ9Il94MDAwMF9pMTAyNSIgc3JjPSJjaWQ6aW1hZ2UwMDIuanBnQDAxRDM0RTQ5LjhF
RUE1RjYwIj48L3NwYW4+PG86cD48L286cD48L3A+DQo8cD48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90
OyI+V2hpbGUgdHJ5aW5nIHRvIHB1dCB0b2dldGhlciBvdXIgaW1wbGVtZW50YXRpb24gb2YgUEVQ
c2FsICh0cmFuc3BhcmVudCBwcm94eSkgaW4gYSBNUFRDUDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1V
UyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjojMUY0OTdEIj4NCjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9
ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+
Y29tcGxpYW50IGtlcm5lbCwgd2UgaGFkIHRvIGZhY2UgYSBwcm9ibGVtIHdpdGggdGhlIE1QVENQ
IGltcGxlbWVudGF0aW9uIGR1ZSB0byB0aGUgdHJhbnNwYXJlbnQgc29ja2V0czwvc3Bhbj48c3Bh
biBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1
b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4NCjwvc3Bhbj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1z
ZXJpZiZxdW90OyI+dXNlZDwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjpyZWQi
Pg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5pbiBQRVBzYWwuIEFmdGVyIGNhcmVm
dWxseSByZWFkaW5nIHRoZSBNUFRDUCBjb2RlLCB3ZSBkaXNjb3ZlcmVkIHRoYXQgd2hlbiBvcGVu
aW5nIG5ldyBzdWJmbG93cyAodXNpbmcgdGhlIGZ1bGxtZXNoIGFsZ29yaXRobSksIGZpcnN0IGl0
IGlzIGNoZWNrZWQgaWYgdGhlIElQIGFkZHJlc3Mgb2YgdGhlIG1haW4gc3ViZmxvdyBjb3JyZXNw
b25kcw0KIHRvIGFueSBvZiB0aGUgbmV0d29yayBpbnRlcmZhY2VzIG9uIHRoZSBtYWNoaW5lLiBU
aGlzIHByZXNlbnRzIGEgcHJvYmxlbSB3aGVuIHdvcmtpbmcgd2l0aCB0cmFuc3BhcmVudCBzb2Nr
ZXRzLCBzaW5jZSB0aGVzZSBzb2NrZXRzIGNhbiBiZSBib3VuZCB0byBleHRlcm5hbCBJUCBhZGRy
ZXNzZXMsIG5vdCBwcmVzZW50IG9uIHRoZSBtYWNoaW5lLiBJbiB0aGlzIGNhc2UsIHRoZSBNUFRD
UCBpbXBsZW1lbnRhdGlvbiBmYWxscyBiYWNrIHRvIGEgY2xhc3NpY2FsDQogVENQIGNvbm5lY3Rp
b24sIHdoaWNoIGlzIG5vdCB0aGUgYmVoYXZpb3VyIHdlPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij50
YXJnZXQuPGJyPg0KPGJyPg0KPC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPldlIGFzc3VtZSBzdWNoIGJlaGF2
aW91ciBvZiAmbmJzcDtNUFRDUCBpbXBsZW1lbnRhdGlvbiB3YXMgYSBkZWxpYmVyYXRlIGNob2lj
ZSAoZS5nLiBmb3Igc2VjdXJpdHkgY29uY2VybnMpLiBJcyBpdCBhY3R1YWxseSB0aGUgbWFpbiBk
cml2ZXIgPyBDb3VsZCBzdWNoIGNvbXBhdGliaWxpdHkgd2l0aCB0cmFuc3BhcmVudCBwcm94eWlu
ZyBiZSBhY2NlcHRhYmxlDQogZm9yIHN1YnNlcXVlbnQgTVBUQ1AgdmVyc2lvbnMgPyA8YnI+DQpX
ZSBoYXZlIHByb2NlZWRlZCB0byBzdWNoIGNvZGUgbW9kaWZpY2F0aW9uLCBhbmQgd2UgYXJlIGhh
cHB5IHRvIHNoYXJlIGl0IHdpdGggeW91LCBmb3IgcmV2aWV3IGFuZCBwb3NzaWJsZSBpbnRlZ3Jh
dGlvbiBpbiB0aGUgbWFpbiBNUFRDUCBjb2RlLiBZb3UgbWF5IGRlY2lkZSBmb3IgaW5zdGFuY2Ug
aWYgdGhpcyBmZWF0dXJlIHNoYWxsIGJlIGltcGxlbWVudGVkIHVuZGVyIGFsbCBjaXJjdW1zdGFu
Y2VzLCBvciByZXN0cmljdGVkIHRvIGEgY2VydGFpbg0KIG1vZGUgb25seSAoZS5nLiBhY3RpdmF0
ZWQgdGhyb3VnaCBhIGNvbnRyb2wgb3B0aW9uLCBzeXNjdGwgY29tbWFuZCwgLi4uICkuPC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPHA+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWls
eTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPlNlY29uZGx5LDwv
c3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjpyZWQiPg0KPC9zcGFuPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7Ij53ZSBoYXZlIGNhcnJpZWQgb3V0IHNvbWUgcGVyZm9ybWFuY2VzIHRl
c3RzIHdpdGggYXBwbGljYXRpb25zIHN1Y2ggYXMgSFRUUCAobWVhc3VyaW5nIHRoZSBwYWdlIGxv
YWQgdGltZSkgb3IgZmlsZSB0cmFuc2ZlciBvdmVyIFRDUCwgYW5kIHdlIGhhdmUgb2JzZXJ2ZWQg
dGhhdCBNUFRDUCBvdXRwZXJmb3JtcyAob3IgZXF1YWxzKQ0KIHRoZSBjYXNlIHdoZXJlIG9ubHkg
b25lIGFjY2VzcyBpcyB1c2VkICh0ZXJyZXN0cmlhbCBvciBzYXRlbGxpdGUpLCBzcGVjaWFsbHkg
dW5kZXIgY29uZ2VzdGlvbiBjb25kaXRpb25zLiBUaGF0IGJlaW5nIHNhaWQsIHdlIGV4cGVjdCB0
byBmdXJ0aGVyIHdvcmsgb24gdGhpcyBpc3N1ZSwgbWFpbmx5IGFzc2Vzc2luZyAoMSkgdGhlIHBl
cmZvcm1hbmNlIG9mIE1QVENQIHNjaGVkdWxlcnMgd2l0aCBzdWNoIGxhcmdlIGFzeW1tZXRyeSwg
KDIpIHRoZQ0KIHBlcmZvcm1hbmNlIG9mIHRoZSBkaWZmZXJlbnQgY291cGxlZCBjb25nZXN0aW9u
IGNvbnRyb2wgaW4gb3VyIHVzZS1jYXNlIGFuZCAoMykgY29uc2lkZXIgdGhlIHJlbGV2YW5jZSBv
ZiB0aGUgc2Vjb25kIHN1Yi1mbG93IG9wZW5pbmcgKG1haW5seSBmb3Igc2hvcnQgZmxvd3MpLiBE
byBub3QgaGVzaXRhdGUgdG8gbGV0IHVzIGtub3cgaWYgeW91IGhhdmUgYW55IGludGVyZXN0IGlu
IGNvbGxhYm9yYXRpbmcgaW4gdGhpcyBmdXR1cmUgd29yay48YnI+DQo8YnI+DQpXZSBhdHRhY2hl
ZCBoZXJlaW4gdGhlIG1vZGlmaWNhdGlvbiB3ZSB1c2VkLCB3aGljaCBhbGxvd3MgTVBUQ1AgdG8g
d29yayB3aGVuIHVzaW5nIHRyYW5zcGFyZW50IHNvY2tldHMuDQo8YnI+DQo8YnI+DQpXZSB3b3Vs
ZCBiZSBnbGFkIHRvIGRpc2N1c3Mgd2l0aCB5b3UgYWJvdXQgdGhpcyBzdWJqZWN0Ljwvc3Bhbj48
bzpwPjwvbzpwPjwvcD4NCjxwPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPkJlc3QgUmVnYXJkcyw8L3NwYW4+PG86cD48
L286cD48L3A+DQo8cD48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5EYXZpZCBQUkFEQVM8YnI+DQpKb2FxdWluIE1VR1VF
UlpBPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0Ij48YnI+DQotLS0tLS0tLS0tLS0tLS0tLS0tLTxp
Pjx1Pjxicj4NCjxicj4NCjwvdT48L2k+PC9zcGFuPjxicj4NCmRpZmYgLS1naXQgYS9uZXQvbXB0
Y3AvbXB0Y3BfZnVsbG1lc2guYyBiL25ldC9tcHRjcC9tcHRjcF9mdWxsbWVzaC5jIDxicj4NCmlu
ZGV4IDFlNWI3NTMuLjY2NTU2MGEgMTAwNjQ0IDxicj4NCi0tLSBhL25ldC9tcHRjcC9tcHRjcF9m
dWxsbWVzaC5jIDxicj4NCiYjNDM7JiM0MzsmIzQzOyBiL25ldC9tcHRjcC9tcHRjcF9mdWxsbWVz
aC5jIDxicj4NCkBAIC02MjksNiAmIzQzOzYyOSwzOCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfYWRk
cl9iaXRmaWVsZHMoc3RydWN0IHNvY2sgKm1ldGFfc2ssIDxicj4NCiZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9IDxicj4NCiZuYnNwO30gPGJyPg0KPGJyPg0KJiM0
MztzdGF0aWMgaW50IG1wdGNwX2ZpbmRfYWRkcmVzc190cmFuc3AoY29uc3Qgc3RydWN0IG1wdGNw
X2xvY19hZGRyICptcHRjcF9sb2NhbCwgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc2FfZmFtaWx5X3QgZmFtaWx5LCBjb25z
dCB1bmlvbiBpbmV0X2FkZHIgKmFkZHIsIDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGludCBpZl9pZHgpIDxicj4NCiYjNDM7
eyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbnQgaTsg
PGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdTggbG9jX2Jp
dHM7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGJvb2wg
Zm91bmQgPSBmYWxzZTsgPGJyPg0KJiM0MzsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgaWYgKGZhbWlseSA9PSBBRl9JTkVUKSA8YnI+DQomIzQzOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsb2NfYml0cyA9IG1wdGNwX2xvY2FsLSZndDtsb2M0X2Jp
dHM7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGVsc2Ug
PGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbG9jX2JpdHMgPSBtcHRjcF9s
b2NhbC0mZ3Q7bG9jNl9iaXRzOyA8YnI+DQomIzQzOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBtcHRjcF9mb3JfZWFjaF9iaXRfc2V0KGxvY19iaXRzLCBp
KSB7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChmYW1pbHkgPT0g
QUZfSU5FVCAmYW1wOyZhbXA7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICghaWZfaWR4IHx8IG1wdGNwX2xvY2FsLSZndDtsb2Nh
ZGRyNFtpXS5pZl9pZHggPT0gaWZfaWR4KSkgeyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyBmb3VuZCA9IHRydWU7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGJyZWFrOyA8YnI+
DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9IDxicj4NCiYjNDM7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChmYW1pbHkgPT0gQUZfSU5FVDYgJmFtcDsmYW1wOyA8YnI+
DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAoIWlmX2lkeCB8fCBtcHRjcF9sb2NhbC0mZ3Q7bG9jYWRkcjZbaV0uaWZfaWR4ID09IGlmX2lk
eCkpIHsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZm91bmQgPSB0cnVlOyA8YnI+DQom
IzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBicmVhazsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgfSA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyB9IDxicj4NCiYjNDM7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7IGlmICghZm91bmQpIDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7IHJldHVybiAtMTsgPGJyPg0KJiM0MzsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIGk7IDxicj4NCiYjNDM7fSA8YnI+DQomIzQzOyA8YnI+
DQombmJzcDtzdGF0aWMgaW50IG1wdGNwX2ZpbmRfYWRkcmVzcyhjb25zdCBzdHJ1Y3QgbXB0Y3Bf
bG9jX2FkZHIgKm1wdGNwX2xvY2FsLCA8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc2FfZmFtaWx5X3QgZmFtaWx5LCBjb25z
dCB1bmlvbiBpbmV0X2FkZHIgKmFkZHIsIDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbnQgaWZfaWR4KSA8YnI+DQpAQCAt
MTI3MSw5ICYjNDM7MTMwMywxOCBAQCBzdGF0aWMgdm9pZCBmdWxsX21lc2hfbmV3X3Nlc3Npb24o
Y29uc3Qgc3RydWN0IHNvY2sgKm1ldGFfc2spDQo8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgcmN1X3JlYWRfbG9jaygpOyA8YnI+DQombmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbXB0Y3BfbG9jYWwgPSByY3VfZGVyZWZlcmVu
Y2UoZm1fbnMtJmd0O2xvY2FsKTsgPGJyPg0KPGJyPg0KLSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyBpbmRleCA9IG1wdGNwX2ZpbmRfYWRkcmVzcyhtcHRjcF9sb2NhbCwgZmFt
aWx5LCAmYW1wO3NhZGRyLCBpZl9pZHgpOyA8YnI+DQotJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGlmIChpbmRleCAmbHQ7IDApIDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmKGluZXRfc2sobWV0YV9zayktJmd0O3RyYW5zcGFyZW50
KSB7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IG1wdGNwX2RlYnVnKCZx
dW90O01ldGEgc29ja2V0IGlzIHRyYW5zcGFyZW50JnF1b3Q7KTsgPGJyPg0KJiM0MzsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgaW5kZXggPSBtcHRjcF9maW5kX2FkZHJlc3NfdHJhbnNwKG1w
dGNwX2xvY2FsLCBmYW1pbHksICZhbXA7c2FkZHIsIGlmX2lkeCk7DQo8YnI+DQomIzQzOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGVsc2UgeyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyBtcHRjcF9kZWJ1ZygmcXVvdDtNZXRhIHNvY2tldCBpcyBOT1QgdHJhbnNw
YXJlbnQmcXVvdDspOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbmRl
eCA9IG1wdGNwX2ZpbmRfYWRkcmVzcyhtcHRjcF9sb2NhbCwgZmFtaWx5LCAmYW1wO3NhZGRyLCBp
Zl9pZHgpOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9
IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChpbmRl
eCAmbHQ7IDApIHsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbXB0Y3Bf
ZGVidWcoJnF1b3Q7RmFsbGluZyBiYWNrJnF1b3Q7KTsgPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IGdvdG8gZmFsbGJhY2s7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH0gPGJyPg0KPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChmYW1pbHkgPT0gQUZfSU5FVCkgPGJyPg0KJm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IG1hc3Rlcl90cC0mZ3Q7bXB0Y3AtJmd0O2xvd19w
cmlvID0gbXB0Y3BfbG9jYWwtJmd0O2xvY2FkZHI0W2luZGV4XS5sb3dfcHJpbzsNCjxvOnA+PC9v
OnA+PC9wPg0KPHA+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4t
LS0tLS0tLS0tLS0tLS0tLS0tLTxpPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0Ij4gPC9z
cGFuPg0KPC9pPjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5
Pg0KPC9odG1sPg0K

--_000_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_--

--_004_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_
Content-Type: image/jpeg; name="image002.jpg"
Content-Description: image002.jpg
Content-Disposition: inline; filename="image002.jpg"; size=11892;
	creation-date="Thu, 26 Oct 2017 08:59:56 GMT";
	modification-date="Thu, 26 Oct 2017 08:59:56 GMT"
Content-ID: <image002.jpg@01D34E49.8EEA5F60>
Content-Transfer-Encoding: base64

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMg
IyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCACoAtcDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2aiii
gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACivO9Y8ceIbLUNfksrPS5NO0R084Su6y
urDPyn7uetdDH470Zry1spJZUvbmOKRYBC7ECQZBJAxj1Pahag9Do6K5xPH/AIek1Yacl/mZpfJD
+W3lGT+6Hxtz+NS/8Jro2Sn2h/NF59h8nym8zzfTbjOO+elAG9RWEPGWjHS01AXD+Q9z9kA8ptxl
zjbtxnOaxfHHji/8L6zY29pZw3Fu8LXFyz53LGrAMVwewOaAO3orhvHHj648PfY10e3gu3li+0zG
UnCQkhQeCOSTx9Ki1zxj4ht9b1S30m10t7bTLRLqX7Szq7ArkhSOM8HrQB31Fec33jbxM0Gj32nW
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
0/5V9xS/sfT/APnyg/74FH9j6f8A8+UH/fAq7RR7Sfdh7Gn/ACr7irDptnbyCSG1hRx0ZUAIq1RR
Utt7lRioq0VYKKKKRQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAVheIfFtr4bmgS7s9QlE5Co9vBvUsTgLnP3j6Vu1heK9HudZttO
S0KbrfUIbh95x8ikk496ANO31GC4WEFvJmmQOsE2FlA9160p1KyAJN5bgL1Pmrx+tcJeeBtUl+IX
9r+YJbRrmOcOJgjxBRjbgqSR7AgHNFp8OSljo0NzZ2TtDqElzfZ581Tv259cbhxQB3y3du0/krPE
ZsbvLDjdj1x6VUutf0uyWBri/t1WeXyYzvBBf04rhrfwBqtv4ynv3dJrV5pZElEwUhWUgIV27sDO
OGx6VHafD/UodFjilsNMeS31CO4ht3bcDGBhlZ9vOeO2eOc0Ad/d6za2hjG/zneVYtkJDMpY4yRn
ge9Qav4js9J0q6vg63ItiokjhcFhlgvPp1rl08C3KJcTLDaLeTa0t4ZQefIVgQufb0rIj+HuvvPr
Es5sg15F5a+WwVWPnB84CjHAPXJ96APRdb1iPQ9Hm1GaN5I4tuVXqckD+tLb6zaTJM8j/ZxFK0R8
8hMlcZIyeRz1qp4r0q41nwzc2Frs86UJt3nA4YE/yrmZPAVxeasst9Baz2n2u8nMbnORIoCceuRQ
B1cev2z65daa3yG3hjmMzMAjByQAD68Vq15tbeA9Yt73TbxjbzGyt7WNrd5MpMULBs8dVBBU+tek
0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQ
AUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFF
FFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB//Z

--_004_787AE7BB302AE849A7480A190F8B93300A05E6E2OPEXCLILMA3corp_--


From nobody Thu Oct 26 12:38:30 2017
Return-Path: <cpaasch@apple.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CF79413F5D4 for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 11:28:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.3
X-Spam-Level: 
X-Spam-Status: No, score=-4.3 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=apple.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id THSg4h83ccJG for <multipathtcp@ietfa.amsl.com>; Thu, 26 Oct 2017 11:28:26 -0700 (PDT)
Received: from mail-in5.apple.com (mail-out5.apple.com [17.151.62.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EC40313F448 for <multipathtcp@ietf.org>; Thu, 26 Oct 2017 11:28:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; d=apple.com; s=mailout2048s; c=relaxed/simple; q=dns/txt; i=@apple.com; t=1509042505; h=From:Sender:Reply-To:Subject:Date:Message-id:To:Cc:MIME-version:Content-type: Content-transfer-encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-reply-to:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=htaiKc/f4GwabYh1XghpC+Ajhj42TO38oJwi/751jPc=; b=2aKUalKjB4vPwRB8JhPJsfJe5wHxXYEXK9gLdMsh9uiFdeU4reCG2ZspdREsqosg U+dCMRNrwt2XUB4XGgGZgipPw1nw3ZxWDA6AZOIcmTGrzjJx2+TMUI2Q9sYJny8U tK9lRHF6wUmvZoopJQurAGNlx0osempe6s65zhQU1DoDGfzTdmTf60lMCtIKQemS +ejQeb7oEvLlAk/E662zoJ2Ep4xnK4HyUCiVziZnyokpFbpfPb2Vk4tgeqJWhm7M V4AWu9x49HNUQeivag/yi2LJ6ZD/9+RwfY2EmpiltPRV4DlKQkqiSLUlMbxikUhB CB5Tb1q2X79Dg1ZcinvaUQ==;
Received: from relay6.apple.com (relay6.apple.com [17.128.113.90]) (using TLS with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail-in5.apple.com (Apple Secure Mail Relay) with SMTP id 90.D9.29765.94922F95; Thu, 26 Oct 2017 11:28:25 -0700 (PDT)
X-AuditID: 11973e13-6fe289c000007445-8a-59f229497d16
Received: from nwk-mmpp-sz09.apple.com (nwk-mmpp-sz09.apple.com [17.128.115.80]) by relay6.apple.com (Apple SCV relay) with SMTP id F6.F9.12883.94922F95; Thu, 26 Oct 2017 11:28:25 -0700 (PDT)
MIME-version: 1.0
Content-transfer-encoding: 8BIT
Content-disposition: inline
Content-type: text/plain; charset=iso-8859-1
Received: from localhost ([17.226.23.227]) by nwk-mmpp-sz09.apple.com (Oracle Communications Messaging Server 8.0.1.3.20170825 64bit (built Aug 25 2017)) with ESMTPSA id <0OYG006DL0ND3160@nwk-mmpp-sz09.apple.com>; Thu, 26 Oct 2017 11:28:25 -0700 (PDT)
Sender: cpaasch@apple.com
Date: Thu, 26 Oct 2017 11:28:25 -0700
From: Christoph Paasch <cpaasch@apple.com>
To: David Pradas <david.pradas@toulouse.viveris.com>
Cc: Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>, fabrice.arnal@thalesaleniaspace.com, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>, mptcp-dev@listes.uclouvain.be
Message-id: <20171026182825.GC13451@Chimay.local>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
In-reply-to: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
User-Agent: Mutt/1.8.3 (2017-05-23)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprEIsWRmVeSWpSXmKPExsUi2FAYpeup+SnS4MU1HYuej1wWb5asYbZ4 sucSu8WzvtnMFhdPTGS1mH9vFqPF59XX2SxmXVjOanHhFafFjtff2B24PLre/WL1aJ+X7bFk yU8mj7lv77J7TJ3yhtHj1MlVrB7Pj35iCmCP4rJJSc3JLEst0rdL4MpY0L6TrWCbScX+289Z Gxi7tLsYOTkkBEwkrp7cxtjFyMUhJLCaSaL1aBc7TGL+3NesEImDjBL/Nr0HS/AKCEr8mHyP pYuRg4NZQF7iyKVskDCzgLTEo78z2CFsHYne79+YIXobmSQmXTvNCpIQFpCU6L5zhxnEZhFQ lTjYvJcRxGYT0JJ4e7sdrEYEaHHT9xksIM3MAveZJPZeeM4G0WwisX76BVaIIwwlpm/fygRi Cwm4S7xu2MwCYnMKeEgcOrsa7ApRAWWJeftWsYEMkhD4zibx+spitgmMIrOQPDEL4YlZSJ6Y heSJBYwsqxiFchMzc3Qz80z1EgsKclL1kvNzNzGCInG6nfAOxtOrrA4xCnAwKvHwfvj4IVKI NbGsuDL3EKM0B4uSOO+v3x8jhQTSE0tSs1NTC1KL4otKc1KLDzEycXBKNTBqP9zj2vqsNpCl Q1xBwahzz0XzA11yHLYzFyr5FjsujPq/peTcZK1VnrdfXinJc1kyNdWd6bPYRc9bUhGBMk3v pQ/8K7NScJuYsPSm6iqtFsnHZl2rL1is+uCaOue759NZLDXLW6YcfjJl8bnL79jWWk803Rer qmnBuzTR5e4uv7CNpzRVj9kpsRRnJBpqMRcVJwIAb2iUmKUCAAA=
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmplkeLIzCtJLcpLzFFi42IRbCgO0PXU/BRpMPuohkXPRy6LN0vWMFs8 2XOJ3eJZ32xmi4snJrJazL83i9Hi8+rrbBazLixntbjwitNix+tv7A5cHl3vfrF6tM/L9liy 5CeTx9y3d9k9pk55w+hx6uQqVo/nRz8xBbBHcdmkpOZklqUW6dslcGUsaN/JVrDNpGL/7ees DYxd2l2MnBwSAiYS8+e+Zu1i5OIQEjjIKPFv03t2kASvgKDEj8n3WLoYOTiYBeQljlzKBgkz C0hLPPo7gx3C1pHo/f6NGaK3kUli0rXTrCAJYQFJie47d5hBbBYBVYmDzXsZQWw2AS2Jt7fb wWpEgBY3fZ/BAtLMLHCfSWLvhedsEM0mEuunX2CFOMJQYvr2rUwgtpCAu8Trhs0sIDangIfE obOrwa4QFVCWmLdvFdsERsFZSO6ehXD3LCR3z0Jy9wJGllWMAkWpOYmVZnqJBQU5qXrJ+bmb GMGRUxi1g7FhudUhRgEORiUe3g8fP0QKsSaWFVfmHmKU4GBWEuGNEv4UKcSbklhZlVqUH19U mpNafIhRmoNFSZz3lMjHSCGB9MSS1OzU1ILUIpgsEwenVANjwEO9u4d2GPlIuyYzLfV+vMPk 9869l7IyBKOqg7ltbb5p1AbcXG3I/njHH+6SeW1GHu8qnxxQdTafdG5d9sLp7TNcvn1tun55 Tua7R0Zxj3neb/1qupxfX20ff65rvPOzxYHOFhVRiQq8PyUPqlqfWi1yfq7Ma4WtM468OayQ rDLF/BfXxDWlSizFGYmGWsxFxYkA6E9RvJgCAAA=
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/dAAsP-UCPvsQzgyFrDjuT7qGhME>
X-Mailman-Approved-At: Thu, 26 Oct 2017 12:38:29 -0700
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 26 Oct 2017 18:28:28 -0000

+ mptcp-dev
And moving MPTCP IETF-mailing-list to BCC


Hello,

On 26/10/17 - 10:19:59, David Pradas wrote:
> Dear All,
> 
> We contact you regarding the MPTCP implementation (v0.92) and some problems
> we have encountered in a specific use case (transparent sockets). We will
> try to summarise the context of our study, as well as the problem and the
> solutions we propose to solve it.
> 
> The objective of the study has been to work on a MPTCP-PEP proxy, where the
> proxy (PEPsalimplementation) splits the TCP connection and, with MPTCP,
> aggregates two link (satellite and terrestrial). We have also focused on
> other scenarios (e.g. PEPsal only on the satellite link), but we prefer to
> discuss only the one presented in the figure below:
> 
> While trying to put together our implementation of PEPsal (transparent
> proxy) in a MPTCPcompliant kernel, we had to face a problem with the MPTCP
> implementation due to the transparent socketsusedin PEPsal. After carefully
> reading the MPTCP code, we discovered that when opening new subflows (using
> the fullmesh algorithm), first it is checked if the IP address of the main
> subflow corresponds to any of the network interfaces on the machine. This
> presents a problem when working with transparent sockets, since these
> sockets can be bound to external IP addresses, not present on the machine.
> In this case, the MPTCP implementation falls back to a classical TCP
> connection, which is not the behaviour wetarget.

thanks for your detailed explanation.

These transparent sockets are they on the passive opener-side (meaning in
your picture on the right side) ?


> We assume such behaviour of  MPTCP implementation was a deliberate choice
> (e.g. for security concerns). Is it actually the main driver ? Could such
> compatibility with transparent proxying be acceptable for subsequent MPTCP
> versions ?

No, it was not a deliberate choice. We didn't consider the case of
transparent sockets.

So, we definitely should fix this.

But, I'm not sure whether your patch takes care of all the potential issues.
It is looking for an index in the table and matches solely on the if_idx. Which,
will be 0 if the socket is not using SO_BINDTODEV. That means,
mptcp_find_address_transp will match on any address. The address it matches
on will be removed from the set of eligible addresses that are being
advertised through ADD_ADDR.

Instead of taking the if_idx from SO_BINDTODEV, in the transparent case we
probably should take the if_idx form the incoming interface.

You have any thoughts on that?


Christoph

> We have proceeded to such code modification, and we are happy to share it
> with you, for review and possible integration in the main MPTCP code. You
> may decide for instance if this feature shall be implemented under all
> circumstances, or restricted to a certain mode only (e.g. activated through
> a control option, sysctl command, ... ).
> 
> Secondly,we have carried out some performances tests with applications such
> as HTTP (measuring the page load time) or file transfer over TCP, and we
> have observed that MPTCP outperforms (or equals) the case where only one
> access is used (terrestrial or satellite), specially under congestion
> conditions. That being said, we expect to further work on this issue, mainly
> assessing (1) the performance of MPTCP schedulers with such large asymmetry,
> (2) the performance of the different coupled congestion control in our
> use-case and (3) consider the relevance of the second sub-flow opening
> (mainly for short flows). Do not hesitate to let us know if you have any
> interest in collaborating in this future work.
> 
> We attached herein the modification we used, which allows MPTCP to work when
> using transparent sockets.
> 
> We would be glad to discuss with you about this subject.
> 
> Best Regards,
> 
> David PRADAS
> Joaquin MUGUERZA
> 
> 
> --------------------//_
> 
> _//
> diff --git a/net/mptcp/mptcp_fullmesh.c b/net/mptcp/mptcp_fullmesh.c
> index 1e5b753..665560a 100644
> --- a/net/mptcp/mptcp_fullmesh.c
> +++ b/net/mptcp/mptcp_fullmesh.c
> @@ -629,6 +629,38 @@ static void update_addr_bitfields(struct sock *meta_sk,
>         }
>  }
> 
> +static int mptcp_find_address_transp(const struct mptcp_loc_addr
> *mptcp_local,
> +                             sa_family_t family, const union inet_addr
> *addr,
> +                             int if_idx)
> +{
> +       int i;
> +       u8 loc_bits;
> +       bool found = false;
> +
> +       if (family == AF_INET)
> +               loc_bits = mptcp_local->loc4_bits;
> +       else
> +               loc_bits = mptcp_local->loc6_bits;
> +
> +       mptcp_for_each_bit_set(loc_bits, i) {
> +               if (family == AF_INET &&
> +                   (!if_idx || mptcp_local->locaddr4[i].if_idx == if_idx))
> {
> +                       found = true;
> +                       break;
> +               }
> +               if (family == AF_INET6 &&
> +                   (!if_idx || mptcp_local->locaddr6[i].if_idx == if_idx))
> {
> +                       found = true;
> +                       break;
> +               }
> +       }
> +
> +       if (!found)
> +               return -1;
> +
> +       return i;
> +}
> +
>  static int mptcp_find_address(const struct mptcp_loc_addr *mptcp_local,
>                               sa_family_t family, const union inet_addr
> *addr,
>                               int if_idx)
> @@ -1271,9 +1303,18 @@ static void full_mesh_new_session(const struct sock
> *meta_sk)
>         rcu_read_lock();
>         mptcp_local = rcu_dereference(fm_ns->local);
> 
> -       index = mptcp_find_address(mptcp_local, family, &saddr, if_idx);
> -       if (index < 0)
> +       if(inet_sk(meta_sk)->transparent) {
> +               mptcp_debug("Meta socket is transparent");
> +               index = mptcp_find_address_transp(mptcp_local, family,
> &saddr, if_idx);
> +       }
> +       else {
> +               mptcp_debug("Meta socket is NOT transparent");
> +               index = mptcp_find_address(mptcp_local, family, &saddr,
> if_idx);
> +       }
> +       if (index < 0) {
> +               mptcp_debug("Falling back");
>                 goto fallback;
> +       }
> 
>         if (family == AF_INET)
>                 master_tp->mptcp->low_prio =
> mptcp_local->locaddr4[index].low_prio;
> 
> --------------------//
> ////////

> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp


From nobody Fri Oct 27 05:01:07 2017
Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1209013F501 for <multipathtcp@ietfa.amsl.com>; Fri, 27 Oct 2017 05:01:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.608
X-Spam-Level: 
X-Spam-Status: No, score=-2.608 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u5xFhTeagYJP for <multipathtcp@ietfa.amsl.com>; Fri, 27 Oct 2017 05:00:58 -0700 (PDT)
Received: from orange.com (mta136.mail.business.static.orange.com [80.12.70.36]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 03AE613A8A1 for <multipathtcp@ietf.org>; Fri, 27 Oct 2017 05:00:58 -0700 (PDT)
Received: from opfednr01.francetelecom.fr (unknown [xx.xx.xx.65]) by opfednr23.francetelecom.fr (ESMTP service) with ESMTP id 6246DC07FA; Fri, 27 Oct 2017 14:00:56 +0200 (CEST)
Received: from Exchangemail-eme2.itn.ftgroup (unknown [xx.xx.31.57]) by opfednr01.francetelecom.fr (ESMTP service) with ESMTP id 34EFF1A0063; Fri, 27 Oct 2017 14:00:56 +0200 (CEST)
Received: from OPEXCLILMA3.corporate.adroot.infra.ftgroup ([fe80::60a9:abc3:86e6:2541]) by OPEXCLILM23.corporate.adroot.infra.ftgroup ([fe80::787e:db0c:23c4:71b3%19]) with mapi id 14.03.0361.001; Fri, 27 Oct 2017 14:00:55 +0200
From: <mohamed.boucadair@orange.com>
To: David Pradas <david.pradas@toulouse.viveris.com>, "multipathtcp@ietf.org" <multipathtcp@ietf.org>
CC: Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>, "fabrice.arnal@thalesaleniaspace.com" <fabrice.arnal@thalesaleniaspace.com>, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>
Thread-Topic: [multipathtcp] MPTCP transparent proxy
Thread-Index: AQHTTwTAAlb5VZkfI0GV39ScorDdVaL3lJjw
Date: Fri, 27 Oct 2017 12:00:55 +0000
Message-ID: <787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com> <787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup> <c6cafa09-495d-0f94-b186-d985f7ef953a@toulouse.viveris.com>
In-Reply-To: <c6cafa09-495d-0f94-b186-d985f7ef953a@toulouse.viveris.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [10.168.234.6]
Content-Type: multipart/related; boundary="_004_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_"; type="multipart/alternative"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/NBdVRlpP-H8PO_TQVradfGIzP0o>
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 27 Oct 2017 12:01:06 -0000

--_004_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_
Content-Type: multipart/alternative;
	boundary="_000_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_"

--_000_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgRGF2aWQsDQoNClRoYW5rIHlvdSBmb3IgY2xhcmlmeWluZy4gTXVjaCBhcHByZWNpYXRlZCEN
Cg0KUGxlYXNlIHNlZSBpbmxpbmUuDQoNCkNoZWVycywNCk1lZA0KDQpEZSA6IERhdmlkIFByYWRh
cyBbbWFpbHRvOmRhdmlkLnByYWRhc0B0b3Vsb3VzZS52aXZlcmlzLmNvbV0NCkVudm95w6kgOiB2
ZW5kcmVkaSAyNyBvY3RvYnJlIDIwMTcgMTE6MjANCsOAIDogQk9VQ0FEQUlSIE1vaGFtZWQgSU1U
L09MTjsgbXVsdGlwYXRodGNwQGlldGYub3JnDQpDYyA6IEpvYXF1aW4gTXVndWVyemE7IGZhYnJp
Y2UuYXJuYWxAdGhhbGVzYWxlbmlhc3BhY2UuY29tOyBLdWhuIE5pY29sYXM7IEVtbWFudWVsIER1
Ym9pczsgU0FMTEFOVElOIFJlbmF1ZDsgUmlhZGggRGhhb3U7IEZBU1NPTiBKdWxpZW4NCk9iamV0
IDogUmU6IFttdWx0aXBhdGh0Y3BdIE1QVENQIHRyYW5zcGFyZW50IHByb3h5DQoNCkhpIE1lZCwN
Cg0KVGhhbmsgeW91IGZvciB5b3VyIHJlcGx5LiBZZXMsIGluZGVlZCwgd2UgYWxzbyBzZW50IHRo
ZSBlbWFpbCB0byB0aGUgbWFpbnRhaW5lcnMgb2YgdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIGZv
ciBmdXJ0aGVyIGRpc2N1c3Npb24gcmVnYXJkaW5nIHRoZSBtb2RpZmljYXRpb24uIEJ1dCB3ZSB3
YW50ZWQgdG8gc2hhcmUgdGhlIGNvbnRleHQgb2YgdGhlIHN0dWR5IHdpdGggdGhlIElFVEYgbWFp
bGluZyBsaXN0IHNpbmNlIHdlIHRob3VnaHQgaXQgd291bGQgYmUgaW50ZXJlc3RpbmcgdG8gaGF2
ZSB5b3VyIGZlZWRiYWNrLg0KDQpSZWdhcmRpbmcgeW91ciBxdWVzdGlvbnM6DQotICBJcyB0aGVy
ZSBhbnkgcmVhc29uIHdoeSB5b3UgZGVjaWRlZCB0byB1c2UgdGhlIHRyYW5zcGFyZW50IHByb3h5
IG1vZGU/DQpZb3VyIHF1ZXN0aW9uIGlzIHZlcnkgcmVsZXZhbnQhIEl0IHdhcyBhIGZ1bmN0aW9u
YWwgcmVxdWlyZW1lbnQsIHdlIHdhbnRlZCB0byBldmFsdWF0ZWQgdGhlIHN5c3RlbSBwZXJmb3Jt
YW5jZSB3aXRob3V0IE5BVCB0cmFuc2xhdGlvbi4NCg0KW01lZF0gUGxlYXNlIG5vdGUgdGhhdCBl
dmVuIGluIHRoZSB0cmFuc3BhcmVudCBtb2RlLCBhICoqIHRyYW5zbGF0aW9uIChOQVQsIGlmIHlv
dSB3aWxsKSAqKiBpcyByZXF1aXJlZCBmb3Igc3Vic2VxdWVudCBzdWJmbG93czogVGhlIHByb3h5
IHdpbGwgbmVlZCB0byB0cmFuc2xhdGUgdGhlIGludGVybmFsIElQIGFkZHJlc3MvcG9ydCB0byB0
aGUgb25lIHVzZWQgdG8gcGxhY2UgdGhlIGZpcnN0IHN1YmZsb3cuIEZ1cnRoZXIsIHRoZSB0cmFu
c3BhcmVudCBtb2RlIHdpbGwgcmVxdWlyZSB0aGF0IHRoZSB0cmFmZmljIHNob3VsZCBiZSBpbnNw
ZWN0ZWQgdG8gZGV0ZWN0IHRoZSBNUFRDUCBvbmUuIFRoaXMgaW5zcGVjdGlvbiBmdW5jdGlvbiBt
YXkgaGF2ZSBzb21lIGltcGxpY2F0aW9ucyBvbiB0aGUgc3lzdGVtIHBlcmZvcm1hbmNlLg0KDQot
IERpZCB5b3UgY29uc2lkZXJlZCB0byB1c2UgdGhlIGV4cGxpY2l0IG1vZGU/DQpXZSBkaWQgbm90
IGNvbnNpZGVyIHRoaXMgbW9kZSwgYmVjYXVzZSB3ZSB0aG91Z2ggdGhhdCwgZXZlbiBnaXZpbmcg
dGhlIGFkZHJlc3MgbGlzdCwgdGhlIGJlaGF2aW91ciBvZiB0aGUgaW1wbGVtZW50YXRpb24gd2ls
bCBiZSB0aGUgc2FtZTogaS5lLiBmYWxsYmFjayB0byBUQ1AgaWYgdGhlIGFkZHJlc3MgaXMgbm90
IHByZXNlbnQgaW4gdGhlIG1hY2hpbmUgKHRvIGJlIGNvbmZpcm1lZCEpLg0KDQpbTWVkXSBUaGUg
YmVoYXZpb3IgZm9yIHN1YnNlcXVlbnQgc3ViZmxvd3MgZXN0YWJsaXNobWVudCB3b3VsZCBiZSB0
aGUgc2FtZSwgYnV0IHRoZXJlIGFyZSBvdGhlciBhZHZhbnRhZ2VzIHRoYXQgYXJlIHdvcnRoIHRv
IGJlIGNvbnNpZGVyZWQ6DQoNCi0gICAgVGhlIHByb3h5IGlzIG5vdCByZXF1aXJlZCB0byBiZSBl
bWJlZGRlZCBvbiBhbiBvbi1wYXRoIHJvdXRlcg0KDQotICAgIE9ubHkgdGhlIGVsaWdpYmxlIHRy
YWZmaWMgd2lsbCBiZSBkaXJlY3RlZCB0byB0aGUgcHJveHk7IG5vIG5lZWQgZm9yIHRyYWZmaWMg
aW5zcGVjdGlvbiBvciBob29rcyB0byBpbnZva2UgdGhlIHByb3h5IGZ1bmN0aW9uDQoNCi0gICAg
WW91IGNhbiBlYXNpbHkgZGlzdGluZ3Vpc2ggTVBUQ1AgcHJveGllZCB0cmFmZmljIHZzLiBNUFRD
UCBmbG93cyB0aGF0IGFyZSBuYXRpdmVseSBpbml0aWF0ZWQgYnkgaW50ZXJuYWwgaG9zdHMuDQoN
Ci0gSG93IGRvIHlvdSBlbnN1cmUgdGhhdCB0aGUgcHJveHkgd2lsbCBiZSBvbi1wYXRoIHdoYXRl
dmVyIHRoZSBsaW5rIHlvdSB1c2UgdG8gcGxhY2UgdGhlIGZpcnN0IHN1YmZsb3c/DQpJbiBmYWN0
LCB3ZSBhbHdheXMgZm9yY2UgdGhlIGZpc3Qgc3ViZmxvdyB0byBnbyB0aHJvdWdoIHRoZSB0ZXJy
ZXN0cmlhbCBsaW5rIChhbmQgdGhlIHNlY29uZCBvbmUgdGhyb3VnaCB0aGUgc2F0ZWxsaXRlIGxp
bmspLiBLbm93aW5nIHRoYXQgYm90aCBsaW5rIGFyZSBhZ2dyZWdhdGVkIGJ5IG91ciBwcm94eSBN
UFRDUC1QRVAuDQoNCltNZWRdIE9LLCB0aGFua3MuDQoNCktpbmQgcmVnYXJkcywNCg0KRGF2aWQN
Cg0KDQpMZSAyNi8xMC8yMDE3IMOgIDEwOjU5LCBtb2hhbWVkLmJvdWNhZGFpckBvcmFuZ2UuY29t
PG1haWx0bzptb2hhbWVkLmJvdWNhZGFpckBvcmFuZ2UuY29tPiBhIMOpY3JpdCA6DQpEZWFyIERh
dmlkLCBhbGwsDQoNClRoYW5rIHlvdSBmb3Igc2hhcmluZyB0aGlzIGluZm9ybWF0aW9uLiBZb3Ug
bWF5IHdhbnQgdG8gZGlyZWN0IHRoaXMgbWVzc2FnZSB0byB0aGUgbWFpbnRhaW5lcnMgb2YgdGhl
IE1QVENQIGltcGxlbWVudGF0aW9uIHlvdSBtZW50aW9uZWQuDQoNCkkgaGF2ZSBzb21lIGFyY2hp
dGVjdHVyYWwgcXVlc3Rpb25zOiBJcyB0aGVyZSBhbnkgcmVhc29uIHdoeSB5b3UgZGVjaWRlZCB0
byB1c2UgdGhlIHRyYW5zcGFyZW50IHByb3h5IG1vZGU/IERpZCB5b3UgY29uc2lkZXJlZCB0byB1
c2UgdGhlIGV4cGxpY2l0IG1vZGU/IEhvdyBkbyB5b3UgZW5zdXJlIHRoYXQgdGhlIHByb3h5IHdp
bGwgYmUgb24tcGF0aCB3aGF0ZXZlciB0aGUgbGluayB5b3UgdXNlIHRvIHBsYWNlIHRoZSBmaXJz
dCBzdWJmbG93Pw0KDQpUaGFuayB5b3UuDQoNCkNoZWVycywNCk1lZA0KDQpEZSA6IG11bHRpcGF0
aHRjcCBbbWFpbHRvOm11bHRpcGF0aHRjcC1ib3VuY2VzQGlldGYub3JnXSBEZSBsYSBwYXJ0IGRl
IERhdmlkIFByYWRhcw0KRW52b3nDqSA6IGpldWRpIDI2IG9jdG9icmUgMjAxNyAxMDoyMA0Kw4Ag
OiBtdWx0aXBhdGh0Y3BAaWV0Zi5vcmc8bWFpbHRvOm11bHRpcGF0aHRjcEBpZXRmLm9yZz4NCkNj
IDogSm9hcXVpbiBNdWd1ZXJ6YTsgZmFicmljZS5hcm5hbEB0aGFsZXNhbGVuaWFzcGFjZS5jb208
bWFpbHRvOmZhYnJpY2UuYXJuYWxAdGhhbGVzYWxlbmlhc3BhY2UuY29tPjsgS3VobiBOaWNvbGFz
OyBFbW1hbnVlbCBEdWJvaXM7IFNBTExBTlRJTiBSZW5hdWQ7IFJpYWRoIERoYW91OyBGQVNTT04g
SnVsaWVuDQpPYmpldCA6IFttdWx0aXBhdGh0Y3BdIE1QVENQIHRyYW5zcGFyZW50IHByb3h5DQoN
Cg0KRGVhciBBbGwsDQoNCldlIGNvbnRhY3QgeW91IHJlZ2FyZGluZyB0aGUgTVBUQ1AgaW1wbGVt
ZW50YXRpb24gKHYwLjkyKSBhbmQgc29tZSBwcm9ibGVtcyB3ZSBoYXZlIGVuY291bnRlcmVkIGlu
IGEgc3BlY2lmaWMgdXNlIGNhc2UgKHRyYW5zcGFyZW50IHNvY2tldHMpLiBXZSB3aWxsIHRyeSB0
byBzdW1tYXJpc2UgdGhlIGNvbnRleHQgb2Ygb3VyIHN0dWR5LCBhcyB3ZWxsIGFzIHRoZSBwcm9i
bGVtIGFuZCB0aGUgc29sdXRpb25zIHdlIHByb3Bvc2UgdG8gc29sdmUgaXQuDQoNClRoZSBvYmpl
Y3RpdmUgb2YgdGhlIHN0dWR5IGhhcyBiZWVuIHRvIHdvcmsgb24gYSBNUFRDUC1QRVAgcHJveHks
IHdoZXJlIHRoZSBwcm94eSAoUEVQc2FsIGltcGxlbWVudGF0aW9uKSBzcGxpdHMgdGhlIFRDUCBj
b25uZWN0aW9uIGFuZCwgd2l0aCBNUFRDUCwgYWdncmVnYXRlcyB0d28gbGluayAoc2F0ZWxsaXRl
IGFuZCB0ZXJyZXN0cmlhbCkuIFdlIGhhdmUgYWxzbyBmb2N1c2VkIG9uIG90aGVyIHNjZW5hcmlv
cyAoZS5nLiBQRVBzYWwgb25seSBvbiB0aGUgc2F0ZWxsaXRlIGxpbmspLCBidXQgd2UgcHJlZmVy
IHRvIGRpc2N1c3Mgb25seSB0aGUgb25lIHByZXNlbnRlZCBpbiB0aGUgZmlndXJlIGJlbG93Og0K
DQogW2NpZDppbWFnZTAwMS5qcGdAMDFEMzRGMkEuQ0NEODNBRTBdDQoNCldoaWxlIHRyeWluZyB0
byBwdXQgdG9nZXRoZXIgb3VyIGltcGxlbWVudGF0aW9uIG9mIFBFUHNhbCAodHJhbnNwYXJlbnQg
cHJveHkpIGluIGEgTVBUQ1AgY29tcGxpYW50IGtlcm5lbCwgd2UgaGFkIHRvIGZhY2UgYSBwcm9i
bGVtIHdpdGggdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIGR1ZSB0byB0aGUgdHJhbnNwYXJlbnQg
c29ja2V0cyB1c2VkIGluIFBFUHNhbC4gQWZ0ZXIgY2FyZWZ1bGx5IHJlYWRpbmcgdGhlIE1QVENQ
IGNvZGUsIHdlIGRpc2NvdmVyZWQgdGhhdCB3aGVuIG9wZW5pbmcgbmV3IHN1YmZsb3dzICh1c2lu
ZyB0aGUgZnVsbG1lc2ggYWxnb3JpdGhtKSwgZmlyc3QgaXQgaXMgY2hlY2tlZCBpZiB0aGUgSVAg
YWRkcmVzcyBvZiB0aGUgbWFpbiBzdWJmbG93IGNvcnJlc3BvbmRzIHRvIGFueSBvZiB0aGUgbmV0
d29yayBpbnRlcmZhY2VzIG9uIHRoZSBtYWNoaW5lLiBUaGlzIHByZXNlbnRzIGEgcHJvYmxlbSB3
aGVuIHdvcmtpbmcgd2l0aCB0cmFuc3BhcmVudCBzb2NrZXRzLCBzaW5jZSB0aGVzZSBzb2NrZXRz
IGNhbiBiZSBib3VuZCB0byBleHRlcm5hbCBJUCBhZGRyZXNzZXMsIG5vdCBwcmVzZW50IG9uIHRo
ZSBtYWNoaW5lLiBJbiB0aGlzIGNhc2UsIHRoZSBNUFRDUCBpbXBsZW1lbnRhdGlvbiBmYWxscyBi
YWNrIHRvIGEgY2xhc3NpY2FsIFRDUCBjb25uZWN0aW9uLCB3aGljaCBpcyBub3QgdGhlIGJlaGF2
aW91ciB3ZSB0YXJnZXQuDQoNCldlIGFzc3VtZSBzdWNoIGJlaGF2aW91ciBvZiAgTVBUQ1AgaW1w
bGVtZW50YXRpb24gd2FzIGEgZGVsaWJlcmF0ZSBjaG9pY2UgKGUuZy4gZm9yIHNlY3VyaXR5IGNv
bmNlcm5zKS4gSXMgaXQgYWN0dWFsbHkgdGhlIG1haW4gZHJpdmVyID8gQ291bGQgc3VjaCBjb21w
YXRpYmlsaXR5IHdpdGggdHJhbnNwYXJlbnQgcHJveHlpbmcgYmUgYWNjZXB0YWJsZSBmb3Igc3Vi
c2VxdWVudCBNUFRDUCB2ZXJzaW9ucyA/DQpXZSBoYXZlIHByb2NlZWRlZCB0byBzdWNoIGNvZGUg
bW9kaWZpY2F0aW9uLCBhbmQgd2UgYXJlIGhhcHB5IHRvIHNoYXJlIGl0IHdpdGggeW91LCBmb3Ig
cmV2aWV3IGFuZCBwb3NzaWJsZSBpbnRlZ3JhdGlvbiBpbiB0aGUgbWFpbiBNUFRDUCBjb2RlLiBZ
b3UgbWF5IGRlY2lkZSBmb3IgaW5zdGFuY2UgaWYgdGhpcyBmZWF0dXJlIHNoYWxsIGJlIGltcGxl
bWVudGVkIHVuZGVyIGFsbCBjaXJjdW1zdGFuY2VzLCBvciByZXN0cmljdGVkIHRvIGEgY2VydGFp
biBtb2RlIG9ubHkgKGUuZy4gYWN0aXZhdGVkIHRocm91Z2ggYSBjb250cm9sIG9wdGlvbiwgc3lz
Y3RsIGNvbW1hbmQsIC4uLiApLg0KDQpTZWNvbmRseSwgd2UgaGF2ZSBjYXJyaWVkIG91dCBzb21l
IHBlcmZvcm1hbmNlcyB0ZXN0cyB3aXRoIGFwcGxpY2F0aW9ucyBzdWNoIGFzIEhUVFAgKG1lYXN1
cmluZyB0aGUgcGFnZSBsb2FkIHRpbWUpIG9yIGZpbGUgdHJhbnNmZXIgb3ZlciBUQ1AsIGFuZCB3
ZSBoYXZlIG9ic2VydmVkIHRoYXQgTVBUQ1Agb3V0cGVyZm9ybXMgKG9yIGVxdWFscykgdGhlIGNh
c2Ugd2hlcmUgb25seSBvbmUgYWNjZXNzIGlzIHVzZWQgKHRlcnJlc3RyaWFsIG9yIHNhdGVsbGl0
ZSksIHNwZWNpYWxseSB1bmRlciBjb25nZXN0aW9uIGNvbmRpdGlvbnMuIFRoYXQgYmVpbmcgc2Fp
ZCwgd2UgZXhwZWN0IHRvIGZ1cnRoZXIgd29yayBvbiB0aGlzIGlzc3VlLCBtYWlubHkgYXNzZXNz
aW5nICgxKSB0aGUgcGVyZm9ybWFuY2Ugb2YgTVBUQ1Agc2NoZWR1bGVycyB3aXRoIHN1Y2ggbGFy
Z2UgYXN5bW1ldHJ5LCAoMikgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBkaWZmZXJlbnQgY291cGxl
ZCBjb25nZXN0aW9uIGNvbnRyb2wgaW4gb3VyIHVzZS1jYXNlIGFuZCAoMykgY29uc2lkZXIgdGhl
IHJlbGV2YW5jZSBvZiB0aGUgc2Vjb25kIHN1Yi1mbG93IG9wZW5pbmcgKG1haW5seSBmb3Igc2hv
cnQgZmxvd3MpLiBEbyBub3QgaGVzaXRhdGUgdG8gbGV0IHVzIGtub3cgaWYgeW91IGhhdmUgYW55
IGludGVyZXN0IGluIGNvbGxhYm9yYXRpbmcgaW4gdGhpcyBmdXR1cmUgd29yay4NCg0KV2UgYXR0
YWNoZWQgaGVyZWluIHRoZSBtb2RpZmljYXRpb24gd2UgdXNlZCwgd2hpY2ggYWxsb3dzIE1QVENQ
IHRvIHdvcmsgd2hlbiB1c2luZyB0cmFuc3BhcmVudCBzb2NrZXRzLg0KDQpXZSB3b3VsZCBiZSBn
bGFkIHRvIGRpc2N1c3Mgd2l0aCB5b3UgYWJvdXQgdGhpcyBzdWJqZWN0Lg0KDQpCZXN0IFJlZ2Fy
ZHMsDQoNCkRhdmlkIFBSQURBUw0KSm9hcXVpbiBNVUdVRVJaQQ0KDQotLS0tLS0tLS0tLS0tLS0t
LS0tLQ0KDQoNCmRpZmYgLS1naXQgYS9uZXQvbXB0Y3AvbXB0Y3BfZnVsbG1lc2guYyBiL25ldC9t
cHRjcC9tcHRjcF9mdWxsbWVzaC5jDQppbmRleCAxZTViNzUzLi42NjU1NjBhIDEwMDY0NA0KLS0t
IGEvbmV0L21wdGNwL21wdGNwX2Z1bGxtZXNoLmMNCisrKyBiL25ldC9tcHRjcC9tcHRjcF9mdWxs
bWVzaC5jDQpAQCAtNjI5LDYgKzYyOSwzOCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfYWRkcl9iaXRm
aWVsZHMoc3RydWN0IHNvY2sgKm1ldGFfc2ssDQogICAgICAgIH0NCiB9DQoNCitzdGF0aWMgaW50
IG1wdGNwX2ZpbmRfYWRkcmVzc190cmFuc3AoY29uc3Qgc3RydWN0IG1wdGNwX2xvY19hZGRyICpt
cHRjcF9sb2NhbCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhX2ZhbWlseV90IGZh
bWlseSwgY29uc3QgdW5pb24gaW5ldF9hZGRyICphZGRyLA0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IGlmX2lkeCkNCit7DQorICAgICAgIGludCBpOw0KKyAgICAgICB1OCBsb2Nf
Yml0czsNCisgICAgICAgYm9vbCBmb3VuZCA9IGZhbHNlOw0KKw0KKyAgICAgICBpZiAoZmFtaWx5
ID09IEFGX0lORVQpDQorICAgICAgICAgICAgICAgbG9jX2JpdHMgPSBtcHRjcF9sb2NhbC0+bG9j
NF9iaXRzOw0KKyAgICAgICBlbHNlDQorICAgICAgICAgICAgICAgbG9jX2JpdHMgPSBtcHRjcF9s
b2NhbC0+bG9jNl9iaXRzOw0KKw0KKyAgICAgICBtcHRjcF9mb3JfZWFjaF9iaXRfc2V0KGxvY19i
aXRzLCBpKSB7DQorICAgICAgICAgICAgICAgaWYgKGZhbWlseSA9PSBBRl9JTkVUICYmDQorICAg
ICAgICAgICAgICAgICAgICghaWZfaWR4IHx8IG1wdGNwX2xvY2FsLT5sb2NhZGRyNFtpXS5pZl9p
ZHggPT0gaWZfaWR4KSkgew0KKyAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlOw0K
KyAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQorICAgICAgICAgICAgICAgfQ0KKyAgICAg
ICAgICAgICAgIGlmIChmYW1pbHkgPT0gQUZfSU5FVDYgJiYNCisgICAgICAgICAgICAgICAgICAg
KCFpZl9pZHggfHwgbXB0Y3BfbG9jYWwtPmxvY2FkZHI2W2ldLmlmX2lkeCA9PSBpZl9pZHgpKSB7
DQorICAgICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7DQorICAgICAgICAgICAgICAg
ICAgICAgICBicmVhazsNCisgICAgICAgICAgICAgICB9DQorICAgICAgIH0NCisNCisgICAgICAg
aWYgKCFmb3VuZCkNCisgICAgICAgICAgICAgICByZXR1cm4gLTE7DQorDQorICAgICAgIHJldHVy
biBpOw0KK30NCisNCiBzdGF0aWMgaW50IG1wdGNwX2ZpbmRfYWRkcmVzcyhjb25zdCBzdHJ1Y3Qg
bXB0Y3BfbG9jX2FkZHIgKm1wdGNwX2xvY2FsLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2FfZmFtaWx5X3QgZmFtaWx5LCBjb25zdCB1bmlvbiBpbmV0X2FkZHIgKmFkZHIsDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaWZfaWR4KQ0KQEAgLTEyNzEsOSArMTMwMywx
OCBAQCBzdGF0aWMgdm9pZCBmdWxsX21lc2hfbmV3X3Nlc3Npb24oY29uc3Qgc3RydWN0IHNvY2sg
Km1ldGFfc2spDQogICAgICAgIHJjdV9yZWFkX2xvY2soKTsNCiAgICAgICAgbXB0Y3BfbG9jYWwg
PSByY3VfZGVyZWZlcmVuY2UoZm1fbnMtPmxvY2FsKTsNCg0KLSAgICAgICBpbmRleCA9IG1wdGNw
X2ZpbmRfYWRkcmVzcyhtcHRjcF9sb2NhbCwgZmFtaWx5LCAmc2FkZHIsIGlmX2lkeCk7DQotICAg
ICAgIGlmIChpbmRleCA8IDApDQorICAgICAgIGlmKGluZXRfc2sobWV0YV9zayktPnRyYW5zcGFy
ZW50KSB7DQorICAgICAgICAgICAgICAgbXB0Y3BfZGVidWcoIk1ldGEgc29ja2V0IGlzIHRyYW5z
cGFyZW50Iik7DQorICAgICAgICAgICAgICAgaW5kZXggPSBtcHRjcF9maW5kX2FkZHJlc3NfdHJh
bnNwKG1wdGNwX2xvY2FsLCBmYW1pbHksICZzYWRkciwgaWZfaWR4KTsNCisgICAgICAgfQ0KKyAg
ICAgICBlbHNlIHsNCisgICAgICAgICAgICAgICBtcHRjcF9kZWJ1ZygiTWV0YSBzb2NrZXQgaXMg
Tk9UIHRyYW5zcGFyZW50Iik7DQorICAgICAgICAgICAgICAgaW5kZXggPSBtcHRjcF9maW5kX2Fk
ZHJlc3MobXB0Y3BfbG9jYWwsIGZhbWlseSwgJnNhZGRyLCBpZl9pZHgpOw0KKyAgICAgICB9DQor
ICAgICAgIGlmIChpbmRleCA8IDApIHsNCisgICAgICAgICAgICAgICBtcHRjcF9kZWJ1ZygiRmFs
bGluZyBiYWNrIik7DQogICAgICAgICAgICAgICAgZ290byBmYWxsYmFjazsNCisgICAgICAgfQ0K
DQogICAgICAgIGlmIChmYW1pbHkgPT0gQUZfSU5FVCkNCiAgICAgICAgICAgICAgICBtYXN0ZXJf
dHAtPm1wdGNwLT5sb3dfcHJpbyA9IG1wdGNwX2xvY2FsLT5sb2NhZGRyNFtpbmRleF0ubG93X3By
aW87DQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KDQotLQ0KRGF2aWQgUFJBREFTDQpSZXNw
b25zYWJsZSBUZWNobmlxdWUgZGUgUHJvamV0cw0KKFBoLkQuIGluIFRlbGVjb21tdW5pY2F0aW9u
cykNClZpdmVyaXMgVGVjaG5vbG9naWVzDQorMzMoMCk1NjEwMDMwODgNCmRhdmlkLnByYWRhc0B0
b3Vsb3VzZS52aXZlcmlzLmNvbTxtYWlsdG86ZGF2aWQucHJhZGFzQHRvdWxvdXNlLnZpdmVyaXMu
Y29tPg0K

--_000_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPCEtLVtp
ZiAhbXNvXT48c3R5bGU+dlw6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kb1w6KiB7
YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0
I1ZNTCk7fQ0KLnNoYXBlIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9DQo8L3N0eWxlPjwh
W2VuZGlmXS0tPjxzdHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNl
DQoJe2ZvbnQtZmFtaWx5OkhlbHZldGljYTsNCglwYW5vc2UtMToyIDExIDYgNCAyIDIgMiAyIDIg
NDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OldpbmdkaW5nczsNCglwYW5vc2UtMTo1IDAg
MCAwIDAgMCAwIDAgMCAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6V2luZ2RpbmdzOw0K
CXBhbm9zZS0xOjUgMCAwIDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls
eTpDYWxpYnJpOw0KCXBhbm9zZS0xOjIgMTUgNSAyIDIgMiA0IDMgMiA0O30NCkBmb250LWZhY2UN
Cgl7Zm9udC1mYW1pbHk6VGFob21hOw0KCXBhbm9zZS0xOjIgMTEgNiA0IDMgNSA0IDQgMiA0O30N
CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IFw7Y29sb3JcOmJsYWNrIjsN
CglwYW5vc2UtMTowIDAgMCAwIDAgMCAwIDAgMCAwO30NCi8qIFN0eWxlIERlZmluaXRpb25zICov
DQpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowY207
DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1p
bHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjpibGFjazt9DQphOmxpbmssIHNw
YW4uTXNvSHlwZXJsaW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpibHVlOw0K
CXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KYTp2aXNpdGVkLCBzcGFuLk1zb0h5cGVybGlu
a0ZvbGxvd2VkDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpwdXJwbGU7DQoJdGV4
dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQpwDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCglt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGNtOw0KCW1zby1tYXJnaW4t
Ym90dG9tLWFsdDphdXRvOw0KCW1hcmdpbi1sZWZ0OjBjbTsNCglmb250LXNpemU6MTIuMHB0Ow0K
CWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7DQoJY29sb3I6YmxhY2s7fQ0K
cC5Nc29BY2V0YXRlLCBsaS5Nc29BY2V0YXRlLCBkaXYuTXNvQWNldGF0ZQ0KCXttc28tc3R5bGUt
cHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IlRleHRlIGRlIGJ1bGxlcyBDYXIiOw0KCW1h
cmdpbjowY207DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZTo4LjBwdDsNCglm
b250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6YmxhY2s7fQ0KcC5Nc29M
aXN0UGFyYWdyYXBoLCBsaS5Nc29MaXN0UGFyYWdyYXBoLCBkaXYuTXNvTGlzdFBhcmFncmFwaA0K
CXttc28tc3R5bGUtcHJpb3JpdHk6MzQ7DQoJbWFyZ2luLXRvcDowY207DQoJbWFyZ2luLXJpZ2h0
OjBjbTsNCgltYXJnaW4tYm90dG9tOjBjbTsNCgltYXJnaW4tbGVmdDozNi4wcHQ7DQoJbWFyZ2lu
LWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVz
IE5ldyBSb21hbiIsInNlcmlmIjsNCgljb2xvcjpibGFjazt9DQpzcGFuLkVtYWlsU3R5bGUxOQ0K
CXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWlseToiQ291cmllciBOZXciOw0K
CWNvbG9yOmJsYWNrOw0KCWZvbnQtd2VpZ2h0Om5vcm1hbDsNCglmb250LXN0eWxlOm5vcm1hbDt9
DQpzcGFuLlRleHRlZGVidWxsZXNDYXINCgl7bXNvLXN0eWxlLW5hbWU6IlRleHRlIGRlIGJ1bGxl
cyBDYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiVGV4dGUg
ZGUgYnVsbGVzIjsNCglmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7DQoJY29sb3I6
YmxhY2s7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjINCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVw
bHk7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsNCgljb2xvcjpibGFjazsNCglmb250LXdl
aWdodDpub3JtYWw7DQoJZm9udC1zdHlsZTpub3JtYWw7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNv
LXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9udC1zaXplOjEwLjBwdDt9DQpAcGFnZSBXb3Jk
U2VjdGlvbjENCgl7c2l6ZTo2MTIuMHB0IDc5Mi4wcHQ7DQoJbWFyZ2luOjcwLjg1cHQgNzAuODVw
dCA3MC44NXB0IDcwLjg1cHQ7fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9u
MTt9DQovKiBMaXN0IERlZmluaXRpb25zICovDQpAbGlzdCBsMA0KCXttc28tbGlzdC1pZDoxMTAw
MzY5ODI4Ow0KCW1zby1saXN0LXR5cGU6aHlicmlkOw0KCW1zby1saXN0LXRlbXBsYXRlLWlkczot
NDIyNDAyNjk0IC0xMzYwMjU4NjQwIDY3ODk1Mjk5IDY3ODk1MzAxIDY3ODk1Mjk3IDY3ODk1Mjk5
IDY3ODk1MzAxIDY3ODk1Mjk3IDY3ODk1Mjk5IDY3ODk1MzAxO30NCkBsaXN0IGwwOmxldmVsMQ0K
CXttc28tbGV2ZWwtc3RhcnQtYXQ6MDsNCgltc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7
DQoJbXNvLWxldmVsLXRleHQ6LTsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2
ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LTE4LjBwdDsNCglmb250LWZh
bWlseToiQ291cmllciBOZXciOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcg
Um9tYW4iO30NCkBsaXN0IGwwOmxldmVsMg0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxs
ZXQ7DQoJbXNvLWxldmVsLXRleHQ6bzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28t
bGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LTE4LjBwdDsNCglmb250
LWZhbWlseToiQ291cmllciBOZXciO30NCkBsaXN0IGwwOmxldmVsMw0KCXttc28tbGV2ZWwtbnVt
YmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674KnOw0KCW1zby1sZXZlbC10YWIt
c3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVu
dDotMTguMHB0Ow0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDQNCgl7
bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CtzsNCglt
c28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7
DQoJdGV4dC1pbmRlbnQ6LTE4LjBwdDsNCglmb250LWZhbWlseTpTeW1ib2w7fQ0KQGxpc3QgbDA6
bGV2ZWw1DQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4
dDpvOw0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRp
b246bGVmdDsNCgl0ZXh0LWluZGVudDotMTguMHB0Ow0KCWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5l
dyI7fQ0KQGxpc3QgbDA6bGV2ZWw2DQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsN
Cgltc28tbGV2ZWwtdGV4dDrvgqc7DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxl
dmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0xOC4wcHQ7DQoJZm9udC1m
YW1pbHk6V2luZ2RpbmdzO30NCkBsaXN0IGwwOmxldmVsNw0KCXttc28tbGV2ZWwtbnVtYmVyLWZv
cm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpu
b25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotMTgu
MHB0Ow0KCWZvbnQtZmFtaWx5OlN5bWJvbDt9DQpAbGlzdCBsMDpsZXZlbDgNCgl7bXNvLWxldmVs
LW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Om87DQoJbXNvLWxldmVsLXRh
Yi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5k
ZW50Oi0xOC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijt9DQpAbGlzdCBsMDpsZXZl
bDkNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+C
pzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9u
OmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LTE4LjBwdDsNCglmb250LWZhbWlseTpXaW5nZGluZ3M7fQ0K
b2wNCgl7bWFyZ2luLWJvdHRvbTowY207fQ0KdWwNCgl7bWFyZ2luLWJvdHRvbTowY207fQ0KLS0+
PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9
ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBt
c28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0
PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0K
PC9oZWFkPg0KPGJvZHkgYmdjb2xvcj0id2hpdGUiIGxhbmc9IkZSIiBsaW5rPSJibHVlIiB2bGlu
az0icHVycGxlIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPkhpIERhdmlkLA0KPG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMi
IHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1
b3Q7O2NvbG9yOmJsYWNrIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPlRoYW5rIHlvdSBm
b3IgY2xhcmlmeWluZy4gTXVjaCBhcHByZWNpYXRlZCE8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZTox
MC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+UGxlYXNlIHNlZSBpbmxpbmUuPG86cD48L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7O2Nv
bG9yOmJsYWNrIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPkNoZWVycyw8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDs7
Y29sb3I6YmxhY2siPk1lZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PG86cD4mbmJzcDs8L286cD48
L3NwYW4+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1
ZSAxLjVwdDtwYWRkaW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJi
b3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzozLjBwdCAw
Y20gMGNtIDBjbSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtUYWhvbWEmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90Oztjb2xvcjp3aW5kb3d0ZXh0Ij5EZSZuYnNwOzo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtz
YW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPiBEYXZpZCBQcmFkYXMgW21haWx0bzpk
YXZpZC5wcmFkYXNAdG91bG91c2Uudml2ZXJpcy5jb21dDQo8YnI+DQo8Yj5FbnZvecOpJm5ic3A7
OjwvYj4gdmVuZHJlZGkgMjcgb2N0b2JyZSAyMDE3IDExOjIwPGJyPg0KPGI+w4AmbmJzcDs6PC9i
PiBCT1VDQURBSVIgTW9oYW1lZCBJTVQvT0xOOyBtdWx0aXBhdGh0Y3BAaWV0Zi5vcmc8YnI+DQo8
Yj5DYyZuYnNwOzo8L2I+IEpvYXF1aW4gTXVndWVyemE7IGZhYnJpY2UuYXJuYWxAdGhhbGVzYWxl
bmlhc3BhY2UuY29tOyBLdWhuIE5pY29sYXM7IEVtbWFudWVsIER1Ym9pczsgU0FMTEFOVElOIFJl
bmF1ZDsgUmlhZGggRGhhb3U7IEZBU1NPTiBKdWxpZW48YnI+DQo8Yj5PYmpldCZuYnNwOzo8L2I+
IFJlOiBbbXVsdGlwYXRodGNwXSBNUFRDUCB0cmFuc3BhcmVudCBwcm94eTxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNw
OzwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSBNZWQsPGJyPg0KPGJy
Pg0KVGhhbmsgeW91IGZvciB5b3VyIHJlcGx5LiBZZXMsIGluZGVlZCwgd2UgYWxzbyBzZW50IHRo
ZSBlbWFpbCB0byB0aGUgbWFpbnRhaW5lcnMgb2YgdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIGZv
ciBmdXJ0aGVyIGRpc2N1c3Npb24gcmVnYXJkaW5nIHRoZSBtb2RpZmljYXRpb24uIEJ1dCB3ZSB3
YW50ZWQgdG8gc2hhcmUgdGhlIGNvbnRleHQgb2YgdGhlIHN0dWR5IHdpdGggdGhlIElFVEYgbWFp
bGluZyBsaXN0IHNpbmNlIHdlIHRob3VnaHQgaXQgd291bGQNCiBiZSBpbnRlcmVzdGluZyB0byBo
YXZlIHlvdXIgZmVlZGJhY2suPGJyPg0KPGJyPg0KUmVnYXJkaW5nIHlvdXIgcXVlc3Rpb25zOiA8
YnI+DQo8c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7Q291cmllciBOZXcgO2NvbG9yOmJsYWNrJnF1b3Q7LCZxdW90O3NlcmlmJnF1b3Q7
Ij4tPC9zcGFuPiZuYnNwOw0KPHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3IDtjb2xvcjpibGFjayZxdW90OywmcXVv
dDtzZXJpZiZxdW90OyI+DQpJcyB0aGVyZSBhbnkgcmVhc29uIHdoeSB5b3UgZGVjaWRlZCB0byB1
c2UgdGhlIHRyYW5zcGFyZW50IHByb3h5IG1vZGU/PGJyPg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVO
LVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtIZWx2ZXRpY2Em
cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+WW91ciBxdWVzdGlvbiBpcyB2ZXJ5IHJlbGV2
YW50ISBJdCB3YXMgYSBmdW5jdGlvbmFsIHJlcXVpcmVtZW50LCB3ZSB3YW50ZWQgdG8gZXZhbHVh
dGVkIHRoZSBzeXN0ZW0gcGVyZm9ybWFuY2Ugd2l0aG91dCBOQVQgdHJhbnNsYXRpb24uDQo8L3Nw
YW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0hlbHZldGljYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOmJsYWNr
Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmll
ciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEw
LjBwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+W01l
ZF0gUGxlYXNlIG5vdGUgdGhhdCBldmVuIGluIHRoZSB0cmFuc3BhcmVudCBtb2RlLCBhICoqIHRy
YW5zbGF0aW9uIChOQVQsIGlmIHlvdSB3aWxsKSAqKiBpcyByZXF1aXJlZCBmb3Igc3Vic2VxdWVu
dCBzdWJmbG93czogVGhlIHByb3h5IHdpbGwgbmVlZCB0byB0cmFuc2xhdGUNCiB0aGUgaW50ZXJu
YWwgSVAgYWRkcmVzcy9wb3J0IHRvIHRoZSBvbmUgdXNlZCB0byBwbGFjZSB0aGUgZmlyc3Qgc3Vi
Zmxvdy4gRnVydGhlciwgdGhlIHRyYW5zcGFyZW50IG1vZGUgd2lsbCByZXF1aXJlIHRoYXQgdGhl
IHRyYWZmaWMgc2hvdWxkIGJlIGluc3BlY3RlZCB0byBkZXRlY3QgdGhlIE1QVENQIG9uZS4gVGhp
cyBpbnNwZWN0aW9uIGZ1bmN0aW9uIG1heSBoYXZlIHNvbWUgaW1wbGljYXRpb25zIG9uIHRoZSBz
eXN0ZW0gcGVyZm9ybWFuY2UuPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1z
aXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyA7Y29sb3I6YmxhY2smcXVv
dDssJnF1b3Q7c2VyaWYmcXVvdDsiPjxicj4NCjxicj4NCi0gRGlkIHlvdSBjb25zaWRlcmVkIHRv
IHVzZSB0aGUgZXhwbGljaXQgbW9kZT88YnI+DQo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0
eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0hlbHZldGljYSZxdW90Oywm
cXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5XZSBkaWQgbm90IGNvbnNpZGVyIHRoaXMgbW9kZSwgYmVj
YXVzZSB3ZSB0aG91Z2ggdGhhdCwgZXZlbiBnaXZpbmcgdGhlIGFkZHJlc3MgbGlzdCwgdGhlIGJl
aGF2aW91ciBvZiB0aGUgaW1wbGVtZW50YXRpb24gd2lsbCBiZSB0aGUgc2FtZTogaS5lLiBmYWxs
YmFjayB0byBUQ1AgaWYgdGhlIGFkZHJlc3MNCiBpcyBub3QgcHJlc2VudCBpbiB0aGUgbWFjaGlu
ZSAodG8gYmUgY29uZmlybWVkISkuPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9u
dC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtIZWx2ZXRpY2EmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90Oztjb2xvcjpibGFjayI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNrIj48bzpwPiZu
YnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJF
Ti1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBO
ZXcmcXVvdDs7Y29sb3I6YmxhY2siPltNZWRdIFRoZSBiZWhhdmlvciBmb3Igc3Vic2VxdWVudCBz
dWJmbG93cyBlc3RhYmxpc2htZW50IHdvdWxkIGJlIHRoZSBzYW1lLCBidXQgdGhlcmUgYXJlIG90
aGVyIGFkdmFudGFnZXMgdGhhdCBhcmUgd29ydGggdG8gYmUgY29uc2lkZXJlZDo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTGlzdFBhcmFncmFwaCIgc3R5bGU9InRleHQtaW5k
ZW50Oi0xOC4wcHQ7bXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzEiPjwhW2lmICFzdXBwb3J0TGlzdHNd
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTom
cXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PHNwYW4gc3R5bGU9Im1zby1saXN0
Oklnbm9yZSI+LTxzcGFuIHN0eWxlPSJmb250OjcuMHB0ICZxdW90O1RpbWVzIE5ldyBSb21hbiZx
dW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+
PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZx
dW90O0NvdXJpZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNrIj5UaGUgcHJveHkgaXMgbm90IHJlcXVp
cmVkIHRvIGJlIGVtYmVkZGVkIG9uIGFuIG9uLXBhdGggcm91dGVyPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb0xpc3RQYXJhZ3JhcGgiIHN0eWxlPSJ0ZXh0LWluZGVudDotMTgu
MHB0O21zby1saXN0OmwwIGxldmVsMSBsZm8xIj48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbiBs
YW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291
cmllciBOZXcmcXVvdDs7Y29sb3I6YmxhY2siPjxzcGFuIHN0eWxlPSJtc28tbGlzdDpJZ25vcmUi
Pi08c3BhbiBzdHlsZT0iZm9udDo3LjBwdCAmcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPiZu
YnNwOyZuYnNwOyZuYnNwOw0KPC9zcGFuPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+T25seSB0aGUgZWxpZ2libGUgdHJhZmZpYyB3aWxs
IGJlIGRpcmVjdGVkIHRvIHRoZSBwcm94eTsgbm8gbmVlZCBmb3IgdHJhZmZpYyBpbnNwZWN0aW9u
IG9yIGhvb2tzIHRvIGludm9rZSB0aGUgcHJveHkgZnVuY3Rpb248bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTGlzdFBhcmFncmFwaCIgc3R5bGU9InRleHQtaW5kZW50Oi0xOC4w
cHQ7bXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzEiPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIGxh
bmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3Vy
aWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+PHNwYW4gc3R5bGU9Im1zby1saXN0Oklnbm9yZSI+
LTxzcGFuIHN0eWxlPSJmb250OjcuMHB0ICZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Jm5i
c3A7Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+PHNwYW4gbGFu
Zz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJp
ZXIgTmV3JnF1b3Q7O2NvbG9yOmJsYWNrIj5Zb3UgY2FuIGVhc2lseSBkaXN0aW5ndWlzaCBNUFRD
UCBwcm94aWVkIHRyYWZmaWMgdnMuIE1QVENQIGZsb3dzIHRoYXQgYXJlIG5hdGl2ZWx5IGluaXRp
YXRlZCBieSBpbnRlcm5hbCBob3N0cy4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIj48YnI+DQo8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIg
TmV3IDtjb2xvcjpibGFjayZxdW90OywmcXVvdDtzZXJpZiZxdW90OyI+LSBIb3cgZG8geW91IGVu
c3VyZSB0aGF0IHRoZSBwcm94eSB3aWxsIGJlIG9uLXBhdGggd2hhdGV2ZXIgdGhlIGxpbmsgeW91
IHVzZSB0byBwbGFjZSB0aGUgZmlyc3Qgc3ViZmxvdz88YnI+DQo8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0hlbHZldGlj
YSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5JbiBmYWN0LCB3ZSBhbHdheXMgZm9yY2Ug
dGhlIGZpc3Qgc3ViZmxvdyB0byBnbyB0aHJvdWdoIHRoZSB0ZXJyZXN0cmlhbCBsaW5rIChhbmQg
dGhlIHNlY29uZCBvbmUgdGhyb3VnaCB0aGUgc2F0ZWxsaXRlIGxpbmspLiBLbm93aW5nIHRoYXQg
Ym90aCBsaW5rIGFyZSBhZ2dyZWdhdGVkIGJ5IG91cg0KIHByb3h5IE1QVENQLVBFUC48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIg
c3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv
dDs7Y29sb3I6YmxhY2siPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90Oztjb2xvcjpibGFjayI+W01lZF0gT0ssIHRo
YW5rcy4gJm5ic3A7Jm5ic3A7PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiPjxicj4NCktpbmQgcmVnYXJkcyw8YnI+DQo8YnI+DQpE
YXZpZDxicj4NCjwvc3Bhbj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4w
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcgO2NvbG9yOmJsYWNrJnF1b3Q7LCZxdW90
O3NlcmlmJnF1b3Q7Ij48YnI+DQo8YnI+DQo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiPkxlIDI2
LzEwLzIwMTcgw6AgMTA6NTksIDwvc3Bhbj48YSBocmVmPSJtYWlsdG86bW9oYW1lZC5ib3VjYWRh
aXJAb3JhbmdlLmNvbSI+PHNwYW4gbGFuZz0iRU4tVVMiPm1vaGFtZTwvc3Bhbj5kLmJvdWNhZGFp
ckBvcmFuZ2UuY29tPC9hPiBhIMOpY3JpdCZuYnNwOzo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K
PGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250
LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyA7Y29sb3I6YmxhY2smcXVvdDssJnF1b3Q7c2VyaWYm
cXVvdDsiPkRlYXIgRGF2aWQsIGFsbCw8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVv
dDtDb3VyaWVyIE5ldyA7Y29sb3I6YmxhY2smcXVvdDssJnF1b3Q7c2VyaWYmcXVvdDsiPiZuYnNw
Ozwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9
IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtDb3VyaWVy
IE5ldyA7Y29sb3I6YmxhY2smcXVvdDssJnF1b3Q7c2VyaWYmcXVvdDsiPlRoYW5rIHlvdSBmb3Ig
c2hhcmluZyB0aGlzIGluZm9ybWF0aW9uLiBZb3UgbWF5IHdhbnQgdG8gZGlyZWN0IHRoaXMgbWVz
c2FnZSB0byB0aGUgbWFpbnRhaW5lcnMgb2YgdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIHlvdSBt
ZW50aW9uZWQuDQo8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q291cmllciBOZXcgO2NvbG9yOmJsYWNrJnF1b3Q7LCZxdW90O3NlcmlmJnF1b3Q7Ij4mbmJz
cDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmll
ciBOZXcgO2NvbG9yOmJsYWNrJnF1b3Q7LCZxdW90O3NlcmlmJnF1b3Q7Ij5JIGhhdmUgc29tZSBh
cmNoaXRlY3R1cmFsIHF1ZXN0aW9uczogSXMgdGhlcmUgYW55IHJlYXNvbiB3aHkgeW91IGRlY2lk
ZWQgdG8gdXNlIHRoZSB0cmFuc3BhcmVudCBwcm94eSBtb2RlPyBEaWQgeW91IGNvbnNpZGVyZWQg
dG8gdXNlIHRoZSBleHBsaWNpdA0KIG1vZGU/IEhvdyBkbyB5b3UgZW5zdXJlIHRoYXQgdGhlIHBy
b3h5IHdpbGwgYmUgb24tcGF0aCB3aGF0ZXZlciB0aGUgbGluayB5b3UgdXNlIHRvIHBsYWNlIHRo
ZSBmaXJzdCBzdWJmbG93Pzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWls
eTomcXVvdDtDb3VyaWVyIE5ldyA7Y29sb3I6YmxhY2smcXVvdDssJnF1b3Q7c2VyaWYmcXVvdDsi
PiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseTomcXVvdDtD
b3VyaWVyIE5ldyA7Y29sb3I6YmxhY2smcXVvdDssJnF1b3Q7c2VyaWYmcXVvdDsiPlRoYW5rIHlv
dS48L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmll
ciBOZXcgO2NvbG9yOmJsYWNrJnF1b3Q7LCZxdW90O3NlcmlmJnF1b3Q7Ij4mbmJzcDs8L3NwYW4+
PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBsYW5nPSJFTi1VUyIg
c3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcgO2Nv
bG9yOmJsYWNrJnF1b3Q7LCZxdW90O3NlcmlmJnF1b3Q7Ij5DaGVlcnMsPC9zcGFuPjxvOnA+PC9v
OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJm
b250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3IDtjb2xvcjpibGFj
ayZxdW90OywmcXVvdDtzZXJpZiZxdW90OyI+TWVkPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LXNpemU6MTAu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3IDtjb2xvcjpibGFjayZxdW90OywmcXVv
dDtzZXJpZiZxdW90OyI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0i
Ym9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBjbSAwY20g
MGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNv
bGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzozLjBwdCAwY20gMGNtIDBjbSI+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48Yj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29s
b3I6d2luZG93dGV4dCI+RGUmbmJzcDs6PC9zcGFuPjwvYj48c3BhbiBsYW5nPSJFTi1VUyIgc3R5
bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90
O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+IG11bHRpcGF0aHRjcCBbPGEgaHJl
Zj0ibWFpbHRvOm11bHRpcGF0aHRjcC1ib3VuY2VzQGlldGYub3JnIj5tYWlsdG86bXVsdGlwYXRo
dGNwLWJvdW5jZXNAaWV0Zi5vcmc8L2E+XQ0KPGI+RGUgbGEgcGFydCBkZTwvYj4gRGF2aWQgUHJh
ZGFzPGJyPg0KPGI+RW52b3nDqSZuYnNwOzo8L2I+IGpldWRpIDI2IG9jdG9icmUgMjAxNyAxMDo8
L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFo
b21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+MjA8YnI+
DQo8Yj7DgCZuYnNwOzo8L2I+IDxhIGhyZWY9Im1haWx0bzptdWx0aXBhdGh0Y3BAaWV0Zi5vcmci
Pm11bHRpcGF0aHRjcEBpZXRmLm9yZzwvYT48YnI+DQo8Yj5DYyZuYnNwOzo8L2I+IEpvYXF1aW4g
TXVndWVyemE7IDxhIGhyZWY9Im1haWx0bzpmYWJyaWNlLmFybmFsQHRoYWxlc2FsZW5pYXNwYWNl
LmNvbSI+DQpmYWJyaWNlLmFybmFsQHRoYWxlc2FsZW5pYXNwYWNlLmNvbTwvYT47IEt1aG4gTmlj
b2xhczsgRW1tYW51ZWwgRHVib2lzOyBTQUxMQU5USU4gUmVuYXVkOyBSaWFkaCBEaGFvdTsgRkFT
U09OIEp1bGllbjxicj4NCjxiPk9iamV0Jm5ic3A7OjwvYj4gW211bHRpcGF0aHRjcF0gTVBUQ1Ag
dHJhbnNwYXJlbnQgcHJveHk8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cD48c3BhbiBsYW5n
PSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90OyI+RGVhciBBbGwsIDwvc3Bhbj4NCjxvOnA+PC9vOnA+PC9wPg0KPHA+PHNw
YW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZx
dW90O3NhbnMtc2VyaWYmcXVvdDsiPldlIGNvbnRhY3QgeW91IHJlZ2FyZGluZyB0aGUgTVBUQ1Ag
aW1wbGVtZW50YXRpb24gKHYwLjkyKSBhbmQgc29tZSBwcm9ibGVtcyB3ZSBoYXZlIGVuY291bnRl
cmVkIGluIGEgc3BlY2lmaWMgdXNlIGNhc2UgKHRyYW5zcGFyZW50IHNvY2tldHMpLiBXZSB3aWxs
IHRyeSB0byBzdW1tYXJpc2UgdGhlIGNvbnRleHQgb2Ygb3VyIHN0dWR5LA0KIGFzIHdlbGwgYXMg
dGhlIHByb2JsZW0gYW5kIHRoZSBzb2x1dGlvbnMgd2UgcHJvcG9zZSB0byBzb2x2ZSBpdC48L3Nw
YW4+PG86cD48L286cD48L3A+DQo8cD48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+VGhlIG9iamVj
dGl2ZSBvZiB0aGUgc3R1ZHkgaGFzIGJlZW4gdG8gd29yayBvbiBhIE1QVENQLVBFUCBwcm94eSwg
d2hlcmUgdGhlIHByb3h5IChQRVBzYWwgaW1wbGVtZW50YXRpb24pIHNwbGl0cyB0aGUgVENQIGNv
bm5lY3Rpb24gYW5kLCB3aXRoIE1QVENQLCBhZ2dyZWdhdGVzIHR3byBsaW5rIChzYXRlbGxpdGUg
YW5kIHRlcnJlc3RyaWFsKS4NCiBXZSBoYXZlIGFsc28gZm9jdXNlZCBvbiBvdGhlciBzY2VuYXJp
b3MgKGUuZy4gUEVQc2FsIG9ubHkgb24gdGhlIHNhdGVsbGl0ZSBsaW5rKSwgYnV0IHdlIHByZWZl
ciB0byBkaXNjdXNzIG9ubHkgdGhlIG9uZSBwcmVzZW50ZWQgaW4gdGhlIGZpZ3VyZSBiZWxvdzo8
L3NwYW4+PG86cD48L286cD48L3A+DQo8cD48c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+Jm5ic3A7
PGltZyBib3JkZXI9IjAiIHdpZHRoPSI3MjciIGhlaWdodD0iMTY4IiBpZD0iX3gwMDAwX2kxMDI1
IiBzcmM9ImNpZDppbWFnZTAwMS5qcGdAMDFEMzRGMkEuQ0NEODNBRTAiPjwvc3Bhbj48bzpwPjwv
bzpwPjwvcD4NCjxwPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7
Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5XaGlsZSB0cnlpbmcgdG8gcHV0
IHRvZ2V0aGVyIG91ciBpbXBsZW1lbnRhdGlvbiBvZiBQRVBzYWwgKHRyYW5zcGFyZW50IHByb3h5
KSBpbiBhIE1QVENQPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0Qi
Pg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij5jb21wbGlhbnQga2VybmVsLCB3ZSBo
YWQgdG8gZmFjZSBhIHByb2JsZW0gd2l0aCB0aGUgTVBUQ1AgaW1wbGVtZW50YXRpb24gZHVlIHRv
IHRoZSB0cmFuc3BhcmVudCBzb2NrZXRzPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0i
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2Nv
bG9yOiMxRjQ5N0QiPg0KPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1p
bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7Ij51c2VkPC9zcGFu
PjxzcGFuIGxhbmc9IkVOLVVTIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90
OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOnJlZCI+DQo8L3NwYW4+PHNwYW4gbGFuZz0i
RU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt
c2VyaWYmcXVvdDsiPmluIFBFUHNhbC4gQWZ0ZXIgY2FyZWZ1bGx5IHJlYWRpbmcgdGhlIE1QVENQ
IGNvZGUsIHdlIGRpc2NvdmVyZWQgdGhhdCB3aGVuIG9wZW5pbmcgbmV3IHN1YmZsb3dzICh1c2lu
ZyB0aGUgZnVsbG1lc2ggYWxnb3JpdGhtKSwgZmlyc3QgaXQgaXMgY2hlY2tlZCBpZiB0aGUgSVAg
YWRkcmVzcyBvZiB0aGUgbWFpbiBzdWJmbG93IGNvcnJlc3BvbmRzDQogdG8gYW55IG9mIHRoZSBu
ZXR3b3JrIGludGVyZmFjZXMgb24gdGhlIG1hY2hpbmUuIFRoaXMgcHJlc2VudHMgYSBwcm9ibGVt
IHdoZW4gd29ya2luZyB3aXRoIHRyYW5zcGFyZW50IHNvY2tldHMsIHNpbmNlIHRoZXNlIHNvY2tl
dHMgY2FuIGJlIGJvdW5kIHRvIGV4dGVybmFsIElQIGFkZHJlc3Nlcywgbm90IHByZXNlbnQgb24g
dGhlIG1hY2hpbmUuIEluIHRoaXMgY2FzZSwgdGhlIE1QVENQIGltcGxlbWVudGF0aW9uIGZhbGxz
IGJhY2sgdG8gYSBjbGFzc2ljYWwNCiBUQ1AgY29ubmVjdGlvbiwgd2hpY2ggaXMgbm90IHRoZSBi
ZWhhdmlvdXIgd2U8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTom
cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+
DQo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxp
YnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPnRhcmdldC48YnI+DQo8YnI+DQo8L3Nw
YW4+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fu
cy1zZXJpZiZxdW90OyI+V2UgYXNzdW1lIHN1Y2ggYmVoYXZpb3VyIG9mICZuYnNwO01QVENQIGlt
cGxlbWVudGF0aW9uIHdhcyBhIGRlbGliZXJhdGUgY2hvaWNlIChlLmcuIGZvciBzZWN1cml0eSBj
b25jZXJucykuIElzIGl0IGFjdHVhbGx5IHRoZSBtYWluIGRyaXZlciA/IENvdWxkIHN1Y2ggY29t
cGF0aWJpbGl0eSB3aXRoIHRyYW5zcGFyZW50IHByb3h5aW5nIGJlIGFjY2VwdGFibGUNCiBmb3Ig
c3Vic2VxdWVudCBNUFRDUCB2ZXJzaW9ucyA/IDxicj4NCldlIGhhdmUgcHJvY2VlZGVkIHRvIHN1
Y2ggY29kZSBtb2RpZmljYXRpb24sIGFuZCB3ZSBhcmUgaGFwcHkgdG8gc2hhcmUgaXQgd2l0aCB5
b3UsIGZvciByZXZpZXcgYW5kIHBvc3NpYmxlIGludGVncmF0aW9uIGluIHRoZSBtYWluIE1QVENQ
IGNvZGUuIFlvdSBtYXkgZGVjaWRlIGZvciBpbnN0YW5jZSBpZiB0aGlzIGZlYXR1cmUgc2hhbGwg
YmUgaW1wbGVtZW50ZWQgdW5kZXIgYWxsIGNpcmN1bXN0YW5jZXMsIG9yIHJlc3RyaWN0ZWQgdG8g
YSBjZXJ0YWluDQogbW9kZSBvbmx5IChlLmcuIGFjdGl2YXRlZCB0aHJvdWdoIGEgY29udHJvbCBv
cHRpb24sIHN5c2N0bCBjb21tYW5kLCAuLi4gKS48L3NwYW4+PG86cD48L286cD48L3A+DQo8cD48
c3BhbiBsYW5nPSJFTi1VUyIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
JnF1b3Q7c2Fucy1zZXJpZiZxdW90OyI+U2Vjb25kbHksPC9zcGFuPjxzcGFuIGxhbmc9IkVOLVVT
IiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlm
JnF1b3Q7O2NvbG9yOnJlZCI+DQo8L3NwYW4+PHNwYW4gbGFuZz0iRU4tVVMiIHN0eWxlPSJmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPndlIGhh
dmUgY2FycmllZCBvdXQgc29tZSBwZXJmb3JtYW5jZXMgdGVzdHMgd2l0aCBhcHBsaWNhdGlvbnMg
c3VjaCBhcyBIVFRQIChtZWFzdXJpbmcgdGhlIHBhZ2UgbG9hZCB0aW1lKSBvciBmaWxlIHRyYW5z
ZmVyIG92ZXIgVENQLCBhbmQgd2UgaGF2ZSBvYnNlcnZlZCB0aGF0IE1QVENQIG91dHBlcmZvcm1z
IChvciBlcXVhbHMpDQogdGhlIGNhc2Ugd2hlcmUgb25seSBvbmUgYWNjZXNzIGlzIHVzZWQgKHRl
cnJlc3RyaWFsIG9yIHNhdGVsbGl0ZSksIHNwZWNpYWxseSB1bmRlciBjb25nZXN0aW9uIGNvbmRp
dGlvbnMuIFRoYXQgYmVpbmcgc2FpZCwgd2UgZXhwZWN0IHRvIGZ1cnRoZXIgd29yayBvbiB0aGlz
IGlzc3VlLCBtYWlubHkgYXNzZXNzaW5nICgxKSB0aGUgcGVyZm9ybWFuY2Ugb2YgTVBUQ1Agc2No
ZWR1bGVycyB3aXRoIHN1Y2ggbGFyZ2UgYXN5bW1ldHJ5LCAoMikgdGhlDQogcGVyZm9ybWFuY2Ug
b2YgdGhlIGRpZmZlcmVudCBjb3VwbGVkIGNvbmdlc3Rpb24gY29udHJvbCBpbiBvdXIgdXNlLWNh
c2UgYW5kICgzKSBjb25zaWRlciB0aGUgcmVsZXZhbmNlIG9mIHRoZSBzZWNvbmQgc3ViLWZsb3cg
b3BlbmluZyAobWFpbmx5IGZvciBzaG9ydCBmbG93cykuIERvIG5vdCBoZXNpdGF0ZSB0byBsZXQg
dXMga25vdyBpZiB5b3UgaGF2ZSBhbnkgaW50ZXJlc3QgaW4gY29sbGFib3JhdGluZyBpbiB0aGlz
IGZ1dHVyZSB3b3JrLjxicj4NCjxicj4NCldlIGF0dGFjaGVkIGhlcmVpbiB0aGUgbW9kaWZpY2F0
aW9uIHdlIHVzZWQsIHdoaWNoIGFsbG93cyBNUFRDUCB0byB3b3JrIHdoZW4gdXNpbmcgdHJhbnNw
YXJlbnQgc29ja2V0cy4NCjxicj4NCjxicj4NCldlIHdvdWxkIGJlIGdsYWQgdG8gZGlzY3VzcyB3
aXRoIHlvdSBhYm91dCB0aGlzIHN1YmplY3QuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJp
ZiZxdW90OyI+QmVzdCBSZWdhcmRzLDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwPjxzcGFuIHN0
eWxlPSJmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVv
dDsiPkRhdmlkIFBSQURBUzxicj4NCkpvYXF1aW4gTVVHVUVSWkE8L3NwYW4+PG86cD48L286cD48
L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox
MC4wcHQiPjxicj4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tPGk+PHU+PGJyPg0KPGJyPg0KPC91Pjwv
aT48L3NwYW4+PGJyPg0KZGlmZiAtLWdpdCBhL25ldC9tcHRjcC9tcHRjcF9mdWxsbWVzaC5jIGIv
bmV0L21wdGNwL21wdGNwX2Z1bGxtZXNoLmMgPGJyPg0KaW5kZXggMWU1Yjc1My4uNjY1NTYwYSAx
MDA2NDQgPGJyPg0KLS0tIGEvbmV0L21wdGNwL21wdGNwX2Z1bGxtZXNoLmMgPGJyPg0KJiM0Mzsm
IzQzOyYjNDM7IGIvbmV0L21wdGNwL21wdGNwX2Z1bGxtZXNoLmMgPGJyPg0KQEAgLTYyOSw2ICYj
NDM7NjI5LDM4IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9hZGRyX2JpdGZpZWxkcyhzdHJ1Y3Qgc29j
ayAqbWV0YV9zaywgPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7IH0gPGJyPg0KJm5ic3A7fSA8YnI+DQo8YnI+DQomIzQzO3N0YXRpYyBpbnQgbXB0Y3BfZmlu
ZF9hZGRyZXNzX3RyYW5zcChjb25zdCBzdHJ1Y3QgbXB0Y3BfbG9jX2FkZHIgKm1wdGNwX2xvY2Fs
LCA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBzYV9mYW1pbHlfdCBmYW1pbHksIGNvbnN0IHVuaW9uIGluZXRfYWRkciAqYWRk
ciwgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgaW50IGlmX2lkeCkgPGJyPg0KJiM0Mzt7IDxicj4NCiYjNDM7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGludCBpOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB1OCBsb2NfYml0czsgPGJyPg0KJiM0MzsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYm9vbCBmb3VuZCA9IGZhbHNlOyA8YnI+DQom
IzQzOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAo
ZmFtaWx5ID09IEFGX0lORVQpIDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGxvY19iaXRzID0gbXB0Y3BfbG9jYWwtJmd0O2xvYzRfYml0czsgPGJyPg0KJiM0MzsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZWxzZSA8YnI+DQomIzQzOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyBsb2NfYml0cyA9IG1wdGNwX2xvY2FsLSZndDtsb2M2X2JpdHM7IDxi
cj4NCiYjNDM7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IG1wdGNwX2Zvcl9lYWNoX2JpdF9zZXQobG9jX2JpdHMsIGkpIHsgPGJyPg0KJiM0MzsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKGZhbWlseSA9PSBBRl9JTkVUICZhbXA7JmFtcDsgPGJy
Pg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgKCFpZl9pZHggfHwgbXB0Y3BfbG9jYWwtJmd0O2xvY2FkZHI0W2ldLmlmX2lkeCA9PSBpZl9p
ZHgpKSB7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGZvdW5kID0gdHJ1ZTsgPGJyPg0K
JiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYnJlYWs7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IH0gPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYg
KGZhbWlseSA9PSBBRl9JTkVUNiAmYW1wOyZhbXA7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICghaWZfaWR4IHx8IG1wdGNwX2xv
Y2FsLSZndDtsb2NhZGRyNltpXS5pZl9pZHggPT0gaWZfaWR4KSkgeyA8YnI+DQomIzQzOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyBmb3VuZCA9IHRydWU7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGJyZWFrOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9IDxicj4NCiYj
NDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH0gPGJyPg0KJiM0MzsgPGJy
Pg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKCFmb3VuZCkg
PGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIC0xOyA8YnI+DQom
IzQzOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1
cm4gaTsgPGJyPg0KJiM0Mzt9IDxicj4NCiYjNDM7IDxicj4NCiZuYnNwO3N0YXRpYyBpbnQgbXB0
Y3BfZmluZF9hZGRyZXNzKGNvbnN0IHN0cnVjdCBtcHRjcF9sb2NfYWRkciAqbXB0Y3BfbG9jYWws
IDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBzYV9mYW1pbHlfdCBmYW1pbHksIGNvbnN0IHVuaW9uIGluZXRfYWRkciAqYWRk
ciwgPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGludCBpZl9pZHgpIDxicj4NCkBAIC0xMjcxLDkgJiM0MzsxMzAzLDE4IEBA
IHN0YXRpYyB2b2lkIGZ1bGxfbWVzaF9uZXdfc2Vzc2lvbihjb25zdCBzdHJ1Y3Qgc29jayAqbWV0
YV9zaykNCjxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBy
Y3VfcmVhZF9sb2NrKCk7IDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBtcHRjcF9sb2NhbCA9IHJjdV9kZXJlZmVyZW5jZShmbV9ucy0mZ3Q7bG9jYWwpOyA8
YnI+DQo8YnI+DQotJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGluZGV4ID0g
bXB0Y3BfZmluZF9hZGRyZXNzKG1wdGNwX2xvY2FsLCBmYW1pbHksICZhbXA7c2FkZHIsIGlmX2lk
eCk7IDxicj4NCi0mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKGluZGV4
ICZsdDsgMCkgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
aWYoaW5ldF9zayhtZXRhX3NrKS0mZ3Q7dHJhbnNwYXJlbnQpIHsgPGJyPg0KJiM0MzsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgbXB0Y3BfZGVidWcoJnF1b3Q7TWV0YSBzb2NrZXQgaXMgdHJh
bnNwYXJlbnQmcXVvdDspOyA8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBp
bmRleCA9IG1wdGNwX2ZpbmRfYWRkcmVzc190cmFuc3AobXB0Y3BfbG9jYWwsIGZhbWlseSwgJmFt
cDtzYWRkciwgaWZfaWR4KTsNCjxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7IH0gPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgZWxzZSB7IDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IG1wdGNwX2Rl
YnVnKCZxdW90O01ldGEgc29ja2V0IGlzIE5PVCB0cmFuc3BhcmVudCZxdW90Oyk7IDxicj4NCiYj
NDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGluZGV4ID0gbXB0Y3BfZmluZF9hZGRyZXNz
KG1wdGNwX2xvY2FsLCBmYW1pbHksICZhbXA7c2FkZHIsIGlmX2lkeCk7IDxicj4NCiYjNDM7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH0gPGJyPg0KJiM0MzsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaWYgKGluZGV4ICZsdDsgMCkgeyA8YnI+DQomIzQz
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBtcHRjcF9kZWJ1ZygmcXVvdDtGYWxsaW5nIGJh
Y2smcXVvdDspOyA8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZ290byBm
YWxsYmFjazsgPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
fSA8YnI+DQo8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
aWYgKGZhbWlseSA9PSBBRl9JTkVUKSA8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgbWFzdGVyX3RwLSZndDttcHRjcC0mZ3Q7bG93X3ByaW8gPSBtcHRjcF9sb2NhbC0mZ3Q7
bG9jYWRkcjRbaW5kZXhdLmxvd19wcmlvOw0KPG86cD48L286cD48L3A+DQo8cD4mbmJzcDs8bzpw
PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPi0tLS0tLS0tLS0tLS0tLS0tLS0tPGk+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQiPiA8L3NwYW4+DQo8L2k+PG86cD48L286cD48
L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPHA+PG86cD4mbmJzcDs8L286cD48
L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+LS0gPGJyPg0KPGI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC4wcHQiPkRhdmlkIFBSQURBUzwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMC4wcHQiPg0KPGJyPg0KUmVzcG9uc2FibGUgVGVjaG5pcXVlIGRlIFByb2pldHMg
PGJyPg0KPGk+KFBoLkQuIGluIFRlbGVjb21tdW5pY2F0aW9ucykgPGJyPg0KVml2ZXJpcyBUZWNo
bm9sb2dpZXMgPGJyPg0KJiM0MzszMygwKTU2MTAwMzA4OCA8YnI+DQo8dT48YSBocmVmPSJtYWls
dG86ZGF2aWQucHJhZGFzQHRvdWxvdXNlLnZpdmVyaXMuY29tIj5kYXZpZC5wcmFkYXNAdG91bG91
c2Uudml2ZXJpcy5jb208L2E+PC91Pg0KPC9pPjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_--

--_004_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_
Content-Type: image/jpeg; name="image001.jpg"
Content-Description: image001.jpg
Content-Disposition: inline; filename="image001.jpg"; size=11892;
	creation-date="Fri, 27 Oct 2017 12:00:55 GMT";
	modification-date="Fri, 27 Oct 2017 12:00:55 GMT"
Content-ID: <image001.jpg@01D34F2A.CCD83AE0>
Content-Transfer-Encoding: base64

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMg
IyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCACoAtcDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2aiii
gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACivO9Y8ceIbLUNfksrPS5NO0R084Su6y
urDPyn7uetdDH470Zry1spJZUvbmOKRYBC7ECQZBJAxj1Pahag9Do6K5xPH/AIek1Yacl/mZpfJD
+W3lGT+6Hxtz+NS/8Jro2Sn2h/NF59h8nym8zzfTbjOO+elAG9RWEPGWjHS01AXD+Q9z9kA8ptxl
zjbtxnOaxfHHji/8L6zY29pZw3Fu8LXFyz53LGrAMVwewOaAO3orhvHHj648PfY10e3gu3li+0zG
UnCQkhQeCOSTx9Ki1zxj4ht9b1S30m10t7bTLRLqX7Szq7ArkhSOM8HrQB31Fec33jbxM0Gj32nW
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
0/5V9xS/sfT/APnyg/74FH9j6f8A8+UH/fAq7RR7Sfdh7Gn/ACr7irDptnbyCSG1hRx0ZUAIq1RR
Utt7lRioq0VYKKKKRQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAVheIfFtr4bmgS7s9QlE5Co9vBvUsTgLnP3j6Vu1heK9HudZttO
S0KbrfUIbh95x8ikk496ANO31GC4WEFvJmmQOsE2FlA9160p1KyAJN5bgL1Pmrx+tcJeeBtUl+IX
9r+YJbRrmOcOJgjxBRjbgqSR7AgHNFp8OSljo0NzZ2TtDqElzfZ581Tv259cbhxQB3y3du0/krPE
ZsbvLDjdj1x6VUutf0uyWBri/t1WeXyYzvBBf04rhrfwBqtv4ynv3dJrV5pZElEwUhWUgIV27sDO
OGx6VHafD/UodFjilsNMeS31CO4ht3bcDGBhlZ9vOeO2eOc0Ad/d6za2hjG/zneVYtkJDMpY4yRn
ge9Qav4js9J0q6vg63ItiokjhcFhlgvPp1rl08C3KJcTLDaLeTa0t4ZQefIVgQufb0rIj+HuvvPr
Es5sg15F5a+WwVWPnB84CjHAPXJ96APRdb1iPQ9Hm1GaN5I4tuVXqckD+tLb6zaTJM8j/ZxFK0R8
8hMlcZIyeRz1qp4r0q41nwzc2Frs86UJt3nA4YE/yrmZPAVxeasst9Baz2n2u8nMbnORIoCceuRQ
B1cev2z65daa3yG3hjmMzMAjByQAD68Vq15tbeA9Yt73TbxjbzGyt7WNrd5MpMULBs8dVBBU+tek
0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQ
AUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFF
FFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB//Z

--_004_787AE7BB302AE849A7480A190F8B93300A05F493OPEXCLILMA3corp_--


From nobody Fri Oct 27 07:56:35 2017
Return-Path: <david.pradas@toulouse.viveris.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1F6DA13A902 for <multipathtcp@ietfa.amsl.com>; Fri, 27 Oct 2017 02:20:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.889
X-Spam-Level: 
X-Spam-Status: No, score=-1.889 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xacBVmfz0RUr for <multipathtcp@ietfa.amsl.com>; Fri, 27 Oct 2017 02:19:57 -0700 (PDT)
Received: from mailS.toulouse.viveris.com (mail.toulouse.viveris.com [212.99.125.10]) by ietfa.amsl.com (Postfix) with ESMTP id 363CF13A5CF for <multipathtcp@ietf.org>; Fri, 27 Oct 2017 02:19:54 -0700 (PDT)
Received: from hp (unknown [172.20.5.75]) by mailS.toulouse.viveris.com (Postfix) with ESMTPA id E3669AC00B6; Fri, 27 Oct 2017 11:19:50 +0200 (CEST)
To: mohamed.boucadair@orange.com, "multipathtcp@ietf.org" <multipathtcp@ietf.org>
Cc: Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>, "fabrice.arnal@thalesaleniaspace.com" <fabrice.arnal@thalesaleniaspace.com>, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com> <787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
From: David Pradas <david.pradas@toulouse.viveris.com>
Message-ID: <c6cafa09-495d-0f94-b186-d985f7ef953a@toulouse.viveris.com>
Date: Fri, 27 Oct 2017 11:19:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
Content-Type: multipart/alternative; boundary="------------04D8E6D634B88502F038CC52"
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/gW2xznMdbz6Jh-X7YlpxN_BP_-U>
X-Mailman-Approved-At: Fri, 27 Oct 2017 07:56:32 -0700
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 27 Oct 2017 09:20:01 -0000

This is a multi-part message in MIME format.
--------------04D8E6D634B88502F038CC52
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Med,

Thank you for your reply. Yes, indeed, we also sent the email to the 
maintainers of the MPTCP implementation for further discussion regarding 
the modification. But we wanted to share the context of the study with 
the IETF mailing list since we thought it would be interesting to have 
your feedback.

Regarding your questions:
- Is there any reason why you decided to use the transparent proxy mode?
Your question is very relevant! It was a functional requirement, we 
wanted to evaluated the system performance without NAT translation.

- Did you considered to use the explicit mode?
We did not consider this mode, because we though that, even giving the 
address list, the behaviour of the implementation will be the same: i.e. 
fallback to TCP if the address is not present in the machine (to be 
confirmed!).

- How do you ensure that the proxy will be on-path whatever the link you 
use to place the first subflow?
In fact, we always force the fist subflow to go through the terrestrial 
link (and the second one through the satellite link). Knowing that both 
link are aggregated by our proxy MPTCP-PEP.


Kind regards,

David


Le 26/10/2017 à 10:59, mohamed.boucadair@orange.com a écrit :
>
> Dear David, all,
>
> Thank you for sharing this information. You may want to direct this 
> message to the maintainers of the MPTCP implementation you mentioned.
>
> I have some architectural questions: Is there any reason why you 
> decided to use the transparent proxy mode? Did you considered to use 
> the explicit mode? How do you ensure that the proxy will be on-path 
> whatever the link you use to place the first subflow?
>
> Thank you.
>
> Cheers,
>
> Med
>
> *De :*multipathtcp [mailto:multipathtcp-bounces@ietf.org] *De la part 
> de* David Pradas
> *Envoyé :* jeudi 26 octobre 2017 10:20
> *À :* multipathtcp@ietf.org
> *Cc :* Joaquin Muguerza; fabrice.arnal@thalesaleniaspace.com; Kuhn 
> Nicolas; Emmanuel Dubois; SALLANTIN Renaud; Riadh Dhaou; FASSON Julien
> *Objet :* [multipathtcp] MPTCP transparent proxy
>
> Dear All,
>
> We contact you regarding the MPTCP implementation (v0.92) and some 
> problems we have encountered in a specific use case (transparent 
> sockets). We will try to summarise the context of our study, as well 
> as the problem and the solutions we propose to solve it.
>
> The objective of the study has been to work on a MPTCP-PEP proxy, 
> where the proxy (PEPsal implementation) splits the TCP connection and, 
> with MPTCP, aggregates two link (satellite and terrestrial). We have 
> also focused on other scenarios (e.g. PEPsal only on the satellite 
> link), but we prefer to discuss only the one presented in the figure 
> below:
>
> While trying to put together our implementation of PEPsal (transparent 
> proxy) in a MPTCPcompliant kernel, we had to face a problem with the 
> MPTCP implementation due to the transparent socketsusedin PEPsal. 
> After carefully reading the MPTCP code, we discovered that when 
> opening new subflows (using the fullmesh algorithm), first it is 
> checked if the IP address of the main subflow corresponds to any of 
> the network interfaces on the machine. This presents a problem when 
> working with transparent sockets, since these sockets can be bound to 
> external IP addresses, not present on the machine. In this case, the 
> MPTCP implementation falls back to a classical TCP connection, which 
> is not the behaviour wetarget.
>
> We assume such behaviour of  MPTCP implementation was a deliberate 
> choice (e.g. for security concerns). Is it actually the main driver ? 
> Could such compatibility with transparent proxying be acceptable for 
> subsequent MPTCP versions ?
> We have proceeded to such code modification, and we are happy to share 
> it with you, for review and possible integration in the main MPTCP 
> code. You may decide for instance if this feature shall be implemented 
> under all circumstances, or restricted to a certain mode only (e.g. 
> activated through a control option, sysctl command, ... ).
>
> Secondly,we have carried out some performances tests with applications 
> such as HTTP (measuring the page load time) or file transfer over TCP, 
> and we have observed that MPTCP outperforms (or equals) the case where 
> only one access is used (terrestrial or satellite), specially under 
> congestion conditions. That being said, we expect to further work on 
> this issue, mainly assessing (1) the performance of MPTCP schedulers 
> with such large asymmetry, (2) the performance of the different 
> coupled congestion control in our use-case and (3) consider the 
> relevance of the second sub-flow opening (mainly for short flows). Do 
> not hesitate to let us know if you have any interest in collaborating 
> in this future work.
>
> We attached herein the modification we used, which allows MPTCP to 
> work when using transparent sockets.
>
> We would be glad to discuss with you about this subject.
>
> Best Regards,
>
> David PRADAS
> Joaquin MUGUERZA
>
>
> --------------------/_
>
> _/
> diff --git a/net/mptcp/mptcp_fullmesh.c b/net/mptcp/mptcp_fullmesh.c
> index 1e5b753..665560a 100644
> --- a/net/mptcp/mptcp_fullmesh.c
> +++ b/net/mptcp/mptcp_fullmesh.c
> @@ -629,6 +629,38 @@ static void update_addr_bitfields(struct sock 
> *meta_sk,
>         }
>  }
>
> +static int mptcp_find_address_transp(const struct mptcp_loc_addr 
> *mptcp_local,
> +                             sa_family_t family, const union 
> inet_addr *addr,
> +                             int if_idx)
> +{
> +       int i;
> +       u8 loc_bits;
> +       bool found = false;
> +
> +       if (family == AF_INET)
> +               loc_bits = mptcp_local->loc4_bits;
> +       else
> +               loc_bits = mptcp_local->loc6_bits;
> +
> +       mptcp_for_each_bit_set(loc_bits, i) {
> +               if (family == AF_INET &&
> +                   (!if_idx || mptcp_local->locaddr4[i].if_idx == 
> if_idx)) {
> +                       found = true;
> +                       break;
> +               }
> +               if (family == AF_INET6 &&
> +                   (!if_idx || mptcp_local->locaddr6[i].if_idx == 
> if_idx)) {
> +                       found = true;
> +                       break;
> +               }
> +       }
> +
> +       if (!found)
> +               return -1;
> +
> +       return i;
> +}
> +
>  static int mptcp_find_address(const struct mptcp_loc_addr *mptcp_local,
>                               sa_family_t family, const union 
> inet_addr *addr,
>                               int if_idx)
> @@ -1271,9 +1303,18 @@ static void full_mesh_new_session(const struct 
> sock *meta_sk)
>         rcu_read_lock();
>         mptcp_local = rcu_dereference(fm_ns->local);
>
> -       index = mptcp_find_address(mptcp_local, family, &saddr, if_idx);
> -       if (index < 0)
> +       if(inet_sk(meta_sk)->transparent) {
> +               mptcp_debug("Meta socket is transparent");
> +               index = mptcp_find_address_transp(mptcp_local, family, 
> &saddr, if_idx);
> +       }
> +       else {
> +               mptcp_debug("Meta socket is NOT transparent");
> +               index = mptcp_find_address(mptcp_local, family, 
> &saddr, if_idx);
> +       }
> +       if (index < 0) {
> +               mptcp_debug("Falling back");
>                 goto fallback;
> +       }
>
>         if (family == AF_INET)
>                 master_tp->mptcp->low_prio = 
> mptcp_local->locaddr4[index].low_prio;
>
> --------------------//
>

-- 
*David PRADAS*
Responsable Technique de Projets
/(Ph.D. in Telecommunications)/
Viveris Technologies
+33(0)561003088
_david.pradas@toulouse.viveris.com_ //////

--------------04D8E6D634B88502F038CC52
Content-Type: multipart/related;
 boundary="------------3CECF06FC0CEF851A377AF16"


--------------3CECF06FC0CEF851A377AF16
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Hi Med,<br>
      <br>
      Thank you for your reply. Yes, indeed, we also sent the email to
      the maintainers of the MPTCP implementation for further discussion
      regarding the modification. But we wanted to share the context of
      the study with the IETF mailing list since we thought it would be
      interesting to have your feedback.<br>
      <br>
      Regarding your questions: <br>
      <span style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US">-</span>  <span
        style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US">Is there any reason why you
        decided to use the transparent proxy mode?<br>
      </span><span style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><font face="Helvetica,
          Arial, sans-serif">Your question is very relevant! It was a
          functional requirement, we wanted to evaluated the system
          performance without NAT translation. </font><br>
        <br>
      </span><span style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US">- D</span><span
        style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><span
          style="font-size:10.0pt;font-family:&quot;Courier
          New&quot;;color:black" lang="EN-US">id you considered to use
          the explicit mode?<br>
          <font face="Helvetica, Arial, sans-serif">We did not consider
            this mode, because we though that, even giving the address
            list, the behaviour of the implementation will be the same:
            i.e. fallback to TCP if the address is not present in the
            machine (to be confirmed!).<br>
          </font></span></span><br>
      <span style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><span
          style="font-size:10.0pt;font-family:&quot;Courier
          New&quot;;color:black" lang="EN-US"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">- How do you ensure that
            the proxy will be on-path whatever the link you use to place
            the first subflow?<br>
          </span></span></span><span
        style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><span
          style="font-size:10.0pt;font-family:&quot;Courier
          New&quot;;color:black" lang="EN-US"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><font face="Helvetica,
              Arial, sans-serif">In fact, we always force the fist
              subflow to go through the terrestrial link (and the second
              one through the satellite link). Knowing that both link
              are aggregated by our proxy MPTCP-PEP.</font><br>
          </span></span></span><span
        style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><span
          style="font-size:10.0pt;font-family:&quot;Courier
          New&quot;;color:black" lang="EN-US"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">
            <p class="MsoNormal"><span
                style="font-size:10.0pt;line-height:107%;
                font-family:&quot;Times New
                Roman&quot;,serif;color:black;mso-ansi-language:EN-US"
                lang="EN-US"></span></p>
          </span></span></span><br>
      Kind regards,<br>
      <br>
      David<br>
      <font face="Helvetica, Arial, sans-serif"><span style="font-size:
          10pt; color: black;" lang="EN-US"><span style="font-size:
            10pt; color: black;" lang="EN-US"></span></span></font><span
        style="font-size:10.0pt;font-family:&quot;Courier
        New&quot;;color:black" lang="EN-US"><span
          style="font-size:10.0pt;font-family:&quot;Courier
          New&quot;;color:black" lang="EN-US"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><br>
            <br>
          </span></span></span>Le 26/10/2017 à 10:59,
      <a class="moz-txt-link-abbreviated" href="mailto:mohamed.boucadair@orange.com">mohamed.boucadair@orange.com</a> a écrit :<br>
    </div>
    <blockquote type="cite"
cite="mid:787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <meta name="Generator" content="Microsoft Word 14 (filtered
        medium)">
      <!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
      <style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0cm;
	margin-right:0cm;
	margin-bottom:0cm;
	margin-left:36.0pt;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:"Courier New";
	color:black;
	font-weight:normal;
	font-style:normal;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1947930876;
	mso-list-type:hybrid;
	mso-list-template-ids:-1312154112 1919689108 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
@list l0:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level3
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l0:level4
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l0:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level6
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l0:level7
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l0:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level9
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black">Dear David, all,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Thank you for sharing
            this information. You may want to direct this message to the
            maintainers of the MPTCP implementation you mentioned.
            <o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">I have some
            architectural questions: Is there any reason why you decided
            to use the transparent proxy mode? Did you considered to use
            the explicit mode? How do you ensure that the proxy will be
            on-path whatever the link you use to place the first
            subflow?<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Thank you.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Cheers,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Med<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <div style="border:none;border-left:solid blue 1.5pt;padding:0cm
          0cm 0cm 4.0pt">
          <div>
            <div style="border:none;border-top:solid #B5C4DF
              1.0pt;padding:3.0pt 0cm 0cm 0cm">
              <p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext"
                    lang="EN-US">De :</span></b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext"
                  lang="EN-US"> multipathtcp
                  [<a class="moz-txt-link-freetext" href="mailto:multipathtcp-bounces@ietf.org">mailto:multipathtcp-bounces@ietf.org</a>]
                  <b>De la part de</b> David Pradas<br>
                  <b>Envoyé :</b> jeudi 26 octobre 2017 10:</span><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">20<br>
                  <b>À :</b> <a class="moz-txt-link-abbreviated" href="mailto:multipathtcp@ietf.org">multipathtcp@ietf.org</a><br>
                  <b>Cc :</b> Joaquin Muguerza;
                  <a class="moz-txt-link-abbreviated" href="mailto:fabrice.arnal@thalesaleniaspace.com">fabrice.arnal@thalesaleniaspace.com</a>; Kuhn Nicolas;
                  Emmanuel Dubois; SALLANTIN Renaud; Riadh Dhaou; FASSON
                  Julien<br>
                  <b>Objet :</b> [multipathtcp] MPTCP transparent proxy<o:p></o:p></span></p>
            </div>
          </div>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">Dear All, </span>
            <o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">We contact you regarding the MPTCP
              implementation (v0.92) and some problems we have
              encountered in a specific use case (transparent sockets).
              We will try to summarise the context of our study, as well
              as the problem and the solutions we propose to solve it.</span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">The objective of the study has been to work
              on a MPTCP-PEP proxy, where the proxy (PEPsal
              implementation) splits the TCP connection and, with MPTCP,
              aggregates two link (satellite and terrestrial). We have
              also focused on other scenarios (e.g. PEPsal only on the
              satellite link), but we prefer to discuss only the one
              presented in the figure below:</span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US"> <img id="_x0000_i1025"
                src="cid:part1.8B30CADA.9151B286@toulouse.viveris.com"
                class="" height="168" width="727"></span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">While trying to put together our
              implementation of PEPsal (transparent proxy) in a MPTCP</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
              lang="EN-US">
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">compliant kernel, we had to face a problem
              with the MPTCP implementation due to the transparent
              sockets</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
              lang="EN-US">
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">used</span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
              lang="EN-US">
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">in PEPsal. After carefully reading the MPTCP
              code, we discovered that when opening new subflows (using
              the fullmesh algorithm), first it is checked if the IP
              address of the main subflow corresponds to any of the
              network interfaces on the machine. This presents a problem
              when working with transparent sockets, since these sockets
              can be bound to external IP addresses, not present on the
              machine. In this case, the MPTCP implementation falls back
              to a classical TCP connection, which is not the behaviour
              we</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
              lang="EN-US">
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">target.<br>
              <br>
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">We
              assume such behaviour of  MPTCP implementation was a
              deliberate choice (e.g. for security concerns). Is it
              actually the main driver ? Could such compatibility with
              transparent proxying be acceptable for subsequent MPTCP
              versions ? <br>
              We have proceeded to such code modification, and we are
              happy to share it with you, for review and possible
              integration in the main MPTCP code. You may decide for
              instance if this feature shall be implemented under all
              circumstances, or restricted to a certain mode only (e.g.
              activated through a control option, sysctl command, ... ).</span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">Secondly,</span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
              lang="EN-US">
            </span><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
              lang="EN-US">we have carried out some performances tests
              with applications such as HTTP (measuring the page load
              time) or file transfer over TCP, and we have observed that
              MPTCP outperforms (or equals) the case where only one
              access is used (terrestrial or satellite), specially under
              congestion conditions. That being said, we expect to
              further work on this issue, mainly assessing (1) the
              performance of MPTCP schedulers with such large asymmetry,
              (2) the performance of the different coupled congestion
              control in our use-case and (3) consider the relevance of
              the second sub-flow opening (mainly for short flows). Do
              not hesitate to let us know if you have any interest in
              collaborating in this future work.<br>
              <br>
              We attached herein the modification we used, which allows
              MPTCP to work when using transparent sockets.
              <br>
              <br>
              We would be glad to discuss with you about this subject.</span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">Best
              Regards,</span><o:p></o:p></p>
          <p><span
              style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">David
              PRADAS<br>
              Joaquin MUGUERZA</span><o:p></o:p></p>
          <div>
            <p class="MsoNormal"><span style="font-size:10.0pt"><br>
                --------------------<i><u><br>
                    <br>
                  </u></i></span><br>
              diff --git a/net/mptcp/mptcp_fullmesh.c
              b/net/mptcp/mptcp_fullmesh.c <br>
              index 1e5b753..665560a 100644 <br>
              --- a/net/mptcp/mptcp_fullmesh.c <br>
              +++ b/net/mptcp/mptcp_fullmesh.c <br>
              @@ -629,6 +629,38 @@ static void
              update_addr_bitfields(struct sock *meta_sk, <br>
                      } <br>
               } <br>
              <br>
              +static int mptcp_find_address_transp(const struct
              mptcp_loc_addr *mptcp_local, <br>
              +                             sa_family_t family, const
              union inet_addr *addr, <br>
              +                             int if_idx) <br>
              +{ <br>
              +       int i; <br>
              +       u8 loc_bits; <br>
              +       bool found = false; <br>
              + <br>
              +       if (family == AF_INET) <br>
              +               loc_bits = mptcp_local-&gt;loc4_bits; <br>
              +       else <br>
              +               loc_bits = mptcp_local-&gt;loc6_bits; <br>
              + <br>
              +       mptcp_for_each_bit_set(loc_bits, i) { <br>
              +               if (family == AF_INET &amp;&amp; <br>
              +                   (!if_idx ||
              mptcp_local-&gt;locaddr4[i].if_idx == if_idx)) { <br>
              +                       found = true; <br>
              +                       break; <br>
              +               } <br>
              +               if (family == AF_INET6 &amp;&amp; <br>
              +                   (!if_idx ||
              mptcp_local-&gt;locaddr6[i].if_idx == if_idx)) { <br>
              +                       found = true; <br>
              +                       break; <br>
              +               } <br>
              +       } <br>
              + <br>
              +       if (!found) <br>
              +               return -1; <br>
              + <br>
              +       return i; <br>
              +} <br>
              + <br>
               static int mptcp_find_address(const struct mptcp_loc_addr
              *mptcp_local, <br>
                                            sa_family_t family, const
              union inet_addr *addr, <br>
                                            int if_idx) <br>
              @@ -1271,9 +1303,18 @@ static void
              full_mesh_new_session(const struct sock *meta_sk)
              <br>
                      rcu_read_lock(); <br>
                      mptcp_local = rcu_dereference(fm_ns-&gt;local); <br>
              <br>
              -       index = mptcp_find_address(mptcp_local, family,
              &amp;saddr, if_idx); <br>
              -       if (index &lt; 0) <br>
              +       if(inet_sk(meta_sk)-&gt;transparent) { <br>
              +               mptcp_debug("Meta socket is transparent");
              <br>
              +               index =
              mptcp_find_address_transp(mptcp_local, family, &amp;saddr,
              if_idx);
              <br>
              +       } <br>
              +       else { <br>
              +               mptcp_debug("Meta socket is NOT
              transparent"); <br>
              +               index = mptcp_find_address(mptcp_local,
              family, &amp;saddr, if_idx); <br>
              +       } <br>
              +       if (index &lt; 0) { <br>
              +               mptcp_debug("Falling back"); <br>
                              goto fallback; <br>
              +       } <br>
              <br>
                      if (family == AF_INET) <br>
                              master_tp-&gt;mptcp-&gt;low_prio =
              mptcp_local-&gt;locaddr4[index].low_prio;
              <o:p></o:p></p>
            <p> <o:p></o:p></p>
            <p class="MsoNormal">--------------------<i><span
                  style="font-size:10.0pt"> </span>
              </i><o:p></o:p></p>
          </div>
        </div>
      </div>
    </blockquote>
    <p><br>
    </p>
    <div class="moz-signature">-- <br>
      <font size="2"> <b>David PRADAS</b> <br>
        Responsable Technique de Projets <br>
        <i>(Ph.D. in Telecommunications)<i> <br>
            Viveris Technologies <br>
            +33(0)561003088 <br>
            <u><a class="moz-txt-link-abbreviated" href="mailto:david.pradas@toulouse.viveris.com">david.pradas@toulouse.viveris.com</a></u>
          </i></i></font><i><i>
        </i></i></div>
  </body>
</html>

--------------3CECF06FC0CEF851A377AF16
Content-Type: image/jpeg;
 name="image002.jpg"
Content-Transfer-Encoding: base64
Content-ID: <part1.8B30CADA.9151B286@toulouse.viveris.com>
Content-Disposition: inline;
 filename="image002.jpg"

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAm
JSMgIyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMp
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAAR
CACoAtcDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2aiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAKKKKACivO9Y8ceIbLUNfksrPS5NO0R084Su6yurDPyn7uetdDH470Zry1spJZ
UvbmOKRYBC7ECQZBJAxj1Pahag9Do6K5xPH/AIek1Yacl/mZpfJD+W3lGT+6Hxtz+NS/8Jro
2Sn2h/NF59h8nym8zzfTbjOO+elAG9RWEPGWjHS01AXD+Q9z9kA8ptxlzjbtxnOaxfHHji/8
L6zY29pZw3Fu8LXFyz53LGrAMVwewOaAO3orhvHHj648PfY10e3gu3li+0zGUnCQkhQeCOST
x9Ki1zxj4ht9b1S30m10t7bTLRLqX7Szq7ArkhSOM8HrQB31Fec33jbxM0Gj32nWmkCy1iSO
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
tb4vkvyRhh/g+b/NhRRRWRuFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAGZqP
/IV0v/ro/wD6Ca06zNR/5Cul/wDXR/8A0E1p1pP4Y+n6swpfHP1/RBRRRWZuFFFFABRRRQAU
UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAZH9v+bqk1pZ2NxcpbyLH
cToVCxsecYJycAgnA4zXP6FrTNJY/wBoXt4zvd3wUhh5ZRCfv55wB0xWxb6PqWm6teyWE9qb
O9nFxIJlbfG2AGC44IOB1xis+18FzRvaCa5jaOKW8eQKCCVnzgD3GaWv4fiH9fmaFl4riup4
Fksrm3iu43ktJZNuJwoycAHKkjkA44qOw8YR35sWGnXkUOoIxtZJNoEjAZ2kZyM4OCeDVbQ/
CDaUURrbSsQRNHHcxQkTPxgE9lOOuM5qxa+GZ7ex8OwNcRltKYGQhTiT5CvHp1qhFbTvGc7a
Kb3U9OaFmumtYQkiYkfzGULndx05JwPSulsrmS6txJNbS20mSGikIJH4gkEfSsCDw/qFtpd1
p2NNurV53ljS5RiHV2LFXHQEE8EZ6VoeGtHl0TSzbTShy0ryBEJKQhjnYmedopDZr0UUUAFF
FFABRRRQAUUUUAFFFFAGVYEx67qUJAO4Ryg/UYx+latZVt/yM19/1wi/m1ata1fiXovyMMP8
L9X+bCiiisjcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAo
oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAMzUf+Qrpf8A10f/
ANBNadZmo/8AIV0v/ro//oJrTrSfwx9P1ZhS+Ofr+iCiiiszcKKKKACiiigAooooAKKKKACi
iigDhvF8sdnrJvpZre8SCJALBrhoZ0bd9+HHDMfT2HNZ+qG7vdb1YS3Npa3kUqfYpLm7kjki
TaCpSMKQ4Jznnnoa9FeCKSRXeJGdfusVBI+hoeCKSRXeNGdfusVBI+hoWgM5DTtLh1bxV4k+
2vLIY2ijjHmsFi3RDcVGeCc1T0q5vdQaO3Ekkl3oFrMkign57jlI8+vyqTz/AHhXehVBJCgE
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
UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUU
UUAFFFFABRRRQAVheIfFtr4bmgS7s9QlE5Co9vBvUsTgLnP3j6Vu1heK9HudZttOS0KbrfUI
bh95x8ikk496ANO31GC4WEFvJmmQOsE2FlA9160p1KyAJN5bgL1Pmrx+tcJeeBtUl+IX9r+Y
JbRrmOcOJgjxBRjbgqSR7AgHNFp8OSljo0NzZ2TtDqElzfZ581Tv259cbhxQB3y3du0/krPE
ZsbvLDjdj1x6VUutf0uyWBri/t1WeXyYzvBBf04rhrfwBqtv4ynv3dJrV5pZElEwUhWUgIV2
7sDOOGx6VHafD/UodFjilsNMeS31CO4ht3bcDGBhlZ9vOeO2eOc0Ad/d6za2hjG/zneVYtkJ
DMpY4yRnge9Qav4js9J0q6vg63ItiokjhcFhlgvPp1rl08C3KJcTLDaLeTa0t4ZQefIVgQuf
b0rIj+HuvvPrEs5sg15F5a+WwVWPnB84CjHAPXJ96APRdb1iPQ9Hm1GaN5I4tuVXqckD+tLb
6zaTJM8j/ZxFK0R88hMlcZIyeRz1qp4r0q41nwzc2Frs86UJt3nA4YE/yrmZPAVxeasst9Ba
z2n2u8nMbnORIoCceuRQB1cev2z65daa3yG3hjmMzMAjByQAD68Vq15tbeA9Yt73TbxjbzGy
t7WNrd5MpMULBs8dVBBU+tek0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQB//Z
--------------3CECF06FC0CEF851A377AF16--

--------------04D8E6D634B88502F038CC52--


From nobody Sun Oct 29 18:27:16 2017
Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 08D9313F605 for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 18:27:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.399
X-Spam-Level: 
X-Spam-Status: No, score=-1.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VId0Vyhzn1e5 for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 18:27:13 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [203.178.142.130]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 59F7B13DC3B for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 18:27:13 -0700 (PDT)
Received: from mail-wr0-f172.google.com (mail-wr0-f172.google.com [209.85.128.172]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 31139278617 for <multipathtcp@ietf.org>; Mon, 30 Oct 2017 10:27:11 +0900 (JST)
Received: by mail-wr0-f172.google.com with SMTP id w105so11028031wrc.0 for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 18:27:11 -0700 (PDT)
X-Gm-Message-State: AMCzsaXBvi32GzgurtF9ge0FrXKWCFAwpake0lWBc22xh0b+ed7DwGJ5 2uZPhgRiMHTsVZNi3zZQLVrmqs2O+CC5M/QDdbo=
X-Google-Smtp-Source: ABhQp+TEoKAQAWLV60+6lWTsBIncqEYSAkhX7IlrX+fGW7xTf80yHgoe8wSN/7V6ywY8g9OE0ytaAV6r/rrlC9b/iCA=
X-Received: by 10.223.184.205 with SMTP id c13mr5439554wrg.268.1509326829030;  Sun, 29 Oct 2017 18:27:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.141.148 with HTTP; Sun, 29 Oct 2017 18:27:08 -0700 (PDT)
In-Reply-To: <a9ba162ce384447596fef2de3d0fd984@HE105686.emea1.cds.t-internal.com>
References: <64f1b27aee214f6b99b5c474158d7426@HE105686.emea1.cds.t-internal.com> <e51005d7-23dd-d10e-9c8f-27ef155461b1@uclouvain.be> <79ac6cb307784db3a6d8ae1550a49573@HE105686.emea1.cds.t-internal.com> <272695de663e4adca1930203b32f44e7@HE105686.emea1.cds.t-internal.com> <CAO249yc4P9-NsHvwxAUBEQprtOXRTh5jChpOcZ=37hzMKj+h8Q@mail.gmail.com> <a9ba162ce384447596fef2de3d0fd984@HE105686.emea1.cds.t-internal.com>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Sun, 29 Oct 2017 18:27:08 -0700
X-Gmail-Original-Message-ID: <CAO249ycGKFjuQ0WwUa2GC83Ko8_hb4WLXVK4GKU-8R_z1hMV9Q@mail.gmail.com>
Message-ID: <CAO249ycGKFjuQ0WwUa2GC83Ko8_hb4WLXVK4GKU-8R_z1hMV9Q@mail.gmail.com>
To: Markus.Amend@telekom.de
Cc: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>, multipathtcp <multipathtcp@ietf.org>
Content-Type: multipart/alternative; boundary="f403045f508a7e9132055cb989de"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/wwR79IH8p_gQSV611ahuq0tH3bM>
Subject: Re: [multipathtcp] A proposal for MPTCP Robust session Establishment (MPTCP RobE)
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 01:27:16 -0000

--f403045f508a7e9132055cb989de
Content-Type: text/plain; charset="UTF-8"

Hi Markus,

Thanks for the response. Some points became clearer to me.

On Wed, Oct 25, 2017 at 5:08 AM, <Markus.Amend@telekom.de> wrote:

> Dear Yoshi,
>
> see inline
>
> > -----Original Message-----
> > From: Yoshifumi Nishida [mailto:nishida@sfc.wide.ad.jp]
> > Sent: Mittwoch, 4. Oktober 2017 09:53
> > To: Amend, Markus <Markus.Amend@telekom.de>
> > Cc: multipathtcp <multipathtcp@ietf.org>
> > Subject: Re: [multipathtcp] A proposal for MPTCP Robust session
> > Establishment (MPTCP RobE)
> >
> > Hi Markus,
> >
> > I still need to think about it a bit more, but here's my current
> thoughts.. Sorry
> > for slow response.
> >
> > 1: I am guessing we cannot use this approach with TFO yet. But, if TFO
> cannot
> > be used, it might affect the latency of some apps.
> >
> We assume, RobE can incorporate TFO. Therefore we have different solutions
> in mind. But first we need an aligned understanding of TFO. There is one
> aspect, which isn't fully clear for me or respectively from my view not
> specified explicitly in RFC7413.
> TFO allows payload in a SYN and in case of a valid TFO cookie, this is
> directly delivered to receivers application. Now the question:  Is the
> sender allowed to proceed directly after sending the SYN with further data
> packets or is a SYN/ACK response required?
> By investigating current Linux TFO implementation it seems, sender first
> wait for the SYN/ACK before sending further data packets. But what shall we
> assume? At the end this is pretty important for a possible RobE<->TFO
> integration.
>

Well, I'm not worry very much about whether the sender wait for SYN ACK
before proceed.
Please let me explain...
When you use TFO, I guess you'll send the same payload P in two SYN
segments.
Then, both P payloads can be delivered to application sockets.
In this case, I'm still now sure how we can combine two sockets (on both
sender and receiver side)
For example, should the sender presume that two P have been received by the
receiver and advanced seq no by 2*P?
When I think about these kinds of situations, I thought it might be complex.


> > 3: I guess we'll need another step after SA6.2 to verify the response
> from
> > host B.
>
> no, we don't. data can be sent together with the MP_JOIN_CAP and
> immediately afterwards. if it is not successful, either we receive a RST
> (standard case) or we run into a timeout (error case). In both cases a
> retransmit over the first path is done.
>
> >     Also, MP_JOIN_CAP will require extra RTTs when the other end doesn't
> > support it. (because it will need to send RST and MP_JOIN to establish a
> > subflow)
> >
> yes, indeed this is a problem. there are several possibilities to address
> that problem:
> a) modify the MP_CAPABLE, adding an extra bit in syn/syn-ack. (e.g. one of
>    the A-H bits).
>    however this violates the standard, and thus will be incompatible with
>    existing implementations - unless it is introduced together with
>    ver. 1 - which already is incompatible, so it doesn't matter.
> b) if introduced together with ver. 1 - we know that the server supports
>    it if it supports ver. 1 - however it still might be deactivated.
> c) add an extra MPTCP-option.
>    in version 0, this can exhaust the tcp option space.
>    in version 1, (due to missing key info) this is feasible, if TFO
>    is not active. with TFO we already have that info, an extra option
>    is not necessary.
> d) cache that information, so only the first try adds an extra rtt.
>    later on (until cache expiration) we don't try fast-join again.
> e) sending an MP_JOIN_CAP + sending an MP_JOIN (note the join is a
>    new connection request (SYN), but can be associated with the
>    MP_JOIN_CAP by the key/token).
>    - In case the MP_JOIN_CAP succeeds, the MP_JOIN is ignored.
>    - In case it fails, the join is initiated before the RST arrives
>      on sender site. Avoiding the extra RTT, with the cost of
>      extra packets on the wire.
>    - The problem with reordering on the wire (MP_JOIN arrives before
>      MP_JOIN_CAP), can be avoided using one of the three reserved bits
>      in the MP_JOIN. These should be ignored by current implementations.
> f) a combination of those above.
>
> > 4: I tend to prefer just sending MP_JOIN after SA6.1 for simplicity so
> far. We
> > might be able to do everything in a shim layer.
> >
> Of course it is possible to do it in two steps. First only robustness and
> later on extend it with the fast-join approach.
> But why a shim-layer, do you suspect some incompatibility issues? Or do
> you just want to keep it out of MPTCP?
> But then note: Even that shim-layer needs a path-management. Either MPTCP
> has to provide a standard API to access the path-management from the
> outside world.
>

There's no big reasons for a shim layer approach.
I just thought we might be able to do most of the things without changing
MPTCP, although I miss something.
If doing it in kernel has some advantages, it may be a different story.
I am not sure yet if the shim layer approach will require a path
management.
It looks to me just creating a subflow of the MPTCP session through an API.

Thanks,
--
Yoshi

--f403045f508a7e9132055cb989de
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Markus,<br><div class=3D"gmail_extra"><br></div><div cl=
ass=3D"gmail_extra">Thanks for the response. Some points became clearer to =
me.</div><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, =
Oct 25, 2017 at 5:08 AM,  <span dir=3D"ltr">&lt;<a href=3D"mailto:Markus.Am=
end@telekom.de" target=3D"_blank">Markus.Amend@telekom.de</a>&gt;</span> wr=
ote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border=
-left:1px #ccc solid;padding-left:1ex">Dear Yoshi,<br>
<br>
see inline<br>
<span><br>
&gt; -----Original Message-----<br>
&gt; From: Yoshifumi Nishida [mailto:<a href=3D"mailto:nishida@sfc.wide.ad.=
jp" target=3D"_blank">nishida@sfc.wide.ad.jp</a><wbr>]<br>
&gt; Sent: Mittwoch, 4. Oktober 2017 09:53<br>
&gt; To: Amend, Markus &lt;<a href=3D"mailto:Markus.Amend@telekom.de" targe=
t=3D"_blank">Markus.Amend@telekom.de</a>&gt;<br>
&gt; Cc: multipathtcp &lt;<a href=3D"mailto:multipathtcp@ietf.org" target=
=3D"_blank">multipathtcp@ietf.org</a>&gt;<br>
&gt; Subject: Re: [multipathtcp] A proposal for MPTCP Robust session<br>
&gt; Establishment (MPTCP RobE)<br>
&gt;<br>
</span><span>&gt; Hi Markus,<br>
&gt;<br>
&gt; I still need to think about it a bit more, but here&#39;s my current t=
houghts.. Sorry<br>
&gt; for slow response.<br>
&gt;<br>
&gt; 1: I am guessing we cannot use this approach with TFO yet. But, if TFO=
 cannot<br>
&gt; be used, it might affect the latency of some apps.<br>
&gt;<br>
</span>We assume, RobE can incorporate TFO. Therefore we have different sol=
utions in mind. But first we need an aligned understanding of TFO. There is=
 one aspect, which isn&#39;t fully clear for me or respectively from my vie=
w not specified explicitly in RFC7413.<br>
TFO allows payload in a SYN and in case of a valid TFO cookie, this is dire=
ctly delivered to receivers application. Now the question:=C2=A0 Is the sen=
der allowed to proceed directly after sending the SYN with further data pac=
kets or is a SYN/ACK response required?<br>
By investigating current Linux TFO implementation it seems, sender first wa=
it for the SYN/ACK before sending further data packets. But what shall we a=
ssume? At the end this is pretty important for a possible RobE&lt;-&gt;TFO =
integration.<br></blockquote><div><br></div><div>Well, I&#39;m not worry ve=
ry much about whether the sender wait for SYN ACK before proceed.</div><div=
>Please let me explain...<br></div><div>When you use TFO, I guess you&#39;l=
l send the same payload P in two SYN segments. =C2=A0</div><div>Then, both =
P payloads can be delivered to application sockets.</div><div>In this case,=
 I&#39;m still now sure how we can combine two sockets (on both sender and =
receiver side)</div><div>For example, should the sender presume that two P =
have been received by the receiver and advanced seq no by 2*P?</div><div>Wh=
en I think about these kinds of situations, I thought it might be complex.<=
/div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0=
 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>
&gt; 3: I guess we&#39;ll need another step after SA6.2 to verify the respo=
nse from<br>
&gt; host B.<br>
<br>
</span>no, we don&#39;t. data can be sent together with the MP_JOIN_CAP and=
 immediately afterwards. if it is not successful, either we receive a RST (=
standard case) or we run into a timeout (error case). In both cases a retra=
nsmit over the first path is done.<br>
<span><br>
&gt; =C2=A0 =C2=A0 Also, MP_JOIN_CAP will require extra RTTs when the other=
 end doesn&#39;t<br>
&gt; support it. (because it will need to send RST and MP_JOIN to establish=
 a<br>
&gt; subflow)<br>
&gt;<br>
</span>yes, indeed this is a problem. there are several possibilities to ad=
dress that problem:<br>
a) modify the MP_CAPABLE, adding an extra bit in syn/syn-ack. (e.g. one of<=
br>
=C2=A0 =C2=A0the A-H bits).<br>
=C2=A0 =C2=A0however this violates the standard, and thus will be incompati=
ble with<br>
=C2=A0 =C2=A0existing implementations - unless it is introduced together wi=
th<br>
=C2=A0 =C2=A0ver. 1 - which already is incompatible, so it doesn&#39;t matt=
er.<br>
b) if introduced together with ver. 1 - we know that the server supports<br=
>
=C2=A0 =C2=A0it if it supports ver. 1 - however it still might be deactivat=
ed.<br>
c) add an extra MPTCP-option.<br>
=C2=A0 =C2=A0in version 0, this can exhaust the tcp option space.<br>
=C2=A0 =C2=A0in version 1, (due to missing key info) this is feasible, if T=
FO<br>
=C2=A0 =C2=A0is not active. with TFO we already have that info, an extra op=
tion<br>
=C2=A0 =C2=A0is not necessary.<br>
d) cache that information, so only the first try adds an extra rtt.<br>
=C2=A0 =C2=A0later on (until cache expiration) we don&#39;t try fast-join a=
gain.<br>
e) sending an MP_JOIN_CAP + sending an MP_JOIN (note the join is a<br>
=C2=A0 =C2=A0new connection request (SYN), but can be associated with the<b=
r>
=C2=A0 =C2=A0MP_JOIN_CAP by the key/token).<br>
=C2=A0 =C2=A0- In case the MP_JOIN_CAP succeeds, the MP_JOIN is ignored.<br=
>
=C2=A0 =C2=A0- In case it fails, the join is initiated before the RST arriv=
es<br>
=C2=A0 =C2=A0 =C2=A0on sender site. Avoiding the extra RTT, with the cost o=
f<br>
=C2=A0 =C2=A0 =C2=A0extra packets on the wire.<br>
=C2=A0 =C2=A0- The problem with reordering on the wire (MP_JOIN arrives bef=
ore<br>
=C2=A0 =C2=A0 =C2=A0MP_JOIN_CAP), can be avoided using one of the three res=
erved bits<br>
=C2=A0 =C2=A0 =C2=A0in the MP_JOIN. These should be ignored by current impl=
ementations.<br>
f) a combination of those above.<br>
<span><br>
&gt; 4: I tend to prefer just sending MP_JOIN after SA6.1 for simplicity so=
 far. We<br>
&gt; might be able to do everything in a shim layer.<br>
&gt;<br>
</span>Of course it is possible to do it in two steps. First only robustnes=
s and later on extend it with the fast-join approach.<br>
But why a shim-layer, do you suspect some incompatibility issues? Or do you=
 just want to keep it out of MPTCP?<br>
But then note: Even that shim-layer needs a path-management. Either MPTCP h=
as to provide a standard API to access the path-management from the outside=
 world.<br></blockquote><div><br></div><div>There&#39;s no big reasons for =
a shim layer approach.</div><div>I just thought we might be able to do most=
 of the things without changing MPTCP, although I miss something.</div><div=
>If doing it in kernel has some advantages, it may be a different story.</d=
iv><div>I am not sure yet if the shim layer approach will require a path ma=
nagement.=C2=A0</div><div>It looks to me just creating a subflow of the MPT=
CP session through an API.=C2=A0</div><div><br></div><div>Thanks,</div><div=
>--</div><div>Yoshi</div></div></div></div>

--f403045f508a7e9132055cb989de--


From nobody Sun Oct 29 18:43:16 2017
Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28FF513FD25 for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 18:43:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.5
X-Spam-Level: 
X-Spam-Status: No, score=0.5 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, HTML_MESSAGE=0.001, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lYaIDKVVcNny for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 18:43:13 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [IPv6:2001:200:0:8803::53]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5BED713FD2C for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 18:43:13 -0700 (PDT)
Received: from mail-wm0-f47.google.com (mail-wm0-f47.google.com [74.125.82.47]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 7AB9A278650 for <multipathtcp@ietf.org>; Mon, 30 Oct 2017 10:43:09 +0900 (JST)
Received: by mail-wm0-f47.google.com with SMTP id p75so12760661wmg.3 for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 18:43:09 -0700 (PDT)
X-Gm-Message-State: AMCzsaXmg2K8jO8VNqkuMH0kiHFz0ReD4kKpKnrPqOVzU+ngKgf9SEQv UayBJ5sJLMMAMuMRpl83hMa1Qw+pVWOtXF+QeNg=
X-Google-Smtp-Source: ABhQp+SvNov/cH1SRk+O1Oe7Ji3AtohuTw6YpQidqdVKFC0UOWZrx4psMaYXrfBMFWClADmeflizDcQLo5wENX7n39o=
X-Received: by 10.28.84.78 with SMTP id p14mr2550271wmi.94.1509327787428; Sun, 29 Oct 2017 18:43:07 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.141.148 with HTTP; Sun, 29 Oct 2017 18:43:06 -0700 (PDT)
In-Reply-To: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Sun, 29 Oct 2017 18:43:06 -0700
X-Gmail-Original-Message-ID: <CAO249ydH-iioHZcnHzbhmxef1LtaRk2hQ1PYeGwY7f2B5Yx95w@mail.gmail.com>
Message-ID: <CAO249ydH-iioHZcnHzbhmxef1LtaRk2hQ1PYeGwY7f2B5Yx95w@mail.gmail.com>
To: David Pradas <david.pradas@toulouse.viveris.com>
Cc: multipathtcp <multipathtcp@ietf.org>, Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>,  fabrice.arnal@thalesaleniaspace.com, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>,  Emmanuel Dubois <emmanuel.dubois@cnes.fr>,  SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>,  Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>
Content-Type: multipart/alternative; boundary="94eb2c1cd30a9e91b0055cb9c2be"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/tIBcDUy4SMYDFWZenF2EwtIhvk0>
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 01:43:15 -0000

--94eb2c1cd30a9e91b0055cb9c2be
Content-Type: text/plain; charset="UTF-8"

Hi David,

On Thu, Oct 26, 2017 at 1:19 AM, David Pradas <david.pradas@toulouse.
viveris.com> wrote:
>
> Secondly, we have carried out some performances tests with applications
> such as HTTP (measuring the page load time) or file transfer over TCP, and
> we have observed that MPTCP outperforms (or equals) the case where only one
> access is used (terrestrial or satellite), specially under congestion
> conditions. That being said, we expect to further work on this issue,
> mainly assessing (1) the performance of MPTCP schedulers with such large
> asymmetry, (2) the performance of the different coupled congestion control
> in our use-case and (3) consider the relevance of the second sub-flow
> opening (mainly for short flows). Do not hesitate to let us know if you
> have any interest in collaborating in this future work.
>
Sounds interesting.
It would be great if you could share more info about your network
configuration (e.g. RTT, bandwidth, loss rate, apps, etc)
--
Yoshi

--94eb2c1cd30a9e91b0055cb9c2be
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi David,<div><br></div><div><div class=3D"gmail_extra"><d=
iv class=3D"gmail_quote">On Thu, Oct 26, 2017 at 1:19 AM, David Pradas <spa=
n dir=3D"ltr">&lt;<a href=3D"mailto:david.pradas@toulouse.viveris.com" targ=
et=3D"_blank">david.pradas@toulouse.<wbr>viveris.com</a>&gt;</span> wrote:<=
blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px=
 #ccc solid;padding-left:1ex"><div text=3D"#000000" bgcolor=3D"#FFFFFF">
    <p><span style=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot=
;" lang=3D"EN-US">Secondly,</span><span style=3D"font-family:&quot;Calibri&=
quot;,&quot;sans-serif&quot;;color:red" lang=3D"EN-US"> </span><span style=
=3D"font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;" lang=3D"EN-US">=
we have carried out some performances tests with
        applications such as HTTP (measuring the page load time) or file
        transfer over TCP, and we have observed that MPTCP outperforms
        (or equals) the case where only one access is used (terrestrial
        or satellite), specially under congestion conditions. That being
        said, we expect to further work on this issue, mainly assessing
        (1) the performance of MPTCP schedulers with such large
        asymmetry, (2) the performance of the different coupled
        congestion control in our use-case and (3) consider the
        relevance of the second sub-flow opening (mainly for short
        flows). Do not hesitate to let us know if you have any interest
        in collaborating in this future work.</span></p></div></blockquote>=
<div>Sounds interesting.</div><div>It would be great if you could share mor=
e info about your network configuration (e.g. RTT, bandwidth, loss rate, ap=
ps, etc)=C2=A0</div><div>--</div><div>Yoshi</div><div>=C2=A0</div></div></d=
iv></div></div>

--94eb2c1cd30a9e91b0055cb9c2be--


From nobody Sun Oct 29 20:56:36 2017
Return-Path: <cpaasch@apple.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C578713FD72 for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 20:56:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.299
X-Spam-Level: 
X-Spam-Status: No, score=-4.299 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, WEIRD_PORT=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=apple.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id upKyb3331-o5 for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 20:56:33 -0700 (PDT)
Received: from mail-in7.apple.com (mail-out7.apple.com [17.151.62.29]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 65CC613FCB5 for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 20:56:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; d=apple.com; s=mailout2048s; c=relaxed/simple; q=dns/txt; i=@apple.com; t=1509335793; h=From:Sender:Reply-To:Subject:Date:Message-id:To:Cc:MIME-version:Content-type: Content-transfer-encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-reply-to:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=h/suPK1x61A3DApv3vYfcvGvKl3YL3oRmGrLvpEehPs=; b=O4u9n1ptDHcVZI6vCTCVBhUa6EtP/cUxQXv671vbFnU0QsBa9ifuM7qeZdTixwG+ WBg7HKhg09i9sCY9YFv7ntmavnK1+Ji9qo66ceaasmFc7LPCmSjJrrIUyl8qtymW mc/BdMv5bBCTul9udH1YIElUAdGrStChT0McVw7Vy9FBXqo7+I8Nw7Udnk1+zwx8 LJ8yqJzR0tOzLr2ZqzlfWgWD/YaPRWqwf6MNgTm3SYDZkiEkXKTt7qi586OYsnS0 IkmKXjGvId988+dfVzPFG8cJ+Pfj0ZxdEm6cprsC0ABeRq4INKkhBM00vv9KkLWW 42ie/LX09STvYCPxTBVX4w==;
Received: from relay3.apple.com (relay3.apple.com [17.128.113.83]) (using TLS with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail-in7.apple.com (Apple Secure Mail Relay) with SMTP id 8F.C2.08732.1F2A6F95; Sun, 29 Oct 2017 20:56:33 -0700 (PDT)
X-AuditID: 11973e16-7b5ff7000000221c-16-59f6a2f157b0
Received: from nwk-mmpp-sz12.apple.com (nwk-mmpp-sz12.apple.com [17.128.115.204]) by relay3.apple.com (Apple SCV relay) with SMTP id ED.D3.23978.1F2A6F95; Sun, 29 Oct 2017 20:56:33 -0700 (PDT)
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-disposition: inline
Content-type: text/plain; CHARSET=US-ASCII
Received: from localhost ([17.149.233.200]) by nwk-mmpp-sz12.apple.com (Oracle Communications Messaging Server 8.0.1.3.20170825 64bit (built Aug 25 2017)) with ESMTPSA id <0OYM00B14AY8EO70@nwk-mmpp-sz12.apple.com>; Sun, 29 Oct 2017 20:56:33 -0700 (PDT)
Sender: cpaasch@apple.com
Date: Sun, 29 Oct 2017 20:56:32 -0700
From: Christoph Paasch <cpaasch@apple.com>
To: philip.eardley@bt.com
Cc: multipathtcp@ietf.org
Message-id: <20171030035632.GD29152@da0602a-dhcp227.apple.com>
References: <6ad50c5f057742c096fdd1f9088e551d@rew09926dag03b.domain1.systemhost.net> <7a02a641ed684b3c8aa8e7899e5624ee@rew09926dag03b.domain1.systemhost.net> <024cc75349d249b1b62df41ee5840125@rew09926dag03b.domain1.systemhost.net>
In-reply-to: <024cc75349d249b1b62df41ee5840125@rew09926dag03b.domain1.systemhost.net>
User-Agent: Mutt/1.8.3 (2017-05-23)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrMLMWRmVeSWpSXmKPExsUi2FAYrPtx0bdIg+U/uS0+r77OZrFs7QpG ByaPti+TmTyWLPnJFMAUxWWTkpqTWZZapG+XwJWxa/c05oJO4Yp3c7+yNTCe5+9i5OSQEDCR mP9/EnMXIxeHkMBqJokrmxexwiQW7utmhUgcYpR4/Gw7E0iCV0BQ4sfkeyxdjBwczALyEgfP y4KEmQWkJR79ncEOYWtJfH/UygJiCwk0MUms2K4OYgsLSEp037nDDGKzCKhKPHj8mg3EZgOq f3u7HWyvCFDNiu2r2CDmANl/P7FC9BpKPO9bBXWCncTHzn0sELe9YZS4ceMtWBGnQLjEkakT GEFsUQFliXn7QAZxAT0zhU3i5uQNTBMYRWYh+WEWwg+zkPwwC8kPCxhZVjEK5SZm5uhm5pnr JRYU5KTqJefnbmIExcJ0O7EdjA9XWR1iFOBgVOLh1cj8FinEmlhWXJl7iFGag0VJnPeJytdI IYH0xJLU7NTUgtSi+KLSnNTiQ4xMHJxSDYxLwt7PFP/+b+trE0NT1i9hNrsTfhckMJzcsvDT 99tb3PX0xT833PppJfl40ZUDws+u/dm+r/oTY/KjWBFJC+EkZT9r1r1v9mkeuFNXt23F7PD2 rMlbrhyfxXlcXOxErkbggtLCpJchp1ufZf4PYeXVZKsy0K+xTfP6M+dn/jH3iaqb9ZqE385S YinOSDTUYi4qTgQAP2Kpb2YCAAA=
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrGLMWRmVeSWpSXmKPExsUi2FB8Rvfjom+RBitPsVt8Xn2dzWLZ2hWM DkwebV8mM3ksWfKTKYApissmJTUnsyy1SN8ugStj1+5pzAWdwhXv5n5la2A8z9/FyMkhIWAi sXBfN2sXIxeHkMAhRonHz7YzgSR4BQQlfky+x9LFyMHBLCAvcfC8LEiYWUBa4tHfGewQtpbE 90etLCC2kEATk8SK7eogtrCApET3nTvMIDaLgKrEg8ev2UBsNqD6t7fbWUFsEaCaFdtXsUHM AbL/fmKF6DWUeN63CuoEO4mPnftYIG57wyhx48ZbsCJOgXCJI1MnMILYogLKEvP2rWKbwCg4 C8nZsxDOnoXk7FlIzl7AyLKKUaAoNSex0lgvsaAgJ1UvOT93EyM4dAuDdzD+WWZ1iFGAg1GJ h1cj81ukEGtiWXFlLjCMOJiVRHjDZwKFeFMSK6tSi/Lji0pzUosPMUpzsCiJ826a8TlSSCA9 sSQ1OzW1ILUIJsvEwSnVwJh8/GUod+WEXSEGW7f8t437f/RX3r7zWyTjPyS1VD76JG/NdEJK l+dFAov+4lnf+LM4erzO9xwtSjYtXlT/8PfSSu13i8LnflZMvXkpbFvYT5sfW5aZ1mun1L2Z 9qE8/MuO78e31u/u77sqwhRzqSfp2YwmW59c3p1MisuLwoRjF+x8r+m1ykOJpTgj0VCLuag4 EQCjLIrgWQIAAA==
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/ixPUGNjYVTZ75FbynQ4crZjVqeo>
Subject: Re: [multipathtcp] Changes to RFC6824bis
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 03:56:35 -0000

Hello Phil,

On 23/10/17 - 08:48:50, philip.eardley@bt.com wrote:
> Is there any news about #2 and #3 below?

sorry, I didn't find the time to work on the MPTCP & TFO interaction. I
doubt we will be able to update the draft before the cutoff tomorrow.

I will try to get to it as soon as possible.


Christoph

> Thanks
> phil
> From: Eardley,PL,Philip,TUD1 R
> Sent: 05 September 2017 17:32
> To: Eardley,PL,Philip,TUD1 R <philip.eardley@bt.com>; multipathtcp@ietf.org
> Subject: RE: Changes to RFC6824bis
> 
> Just wanted to check where we are re these 3 changes.
> #1 - thanks to Alan for making this change
> #2 - Christoph, Olivier - any news?
> #3 - Quentin - any news?
> Thanks!
> Phil
> 
> From: multipathtcp [mailto:multipathtcp-bounces@ietf.org] On Behalf Of philip.eardley@bt.com<mailto:philip.eardley@bt.com>
> Sent: 26 July 2017 08:51
> To: multipathtcp@ietf.org<mailto:multipathtcp@ietf.org>
> Subject: [multipathtcp] Changes to RFC6824bis
> 
> Hi,
> During the discussions in Prague, we had good agreement about the following change to the bis. This is a change to the wire protocol. Please say as soon as possible if you disagree with this change, otherwise we'll go ahead and make this change:-
> 
> Remove address identifier from MP-PRIO, as it can be used as an attack.
> 
> Explanation at https://mailarchive.ietf.org/arch/msg/multipathtcp/WWWaQ3AKWEMgsBSPKc_R9Ct_YoI and follow up emails. The issue was briefly summarised during the Friday meeting in Prague - eg see the etherpad for a summary http://etherpad.tools.ietf.org:9000/p/notes-ietf-99-mptcp?useMonospaceFont=true
> 
> Alan - are you ok to make this change please?
> 
> --
> 
> In addition, we agreed in principle to the following (informational) changes to the bis - exact text to be proposed.
> 
> 2.       Guidance about MPTCP & TFP interactions, based on https://www.ietf.org/proceedings/99/slides/slides-99-mptcp-sessb-mptcp-tfo-00.pdf - Christoph & Olivier, please propose text.
> 
> 3.       There was a suggestion, arising from the hackathon, to discuss on the list whether clarifications or extra 'reason codes' would be useful in the context of reset option. Quentin (& others), please make a proposal.
> Best wishes,
> Phil & Yoshi
> 

> _______________________________________________
> multipathtcp mailing list
> multipathtcp@ietf.org
> https://www.ietf.org/mailman/listinfo/multipathtcp


From nobody Sun Oct 29 22:52:44 2017
Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9F97813A5AF for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 22:52:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.399
X-Spam-Level: 
X-Spam-Status: No, score=-1.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id daicDMLjUFAC for <multipathtcp@ietfa.amsl.com>; Sun, 29 Oct 2017 22:52:40 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [IPv6:2001:200:0:8803::53]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C6FD613F5ED for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 22:52:39 -0700 (PDT)
Received: from mail-wm0-f49.google.com (mail-wm0-f49.google.com [74.125.82.49]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id D9EC9278639 for <multipathtcp@ietf.org>; Mon, 30 Oct 2017 14:52:36 +0900 (JST)
Received: by mail-wm0-f49.google.com with SMTP id z3so13881398wme.5 for <multipathtcp@ietf.org>; Sun, 29 Oct 2017 22:52:36 -0700 (PDT)
X-Gm-Message-State: AMCzsaVTbWPzuDdHtL4tnnFi8t9CiyDiGCr9yHzi9kOfN/IjzceV+wgG IDx0dc8O9AC4UUuQbjIsNzqoB9plCy2kxXQGV/c=
X-Google-Smtp-Source: ABhQp+RgCV0r+2eSK6GVQ1ecE5bzw5ixrkbBz/EeOAqKMP6x9bl9zZEP3VMzbyC1FY1jm8AvNT10l4KkxHrji592j/M=
X-Received: by 10.28.105.76 with SMTP id e73mr2907103wmc.116.1509342754797; Sun, 29 Oct 2017 22:52:34 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.141.148 with HTTP; Sun, 29 Oct 2017 22:52:34 -0700 (PDT)
In-Reply-To: <1504869731213.54234@bt.com>
References: <150459947192.28674.7149204113748374138.idtracker@ietfa.amsl.com> <1504869731213.54234@bt.com>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Sun, 29 Oct 2017 22:52:34 -0700
X-Gmail-Original-Message-ID: <CAO249yeZ7LeNDXuD0DLmEq0i=r-jGS0OPmdRCAfv2BanhxywXQ@mail.gmail.com>
Message-ID: <CAO249yeZ7LeNDXuD0DLmEq0i=r-jGS0OPmdRCAfv2BanhxywXQ@mail.gmail.com>
To: "philip.eardley" <philip.eardley@bt.com>
Cc: multipathtcp <multipathtcp@ietf.org>, Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Content-Type: multipart/alternative; boundary="001a1147c4eabe7db0055cbd3e7b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/RADeHNRkX59dk0aF5zbNpHuuhWc>
Subject: Re: [multipathtcp] mptcp - New Meeting Session Request for IETF 100
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 05:52:42 -0000

--001a1147c4eabe7db0055cbd3e7b
Content-Type: text/plain; charset="UTF-8"

Hello,

Just in case.. If you are planning to present something at Singapore,
please let Phil and me know.
If you have questions, please feel free to contact us as well.
--
Yoshi & Phil


On Fri, Sep 8, 2017 at 4:22 AM, <philip.eardley@bt.com> wrote:

> We've requested 1 session of 2 hours in Singapore.
>
> Please could you let us know if you think you'll need presentation
> /discussion time in the meeting - if we get a lot of requests, we'll ask
> for a second timeslot.
>
> We added Banana to the conflicts list - if other adjustments are needed,
> please let us know.
>
> thanks
> Phil & Yoshi
> ________________________________________
> From: IETF Meeting Session Request Tool <session-request@ietf.org>
> Sent: 05 September 2017 09:17
> To: session-request@ietf.org
> Cc: multipathtcp@ietf.org; ietf@kuehlewind.net; Eardley,PL,Philip,TUD1 R;
> mptcp-chairs@ietf.org
> Subject: mptcp - New Meeting Session Request for IETF 100
>
> A new meeting session request has just been submitted by Philip Eardley, a
> Chair of the mptcp working group.
>
>
> ---------------------------------------------------------
> Working Group Name: Multipath TCP
> Area Name: Transport Area
> Session Requester: Philip Eardley
>
> Number of Sessions: 1
> Length of Session(s):  2 Hours
> Number of Attendees: 60
> Conflicts to Avoid:
>  First Priority: ippm tcpinc tcpm tsvarea tsvwg tls banana
>  Second Priority: taps iccrg rtcweb manet
>  Third Priority: nfvrg quic maprg
>
>
> People who must be present:
>   Yoshifumi Nishida
>   Philip Eardley
>   Mirja Kuehlewind
>
> Resources Requested:
>
> Special Requests:
>   please avoid any transport area BoFs
> ---------------------------------------------------------
>
>

--001a1147c4eabe7db0055cbd3e7b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hello,<div><br></div><div>Just in case.. If you are planni=
ng to present something at Singapore, please let Phil and me know.</div><di=
v>If you have questions, please feel free to contact us as well.</div><div>=
--</div><div>Yoshi &amp; Phil</div><div><br><div class=3D"gmail_extra"><br>=
<div class=3D"gmail_quote">On Fri, Sep 8, 2017 at 4:22 AM,  <span dir=3D"lt=
r">&lt;<a href=3D"mailto:philip.eardley@bt.com" target=3D"_blank">philip.ea=
rdley@bt.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We&#39=
;ve requested 1 session of 2 hours in Singapore.<br>
<br>
Please could you let us know if you think you&#39;ll need presentation /dis=
cussion time in the meeting - if we get a lot of requests, we&#39;ll ask fo=
r a second timeslot.<br>
<br>
We added Banana to the conflicts list - if other adjustments are needed, pl=
ease let us know.<br>
<br>
thanks<br>
Phil &amp; Yoshi<br>
______________________________<wbr>__________<br>
From: IETF Meeting Session Request Tool &lt;<a href=3D"mailto:session-reque=
st@ietf.org">session-request@ietf.org</a>&gt;<br>
Sent: 05 September 2017 09:17<br>
To: <a href=3D"mailto:session-request@ietf.org">session-request@ietf.org</a=
><br>
Cc: <a href=3D"mailto:multipathtcp@ietf.org">multipathtcp@ietf.org</a>; <a =
href=3D"mailto:ietf@kuehlewind.net">ietf@kuehlewind.net</a>; Eardley,PL,Phi=
lip,TUD1 R; <a href=3D"mailto:mptcp-chairs@ietf.org">mptcp-chairs@ietf.org<=
/a><br>
Subject: mptcp - New Meeting Session Request for IETF 100<br>
<div class=3D"HOEnZb"><div class=3D"h5"><br>
A new meeting session request has just been submitted by Philip Eardley, a =
Chair of the mptcp working group.<br>
<br>
<br>
------------------------------<wbr>---------------------------<br>
Working Group Name: Multipath TCP<br>
Area Name: Transport Area<br>
Session Requester: Philip Eardley<br>
<br>
Number of Sessions: 1<br>
Length of Session(s):=C2=A0 2 Hours<br>
Number of Attendees: 60<br>
Conflicts to Avoid:<br>
=C2=A0First Priority: ippm tcpinc tcpm tsvarea tsvwg tls banana<br>
=C2=A0Second Priority: taps iccrg rtcweb manet<br>
=C2=A0Third Priority: nfvrg quic maprg<br>
<br>
<br>
People who must be present:<br>
=C2=A0 Yoshifumi Nishida<br>
=C2=A0 Philip Eardley<br>
=C2=A0 Mirja Kuehlewind<br>
<br>
Resources Requested:<br>
<br>
Special Requests:<br>
=C2=A0 please avoid any transport area BoFs<br>
------------------------------<wbr>---------------------------<br>
<br>
</div></div></blockquote></div><br></div></div></div>

--001a1147c4eabe7db0055cbd3e7b--


From nobody Mon Oct 30 07:52:46 2017
Return-Path: <david.pradas@toulouse.viveris.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2BDE113F9F2 for <multipathtcp@ietfa.amsl.com>; Mon, 30 Oct 2017 07:01:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.888
X-Spam-Level: 
X-Spam-Status: No, score=-1.888 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, T_KAM_HTML_FONT_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RZ1QjVwmq0wx for <multipathtcp@ietfa.amsl.com>; Mon, 30 Oct 2017 07:01:51 -0700 (PDT)
Received: from mailS.toulouse.viveris.com (mail.toulouse.viveris.com [212.99.125.10]) by ietfa.amsl.com (Postfix) with ESMTP id 252C713F9E5 for <multipathtcp@ietf.org>; Mon, 30 Oct 2017 07:01:46 -0700 (PDT)
Received: from hp (unknown [172.20.5.75]) by mailS.toulouse.viveris.com (Postfix) with ESMTPA id 3B2E0AC009B; Mon, 30 Oct 2017 15:01:43 +0100 (CET)
To: mohamed.boucadair@orange.com, "multipathtcp@ietf.org" <multipathtcp@ietf.org>
Cc: Joaquin Muguerza <jmuguerza@toulouse.viveris.fr>, "fabrice.arnal@thalesaleniaspace.com" <fabrice.arnal@thalesaleniaspace.com>, Kuhn Nicolas <Nicolas.Kuhn@cnes.fr>, Emmanuel Dubois <emmanuel.dubois@cnes.fr>, SALLANTIN Renaud <renaud.sallantin@thalesaleniaspace.com>, Riadh Dhaou <Riadh.Dhaou@enseeiht.fr>, FASSON Julien <Julien.Fasson@enseeiht.fr>
References: <25b6b320-ccd8-13c1-1b36-182089a77252@toulouse.viveris.com> <787AE7BB302AE849A7480A190F8B93300A05E6E2@OPEXCLILMA3.corporate.adroot.infra.ftgroup> <c6cafa09-495d-0f94-b186-d985f7ef953a@toulouse.viveris.com> <787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
From: David Pradas <david.pradas@toulouse.viveris.com>
Message-ID: <83b02ba6-2fe5-c01c-92ab-ac2201566702@toulouse.viveris.com>
Date: Mon, 30 Oct 2017 15:01:43 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
Content-Type: multipart/alternative; boundary="------------4C664FC8345D1F1D690F0C32"
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/fUvtKmmkPcC7X4_RLCi7Q9p0N_s>
X-Mailman-Approved-At: Mon, 30 Oct 2017 07:52:43 -0700
Subject: Re: [multipathtcp] MPTCP transparent proxy
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Oct 2017 14:01:55 -0000

This is a multi-part message in MIME format.
--------------4C664FC8345D1F1D690F0C32
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Med,

Thank you again for your feedback. Please find my comments inline.

Cheers,
David


Le 27/10/2017 à 14:00, mohamed.boucadair@orange.com a écrit :
>
> Hi David,
>
> Thank you for clarifying. Much appreciated!
>
> Please see inline.
>
> Cheers,
>
> Med
>
> *De :*David Pradas [mailto:david.pradas@toulouse.viveris.com]
> *Envoyé :* vendredi 27 octobre 2017 11:20
> *À :* BOUCADAIR Mohamed IMT/OLN; multipathtcp@ietf.org
> *Cc :* Joaquin Muguerza; fabrice.arnal@thalesaleniaspace.com; Kuhn 
> Nicolas; Emmanuel Dubois; SALLANTIN Renaud; Riadh Dhaou; FASSON Julien
> *Objet :* Re: [multipathtcp] MPTCP transparent proxy
>
> Hi Med,
>
> Thank you for your reply. Yes, indeed, we also sent the email to the 
> maintainers of the MPTCP implementation for further discussion 
> regarding the modification. But we wanted to share the context of the 
> study with the IETF mailing list since we thought it would be 
> interesting to have your feedback.
>
> Regarding your questions:
> - Is there any reason why you decided to use the transparent proxy mode?
> Your question is very relevant! It was a functional requirement, we 
> wanted to evaluated the system performance without NAT translation.
>
> [Med] Please note that even in the transparent mode, a ** translation 
> (NAT, if you will) ** is required for subsequent subflows: The proxy 
> will need to translate the internal IP address/port to the one used to 
> place the first subflow. Further, the transparent mode will require 
> that the traffic should be inspected to detect the MPTCP one. This 
> inspection function may have some implications on the system performance.
>
[David] Yes, indeed, the second mptcp subflow takes the source address 
of our proxy.
Regarding the detection of MPTCP for the transparent mode, yes, this 
inspection might have an impact on the performances (CPU charge, RAM), 
even if does not seem to be the case of our platform --> But, indeed, it 
would be necessary to consider this impact on real systems, with many 
more flows to inspect.
>
>
> - Did you considered to use the explicit mode?
> We did not consider this mode, because we though that, even giving the 
> address list, the behaviour of the implementation will be the same: 
> i.e. fallback to TCP if the address is not present in the machine (to 
> be confirmed!).
>
> [Med] The behavior for subsequent subflows establishment would be the 
> same, but there are other advantages that are worth to be considered:
>
> -The proxy is not required to be embedded on an on-path router
>
> -Only the eligible traffic will be directed to the proxy; no need for 
> traffic inspection or hooks to invoke the proxy function
>
> -You can easily distinguish MPTCP proxied traffic vs. MPTCP flows that 
> are natively initiated by internal hosts.
>
[David] Thanks for this information! we were not aware of all these 
advantages. They are closely related to our discussion on your first 
question.
>
>
> - How do you ensure that the proxy will be on-path whatever the link 
> you use to place the first subflow?
> In fact, we always force the fist subflow to go through the 
> terrestrial link (and the second one through the satellite link). 
> Knowing that both link are aggregated by our proxy MPTCP-PEP.
>
> [Med] OK, thanks.
>
>
> Kind regards,
>
> David
>
>
> Le 26/10/2017 à 10:59, mohamed.boucadair@orange.com 
> <mailto:mohamed.boucadair@orange.com> a écrit :
>
>     Dear David, all,
>
>     Thank you for sharing this information. You may want to direct
>     this message to the maintainers of the MPTCP implementation you
>     mentioned.
>
>     I have some architectural questions: Is there any reason why you
>     decided to use the transparent proxy mode? Did you considered to
>     use the explicit mode? How do you ensure that the proxy will be
>     on-path whatever the link you use to place the first subflow?
>
>     Thank you.
>
>     Cheers,
>
>     Med
>
>     *De :*multipathtcp [mailto:multipathtcp-bounces@ietf.org] *De la
>     part de* David Pradas
>     *Envoyé :* jeudi 26 octobre 2017 10:20
>     *À :* multipathtcp@ietf.org <mailto:multipathtcp@ietf.org>
>     *Cc :* Joaquin Muguerza; fabrice.arnal@thalesaleniaspace.com
>     <mailto:fabrice.arnal@thalesaleniaspace.com>; Kuhn Nicolas;
>     Emmanuel Dubois; SALLANTIN Renaud; Riadh Dhaou; FASSON Julien
>     *Objet :* [multipathtcp] MPTCP transparent proxy
>
>     Dear All,
>
>     We contact you regarding the MPTCP implementation (v0.92) and some
>     problems we have encountered in a specific use case (transparent
>     sockets). We will try to summarise the context of our study, as
>     well as the problem and the solutions we propose to solve it.
>
>     The objective of the study has been to work on a MPTCP-PEP proxy,
>     where the proxy (PEPsal implementation) splits the TCP connection
>     and, with MPTCP, aggregates two link (satellite and terrestrial).
>     We have also focused on other scenarios (e.g. PEPsal only on the
>     satellite link), but we prefer to discuss only the one presented
>     in the figure below:
>
>     While trying to put together our implementation of PEPsal
>     (transparent proxy) in a MPTCPcompliant kernel, we had to face a
>     problem with the MPTCP implementation due to the transparent
>     socketsusedin PEPsal. After carefully reading the MPTCP code, we
>     discovered that when opening new subflows (using the fullmesh
>     algorithm), first it is checked if the IP address of the main
>     subflow corresponds to any of the network interfaces on the
>     machine. This presents a problem when working with transparent
>     sockets, since these sockets can be bound to external IP
>     addresses, not present on the machine. In this case, the MPTCP
>     implementation falls back to a classical TCP connection, which is
>     not the behaviour wetarget.
>
>     We assume such behaviour of  MPTCP implementation was a deliberate
>     choice (e.g. for security concerns). Is it actually the main
>     driver ? Could such compatibility with transparent proxying be
>     acceptable for subsequent MPTCP versions ?
>     We have proceeded to such code modification, and we are happy to
>     share it with you, for review and possible integration in the main
>     MPTCP code. You may decide for instance if this feature shall be
>     implemented under all circumstances, or restricted to a certain
>     mode only (e.g. activated through a control option, sysctl
>     command, ... ).
>
>     Secondly,we have carried out some performances tests with
>     applications such as HTTP (measuring the page load time) or file
>     transfer over TCP, and we have observed that MPTCP outperforms (or
>     equals) the case where only one access is used (terrestrial or
>     satellite), specially under congestion conditions. That being
>     said, we expect to further work on this issue, mainly assessing
>     (1) the performance of MPTCP schedulers with such large asymmetry,
>     (2) the performance of the different coupled congestion control in
>     our use-case and (3) consider the relevance of the second sub-flow
>     opening (mainly for short flows). Do not hesitate to let us know
>     if you have any interest in collaborating in this future work.
>
>     We attached herein the modification we used, which allows MPTCP to
>     work when using transparent sockets.
>
>     We would be glad to discuss with you about this subject.
>
>     Best Regards,
>
>     David PRADAS
>     Joaquin MUGUERZA
>
>
>     --------------------/_
>
>     _/
>     diff --git a/net/mptcp/mptcp_fullmesh.c b/net/mptcp/mptcp_fullmesh.c
>     index 1e5b753..665560a 100644
>     --- a/net/mptcp/mptcp_fullmesh.c
>     +++ b/net/mptcp/mptcp_fullmesh.c
>     @@ -629,6 +629,38 @@ static void update_addr_bitfields(struct sock
>     *meta_sk,
>             }
>      }
>
>     +static int mptcp_find_address_transp(const struct mptcp_loc_addr
>     *mptcp_local,
>     +                             sa_family_t family, const union
>     inet_addr *addr,
>     +                             int if_idx)
>     +{
>     +       int i;
>     +       u8 loc_bits;
>     +       bool found = false;
>     +
>     +       if (family == AF_INET)
>     +               loc_bits = mptcp_local->loc4_bits;
>     +       else
>     +               loc_bits = mptcp_local->loc6_bits;
>     +
>     +       mptcp_for_each_bit_set(loc_bits, i) {
>     +               if (family == AF_INET &&
>     +                   (!if_idx || mptcp_local->locaddr4[i].if_idx ==
>     if_idx)) {
>     +                       found = true;
>     +                       break;
>     +               }
>     +               if (family == AF_INET6 &&
>     +                   (!if_idx || mptcp_local->locaddr6[i].if_idx ==
>     if_idx)) {
>     +                       found = true;
>     +                       break;
>     +               }
>     +       }
>     +
>     +       if (!found)
>     +               return -1;
>     +
>     +       return i;
>     +}
>     +
>      static int mptcp_find_address(const struct mptcp_loc_addr
>     *mptcp_local,
>                                   sa_family_t family, const union
>     inet_addr *addr,
>                                   int if_idx)
>     @@ -1271,9 +1303,18 @@ static void full_mesh_new_session(const
>     struct sock *meta_sk)
>             rcu_read_lock();
>             mptcp_local = rcu_dereference(fm_ns->local);
>
>     -       index = mptcp_find_address(mptcp_local, family, &saddr,
>     if_idx);
>     -       if (index < 0)
>     +       if(inet_sk(meta_sk)->transparent) {
>     +               mptcp_debug("Meta socket is transparent");
>     +               index = mptcp_find_address_transp(mptcp_local,
>     family, &saddr, if_idx);
>     +       }
>     +       else {
>     +               mptcp_debug("Meta socket is NOT transparent");
>     +               index = mptcp_find_address(mptcp_local, family,
>     &saddr, if_idx);
>     +       }
>     +       if (index < 0) {
>     +               mptcp_debug("Falling back");
>                     goto fallback;
>     +       }
>
>             if (family == AF_INET)
>                     master_tp->mptcp->low_prio =
>     mptcp_local->locaddr4[index].low_prio;
>
>     --------------------//
>
> -- 
> *David PRADAS*
> Responsable Technique de Projets
> /(Ph.D. in Telecommunications)
> Viveris Technologies
> +33(0)561003088
> _david.pradas@toulouse.viveris.com 
> <mailto:david.pradas@toulouse.viveris.com>_ /
>

-- 
*David PRADAS*
Responsable Technique de Projets
/(Ph.D. in Telecommunications)/
Viveris Technologies
+33(0)561003088
_david.pradas@toulouse.viveris.com_ //////

--------------4C664FC8345D1F1D690F0C32
Content-Type: multipart/related;
 boundary="------------CA5F57314170AD36E249D323"


--------------CA5F57314170AD36E249D323
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Hi Med,<br>
      <br>
      Thank you again for your feedback. Please find my comments inline.<br>
      <br>
      Cheers,<br>
      David<br>
      <br>
      <br>
      Le 27/10/2017 à 14:00, <a class="moz-txt-link-abbreviated" href="mailto:mohamed.boucadair@orange.com">mohamed.boucadair@orange.com</a> a écrit :<br>
    </div>
    <blockquote type="cite"
cite="mid:787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <meta name="Generator" content="Microsoft Word 14 (filtered
        medium)">
      <!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
      <style><!--
/* Font Definitions */
@font-face
	{font-family:Helvetica;
	panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"Courier New \;color\:black";
	panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Texte de bulles Car";
	margin:0cm;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0cm;
	margin-right:0cm;
	margin-bottom:0cm;
	margin-left:36.0pt;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	color:black;}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Courier New";
	color:black;
	font-weight:normal;
	font-style:normal;}
span.TextedebullesCar
	{mso-style-name:"Texte de bulles Car";
	mso-style-priority:99;
	mso-style-link:"Texte de bulles";
	font-family:"Tahoma","sans-serif";
	color:black;}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Courier New";
	color:black;
	font-weight:normal;
	font-style:normal;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:1100369828;
	mso-list-type:hybrid;
	mso-list-template-ids:-422402694 -1360258640 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l0:level1
	{mso-level-start-at:0;
	mso-level-number-format:bullet;
	mso-level-text:-;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";
	mso-fareast-font-family:"Times New Roman";}
@list l0:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level3
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l0:level4
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l0:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level6
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l0:level7
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l0:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l0:level9
	{mso-level-number-format:bullet;
	mso-level-text:;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Hi David,
            <o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Thank you for
            clarifying. Much appreciated!<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Please see inline.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Cheers,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US">Med<o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:&quot;Courier
            New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
        <div style="border:none;border-left:solid blue 1.5pt;padding:0cm
          0cm 0cm 4.0pt">
          <div>
            <div style="border:none;border-top:solid #B5C4DF
              1.0pt;padding:3.0pt 0cm 0cm 0cm">
              <p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">De :</span></b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">
                  David Pradas
                  [<a class="moz-txt-link-freetext" href="mailto:david.pradas@toulouse.viveris.com">mailto:david.pradas@toulouse.viveris.com</a>]
                  <br>
                  <b>Envoyé :</b> vendredi 27 octobre 2017 11:20<br>
                  <b>À :</b> BOUCADAIR Mohamed IMT/OLN;
                  <a class="moz-txt-link-abbreviated" href="mailto:multipathtcp@ietf.org">multipathtcp@ietf.org</a><br>
                  <b>Cc :</b> Joaquin Muguerza;
                  <a class="moz-txt-link-abbreviated" href="mailto:fabrice.arnal@thalesaleniaspace.com">fabrice.arnal@thalesaleniaspace.com</a>; Kuhn Nicolas;
                  Emmanuel Dubois; SALLANTIN Renaud; Riadh Dhaou; FASSON
                  Julien<br>
                  <b>Objet :</b> Re: [multipathtcp] MPTCP transparent
                  proxy<o:p></o:p></span></p>
            </div>
          </div>
          <p class="MsoNormal"><o:p> </o:p></p>
          <div>
            <p class="MsoNormal">Hi Med,<br>
              <br>
              Thank you for your reply. Yes, indeed, we also sent the
              email to the maintainers of the MPTCP implementation for
              further discussion regarding the modification. But we
              wanted to share the context of the study with the IETF
              mailing list since we thought it would be interesting to
              have your feedback.<br>
              <br>
              Regarding your questions: <br>
              <span style="font-size:10.0pt;font-family:&quot;Courier
                New ;color:black&quot;,&quot;serif&quot;" lang="EN-US">-</span> 
              <span style="font-size:10.0pt;font-family:&quot;Courier
                New ;color:black&quot;,&quot;serif&quot;" lang="EN-US">
                Is there any reason why you decided to use the
                transparent proxy mode?<br>
              </span><span
style="font-size:10.0pt;font-family:&quot;Helvetica&quot;,&quot;sans-serif&quot;"
                lang="EN-US">Your question is very relevant! It was a
                functional requirement, we wanted to evaluated the
                system performance without NAT translation.
              </span><span
style="font-size:10.0pt;font-family:&quot;Helvetica&quot;,&quot;sans-serif&quot;;color:black"
                lang="EN-US"><o:p></o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">[Med] Please note
                that even in the transparent mode, a ** translation
                (NAT, if you will) ** is required for subsequent
                subflows: The proxy will need to translate the internal
                IP address/port to the one used to place the first
                subflow. Further, the transparent mode will require that
                the traffic should be inspected to detect the MPTCP one.
                This inspection function may have some implications on
                the system performance.</span><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"><br>
              </span></p>
          </div>
        </div>
      </div>
    </blockquote>
    [David] Yes, indeed, the second mptcp subflow takes the source
    address of our proxy. <br>
    Regarding the detection of MPTCP for the transparent mode, yes, this
    inspection might have an impact on the performances (CPU charge,
    RAM), even if does not seem to be the case of our platform --&gt;
    But, indeed, it would be necessary to consider this impact on real
    systems, with many more flows to inspect.<br>
    <blockquote type="cite"
cite="mid:787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup">
      <div class="WordSection1">
        <div style="border:none;border-left:solid blue 1.5pt;padding:0cm
          0cm 0cm 4.0pt">
          <div>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">
                <br>
                - Did you considered to use the explicit mode?<br>
              </span><span
style="font-size:10.0pt;font-family:&quot;Helvetica&quot;,&quot;sans-serif&quot;"
                lang="EN-US">We did not consider this mode, because we
                though that, even giving the address list, the behaviour
                of the implementation will be the same: i.e. fallback to
                TCP if the address is not present in the machine (to be
                confirmed!).</span><span
style="font-size:10.0pt;font-family:&quot;Helvetica&quot;,&quot;sans-serif&quot;;color:black"
                lang="EN-US"><o:p></o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">[Med] The behavior
                for subsequent subflows establishment would be the same,
                but there are other advantages that are worth to be
                considered:<o:p></o:p></span></p>
            <p class="MsoListParagraph"
              style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><!--[if !supportLists]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><span
                  style="mso-list:Ignore">-<span style="font:7.0pt
                    &quot;Times New Roman&quot;">   
                  </span></span></span><!--[endif]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">The proxy is not
                required to be embedded on an on-path router<o:p></o:p></span></p>
            <p class="MsoListParagraph"
              style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><!--[if !supportLists]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><span
                  style="mso-list:Ignore">-<span style="font:7.0pt
                    &quot;Times New Roman&quot;">   
                  </span></span></span><!--[endif]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">Only the eligible
                traffic will be directed to the proxy; no need for
                traffic inspection or hooks to invoke the proxy function<o:p></o:p></span></p>
            <p class="MsoListParagraph"
              style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><!--[if !supportLists]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><span
                  style="mso-list:Ignore">-<span style="font:7.0pt
                    &quot;Times New Roman&quot;">   
                  </span></span></span><!--[endif]--><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">You can easily
                distinguish MPTCP proxied traffic vs. MPTCP flows that
                are natively initiated by internal hosts.
              </span></p>
          </div>
        </div>
      </div>
    </blockquote>
    [David] Thanks for this information! we were not aware of all these
    advantages. They are closely related to our discussion on your first
    question.<br>
    <blockquote type="cite"
cite="mid:787AE7BB302AE849A7480A190F8B93300A05F493@OPEXCLILMA3.corporate.adroot.infra.ftgroup">
      <div class="WordSection1">
        <div style="border:none;border-left:solid blue 1.5pt;padding:0cm
          0cm 0cm 4.0pt">
          <div>
            <p class="MsoListParagraph"
              style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><o:p></o:p></span></p>
            <p class="MsoNormal"><span lang="EN-US"><br>
              </span><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">- How
                do you ensure that the proxy will be on-path whatever
                the link you use to place the first subflow?<br>
              </span><span
style="font-size:10.0pt;font-family:&quot;Helvetica&quot;,&quot;sans-serif&quot;"
                lang="EN-US">In fact, we always force the fist subflow
                to go through the terrestrial link (and the second one
                through the satellite link). Knowing that both link are
                aggregated by our proxy MPTCP-PEP.<o:p></o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US"><o:p> </o:p></span></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier
                New&quot;;color:black" lang="EN-US">[Med] OK, thanks.   <o:p></o:p></span></p>
            <p class="MsoNormal"><span lang="EN-US"><br>
                Kind regards,<br>
                <br>
                David<br>
              </span><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"><br>
                <br>
              </span><span lang="EN-US">Le 26/10/2017 à 10:59, </span><a
                href="mailto:mohamed.boucadair@orange.com"
                moz-do-not-send="true"><span lang="EN-US">mohame</span>d.boucadair@orange.com</a>
              a écrit :<o:p></o:p></p>
          </div>
          <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;">Dear David, all,</span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;"> </span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">Thank
                you for sharing this information. You may want to direct
                this message to the maintainers of the MPTCP
                implementation you mentioned.
              </span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"> </span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">I
                have some architectural questions: Is there any reason
                why you decided to use the transparent proxy mode? Did
                you considered to use the explicit mode? How do you
                ensure that the proxy will be on-path whatever the link
                you use to place the first subflow?</span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"> </span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">Thank
                you.</span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"> </span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">Cheers,</span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US">Med</span><o:p></o:p></p>
            <p class="MsoNormal"><span
                style="font-size:10.0pt;font-family:&quot;Courier New
                ;color:black&quot;,&quot;serif&quot;" lang="EN-US"> </span><o:p></o:p></p>
            <div style="border:none;border-left:solid blue
              1.5pt;padding:0cm 0cm 0cm 4.0pt">
              <div>
                <div style="border:none;border-top:solid #B5C4DF
                  1.0pt;padding:3.0pt 0cm 0cm 0cm">
                  <p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext"
                        lang="EN-US">De :</span></b><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext"
                      lang="EN-US"> multipathtcp [<a
                        href="mailto:multipathtcp-bounces@ietf.org"
                        moz-do-not-send="true">mailto:multipathtcp-bounces@ietf.org</a>]
                      <b>De la part de</b> David Pradas<br>
                      <b>Envoyé :</b> jeudi 26 octobre 2017 10:</span><span
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:windowtext">20<br>
                      <b>À :</b> <a href="mailto:multipathtcp@ietf.org"
                        moz-do-not-send="true">multipathtcp@ietf.org</a><br>
                      <b>Cc :</b> Joaquin Muguerza; <a
                        href="mailto:fabrice.arnal@thalesaleniaspace.com"
                        moz-do-not-send="true">
                        fabrice.arnal@thalesaleniaspace.com</a>; Kuhn
                      Nicolas; Emmanuel Dubois; SALLANTIN Renaud; Riadh
                      Dhaou; FASSON Julien<br>
                      <b>Objet :</b> [multipathtcp] MPTCP transparent
                      proxy</span><o:p></o:p></p>
                </div>
              </div>
              <p class="MsoNormal"> <o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">Dear All, </span>
                <o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">We contact you regarding the MPTCP
                  implementation (v0.92) and some problems we have
                  encountered in a specific use case (transparent
                  sockets). We will try to summarise the context of our
                  study, as well as the problem and the solutions we
                  propose to solve it.</span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">The objective of the study has been to
                  work on a MPTCP-PEP proxy, where the proxy (PEPsal
                  implementation) splits the TCP connection and, with
                  MPTCP, aggregates two link (satellite and
                  terrestrial). We have also focused on other scenarios
                  (e.g. PEPsal only on the satellite link), but we
                  prefer to discuss only the one presented in the figure
                  below:</span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US"> <img id="_x0000_i1025"
                    src="cid:part5.6846085E.D1D3D65A@toulouse.viveris.com"
                    class="" height="168" width="727" border="0"></span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">While trying to put together our
                  implementation of PEPsal (transparent proxy) in a
                  MPTCP</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
                  lang="EN-US">
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">compliant kernel, we had to face a
                  problem with the MPTCP implementation due to the
                  transparent sockets</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
                  lang="EN-US">
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">used</span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
                  lang="EN-US">
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">in PEPsal. After carefully reading the
                  MPTCP code, we discovered that when opening new
                  subflows (using the fullmesh algorithm), first it is
                  checked if the IP address of the main subflow
                  corresponds to any of the network interfaces on the
                  machine. This presents a problem when working with
                  transparent sockets, since these sockets can be bound
                  to external IP addresses, not present on the machine.
                  In this case, the MPTCP implementation falls back to a
                  classical TCP connection, which is not the behaviour
                  we</span><span
style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"
                  lang="EN-US">
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">target.<br>
                  <br>
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">We
                  assume such behaviour of  MPTCP implementation was a
                  deliberate choice (e.g. for security concerns). Is it
                  actually the main driver ? Could such compatibility
                  with transparent proxying be acceptable for subsequent
                  MPTCP versions ? <br>
                  We have proceeded to such code modification, and we
                  are happy to share it with you, for review and
                  possible integration in the main MPTCP code. You may
                  decide for instance if this feature shall be
                  implemented under all circumstances, or restricted to
                  a certain mode only (e.g. activated through a control
                  option, sysctl command, ... ).</span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">Secondly,</span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:red"
                  lang="EN-US">
                </span><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"
                  lang="EN-US">we have carried out some performances
                  tests with applications such as HTTP (measuring the
                  page load time) or file transfer over TCP, and we have
                  observed that MPTCP outperforms (or equals) the case
                  where only one access is used (terrestrial or
                  satellite), specially under congestion conditions.
                  That being said, we expect to further work on this
                  issue, mainly assessing (1) the performance of MPTCP
                  schedulers with such large asymmetry, (2) the
                  performance of the different coupled congestion
                  control in our use-case and (3) consider the relevance
                  of the second sub-flow opening (mainly for short
                  flows). Do not hesitate to let us know if you have any
                  interest in collaborating in this future work.<br>
                  <br>
                  We attached herein the modification we used, which
                  allows MPTCP to work when using transparent sockets.
                  <br>
                  <br>
                  We would be glad to discuss with you about this
                  subject.</span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">Best
                  Regards,</span><o:p></o:p></p>
              <p><span
                  style="font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">David
                  PRADAS<br>
                  Joaquin MUGUERZA</span><o:p></o:p></p>
              <div>
                <p class="MsoNormal"><span style="font-size:10.0pt"><br>
                    --------------------<i><u><br>
                        <br>
                      </u></i></span><br>
                  diff --git a/net/mptcp/mptcp_fullmesh.c
                  b/net/mptcp/mptcp_fullmesh.c <br>
                  index 1e5b753..665560a 100644 <br>
                  --- a/net/mptcp/mptcp_fullmesh.c <br>
                  +++ b/net/mptcp/mptcp_fullmesh.c <br>
                  @@ -629,6 +629,38 @@ static void
                  update_addr_bitfields(struct sock *meta_sk, <br>
                          } <br>
                   } <br>
                  <br>
                  +static int mptcp_find_address_transp(const struct
                  mptcp_loc_addr *mptcp_local, <br>
                  +                             sa_family_t family,
                  const union inet_addr *addr, <br>
                  +                             int if_idx) <br>
                  +{ <br>
                  +       int i; <br>
                  +       u8 loc_bits; <br>
                  +       bool found = false; <br>
                  + <br>
                  +       if (family == AF_INET) <br>
                  +               loc_bits = mptcp_local-&gt;loc4_bits;
                  <br>
                  +       else <br>
                  +               loc_bits = mptcp_local-&gt;loc6_bits;
                  <br>
                  + <br>
                  +       mptcp_for_each_bit_set(loc_bits, i) { <br>
                  +               if (family == AF_INET &amp;&amp; <br>
                  +                   (!if_idx ||
                  mptcp_local-&gt;locaddr4[i].if_idx == if_idx)) { <br>
                  +                       found = true; <br>
                  +                       break; <br>
                  +               } <br>
                  +               if (family == AF_INET6 &amp;&amp; <br>
                  +                   (!if_idx ||
                  mptcp_local-&gt;locaddr6[i].if_idx == if_idx)) { <br>
                  +                       found = true; <br>
                  +                       break; <br>
                  +               } <br>
                  +       } <br>
                  + <br>
                  +       if (!found) <br>
                  +               return -1; <br>
                  + <br>
                  +       return i; <br>
                  +} <br>
                  + <br>
                   static int mptcp_find_address(const struct
                  mptcp_loc_addr *mptcp_local, <br>
                                                sa_family_t family,
                  const union inet_addr *addr, <br>
                                                int if_idx) <br>
                  @@ -1271,9 +1303,18 @@ static void
                  full_mesh_new_session(const struct sock *meta_sk)
                  <br>
                          rcu_read_lock(); <br>
                          mptcp_local =
                  rcu_dereference(fm_ns-&gt;local); <br>
                  <br>
                  -       index = mptcp_find_address(mptcp_local,
                  family, &amp;saddr, if_idx); <br>
                  -       if (index &lt; 0) <br>
                  +       if(inet_sk(meta_sk)-&gt;transparent) { <br>
                  +               mptcp_debug("Meta socket is
                  transparent"); <br>
                  +               index =
                  mptcp_find_address_transp(mptcp_local, family,
                  &amp;saddr, if_idx);
                  <br>
                  +       } <br>
                  +       else { <br>
                  +               mptcp_debug("Meta socket is NOT
                  transparent"); <br>
                  +               index =
                  mptcp_find_address(mptcp_local, family, &amp;saddr,
                  if_idx); <br>
                  +       } <br>
                  +       if (index &lt; 0) { <br>
                  +               mptcp_debug("Falling back"); <br>
                                  goto fallback; <br>
                  +       } <br>
                  <br>
                          if (family == AF_INET) <br>
                                  master_tp-&gt;mptcp-&gt;low_prio =
                  mptcp_local-&gt;locaddr4[index].low_prio;
                  <o:p></o:p></p>
                <p> <o:p></o:p></p>
                <p class="MsoNormal">--------------------<i><span
                      style="font-size:10.0pt"> </span>
                  </i><o:p></o:p></p>
              </div>
            </div>
          </blockquote>
          <p><o:p> </o:p></p>
          <div>
            <p class="MsoNormal">-- <br>
              <b><span style="font-size:10.0pt">David PRADAS</span></b><span
                style="font-size:10.0pt">
                <br>
                Responsable Technique de Projets <br>
                <i>(Ph.D. in Telecommunications) <br>
                  Viveris Technologies <br>
                  +33(0)561003088 <br>
                  <u><a href="mailto:david.pradas@toulouse.viveris.com"
                      moz-do-not-send="true">david.pradas@toulouse.viveris.com</a></u>
                </i></span><o:p></o:p></p>
          </div>
        </div>
      </div>
    </blockquote>
    <p><br>
    </p>
    <div class="moz-signature">-- <br>
      <font size="2"> <b>David PRADAS</b> <br>
        Responsable Technique de Projets <br>
        <i>(Ph.D. in Telecommunications)<i> <br>
            Viveris Technologies <br>
            +33(0)561003088 <br>
            <u><a class="moz-txt-link-abbreviated" href="mailto:david.pradas@toulouse.viveris.com">david.pradas@toulouse.viveris.com</a></u>
          </i></i></font><i><i>
        </i></i></div>
  </body>
</html>

--------------CA5F57314170AD36E249D323
Content-Type: image/jpeg;
 name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <part5.6846085E.D1D3D65A@toulouse.viveris.com>
Content-Disposition: inline;
 filename="image001.jpg"

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAm
JSMgIyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMp
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAAR
CACoAtcDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2aiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAKKKKACivO9Y8ceIbLUNfksrPS5NO0R084Su6yurDPyn7uetdDH470Zry1spJZ
UvbmOKRYBC7ECQZBJAxj1Pahag9Do6K5xPH/AIek1Yacl/mZpfJD+W3lGT+6Hxtz+NS/8Jro
2Sn2h/NF59h8nym8zzfTbjOO+elAG9RWEPGWjHS01AXD+Q9z9kA8ptxlzjbtxnOaxfHHji/8
L6zY29pZw3Fu8LXFyz53LGrAMVwewOaAO3orhvHHj648PfY10e3gu3li+0zGUnCQkhQeCOST
x9Ki1zxj4ht9b1S30m10t7bTLRLqX7Szq7ArkhSOM8HrQB31Fec33jbxM0Gj32nWmkCy1iSO
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
tb4vkvyRhh/g+b/NhRRRWRuFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAGZqP
/IV0v/ro/wD6Ca06zNR/5Cul/wDXR/8A0E1p1pP4Y+n6swpfHP1/RBRRRWZuFFFFABRRRQAU
UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAZH9v+bqk1pZ2NxcpbyLH
cToVCxsecYJycAgnA4zXP6FrTNJY/wBoXt4zvd3wUhh5ZRCfv55wB0xWxb6PqWm6teyWE9qb
O9nFxIJlbfG2AGC44IOB1xis+18FzRvaCa5jaOKW8eQKCCVnzgD3GaWv4fiH9fmaFl4riup4
Fksrm3iu43ktJZNuJwoycAHKkjkA44qOw8YR35sWGnXkUOoIxtZJNoEjAZ2kZyM4OCeDVbQ/
CDaUURrbSsQRNHHcxQkTPxgE9lOOuM5qxa+GZ7ex8OwNcRltKYGQhTiT5CvHp1qhFbTvGc7a
Kb3U9OaFmumtYQkiYkfzGULndx05JwPSulsrmS6txJNbS20mSGikIJH4gkEfSsCDw/qFtpd1
p2NNurV53ljS5RiHV2LFXHQEE8EZ6VoeGtHl0TSzbTShy0ryBEJKQhjnYmedopDZr0UUUAFF
FFABRRRQAUUUUAFFFFAGVYEx67qUJAO4Ryg/UYx+latZVt/yM19/1wi/m1ata1fiXovyMMP8
L9X+bCiiisjcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAo
oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAMzUf+Qrpf8A10f/
ANBNadZmo/8AIV0v/ro//oJrTrSfwx9P1ZhS+Ofr+iCiiiszcKKKKACiiigAooooAKKKKACi
iigDhvF8sdnrJvpZre8SCJALBrhoZ0bd9+HHDMfT2HNZ+qG7vdb1YS3Npa3kUqfYpLm7kjki
TaCpSMKQ4Jznnnoa9FeCKSRXeJGdfusVBI+hoeCKSRXeNGdfusVBI+hoWgM5DTtLh1bxV4k+
2vLIY2ijjHmsFi3RDcVGeCc1T0q5vdQaO3Ekkl3oFrMkign57jlI8+vyqTz/AHhXehVBJCgE
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
UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUU
UUAFFFFABRRRQAVheIfFtr4bmgS7s9QlE5Co9vBvUsTgLnP3j6Vu1heK9HudZttOS0KbrfUI
bh95x8ikk496ANO31GC4WEFvJmmQOsE2FlA9160p1KyAJN5bgL1Pmrx+tcJeeBtUl+IX9r+Y
JbRrmOcOJgjxBRjbgqSR7AgHNFp8OSljo0NzZ2TtDqElzfZ581Tv259cbhxQB3y3du0/krPE
ZsbvLDjdj1x6VUutf0uyWBri/t1WeXyYzvBBf04rhrfwBqtv4ynv3dJrV5pZElEwUhWUgIV2
7sDOOGx6VHafD/UodFjilsNMeS31CO4ht3bcDGBhlZ9vOeO2eOc0Ad/d6za2hjG/zneVYtkJ
DMpY4yRnge9Qav4js9J0q6vg63ItiokjhcFhlgvPp1rl08C3KJcTLDaLeTa0t4ZQefIVgQuf
b0rIj+HuvvPrEs5sg15F5a+WwVWPnB84CjHAPXJ96APRdb1iPQ9Hm1GaN5I4tuVXqckD+tLb
6zaTJM8j/ZxFK0R88hMlcZIyeRz1qp4r0q41nwzc2Frs86UJt3nA4YE/yrmZPAVxeasst9Ba
z2n2u8nMbnORIoCceuRQB1cev2z65daa3yG3hjmMzMAjByQAD68Vq15tbeA9Yt73TbxjbzGy
t7WNrd5MpMULBs8dVBBU+tek0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQB//Z
--------------CA5F57314170AD36E249D323--

--------------4C664FC8345D1F1D690F0C32--


From nobody Tue Oct 31 03:06:08 2017
Return-Path: <anand.nandugudi@tessares.net>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B75B213F5FB for <multipathtcp@ietfa.amsl.com>; Tue, 31 Oct 2017 03:06:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=tessares-net.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gIlWHGmt5AeH for <multipathtcp@ietfa.amsl.com>; Tue, 31 Oct 2017 03:06:03 -0700 (PDT)
Received: from mail-lf0-x231.google.com (mail-lf0-x231.google.com [IPv6:2a00:1450:4010:c07::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 125F013A66B for <multipathtcp@ietf.org>; Tue, 31 Oct 2017 03:06:03 -0700 (PDT)
Received: by mail-lf0-x231.google.com with SMTP id k40so18302322lfi.4 for <multipathtcp@ietf.org>; Tue, 31 Oct 2017 03:06:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tessares-net.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=B2eKebLj8MORYA/VsEAEBDdpx1DU5f+gwpiPlJUT/1k=; b=haDMCZYsTfwhbIGzZcRNdAMAUkGMjXuIj0W6E9WvojnV+oyL6sVyJH9AKdj4BckG9h 3mmYDcQ2fp0YfyFgdIhnqqlKuVfpdDsN1590lsCHmm04SanG7Hw3LeZtIk8Bw7H8tGt/ ADAGMOeEk+Vm79jSHcLr2tKopBHI3Ebl5uJFPlmE3RObiwOXLx1DjzXbEj5cNSGpfOWK 23RoHpGq+XoxsD98cirKPQ8SSxOlxLOLe/hqKyrZRjI2chYOKQE+YLqOlfDi6HXJ+7ou M5wsi3xTtUsgr7rH3qydu5O3zcQ9NuKiNUkaKt4SdT/j3lTecrh2/utRVIzvI/3BJQnY D4oA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=B2eKebLj8MORYA/VsEAEBDdpx1DU5f+gwpiPlJUT/1k=; b=BPs/KCnuqz0VwPQZZA3EFHTz9FJjGZdhshjnHC/rFrHJM5xsyN4wjadu3n3srsNGvL MNqKYbWj2oAXCtQqZNYKQ5W8P5st1A4sfUcK4CLR+94jIhEk3zvohREEesjHmbrDvxDf B5jWhJ3V34G0S2exewWkM6057f//Fl4gzi43FjUXiRihmJig0aXE9X7/JYlcRp7/4tpE 253rsdXcUA7vQ4SvwA5wo7eDhdOYngLsUVW68OslF2ahvc8E78kfli3wyciUzypYZpS1 e5fhI5lZ4JfFzvOjWO64Un8HTwRPryteHzL0k0osL5Yk9Yaz9qrgM0PyeE9Twu6IXxkf G8jg==
X-Gm-Message-State: AMCzsaWMv87HAxDJByT8greJkLO/6sWnBtY5A7gLwJVDQcKHUOfTLiLY 0pcSeyDfwpy2fCDipzh5vQOqXVJFtO1s/heizGQ4AVdBUwZfBIZQCQI5AgfMwgybkITlgEZrqMq GxFFRCcm+Xh39xO5CpwVY9a/y1nQ=
X-Google-Smtp-Source: ABhQp+R0MPlgwmwcvJQHX4qAFdzgnf656DqoBGOcQwctUOafcF6FObaZ9PtDiO6SddrnjqH08dJpArqxZpkUv5Akudo=
X-Received: by 10.46.95.155 with SMTP id x27mr761871lje.184.1509444361016; Tue, 31 Oct 2017 03:06:01 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.25.24.160 with HTTP; Tue, 31 Oct 2017 03:05:59 -0700 (PDT)
From: Anand Nandugudi <anand.nandugudi@tessares.net>
Date: Tue, 31 Oct 2017 11:05:59 +0100
Message-ID: <CALUC0b6-MEHDbPbqdVn8K2G-jqX_BL5nbtGCi=VTMjAFOV98_w@mail.gmail.com>
To: multipathtcp@ietf.org, tcpm@ietf.org
Content-Type: multipart/alternative; boundary="001a114b52def2696b055cd4e6f5"
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/EPk1gs_UKSER58wFqkyTKv6zFmI>
Subject: [multipathtcp] Fwd: New Version Notification for draft-bonaventure-mptcp-converters-02.txt
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 31 Oct 2017 10:06:06 -0000

--001a114b52def2696b055cd4e6f5
Content-Type: text/plain; charset="UTF-8"

Name:           draft-bonaventure-mptcp-converters
Revision:       02
Title:          0-RTT TCP Converter
Document date:  2017-10-30
Group:          Individual Submission
Pages:          32
URL:            https://www.ietf.org/internet-drafts/draft-bonaventure-
mptcp-converters-02.txt
Status:         https://datatracker.ietf.org/doc/draft-bonaventure-mptcp-
converters/
Htmlized:       https://tools.ietf.org/html/draft-bonaventure-mptcp-
converters-02
Htmlized:       https://datatracker.ietf.org/doc/html/draft-bonaventure-
mptcp-converters-02
Diff:           https://www.ietf.org/rfcdiff?url2=draft-bonaventure-mptcp-
converters-02

Abstract:
   This document specifies an application proxy, called Transport
   Converter, to assist the deployment of Multipath TCP.  This proxy is
   designed to avoid inducing extra delay when involved in a network-
   assisted connection (that is, 0-RTT).  This specification assumes an
   explicit model, where the proxy is explicitly configured on hosts.




Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at tools.ietf.org.

The IETF Secretariat

-- 

------------------------------
DISCLAIMER.
This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed. 
If you have received this email in error please notify the system manager. 
This message contains confidential information and is intended only for the 
individual named. If you are not the named addressee you should not 
disseminate, distribute or copy this e-mail. Please notify the sender 
immediately by e-mail if you have received this e-mail by mistake and 
delete this e-mail from your system. If you are not the intended recipient 
you are notified that disclosing, copying, distributing or taking any 
action in reliance on the contents of this information is strictly 
prohibited.

--001a114b52def2696b055cd4e6f5
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_quote">Name:=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0draft-bonaventure-mptcp-<wbr>converters<br>
Revision:=C2=A0 =C2=A0 =C2=A0 =C2=A002<br>
Title:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0-RTT TCP Converter<br>
Document date:=C2=A0 2017-10-30<br>
Group:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Individual Submission<br>
Pages:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 32<br>
URL:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"https://www.ietf.o=
rg/internet-drafts/draft-bonaventure-mptcp-converters-02.txt" rel=3D"norefe=
rrer" target=3D"_blank">https://www.ietf.org/internet-<wbr>drafts/draft-bon=
aventure-<wbr>mptcp-converters-02.txt</a><br>
Status:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://datatracker.iet=
f.org/doc/draft-bonaventure-mptcp-converters/" rel=3D"noreferrer" target=3D=
"_blank">https://datatracker.ietf.org/<wbr>doc/draft-bonaventure-mptcp-<wbr=
>converters/</a><br>
Htmlized:=C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://tools.ietf.org/html/=
draft-bonaventure-mptcp-converters-02" rel=3D"noreferrer" target=3D"_blank"=
>https://tools.ietf.org/html/<wbr>draft-bonaventure-mptcp-<wbr>converters-0=
2</a><br>
Htmlized:=C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://datatracker.ietf.org=
/doc/html/draft-bonaventure-mptcp-converters-02" rel=3D"noreferrer" target=
=3D"_blank">https://datatracker.ietf.org/<wbr>doc/html/draft-bonaventure-<w=
br>mptcp-converters-02</a><br>
Diff:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"https://www.ietf.o=
rg/rfcdiff?url2=3Ddraft-bonaventure-mptcp-converters-02" rel=3D"noreferrer"=
 target=3D"_blank">https://www.ietf.org/rfcdiff?<wbr>url2=3Ddraft-bonaventu=
re-mptcp-<wbr>converters-02</a><br>
<br>
Abstract:<br>
=C2=A0 =C2=A0This document specifies an application proxy, called Transport=
<br>
=C2=A0 =C2=A0Converter, to assist the deployment of Multipath TCP.=C2=A0 Th=
is proxy is<br>
=C2=A0 =C2=A0designed to avoid inducing extra delay when involved in a netw=
ork-<br>
=C2=A0 =C2=A0assisted connection (that is, 0-RTT).=C2=A0 This specification=
 assumes an<br>
=C2=A0 =C2=A0explicit model, where the proxy is explicitly configured on ho=
sts.<br>
<br>
<br>
<br>
<br>
Please note that it may take a couple of minutes from the time of submissio=
n<br>
until the htmlized version and diff are available at <a href=3D"http://tool=
s.ietf.org" rel=3D"noreferrer" target=3D"_blank">tools.ietf.org</a>.<br>
<br>
The IETF Secretariat<br>
<br>
</div><div><br></div><div class=3D"gmail_signature" data-smartmail=3D"gmail=
_signature"></div>
</div>

<br>
<div><br><hr></div><font size=3D"1"><span style=3D"font-family:Verdana,sans=
-serif;background-color:rgb(255,255,255)">DISCLAIMER.</span><br style=3D"fo=
nt-family:Verdana,sans-serif;background-color:rgb(255,255,255)"><font color=
=3D"#000000" face=3D"Verdana, sans-serif" style=3D"background-color:rgb(255=
,255,255)">This email and any files transmitted with it are confidential an=
d intended solely for the use of the individual or entity to whom they are =
addressed. If you have received this email in error please notify the syste=
m manager. This message contains confidential information and is intended o=
nly for the individual named. If you are not the named addressee you should=
 not disseminate, distribute or copy this e-mail. Please notify the sender =
immediately by e-mail if you have received this e-mail by mistake and delet=
e this e-mail from your system. If you are not the intended recipient you a=
re notified that disclosing, copying, distributing or taking any action in =
reliance on the contents of this information is strictly prohibited.</font>=
</font>
--001a114b52def2696b055cd4e6f5--

