networking

Equal-Cost Multi-Path: when several routes tie on cost, traffic is hashed across all of them - free load sharing, per flow, not per packet.

Per-flow hashing keeps packets in order; elephant flows can still make one path unfairly heavy.

In OSPF, equal cost is a by-product of the shortest-path calculation. When a second path to a vertex ties with the one already found, RFC 2328 adds its next hops to the set instead of replacing them, and every destination beyond inherits both; the standard admits that, strictly, the result is then no longer a tree. When several equal-cost routes exist, traffic is distributed equally among them, and FRRouting prints the extra next hops as further via lines under the same prefix.

Ties are fragile. In a six-router example, raising one link's metric from 1 to 20 moved three destinations off one first hop and ended their split, and a link failure collapses the pairs to a single next hop. The opposite trap comes from OSPF's reference bandwidth: at 100 Mbit/s every link of 100 Mbit/s or faster costs 1, so paths tie on hop count rather than speed. RFC 2328 also lets an implementation keep only a fixed number of equal-cost routes.

Spreading traffic can hide failures. RFC 9764 notes that BFD packets may travel only along links that are up, so a session can stay Up while some component links drop traffic, and that no general-purpose BFD mechanism exercises every path of a multihop ECMP set; for a link aggregation group, RFC 7130 runs one micro-BFD session per member.

← All glossary entries