Completely agree with Chris.

Moreover having the algorithm part described clearly inside the main paragraphs 
of the document rather than the appendix is completely inline with what has 
been done for basic LFA specification (RFC 5286 Paragraph 3.6 - Selection 
procedure).

As mentioned by Chris, it is important to mention that rLFA alternate must not 
be dependant on any direct LFA selection. rLFA must be able to rely on any LFA 
(Extended P Space) whatever this LFA is best or not.


Stephane


De : [email protected] [mailto:[email protected]] De la part de Chris 
Bowers
Envoyé : jeudi 10 octobre 2013 19:00
À : [email protected]
Objet : RE: algorithm description for draft-ietf-rtgwg-remote-lfa

Stewart proposed in another thread making this algorithm text part of an 
appendix (see snippet below.)  I want to emphasize the importance of adding 
more quantitative content to the normative sections of the text, by 
illustrating an example of the confusion created by some of the current text.

Today I was in a discussion regarding the criteria for evaluating for use as a 
tunnel endpoint, a node Y in extended-P space which is reachable from source S 
by way of S's neighbor N1.  Some confusion arose during the discussion over 
whether or not the node Y should be rejected for consideration if policy had 
been applied rejecting N1 as a (local)LFA for reaching Y.  We agreed that the 
evaluation of Y as a tunnel endpoint for remote LFA should not depend on the 
policy applied to the (local)LFA to reach Y.

However, the text below in section 4.2.2 leads to confusion on this point.

"Another way to describe extended P-space is that it is the union of (
un-extended ) P-space and the set of destinations for which S has a
per-prefix LFA protecting the link S-E."

I think this text should be removed and replaced with precise quantitative 
criteria for membership in extended P-space.  It is likely that remote LFA will 
be deployed together with (local)LFA with policy determining which type of 
alternate to use (draft-litkowski-rtgwg-lfa-manageability).  Describing remote 
LFA in terms of (local)LFA will create confusion for someone trying to apply 
policy. Quantitative criteria avoid this confusion.

If this text creates such confusion among experts, it is likely to create even 
more confusion among end-users of the technology, when trying to figure out 
what is really going on in their network.  While one might argue that this 
behavior is up to the vendor to document, confusing text in the base rlfa draft 
will make that task much more difficult.

---------
A response to this algorithm text showed up in another thread so I am cutting
and pasting Stewart Bryant's response from 10/2/13 to this thread to keep 
things organized.

[SB] "I plan to put in the algorithm text, although having discussed
this with Mike, our inclination is to include this as an
appendix since it is not required for interoperability that
you do the computation that way."
---------

Chris


From: [email protected]<mailto:[email protected]> 
[mailto:[email protected]] On Behalf Of Chris Bowers
Sent: Wednesday, September 04, 2013 4:22 PM
To: [email protected]<mailto:[email protected]>
Subject: algorithm description for draft-ietf-rtgwg-remote-lfa

As has been pointed out in other email threads,
the current version of draft-ietf-rtgwg-remote-lfa-02.txt
lacks a formal description of the algorithm being proposed.
Below is a such a formal algorithm description, based on my
reading of the current draft.  It would help progress this
draft forward if the authors would correct any errors
in this pseudo-code representation of the algorithm.

The pseudo-code below avoids unnecessary SPF computations, but
for the sake of readability, it does not otherwise try to
optimize the code.

Remote LFA algorithm

Compute_and_Store_Forward_SPF(node root)
    Compute_Forward_SPF(root)
    foreach node z in network
        store D_opt(root,z)

Compute_and_Store_Reverse_SPF(node root)
    Compute_Reverse_SPF(root)
    foreach node z in network
        store D_opt(z,root)

Compute_Neighbor_SPFs()
    foreach interface intf in self
        if (intf.remote_node != fail_intf.remote_node)
            Compute_and_Store_Forward_SPF(intf.remote_node)

Compute_Extended_P_Space()
    foreach node y in network
        y.in_extended_P_space = false
        if (D_opt(self, y) <
                D_opt(self, fail_intf.remote_node) + 
D_opt(fail_intf.remote_node,y))
            y.in_extended_P_space = true
        foreach interface intf in self
            if (intf.remote_node != fail_intf.remote_node)
                if ( D_opt(intf.remote_node, y) < D_opt(intf.remote_node, self) 
+
                        D_opt(self,fail_intf.remote_node) +
                        D_opt(fail_intf.remote_node,y) )
                    y.in_extended_P_space = true

Compute_Q_Space()
    Compute_and_Store_Reverse_SPF(fail_intf.remote_node)
    foreach node y in network
        if ( D_opt(y,fail_intf.remote_node) < D_opt(y,self) +
                D_opt(self,fail_intf.remote_node) )
            y.in_Q_space = true
        else
            y.in_Q_space = false

Intersect_Extended_P_and_Q_Space()
    foreach node y in network
        if ( y.in_extended_P_space && y.in_Q_space )
            y.valid_tunnel_endpoint = true
        else
            y.valid_tunnel_endpoint = false

Apply_Downstream_Constraint()
    foreach node y in network
        if (y.valid_tunnel_endpoint)
            Compute_and_Store_Forward_SPF(y)
            if ((D_opt(y,dest) < D_opt(self,dest))
                y.valid_tunnel_endpoint = true
           else
                y.valid_tunnel_endpoint = false

Compute_Neighbor_SPFs()
Compute_Extended_P_Space()
Compute_Q_Space()
Intersect_Extended_P_and_Q_Space()
if (guarantee_no_looping_on_worse_than_protected_failure)
    Apply_Downstream_Constraint()

**********

I would also like to propose that the following text to be
inserted after the last paragraph of
section 4.2.1. "Computing Repair Paths".

It should be noted that using the Q-space of E as a proxy for the Q-space
of each destination can result in failing to identify valid remote LFAs.
The extent to which this reduces the effective protection coverage is
topology dependent.

***********

Thanks,
Chris



_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations 
confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce 
message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages 
electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou 
falsifie. Merci.

This message and its attachments may contain confidential or privileged 
information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete 
this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been 
modified, changed or falsified.
Thank you.

_______________________________________________
rtgwg mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/rtgwg

Reply via email to