From nobody Mon Jul 19 11:10:29 2021
Return-Path: <Italo.Busi@huawei.com>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id 0F1B63A2C68;
 Mon, 19 Jul 2021 11:10:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level: 
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001,
 RCVD_IN_MSPIKE_H2=-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 8OhbzsOdMuv7; Mon, 19 Jul 2021 11:10:21 -0700 (PDT)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com
 [185.176.79.56])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id 7426B3A2C42;
 Mon, 19 Jul 2021 11:10:21 -0700 (PDT)
Received: from fraeml712-chm.china.huawei.com (unknown [172.18.147.226])
 by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4GT8mX3y1bz6FD1G;
 Tue, 20 Jul 2021 02:01:32 +0800 (CST)
Received: from fraeml715-chm.china.huawei.com (10.206.15.34) by
 fraeml712-chm.china.huawei.com (10.206.15.61) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2176.2; Mon, 19 Jul 2021 20:10:18 +0200
Received: from fraeml715-chm.china.huawei.com ([10.206.15.34]) by
 fraeml715-chm.china.huawei.com ([10.206.15.34]) with mapi id 15.01.2176.012;
 Mon, 19 Jul 2021 20:10:18 +0200
From: Italo Busi <Italo.Busi@huawei.com>
To: 'Deepti Rathi' <deeptir@juniper.net>
CC: "draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org"
 <draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org>, "mpls-chairs@ietf.org"
 <mpls-chairs@ietf.org>, "mpls@ietf.org" <mpls@ietf.org>
Thread-Topic: MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-fec
Thread-Index: AddhI9L1yOOS4MxaRt24LmA/Qqe0iAAl+X+wAGq/JjAABL76EANyqPmgAuBg1mA=
Date: Mon, 19 Jul 2021 18:10:18 +0000
Message-ID: <93cecf5e94e14269ac77127fdf7eee73@huawei.com>
References: <fa5f1e295e0946c5928613f49e24bddf@huawei.com>
 <SA1PR05MB8439C398FBD5807756038B8DAF0E9@SA1PR05MB8439.namprd05.prod.outlook.com>
 <CY4PR05MB357687AE89CB6A0842D1D315D50E9@CY4PR05MB3576.namprd05.prod.outlook.com>
 <SA1PR05MB843989D62791B28BFFF80B52AF0E9@SA1PR05MB8439.namprd05.prod.outlook.com>
 <MWHPR05MB3247BF6F1FF241F8BD013D8CAF1C9@MWHPR05MB3247.namprd05.prod.outlook.com>
In-Reply-To: <MWHPR05MB3247BF6F1FF241F8BD013D8CAF1C9@MWHPR05MB3247.namprd05.prod.outlook.com>
Accept-Language: it-IT, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.47.80.177]
Content-Type: multipart/alternative;
 boundary="_000_93cecf5e94e14269ac77127fdf7eee73huaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/WBBm5F-TXyf5gaBtbMO9huszPI8>
Subject: Re: [mpls] MPLS-RT review for
 draft-rathi-mpls-egress-tlv-for-nil-fec
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
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: Mon, 19 Jul 2021 18:10:27 -0000

--_000_93cecf5e94e14269ac77127fdf7eee73huaweicom_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi Deepti/co-authors,

Thanks for having addressed my comment and my apologize for the late reply =
(too busy with other topics in the last few weeks)

It is now clear to me what is the problem you are trying to address and why=
 the existing solutions are not suitable, so the document is ready for WG a=
doption

I have a couple of comments which can be addressed as you prefer before or =
after WG adoption and hopefully could help improving the clarify and the so=
lution


1)      I have been a bit confused by this text:



>   ... When router in the label-stack path

>   receives MPLS ping/traceroute packets, there is no definite way to

>   decide on whether its egress or transit since Nil FEC does not carry

>   any information.



I would propose the following rephrase:



>   ... When router in the label-stack path

>   receives MPLS ping/traceroute packets, there is no definite way to

>   decide on whether it is the intended egress router since Nil FEC does n=
ot carry

>   any information.



With a reference to your example, my understanding is that if the MPLS ping=
/traceroute packet is mis-delivered to an incorrect destination (e.g., R8),=
 R8 will behave as R7 and set Best-return-code to 3.



