There are numerous technologies you can use to implement fast reroute, from the most complex to the easiest one:
- Original MPLS Fast Reroute (FRR) which requires a full-blown MPLS network running RSVP-TE
- IP Fast Reroute (IP FRR) which relies on Loop Free Alternates (LFA)
- Fast rehash of ECMP paths. This is a non-standardized local implementation technique based on common implementations in forwarding silicon.
These technologies can provide various levels of failure detection and protection:
MPLS FRR based on RSVP-TE signaling (which builds an end-to-end virtual circuit) can provide link, node, and path protection.
IP FRR requires link-state routing protocol and LFA computation and can provide various levels of protection:
- LFA and Remote LFA (rLFA) provide link and node protection and are topology dependent;
- Topology-Independent LFA (TI-LFA) provides link and node protection and is topology independent as it uses Segment Routing (SR) tunnel to push traffic to a far-enough (PQ) node.
Fast-rehash requires alternate active paths toward the destination prefix and provides link protection in (E|U)CMP topologies.
Comparing IP FRR and Fast Rehash
Both IP FRR and Fast Rehash rely on IP forwarding, so they can be implemented in hardware with no MPLS support.
IP FRR is a control plane function (xLFA) that relies on a pre-computed backup next-hop (it is more complex in rLFA/TI-LFA) that is loop-free (could be ECMP). The backup next-hop computation could take into consideration some additional data like Shared Risk Link Groups (SRLG) or interface load. Eventually, the end-result of the computation is downloaded as backup paths into the forwarding hardware.
Usually you’d see LFA implemented on a high end router. It is much more intelligent that fast rehash and provides non connected bypass to reach PQ node (rLFA/TI-LFA).
Fast Rehash is a forwarding construct, where the next-hop (could be called differently) is not a single entry but an array of entries (ECMP bundle) downloaded in the forwarding hardware by the control plane. If one of them becomes unavailable (BFD DOWN, carrier loss, or interface down events) it is simply removed from the array and the hashing is updated accordingly, hence the name.
Fast-rehash protects only connected links and doesn’t require any additional computation (ECMP alternatives are per definition loop-free). It is usually implemented in data center fabrics.
Regardless of the technology used, the failover from lost active path(s) to a backup path could be implemented in hardware or software. Hardware failover usually takes less than a millisecond, while software failover (example: rehashing of ECMP next hops in software, and downloading new ECMP buckets into hardware) takes ~50-100 milliseconds.