Re: [Pce] Martin Vigoureux's No Objection on draft-ietf-pce-association-group-09: (with COMMENT)

Dhruv Dhody <dhruv.ietf@gmail.com> Wed, 10 July 2019 18:16 UTC

Return-Path: <dhruv.ietf@gmail.com>
X-Original-To: pce@ietfa.amsl.com
Delivered-To: pce@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BAAAC120613; Wed, 10 Jul 2019 11:16:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.703
X-Spam-Level:
X-Spam-Status: No, score=-0.703 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, PDS_NO_HELO_DNS=1.295, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no 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 SB25AihrriDl; Wed, 10 Jul 2019 11:16:35 -0700 (PDT)
Received: from mail-io1-xd2b.google.com (mail-io1-xd2b.google.com [IPv6:2607:f8b0:4864:20::d2b]) (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 C747C120605; Wed, 10 Jul 2019 11:16:35 -0700 (PDT)
Received: by mail-io1-xd2b.google.com with SMTP id k20so6734471ios.10; Wed, 10 Jul 2019 11:16:35 -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:content-transfer-encoding; bh=i6t0OhukfKEUlmLI6jVqro2HDvggC5KiYe4QCRXX/TA=; b=ODxZXQ1BCleaioq5UmWO7Al/52cRnn7rjiTXJ8k19OppI/0XT20gVFef/NI4hugCIQ EJL585ew6av6OZZc4hfZ+H8t12EPaTpKvD2sRnyNpezV/M/jICixhIOXNtQoptaSA8OZ iqT5vj7zAyxlyIP/aaqgzTlbthgiRZS8KmlSIS0kpWO0kXw+MYMYcxojZtwV7cq4Q+yx st3XeGXsvoN7eA9ujLVSeT3agyYs47NorPk9lm+6bHBEb504dxQ6c52cBED5eceo27MX 2xR+qIFY4W8ekCT500GwDk8+Cr8ErAtaQWAcWnqZ1GrI2JxdTx49LTJMRzOWvw75wNAe uqJw==
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:content-transfer-encoding; bh=i6t0OhukfKEUlmLI6jVqro2HDvggC5KiYe4QCRXX/TA=; b=r1gqdfmFCMb6egQAGqPgyqHL4R835jnTxmxETEgNekKIcAIbhUigESKTHTsjirLYF4 EM2AN3JESqX/K/wf4HltTqSVPRs9pQvY5pWlmEalmBrZcb+9E630Ya4MPMU6Jby0KMjv FFVUwdTERuMl6L+CIOxg3B5VtnDS9klSVCKQq8z2qvIDZsDNfkH/ia1cAWcRoT3D26Fx cBcVqXvBXEdroUhdSUVoCI70r5qhlOsarVEbWnlnztq6gU+eoO+ZLymQf2+k5A2FWcn2 qI2u2MWXTlTp0MEis7i/iGnUm9LXuRoG+czy7cnxnHdDgh8KKJg61ci45j52d41NhANn 6DJA==
X-Gm-Message-State: APjAAAV8KdiWeN+N5HOU6w2PiqJ27YBFfGoDwMZkyYh3HWDLW1g5CF1G TyuqZ7BAa8PDLXssXSOFRTS44pUJnWuL1pSRK7g=
X-Google-Smtp-Source: APXvYqxcRINXNL9a/LEDHqvZ3LKp8IboJfFgfaQT/Qh3w9IWeu5XkI8H1lVyZx1E8862hesEZENC66eORACrzi1PfJc=
X-Received: by 2002:a02:300b:: with SMTP id q11mr37474041jaq.54.1562782594898; Wed, 10 Jul 2019 11:16:34 -0700 (PDT)
MIME-Version: 1.0
References: <156270617956.15896.4447879410478869341.idtracker@ietfa.amsl.com> <23CE718903A838468A8B325B80962F9B8DB193D9@BLREML503-MBX.china.huawei.com> <cc45c91b-9c64-3651-10ab-ed05a67b7e0b@nokia.com>
In-Reply-To: <cc45c91b-9c64-3651-10ab-ed05a67b7e0b@nokia.com>
From: Dhruv Dhody <dhruv.ietf@gmail.com>
Date: Wed, 10 Jul 2019 23:45:58 +0530
Message-ID: <CAB75xn7D+ne9d=opbYbReaAmDa-y_QNSsajxrvdufWnhBGEmLQ@mail.gmail.com>
To: "Vigoureux, Martin (Nokia - FR/Paris-Saclay)" <martin.vigoureux@nokia.com>
Cc: Dhruv Dhody <dhruv.dhody@huawei.com>, The IESG <iesg@ietf.org>, "pce@ietf.org" <pce@ietf.org>, "pce-chairs@ietf.org" <pce-chairs@ietf.org>, "draft-ietf-pce-association-group@ietf.org" <draft-ietf-pce-association-group@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/gyelHmAFn58HuXkm9DamUGBlagk>
Subject: Re: [Pce] Martin Vigoureux's No Objection on draft-ietf-pce-association-group-09: (with COMMENT)
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Path Computation Element <pce.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pce>, <mailto:pce-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pce/>
List-Post: <mailto:pce@ietf.org>
List-Help: <mailto:pce-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pce>, <mailto:pce-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jul 2019 18:16:38 -0000

Hi Martin,

Thanks for further discussion, see in-line..

<snip>
> >
> >
> >> Sending ASSOC-Type-List TLV is optional but it might be mandatory to send
> >> some to-be-defined Association types. Isn't that somehow conflicting?
> >>
> > [[Dhruv Dhody]] The aim was to say that right now this TLV is optional, but a future association type (say disjoint) can specify that if you want to use *this particular association type* you need to include the TLV. So if an implementation does not support this particular association type, the TLV would be optional, and if it needs to support this, then the TLV becomes mandatory to include.
>
> I understand the aim, but I fail to understand how it doesn't lead to
> conflicting requirements.
> This doc says, the whole TLV is optional.
> A future doc might say: this assoc-type in this TLV is mandatory.
>
> By construction the future doc is thus saying that the TLV is mandatory,
> which conflicts with the base spec.
>
> Couldn't you lay out the path for the future by saying something like:
> * MUST be sent if it contains at least an assoc-type which must be sent
> and MAY NOT be sent otherwise.
>

[Dhruv]: I agree, I can update the text to say -

   Association type (to be defined in other documents) can specify if
   the association type advertisement is mandatory for it.  Thus, the
   ASSOC-Type-List TLV MUST be included if at least one mandatory
   association type needs to be advertised and the ASSOC-Type-List TLV
   MAY be included otherwise.

I used MAY, as MAY NOT is not RFC 2119 keyword.

>
> As a side question, sorry I didn't go back to the doc, but how should
> the systems behave in the case where there are two assoc types: one
> mandatory and the other not.
> MUST the system advertise both in the list or can it only advertise the
> mandatory one? And how will the receiver treat that latter case? I'm
> asking because I think you cover the case of not sending the whole TLV
> and then the receiver MUST interpret that as an absence of information
> on the list of supported Association types (rather than the Association
> type is not supported), but if it receives the TLV without the assoc
> type, should it still interpret it as an absence of info or as not
> supported?
>

We have this text in the I-D that covers these conditions -

   For an association type that specifies
   that the advertisement is mandatory, a missing Assoc-type in the
   ASSOC-Type-List TLV (or missing ASSOC-Type-List TLV) is to be
   interpreted as the association type is not supported by the PCEP
   speaker.

   The absence of the ASSOC-Type-List TLV in an OPEN object MUST be
   interpreted as an absence of information on the list of supported
   Association types (rather than the Association type is not
   supported).  In this case, the PCEP speaker could still use the
   ASSOCIATION object: if the peer does not support the association, it
   will react as per the procedure described in Section 6.4.

   In case the use of the ASSOC-Type-List TLV is triggered by support
   for a mandatory association type, then it is RECOMMENDED that the
   PCEP implementation include all supported Association types
   (including optional) to ease the operations of the PCEP peer.

<snip>
> >
> >> Could you clarify the difference between a PCEP speaker does not recognize
> >> the ASSOCIATION object and a PCE peer is ... unable to process the
> >> ASSOCIATION I see that the errors thrown are different.
> >>
> > [[Dhruv Dhody]] The difference is between ASSOCIATION Object being unknown (former) and Object being known *but* not supported/processed (latter).
>
> That doesn't really clarify. What is the difference between unknown and
> not supported?

Unknown - I parse the PCEP object header, and find an object-type, I
dont know what this object type means and it is unknown.
Not Supported - I parse the PCEP object header, and find an
object-type that i am aware of but for some reason do not support.
This could be because of feature being disabled via configuration for
instance.

Note that these errors are defined in PCEP since its inception in RFC 5440.

Last Commit: https://github.com/dhruvdhody-huawei/ietf/commit/a00b161661a334d800bab99dedbd2012e3951651

Please let me know if any further change is needed.

Thanks!
Dhruv

<snip>
> > Working Copy: https://raw.githubusercontent.com/dhruvdhody-huawei/ietf/master/draft-ietf-pce-association-group-10.txt
> > Diff: https://tools.ietf.org/rfcdiff?url1=draft-ietf-pce-association-group-09&url2=https://raw.githubusercontent.com/dhruvdhody-huawei/ietf/master/draft-ietf-pce-association-group-10.txt