Re: [mpls] MPLS-RT review of draft-vainshtein-mpls-gal-tc-ttl-handling-01

"Adrian Farrel" <adrian@olddog.co.uk> Sun, 28 June 2015 17:03 UTC

Return-Path: <adrian@olddog.co.uk>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C26D31AD084; Sun, 28 Jun 2015 10:03:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -99.9
X-Spam-Level:
X-Spam-Status: No, score=-99.9 tagged_above=-999 required=5 tests=[BAYES_50=0.8, RCVD_IN_DNSWL_LOW=-0.7, USER_IN_WHITELIST=-100] autolearn=ham
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 i_2rejnfv43D; Sun, 28 Jun 2015 10:03:02 -0700 (PDT)
Received: from asmtp1.iomartmail.com (asmtp1.iomartmail.com [62.128.201.248]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 775DC1AD082; Sun, 28 Jun 2015 10:03:02 -0700 (PDT)
Received: from asmtp1.iomartmail.com (localhost.localdomain [127.0.0.1]) by asmtp1.iomartmail.com (8.13.8/8.13.8) with ESMTP id t5SH2vZE026867; Sun, 28 Jun 2015 18:02:57 +0100
Received: from 950129200 (dsl-sp-81-140-15-32.in-addr.broadbandscope.com [81.140.15.32]) (authenticated bits=0) by asmtp1.iomartmail.com (8.13.8/8.13.8) with ESMTP id t5SH2ukO026861 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO); Sun, 28 Jun 2015 18:02:57 +0100
From: Adrian Farrel <adrian@olddog.co.uk>
To: "'Carlos Pignataro (cpignata)'" <cpignata@cisco.com>, draft-vainshtein-mpls-gal-tc-ttl-handling@tools.ietf.org, mpls-chairs@ietf.org
References: <817278D5-7352-49F4-A4AE-A0358A91288E@cisco.com>
In-Reply-To: <817278D5-7352-49F4-A4AE-A0358A91288E@cisco.com>
Date: Sun, 28 Jun 2015 18:02:56 +0100
Message-ID: <066801d0b1c4$4846f2e0$d8d4d8a0$@olddog.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQEkYbtGUl6JmEuSQptRoAdEy0VgS58av2OQ
Content-Language: en-gb
X-TM-AS-MML: disable
X-TM-AS-Product-Ver: IMSS-7.1.0.1576-8.0.0.1202-21642.001
X-TM-AS-Result: No--22.737-10.0-31-10
X-imss-scan-details: No--22.737-10.0-31-10
X-TMASE-MatchedRID: dL10VBB8yoeQ4R94VvPFueYAh37ZsBDCC/ExpXrHizwifM7JMNHW6xhT 64BpQrGSMuqScfrwjaxVy6ITvoVi9P7DxwqamyS0w6uJdj5Ux9A+PfrpHi2PdVc/CedjlcvkeM1 47MryH358XFBNR5HIUUBg1O01vY3rlKHFFpLwOfW3UCG/IQp2PoF0vG17WTR5zAdJD7JeNMNvt3 LcV982TchzLdws/AJpOMEMEHlKa7l2Tfe2Aes63R3EEAbn+GRbQrO4XR6BRQPceXQ6q2ggSmUhE VGuBf5xaPfSiETAhzg0FJKIRy8cWpGvWjvTU161SDkh6bW+bcezSPa58jvhVnzlhuYw8JsTiirS OkBVAQUNgVgOes3NEegB81tY7yEilh5qb5HiiQdIRA38P/dwblAI6wCVrE3vzaa9uKDkuMYxBhY 3mcMkVOCmWEBUnB8lYcaFLHRd4hV9SMkZ9lm4W2Oho7buv7d9a/fioJ9l4Hiyd65qZFFPkzcxxo ixzcVn4EXw14zmtrJRl7fiRhiwqMQ1f2LZv5T5f01qcJQDhV7LBdK2mpaYlim0Y+u6E3Op/bfED lsxmkLnzlXMYw4XMAGLeSok4rrZC24oEZ6SpSk+Mqg+CyrtwA==
Archived-At: <http://mailarchive.ietf.org/arch/msg/mpls/97SP0t47aU-IHQnOcL2urdwQ_tQ>
Cc: mpls@ietf.org
Subject: Re: [mpls] MPLS-RT review of draft-vainshtein-mpls-gal-tc-ttl-handling-01
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: adrian@olddog.co.uk
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Jun 2015 17:03:04 -0000

Hi Carlos

Thanks for the time and effort.

> I’ve been selected as MPLS-RT reviewer for draft-vainshtein-mpls-gal-tc-
> ttl-handling-01. Please find my review below.
>
> I believe this is a useful, coherent, and technically sound document. 
> However, it does have issues that require attention and consideration.

I'll start discussing these issues here, but hopefully these are not points (given your summary) that need delay adoption.

> Technical Issues:
>
> 3.1.  New Procedures for Handling the TC Field in an LSE That Contains
>      the GAL
>
>  Setting the value of the TC field in an LSE that contains the GAL is
>  done by the LER that originates the G-ACh packet and is a matter of
>  local policy for that LER.  It is RECOMMENDED that implementations
>  set the TC field of an LSE that contains the GAL to all zero (0b000).
>
> CMP: If it is a local policy, why the RECOMMENDED language? Why not state a
> default policy, such that lacking any other it is set to 0, but RECOMMENDED 
> sounds too strong. In fact, it has no interop considerations, does it?

2119 "RECOMMENDED" is the equivalent of "SHOULD". That means that implementations "MAY" vary the behavior. In this case, the variance is local policy. I think that "RECOMMENDED" means exactly what you suggest, viz. "If you don't have a good reason to do otherwise, your default behavior is (should be) to set to zero."

I'm happy to be guided by WG opinion on this. 

I suppose a return question to you is "What damage will it do to make this recommendation"?

> CMP: A nit, is 0b000 the same as 000b? Not sure the notation.

I looked at...
    https://en.wikipedia.org/wiki/Binary_number#Representation
and found a number of options including:
      0b100101 (a prefix indicating binary format, common in programming languages)

>  The LER that inspects an LSE that contains the GAL MUST ignore the
>  value of the TC field.
>
> CMP: Similarly, this document concerns itself with maximizing interoperability.
> Why this strongest “MUST”? Setting ourselves up for updating this when there
> is a use?

I think there is a common misunderstanding of "MUST" in this sort of case.
Consider that when a specific meaning is assigned to the TC in the GAL LSE, this will be done in a new document that will update this document.
It will be really, really important that when new meanings of this TC are defined, they pass safely through legacy nodes.
It's also pretty important that this TC field is not used as a covert channel by implementations that might fail to interoperate correctly.

So, there is an alternative to "MUST ignore on receipt" and that is "MUST set to zero on transmission".
I'd be happy to go either way.

> 3.2.  New Procedures for Handling the TTL Field in an LSE Containing GAL
>
> CMP: I agree with this comment:
> http://www.ietf.org/mail-archive/web/mpls/current/msg14300.html

I'll respond to George in his thread.

> Nits:
>
> Handling the TC and TTL fields in a Label Stack Entry when the Generic
>                  Associated Channel Label is Present
>
> CMP: When I read this, I was not sure if the GAL was present in any LSE. 
> This is likely just me, but it would be best to disambiguate potential
>  misreads (like mine) with "Label Stack Entry (LSE) containing the GAL”
> (i.e., otherwise present where?)

Yup.

> I hope these are useful — thanks!

Thanks again.

Adrian