Subject: Re: [DMM] Warren Kumari's Discuss on draft-ietf-dmm-mag-multihoming-04: (with DISCUSS)

From: <[email-masked]>
Date: Wed, 2 Aug 2017 21:18:56 +0000

Hello

Please see inline

Pierrick

Sent from my cell phone, mind the typos.

-------- Message d'origine --------
De : Warren Kumari <[email-masked]>
Date : 02/08/2017 22:23 (GMT+01:00)
À : The IESG <[email-masked]>
Cc : [email-masked], Jouni Korhonen <[email-masked]>, [email-masked], [email-masked], [email-masked]
Objet : Warren Kumari's Discuss on draft-ietf-dmm-mag-multihoming-04: (with DISCUSS)

Warren Kumari has entered the following ballot position for
draft-ietf-dmm-mag-multihoming-04: Discuss

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)

Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.

The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-dmm-mag-multihoming/

----------------------------------------------------------------------
DISCUSS:
----------------------------------------------------------------------

Section 3.2.  Traffic distribution schemes
"Per-packet management: the LMA and the MAG distribute packets, belonging to a
same IP flow, over more than one bindings (i.e. more than one WAN interface)."
This immediately made my out-of-order-packets antenna pop up, so I read the
section looking for mitigations. The very next sentence reads: "Packet
distribution can be done either at the transport level, e.g. using MPTCP or at
When operating at the IP packet level, different packets distribution
algorithms are possible. " -- the fact that this sentence is a: malformed and
b: hand-wavy did nothing to allay my concerns, so I read further: "The
distribution algorithm is left to implementer but whatever the algorithm is,
packets distribution likely introduces packet latency and out-of-order
delivery.  LMA and MAG shall thus be able to make reordering before packets
delivery." - I agree with the first sentence (although it is poorly worded),
but the second sentence doesn't follow from the first; "shall thus be able to"
implies that the prior text somehow provides a solution, not points out a
problem (the sentence is also malformed)-- I think you mean something like "The
LMA and MAG thus need to be able reorder packets to their original order before
delivery."

This then continues with "Sequence number can be can be used for that purpose,
for example using GRE with sequence number option [RFC5845]." - I think that
the actual reference should be RFC2890, but regardless of this, I don't think
that what you are proposing works - "The Sequence Number field is used to
maintain sequence of packets **within** the GRE Tunnel." (from RFC2890,
emphasis added). This means that sequence numbers are local to the tunnel, and
(as I understand it) your solution involves diverse tunnels. Further, Section
2.2. Sequence Number says: "The receiver may perform a small amount of
buffering in an attempt to recover the original sequence of transmitted
packets. In this case, the packet may be placed in a buffer sorted by sequence
number." - if you are proposing using a single sequence number space for
multiple tunnels, you will end up with sequence number space gabs, and lots of
buffering, etc. The section ends with: "However, more detailed considerations
on reordering  and IP packet distribution scheme (e.g. definition of packets
distribution algorithm) are out the scope of this document." - I think that,
unless the prior paragraph is significantly reworked, it should not try and
suggest any mitigations.

>> ok

The whole idea of striping packets of a flow across (notably) different
transports seems like a really bad idea to me -- is it actually needed?

>> some use-cases implement per-packet distribution. However this document does not aim to make recommendation on the way to distribute packets

_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.

---

From: Warren Kumari <[email-masked]>
Date: Wed, 02 Aug 2017 23:37:55 +0000

On Wed, Aug 2, 2017 at 5:18 PM <[email-masked]> wrote:

> Cc : [email-masked], Jouni Korhonen <
> [email-masked]>, [email-masked], [email-masked],
> [email-masked]
> >> some use-cases implement per-packet distribution. However this document
> does not aim to make recommendation on the way to distribute packets
>
>
So, how do they deal with out of order packets?
W

> --
I don't think the execution is relevant when it was obviously a bad idea in
the first place.
This is like putting rabid weasels in your pants, and later expressing
regret at having chosen those particular rabid weasels and that pair of
pants.
   ---maf

---

From: <[email-masked]>
Date: Thu, 3 Aug 2017 08:00:34 +0000

