Re: [ippm] Warren Kumari's Discuss on draft-ietf-ippm-route-09: (with DISCUSS and COMMENT)

"MORTON, ALFRED C (AL)" <acm@research.att.com> Tue, 11 August 2020 19:33 UTC

Return-Path: <acm@research.att.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 800753A0EF8; Tue, 11 Aug 2020 12:33:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-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 pn75nHgwCY4r; Tue, 11 Aug 2020 12:33:57 -0700 (PDT)
Received: from mx0a-00191d01.pphosted.com (mx0a-00191d01.pphosted.com [67.231.149.140]) (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 6A6423A0C68; Tue, 11 Aug 2020 12:33:45 -0700 (PDT)
Received: from pps.filterd (m0049295.ppops.net [127.0.0.1]) by m0049295.ppops.net-00191d01. (8.16.0.42/8.16.0.42) with SMTP id 07BJW8ci016059; Tue, 11 Aug 2020 15:33:44 -0400
Received: from tlpd255.enaf.dadc.sbc.com (sbcsmtp3.sbc.com [144.160.112.28]) by m0049295.ppops.net-00191d01. with ESMTP id 32uyp8ahe2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 11 Aug 2020 15:33:44 -0400
Received: from enaf.dadc.sbc.com (localhost [127.0.0.1]) by tlpd255.enaf.dadc.sbc.com (8.14.5/8.14.5) with ESMTP id 07BJXhvi090139; Tue, 11 Aug 2020 14:33:43 -0500
Received: from zlp30494.vci.att.com (zlp30494.vci.att.com [135.46.181.159]) by tlpd255.enaf.dadc.sbc.com (8.14.5/8.14.5) with ESMTP id 07BJXb8J090013 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 11 Aug 2020 14:33:38 -0500
Received: from zlp30494.vci.att.com (zlp30494.vci.att.com [127.0.0.1]) by zlp30494.vci.att.com (Service) with ESMTP id 868174005C19; Tue, 11 Aug 2020 19:33:37 +0000 (GMT)
Received: from tlpd252.dadc.sbc.com (unknown [135.31.184.157]) by zlp30494.vci.att.com (Service) with ESMTP id 60FDE4000688; Tue, 11 Aug 2020 19:33:37 +0000 (GMT)
Received: from dadc.sbc.com (localhost [127.0.0.1]) by tlpd252.dadc.sbc.com (8.14.5/8.14.5) with ESMTP id 07BJXbrp110039; Tue, 11 Aug 2020 14:33:37 -0500
Received: from mail-blue.research.att.com (mail-blue.research.att.com [135.207.178.11]) by tlpd252.dadc.sbc.com (8.14.5/8.14.5) with ESMTP id 07BJXWFt109785; Tue, 11 Aug 2020 14:33:33 -0500
Received: from exchange.research.att.com (njmtcas1.research.att.com [135.207.255.86]) by mail-blue.research.att.com (Postfix) with ESMTP id 3CDF510BF648; Tue, 11 Aug 2020 15:33:32 -0400 (EDT)
Received: from njmtexg5.research.att.com ([fe80::b09c:ff13:4487:78b6]) by njmtcas1.research.att.com ([fe80::e881:676b:51b6:905d%12]) with mapi id 14.03.0487.000; Tue, 11 Aug 2020 15:33:32 -0400
From: "MORTON, ALFRED C (AL)" <acm@research.att.com>
To: Warren Kumari <warren@kumari.net>, The IESG <iesg@ietf.org>
CC: "draft-ietf-ippm-route@ietf.org" <draft-ietf-ippm-route@ietf.org>, "ippm-chairs@ietf.org" <ippm-chairs@ietf.org>, "ippm@ietf.org" <ippm@ietf.org>, Brian Trammell <ietf@trammell.ch>
Thread-Topic: Warren Kumari's Discuss on draft-ietf-ippm-route-09: (with DISCUSS and COMMENT)
Thread-Index: AQHWb/nylG4dZ4FghUW8x//no9Fzr6kzJN6g
Date: Tue, 11 Aug 2020 19:33:31 +0000
Message-ID: <4D7F4AD313D3FC43A053B309F97543CF0140BC81E5@njmtexg5.research.att.com>
References: <159716220490.11364.10199817918839428687@ietfa.amsl.com>
In-Reply-To: <159716220490.11364.10199817918839428687@ietfa.amsl.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [135.75.114.13]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-08-11_15:2020-08-11, 2020-08-11 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_policy_notspam policy=outbound_policy score=0 spamscore=0 mlxscore=0 lowpriorityscore=0 clxscore=1015 suspectscore=0 malwarescore=0 impostorscore=0 phishscore=0 adultscore=0 bulkscore=0 mlxlogscore=999 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2008110136
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/ruWSK3P2ZTXbm5VqGOK1NozOtfo>
Subject: Re: [ippm] Warren Kumari's Discuss on draft-ietf-ippm-route-09: (with DISCUSS and COMMENT)
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, 11 Aug 2020 19:34:07 -0000

Hi Warren,

Thanks for your review! I see a trend that reviews are mentioning a few similar areas.

replies and proposed resolutions follow,
Al

> -----Original Message-----
> From: Warren Kumari via Datatracker [mailto:noreply@ietf.org]
> Sent: Tuesday, August 11, 2020 12:10 PM
> To: The IESG <iesg@ietf.org>
> Cc: draft-ietf-ippm-route@ietf.org; ippm-chairs@ietf.org; ippm@ietf.org;
> Brian Trammell <ietf@trammell.ch>; ietf@trammell.ch
> Subject: Warren Kumari's Discuss on draft-ietf-ippm-route-09: (with
> DISCUSS and COMMENT)
> 
> Warren Kumari has entered the following ballot position for
> draft-ietf-ippm-route-09: Discuss
> 
...
> 
> ----------------------------------------------------------------------
> DISCUSS:
> ----------------------------------------------------------------------
> 
> I have 2 DISCUSS points. I think that both should be easy to address...
> 
> 1: "While most of the routers perform load balancing on flows using Equal Cost
> Multiple Path (ECMP), a few still divide the workload through packet-based
> techniques.  The former scenario is defined according to [RFC2991], while the
> latter generates a round-robin scheme to deliver every new outgoing packet.
> ECMP uses a hashing function to ensure that every packet of a flow is delivered
> by the same path, and this avoids increasing the packet delay variation and
> possibly producing overwhelming packet reordering in TCP flows."
> 
> Round-robin / "per packet" is a form ECMP, and RFC2991 doesn't "define" just
> the former, it explains both, and recommends the flow based /  hashed approach.
> RFC 2991 describes a number of approaches (e.g Modulo-N Hash, Hash- Threshold,
> Highest Random Weight (HRW)) and makes some good suggestions, but the text as
> written isn't correct.
[acm] 
Yes, I agree with your points, so I re-wrote the whole paragraph and separated into two paragraphs for clarity...

