Equal-cost Multi-path routing
Equal-cost multi-path (ECMP) routing is a technique used to forward packets to a single destination over multiple best paths that have an equal cost or metric. This can be achieved using any IGP, as well as using BGP with appropriate load balancing mechanisms.
Although efficient, used alone it can cause problems if employed on a "per packet" basis, due to the fact that it can result in excessive packet reordering and problems with differing MTU values for each path. This is highly undesirable for protocols such as TCP, and for applications such as VoIP.
Alternative load balancing strategies have been proposed and employed, that involve the assignment of flows using hashing flow-related data in the packet header. This is designed to avoid problems by sending packets from any particular flow via the same path.
Regardless of the routing protocol being used, it is possible to ensure a per-destination or per-packet load balancing algorithm. This can be used to resolve issues involving asynchronous routing, or out of order packet delivery.
Links
Links to this page:
- ASA ECMP static routing
- BGP - ECMP for specific prefixes
- BGP - multipath in a DMVPN environment
- ECMP Multicast Routing Cisco Nexus Switches
- Multicast load splitting across equal-cost paths
- NAT Extendable on Cisco IOS
- Network Design - Spine and leaf architecture
- OSPF - ECMP across two different areas
- PBR - load balancing
- Routing - How the routing table is populated
- Routing - Using Anycast with BGP Multipath
- STP - Shortest Path Bridging (SPB)