De : Warren Kumari [mailto:[email-masked]] 
Envoyé : jeudi 3 août 2017 01:38
À : The IESG; SEITE Pierrick IMT/OLN
Cc : Jouni Korhonen; [email-masked]; [email-masked]; [email-masked]
Objet : Re: RE : Warren Kumari's Discuss on draft-ietf-dmm-mag-multihoming-04: (with DISCUSS)

Hello 

Please see inline

Pierrick 

-------- Message d'origine --------

>> AFAIK, it is implementation specific and depends on the use-case: some implementation relies on MPTCP, some others have proprietary mechanisms adding sequence numbers to the tunneled packet. Sometimes, if only some specific application are supposed to take benefit of the aggregation, reordering is only managed  at the application layer. 

W

 

-- 

I don't think the execution is relevant when it was obviously a bad idea in the first place.
This is like putting rabid weasels in your pants, and later expressing regret at having chosen those particular rabid weasels and that pair of pants.
   ---maf

---

From: Warren Kumari <[email-masked]>
Date: Tue, 15 Aug 2017 13:46:57 -0400

This document is on Thursday's telechat - I have not seen proposed
text to address my concerns, and so I'm continuing to hold my DISCUSS
position.

W

On Wed, Aug 2, 2017 at 5:18 PM,  <[email-masked]> wrote:
> Cc : [email-masked], Jouni Korhonen
> <[email-masked]>, [email-masked], [email-masked],
> [email-masked]
> Ce message et ses pieces jointes peuvent contenir des informations
> confidentielles ou privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu
> ce message par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages
> electroniques etant susceptibles d'alteration,
> This message and its attachments may contain confidential or privileged
> information that may be protected by law;

-- 
I don't think the execution is relevant when it was obviously a bad
idea in the first place.
This is like putting rabid weasels in your pants, and later expressing
regret at having chosen those particular rabid weasels and that pair
of pants.
   ---maf

---

From: "Sri Gundavelli (sgundave)" <[email-masked]>
Date: Wed, 16 Aug 2017 00:03:35 +0000

Hi Warren,

We will post the text by tomorrow.

Regards
Sri

On 8/15/17, 10:46 AM, "Warren Kumari" <[email-masked]> wrote:

>> Objet : Warren Kumari's Discuss on draft-ietf-dmm-mag-multihoming-04:
>>(with
>> DISCUSS)
>>
>> Please refer to 
>>https://www.ietf.org/iesg/statement/discuss-criteria.html
>> "Per-packet management: the LMA and the MAG distribute packets,
>>belonging to
>> a
>> distribution can be done either at the transport level, e.g. using
>>MPTCP or
>> at
>> algorithms are possible. " -- the fact that this sentence is a:
>>malformed
>> and
>> but the second sentence doesn't follow from the first; "shall thus be
>>able
>> to"
>> problem (the sentence is also malformed)-- I think you mean something
>>like
>> "The
>> emphasis added). This means that sequence numbers are local to the
>>tunnel,
>> and
>> multiple tunnels, you will end up with sequence number space gabs, and
>>lots
>> of
>>_________________________________________________________________________
>>________________________________________________
>>
>> Orange decline toute responsabilite si ce message a ete altere, deforme
>>ou
>> falsifie. Merci.
>>
>> As emails may be altered, Orange is not liable for messages that have
>>been
>> modified, changed or falsified.
>> Thank you.
>
>
>
>--

---

From: "Sri Gundavelli (sgundave)" <[email-masked]>
Date: Wed, 16 Aug 2017 01:40:43 +0000

Hi Warren,

Slight rewrite of this paragraph without changing the original intent.  Removed unnecessary text; identified the key issues.

Please let me know if this addresses your concerns.

Regards
Sri

————————————-

NEW:

3.2.  Traffic distribution schemes

When the MAG has registered multipath binding with the LMA, there will be multiple established overlay tunnels between them. The MAG and the LMA can use any one, or more of the available tunnels paths for routing the mobile node’s IP traffic.  This specification does not recommend, or define any specific traffic distribution scheme, however it identifies two well-known approaches that implementations can potentially use. These approaches are, Per-flow and Per-packet Traffic distribution schemes.

Per-Flow Traffic Distribution:

