Subject: [mpls] Graceful restart - inter-protocol dependencies

From: David Charlap <[email-masked]>
Date: Wed, 28 Sep 2005 14:37:09 -0400

Is there any point to implementing RSVP-TE's graceful restart without 
also implementing graceful restart for routing protocols?

On the one hand, RSVP doesn't require routing to recover LSPs.  It knows 
the next-hop interface, because of the preserved data-plane connection. 
  Whatever other information it may need, the switch can either preserve 
this information or recover it from a neighbor using the RecoveryPath 
object (draft-ietf-ccamp-rsvo-restart-ext-03).

On the other hand, nodes more than one hop upstream of the failure will 
detect the loss of routing-connectivity to the failed node if IGP 
graceful restart is not also implemented.  They may reroute the LSP away 
from the failed node, or tear it down altogether, even though the data 
plane is still active and RSVP graceful restart is recovering the 
control-plane state.

An originating node may consider the destination unreachable, as a 
result of losing the routes even though the data-plane for the LSP is 
still up (which can be confirmed via OAM.)

A transit node, when processing an loose ERO-hop, may choose to reroute 
or fail the LSP if its local topology information says that the failed 
(and restarting) node is not available.  It might even choose to do this 
for an established LSP, as a result of Path refresh processing.

My questions are:

1: Does this mean it's pointless to use RSVP graceful restart without
    also using IGP graceful restart (for whatever IGP is active).

2: Is IGP graceful restart sufficient to prevent this problem?  For
    instance, OSPF's restart procedure requires all preserved state to
    be thrown away if a topology change is detected.

3: An originating node can use OAM to validate the data plane of an
    LSP, and choose to ignore what routing tells it about the
    destination's reachability.  But what about transit nodes?  As far
    as I know, MPLS doesn't support segment-OAM, and it would be
    prohibitive for every transit node to run its own OAM streams
    to detect self-to-end connectivity.

4: Are there other solutions to this problem?

One possible solution might be route-pinning, but RSVP doesn't have a 
built-in mechanism for this.  The usual workaround (signal the LSP, 
requesting route-recording, then turn the RRO into an ERO for subsequent 
refreshes) can work, but are there situations where even this would be 
insufficient to prevent a transit node from rerouting/tearing the 
connection in this particular situation (where RSVP is doing a graceful 
restart but the IGP is not)?

-- David

_______________________________________________
mpls mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mpls

---

From: [email-masked]
Date: Thu, 29 Sep 2005 16:37:04 +0100

Thanks David....it's not simply how they *should* work its how they
*must* work if one wants to be able to offer network services to
customers that have deterministic behaviour, ie one has precise (and it
also should be simple) control over traffic/fault/performance management
facets.

A full service operator like BT needs all 3 networking modes working in
concert...and they are for sure different.  Understanding *why* they are
different at fundamental level has taken us a while to properly figure
out.  However, the stuff we knew was intuitively right is now getting
placed on a far stronger foundation of underlying 'truths' because of
the unified modelling work I mentioned (this goes right back to Shannon
and Turing stuff...indeed a network is precisely the union of
Information Theory and a computing machine).

The GMPLS co-cs stuff is largely self-protecting of abuse.....this is
down to the nature of the constraints that define this mode (esp the
labelling).  Same can be said for the cl-ps mode.  The major risks arise
with the co-ps mode....and one can make life very complex here if one is
not careful.....I'll resist the strong temptation to flesh this out wrt
comments on MPLS and the PW stuff. 

However, we do need a correctly specified co-ps mode networking
capability because as we sun-set many of our legacy co-cs and co-ps
technologies there is a major gap opening for a lower granularity (than
SDH VC4) network builder capability....and we have many customers who
demand such a network service.

regards, Neil

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of David Charlap
> Sent: 29 September 2005 15:40
> To: [email-masked]; [email-masked]
> Subject: Re: Graceful restart - inter-protocol dependencies
> 
> 
> You're absolutely right that this is how co networks should 
> operate.  I 
> would agree that there is little point to rerouting an LSP that has 
> data-plane connectivity, even if routing says the path is invalid or 
> suboptimal.
> 
> Unfortunately, I don't think current MPLS signaling protocols 
> (RSVP-TE 
> and LDP) work this way.  LDP is explicitly designed to dynamically 
> change as routing changes.
> 
> RSVP-TE seems (to my best understanding) to also react to routing 
> changes, except for special cases (like when signaled with an ERO 
> consisting entirely of strict nodes whose addresses can be 
> resolved from 
> interface-neighbor information instead of from routing.)
> 
> -- David
> 
> 
> [email-masked] wrote:
> > David,
> > 
> > This is a very interesting/thoughtful mail.  When I read it I was 
> > immediately struck by recent discussions some of us have 
> been having 
> > on the topic of unified functional modelling within SG15, ie the 
> > underlying axiomatic truths that stem directly from 
> Shannon/Turing wrt 
> > networking and that show how the co-cs, co-ps and cl-ps networking 
> > modes all have a common root.  However, whilst I don't want to get 
> > into that here I do want to illustrate a key consequence of 
> this work 
> > that is particularly relevant to your observations.
> > 
> > In the co modes we have this rather important object called 
> a trail.  
> > A trail is, in essence, a concatenated sequence of link-connections 
> > and nodes (which are the smallest subnetwork connections).  
> However, 
> > the key observation is that at the epoch we create the 
> trail we remove 
> > all further routing choices from the trail.  You can almost 
> think of 
> > this as effectively removing the trail from its parent network 
> > topology (there is a resource accounting issue to deal 
> with, but that 
> > is a different point).....and I guess in IETF speak one would call 
> > this 'route-pinning'.
> > 
> > What this means is that it does not matter what happens to 
> the routing 
> > process after this epoch, once the trail is established there is no 
> > need to move it.  And a key example of why this is important is the 
> > case of augmenting the network topology by adding further 
> nodes/links.  
> > Because the network topology has now changed then future routing 
> > decisions are very likely to alter.  But in the co mode 
> case this does 
> > not matter....once a trail is created it remains faithful to its 
> > original routing choice unless we consciously decide to 
> move it (which 
> > may of course be the result of failures or planned works).
> > 
> > Now contrast this with the cl mode case. If we augment a cl 
> network by 
> > adding new nodes/links then the routing process will update and 
> > traffic will move in accordance with whatever is the optimal path.
> > 
> > Note a trail has other key properties, eg it allows one to 
> completely 
> > decouple a survivability semantic from the QoS semantics of client 
> > traffic units.  This property is rather important when one 
> offering a 
> > network builder service to customers.
> > 
> > regards, Neil
> > 
> > 
> > 
> > 
> >>-----Original Message-----
> >>From: [email-masked]
> >>[mailto:[email-masked]] On Behalf Of David Charlap
> >>Sent: 28 September 2005 19:37
> >>To: IETF MPLS List; IETF CCAMP List
> >>Subject: Graceful restart - inter-protocol dependencies
> >>
> >>