If an egress router knows how to reach a set of distinct and indipendent networks (say, two or more non overlapping IP prefixes in its routing table), is it expected to announce one single FEC for each of those in its MPLS-Domain or to announce one label for each of those destination? From my point of view (that is very likely to be wrong), each of those solutions seems correct, but the first one seems more efficient.
Which FEC an egress router has to advertise when using Ordered Control? ... is it expected to announce one single FEC for each of those in its MPLS-Domain or to announce one label for each of those destination?
RFC3037, page 3:
An LSR using independent control mode advertises FEC-label bindings to peers whenever it sees fit, whereas one using ordered control advertises bindings only when it has previously received a label for the FEC from the FEC nexthop or it is an MPLS egress for the FEC.
Downstream on Demand distribution with conservative label retention and ordered control is appropriate in situations where labels are a relatively scarce resource that must be conserved, and Downstream
Unsolicited distribution with liberal label retention and independent control is appropriate where labels are plentiful and need not be carefully conserved.
- Documentation for Junos OS - deaggregation command:
Control forwarding equivalence class (FEC) deaggregation on the router. The use of the deaggregate statement in LDP is a standard practice that we recommend for LDP deployments.
Similar question of ours: What is a FEC in MPLS domain?
Cisco - "MPLS FAQ for Beginners"
Wikipedia's "Multiprotocol Label Switching"
- See: "Configuring FEC Deaggregation":
When an LDP egress router advertises multiple prefixes, the prefixes are bound to a single label and aggregated into a single forwarding equivalence class (FEC). By default, LDP maintains this aggregation as the advertisement traverses the network.
Normally, because an LSP is not split across multiple next hops and the prefixes are bound into a single LSP, load-balancing across equal-cost paths does not occur. You can, however, load-balance across equal-cost paths if you configure a load-balancing policy and deaggregate the FECs.
Deaggregating the FECs causes each prefix to be bound to a separate label and become a separate LSP.
To configure deaggregated FECs, include the deaggregate statement ...
For all LDP sessions, you can configure deaggregated FECs only globally.
Deaggregating a FEC allows the resulting multiple LSPs to be distributed across multiple equal-cost paths and distributes LSPs across the multiple next hops on the egress segments but installs only one next hop per LSP.
To aggregate FECs, include the no-deaggregate statement ...
For all LDP sessions, you can configure aggregated FECs only globally.
FEC aggregation means that when an LDP egress router advertises multiple prefixes, all the prefixes are members of the same FEC. Only a single label is advertised for this FEC. LDP maintains this aggregation as the advertisement traverses the network, if possible.
To configure MPLS LDP FEC deaggregation to bind each prefix on the current virtual router to a separate label:
Issue the mpls ldp deaggregate command:
host1(config)#mpls ldp deaggregate
If you configure MPLS LDP FEC deaggregation to bind a separate label to each prefix on a virtual router, the default behavior is for the LDP egress router to advertise the implicit null label in the label mapping message that it sends to its upstream neighbor.
If multiple labels are configured for the LDP egress router and FEC aggregation is configured, when you modify the label advertisement method to be FEC deaggregation, the egress router advertises the implicit null label and does not use separate labels with each prefix. With FEC deaggregation configured, the egress router's upstream neighbor performs a penultimate hop pop (PHP) and the implicit null label never appears in the encapsulation.
If you configure MPLS LDP FEC deaggregation, the default advertised label is label 3 (implicit null label). In such a scenario, the penultimate-hop router removes the label and sends the packet to the egress router.
From the Packet Pushers Blog: "Back to Basics: Label Distribution and Assignment Modes":
Label Control Mode:
This is about whether an LSR wait to hear from its upstream/downstream neighbors before responding to a Label request.
Ordered Control: In this approach, an LSR doesn’t advertise a FEC unless it’s the egress LSR for that FEC or until it has received a label for the FEC from its downstream peer. For each FEC for which the LSR is not the egress and no mapping exists, the LSR MUST wait until a label from a downstream LSR is received before mapping the FEC and passing corresponding labels to upstream LSRs. This is used by RSVP, LDP (JunOS) and BGP-LU.
Independent Control: This means that the LSR sending the label acts independently of its downstream peer. It does not wait for a label from the downstream LSR before it sends a label to its peers. This mode has the potential of blackholing the traffic. For instance, when operating in independent Downstream on Demand mode, an LSR may answer requests for label mappings immediately, without waiting for a label mapping from the next hop. This mode is used by LDP (IOS/IOS-XR)