client.request(did)
↓
local shard: has entry? → return (P50 12ms)
↓ miss
regional cluster: fan-out across local cluster shards (P95 48ms)
↓ miss
global anchor: is there a root? yes → fetch from primary shard
no → return 404
Three rules
- Never bypass the cascade. A client that goes straight to GAL degrades the whole network. Resolvers MUST start at the local shard.
- Cache aggressively. Every successful resolution at hop 2 or 3 is pushed back into the local shard's cache for the next caller.
- Negative results count. A 404 from GAL is cached short-TTL so subsequent resolutions of the same dead DID don't traverse the cascade.
Tail latency
P50 12ms · P95 48ms · P99 ~200ms · P99.9 ~600ms (cold GAL hit).