In this approach the MAG and the LMA associate each of the IP flows (upstream and downstream) to a specific tunnel path. The packets in a given IP flow are always routed on the same overlay tunnel path; they are never split and routed concurrently on more than one tunnel path.  It is possible a given flow may be moved from one tunnel path to another, but the flow is never split. The decision to bind a given IP flow to a specific tunnel path is based on traffic distribution policy. This traffic distribution policy is either statically configured on both the MAG and the LMA, or dynamically negotiated  over Proxy Mobile IPv6 signaling.   The Flow Binding extension [6089] defines the mechanism and the semantics for exchanging the traffic policy between two tunnel peers and the same mechanism and the mobility options are used here.

Per-Packet Traffic Distribution:

In this approach, packets belonging a given IP flow will be split and routed across more than one tunnel paths. The exact approach for traffic distribution, or the distribution weights is outside the scope of this specification. In a very simplistic approach, assuming the established tunnel paths have symmetric characteristics, the packets can be equally distributed on all the available tunnel paths. In a different scenario when the links have different speeds, the chosen approach can be based on weighted distribution (Ex: n:m ratio). However, in any of these chosen approaches, implementations have to be sensitive to issues related to asymmetric link characteristics and the resulting issues such as re-ordering, buffering and the impact to the application performance. Care must be taken to ensure there is no negative impact to the application performance due to the use of this approach.

—————————————————————-

OD:

3.2.  Traffic distribution schemes

   When receiving packets from the MN, the MAG distributes packets over
   tunnels that have been established.  Traffic distribution can be
   managed either on a per-flow or on a per-packet basis:

   o  Per-flow traffic management: each IP flow (both upstream and
      downstream) is mapped to a given tunnel, corresponding to a given
      WAN interface.  Flow binding extension [RFC6089] is used to
      exchange, and synchronize, IP flow management policies (i.e. rules
      associating traffic selectors [RFC6088] to a tunnel).

   o  Per-packet management: the LMA and the MAG distribute packets,
      belonging to a same IP flow, over more than one bindings (i.e.
      more than one WAN interface).  Packet distribution can be done
      either at the transport level, e.g. using MPTCP or at When
      operating at the IP packet level, different packets distribution
      algorithms are possible.  For example, the algorithm may give
      precedence to one given access: the MAG overflows traffic from the
      primary access, e.g.  WLAN, to the second one, only when load on
      primary access reaches a given threshold.  The distribution
      algorithm is left to implementer but whatever the algorithm is,
      packets distribution likely introduces packet latency and out-of-
      order delivery.  LMA and MAG shall thus be able to make reordering
      before packets delivery.  Sequence number can be can be used for
      that purpose, for example using GRE with sequence number option
      [RFC5845].  However, more detailed considerations on reordering
      and IP packet distribution scheme (e.g. definition of packets
      distribution algorithm) are out the scope of this document.

   Because latency introduced by per-packet can cause injury to some
   application, per-flow and per-packet distribution schemes could be
   used in conjunction.  For example, high throughput services (e.g.
   video streaming) may benefit from per-packet distribution scheme,
   while latency sensitive applications (e.g.  VoIP) are not be spread
   over different WAN paths.  IP flow mobility extensions, [RFC6089] and
   [RFC6088], can be used to provision the MAG with such flow policies.

On 8/15/17, 10:46 AM, "Warren Kumari" <[email-masked]<mailto:[email-masked]>> wrote:

W

On Wed, Aug 2, 2017 at 5:18 PM,  <[email-masked]<mailto:[email-masked]>> wrote:
Hello

Please see inline

Pierrick

-------- Message d'origine --------
De : Warren Kumari <[email-masked]<mailto:[email-masked]>>
Date : 02/08/2017 22:23 (GMT+01:00)
À : The IESG <[email-masked]<mailto:[email-masked]>>
Cc : [email-masked]<mailto:[email-masked]>, Jouni Korhonen
<[email-masked]<mailto:[email-masked]>>, [email-masked]<mailto:[email-masked]>, [email-masked]<mailto:[email-masked]>,
[email-masked]<mailto:[email-masked]>
Objet : Warren Kumari's Discuss on draft-ietf-dmm-mag-multihoming-04: (with
DISCUSS)