I do not think there is any issue if the packet arrives to an intermediate =
node (e.g., R6) since R6 will set Best-return-code to 8.



2)      With the current rules, the solution works if and only if all the e=
gress routers are upgraded to support the EGRESS TLV. Otherwise, if the MPL=
S ping/traceroute packet is mis-delivered to an incorrect destination that =
does not support the EGRESS TLV, that egress router will behave as the inte=
nded destination and set Best-return-code to 3.



I am wondering whether a new return-code should be defined to report that t=
he  EGRESS TLV has been checked and validated.

My 2 cents

Italo

From: Deepti Rathi [mailto:deeptir@juniper.net]
Sent: luned=EC 5 luglio 2021 04:21
To: Deepti Rathi <deeptir@juniper.net>; Italo Busi <Italo.Busi@huawei.com>
Cc: draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org; mpls-chairs@ietf.org;=
 mpls@ietf.org
Subject: RE: MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-fec


Thanks Italo for the comments.

I have posted the new version of draft taking care of all the review commen=
ts.



Regards,

Deepti




Juniper Business Use Only
From: Deepti Rathi <deeptir@juniper.net<mailto:deeptir@juniper.net>>
Sent: Thursday, June 17, 2021 7:08 PM
To: Italo Busi <Italo.Busi@huawei.com<mailto:Italo.Busi@huawei.com>>
Cc: draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org<mailto:draft-rathi-mpl=
s-egress-tlv-for-nil-fec@ietf.org>; mpls-chairs@ietf.org<mailto:mpls-chairs=
@ietf.org>; mpls@ietf.org<mailto:mpls@ietf.org>
Subject: Re: MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-fec


Hi Italo,
Please find my comments inline.
I will update draft for:

  1.  why "NIL FEC + EGRESS TLV" and not Generic IPV4/IPV6 FEC.
  2.  Backward compatibility.

Regards,
Deepti



Juniper Business Use Only
From: mpls <mpls-bounces@ietf.org<mailto:mpls-bounces@ietf.org>> On Behalf =
Of Italo Busi
Sent: Monday, June 14, 2021 7:26 PM
To: 'mpls@ietf.org' <mpls@ietf.org<mailto:mpls@ietf.org>>
Subject: [mpls] MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-fec

[External Email. Be cautious of content]

Hi all,

I have been selected as one of the  MPLS-RT reviewers of draft-rathi-mpls-e=
gress-tlv-for-nil-fec-04

>>IMHO, being able to use LSP Ping/Traceroute perform to validate only the =
data path and not the control plane state makes sense but I think that the =
draft requires more information about the problem that >>it is trying to ad=
dress and why existing solutions are not suitable
[Deepti]:
NIL FEC is used to traverse the path without validation for cases where the=
 FEC is not defined or routers are not upgraded to support the new FECs (li=
ke newer features, explicit-null, router-alert etc).
But it is a very powerful tool to check any combination of segments on any =
data path.
Since it does not carry any information to identify the intended egress/des=
tination,
n  Mis-forwarding of the packet is possible
n  Not possible to figure out mis-configuration of label stack
But in any case it will always return success even though egress/destinatio=
n is not the intended one which is not desired.
To overcome this and to provide minimal validation, EGRESS TLV is added in =
the packet. This will help to do egress/destination validation.
NIL FEC processing will be same as defined in RFC 8029. This draft is for a=
ddition of EGRESS TLV as extension to NIL FEC for path egress/destination v=
alidation.

>Let me try to clarify my confusion after having read the draft

>Unless I am missing something, section 4.4.1 of RFC8029 already provides s=
upport for checking only the data path and not the control plane state:

>  If the outermost FEC of the Target FEC stack is the Nil FEC, then the
> node MUST skip the Target FEC validation completely.

>The draft mention some challenges with the current definition, but it seem=
s describing only one potential issue:

>   ... When router in the label-stack path
>   receives MPLS ping/traceroute packets, there is no definite way to
>   decide on whether its egress or transit since Nil FEC does not carry
>   any information.

>However, I am not sure about this issue: looking at the example in the dra=
ft, my understanding is that R7 will reply with code 3 while, in traceroute=
, the intermediate nodes will reply with code 8.

>Reading the procedure in section 4.2, I am wondering whether the real inte=
ntion is to be able to validate the prefix X in R7, rather than the SR path=
 toward R7.

