Re: [Pce] AD review of draft-ietf-pce-local-protection-enforcement-08

"Andrew Stone (Nokia)" <andrew.stone@nokia.com> Tue, 09 May 2023 03:24 UTC

Return-Path: <andrew.stone@nokia.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 EA3E7C13738D; Mon, 8 May 2023 20:24:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level:
X-Spam-Status: No, score=-2.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=nokia.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Z1w_XSJe9xmX; Mon, 8 May 2023 20:23:57 -0700 (PDT)
Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2070d.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe59::70d]) (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 709DCC16B5C8; Mon, 8 May 2023 20:23:57 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jPDfMXSgTgaqU/WVbLJvje8UPUobjRYe4JtNPX2lxL/gfvvEF/SL+EI9VJYFdjH9KPUxWk8un1ldcXbyLJIjWnin7WnYDY9OEitOjBSNaujinhG2j6A0puD7tvCT3/IJPjzdzo/t622jqco+GPbKdumMBndbW9b+WBbNcruyUq6eoIDFI1B5B717nEfO7RxbXz5U04O5VE5u+aYuxmDKcE7Bk933mYUA3MNInOZ4tjqB499mj6+5P/Neq0dKGRhB9D95NTwKfzLXR3V+GJudeMRO0UaPfNgrpZhLlBtioWVA0Ik8ekxfwj7EUeSka88vuD3t4jN3ojuMeZflHsxcjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Ao4T90iVx+3RPPQWtkoXaBNDXtS3rmAhjhX3xdpGjLY=; b=JADA5+j38nWhCAgOz3KgGmanhZ3zcQiDm0caNfNQA0+qtz1pSfDJ2bM+acnxLgcebBpbHAEvhN/CniCl1M8+sUXPMU9D5cmMCgCrdsltMRRx0MYAu4ziWtl0AovNUpsafzzy9CdcsT1MzwKr+d4NuHrSsL1704CQhZ7fGeXE/uurN8QMxc32shOjDLFtVlz5NVDwvJ28KLNWjD499jRusFG/e44t22X8rOe+vxshZ0xmQwK3nS+wlUwtClqR/5HztMdUY8ToIlqKZpXiujUpLgc/7sAcpB99uNtVKdgAXuZ5Z/7hViNQREno3+vM7thdwoRqyVvX78Qd7z+vF8J/1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ao4T90iVx+3RPPQWtkoXaBNDXtS3rmAhjhX3xdpGjLY=; b=fmvXBnT8dKaeU0DJGFDOgJ043inhSl8DRtkjFbYcp2VCldfjlYOn4RX3TGg2ya04krxEER3ygmM/mWOudETP+x5e6weHK+9JxpIqA5iLbzYpOisNkTEGJgTCf/2DGr6U25mqgtqdQZiSYVzBeIego4zARDsnJ9ta8f1tjPVreZKjp6Q9mps833zMHlMh4BNqy/EaeSqUXORFgWRub37yboW126TrDz+zvK4ZG55BIFYHRWnOosrRRJkVpl8EnvGZsUbprQeIehoaF8ASHY9C0abCtp/pQEGV1/gR/zfQ7wY7spkMuo1DEWh2B/wuBHE9GqR63MgWrFh7tob4rsdZ8Q==
Received: from CH0PR08MB7353.namprd08.prod.outlook.com (2603:10b6:610:102::22) by PH7PR08MB8356.namprd08.prod.outlook.com (2603:10b6:510:15b::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.32; Tue, 9 May 2023 03:23:49 +0000
Received: from CH0PR08MB7353.namprd08.prod.outlook.com ([fe80::311d:7f8d:9583:c52a]) by CH0PR08MB7353.namprd08.prod.outlook.com ([fe80::311d:7f8d:9583:c52a%7]) with mapi id 15.20.6363.032; Tue, 9 May 2023 03:23:49 +0000
From: "Andrew Stone (Nokia)" <andrew.stone@nokia.com>
To: John Scudder <jgs@juniper.net>, "draft-ietf-pce-local-protection-enforcement@ietf.org" <draft-ietf-pce-local-protection-enforcement@ietf.org>
CC: "pce@ietf.org" <pce@ietf.org>, "Mustapha Aissaoui (Nokia)" <mustapha.aissaoui@nokia.com>, "ssidor@cisco.com" <ssidor@cisco.com>, "ssivabal@ciena.com" <ssivabal@ciena.com>
Thread-Topic: AD review of draft-ietf-pce-local-protection-enforcement-08
Thread-Index: AQHZc785Ha6Efjr470+t1KkVB2Ttcq862guAgBZGvgA=
Date: Tue, 09 May 2023 03:23:48 +0000
Message-ID: <184021D7-9B34-472D-AC86-F5F095086C0E@nokia.com>
References: <FE8AE71A-EF4A-42BD-8373-49A1747B5066@juniper.net> <223D522A-38DB-44AA-93A3-BDEE4D185093@nokia.com>
In-Reply-To: <223D522A-38DB-44AA-93A3-BDEE4D185093@nokia.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.72.23043001
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: CH0PR08MB7353:EE_|PH7PR08MB8356:EE_
x-ms-office365-filtering-correlation-id: e7803287-4ddd-4b12-2cef-08db503cce1e
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: kYTG1VapnjGwHGNxy0vCZPr6eqXp5Lav7fEPs67QhWmj2W1+G97DXd7UDrVkDDWXphsneRsG9DMBxrFaTWFCmq9B4TCKqaYHMr+5wCasfA7cJZuOMDc8Qp6xAvRZEq7XZvZ0nMXOAjDaPCDZU0mgvKuyJaOW4U4K9kOE+t0L3ha45IDl+iYaSHP7X1oz1SgcQt6nVFgEQMV83e5bjGDcQ6nxns7ic2eyj0eiX5soF6wvoKiI57gMSH8G0p+zkIBs7CoOqW2wGhJKavH0csEQxyLVDGbnijbLszp7N90IT4MHzxdiy4lr+lVNQ5IzDYXeV3ooxtmIUG7eXuqWQkk/PgXSsUaV/kipN0KxeZY/SJB5ELvPWPG4k1F4RHYUixKodPs60btCcjZEv0Zq2XHXIhhCaxsx96wwodxTEn4WX5zLPTKzQZlPnbASZbMN5lmh8okEV/0yOH+1EPCkw1bRXqU2S+WuE2+14J/j3hAnUs092Qf+Fi+oX2X9n3f+Fx0A9C568iQou+SxspN5RZMkcZPLZYP/FEa+GaA/GyAXDgJAz5dJZGIymIwcRjC+Pr3SiXzZ2uSWFLAXebcMv42Z3fcutSZOJfnPk1nB0SLaGZwLKd3Uk4iBaaBSUdams7qk03be+GMBik9FG3x3yORSoZR5w53P9CcR6ZxUafdZL3w=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH0PR08MB7353.namprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(346002)(39860400002)(136003)(376002)(366004)(396003)(84040400005)(451199021)(53546011)(36756003)(33656002)(66476007)(966005)(54906003)(110136005)(91956017)(66946007)(316002)(478600001)(76116006)(66556008)(66446008)(64756008)(4326008)(86362001)(6486002)(5660300002)(2906002)(71200400001)(41300700001)(8676002)(30864003)(8936002)(186003)(122000001)(38100700002)(82960400001)(38070700005)(26005)(6506007)(6512007)(66574015)(83380400001)(2616005)(84970400001)(45980500001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: pIYZ/YCjNMyJpT+Shd2Yv8w0583HT3pB6L1HrIFQjjV5EtwhOf6VKTGCUkwaTcldeOTJ9iaLkgmDzvduw8ngWJZKpjHRcql15R63/lF8eDx6/YVWGjYXO07dRaBXc7ljteRr85wz6xKypW8C8+PHq++ndGFtblpa5evRmUItT7MjCkzDZabEQdo/t+qpJB13RHHYrnUoGA5CVmUtC08glA9lR8N/tH/7DFEnmdS3wsbB2czQopc++LaFVyFeuxJIx5yt6WEepXbJzojClzqFhIO3Mw7lJaw1TSKUhKoooeN/r7cgeKK02xniAYvV9JOnqRQBIRVff9oU1LP42lsii8bCRCMFchqStXqxo5N+eUlPHIc4sS6ibb3Zo5iqAVvw7n5lr3PJMLkk7O90W/OEFEiFqWSEsn78XP645PZB1qdtohVQxegGGll3g16YD2l2YVY972o4S/dR7KyjbBlmcxp8Vbn6afK+bmWDG8HwVfRj+CzaBoRimOOHRzVSIZSjDAwtHBjPbmnlOpr29df2VMoky1lPmED6FDnsanxPJOMNjgX7itWaJ8ogTzy1LkQ6WdFee7WBGhWeU5WDxZIi8UAqSmUi14y+VugTA/HbSXEqxjiutfykMvaWtCqIXDIb1KuT4xD39QVl+Du2U8nEAOWbxpnYyOpCugA6eJFc8FaEFOP3mmmdHaKcs0HE0RU0ZILCPQ3KCsZdxX+lUdqkCrq/UW8/Hrg7ssi2n+PJwBzI521BrEFLKk8scBY4s6Gtlb3/XR4+tFk0EiHWbNsE52mzka0vGD0ZMmNjGwX8E/yV2iDxuQlbQSresUkrJ/w75GayfSjWIL8g8/dbN6VYgsoYt9So9hPLHc35ZPUPnlG7B3DohhCG3FdDD9a1m+JGE6+Cwbzz9q2MogPuLIa5QwC90KojLkp+uItLZg8ODo4sKRgTxEopukdkK/GX2mf3NgT3RMQyz1fWs8Br/oeibBDIz+4t3xzKJUWKhV6sHbQD1mi72WuS520Azhf4tWM8wBsiDAVhVGF7qjdlQBxtAWi8ue3IaotiQ01PghyD/NHDKIWeUIwcUr0skbHW1SwG+dnAwDp1zfaUNicBCmdBy3WIu+zcjlbCvsNAPBlPi0RA7ZVaqzEKvyFZDARYAjmFr3t26Lx+VNoU41fFRKlniQ0wb+eF8afjufFDwr93WGn0LjP5MhSq8QK3wmuICw3M/Y7w1PkPZWMQgUgIO1YpTxJoog2Nd1p8lVkxSMsvISs23r11RV++kY59B4g3/0MZUCbdMEVMtCni8Xh63A9OGhjvuJ87p7mOtOW5ENt4R58cJ4UhGjZL2NcDG37GVSy7ZrsNjx6GXcL5cgJbqMscwocCtAPDXAdiPJGYIE/QhBYuIXjOIA2APXmLNVwlqg2VOyjcqYJLGYgIaN1PnF+pWjGdD6dSJtf9qJckXpZK5FuwhCX5sNtcd8biEMOXfr9MARd+fFpcbdPue5cgmjaadMIqpBJLDr4iSH+myjAC6dIWOg3xvT14Ruco7I8/DAJBgRA5+qGyWbRlEJeM6gvHxO3p/0K7p0vQ8kcO+/YWkFj6sCWQQQ3mjGgGUsE419axGP1WHBFdhpRgiUs3dyx5dQ==
Content-Type: text/plain; charset="utf-8"
Content-ID: <1C9659894ACE844BBE6FDDE3AE77B1B2@namprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: CH0PR08MB7353.namprd08.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e7803287-4ddd-4b12-2cef-08db503cce1e
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 May 2023 03:23:48.8902 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: DYXjPinLAcsj8D+OOOLiSShQTr4QP/WZfarAkjdZmMXA7PPAC5m10n+Cnv49DI6+PBDouq/28Yf6118G8YNP9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR08MB8356
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/zY9IzFJOrYtsi2ZhZtKGoqwfP50>
Subject: Re: [Pce] AD review of draft-ietf-pce-local-protection-enforcement-08
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.39
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: Tue, 09 May 2023 03:24:02 -0000

Hi John, PCE WG

New version -09 has been posted [1]. Hopefully this helps clear up the discussion comments below.

Summary:

- Reduced the verbosity in the introduction regarding segment routing background
- Added comment regarding control/data plane applicability and prefixed SR specific comments
- Moved preferred content from section 5 to section 4 and consolidated the wording with 'do not care'
- Various nits that were caught in review

Thanks again for the review! 
Andrew

[1] https://author-tools.ietf.org/iddiff?url1=draft-ietf-pce-local-protection-enforcement-08&url2=draft-ietf-pce-local-protection-enforcement-09&difftype=--html



On 2023-04-24, 7:13 PM, "Andrew Stone (Nokia)" <andrew.stone@nokia.com <mailto:andrew.stone@nokia.com>> wrote:


Hi John,


Thank you very much for the review and including the inline diff, made it easier to follow. 


Good observation and point about it being technology-agnostic. It was motivated by SR, but as you point out the E+F flags descriptions and behavior clarifications may be applicable outside of SR in ways I'm unaware of or don't exist yet. The introduction was intended to build context in the purpose of the draft, not necessarily a tutorial on SR, but I can see how it may be a bit heavy for that purpose. Considering these two observations perhaps the SR specific discussions from the introduction would be better to move to section 4.2, and the introduction include statements about technology applicability? And where applicable, the use of 'SID' outside of that section can be amended where applicable? There are some recommendation text embedded in the document that should be kept (ex: 5.2: .....It is RECOMMENDED ..... assume a Node SID is protected ...RECOMMENDED ... assume an Adjacency SID is protected if the backup flag advertised ....). Perhaps those can be pre-ambled with "If the technology is SR then ..." ? Do you think this would help clarify what portions are agnostic vs SR specific?


Further replies in-line below with >>>>>>[Andrew]. >>>> blocks. 


Will adopt your editorial changes and address discussions for a new revision soon. 


Thanks again,
Andrew










On 2023-04-20, 3:35 PM, "John Scudder" <jgs@juniper.net <mailto:jgs@juniper.net> <mailto:jgs@juniper.net <mailto:jgs@juniper.net>>> wrote:
CAUTION: This is an external email. Please be very careful when clicking links or opening attachments. See the URL nok.it/ext for additional information.


Hi Authors, WG,


Thanks for this spec. I can see the need to clear up this ambiguity.




I’ve supplied most of my questions and comments in the form of an edited copy of the draft. Minor editorial suggestions I’ve made in place without further comment, most of my more substantive questions and comments are done in-line and prefixed with “jgs:”. You can use your favorite diff tool to review them; I’ve attached the iddiff output for your convenience if you’d like to use it. I’ve also pasted a traditional diff below in case you want to use it for in-line reply.




In addition to my various inline comments, I have a general question/comment. The spec, as far as I can tell, is technology-agnostic: it introduces the E flag and codifies the interpretation of the E+L flags. It doesn’t restrict this to any particular data plane. That seems like the right choice. But, the draft also opens with several paragraphs of discussion of Segment Routing in the Introduction, and its normative language is SR-specific (search for “SID” in the document to see what I mean, SIDs are an SR construct).




Is the applicability of the document intended to be specific to Segment Routing? If so I think this needs to be made clearer. Or, if the document is NOT intended to be restricted to SR, then revisions are needed everywhere after the Introduction where the string ‘SID’ occurs, to make it technology-agnostic. (Less importantly, one might also ask why the Introduction needs to contain a tutorial on SR.)




Thanks,


—John




--- draft-ietf-pce-local-protection-enforcement-08.txt 2023-04-20 14:28:28.000000000 -0400
+++ draft-ietf-pce-local-protection-enforcement-08-jgs-comments.txt 2023-04-20 15:25:51.000000000 -0400
@@ -148,15 +148,21 @@
calculated to include other segment identifiers which are not
applicable to having their protection state advertised, as they may
only be locally significant for each router processing the SID, such
- as Node SIDs, it may not be possible for PCE to include the
+ as Node SIDs, it may not be possible for the PCE to include the
protection constraint as part of the path calculation.




- It is desirable for an operator to define the enforcement, or
+ It is desirable for an operator to be able to define the enforcement, or
strictness of the protection requirement when it can be applied.
+---
+jgs: I don't follow what you mean by "... or strictness of the protection
+requirement when it can be applied." I'm getting hung up on the "when it
+can be applied" part. Would it be correct to just delete those words? Or
+if it wouldn't, can you help me understand what work they're doing? Thanks.
+---


>>>>>>>>>>>> 
[Andrew] "When it can be applied" was intended to suggest to a reader that there may be scenarios where the PCE is simply unaware whether a given resource is protected or not, or may even need to make assumptions on it's protected state because the information may not be available (knowledge if Node SID is protected by all nodes along the path). It's likely redundant and can be removed (PCE can't enforce what it doesn't know). Will adjust.
>>>>>>>>>>>>








@@ -286,6 +292,25 @@
the PCE a preference on which SID to select, as the behaviour of the
LSP would differ during a local failure depending on which SID is
selected.
+---
+jgs: I thought this paragraph was going to answer a question I have,
+when it began with "... cases where there is simply no requirement to
+enforce protection or no protection ..." That is, sometimes the
+operator may simply _not care_ at all, they just want (for example)
+the lowest-latency path.
+
+But then my hopes were dashed, because at the end of the paragraph
+you segue (without explaining why) into "... give the PCE a preference".
+But isn't the case you introduced, the one where there literally is no
+preference?
+
+As this is written, it seems as though there is missing support for the
+true "don't care" case. If this was discussed in the WG and the consensus
+was that, er, the WG doesn't care about the "don't care" case, I'd like
+to know that. If I'm confused and somehow "don't care" is properly
+captured by one (both?!?) of these options, I'd like to know that, and
+understand how. If I'm terribly confused, I'd like to know that, too. :-)
+---


>>>>>>>>>>>>
[Andrew] Even if the operator does not care to enforce something, PCE still needs to make a selection on which SID to pick in a situation where two or more are available, which are logically equal, and without a consistent preference, operational behavior may differ between two PCEs. This section is to introduces the two options, without saying which to use. Even if the end-user doesn't care, PCE should still pick one behavior or the other. Section 5 goes a bit more into contrasting the two and gives recommendations. Perhaps the "do not care" text is throwing things off a bit, will do some adjustments to this paragraph.
>>>>>>>>>>>>








5. Protection Enforcement Flag (E flag)




@@ -359,6 +384,16 @@
consider the protection eligibility as an UNPROTECTED PREFERRED
constraint but MAY consider protection eligibility as an UNPROTECTED
MANDATORY constraint.
+---
+jgs: It's not self-evident why this SHOULD/MAY is written this way. The
+obvious choice would have been to make the SHOULD a MUST and omit the
+MAY -- indeed, if 'enforcement' is set to false, it's hard to see a
+justification for making enforcement mandatory! So it seems as though
+there must be some backstory here. Can you help me understand? (Or
+better yet, make the SHOULD a MUST...)
+
+See also my comment just below.
+---


>>>>>>>>>>>> 
[Andrew] Backward friendly text with existing implementations. Similar discussion at [1] and [2]
[1]: https://mailarchive.ietf.org/arch/msg/pce/vPfrDDqtMm1aXTfCID9poG3H42E/ <https://mailarchive.ietf.org/arch/msg/pce/vPfrDDqtMm1aXTfCID9poG3H42E/> 
[2]: https://mailarchive.ietf.org/arch/msg/pce/4EX28antvCp_2CY--7RJmCvR-jo/ <https://mailarchive.ietf.org/arch/msg/pce/4EX28antvCp_2CY--7RJmCvR-jo/>
>>>>>>>>>>>>








When L flag is set to 0 and E flag is set to 1, then the PCE MUST
consider the protection eligibility as an UNPROTECTED MANDATORY
@@ -368,10 +403,27 @@
they indicate the preference of selection of a SID if PCE has an
option of either protected or unprotected available on a link. The
definition of UNPROTECTED PREFERRED is primarily as a guidance on how
- PCE should behave when L bit is not set, maintaining compatibility
+ PCE should behave when the L bit is not set, maintaining compatibility
with existing known implementations prior to this document. When
presented with either option, PCE SHOULD select the SID which has a
protection state matching the state of the L flag.
+---
+jgs: I'm afraid I had a hard time making sense of this paragraph. :-( I
+think maybe it's mashing together a couple different and only
+loosely-related thoughts?
+
+One of them is (perhaps?) the answer to my question above, and in effect
+is saying "some implementations do one thing and some do another and we
+didn't want to make any of them noncompliant so we threw in a MAY",
+which I'm not sure is a strong enough reason (we can discuss further).
+
+The final sentence seems like it doesn't belong, and in fact it seems
+like it should be removed. As far as I can tell it's redundant with the
+two "... and the E flag ... set to 0" paragraphs above. It also subtly
+conflicts with the first of those paragraphs. It's better to specify
+things just once, for this reason -- I suggest you remove the final
+sentence.
+---


>>>>>>>>>>>> 
[Andrew] This paragraph is an extension of the section 4.2 "do not care" case. I'll move the contrasting the two terms to section 4.2 with the related "do not care" adjustments, and keep this section to just actions (should do __). Good catch about the redundant statement, agreed and will drop. So this paragraph will be removed and some of the content moved to 4.2.
>>>>>>>>>>>>










The protection enforcement constraint can only be applied to resource
selection in which the protection state or eligibility for protection
@@ -394,7 +446,7 @@
Internet-Draft Protection Enforcement November 2022


-5.1. Backwards Compatibility
+5.1. Backward Compatibility


Considerations in the message passing between the PCC and the PCE for
the E flag bit which are not supported by the entity are outlined in
@@ -419,18 +471,33 @@
the E flag set to 0 for PCE-initiated LSPs even if set to 1 in the
prior PCInitiate or PCUpd.




- For a PCC which does support this document, it MAY set E flag to 1
+ For a PCC which does support this document, it MAY set the E flag to 1
depending on local configuration. If communicating with a PCE which
does not yet support this document, the PCE follows the behaviour
specified in [RFC5440] and will ignore the E flag. Thus, it will not
compute a path respecting the enforcement constraint.
+---
+jgs: It *will* not compute a path respecting the constraint? Or it
+*might* not? All the introductory material, about the ambiguity of
+how implementations handle the L flag, makes me think it *might*
+not, or alternately, it cannot be guaranteed to respect the
+constraint. As you've written it, it says that is guaranteed not to
+respect the constraint, which I think is probably wrong.
+---


>>>>>>>>>>>> 
[Andrew] Good catch, thanks - correct - it might compute a path violating the constraints. Will correct.
>>>>>>>>>>>>








For PCC-initiated LSPs, the P
CC SHOULD ignore the E flag value
received from the PCE in a PCUpd message.
+---
+jgs: What would it mean for the PCC not to ignore the E flag? Is there
+any reason for this to be SHOULD and not MUST?
+---




For PCE-initiated LSPs, the PCC MAY process the E flag value received
- from the PCE in a PCUpd message. PCE SHOULD ignore the E flag value
+ from the PCE in a PCUpd message. The PCE SHOULD ignore the E flag value
received from the PCC in a PCRpt message.
+---
+jgs: same question about this SHOULD.
+---


>>>>>>>>>>>> 
[Andrew] For the above two: I'm not aware of any spec or implementation behavior where PCC interpets the E flag echo however as an example, one risk is if PCC sends PcRpt+Delegation with E=1 and receives PcUpd with E=0, it *could* perform some kind of check and do a PcErr, breaking compatibility, meanwhile the goal is to maintain PCEP backwards compatibility. So the intention was to give recommendation on how the (PCC/PCE) should interpret an echo (i.e do not interpret it), to maintain backwards compatibility. The SHOULD is leaving a door open in case some future reason or use case someone may have justification for interpreting it. Should I add a remark on why interpreting it may break compatibility or leave as is? 
>>>>>>>>>>>>