Section 3.2.  Traffic distribution schemes
"Per-packet management: the LMA and the MAG distribute packets, belonging to
a
same IP flow, over more than one bindings (i.e. more than one WAN
interface)."
This immediately made my out-of-order-packets antenna pop up, so I read the
section looking for mitigations. The very next sentence reads: "Packet
distribution can be done either at the transport level, e.g. using MPTCP or
at
When operating at the IP packet level, different packets distribution
algorithms are possible. " -- the fact that this sentence is a: malformed
and
b: hand-wavy did nothing to allay my concerns, so I read further: "The
distribution algorithm is left to implementer but whatever the algorithm is,
packets distribution likely introduces packet latency and out-of-order
delivery.  LMA and MAG shall thus be able to make reordering before packets
delivery." - I agree with the first sentence (although it is poorly worded),
but the second sentence doesn't follow from the first; "shall thus be able
to"
implies that the prior text somehow provides a solution, not points out a
problem (the sentence is also malformed)-- I think you mean something like
"The
LMA and MAG thus need to be able reorder packets to their original order
before
delivery."

This then continues with "Sequence number can be can be used for that
purpose,
for example using GRE with sequence number option [RFC5845]." - I think that
the actual reference should be RFC2890, but regardless of this, I don't
think
that what you are proposing works - "The Sequence Number field is used to
maintain sequence of packets **within** the GRE Tunnel." (from RFC2890,
emphasis added). This means that sequence numbers are local to the tunnel,
and
(as I understand it) your solution involves diverse tunnels. Further,
Section
2.2. Sequence Number says: "The receiver may perform a small amount of
buffering in an attempt to recover the original sequence of transmitted
packets. In this case, the packet may be placed in a buffer sorted by
sequence
number." - if you are proposing using a single sequence number space for
multiple tunnels, you will end up with sequence number space gabs, and lots
of
buffering, etc. The section ends with: "However, more detailed
considerations
on reordering  and IP packet distribution scheme (e.g. definition of packets
distribution algorithm) are out the scope of this document." - I think that,
unless the prior paragraph is significantly reworked, it should not try and
suggest any mitigations.

ok

Orange decline toute responsabilite si ce message a ete altere, deforme ou
falsifie. Merci.

This message and its attachments may contain confidential or privileged
information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and
delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been
modified, changed or falsified.
Thank you.

---

From: Warren Kumari <[email-masked]>
Date: Wed, 16 Aug 2017 21:49:04 -0400

Thank you. This addresses my concerns.

W

On Tue, Aug 15, 2017 at 9:40 PM, Sri Gundavelli (sgundave)
<[email-masked]> wrote:
> Hi Warren,
>
> Slight rewrite of this paragraph without changing the original intent.
> Removed unnecessary text; identified the key issues.
>
> When the MAG has registered multipath binding with the LMA, there will be
> multiple established overlay tunnels between them. The MAG and the LMA can
> use any one, or more of the available tunnels paths for routing the mobile
> node’s IP traffic.  This specification does not recommend, or define any
> specific traffic distribution scheme, however it identifies two well-known
> approaches that implementations can potentially use. These approaches are,
> Per-flow and Per-packet Traffic distribution schemes.
>
> In this approach the MAG and the LMA associate each of the IP flows
> (upstream and downstream) to a specific tunnel path. The packets in a given
> IP flow are always routed on the same overlay tunnel path; they are never
> split and routed concurrently on more than one tunnel path.  It is possible
> a given flow may be moved from one tunnel path to another, but the flow is
> never split. The decision to bind a given IP flow to a specific tunnel path
> is based on traffic distribution policy. This traffic distribution policy is
> either statically configured on both the MAG and the LMA, or dynamically
> negotiated  over Proxy Mobile IPv6 signaling.   The Flow Binding extension
> [6089] defines the mechanism and the semantics for exchanging the traffic
> policy between two tunnel peers and the same mechanism and the mobility
> options are used here.
>
> In this approach, packets belonging a given IP flow will be split and routed
> across more than one tunnel paths. The exact approach for traffic
> distribution, or the distribution weights is outside the scope of this
> specification. In a very simplistic approach, assuming the established
> tunnel paths have symmetric characteristics, the packets can be equally
> distributed on all the available tunnel paths. In a different scenario when
> the links have different speeds, the chosen approach can be based on
> weighted distribution (Ex: n:m ratio). However, in any of these chosen
> approaches, implementations have to be sensitive to issues related to
> asymmetric link characteristics and the resulting issues such as
> re-ordering, buffering and the impact to the application performance. Care
> must be taken to ensure there is no negative impact to the application
> performance due to the use of this approach.
>
> —————————————————————-
>
> OD:
>