NEW
Internet routing is complex because it depends on the policies of thousands of Autonomous Systems (AS). Most routers perform load balancing on flows using a form of Equal Cost Multiple Path (ECMP). [RFC 2991] describes a number of flow-based or hashed approaches (e.g., Modulo-N Hash, Hash-Threshold, Highest Random Weight (HRW)), and makes some good suggestions. Flow-based ECMP avoids increased the packet delay variation and possibly overwhelming packet reordering in TCP flows

A few routers still divide the workload through packet-based techniques, such as a round-robin scheme to distribute every new outgoing packet to multiple links, as explained in [RFC 2991]. The methods described in this section assume flow-based ECMP.


> 
> 2: "In IPv6, it is sufficient to be routed identically if the IP source and
> destination addresses and the FlowLabel are constant, see [RFC6437]." Many
> routers currently ignore the FlowLabel and use other header info, like
> port-numbers. The sentence might(?) be true in an idealized network, but in the
> real world isn't. Some additional text should solve this...
[acm] 
We have seen some comments on this sentence, let me add your point to the others:

NEW
When considering IPv6 headers, it is necessary to ensure that the IP source and destination addresses and the FlowLabel are constant (but noting that many routers ignore the FlowLabel field at this time), see [RFC6437].

> 
> 
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
> 
> Questions / Comments:
> 1: "Although primarily intended for hosts communicating on the Internet
>    with IP, the definitions and metrics are constructed to be applicable
>    to other network domains, if desired."
> This above says "with IP", but then the rest implies it works with other things
> too - I suggest dropping the "with IP" part, unless this does work with other
> protocols?
[acm] 
dropping "with IP" here. Clarity and no damage, AFAICT.

> 
> 2: "  Also, to specify a framework for active methods of measurement which
>    use the techniques described in [PT] at a minimum, and a framework
>    for hybrid active-passive methods of measurement, such as the Hybrid
>    Type I method [RFC7799] described in
>    [I-D.ietf-ippm-ioam-data](intended only for single administrative
>    domains), which do not rely on ICMP and provide a protocol for
>    explicit interrogation of nodes on a path."
> This is a really long / hard to read sentence - can you split it into multiple?
> I had to read it multiple time and am still having a hard time with the nested
> clauses. Perhaps: "This also specifies a framework for active methods of
> measurement which uses the techniques described in [PT], as well as a framework
> for hybrid active-passive methods of measurement(such as the Hybrid Type I
> method [RFC7799])."
[acm] 
Yes, tightening this long sentence with two more clear thoughts, as 

NEW
This memo also specifies a framework for active methods of measurement which uses the techniques described in [PT], as well as a framework for hybrid active-passive methods of measurement such as the Hybrid Type I method [RFC7799] described in [I-D.ietf-ippm-ioam-data]. Methods using [I-D.ietf-ippm-ioam-data] are intended only for single administrative domains that provide a protocol for explicit interrogation of nodes on a path.

