The class-based forwarding feature enables service providers to control which LSPs, of a set of ECMP tunnel next hops that resolve an LDP FEC prefix, to forward packets that were classified to specific forwarding classes, as opposed to normal ECMP spraying where packets are sprayed over the whole set of LSPs.
To activate CBF, the user should enable the following:
IGP shortcuts or forwarding adjacencies in the routing instance
ECMP
advertisement of unicast prefix FECs on the Targeted LDP session to the peer
class-based forwarding in the LDP context (LSR role, LER role or both)
The FC-to-Set based configuration mode is controlled by the following commands:
config>router>mpls>class-forwarding-policy policy-name
config>router>mpls>class-forwarding-policy>fc> {be | l2 | af | l1 | h2 | ef | h1 | nc} forwarding-set value
config>router>mpls>class-forwarding-policy>default-set value
config>router>mpls>lsp>class-forwarding>forwarding-set policy policy-name set set-id
The last command applies to the lsp-template context. So, LSPs that are created from that template, acquire the assigned CBF configurations.
Multiple FCs can be assigned to a specific set. Also, multiple LSPs can map to the same (policy, set) pair. However, an LSP cannot map to more than one (policy, set) pair.
Both configuration modes are mutually exclusive on a per LSP basis.
The CBF behavior depends on the configuration used, and on whether CBF was enabled for the LER and, or LSR roles. The table below illustrates the different modes of operation of Class Based Forwarding depending on the node functionality where enabled, and on the type of configuration present in the ECMP set.
These modes of operation are described in following sections.