A Survey on Adversarial Contention Resolution
Ioana Banicescu, Trisha Chakraborty, Seth Gilbert, Maxwell Young
TL;DR
This survey analyzes worst-case contention resolution in time-slotted shared-resource settings under adversarial arrivals and jamming. It surveys backoff-based randomized methods, deterministic schedules, and jamming-resistant strategies across static, dynamic, and multi-channel models, highlighting the tradeoffs between makespan/throughput and knowledge assumptions. Key findings include asymptotically optimal $O(n)$ makespan via Sawtooth-Backoff and related non-monotone approaches in the static case, substantial stability/latency gaps for deterministic versus randomized approaches in dynamic/adversarial settings, and the emergence of jamming-resistant contention-resolution techniques achieving constant throughput with polylog channel accesses under certain feedback models. The work also discusses practical implications for energy efficiency, security, and system predictions, and outlines future directions such as ML-guided design and new channel models.
Abstract
Contention resolution addresses the challenge of coordinating access by multiple processes to a shared resource such as memory, disk storage, or a communication channel. Originally spurred by challenges in database systems and bus networks, contention resolution has endured as an important abstraction for resource sharing, despite decades of technological change. Here, we survey the literature on resolving worst-case contention, where the number of processes and the time at which each process may start seeking access to the resource is dictated by an adversary. We also highlight the evolution of contention resolution, where new concerns -- such as security, quality of service, and energy efficiency -- are motivated by modern systems. These efforts have yielded insights into the limits of randomized and deterministic approaches, as well as the impact of different model assumptions such as global clock synchronization, knowledge of the number of processors, feedback from access attempts, and attacks on the availability of the shared resource.
