Latest

MPLS: Control Mode (Ordered LSP Control and Independent)

MPLS: Control Mode (Ordered LSP Control and Independent)

Today I am going to talk about the MPLS control mode which consists of MPLS ordered LSP control and independent mode. Most of you guys are already knew about it but some of you are starters in MPLS or Service Provider domains.

Let's talk about the MPLS control Plane one by one.

Control Modes

The distinction between the ordered and independent control modes is, in practice, likely to be a lot less than people have made it out to be in theory. With specific exceptions (for instance, traffic engineering tunnels, discussed later), choice of control mode is local rather than network wide. In addition, certain behaviors associated with a strict interpretation of control mode can result in pathological misbehavior within the network.

Ordered LSP Control

In ordered control mode, LSP setup is initiated at one point and propagates from there toward a termination point. In the case where LSP setup is initiated at an ingress, label requests are propagated all the way to an egress; label mappings are then returned until a label mapping arrives at the ingress. In the case where LSP setup is initiated at an egress, label mappings are propagated all the way to ingress points. 

MPLS Push POP
Fig 1.1- MPLS Push POP

A feature of ordered control is that an LSP is not completely set up until the associated messages have propagated from end to end—hence, data is not sent on the LSP until it is known to be loop free. 
A severe disadvantage shows up in a purist implementation of ordered control mode in the following case. 

Assume that an LSR is the egress for a (potentially large) set of LSPs. This LSR now discovers a new peer that is downstream of it with respect to some or all of the set of LSPs for which the LSR is the current egress. If the local LSR simply adds the new LSR as an egress without somehow ascertaining that this LSR does not carry the LSP into a merge point upstream of the local LSR, it may introduce a loop into an LSP assumed to be loop free. If, on the other hand, it withdraws all label mappings upstream, it may produce a significant network outage and will result in a lot of LSP control activity, both of which might be unnecessary. 

For example, in the case where a downstream routing peer has just had MPLS enabled but is otherwise the same as it was previously, it is unlikely that forwarding will actually change.

This mode uses a simple rule.  Only bind a label to a FEC if it is the egress LSR, or the router received a label binding for a FEC from the next hop router.  The diagram below illustrates this process.
Although all the other routers may have a entry in the RIB for 10.1.1.1/32, the only router that is allowed to bind a label to it is the Egress LSR.  Only when this router distributes this binding through LDP or TDP towards LSR3 is he allowed to then build his own label binding for this particular FEC (and that is if the Egress-LSR is the actual next hop i.e. the best path for this FEC).  LSR3 will then distribute it’s own label binding for this FEC towards LSR2.  LSR2 will then bind a label for this FEC so long as LSR3 is the next hop for it.  The process continues until it reaches the ingress LSR.

Independent LSP Control

Independent control mode is the mode in use when an LSR
  • Has reason to believe that it will get label mappings from downstream peers for a specific FEC
  • Distributes labels for that FEC to its upstream peers irrespective of whether it has received the expected label mappings from downstream 
In this case, the LSR sending the label mapping includes a hop count that reflects the fact that it is not the egress and has not received label mappings (directly or indirectly) from an LSR that is. The special hop-count value of zero (unknown hop count) is used to indicate this case.

Upstream LSRs may or may not start to use the label mappings thus provided. Using the LSP is probably not advisable, because the LSR providing the label mapping may elect to discard packets (while waiting to receive label mappings from downstream peers), and the LSP is not proven to be loop free (until a label mapping is propagated from downstream with a known hop count).