Hi!

In general I believe that use case documents have a very limited purpose and 
lifetime.  While guiding the WG in the type of problems that need to be solved 
is very valuable, the usefulness mostly ends there.

I would like to ask the WG to consider not publishing this document.  Some of 
the reasons behind me asking for this consideration are that not all the use 
cases seem to add new requirements, they are just examples of different 
instances of expressing the same need, and that there may be many more similar 
examples — this last point from some of the text in the Introduction [1].  I 
think that it would then be better to keep them all in a place where the WG can 
easily update them (without going through the publication process), a wiki or a 
long-lived ID, for example.

I’m talking about requirements because even though this document says that 
“certain requirements could be derived to be used as reference”, the S-BFD base 
document says that it “extends BFD to provide solutions to use cases listed in 
[I-D.ietf-bfd-seamless-use-case].”  If solutions are created then it would be 
nice to clearly know what the requirements are.

If there is still WG consensus to publish this document, I would like to see 
the readability improved and the requirements clarified.  See my detailed 
comments below.  I will keep the document in AD Evaluation (and not return it 
to the WG) at least until a decision has been made.

Thanks!

Alvaro.

[1] “…use cases could be used as reference for certain requirements, it is 
outside the scope of this document to identify all of the requirements for all 
possible enhancements."


Major:

  1.  Requirements.  If there are going to be requirements listed in this 
document, please be specific on what they are.  It would be helpful for 
tracking if they were also clearly identified.  No need for normative language, 
I’m mostly looking for clarity and ease.  Some comments:
     *   3.1. (Unidirectional Forwarding Path Validation) "The primary 
requirement in this use case is to enable session establishment from source 
network entity to target network entity.”  If this is the primary requirement, 
what are the other ones?  Is the requirement itself that only the source should 
have to be provisioned beforehand?
     *   3.2. (Validation of forwarding path prior to traffic switching)  “It 
will be desirable to perform BFD validation very quickly to allow applications 
to utilize dynamically created LSPs in a timely manner.”  Is that the 
requirement that comes out of this use case?  Is it optional (“desirable”)?  
What do “very quickly” and “in a timely manner" mean?  This section starts with 
a generic description of the use case, I’m assuming the requirement is general 
as well and not just applicable to “dynamically created LSPs”.
        *   The use case in Section 3.3. (Centralized Traffic Engineering) 
seems to also be calling for the ability "to instantly verify a forwarding 
path”.  What does “instantly” mean?  Are there other requirements that come 
from this section?
     *   3.4. (BFD in Centralized Segment Routing) “In validating this use 
case, one of the requirements is to ensure the BFD packet's behavior is 
according to the requirement and monitoring of the segment…”  
I-D.geib-spring-oam-usecase doesn’t mention BFD — I know it implies it in a 
more generic way.  For the purposes of this document, I don’t think it’s enough 
to to just say that “one of the requirements..is according to the 
requirements..of the segment” — in essence it seems like this document is just 
pointing the reader to the other document to figure out what needs to be done.  
Maybe a better reference for requirements is 
draft-ietf-spring-sr-oam-requirement.  It would also be nice to at least 
highlight the places where this use case introduces new requirements and why.
     *   3.5. (BFD Efficient Operation Under Resource Constraints) “…it is 
desirable for BFD to…”  and 3.9. (MPLS BFD Session Per ECMP Path) "it may be 
desirable to run in-band monitoring…”    Optional?
     *   3.6. (BFD for Anycast Address)  The requirement here is ???
     *   3.7. (BFD Fault Isolation)  "If BFD had built-in fault isolation 
capability…”  and 3.8. (Multiple BFD Sessions to Same Target) "if a node was to 
run multiple BFD sessions to targets…”   Conditional form..

Minor:

  1.  Some of the text needs to be cleaned up because it is repetitive.
     *   Introduction: "Bidirectional Forwarding Detection (BFD) is a 
lightweight protocol…used to detect forwarding failures.  Various protocols and 
applications rely on BFD for failure detection.  Even though the protocol is 
simple and lightweight, there are certain use cases, where faster setting up of 
sessions…This document identifies use cases…BFD was designed to be a 
lightweight "Hello" protocol to detect data plane failures…speed at which these 
sessions could be established…This document specifically identifies those 
cases…”
     *   Section 2. (Introduction to Seamless BFD): “In order for BFD to be 
able to initially verify that a connection is valid…such that this information 
can be used to verify that the connection is valid."
  2.  Solutions are outside the scope of this document.  There are several 
places where the text starts to describe the (potential at this point) behavior 
of S-BFD.  That should be left to the solution document.  Some examples:
     *   2. (Introduction to Seamless BFD): "As an example of how Seamless BFD 
(S-BFD) might work…”
     *   3.1. (Unidirectional Forwarding Path Validation): "But with 
unidirectional BFD,..”, and "This translates to…”
     *   3.2. (Validation of forwarding path prior to traffic switching): "This 
use case does not require to have sequences…”, and "When these sequences for 
handshake…”
     *   3.9. (MPLS BFD Session Per ECMP Path)  "One way to achieve BFD session 
per ECMP path of LSP is…"
     *   Note that if this document was maintained as a sustaining reference, 
then it would be easier to edit and add the specifics of how the requirements 
are satisfied.
  3.  Section 3. (Use Cases): “This section outlines some use cases where the 
existing mechanism may not be able to satisfy the requirements.”  May not?  
Does that mean that for some of the use cases the existing mechanisms can 
satisfy the requirements?  Which ones?

Nits:

  1.  Missing references.
     *   1.1 "The reader is expected to be familiar with the BFD, IP, MPLS and 
Segment Routing (SR) terminology and protocol constructs."
     *   3.7 "BFD multi-hop and BFD MPLS…"
  2.  Section 3. (Use Cases).  “…some of the use cases also be identify the 
need for…”  ??
  3.  Section 3.5. (BFD Efficient Operation Under Resource Constraints) “?”
  4.  Section 3.8. (Multiple BFD Sessions to Same Target)  s/as relevant 
network nodes continuously transmitting BFD packets at negotiated rate/as 
relevant network nodes continuously transmit BFD packets at negotiated rates
  5.  Section 4. (Security Considerations)  The statement made seems right, but 
at least mention why.  Related: are there no new security requirements/use 
cases?

Reply via email to