Re: [Bier] Review Comments - draft-ietf-bier-bar-ipa-05

"Xiejingrong (Jingrong)" <xiejingrong@huawei.com> Mon, 04 November 2019 12:18 UTC

Return-Path: <xiejingrong@huawei.com>
X-Original-To: bier@ietfa.amsl.com
Delivered-To: bier@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BEB3D12004C; Mon, 4 Nov 2019 04:18:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Level:
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, 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 P03sYzJA9_Zj; Mon, 4 Nov 2019 04:18:19 -0800 (PST)
Received: from huawei.com (lhrrgout.huawei.com [185.176.76.210]) (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 2AEAE120058; Mon, 4 Nov 2019 04:18:19 -0800 (PST)
Received: from LHREML710-CAH.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id 5E525954627B80F17048; Mon, 4 Nov 2019 12:18:17 +0000 (GMT)
Received: from lhreml708-chm.china.huawei.com (10.201.108.57) by LHREML710-CAH.china.huawei.com (10.201.108.33) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 4 Nov 2019 12:18:17 +0000
Received: from lhreml708-chm.china.huawei.com (10.201.108.57) by lhreml708-chm.china.huawei.com (10.201.108.57) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1713.5; Mon, 4 Nov 2019 12:18:16 +0000
Received: from NKGEML414-HUB.china.huawei.com (10.98.56.75) by lhreml708-chm.china.huawei.com (10.201.108.57) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256) id 15.1.1713.5 via Frontend Transport; Mon, 4 Nov 2019 12:18:16 +0000
Received: from NKGEML514-MBX.china.huawei.com ([fe80::40a8:f0d:c0f3:2ca5]) by nkgeml414-hub.china.huawei.com ([10.98.56.75]) with mapi id 14.03.0439.000; Mon, 4 Nov 2019 20:18:05 +0800
From: "Xiejingrong (Jingrong)" <xiejingrong@huawei.com>
To: "Jeffrey (Zhaohui) Zhang" <zzhang@juniper.net>, "draft-ietf-bier-bar-ipa@ietf.org" <draft-ietf-bier-bar-ipa@ietf.org>
CC: BIER WG <bier@ietf.org>
Thread-Topic: Review Comments - draft-ietf-bier-bar-ipa-05
Thread-Index: AdV9jFJ+dTormCscQCKdYIHfTzcHKARM3l4QAREiEnA=
Date: Mon, 04 Nov 2019 12:18:04 +0000
Message-ID: <16253F7987E4F346823E305D08F9115AABA496E6@nkgeml514-mbx.china.huawei.com>
References: <16253F7987E4F346823E305D08F9115AAB9F103F@nkgeml514-mbx.china.huawei.com> <DM5PR05MB354821C57CB4B8C5F819BFC9D4600@DM5PR05MB3548.namprd05.prod.outlook.com>
In-Reply-To: <DM5PR05MB354821C57CB4B8C5F819BFC9D4600@DM5PR05MB3548.namprd05.prod.outlook.com>
Accept-Language: en-US, zh-CN
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.111.217.214]
Content-Type: multipart/alternative; boundary="_000_16253F7987E4F346823E305D08F9115AABA496E6nkgeml514mbxchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/bier/OUilGwWS9-pqXLbKJh7h2MJBNb8>
Subject: Re: [Bier] Review Comments - draft-ietf-bier-bar-ipa-05
X-BeenThere: bier@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "\"Bit Indexed Explicit Replication discussion list\"" <bier.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bier>, <mailto:bier-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bier/>
List-Post: <mailto:bier@ietf.org>
List-Help: <mailto:bier-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bier>, <mailto:bier-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Nov 2019 12:18:23 -0000

Hi Jeffrey,
Please find below my comments marked with [XJR]

Thanks
Jingrong

From: Jeffrey (Zhaohui) Zhang [mailto:zzhang@juniper.net]
Sent: Wednesday, October 30, 2019 9:52 AM
To: Xiejingrong (Jingrong) <xiejingrong@huawei.com>; draft-ietf-bier-bar-ipa@ietf.org
Cc: BIER WG <bier@ietf.org>
Subject: RE: Review Comments - draft-ietf-bier-bar-ipa-05

Hi Jingrong,

Thank you for shepherding the document. Please see zzh> below.

From: Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>>
Sent: Monday, October 7, 2019 11:56 PM
To: draft-ietf-bier-bar-ipa@ietf.org<mailto:draft-ietf-bier-bar-ipa@ietf.org>
Cc: BIER WG <bier@ietf.org<mailto:bier@ietf.org>>
Subject: Review Comments - draft-ietf-bier-bar-ipa-05

Hi authors,
I am assigned as Doc shepherd for this draft.
I think the document is useful to clarify the BAR/IPA field defined in RFC8401/RFC8444.
My main suggestion is adding some real examples of IPA/BAR to make this document more clear and deployable.
Please see below for the comments.

1. For the following rules 1# and #2, how if there are conflictions of BC(X) and RC(X)?
For example, BC(X) says “prefer RED links and exclude BLUE links”, while RC(X) says “prefer BLUE links and exclude RED links”.
   1.  Apply the BIER constraints, resulting in BC(X).
   2.  Apply the routing constraints, resulting in RC(BC(X)).
   3.  Select the algorithm AG as following:
       A.  If BA is NULL, AG is set to RA.
       B.  If BA is not NULL, AG is set to BA.
   4.  Run AG on RC(BC(X)).

Zzh> An operator would be expected to do the reasonable things and not specify conflicting BC and RC for a sub-domain. Even if he did specify conflicting BC and RC, the rules are clear – apply BC first and then RC. In your example, you end up with no links to use. I think that’s acceptable.
[XJR] I assume this is a point need to be pointed out, since it is useful for avoiding misconfiguration, and this document is intent to explain the BAR and IPA.

