Check per-location load on an anycast prefix and whether the survivors absorb the traffic when a location withdraws.
Anycast advertises one prefix from every location and lets BGP send each user to the nearest, so load divides by location count — but only on average, because BGP optimises AS path length rather than balance. When a location withdraws its route its entire catchment lands on the next nearest sites, which is why the failure case is total ÷ (locations − 1) with the skew applied on top. Anycast failure is not graceful: one withdrawal redistributes a whole catchment to specific neighbours, not to the fleet evenly, so provisioning to the average utilisation is how a single PoP loss cascades into a regional outage.
Anycast Coverage
load per location = total ÷ locations; after a withdrawal, load per survivor = total ÷ (locations − failed), and the busiest catchment carries that plus the skew.
load per location = total ÷ locations; after a withdrawal, load per survivor = total ÷ (locations − failed), and the busiest catchment carries that plus the skew. Anycast advertises one prefix from every location and lets BGP send each user to the nearest, so load divides by location count — but only on average, because BGP optimises AS path length rather than balance. When a location withdraws its route its entire catchment lands on the next nearest sites, which is why the failure case is total ÷ (locations − 1) with the skew applied on top.
Anycast failure is not graceful: one withdrawal redistributes a whole catchment to specific neighbours, not to the fleet evenly, so provisioning to the average utilisation is how a single PoP loss cascades into a regional outage.
This calculator takes 5 inputs: Total request rate, Locations advertising the prefix, Capacity per location, Locations lost in the failure case, Extra load on the busiest catchment. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.