Re: [ippm] On progressing draft-mirsky-ippm-stamp-option-tlv

Greg Mirsky <gregimirsky@gmail.com> Wed, 26 June 2019 21:42 UTC

Return-Path: <gregimirsky@gmail.com>
X-Original-To: ippm@ietfa.amsl.com
Delivered-To: ippm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 691EE1202A5; Wed, 26 Jun 2019 14:42:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, 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=gmail.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 XHNbZlSio_Y6; Wed, 26 Jun 2019 14:42:31 -0700 (PDT)
Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [IPv6:2a00:1450:4864:20::130]) (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 8A1E51200FF; Wed, 26 Jun 2019 14:42:30 -0700 (PDT)
Received: by mail-lf1-x130.google.com with SMTP id y198so144014lfa.1; Wed, 26 Jun 2019 14:42:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=yCKgPf00vXnuP+LrAsik8gNXluJcT5aBYwwYuwJ/hh4=; b=adJ8kb13XEUz30NQggRpK4zCZiXOKOoI9NHye0cKw99nlZ1daSmCv8uiGfBQjomtpN D9oHC6IDAfSFmDaAIVJt5t8xywP+TvUKxfP/ypEuyVU5udGcdsQPsZvfyNahZoFibpAl oAKZc42sfhOuxdcn0JMoPblkjHSfpjmvagVPXmfDKyMElaV8AWOoNhkCpyOX9XylRjCr Ft2c+Tg2csZ8EBEMheEiHA1gL+K+MtaxrrNrkTxKH2W+dP8hscQdy1rc4sWQSxxt67mP C8ngdMOFpVkLQn16EssSH4BoTvuA9oLaMK1meXD4ktlh7c66f3u/L6eHrtex0XxHj3Ui 8lYg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=yCKgPf00vXnuP+LrAsik8gNXluJcT5aBYwwYuwJ/hh4=; b=ooC2VkOT1GtxO5QDCRcGTHF4GOde6Selmhph2fmkYSbew25s1IsQIJdaS1rrbzkpKE XFEldV7uRRKSMYRnitTuXk3v68YQ0/LGOpAjB5rzoa8gAaNREMoJ6g/VOlrC3cS9+uWf Cy3+9X32rk4t0Wa/z4w8Exqj5uVBOv1vRRWTNOuPTmjhlgonUVhENbnqHN7PslmaOe2n 5WrBrj9c2MEzKk5PduGqys9VV3Tnu1BUcpAs0f6uCkMU3+HhDRQa+bemBiT588j1DBMI CcEo/8HNlD0e00pLq1ssmP/WMiOwoQu5xyN3x4EMWWssi1kl8UhefHbmvOaHhuMeAcU8 b6IA==
X-Gm-Message-State: APjAAAUJnnBr8DUCpSi/WxJFKht6xPcnTuc93h0kwOhJJNK5nORb6AtL Sk4kEp7mnM2IxYLrMvsnFHIJT/mklNlB6izUp0c=
X-Google-Smtp-Source: APXvYqzfejEsmOvArgB/2Hio+j1OfUOCF8gRTfYVVEUItwELwzDvwFge+1AOZnAdJ4z4v+K6W9+XBDlxR2XuMMupAFI=
X-Received: by 2002:ac2:4c0b:: with SMTP id t11mr170732lfq.72.1561585348292; Wed, 26 Jun 2019 14:42:28 -0700 (PDT)
MIME-Version: 1.0
References: <CA+RyBmXtiEQRhJxT5V=MrTZW_kH7nsS=M2t3QfW+WS3J8=8zag@mail.gmail.com> <BBA82579FD347748BEADC4C445EA0F21BEE61343@NKGEML515-MBS.china.huawei.com> <CA+RyBmXBT3+C61tEZwym0DUbSzhcZfrTo+MVrgj2vT=BOAywyw@mail.gmail.com> <BBA82579FD347748BEADC4C445EA0F21BEE631E6@NKGEML515-MBS.china.huawei.com> <CA+RyBmXQWFSB9f5CVB+Bp5RNreuwh3VW=ykpcTZAk8JikOMF6Q@mail.gmail.com> <BBA82579FD347748BEADC4C445EA0F21BEE63B2E@NKGEML515-MBS.china.huawei.com>
In-Reply-To: <BBA82579FD347748BEADC4C445EA0F21BEE63B2E@NKGEML515-MBS.china.huawei.com>
From: Greg Mirsky <gregimirsky@gmail.com>
Date: Wed, 26 Jun 2019 14:42:16 -0700
Message-ID: <CA+RyBmVBKokYyehC43UsKOp3Cf5C+iuz9sS0OX84A9yYFmPtWQ@mail.gmail.com>
To: Tianran Zhou <zhoutianran@huawei.com>
Cc: IETF IPPM WG <ippm@ietf.org>, "draft-mirsky-ippm-stamp-option-tlv@ietf.org" <draft-mirsky-ippm-stamp-option-tlv@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000f8b4f4058c40ebf3"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/VxlskGIW6MwZdvs9Pq-he4kqzTg>
Subject: Re: [ippm] On progressing draft-mirsky-ippm-stamp-option-tlv
X-BeenThere: ippm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF IP Performance Metrics Working Group <ippm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ippm>, <mailto:ippm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ippm/>
List-Post: <mailto:ippm@ietf.org>
List-Help: <mailto:ippm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ippm>, <mailto:ippm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Jun 2019 21:42:35 -0000

Hi Tianran,
thank you for the great discussion. Please find my responses in-line tagged
GIM3>>.

Regards,
Greg

On Tue, Jun 25, 2019 at 9:23 PM Tianran Zhou <zhoutianran@huawei.com> wrote:

> Hi Greg,
>
>
>
> Thank you very much for your clarification and taking my suggestions. Look
> forward to your revision.
>
> Let’s work on this text:
>
> NEW TEXT:
>
>    A STAMP Session-Sender that includes the Class of Service TLV sets
>    the value of the DSCP1 field and zeroes the value of the DSCP2 field.
>    A STAMP Session-Reflector that received the test packet with the
>    Class of Service TLV MUST include the Class of Service TLV in the
>    reflected test packet.  Also, the Session-Sender MUST copy the value
>    of the DSCP field of the IP header of the received STAMP test packet
>    and copy it into the DSCP2 field of the reflected test packet.  And,
>    at last, the Session-Reflector MUST set the value of the DSCP field
>    in the IP header of the reflected test packet equal to the value of
>    the DSCP1 field of the test packet it received.
>
>
>
> 1. “Also, the Session-Sender MUST copy the value of the DSCP field of the
> IP header of the received STAMP test packet and copy it into the DSCP2
> field of the reflected test packet.”
>
>
>
> Please make sure it’s session-reflector not session-sender. Correct?
>
GIM3>> Great catch, thank you!

>
>
> 2. My understanding dscp1 is used for the session-sender to notify the
> session-reflector to use the dscp1 for the reflect message transport. If
> so, why not just use the configuration(i.e., YANG)?
>
GIM3>> CoS re-mapping testing, in our view, does not require the use of
many test packets in the session. In fact, to test CoS may require changing
the DSCP value in the IP header and of DSCP1 in CoS TLV for each test
packet transmitted by the Session-Sender.

> Dscp2 is used for the session-reflector to notify the session-sender the
> receive packet dscp value. Why the sender need to know this, as the sender
> should have known this? To check if the path changed the DSCP?
>
GIM3>> You're right, DSCP2 returns the value of the DSCP field as received
by the Session-Reflector. Re-mapping of CoS in some use cases, for example
in mobile backhaul networks, is used technique to provide multiple
services, i.e. 2G, 3G, LTE, over the same network. But if it is
misconfigured, then it often difficult to diagnose the root cause of the
problem that is viewed as an excessive packet drop of higher level service
while packet drop for lower service packets is at a normal level.

>
>
> Thanks,
>
> Tianran
>
>
>
> *From:* Greg Mirsky [mailto:gregimirsky@gmail.com]
> *Sent:* Wednesday, June 26, 2019 5:48 AM
> *To:* Tianran Zhou <zhoutianran@huawei.com>
> *Cc:* IETF IPPM WG <ippm@ietf.org>;
> draft-mirsky-ippm-stamp-option-tlv@ietf.org
> *Subject:* Re: [ippm] On progressing draft-mirsky-ippm-stamp-option-tlv
>
>
>
> Hi Tianran,
>
> many thanks for further clarifications. Please find my answers below
> in-lined tagged GIM2>>.
>
>
>
> Regards,
>
> Greg
>
>
>
> On Mon, Jun 24, 2019 at 8:19 PM Tianran Zhou <zhoutianran@huawei.com>
> wrote:
>
> Hi Greg,
>
>
>
> Thanks for your reply. Please see inline.
>
>
>
> Tianran
>
>
>
> *From:* Greg Mirsky [mailto:gregimirsky@gmail.com]
> *Sent:* Monday, June 24, 2019 11:45 PM
> *To:* Tianran Zhou <zhoutianran@huawei.com>
> *Cc:* IETF IPPM WG <ippm@ietf.org>;
> draft-mirsky-ippm-stamp-option-tlv@ietf.org
> *Subject:* Re: [ippm] On progressing draft-mirsky-ippm-stamp-option-tlv
>
>
>
> Hi Tianran,
>
> thank you for your interest in the proposal on the optional extensions of
> STAMP. Please find my answers in-line below tagged GIM>>.
>
>
>
> Regards,
>
> Greg
>
>
>
> On Mon, Jun 24, 2019 at 1:59 AM Tianran Zhou <zhoutianran@huawei.com>
> wrote:
>
> Hi Greg,
>
>
>
> Several clarification questions after reading this draft.
>
>
>
> 1. Maybe wrt to section 4. Could you please explicitly describe the
> mechanism to detect the existence of TLVs, in addition to the fixed message
> part?
>
> GIM>> Since the length of the base STAMP packet, and the mode,
> unauthenticated or authenticated, are known, the receiver of a STAMP packet
> can determine if there are any TLV by comparing the length of the base
> STAMP packet with the value of the Total length field of IP header.
>
>
>
> [ztr]. OK. So,STAMP is IP based protocol? Or it’s udp based, so need to
> use the length in UDP header?
>
> Anyway, it’s better to describe this information because from figure 1,
> people cannot deduce it.
>
> GIM>> Yes, you're correct, thank you. STAMP uses UDP and thus the length
> of both IP and UDP headers must be included in the calculation. Hope the
> new text clarifies the process:
>
> NEW TEXT:
>
>    A STAMP node, whether Session-Sender or Session-Reflector, receiving
>    a test packet MUST determine whether the packet is a base STAMP
>    packet or includes one or more TLVs.  The node MUST compare the value
>    in the Total Length field of the IP header and the length of the base
>    STAMP test packet in the mode, unauthenticated or authenticated based
>    on the configuration of the particular STAMP test session.  If the
>    difference between the two values is larger than the length of IP and
>    UDP headers, then the test packet includes one or more STAMP TLVs
>
>    that immediately follow the base STAMP test packet.
>
>
>
> 2. Could you please describe the use case for each TLV you proposed?
> Especially the “Location TLV” and the “Class of Service TLV”. I can
> hardly understand why these two are useful, and how to use them to do
> measurement/collection.
>
> GIM>> We'll expand the informational text for TLVs. For the Location TLV,
> the use is described in the draft as follows:
>
>
>    The Location TLV MAY be used to determine the last-hop addressing for
>    STAMP packets including source and destination IP addresses as well
>    as the MAC address of the last-hop router.  Last-hop MAC address MAY
>    be monitored by the Session-Sender whether there has been a path
>    switch on the last hop, closest to the Session-Reflector.  The IP
>    addresses and UDP port will indicate if there is a NAT router on the
>    path, and allows the Session-Sender to identify the IP address of the
>    Session-Reflector behind the NAT, detect changes in the NAT mapping
>    that could cause sending the STAMP packets to the wrong Session-
>    Reflector.
>
>
>
> [ztr]: 1. My understanding on this paragraph is the location tlv actually
> includes two separate functions. One is to collect the last-hop MAC. The
> other is to collect the IP and port.
>
> It seems they have very different use. Then why not split it into two
> TLVs? I cannot see the use case of the combination of the two parts.
>
> GIM>> I agree that there could be practical reasons to have two TLVs. I
> hope other experts in the IPPM WG will share their opinions.
>
> 2. It’s still not clear to me why we need to know “whether there has been
> a path switch on the last hop”. How to know this based on the source MAC?
> Who’s source MAC? I cannot guess on the too simple description.
>
> GIM>> Will add a use case into the future version.
>
> 3. ipv4 and ipv6 address have different length. How do I know it’s an
> ipv4 or ipv6 address?
>
> GIM>> The value of the Length field may be used as the indicator of which
> address family being used.
>
> 4. I want to see more text on how to use IP+port to detect the NAT
> mapping. What’s the issue?
>
> GIM>> Same as for the use of MAC. Will add a use case into the future
> version.
>
>
>
>
>
> The use case of the Class of Service TLV is the same as of RFC 7750
> <https://datatracker.ietf.org/doc/rfc7750/> and
> draft-bailmir-ippm-twamp-dscp-ctrl-mon
> <https://www.ietf.org/archive/id/draft-bailmir-ippm-twamp-dscp-ctrl-mon-02.txt>
> .
>
>
>
> [ztr]: Specifically, who generate the dscp1,dscp2 and ecn? based on what?
>
> GIM2>> The explanation of the Class of Service TLV suggests that:
>
>     o  DSCP1 - The Differentiated Services Code Point (DSCP) intended by
>
>       the Session-Sender.  To be used as the return DSCP from the
>       Session-Reflector.
>
>    o  DSCP2 - The received value in the DSCP field at the Session-
>       Reflector in the forward direction.
>
> A new text to be added in the next update:
>
> NEW TEXT:
>
>    A STAMP Session-Sender that includes the Class of Service TLV sets
>    the value of the DSCP1 field and zeroes the value of the DSCP2 field.
>    A STAMP Session-Reflector that received the test packet with the
>    Class of Service TLV MUST include the Class of Service TLV in the
>    reflected test packet.  Also, the Session-Sender MUST copy the value
>    of the DSCP field of the IP header of the received STAMP test packet
>    and copy it into the DSCP2 field of the reflected test packet.  And,
>    at last, the Session-Reflector MUST set the value of the DSCP field
>    in the IP header of the reflected test packet equal to the value of
>    the DSCP1 field of the test packet it received.
>
>
>
> Does it make the intent and handling of the Class of Service TLV clearer?
>
>
>
> Thanks,
>
> Tianran
>
>
>
> *From:* ippm [mailto:ippm-bounces@ietf.org] *On Behalf Of *Greg Mirsky
> *Sent:* Thursday, June 20, 2019 3:06 PM
> *To:* IPPM Chairs <ippm-chairs@ietf.org>; IETF IPPM WG <ippm@ietf.org>
> *Cc:* draft-mirsky-ippm-stamp-option-tlv@ietf.org
> *Subject:* [ippm] On progressing draft-mirsky-ippm-stamp-option-tlv
>
>
>
> Dear Chairs, et al.,
>
> authors of draft-mirsky-ippm-stamp-option-tlv believe that it is stable
> and detailed enough to ask for your consideration to start the WG Adoption
> Poll.
>
>
>
> Regards,
>
> Greg
>
>