- A process does not request permission from all other processes, but only from a subset of the processes


- Optimization
- $K \approx \sqrt{N}$, where $N = K(K-1) + 1$
- Voting set
- derive $V_i$ so that $|V_i| \approx 2\sqrt N - 1$
- Place processes in a $\sqrt N \times \sqrt N$ matrix
- Satisfy ME1
- Extension for satisfying ME2 and ME3
- Modification to ensure absence of deadlocks
- Use of logical clocks: processes queue requests in happened-before order
- Performance
- Bandwidth
- $2\sqrt N$ per entry, $\sqrt N$ per exit, total $3\sqrt N$
- Better than Ricart and Agrawala (for $N > 4$)
- Client Delay