In Figure 1, the leaf discovers the ROOT-1 from all three ASBRs (ASBR-3, ASBR-4 and ASBR-5).
The leaf chooses which ASBR is used for the multicast stream using the following process.
The leaf determines the number of ASBRs that should be part of the hash calculation.
The number of ASBRs that are part of the hash calculation comes from the configured ECMP (config>router>ecmp). For example, if the ECMP value is set to 2, only two of the ASBRs are part of the hash algorithm selection.
After deciding the upstream ASBR, the leaf determines whether there are multiple equal cost paths between it and the chosen ASBR.
If there are multiple ECMP paths between the leaf and the ASBR, the leaf performs another ECMP selection based on the configured value in config>router>ecmp. This is a recursive ECMP lookup.
The first lookup chooses the ASBR and the second lookup chooses the path to that ASBR.
For example, if the ASBR 5 was chosen in Figure 1, there are three paths between the leaf and ASBR-5. As such, a second ECMP decision is made to choose the path.
At ASBR-5, the process is repeated. For example, in Figure 1, ASBR-5 goes through steps 1 and 2 to choose between ASBR-1 and ASBR-2, and a second recursive ECMP lookup to choose the path to that ASBR.
When there are several candidate upstream LSRs, the LSR must select one upstream LSR. The algorithm used for the LSR selection is a local matter. If the LSR selection is done over a LAN interface and the Section 6 procedures are applied, the procedure described in ECMP Hash Algorithm should be applied to ensure that the same upstream LSR is elected among a set of candidate receivers on that LAN.
The ECMP hash algorithm ensures that there is a single forwarder over the LAN for a particular LSP.