Re: [bess] WGLC, IPR and implementation poll for draft-ietf-bess-mvpn-fast-failover

"Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net> Fri, 02 August 2019 17:51 UTC

Return-Path: <zzhang@juniper.net>
X-Original-To: bess@ietfa.amsl.com
Delivered-To: bess@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 434D1120251; Fri, 2 Aug 2019 10:51:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.net
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 tcQrSVJhDKma; Fri, 2 Aug 2019 10:51:28 -0700 (PDT)
Received: from mx0b-00273201.pphosted.com (mx0b-00273201.pphosted.com [67.231.152.164]) (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 63F3C12024B; Fri, 2 Aug 2019 10:51:28 -0700 (PDT)
Received: from pps.filterd (m0108162.ppops.net [127.0.0.1]) by mx0b-00273201.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x72HnO9T024430; Fri, 2 Aug 2019 10:51:26 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=Kx7Uy+QLeHVN1TC/un6vd/4gSLbVJaC3JARIVvrZW20=; b=L9Z/4xwg0P9jZp6fjMcfLdpX1ZR7Kq1zXWn+VoSj6yxSY+dTNsNPvA79eYZCFP8yXStO nvq7dumy/RU1lItTdwRKRWhSgxeA+QW6i+yI4/kkobFqAj0HELq5OGy4PtGOf3Y8iXbs 6b+7PGKmkxKVPr2IbvR3WtPd/dWvhmTe9naF/2MFXdEueLE3qajMQV+MfU0YSIssYcyE bu5M9MSY5Q+yP4Uqhb/umYg93bd/o4ngJ5OwBCKfB7IIEtXQe0MJrqjv7HfzMdgi1qmn XK7s9YDi90i29KVIHCeBbqPhCM3IbR1lr2Kza5izcxvlZwg5dGdj5mHNEawTFquCzd+/ Yg==
Received: from nam02-sn1-obe.outbound.protection.outlook.com (mail-sn1nam02lp2059.outbound.protection.outlook.com [104.47.36.59]) by mx0b-00273201.pphosted.com with ESMTP id 2u4se6r1qb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 02 Aug 2019 10:51:25 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MPjjrZqg1Cgvf8G+AHqpbdua/f3j6wQBsa6+i/ahVhCqV0iIysgPbS3fLyGPdxk2SsDP8l2+jZiMhZUQe+K6lIMmcoCoi2L88lYAamlfb/Z4gTt9vZya53voQBJtaGW8Vdz+0o102sYIQk+Pcj+YTOy60NNHulyuVDhNqzYuk5DTpsAd/7iytVL018ZkMrhYFjrrm4v6UV9uCiQlwBZcPRJjrZo2Ssia2l3QnlNsD2mStmJ2BY70f+GYrwvfvQOiLejfFH6qE56D4mic4XLkbElnQTx3kaeKuBT3dkMoX2BKgi/fb+ML4prdOW/2fdJSV9gXiVzTH7Xm6N4vnLd8IQ==
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-SenderADCheck; bh=Kx7Uy+QLeHVN1TC/un6vd/4gSLbVJaC3JARIVvrZW20=; b=MN7jc+Cmxnaz5pZRo5w+udW8EiVrg8LXq+9OW24iY25HAFH90J2424d3FZhfWrV/bY+nJlE8F3ZNSUY3N/fhNz+mZ8lvtfSffOWy9sgQ5yPzHB7sgoFpPbVketNGzDGflrUPEsDDvYmjYQEGGYJUfoAtelFMy4M+fm7bCi9GNGao/VCPwRV0oqR4aDvNpwPKn4Cm/5w9kHV4pLMZBNyM4zgOF/hN3dybG0ScJh1t6VoFkR+cIUhKbt9RipESpkczu+z8eGoYs2Nip/hWBlpKMIeI81OiDBFX9DWqMimWx6Nt9YTkLgN8amWRxMtf5ijTuTfBPVUqCSl9pQjGPYiw8g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=juniper.net;dmarc=pass action=none header.from=juniper.net;dkim=pass header.d=juniper.net;arc=none
Received: from DM5PR05MB3548.namprd05.prod.outlook.com (10.174.242.153) by DM5PR05MB2970.namprd05.prod.outlook.com (10.168.176.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2136.10; Fri, 2 Aug 2019 17:51:23 +0000
Received: from DM5PR05MB3548.namprd05.prod.outlook.com ([fe80::18d2:ef12:6593:9e2a]) by DM5PR05MB3548.namprd05.prod.outlook.com ([fe80::18d2:ef12:6593:9e2a%7]) with mapi id 15.20.2136.010; Fri, 2 Aug 2019 17:51:23 +0000
From: "Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net>
To: Greg Mirsky <gregimirsky@gmail.com>
CC: "bess-chairs@ietf.org" <bess-chairs@ietf.org>, "EXT - thomas.morin@orange.com" <thomas.morin@orange.com>, Robert Kebler <rkebler@juniper.net>, BESS <bess@ietf.org>
Thread-Topic: [bess] WGLC, IPR and implementation poll for draft-ietf-bess-mvpn-fast-failover
Thread-Index: AdSCOGobvyszpShjQe6cTmshOOxpcQGwJ0SwAPQjNQATOVJRcARi+wgABmfoLQAA1SowgA/sGpxg
Content-Class:
Date: Fri, 02 Aug 2019 17:51:23 +0000
Message-ID: <DM5PR05MB35486A07622B1E28E781AE08D4D90@DM5PR05MB3548.namprd05.prod.outlook.com>
References: <26502_1542873261_5BF660AD_26502_47_1_9E32478DFA9976438E7A22F69B08FF924B7752E9@OPEXCLILMA4.corporate.adroot.infra.ftgroup> <BL0PR05MB5025A934922FDDC316AFD2E4D4AC0@BL0PR05MB5025.namprd05.prod.outlook.com> <CA+RyBmXcu3b9dObX=G9vyHNJtEuJ4wWqMtQXvxCNxgNOSCsmWw@mail.gmail.com> <CO2PR05MB24550CC9932A560B1DC7B19BD44B0@CO2PR05MB2455.namprd05.prod.outlook.com> <CA+RyBmV6oigz+ODY9C6QEqkDQY1X+x=yDpWqPoiODyyqVeTwHA@mail.gmail.com> <DM5PR05MB354829730C814ADE41F373CFD4310@DM5PR05MB3548.namprd05.prod.outlook.com> <CA+RyBmWNmdavTzoeGK+b1Tz-am6foNJ=1c5Kz7iKJ1gc7Lsvcg@mail.gmail.com>
In-Reply-To: <CA+RyBmWNmdavTzoeGK+b1Tz-am6foNJ=1c5Kz7iKJ1gc7Lsvcg@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-product: dlpe-windows
dlp-version: 11.2.0.14
dlp-reaction: no-action
msip_labels: MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Enabled=True; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SiteId=bea78b3c-4cdb-4130-854a-1d193232e5f4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Owner=zzhang@juniper.net; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SetDate=2019-08-02T17:51:19.7061326Z; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Name=Juniper Business Use Only; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Application=Microsoft Azure Information Protection; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_ActionId=ed66c8fe-a7c9-415c-8502-422d4f4e975f; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Extended_MSFT_Method=Automatic
x-originating-ip: [66.129.241.10]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 2174e73b-443a-413d-f28a-08d7177208a3
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:DM5PR05MB2970;
x-ms-traffictypediagnostic: DM5PR05MB2970:
x-ms-exchange-purlcount: 2
x-ld-processed: bea78b3c-4cdb-4130-854a-1d193232e5f4,ExtAddr
x-microsoft-antispam-prvs: <DM5PR05MB297041A8A975C42B5CE9F16DD4D90@DM5PR05MB2970.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 011787B9DD
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(376002)(39860400002)(396003)(346002)(366004)(136003)(37854004)(51444003)(199004)(189003)(51744003)(60444003)(53946003)(86362001)(5070765005)(71190400001)(71200400001)(33656002)(561944003)(14454004)(25786009)(4326008)(2906002)(66066001)(55016002)(26005)(316002)(486006)(7736002)(186003)(476003)(790700001)(6116002)(478600001)(52536014)(54906003)(7696005)(5660300002)(68736007)(236005)(81166006)(14444005)(6436002)(446003)(66556008)(81156014)(6506007)(64756008)(1411001)(3846002)(30864003)(66446008)(229853002)(76116006)(66476007)(53546011)(6306002)(256004)(6246003)(66946007)(76176011)(9686003)(53936002)(6916009)(8936002)(99286004)(9326002)(102836004)(11346002)(8676002)(54896002)(74316002)(5024004)(579004); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR05MB2970; H:DM5PR05MB3548.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: a6gIHV4iJVRH7ZqmeB/KHdCYRnEp2KpdeOrRbmHRm8y0LIDMgorXEmOUlkA3xIDLFDKiw8zOaD/cZjRAe6UJCUITDgdkG+9Lr850GCQmgTKeXZOmm8OLyMl49vw4p8/8sg8VyW4l/qIRpBEkglTRhnNmhQur5GU/ab/o44eBDhBotO4loFrUK2Bl589sRP17oQ8LpPjIqxzq3E8uJImfkNjrb8S1Xe9dAdMviXZO8dnSMrKhrrfvpDPYgmuisS0Fs200MC2sIJAlP6/VEHGYvh3iaGOOcZ9IZSb+WVGYm49fN8htcatQZfVFaFEbh40HSXxq9eflGYhO/LYTbTzQfJgcBwxDd1gxIzG9eqr8IjlzgfxjTwfHAQRK5eN0Qg5wbdDD7+O/JIcc+dS2Arri52jJ4jIZA7oWMlPF2hbcJOE=
Content-Type: multipart/alternative; boundary="_000_DM5PR05MB35486A07622B1E28E781AE08D4D90DM5PR05MB3548namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: 2174e73b-443a-413d-f28a-08d7177208a3
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Aug 2019 17:51:23.3158 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: zzhang@juniper.net
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR05MB2970
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-08-02_07:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1908020186
Archived-At: <https://mailarchive.ietf.org/arch/msg/bess/Hyr7qv8e8k6_Stwdld0uIgjkX3o>
Subject: Re: [bess] WGLC, IPR and implementation poll for draft-ietf-bess-mvpn-fast-failover
X-BeenThere: bess@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: BGP-Enabled ServiceS working group discussion list <bess.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bess>, <mailto:bess-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bess/>
List-Post: <mailto:bess@ietf.org>
List-Help: <mailto:bess-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bess>, <mailto:bess-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Aug 2019 17:51:34 -0000

Hi Greg,

Sorry for the late response.
Please see zzh2> in snipped text below.

From: Greg Mirsky <gregimirsky@gmail.com>
Sent: Saturday, May 11, 2019 3:24 PM
To: Jeffrey (Zhaohui) Zhang <zzhang@juniper.net>
Cc: bess-chairs@ietf.org; EXT - thomas.morin@orange.com <thomas.morin@orange.com>; Robert Kebler <rkebler@juniper.net>; BESS <bess@ietf.org>
Subject: Re: [bess] WGLC, IPR and implementation poll for draft-ietf-bess-mvpn-fast-failover

Hi Jeffrey,
thank you for your consideration and the detailed comments with great suggestions. Please find my answers below under GIM3>> tag. Attached is the diff to highlight the updates.

Regards,
Greg

On Tue, May 7, 2019 at 7:43 AM Jeffrey (Zhaohui) Zhang <zzhang@juniper.net<mailto:zzhang@juniper.net>> wrote:
Hi Greg,

Most of changes are fine; though I suggest to replace the following:

   For P-tunnels of type P2MP MPLS-TE, the status of the P-tunnel is
   considered up if one or more of the P2MP RSVP-TE LSPs to the same PE,
   identified by the P-tunnel Attribute, are in Up state.

With the following:

   For P-tunnels of type P2MP MPLS-TE, the status of the P-tunnel is
   considered up if the sub-LSP to this downstream PE is in Up state.
GIM3>> Accept with one question. As this is the first sentence in the section, what is the PE we refer to as "this downstream PE"? Should we use "a downstream PE"?

Zzh2> Not sure what the right word is, but the point is that it is from a particular downstream PE’s point of view (I remember often seeing text like “this router” in RFCs).

Not all comments have been addressed, though. I trimmed some text below and highlighted the outstanding ones with “=============”. You may need to refer to my previous email for correlation/details.

Jeffrey

On Thu, Mar 14, 2019 at 3:04 AM Jeffrey (Zhaohui) Zhang <zzhang@juniper.net<mailto:zzhang@juniper.net>> wrote:
Thomas, Bob,

Some questions below for you. Some old, and some new.
 ==============================


Zzh> It’s not that the “rules … are not consistent”. It’s that by nature some PEs may think the tunnel is down while the others may think the tunnel is still up (because they’re on different tunnel branches), even when they follow the same rules. Traffic duplication in this case is also only with inclusive tunnels – so how about the following?

   Because all PEs may arrive at a different
   conclusion regarding the state of the tunnel,
   procedures described in Section 9.1.1 of [RFC 6513] MUST be used
   when using inclusive tunnels.
GIM3>> Got it, thx. Would s/may/could/ be acceptable to avoid questions about RFC2119-like language?

Zzh2> I think it should be a MUST – otherwise you get duplicates when different PEs pick different upstream PEs.

===============================
 Additionally, the text in section 3 seems to be more biased on Single Forwarder Election choosing the UMH with the highest IP address. Section 5 of RFC6513 also describes two other options, hashing or based on “installed UMH route” (aka unicast-based). It is not clear how the text in this document applies to hashing based selection, and I don’t see how the text applies to unicast-based selection. Some rewording/clarification are needed here.
GIM>> How would the use of an alternative UMH selection algorithm change documented use of p2mp BFD? Do you think that if the Upstream PE selected using, for example, hashing then defined use of BGP-BFD and p2mp BFD itself no longer applicable?

Zzh> It’s not that the alternative UMH selection algorithm change documented use of p2mp BFD. It’s the other way around – tunnel state changes the selection result. I guess hashing can still be used (this document only controls what goes into the candidate pool). For unicast based selection I thought it’d no longer work, but then I noticed the following:

   o  second, the UMH candidates that advertise a PMSI bound to a tunnel
      that is "down" -- these will thus be used as a last resort to
      ensure a graceful fallback to the basic MVPN UMH selection
      procedures in the hypothetical case where a false negative would
      occur when determining the status of all tunnels

Zzh> So this should still work, although Ideally, the PE advertising the next best route should be considered before going to the last resort (of using the PE advertising the best route but whose tunnel is down).
GIM3>> I hope I've got the idea. Below is the updated text (second becomes third and your proposal - second):
NEW TEXT:
   o  Second, the PE advertising the next best route is to be
      considered.

   o  Third, the UMH candidates that advertise a PMSI bound to a tunnel
      that is "down" -- these will thus be used as a last resort to
      ensure a graceful fallback to the basic MVPN UMH selection
      procedures in the hypothetical case where a false negative would
      occur when determining the status of all tunnels.

Zzh2> I checked the surrounding text in this draft and section 5.1.3 in RFC6513. I believe section 3 of this document, before its subsection 3.1 should be re-written as following:

3.  UMH Selection based on tunnel status

   Current multicast VPN specifications [RFC6513], section 5.1, describe
   the procedures used by a multicast VPN downstream PE to determine
   what the upstream multicast hop (UMH) is for a given (C-S, C-G).

   The procedure described here is an OPTIONAL procedure that consists
   of having a downstream PE take into account the status of P-tunnel
   rooted at each possible upstream PEs. Because the PEs could arrive at
   a different conclusion regarding the state of the tunnel, procedures
   described in Section 9.1.1 of [RFC6513] MUST be used when using
   inclusive tunnels.

   For a given downstream PE and a given VRF, the P-tunnel corresponding
   to a given upstream PE for a given (C-S, C-G) state is the S-PMSI
   tunnel advertised by that upstream PE for this (C-S, C-G) and
   imported into that VRF, or if there isn't any such S-PMSI, the I-PMSI
   tunnel advertised by that PE and imported into that VRF.

   There are three options specified in Section 5.1 of [RFC6513] for a
   downstream PE to select an Upstream PE.

   The first two options select the Upstream PE from a candidate PE set
   either based on IP address or a hashing algorithm. When used together
   with the optional procedure of considering the P-tunnel status as in
   this document, a candidate upstream PE is included in the set if it either

      A.  advertise a PMSI bound to a tunnel, where the specified tunnel
          is not known to be down or

      B.  do not advertise any x-PMSI applicable to the given (C-S, C-G)
          but have associated a VRF Route Import BGP attribute to the
          unicast VPN route for S (this is necessary to avoid
          incorrectly invalidating a UMH PE that would use a policy
          where no I-PMSI is advertised for a given VRF and where only
          S-PMSI are used, the S-PMSI advertisement being possibly done
          only after the upstream PE receives a C-multicast route for
          (C-S, C-G)/(C-*, C-G) to be carried over the advertised
          S-PMSI).

   If the resulting candidate set is empty, then the procedure is repeated
   without considering the P-tunnel status.

   The third option simply uses the installed UMH Route (i.e., the "best"
   route towards the C-root) as the Selected UMH Route, and its originating
   PE is the selected Upstream PE. With the optional procedure of
   considering P-tunnel status as in this document, the Selected UMH Route
   is the best one among those whose originating PE's P-tunnel is not "down".
   If that does not exist, the installed UMH Route is selected regardless
   of the P-tunnel status.

Zzh2> The reason is that for the candidate set is not ordered – it’s just a set to select from (either based on IP address or hashing).

========================================

zzh> BTW, the same applies to 3.1.7 as well.
GIM>> Agree

==================================

3.1.7.  Per PE-CE link BFD Discriminator

   The following approach is defined for the fast failover in response
   to the detection of PE-CE link failures, in which UMH selection for a
   given C-multicast route takes into account the state of the BFD
   session associated with the state of the upstream PE-CE link.

3.1.7.1.  Upstream PE Procedures

   For each protected PE-CE link, the upstream PE initiates a multipoint
   BFD session [I-D.ietf-bfd-multipoint] as MultipointHead toward
   downstream PEs.  A downstream PE monitors the state of the p2mp
   session as MultipointTail and MAY interpret transition of the BFD
   session into Down state as the indication of the associated PE-CE
   link being down.

Since the BFD packets are sent over the P2MP tunnel not the PE-CE link, my understanding is that the BFD discriminator is still for the tunnel and not tied to the PE-CE link; but different from the previous case, the root will stop sending BFD messages when it detects the PE-CE link failure. As far as the egress PEs are concerned, they don’t know if it is the tunnel failure or PE-CE link failure.

If my understanding is correct, the wording should be changed.
GIM>> There are other than stopping transmission of BFD control packets ways to distinguish two conditions for the egress PE. For example, the MultipointHead MAY set the State to AdminDown and continue sending BFD control packets. If and when PE-CE link restored to Up, the MultipointHead can set the state to Up in the BFD control packet.
===================== this needs more discussion =====
===== should be clear on which way is done – stop sending BFD message or use AdminDown
===== an PMSI may be used for many flows, which may use different PE-CE interfaces on the ingress PE. A downstream PE would not know which interface it should track for a particular flow.
GIM3>> Thank you for helping me to understand the problem with PE-CE and p2mp BFD. I've updated the paragraph is 3.1.7, I've found the better method to indicate the PE-CE link failure to the downstream. Also, stress that though it is likely that PE-CE association be 1:1, it is outside the scope of the draft. Please let me know if the new text addresses your questions:
NEW TEXT:
   The following approach is defined for the fast failover in response
   to the detection of PE-CE link failures, in which UMH selection for a
   given C-multicast route takes into account the state of the BFD
   session associated with the state of the upstream PE-CE link.
   According to section 6.8.17 [RFC5880], failure of a PE-CE link MAY be
   communicated to the downstream PE by setting the bfd.LocalDiag of the
   p2mp BFD session associated with this link to Concatenated Path Down
   and/or Reverse Concatenated Path Down.  The mechanism to communicate
   the mapping between the PE-CE link and the associated BFD session is
   outside the scope of this document.

Zzh2> Because you still want to track the tunnel state (in addition to pe-ce interface state), you would need at least two discriminators – one for the tunnel and one for the PE-CE link. However, the new “BGP- BFD attribute” defined in this spec only accommodates one discriminator (and my understanding is that you can’t have more than one of the same attribute).
Zzh2> The simplest solution is that just use the same discriminator (vs. per PE-CE link discriminator). With that, the ENTIRE section 3.1.7 (including its subsections) become the following:

3.1.7 Tracking upstream PE-CE link status

   In case the PE-CE link on an upstream PE failed, even though the provider tunnel is still up,
   It is desired for the downstream PEs to switch to a backup upstream PE. To achieve that,
   If the upstream PE detects that its PE-CE link fails, it SHOULD set the bfd.LocalDiag of the
   p2mp BFD session to Concatenated Path Down and/or Reverse Concatenated Path Down,
   unless it switches to a new PE-CE link immediately (in that case the upstream PE will start tracking
   the status of the new PE-CE link).
   When a downstream PE receives that bfd.LocalDiag code, it treats as if the tunnel itself
   failed and tries to switch to a backup PE.

   …  If the route to the
   src/RP changes such that the RPF interface is changed to be a new PE-
   CE interface, then the upstream PE will update the S-PMSI A-D route
   with included BGP-BFD Attribute so that value of the BFD
   Discriminator is associated with the new RPF link.

If the RPF interface changes on the upstream PE, why should it update the route to send a new discriminator? As long as there is a new RPF interface couldn’t the upstream PE do nothing but start tracking the new RPF interface?
GIM>> I'll defer this one to Thomas and Rob.
===========================================
Zzh> I re-read section 3.1.6 and 3.1.7 and have more questions 😊
Zzh> 3.1.6 seems to be about tracking tunnel itself while 3.1.7 is about tracking PE-CE interfaces. From an egress point of view, (how) does it know if the discriminator is for the tunnel or for PE-CE interface 1 or PE-CE interface 2? Does it even care? It seems to me that an egress PE would not need to care. If so, why are there different procedures for 3.1.6/3.1.7 (at least for the egress PE behavior)? Even for the upstream PE behavior, shouldn’t 3.1.6.1 apply to 3.1.7 as well?
GIM>> Added the following text to the first paragraph of section 3.1.7:
NEW TEXT:
The mechanism to communicate the mapping between the PE-CE link
and the associated BFD session is outside the scope of this document.

=============== the above added text does not address my questions
Zzh2> The above was still outstanding, but with my proposed new 3.1.7 section it is fine.

Regardless which way (the currently described way and my imagined way), some text should be added to discuss how the downstream would not switch to another upstream PE when the primary PE is just going through a RPF change.
GIM>>  Would appending the following text be acceptable to address your concern:
NEW TEXT:
   To avoid unwarranted switchover a downstream PE MUST gracefully handle the
   updated S-PMSI A-D route and switch to the use of the associated BFD
   Discriminator value.
================= how that is done needs to be discussed
GIM3>> I think that this is implementation issue and we just point to the recommended behavior without prescribing what steps must be taken to achieve it.
Zzh2> What is specified is not enough for even vendor-dependent implementation. On the other hand, it is no longer a problem with my newly proposed section 3.1.7.
Zzh2> One more zzh2> comment below.

4.  Standby C-multicast route

   The procedures described below are limited to the case where the site

   that contains C-S is connected to exactly two PEs. The procedures
   require all the PEs of that MVPN to follow the single forwarder PE
   selection, as specified in [RFC6513].


Why would it not work with more than two upstream PEs?
Why is it limited to single forwarder selection? What about unicast based selection?
GIM>> Again, asking for Thomas and Rob to help.
Zzh2> I suggest we remove this paragraph. OK I see it’s already removed.
Zzh2> Jeffrey

Juniper Internal


Juniper Business Use Only