IPv4 Multicast ECMP Dynamic Rebalance

If there are multiple equal-cost paths between PIM routers to reach the source or the RP, the multicast RPF algorithms distribute the load across the available paths.

The following diagram shows a topology in which equal-cost multi-path (ECMP) support is not enabled. R1 through R11 have IP addresses in ascending order (R1 having the lowest IP address and R11 having the highest). All the routers are PIM-enabled routers. The links emanating from each router are ECMP links. The existing path usage is indicated in red. With the highest IP address neighbor chosen for the available ECMP paths, the multicast cache entries use only the R1-R4-R11-SRC path.

Click to expand in new window
Path usage without multicast ECMP support

In the following figure, with the ECMP support turned on, the multicast entries are distributed among the equal-cost next hops as indicated in green for better usage of the available paths.

Click to expand in new window
Path use with multicast ECMP support
The load distribution is achieved by distributing the multicast cache entries (*,G or S,G) to the available paths. Two methods are widely used to achieve this distribution.

Extreme devices support the hash-based method of load distribution for multicast ECMP.

Hash-based load distribution

Hash-based load distribution depends on a hash function to distribute the multicast cache entries. The S, G, next-hop addresses are hash function based. This method splits the cache entries by choosing a different RPF neighbor and splits the traffic. Load balancing is based on the distribution of the keys S, G, next-hop. This method of distribution is the least disruptive because the hashing redistributes only those cache entries that are affected during link flaps. Some paths may not be used for the distribution of the multicast entries. For example, for the ECMP paths from R3 to R6, R7 and R8, only paths R3 to R7 and R3 to R8 are used.

Path failure behavior

When an ECMP path is not operating, all the multicast entries using that path are redistributed among the other available paths.

New path behavior

When a new path is added to the ECMP set, there is no redistribution (default behavior without the rebalance option) of the cache entries. Here, optimal use of the paths is chosen in favor of not disturbing the existing flow. This method sometimes requires a full branch setup toward the source or RP of the multicast distribution tree. When a path flaps (stops and starts), the multicast entries that had been using this path do not use this path anymore. The situation worsens if a subset of paths stops operating and then starts up one path at a time. In this scenario, the only paths that carry all entries are the paths that did not flap.

Dynamic rebalancing

This option, which uses the hash method, rebalances the traffic immediately upon the addition of a new next-hop or path, and helps in new next-hop and path addition and path flap cases. There is less disruption in existing flows by using the hash method.

Considerations

The following considerations apply to the configuration of ECMP load balancing.