Hi Adrian,
thank you for the review, detailed questions, and helpful suggestions. I'll
work through and respond within several days.

Regards,
Greg

On Mon, Oct 19, 2020 at 1:09 PM Adrian Farrel via Datatracker <
nore...@ietf.org> wrote:

> Reviewer: Adrian Farrel
> Review result: Has Issues
>
> Hello,
>
> I have been selected as the Routing Directorate reviewer for this draft.
> The
> Routing Directorate seeks to review all routing or routing-related drafts
> as
> they pass through IETF last call and IESG review, and sometimes on special
> request. The purpose of the review is to provide assistance to the Routing
> ADs.
> For more information about the Routing Directorate, please see
> http://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDir
>
> Although these comments are primarily for the use of the Routing ADs, it
> would
> be helpful if you could consider them along with any other IETF Last Call
> comments that you receive, and strive to resolve them through discussion
> or by
> updating the draft.
>
> Document: draft-ietf-bess-mvpn-fast-failover-11.txt
> Reviewer: Adrian Farrel
> Review Date: 2020-10-18
> IETF LC End Date: 2020-10-19
> Intended Status: Proposed Standard
>
> ==Summary:==
>
> I have some minor concerns about this document that I think should be
> resolved
> before publication.
>
> ==Comments:==
>
> This document is fairly easy to read, but demands a thorough understanding
> of
> RFCs 6513 and 6514. That is not unreasonable.
>
> I also hope that the IDR working group has had a good opportunity to review
> this work.
>
> ==Major Issues:==
>
> None
>
> ==Minor Issues:==
>
> Abstract
>
> I think the Abstract should mention explicitly that this document
> extends BGP (and how).
>
> ---
>
> Section 3 notes that the procedure (presumably the procedure defined
> in this section) is OPTIONAL. I didn't see anything similar in sections
> 4 and 5 stating that those procedures are optional. Presumably, since
> this document is not updating any other RFCs, all of these procedures
> are optional.
>
> Actually it would be good to clarify how all these procedures fit in
> with "legacy" deployments, and how they are all optional procedures. I
> think that needs a short statement in the Introduction and a small
> section of its own (maybe between 6 and 7).
>
> ---
>
> It is curious (to me) that 3.1.1 describes a way to know that a P-tunnel
> is up.  You don't say, however, if being unable to determine that the
> P-tunnel is up using this method is equivalent to determining that the
> P-tunnel is down. (Previously in 3.1 you have talked about the "tunnel's
> state is not known to be down".)
>
> By the way, do you ever say that a P-tunnel has just these two statuses
> (up and down) because that could make a big difference?
>
> Note that 3.1.2 etc also establish ways to know that the tunnel is up,
> but not ways to determine whether the tunnel is down.
>
> To reiterate, "I don't know if it is up" is not the same as "I know it
> is down."
>
> ---
>
> 3.1.2
>
>    Using this method when a fast restoration mechanism (such as MPLS FRR
>    [RFC4090]) is in place for the link requires careful consideration
>    and coordination of defect detection intervals for the link and the
>    tunnel.  In many cases, it is not practical to use both protection
>    methods at the same time.
>
> OK, I considered them carefully. Now what? :-)
>
> I think you have to give implementation guidance.
>
> ---
>
> All of 3.1.x are timid about the use of the mechanisms they describe.
>
> I think that the end of 3.1 should say that an implementation may choose
> to use any of these mechanisms to determine the status of the P-tunnel.
>
> This is quite stark, however, in 3.1.3 where you have...
>
>    When signaling state for a P2MP TE LSP is removed (e.g., if the
>    ingress of the P2MP TE LSP sends a PathTear message) or the P2MP TE
>    LSP changes state from Up to Down as determined by procedures in
>    [RFC4875], the status of the corresponding P-tunnel SHOULD be re-
>    evaluated.  If the P-tunnel transitions from Up to Down state, the
>    Upstream PE that is the ingress of the P-tunnel SHOULD NOT be
>    considered a valid UMH.
>
> The use of SHOULD and SHOULD NOT is puzzling. Is this "if this mechanism
> is being used, the status SHOULD..." or is it "if a P2MP MPLS-TE tunnel
> is being used, this mechanism SHOULD be used"? In the former case, the
> SHOULD is presumably a MUST. In the latter case, why is this worthy of
> BCP 14 language when:
> - this whole document is optional
> - the mechanisms in 3.1.x are all optional
>
> But 3.1.4, 3.1.5, 3.1.6, 3.1.7 also use BCP 14 language. I'm pretty sure
> you mean "if this mechanism is being used..."
>
> In case you determine to keep any use of "SHOULD" you need to describe
> under what circumstances an implementation might diverge from this
> strong advice.
>
> ---
>
> 3.1.6
>
> What should I do if I don't recognise or support the setting of the BFD
> Mode field?
>
> ---
>
> 4.1
>
>    The normal and the standby C-multicast routes must have their Local
>    Preference attribute adjusted
>
> Should this be "MUST"?
>
> ---
>
> 7.1
>
>    IANA is requested to allocate the BGP "Standby PE" community value
>    (TBA1) from the Border Gateway Protocol (BGP) Well-known Communities
>    registry.
>
> There are three ranges. You need to tell IANA which range to use.
> Presumably not Private Use (because they are not assigned). But do you
> want an assignment from the FCFS range or the Standards Action range?
>
> ==Nits:==
>
> Abstract
>
> Notwithstanding the terminology difference between "upstream" and
> "Upstream" defined in Section 2, the distinction made in the text
> here is unclear. I think that lowercase "upstream" would not be
> confusing in this text.
>
> ---
>
> Requirements Language
>
> Please move this to a new section 2.1 to be consistent with the RFC
> Editor style guide.
>
> ---
>
> Section 1
>
>    In the context of multicast in BGP/MPLS VPNs
>
> That could use a reference.
>
> ---
>
> Section 1
>
> I don't think the description of what is in which section of the
> document is quite accurate. Maybe the document has moved on? In any
> case, a more specific mention of which protocols are extended/modified
> would be good.
>
> I am pretty sure that the reader has no hope of understanding this work
> without having first read and absorbed RFC 6513 and RFC 6514. It would
> be worth adding a short statement like "It is assumed that the reader is
> familiar with the workings of multicast MPLS/BGP IP VPNs as described in
> [RFC6513] and [RFC6514]."
>
> ---
>
> Section 2
>
>    x-PMSI: I-PMSI or S-PMSI
>
> This is too brief!  I think you need.
>
>    PMSI: P-Multicast Service Interface
>    I-PMSI: Inclusive PMSI
>    S-PMSI: Selective PMSI
>    x-PMSI: Either an I-PMSI or an S-PMSI
>
> It would be also good to list the other imported terms:
>
>    P-tunnel: Provider-Tunnels
>    UMH: Upstream Multicast Hop
>
> I think you might collect some of the abreviations into a table in this
> section. MVPN, RD, RP, NLRI, VRF, EC, AC, MED, ...
>
> ---
>
> Section 3
>
> s/Section 5.1 [RFC6513]/Section 5.1 of [RFC6513]/
>
> ---
>
> Section 3 has
>
>    selection, which will result in the downstream PE to failover to the
>    Upstream PE, which is next in the list of candidates.
>
> The language is a little unclear. Maybe...
>
>    selection.  This will result in the downstream PE failing over to
>    use the next Upstream PE in the list of candidates.
>
> ---
>
> Section 3 has
>
>    Because of that, procedures described in Section 9.1.1 of [RFC6513]
>    MUST be used when using I-PMSI P-tunnels.
>
> Aren't those procedures already mandatory? That section of 6513 already
> uses "MUST" (although it oes go on to say that it might not be possible
> to apply the procedure and delegates processing to 9.1.2 and 9.1.3 -
> peculiarly using lowercase must for that delegation). I wonder whether
> you are saying "this case is covered by the procedures of Section 9.1.1
> of [RFC6513]" or are you actually defining new normative behaviour?
>
> ---
>
> Section 3
>
> s/tunnel' state/tunnel's state/
>
> ---
>
> Section 3.1 has
>
>    The
>    optional procedures proposed in this section also allow that all
>    downstream PEs don't apply the same rules to define what the status
>    of a P-tunnel is (please see Section 6)
>
> A little confusing. Maybe...
>
>    The
>    optional procedures described in this section also handle the case
>    the downstream PEs do not all apply the same rules to define what the
>    status of a P-tunnel is (please see Section 6)
>
> ---
>
> 3.1.2
>
>    A condition to consider a tunnel status as Up can be that the last-
>    hop link of the P-tunnel is Up.
>
> I like that you are using "Up" rather than "up". Maybe change throughout
> the document to use "Up" and "Down"?
>
> ---
>
> 3.1.6
>
> s/TLV 's Type/TLV's Type/
>
> ---
>
> 3.1.6.1
>
> You use "p2mp BFD Session" rather than using "P2MP". This looks
> intentional but also looks really odd. Section 7.2 uses "P2MP
> BFD Session".
>
> ---
>
> 3.1.7
>
> s/section 6.8.17 [RFC5880]/Section 6.8.17 of [RFC5880]/
>
> ---
>
> 4.
>
> s/section 5.1.3 [RFC6513]/Section 5.1.3 of [RFC6513]/
>
> OLD
>  VPN routes (VPN-IPv4 or VPN-IPv6) routes
> NEW
>  VPN routes (VPN-IPv4 or VPN-IPv6)
> END
>
> ---
>
> 4.
>
> s/would refer to/refers to/
>
> ---
>
> 4.1
>
>    As long as C-S is reachable via the Primary
>    Upstream PE and the Upstream PE is the Primary Upstream PE.
>
> This sentence doesn't seem to be complete. What is the consequence of
> this condition?
>
> ---
>
> 4.1
>
>    o  SHOULD carry the "Standby PE" BGP Community (this is a new BGP
>       Community.
>
> I think this needs guidance on when to not include the Community
>
> ---
>
> 4.1
>
>    Also, a LOCAL_PREF attribute MUST be set to zero.
>
> Maybe...
>
>    The LOCAL_PREF attribute MUST also be set to zero.
>
> ---
>
> 4.2
>
> You might want to tidy up whether you use "a)" and "b)" or "(a)" and
> "(b)"
>
> ---
>
> 4.4.1
>
> s/Additionally, to?Additional to/
>
> ---
>
> 4.4.2
>
>    When an Upstream ASBR receives a C-multicast route, and at least one
>    of the RTs of the route matches one of the ASBR Import RT, the ASBR,
>    that supports this specification, MUST locate an Inter-AS I-PMSI A-D
>    Route whose RD and Source AS respectively match the RD and Source AS
>    carried in the C-multicast route.  If the match is found, and the
>    C-multicast route carries the Standby PE BGP Community, then the ASBR
>    MUST perform as follows:
>
> Is that "MUST try to locate"? Because it seems to be countenanced that
> the attempt could fail.
>
> ---
>
> 4.4.2
>
> s/MED attribute set of/MED attribute set to/
>
> ---
>
> 5.
>
>    The mechanisms defined in sections Section 4 and Section 3 can be
>    used together as follows.
>
> That's an XML feature. If you do
> "...defined in <xref target="section4"/><xref target="section3"/>..."
> then XML2RFC will sort things out for you.  Seems to be OK a couple of
> paragraphs later.
>
> ---
>
> 5.
>
> s/semantic for is that/semantic is that/
>
> ---
>
> 6.
>
>    Multicast VPN specifications [RFC6513] impose that a PE only forwards
>    to CEs the packets coming from the expected Upstream PE
>    (Section 9.1).
>
> There being no section 9.1 in this document, I think you mean...
>    "(see Section 9.1 of [RFC6513])."
>
> Please also be clear in the next paragraph whether the references are to
> sections of this document (no need to qualify) or sections of RFC 6513
> (important to qualify).
>
> ---
>
> 6.
>
> OLD
>    We highlight the reader's attention to the fact that the respect of
> NEW
>    We draw the reader's attention to the fact that the respect of
> END
>
>
>
_______________________________________________
BESS mailing list
BESS@ietf.org
https://www.ietf.org/mailman/listinfo/bess

Reply via email to