> 
> 3: " Node Identity  The unique address for Nodes communicating within the
>       network domain.  For Nodes communicating on the Internet with IP,
>       it is the globally routable IP address(es) which the Node uses
>       when communicating with other Nodes under normal or error
>       conditions. "
> I'm not sure I understand -- this says the "unique address" and also "IP
> address(es)" - it cannot be both singular/unique and multiple. This definition
> needs clarification or a pointer to later in the document.
[acm] 
You're right, we expanded possibilities at the wrong place without any warning.

NEW
The unique address for Nodes communicating within the network domain. For Nodes communicating on the Internet with IP, it is the globally routable IP address which the Node uses when communicating with other Nodes under normal or error conditions.

> 
> 4: "Cooperating Node  Nodes that MUST respond to direct queries for their
>       Node identity as part of a previously agreed and established
>       interrogation protocol. "
> I don't think that the "MUST" works here -- I think s/MUST/do/ (or s/MUST//).
[acm] 
Ok, MUST deleted.


> 
> 5: "   Hop  A Hop MUST contain a Node Identity, and MAY contain arrival and/
>       or departure interface identification, round trip delay, and an
>       arrival timestamp." - this definition also doesn't really seem to define
>       something, and I think needs to be rewritten or dropped.
[acm] 
Yes, we were a bit too short with this, after the Hop-to-Node terminology conversion:

NEW
Hop Specification	A Hop specification MUST contain a Node Identity, and MAY contain arrival and/or departure interface identification, round trip delay, and an arrival timestamp.

> 
> 6: "Routing Class  A route that treats equally a class C of different types of
> packets (unrelated to address classes of the past)". 

> I think that it is really
> unfortunate that the term "class C" was chosen for this - I understand that
> there is a clarification, and don't really expect you to change it, but it
> needlessly makes the document harder to read for people who naturally associate
> Class A, B, C, D with classful addresses. I recognize that this terminology
> comes from RFC2330, but it is till confusing. An additional clarification that
> this term is being used because of history would probably help.
[acm] 
OK, added 
The designator "class C" is used for historical reasons, see [RFC2330].

> 
> 7: "Next define a *singleton* definition for a Hop on the path, with sufficient
> indexes to identify all Hops identified in a measurement interval." I'm not
> sure that "singleton" is a well understood term outside of software
> engineering, and that you need to better explain it (esp because you have felt
> it important enough to emphasize). Perhaps "data structure to uniquely identify
> a hop" or similar?
[acm] 
More IPPM Framework at work here. A singleton can be thought of as a single measurement.

Added:
... (where *singleton* is part of the IPPM Framework [RFC2330]). 

> 
> 8: "   o  If a pair of discovered Nodes identify two different addresses, 
>       then they will appear to be different Nodes.
> 
>    o  If a pair of discovered Nodes identify two different IP addresses,
>       and the IP addresses resolve to the same Node name (in the DNS),
>       then they will appear to be the same Nodes."
> Please either include "IP" in both or neither of the above, otherwise it sounds
> like it is a differentiating factor.
[acm] 
The IP address + DNS resolution case is the differentiating case. I'll try to clarify:
NEW
o   If a pair of discovered Nodes identify two different addresses (IP or not), then they will appear to be different Nodes. See item below.


> 
> 9: " UDP and TCP are used when a particular characteristic needs to
>    be verified, such as filtering or traffic shaping on specific ports
>    (i.e., services). "
> TCP traceroute is also used when ICMP responses are not received - while
> "such as filtering" *could* cover this, it would require squinting...
[acm] 
Save your vision!  I added:
NEW
UDP and TCP traceroute are also used when ICMP responses are not received.

> 
> 10: "Furthermore, either Paris-traceroute or
>    Scamper is capable of unveiling the many available paths between a
>    source and destination (which are visible to this method)."
> Visible to *which* method? The one described in this doc? The methods
> implemented in Paris-traceroute/Scamper?
[acm] 
Yes, and other active methods. 
NEW
... (which are visible to active methods).


> 
> Nits:
> 
> 1: "1.1.  Issues with Earlier Work to define Route"
> It seems that this is missing a word after "Route" - perhaps metric? Also, I
> understand the Title Case, but please either drop it, or uppercase D in
> define.
[acm] 
ok
NEW
Issues with Earlier Work to Define Route Metric
> 
> 2: "Paris-traceroute allows its users to measure RTD in every hop of the
>    path for a particular flow." s/measure RTD/measure the RTD/
[acm] 
ok
NEW
Paris-traceroute allows its users to measure the RTD to every Node of the path for a particular flow.

> 
> 3: You seem to be using multiple ways of adding emphasis (*something*, -- from
> the Observation Point --, etc). This is confusing / doesn't follow
> existing style.
[acm] 
I'm never quite sure what a particular RFC Editor Individual will accept or change. Let's find out.

I executed 1,$ s/ --/ */g   in any case.

> 
> 
[acm] Thanks Warren!
[acm]