Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications
Ion Stoica, Robert Morris, David Karger, et al.2001SIGCOMM 2001
Read it on pdos.csail.mit.edu(opens in a new tab)Why this one
Read this after Consistent Hashing and Random Trees. That paper gives you the ring as a load-balancing trick. Chord asks the next systems question: if no machine has the whole map, how does a request find the right owner without flooding the network or trusting a central directory? The answer is a tiny routing table with exponentially spaced shortcuts, plus a stabilization protocol that repairs the map as nodes join and leave. People often remember Chord as old peer-to-peer history, but the useful idea is broader: partitioning is only half a design, lookup maintenance is the other half. If you are building sharded storage, service discovery, distributed caches, or any system where ownership moves, this paper gives you a clean mental model for routing, churn, and the cost of decentralization.
What to take away
- Consistent hashing assigns ownership, but Chord shows how to find that owner without a central coordinator.
- Finger tables trade a little per-node state for logarithmic lookup hops across a large ring.
- The stabilization protocol is the real system design lesson: routing tables are allowed to be stale if repair is continuous.
Reads with
- Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web
gives chord its ring before chord solves decentralized lookup
- Dynamo: Amazon's Highly Available Key-value Store
turns ring ownership into a production key value store with failure semantics
- Cassandra: A Decentralized Structured Storage System
carries the decentralized ownership model into a wide column database