Subject: [mpls] My question about "static LSP" in TEAS today

From: "Adrian Farrel" <[email-masked]>
Date: Tue, 5 Apr 2016 22:40:24 +0100

Hi,

I probably wasn't clear in my question. To restate, my question is why is the
static LSP model modelling an end-to-end LSP and not just a single "cross
connect"? Alternatively, what is the difference between an LSP provisioned by a
control plane, and an LSP provisioned by the management plane? And we might even
bring in "soft permanent LSPs" that are a stitching together of some static
segments and some dynamic segments.

(You might look at the LSR MIB module that can be used to provision [aka model]
static LSPs.)

When you model maybe you need to think about what is the purpose of modelling.
There are three things going on:

What is the user/application asking for?
What state is held in the network?
What does the data plane have?

In this case there is no control plane, but there is still distributed state
installed in the network.
You said that this is not a data plane model, which is fine.
So you are modelling either the state in the network or the user's request.
Now, there may be protocol state (such as parameters of RSVP-TE that exist to
keep the protocol on side) that are special, but the parameters that describe
the state that applies to the LSP are surely identical regardless of how the LSP
was set up. That is, the LSP is a sequence interfaces and labels as well as some
information about reserved resources. 

I think I'm rambling. What I am trying to say is that an LSP is an LSP.

Cheers,
Adrian

---

From: "Andrew G. Malis" <[email-masked]>
Date: Tue, 5 Apr 2016 22:44:12 -0300

Adrian,

This stirs memories of the good old ATM MIB of yore … we modeled
cross-connects and interfaces, and stitched PVCs (static LSPs as the kids
call them now) by matching labels (VPI/VCI) from one interface to the
connected interface in the next switch.

In the case of SVCs (now dynamic LSPs), we modeled the SVC as a single
network-wide cross-connect.

Cheers,
Andy

On Tue, Apr 5, 2016 at 6:40 PM, Adrian Farrel <[email-masked]> wrote:

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

---

From: "Tarek Saad (tsaad)" <[email-masked]>
Date: Wed, 6 Apr 2016 03:15:12 +0000

Hi Adrian,

Thanks. Let me clarify my answer inline too..

>segments and some dynamic segments.

Yes, we started thinking of stitching of static LSP with dynamic LSP, and
we think it can be modelled with defining the respective mpls static
cross-connect that is doing the stitching, but more clarification on
static entries below.

>(You might look at the LSR MIB module that can be used to provision [aka

Yes, I think the static LSP model is inline with that (and to certain
extent inspired from the MIB LSR).. So, the model allows for a list of
MPLS cross-connect entries (that are keyed by ³name²) and that resemble
the cross-connects of the named static LSP on every LER/LSR traversed.

So, to instantiate a static LSP named foo (in its simplest form) that is
traversing an ingress/transit/egress, the operator to provisions the
following entries on the respective device:

on ingress LER, operator provisions using YANG/NETCONF:
 lsp name foo
   in-segment=³10.0.0.0/8²
   out-segment=16000
   operation=impose-and-forward
   out-inteface=if1

on transit LSR, operator provisions (assuming UHP) using YANG/NETCONF:
 lsp name foo
   in-segment=16000
   out-segment=16000
   operation=swap-and-forward
   out-inteface=if2

on egress LER, operator provisions (assuming UHP) using YANG/NETCONF:
 lsp name foo
   in-segment=16000
   out-segment=none
   operation=pop-and-lookup

Once provisioned, it is expected this configuration state will persist,
hence ³static"

>What state is held in the network?
There will be configuration state held for the LSP on each traversed mpls
node.

>What does the data plane have?

The data plane will have the respective MPLS cross-connects/rewrite
programmed. Yes, this practically is indistinguishable (for example) from
those created dynamically using a signalling protocol.

>installed in the network.

Yes, configuration state in this case.

>So you are modelling either the state in the network or the user's

User¹s request.

>I think I'm rambling. What I am trying to say is that an LSP is an LSP.
IMO, there¹s a difference between the two. For example, it is expected
that the statically created LSP properties on a device will never change ‹
including the in/out label and in/out interface.. which is not the case
for dynamically singled LSPs.

Regards,
Tarek

---

From: "Adrian Farrel" <[email-masked]>
Date: Wed, 6 Apr 2016 14:51:29 +0100

Tarak,

Thanks for the exchange.

I think we can jump to the bottom line.
Both data models are for the user/application to request or view an LSP.
You are correct that *normally* the user requests a static LSP in detail that
includes the nodes, interfaces, labels, and resources.
You are correct that *normally* a user requests a control-plane operated LSP
using at most nodes and links (interfaces) and resources.
That is, a user does not *normally* specify what labels to use.
However, use cases exist where:
- the user of the control plane does specify the labels to use
   (and the control plane supports signaling these labels)
- the user of the management plane for static LSPs does not
   specify the labels to use and this information is either
    - pulled out of the network nodes and then passed to the
      other network nodes
   - determined by some software component (people may 
      call this an orchestrator or controller)

More interesting, however, is that we are *modelling* the LSP not just
facilitating write-action requests for an LSP.
Once the LSP has been installed, it has the same information regardless of how
it was instantiated, and the data model must report all of that information. The
user wants to know all of this information.

This debate may come down to some more clarity about what we are trying to
achieve. I don't have a strong opinion about what we are trying to do, but I
think it is clear 
that it isn't clear :-) 

Like Andy, I recall the ATM MIB modules. And of course, I know a little bit
about the MPLS and GMPLS MIB modules. I can explain what we were trying to
achieve with them. I don't claim that you must model the same stuff in the same
way, but I do claim that the MPLS MB modules supported static LSPs as well as
RSVP-TE LSPs.

Cheers,
Adrian
--
Support an author and your imagination.
Tales from the Wood - Eighteen new fairy tales.
http://www.feedaread.com/books/Tales-from-the-Wood-9781786100924.aspx
http://www.amazon.co.uk/Tales-Wood-Adrian-Farrel/dp/1786100924
Or buy from me direct.

> -----Original Message-----
> From: Tarek Saad (tsaad) [mailto:[email-masked]]
> Sent: 06 April 2016 04:15
> To: Adrian Farrel
> Cc: [email-masked]
> Subject: Re: My question about "static LSP" in TEAS today
> 
> Hi Adrian,
>