>However, in this case, it is not clear why using a FEC for the prefix X in=
stead of the Nil FEC is not suitable.

[Deepti]: The real intention is to reach the correct egress/destination nod=
e.
The details of generic FEC and validation procedures are not very detailed =
in the RFC 8029.
The use-case mostly specifies inter-AS VPNs as the motivation.

Certain aspects of Segment Routing such as anycast SIDs required clear guid=
eline on how the validation procedure should work.
Also Generic FEC may not be widely supported and if transit routers are not=
 upgraded to support validation of generic FEC, traceroute may fail.
So instead of adding such clarifications to generic FEC, we went with new E=
GRESS TLV in Nil FEC.
Its an optional TLV so the procedures will work fine even if transit router=
s are not upgraded.
While we clearly specify the processing of egress tlv so that all SR cases =
are well specified.

Since explicit path can be created using node-sid, adj-sid, binding-sid, an=
ycast-sids etc. EGRESS TLV prefix will be derived from path egress/destinat=
ion and not based on labels used in the path to reach the destination.

I will update introduction section of draft with this comparison.

>>I also think that section 5 requires more details about how backward comp=
atibility is achieved. What is the behavior of a node that does not support=
 this solution when it receives the EGRESS TLV?

[Deepti]:
Backward compatibility on egress-node:
On egress/destination, it will ignore EGRESS TLV and use current NIL-FEC pr=
ocedure with return code 3 but egress validation will not be done (same as =
RFC 8029). So we wont know for sure if packet has reached the correct path =
egress.

Backward compatibility on transit-node:
If the transit node doesn't support, it will use current NIL-FEC procedure =
and send return code of 8.

I will add section in draft for backward compatibility.

Italo


--_000_93cecf5e94e14269ac77127fdf7eee73huaweicom_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Lato;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:34;
	margin-top:0cm;
	margin-right:0cm;
	margin-bottom:0cm;
	margin-left:36.0pt;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri",sans-serif;}