Should the combination of IPA/BAR be specified (following text be changed to new text) ?
[ORIG TEXT]
   When a new BAR value is defined, its corresponding BC/BA semantics MUST be specified.
   For a new IGP Algorithm to be used as a BIER IPA, its RC/RA semantics MUST also be clear.
[NEW TEXT]
   When a new BAR value is defined, its corresponding BC/BA semantics MUST be specified, and the combination of BAR and IPA MUST also be specified.
   For a new IGP Algorithm to be used as a BIER IPA, its RC/RA semantics MUST be specified, and the combination of BAR and IPA MUST also be specified.

Zzh> As long as BC/BA or RC/RA semantics are clear, the combination is clear once you apply the rules, right?
[XJR] the combination is not clear due to the following comments ---- combination of BAR and IPA is not only responsible for calculating the BFR-NBR of a BFER, but also responsible of calculating the next-hop of a non-directly-connected BFR-NBR.

2. For the function of bypassing Non-BIER routers (6.9 of RFC8279), this document is not clear.
Two possible options I can think of:
(a) Run AG on RC(BC(x)) to find the BFR-NBR of a BFER, and then run RA on RC(x) to find the IGP next-hop toward the BFR-NBR if BFR-NBR is not a directly connected NBR.
(b) Run AG on RC(BC(x)) to find the BFR-NBR of a BFER, and then run AG on RC(BC(x)) to find the IGP next-hop toward the BFR-NBR if BFR-NBR is not a directly connected NBR.

Zzh> I don’t follow the above. The spec does say that for a particular subdomain if your own BAR/IPA is different from a BFR’s, then that BFR is considered as not BIER capable and whatever method you use to deal with incapable routers apply. I think that’s straightforward.
[XJR] it is reasonable for me to describe the overall method of dealing with incapable routers in RFC8279, but this doc is responsible for making this more detailed, since it is a specification of BAR/IPA and may be used to address the incapable routers as a use case of BAR.

(a) looks better to me, since the finding of IGP next-hop toward the BFR-NBR seems to be a pure IGP behavior.
It is also notable that, incorrect combination of IPA and BAR may cause black hole of building a BIFT item to a BFER.
For example, a non-directly-connected BFR-NBR is found but the IGP next-hop toward the BFR-NBR could not be found according to the IPA+BAR.


3. For the above rule #1, the doc is not clear what does the BC(x) mean if BC = NULL. So does the rule #2 when RC = NULL.

Zzh> BC means BIER specific constraints. If BC is NULL it means no constraints.

4. I think one or two examples of IPA/BAR should be given to make it clear as an update to RFC8401/RFC8444.
(1)IPA = 0, and IPA = 1
IPA = 0 means that, RA = SPF based on link metric, RC = permit any node to overwrite the SPF path to the BFR-prefix of a BFR.
IPA = 1 means that, RA = SPF based on link metric, RC = Not permit overwriting the SPF path to the BFR-prefix of a BFR.

Text from draft-ietf-isis-segment-routing-extensions for reference:
      0: Shortest Path First (SPF) algorithm based on link metric.  This
      is the well-known shortest path algorithm as computed by the IS-IS
      Decision process.  Consistent with the deployed practice for link-
      state protocols, algorithm 0 permits any node to overwrite the SPF
      path with a different path based on local policy.

      1: Strict Shortest Path First (SPF) algorithm based on link
      metric.  The algorithm is identical to algorithm 0 but algorithm 1
      requires that all nodes along the path will honor the SPF routing
      decision.  Local policy MUST NOT alter the forwarding decision
      computed by algorithm 1 at the node claiming to support algorithm 1.

Zzh> It seems to me that the general rules are clear enough and adding the above examples only makes things more complicated?

(2)BAR = 0, and BAR = 1
BAR = 0 means that, BA = NULL, BC = NULL
BAR = 1 means that, BA = NULL, BC = exclude non-BIER routers

Zzh>  BAR 0 is already defined in 8401/8444. BAR 1 has not been officially defined (even thought it was used as an example in various discussions) and it’s not good to use it as an example here.
[XJR] Example is better than precept. One may find it difficult to define any new BAR/IPA according to this document if there is no examples, since the basic idea of BAR/IPA have been put in 8401/8444 since its proposal.

Is the above interpretation of IPA = 0 correct ?

Zzh> Honestly speaking I’m not good at interpreting IPA definitions.

If it is, then maybe the use of IPA/BAR = 1/1 is allowed, but IPA/BAR = 0/1 is not allowed ?

Zzh> I don’t see why 0/1 is not allowed. Using your example, BAR1 simply says excluding non-BIER routers, i.e. as if they don’t exist (or treated as always down). I don’t see why BAR 1 would conflict with ANY IPA.
[XJR] One may find a non-directly-connected BFR-NBR by using BAR+IPA, but may failed to find the next-hop of the non-directly-connected BFR-NBR according to IPA.

If IPA/BAR = 0/1 is used, run AG on RC(BC(x)) to get the non-directly-connected BFR-NBR of a BFER seems difficult.


5.  editorial suggestions:
The topology could be a default topology, a multi-topology [RFC5120] topology.
Suggested:
The topology could be a default topology, or a non-default topology as defined in [RFC5120].

For a particular topology X (which could be a default topology or multi-topolgy topology)
Suggested:
For a particular topology X (which could be a default topology or non-default topology)

Zzh> Sure I can change that.
Zzh> Thanks!
Zzh> Jeffrey

Thanks
Jingrong