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

Greg Mirsky <gregimirsky@gmail.com> Tue, 25 June 2019 21:48 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 8ED3512012E; Tue, 25 Jun 2019 14:48:25 -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 iv46pZ6_vJLa; Tue, 25 Jun 2019 14:48:22 -0700 (PDT)
Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) (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 1EEE312001B; Tue, 25 Jun 2019 14:48:22 -0700 (PDT)
Received: by mail-lf1-x135.google.com with SMTP id p24so81764lfo.6; Tue, 25 Jun 2019 14:48:22 -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=lFIfdJfhvDBVgkTBDPnvNwMiaUv+BEvT0Rh29+EgerA=; b=JIKUi6z69jRLVpX2jeh88GG5auixHqTYnTUeomNDpd2Lsa8GEHMtO4K2bZveixDdM+ 1qWkESrQMRw++N0PLv3YT4Iu0M4YeIMAZzpPqmxyNVc1wJkO9O0m0QiMGYYOWSD19FNy DDuWq7PUo1V1Fe8L2cTDh6gJf3NYnS4+lgljAt0k0aUVY+FvRxoZnlK6e913LmNNgB8b 328Nk8U2NudqTE5n2zjiw4On9OkWI+E1TGleMz6BHSbN5z1gjMWLDhfvRCih1QQtYe0o ynq92QAQtN68V9ABFDhwkCZbY6sMf5i9GL1HQVlKuTYw6vaSQUe1hvQCjyPfYm4ZNz9P clag==
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=lFIfdJfhvDBVgkTBDPnvNwMiaUv+BEvT0Rh29+EgerA=; b=FglIAag6fqVQFc3d0Vy8vFGqD34yhiQ+/RPilVEbHoZeXgJkR87sfuag+GmZkQ48OZ zibq4BMxayaoEmRfQqGsVnFIz8kO5yWZ4FW/85iQaTEaIxi4Gw1CfE4btRAemRFg3lxZ KCte/1XbTtl5llU1Q+FL9eT4tzaQBth1ZkNzJJl2Rj81H5fhPag3l85PxHpW8zXzqvDn MsaW//+QJFNmz8N3YeauUSBrzBf4mkRxeMk8sP6ITrDHfOjHPJX0nBDftwaT0ImC6i9c nId+6ItRQkye/JxJ/QtTQ26ct23u5W4gJdBfiZIMwv0OvKalLmGU5cjZL9Ui+zTcgNc1 nJGw==
X-Gm-Message-State: APjAAAXZGtsNiiqpBTVOLGVg0L4Q9k/wnevgFqoXqUfwylJm54NPxesF jcNqQWucmtIrM+4FoV/dzV/HVmSvmyYdyT1v1SpZAjHusns=
X-Google-Smtp-Source: APXvYqzlhhOk4lVN74L+6rF2UoTN9y2h6h/UdR4cP0k/dWAF90/cTOd593MHfNuOtW1Zj5iIdgeIteu0amS7sQsutVU=
X-Received: by 2002:a05:6512:24a:: with SMTP id b10mr543293lfo.37.1561499300156; Tue, 25 Jun 2019 14:48:20 -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>
In-Reply-To: <BBA82579FD347748BEADC4C445EA0F21BEE631E6@NKGEML515-MBS.china.huawei.com>
From: Greg Mirsky <gregimirsky@gmail.com>
Date: Tue, 25 Jun 2019 14:48:07 -0700
Message-ID: <CA+RyBmXQWFSB9f5CVB+Bp5RNreuwh3VW=ykpcTZAk8JikOMF6Q@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="0000000000001a5bb4058c2ce3a1"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/tLBAl1fb5_d4cEgr52KFBOoy42Q>
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: Tue, 25 Jun 2019 21:48:26 -0000

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
>
>