p.msipfooter30b3d538, li.msipfooter30b3d538, div.msipfooter30b3d538
	{mso-style-name:msipfooter30b3d538;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle21
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
/* List Definitions */
@list l0
	{mso-list-id:118034244;
	mso-list-type:hybrid;
	mso-list-template-ids:-1714400672 67698703 67698713 67698715 67698703 6769=
8713 67698715 67698703 67698713 67698715;}
@list l0:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l1
	{mso-list-id:732964987;
	mso-list-template-ids:-2041272720;}
@list l1:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level2
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:72.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level3
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:108.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level4
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:144.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level5
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:180.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level6
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:216.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level7
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:252.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level8
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:288.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1:level9
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:324.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l2
	{mso-list-id:1337727625;
	mso-list-template-ids:984124034;}
@list l2:level1
	{mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level2
	{mso-level-tab-stop:72.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level3
	{mso-level-tab-stop:108.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level4
	{mso-level-tab-stop:144.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level5
	{mso-level-tab-stop:180.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level6
	{mso-level-tab-stop:216.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level7
	{mso-level-tab-stop:252.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level8
	{mso-level-tab-stop:288.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l2:level9
	{mso-level-tab-stop:324.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3
	{mso-list-id:1686127225;
	mso-list-type:hybrid;
	mso-list-template-ids:554837244 67698705 67698713 67698715 67698703 676987=
13 67698715 67698703 67698713 67698715;}
@list l3:level1
	{mso-level-text:"%1\)";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l3:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l3:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l3:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l4
	{mso-list-id:1988582647;
	mso-list-type:hybrid;
	mso-list-template-ids:1199457316 2101227390 67698691 67698693 67698689 676=
98691 67698693 67698689 67698691 67698693;}
@list l4:level1
	{mso-level-start-at:428;
	mso-level-number-format:bullet;
	mso-level-text:\F06E;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
@list l4:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l4:level3
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l4:level4
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l4:level5
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l4:level6
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
@list l4:level7
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Symbol;}
@list l4:level8
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:"Courier New";}
@list l4:level9
	{mso-level-number-format:bullet;
	mso-level-text:\F0A7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	font-family:Wingdings;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Hi Deepti/co-authors,<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Thanks for having addr=
essed my comment and my apologize for the late reply (too busy with other t=
opics in the last few weeks)<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">It is now clear to me =
what is the problem you are trying to address and why the existing solution=
s are not suitable, so the document is ready for WG adoption<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">I have a couple of com=
ments which can be addressed as you prefer before or after WG adoption and =
hopefully could help improving the clarify and the solution<o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-18.0pt;mso-list:l3 leve=
l1 lfo7"><![if !supportLists]><span style=3D"color:#1F497D"><span style=3D"=
mso-list:Ignore">1)<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style=3D"color:#1F497D">I have been a =
bit confused by this text:<o:p></o:p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; ... When router in the label=
-stack path<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; receives MPLS ping/tracerout=
e packets, there is no definite way to<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; decide on whether its egress=
 or transit since Nil FEC does not carry<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; any information.&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <o:p></o=
:p></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D">I would propose=
 the following rephrase:<o:p></o:p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; ... When router in the label=
-stack path<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; receives MPLS ping/tracerout=
e packets, there is no definite way to<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; decide on whether it is the =
intended egress router since Nil FEC does not carry<o:p></o:p></p>
<p class=3D"MsoListParagraph">&gt;&nbsp;&nbsp; any information.<span style=
=3D"color:#1F497D"><o:p></o:p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D">With a referenc=
e to your example, my understanding is that if the MPLS ping/traceroute pac=
ket is mis-delivered to an incorrect destination (e.g., R8), R8 will behave=
 as R7 and set Best-return-code to 3.<o:p></o:p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D">I do not think =
there is any issue if the packet arrives to an intermediate node (e.g., R6)=
 since R6 will set Best-return-code to 8.<o:p></o:p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D">&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<o:p></o:p></span></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-18.0pt;mso-list:l3 leve=
l1 lfo7"><![if !supportLists]><span style=3D"color:#1F497D"><span style=3D"=
mso-list:Ignore">2)<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style=3D"color:#1F497D">With the curre=
nt rules, the solution works if and only if all the egress routers are upgr=
aded to support the EGRESS TLV. Otherwise, if the MPLS ping/traceroute pack=
et is mis-delivered to an incorrect
 destination that does not support the EGRESS TLV, that egress router will =
behave as the intended destination and set Best-return-code to 3.<o:p></o:p=
></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:=
p></span></p>
<p class=3D"MsoListParagraph"><span style=3D"color:#1F497D">I am wondering =
whether a new return-code should be defined to report that the &nbsp;EGRESS=
 TLV has been checked and validated.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">My 2 cents<o:p></o:p><=
/span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Italo<o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><a name=3D"_MailEndCompose"><span style=3D"color:#1F=
497D"><o:p>&nbsp;</o:p></span></a></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b>From:</b> Deepti Rathi [mailto:deeptir@juniper.ne=
t] <br>
<b>Sent:</b> luned=EC 5 luglio 2021 04:21<br>
<b>To:</b> Deepti Rathi &lt;deeptir@juniper.net&gt;; Italo Busi &lt;Italo.B=
usi@huawei.com&gt;<br>
<b>Cc:</b> draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org; mpls-chairs@ie=
tf.org; mpls@ietf.org<br>
<b>Subject:</b> RE: MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-=
fec<o:p></o:p></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Thanks Italo for the comments.<o:p></o:p></p>
<p class=3D"MsoPlainText">I have posted the new version of draft taking car=
e of all the review comments.<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Regards,<o:p></o:p></p>
<p class=3D"MsoPlainText">Deepti<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"msipfooter30b3d538" align=3D"center" style=3D"margin:0cm;margin=
-bottom:.0001pt;text-align:center">
<span style=3D"font-size:7.0pt;color:black">Juniper Business Use Only</span=
><o:p></o:p></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b>From:</b> Deepti Rathi &lt;<a href=3D"mailto:deep=
tir@juniper.net">deeptir@juniper.net</a>&gt;
<br>
<b>Sent:</b> Thursday, June 17, 2021 7:08 PM<br>
<b>To:</b> Italo Busi &lt;<a href=3D"mailto:Italo.Busi@huawei.com">Italo.Bu=
si@huawei.com</a>&gt;<br>
<b>Cc:</b> <a href=3D"mailto:draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.o=
rg">draft-rathi-mpls-egress-tlv-for-nil-fec@ietf.org</a>;
<a href=3D"mailto:mpls-chairs@ietf.org">mpls-chairs@ietf.org</a>; <a href=
=3D"mailto:mpls@ietf.org">
mpls@ietf.org</a><br>
<b>Subject:</b> Re: MPLS-RT review for draft-rathi-mpls-egress-tlv-for-nil-=
fec<o:p></o:p></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Hi Italo,<o:p></o:p></p>
<p class=3D"MsoNormal">Please find my comments inline.<o:p></o:p></p>
<p class=3D"MsoNormal">I will update draft for:<o:p></o:p></p>
<ol style=3D"margin-top:0cm" start=3D"1" type=3D"1">
<li class=3D"MsoNormal" style=3D"mso-list:l0 level1 lfo3">why &#8220;NIL FE=
C &#43; EGRESS TLV&#8221; and not Generic IPV4/IPV6 FEC.<o:p></o:p></li><li=
 class=3D"MsoNormal" style=3D"mso-list:l0 level1 lfo3">Backward compatibili=
ty.<o:p></o:p></li></ol>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Regards,<o:p></o:p></p>
<p class=3D"MsoNormal">Deepti<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"msipfooter30b3d538" align=3D"center" style=3D"margin:0cm;margin=
-bottom:.0001pt;text-align:center">
<span style=3D"font-size:7.0pt;color:black">Juniper Business Use Only</span=
><o:p></o:p></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b>From:</b> mpls &lt;<a href=3D"mailto:mpls-bounces=
@ietf.org">mpls-bounces@ietf.org</a>&gt;
<b>On Behalf Of </b>Italo Busi<br>
<b>Sent:</b> Monday, June 14, 2021 7:26 PM<br>
<b>To:</b> 'mpls@ietf.org' &lt;<a href=3D"mailto:mpls@ietf.org">mpls@ietf.o=
rg</a>&gt;<br>
<b>Subject:</b> [mpls] MPLS-RT review for draft-rathi-mpls-egress-tlv-for-n=
il-fec<o:p></o:p></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal" style=3D"line-height:12.0pt;background:#FFEB9C"><b><=
span style=3D"font-size:10.5pt;font-family:Lato;color:black">[External Emai=
l. Be cautious of content]<o:p></o:p></span></b></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class=3D"MsoNormal">Hi all,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I have been selected as one of the&nbsp; MPLS-RT rev=
iewers of draft-rathi-mpls-egress-tlv-for-nil-fec-04<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;&gt;IMHO, being able to use LSP Ping/Traceroute =
perform to validate only the data path and not the control plane state make=
s sense but I think that the draft requires more information about the prob=
lem that &gt;&gt;it is trying to address and why
 existing solutions are not suitable<o:p></o:p></p>
<p class=3D"MsoNormal"><b>[Deepti]: <o:p></o:p></b></p>
<p class=3D"MsoNormal">NIL FEC is used to traverse the path without validat=
ion for cases where the FEC is not defined or routers are not upgraded to s=
upport the new FECs (like newer features, explicit-null, router-alert etc).=
<o:p></o:p></p>
<p class=3D"MsoNormal">But it is a very powerful tool to check any combinat=
ion of segments on any data path.<o:p></o:p></p>
<p class=3D"MsoNormal">Since it does not carry any information to identify =
the intended egress/destination,
<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt;text-indent:-18.0pt;mso-=
list:l4 level1 lfo6">
<![if !supportLists]><span style=3D"font-family:Wingdings"><span style=3D"m=
so-list:Ignore">n<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&nb=
sp;
</span></span></span><![endif]>Mis-forwarding of the packet is possible <o:=
p></o:p></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt;text-indent:-18.0pt;mso-=
list:l4 level1 lfo6">
<![if !supportLists]><span style=3D"font-family:Wingdings"><span style=3D"m=
so-list:Ignore">n<span style=3D"font:7.0pt &quot;Times New Roman&quot;">&nb=
sp;
</span></span></span><![endif]>Not possible to figure out mis-configuration=
 of label stack<o:p></o:p></p>
<p class=3D"MsoNormal">But in any case it will always return success even t=
hough egress/destination is not the intended one which is not desired.<o:p>=
</o:p></p>
<p class=3D"MsoNormal">To overcome this and to provide minimal validation, =
EGRESS TLV is added in the packet. This will help to do egress/destination =
validation.<o:p></o:p></p>
<p class=3D"MsoNormal">NIL FEC processing will be same as defined in RFC 80=
29. This draft is for addition of EGRESS TLV as extension to NIL FEC for pa=
th egress/destination validation.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;Let me try to clarify my confusion after having =
read the draft<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;Unless I am missing something, section 4.4.1 of =
RFC8029 already provides support for checking only the data path and not th=
e control plane state:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;&nbsp; If the outermost FEC of the Target FEC st=
ack is the Nil FEC, then the<o:p></o:p></p>
<p class=3D"MsoNormal">&gt; node MUST skip the Target FEC validation comple=
tely.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;The draft mention some challenges with the curre=
nt definition, but it seems describing only one potential issue:<o:p></o:p>=
</p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;&nbsp;&nbsp; ... When router in the label-stack =
path<o:p></o:p></p>
<p class=3D"MsoNormal">&gt;&nbsp;&nbsp; receives MPLS ping/traceroute packe=
ts, there is no definite way to<o:p></o:p></p>
<p class=3D"MsoNormal">&gt;&nbsp;&nbsp; decide on whether its egress or tra=
nsit since Nil FEC does not carry<o:p></o:p></p>
<p class=3D"MsoNormal">&gt;&nbsp;&nbsp; any information.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;However, I am not sure about this issue: looking=
 at the example in the draft, my understanding is that R7 will reply with c=
ode 3 while, in traceroute, the intermediate nodes will reply with code 8.<=
o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;Reading the procedure in section 4.2, I am wonde=
ring whether the real intention is to be able to validate the prefix X in R=
7, rather than the SR path toward R7.
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;However, in this case, it is not clear why using=
 a FEC for the prefix X instead of the Nil FEC is not suitable.<o:p></o:p><=
/p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><b>[Deepti]: </b>The real intention is to reach the =
correct egress/destination node.
<o:p></o:p></p>
<p class=3D"MsoNormal">The details of generic FEC and validation procedures=
 are not very detailed in the RFC 8029.<o:p></o:p></p>
<p class=3D"MsoNormal">The use-case mostly specifies inter-AS VPNs as the m=
otivation.
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Certain aspects of Segment Routing such as anycast S=
IDs required clear guideline on how the validation procedure should work.<o=
:p></o:p></p>
<p class=3D"MsoNormal">Also Generic FEC may not be widely supported and if =
transit routers are not upgraded to support validation of generic FEC, trac=
eroute may fail.<o:p></o:p></p>
<p class=3D"MsoNormal">So instead of adding such clarifications to generic =
FEC, we went with new EGRESS TLV in Nil FEC.<o:p></o:p></p>
<p class=3D"MsoNormal">Its an optional TLV so the procedures will work fine=
 even if transit routers are not upgraded.<o:p></o:p></p>
<p class=3D"MsoNormal">While we clearly specify the processing of egress tl=
v so that all SR cases are well specified.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Since explicit path can be created using node-sid, a=
dj-sid, binding-sid, anycast-sids etc. EGRESS TLV prefix will be derived fr=
om path egress/destination and not based on labels used in the path to reac=
h the destination.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I will update introduction section of draft with thi=
s comparison.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&gt;&gt;I also think that section 5 requires more de=
tails about how backward compatibility is achieved. What is the behavior of=
 a node that does not support this solution when it receives the EGRESS TLV=
?<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><b>[Deepti]:<o:p></o:p></b></p>
<p class=3D"MsoNormal">Backward compatibility on egress-node:<o:p></o:p></p=
>
<p class=3D"MsoNormal">On egress/destination, it will ignore EGRESS TLV and=
 use current NIL-FEC procedure with return code 3 but egress validation wil=
l not be done (same as RFC 8029). So we wont know for sure if packet has re=
ached the correct path egress.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Backward compatibility on transit-node:<o:p></o:p></=
p>
<p class=3D"MsoNormal">If the transit node doesn&#8217;t support, it will u=
se current NIL-FEC procedure and send return code of 8.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I will add section in draft for backward compatibili=
ty.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Italo<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</div>
</div>
</body>
</html>

--_000_93cecf5e94e14269ac77127fdf7eee73huaweicom_--

