Re: [Pce] Spencer Dawkins' Discuss on draft-ietf-pce-pce-initiated-lsp-10: (with DISCUSS and COMMENT)

Jonathan Hardwick <Jonathan.Hardwick@metaswitch.com> Wed, 04 October 2017 15:48 UTC

Return-Path: <Jonathan.Hardwick@metaswitch.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 49D5C13430A; Wed, 4 Oct 2017 08:48:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level:
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=metaswitch.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 uRX1QUKYaIqx; Wed, 4 Oct 2017 08:48:32 -0700 (PDT)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0139.outbound.protection.outlook.com [104.47.32.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C8DE013430B; Wed, 4 Oct 2017 08:48:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=metaswitch.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=g1EY4+WamTmYjJjb6evG1IVfSFdu05HeFCASRl1/LJ8=; b=TBc4i0KF0trL2ZJd213VNqvqoWGHpr/k0PjQeuHNl6N2vEx86pKlUOiZ4d56AnnDx+L6JMjQc6HQPUlb9u7hXvb0q93+VRl6NcKqZhnfWixSz8MctmuNlPG7oo4sMkmINZndRGYLemCAz96rGuzh0gK6i+i4/NJGDRw+Mq9l+II=
Received: from CY4PR0201MB3603.namprd02.prod.outlook.com (52.132.99.21) by CY4PR0201MB3601.namprd02.prod.outlook.com (52.132.98.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Wed, 4 Oct 2017 15:48:30 +0000
Received: from CY4PR0201MB3603.namprd02.prod.outlook.com ([fe80::e96f:ba45:f27a:2369]) by CY4PR0201MB3603.namprd02.prod.outlook.com ([fe80::e96f:ba45:f27a:2369%13]) with mapi id 15.20.0077.018; Wed, 4 Oct 2017 15:48:30 +0000
From: Jonathan Hardwick <Jonathan.Hardwick@metaswitch.com>
To: Spencer Dawkins <spencerdawkins.ietf@gmail.com>
CC: "draft-ietf-pce-pce-initiated-lsp@ietf.org" <draft-ietf-pce-pce-initiated-lsp@ietf.org>, Julien Meuric <julien.meuric@orange.com>, "pce-chairs@ietf.org" <pce-chairs@ietf.org>, "julien.meuric@orange.com" <julien.meuric@orange.com>, "pce@ietf.org" <pce@ietf.org>, The IESG <iesg@ietf.org>
Thread-Topic: Spencer Dawkins' Discuss on draft-ietf-pce-pce-initiated-lsp-10: (with DISCUSS and COMMENT)
Thread-Index: AQHTH5LzeCIm/HIo0EKRylxb2BU57KLUCs3A
Date: Wed, 04 Oct 2017 15:48:30 +0000
Message-ID: <CY4PR0201MB36033A33B8F7A469F8CD03F384730@CY4PR0201MB3603.namprd02.prod.outlook.com>
References: <150387941118.9916.6975027287643601597.idtracker@ietfa.amsl.com>
In-Reply-To: <150387941118.9916.6975027287643601597.idtracker@ietfa.amsl.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Jonathan.Hardwick@metaswitch.com;
x-originating-ip: [2620:104:4001:73:3d9b:db3a:ab99:dd46]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; CY4PR0201MB3601; 6:ET8pfKEr9c7pUCJz2dNuU9VG+GGCm3dYqtQwEh+LZiWZKTWEnXa8ImwaWGnUdwA4dLeJnX+yPQNMH0KkD0CdiLR+qMV6Pcoa3T7MBcGW+1AWT+0wqrYAJ6D/4fOgwNAsloFemrnwWGcem9wUvtgCxsa4mn1w5yxq203tC0PNH98272RAOnI/1Gdnj0UIqoKomPUaXAQwUQs9cUk/Tu01pGHQmD9lDemJ9WzeupwRsN2n+K/vnHLLROsEpSEN9uJwbrMnwGKdwZuJn/DvoQuXjpWfNNxF9FTTBf7/XecNX8cIH9XtKKAxtTn4N23WO5F5c3bsYt+JICgPN2LrCW+OHw==; 5:lsFgk93MvxevP9t0iOwhu1lr+hq7AHHJwoAuJnq44Um/03QBKc9J5kndzOnvtrXg/iJs44GxUIUnk2upRBStIPKJH6bBHJ42pchnqqBxQ8PDYvZAxgcak3Pare7dMn41TVJn10WNWOw5+2dwwc9ENQ==; 24:baa5Ivz+O1K0HXkdUE/FijZKw+WELgpWvzpMixqAN7Ah/y+GXrxnk6P1ybFOooiyEY6PY6uXIGghHEzbyOfOMvihFrqEgNGU0MnhXfhIP34=; 7:sv73mYXjTxq4ZAnT4iOxUXP5E4ptYlCx3+fPEyHK9CD4ioSbO0QcRT/jgC9/4PgWapyqAm2eGd2/YEkZroyDTbbLCiVHy4jZGu/J1AbI2LcLOZpxsJysxThK/ctF8qcqvhJ8PzpHeaPB3Dgp+omKo4OuzYEpAyqeP1/4g8K+6H9mN4PSnh/9395gKLpKyYnnWZBP2WZAjOlHwo1UVP0JZpLwYM8smYp+BtWWdqYwv9o=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 8facd85a-3472-4742-ddae-08d50b3f5c61
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075); SRVR:CY4PR0201MB3601;
x-ms-traffictypediagnostic: CY4PR0201MB3601:
x-exchange-antispam-report-test: UriScan:(158342451672863)(20558992708506);
x-microsoft-antispam-prvs: <CY4PR0201MB3601C6BFF9AA0A037CE4102384730@CY4PR0201MB3601.namprd02.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(100000703101)(100105400095)(10201501046)(6041248)(20161123562025)(20161123555025)(20161123564025)(20161123558100)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY4PR0201MB3601; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY4PR0201MB3601;
x-forefront-prvs: 0450A714CB
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(346002)(376002)(199003)(51914003)(189002)(53936002)(105586002)(54906003)(106356001)(102836003)(189998001)(3660700001)(6116002)(305945005)(50986999)(54356999)(14454004)(5660300001)(4326008)(3280700002)(68736007)(101416001)(25786009)(76176999)(55016002)(316002)(39060400002)(230783001)(6246003)(99286003)(6506006)(6916009)(2950100002)(7696004)(74316002)(97736004)(33656002)(6436002)(2900100001)(5250100002)(9686003)(229853002)(8676002)(72206003)(86362001)(2906002)(478600001)(81166006)(81156014)(7736002)(8936002); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR0201MB3601; H:CY4PR0201MB3603.namprd02.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None (protection.outlook.com: metaswitch.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: metaswitch.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2017 15:48:30.0274 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 9d9e56eb-f613-4ddb-b27b-bfcdf14b2cdb
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR0201MB3601
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/McsajMFRKrWDKHsJNqiD8BWdv_M>
Subject: Re: [Pce] Spencer Dawkins' Discuss on draft-ietf-pce-pce-initiated-lsp-10: (with DISCUSS and COMMENT)
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.22
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, 04 Oct 2017 15:48:34 -0000

Hi Spencer

Many thanks for these comments.  I'm picking up this thread and replying as PCE working group chair, as the authors are unavailable.  I am very sorry for the delay.

Please see my proposed resolutions inline below, marked with "Jon>"

Best regards
Jon

<snip>

----------------------------------------------------------------------
DISCUSS:
----------------------------------------------------------------------

This ballot position would be Please Educate Me, if that was a choice, but that's not a choice. I'm sure we can clear this quickly. And I found this document very easy to read as a reviewer - thanks for that.

I found a couple of places where SHOULDs seemed at least under-specified, and this one looked important.

In this text,

  LSP State Synchronization procedures are described in section 5.4 of
   [I-D.ietf-pce-stateful-pce].  During State Synchronization, a PCC
   reports the state of its LSPs to the PCE using PCRpt messages,
   setting the SYNC flag in the LSP Object.  For PCE-initiated LSPs, the
   PCC MUST also set the Create Flag in the LSP Object and MAY include
   the SPEAKER-ENTITY-ID TLV identifying the PCE that requested the LSP
   creation.  At the end of state synchronization, the PCE SHOULD
   compare the reported PCE-Initiated LSPs with its configuration.  For
   any mismatch, the PCE SHOULD send a PCInitiate message to initiate
   any missing LSPs and/or remove any LSPs that are not wanted.

I’m having a hard time understanding why a PCE would not compare reported PCE-Initiated LSPs with its configuration, which is allowed by the first SHOULD. Does that mean you thought it was important to TRY to synchronize, but you’re not curious enough to check whether that worked?

I can imagine reasons why you wouldn't try to fix the LSPs that weren't synchronized, at least not immediately, but you might also give guidance about one or more reasons why you wouldn't try, to help implementers understand what not doing what the SHOULD means, and make informed choices for their implementations.


Jon> I definitely agree with you that, having received a snapshot from the PCC, there is no reason that the PCE would not then compare the PCC's state with its local copy i.e. the first SHOULD ought to be a MUST.  The intention of the second SHOULD was to leave the PCE with some flexibility for dealing with clients that are out of sync.  For example, perhaps the clients are slow, or perhaps the operator's policy is to prefer not to disrupt existing flows so long as the main characteristics of the flows are correct.  These are just my invented examples, but we expect there might be valid operational reasons along these lines, so we wanted to the draft to allow the server the flexibility to choose whether it updates the flows, or not.

Here is my proposed fix.

OLD
   == as quoted above ===
NEW
   LSP State Synchronization procedures are described in section 5.4 of
   [RFC8231].  During State Synchronization, a PCC
   reports the state of its LSPs to the PCE using PCRpt messages,
   setting the SYNC flag in the LSP Object.  For PCE-initiated LSPs, the
   PCC MUST also set the Create Flag in the LSP Object and MAY include
   the SPEAKER-ENTITY-ID TLV identifying the PCE that requested the LSP
   creation.  At the end of state synchronization, the PCE MUST
   compare the reported PCE-Initiated LSPs with its configuration.  For
   any mismatch, the PCE SHOULD send a PCInitiate message to initiate
   any missing LSPs and/or remove any LSPs that are not wanted.  Under
   some circumstances, depending on the deployment,  it might be preferable
   for a PCE not to send this PCInitiate immediately, or at all.  For
   example, the PCC may be a slow device, or the operator might prefer
   not to disrupt active flows.
   

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

In this text,

  The State Timeout Interval timer ensures that a PCE crash does not
   result in automatic and immediate disruption for the services using
   PCE-initiated LSPs.  PCE-initiated LSPs are not removed immediately
   upon PCE failure.  Instead, they are cleaned up on the expiration of
   this timer.  This allows for network cleanup without manual
   intervention.  The PCC SHOULD support removal of PCE-initiated LSPs
   as one of the behaviors applied on expiration of the State Timeout
   Interval timer.  The behavior SHOULD be picked based on local policy,
   and can result either in LSP removal, or in reverting to operator-
   defined default parameters.

I found myself wondering why “The PCC SHOULD support removal of PCE-initiated LSPs” is a SHOULD, and not a MUST, but if it’s a SHOULD, you might say something about the effects of not supporting this, in order to help implementers make an informed decision about whether to support it.

In the same text, I found myself wondering if there were other alternatives to local policy for the last SHOULD, which is, of course, the last stop on the way to asking why this isn’t a MUST …

Jon> I agree that both of these statements ought to say MUST.  I don't believe there are other alternatives for the local policy.