Multiple Access Protocols

Imagine forty laptops in a lecture hall, all sharing a single Wi-Fi channel. Every device wants to send packets. But only one signal can occupy the airwaves at a time without becoming garbled noise. This is the multiple access problem: how do independent nodes on a shared broadcast channel decide who transmits and when. Most designs lack a central coordinator. Get it wrong, and throughput collapses under contention. Or the channel sits idle while nodes politely wait for permission that never comes. This problem is not a corner case. It is the foundational puzzle of the Link Layer: Role and Services. Ethernet buses, Wi-Fi, cable modem uplinks, satellite links, and even root-finding protocols in sensor networks all reduce to variants of the same question. The answer shapes real hardware. It explains a repeater hub versus a switch. It explains why old Ethernet had a minimum frame size. It also explains why Wi-Fi feels sluggish under heavy load in a crowded apartment building. Three families of solutions have emerged, each with a distinct philosophy. Channel partitioning protocols divide the channel's time, frequency, or code space into pre-allocated slices. These are deterministic and fair, but wasteful when demand is uneven. Random access protocols let nodes transmit opportunistically. They handle the resulting collisions after the fact. This is efficient under light load, but chaotic under heavy load. Taking-turns protocols coordinate access through tokens or polling. They combine some of channel partitioning's order with random access's flexibility. This comes at the cost of coordination overhead. This article builds each family from first principles. It derives their throughput mathematically, including the classical ALOHA efficiency bounds. It traces the protocols through worked examples and a state-machine diagram. It closes by connecting these ideas to Ethernet and the Frame Format. There, CSMA/CD's contention rules and Wi-Fi's CSMA/CA rules are built directly on the mechanisms developed here.

Key takeaways
  • The multiple access problem: many nodes share one broadcast channel; only one can send success­fully at a time.
  • Channel partitioning (TDMA, FDMA, CDMA) divides the channel deterministically — fair but inefficient under bursty, uneven load.
  • Random access (ALOHA, slotted ALOHA, CSMA, CSMA/CD) lets nodes transmit opportunistically, detects or tolerates collisions, and retransmits with randomized backoff.
  • Pure ALOHA achieves a maximum throughput of 1/(2e) ≈ 18.4%; slotted ALOHA doubles it to 1/e ≈ 36.8%.
  • CSMA/CD (classic Ethernet) adds carrier sensing and collision detection, dramatically cutting wasted transmission time versus ALOHA.
  • Taking-turns protocols (polling, token passing) avoid collisions entirely but introduce polling overhead and single-point-of-failure risk.
The core insight

Every multiple access protocol is a strategy for trading off deterministic fairness against opportunistic efficiency when many nodes share one channel.

The idea

A broadcast channel is a shared medium — a coaxial cable, a radio spectrum band, a fiber tap — where a signal transmitted by one node is received (in principle) by all other nodes attached to it. This differs fundamentally from point-to-point links, where each sender has a private wire to its receiver. Because point-to-point links avoid the access problem entirely, multiple access protocols exist specifically to arbitrate broadcast channels: Ethernet hubs (historically), Wi-Fi, cable access networks (DOCSIS), and satellite uplinks. A multiple access protocol is a distributed algorithm that determines how nodes share the channel. The protocol must solve the problem without the assumption of a global clock synchronizing every bit, and typically without a central arbiter, since broadcast channels connect physically dispersed nodes. Multiple access protocols are judged on several axes: when only one node has data, it should get the full channel rate R; when M nodes have data, each should get a fair share R/M (at least in symmetric settings); the protocol should be decentralized (no single point of failure) and simple to implement in hardware. The three canonical families differ in when they resolve contention. Channel partitioning resolves contention in advance, by construction — each node is statically assigned a slice of time, frequency, or code, so collisions are structurally impossible. Random access resolves contention after the fact — nodes transmit greedily, a collision occurs when two or more transmissions overlap in time on the channel, and the protocol detects (or infers) collisions and drives a retransmission scheme. Taking-turns protocols resolve contention through explicit coordination — a token or a polling message that grants transmission rights to one node at a time, cycling through all nodes.

How it works

1. Channel partitioning: TDMA, FDMA, CDMA

Time Division Multiple Access (TDMA) divides time into fixed-length slots, grouped into repeating frames of N slots for N nodes. Node i transmits only in slot i of every frame; if it has nothing to send, the slot is wasted (transmitted as idle). Throughput per node is exactly R/N whenever that node has data, deterministically, with zero collisions.

Frequency Division Multiple Access (FDMA) divides the channel's frequency spectrum into N non-overlapping bands, each of bandwidth R/N, permanently assigned to one node. This is the classical approach in analog cellular systems and cable television.

Code Division Multiple Access (CDMA) assigns each node a unique orthogonal spreading code; all nodes transmit simultaneously over the full bandwidth, and receivers decode using the sender's code, exploiting the orthogonality to reject the "noise" from other senders' encoded signals. CDMA underlies 3G cellular and some satellite systems, trading complex signal-processing hardware for the elimination of both time-slicing and frequency-slicing waste. All three share a mathematical signature: with N active nodes, each gets exactly R/N — a perfectly fair, perfectly deterministic allocation. The cost is rigidity: an idle node's dedicated slot, band, or code capacity cannot be reassigned instantaneously to a busy node.

2. Random access: ALOHA family

Pure ALOHA (Abramson, 1970s, University of Hawaii) is maximally simple: a node with a frame transmits immediately, in full, with no coordination whatsoever. If the frame collides with any other transmission (any temporal overlap), both are lost. After a collision, each colliding sender waits a random backoff time before retransmitting, to avoid perpetually re-colliding in lockstep. ``` ALOHA_send(frame): transmit(frame) # send immediately, full-length wait_for_ack_or_timeout() if collision_or_timeout: backoff = random_uniform(0, T_max) # randomized retransmission delay wait(backoff) ALOHA_send(frame) # retry else: done() # success ```

Slotted ALOHA improves on this by dividing time into slots equal to one frame's transmission time, and requiring all nodes to be slot-synchronized (a modest coordination assumption). A node with a frame waits for the start of the next slot, then transmits the entire frame within that slot. ``` Slotted_ALOHA_send(frame): wait_for_next_slot_boundary() transmit(frame) # fills exactly one slot if collision_detected_in_this_slot: with probability p: retransmit_next_slot() else: wait_one_more_slot_and_retry_with_prob_p() else: done() ``` Slotting halves the "vulnerable window" during which a collision can occur (explained in Complexity & Correctness below), doubling maximum throughput.

3. Random access: CSMA and CSMA/CD

Carrier Sense Multiple Access (CSMA) adds a simple courtesy rule absent from ALOHA: listen before you talk. A node senses the channel; if it is idle, the node transmits; if busy, the node defers. Because of propagation delay, two distant nodes can both sense "idle" and transmit almost simultaneously, still colliding — CSMA reduces but does not eliminate collisions.

CSMA with Collision Detection (CSMA/CD) — the protocol underlying classic (bus/hub) Ethernet — adds two more rules: listen while talking (detect a collision by observing garbled or excessive-current signal on the wire), and abort immediately upon detecting one, instead of wasting the rest of the frame's transmission time. ``` CSMA_CD_send(frame): loop: while channel_is_busy(): wait() # persistent carrier sense transmit(frame) while transmitting: if collision_detected(): send_jam_signal() # ensure all parties notice abort_transmission() n = n + 1 # collision counter k = min(n, 10) r = random_integer(0, 2^k - 1) # binary exponential backoff wait(r 512_bit_times) continue loop # retry from the top return SUCCESS ``` The <strong>binary exponential backoff</strong> scheme is the crucial ingredient: after the n*-th consecutive collision on a frame, the sender picks a random wait r uniformly from {0, 1, …, 2^min(n,10) − 1} slot times (512 bit-times in classic Ethernet), then retries. As collisions repeat, the contention window doubles, spreading out competing senders and making convergence to a collision-free transmission increasingly likely.

4. Taking-turns protocols: polling and token passing

Polling designates one node as a "master" that cycles through the others, asking each in turn "do you have data?" Only the polled node may transmit, briefly, before control returns to the master. This eliminates collisions and idle-slot waste but introduces polling overhead (the round-trip cost of each poll) and a single point of failure (the master).

Token passing removes the central master: a special control frame, the token, circulates node-to-node around a logical (or physical) ring. Only the node currently holding the token may transmit; it then passes the token onward. Token Ring and FDDI are the classical examples. ``` Token_ring_node(my_id, ring_order): loop: token = wait_for_token() if have_data_to_send(): transmit(frame) wait_for_frame_to_circulate_back() pass_token(next_node_in(ring_order)) ```

Figure
Three families of multiple access: partitioned slots, contention with collision, and a circulating token
1. Channel Partitioning (TDMA) Frame repeats; each node owns a fixed slot — zero collisions, fixed R/N. A B C A B frame 1 frame 2 2. Random Access (ALOHA) Nodes transmit greedily; overlaps collide and are retried. A sends B sends collide C sends OK 3. Taking Turns (Token Ring) Token circulates; only the holder may transmit. N1 N2 N3 N4 N5 N6 token 4. CSMA/CD state machine Sense idle Transmit Collision → jam Backoff (2^n) busy signal

Complexity & correctness

Channel partitioning is trivially correct: because slots, frequencies, or codes are disjoint by construction, no two nodes ever transmit in the same slice, so collisions are structurally impossible. This is an invariant enforced by the static allocation itself, not by any runtime detection. The efficiency cost is equally structural: with N nodes and only M < N active, the N − M idle nodes' allocations go completely unused, so throughput can fall to M·R/N even though demand could in principle saturate the channel. Time complexity per transmission is O(1) (no contention resolution needed); the "cost" instead shows up as wasted capacity, which we quantify below for TDMA: if nodes are active independently with probability q, a node's average wait for its own slot is (N−1)/2 slots regardless of load — a fixed latency floor even when the channel is otherwise empty.

Pure ALOHA's throughput is derivable exactly using a Poisson traffic model. Let frames be generated by all nodes combined according to a Poisson process with aggregate rate G frames per frame-transmission-time (this rate G includes original arrivals plus retransmissions — it is the offered load). A given frame, transmitted at time t, collides if any other frame starts anywhere in the interval (t − 1, t + 1) frame-times — a vulnerable period of length 2 frame-times, because a frame starting up to one frame-time before t is still transmitting when t's frame begins, and a frame starting up to one frame-time after t begins overlaps it too. The probability that zero other frames arrive in an interval of length τ frame-times, under a Poisson process of rate G, is: ``` P(0 arrivals in τ) = e^(−Gτ) ``` For pure ALOHA, τ = 2, so the probability a given frame survives without collision is e^(−2G). Throughput (successful frames per frame-time) is offered load times survival probability: ``` S = G · e^(−2G) ``` Maximizing over G: differentiate, set dS/dG = 0: ``` dS/dG = e^(−2G) − 2G·e^(−2G) = e^(−2G)(1 − 2G) = 0 ⟹ G = 1/2 ``` Substituting back: ``` S_max = (1/2) · e^(−1) = 1/(2e) ≈ 0.184 ``` So pure ALOHA's maximum achievable throughput is about 18.4% of channel capacity, even with an ideal choice of offered load — a striking, non-obvious result showing that greedy uncoordinated access wastes over 80% of capacity at best.

Slotted ALOHA halves the vulnerable period to exactly 1 frame-time, because two frames can only collide if they start in the same slot (arrivals are aligned to slot boundaries). Setting τ = 1: ``` S = G · e^(−G) dS/dG = e^(−G)(1 − G) = 0 ⟹ G = 1 S_max = 1 · e^(−1) = 1/e ≈ 0.368 ```

Slotted ALOHA doubles pure ALOHA's peak efficiency to about 36.8% — the single most quoted result in multiple access theory, and a clean illustration of how a small amount of coordination (slot synchronization) buys a large efficiency gain.

CSMA/CD's efficiency depends on the ratio of propagation delay to transmission time. Let d_prop be the maximum one-way propagation delay across the network and d_trans the time to transmit a full frame. The vulnerable period for a collision to occur despite carrier sensing is bounded by d_prop (a distant node may sense idle just before a transmission's leading edge arrives). A standard approximation for CSMA/CD efficiency under N persistently-backlogged senders is: ``` efficiency ≈ 1 / (1 + 5 · (d_prop / d_trans)) ``` This shows why classic Ethernet enforces a minimum frame size of 64 bytes: it must guarantee d_trans ≥ 2·d_prop (round-trip propagation) so that a sender is still transmitting when a collision signal could return, guaranteeing every collision is detected during transmission rather than after a node believes it has already succeeded. Correctness here means: no node ever finishes transmitting a frame and considers it successful when in fact a collision occurred — the minimum frame size closes this gap given the network's maximum physical extent.

Binary exponential backoff's correctness argument is a stability/fairness one, not a strict optimality proof: as repeated collisions occur, doubling the contention window exponentially reduces the probability that the same k competing senders pick overlapping backoff slots again, so the expected number of retries to reach a successful transmission is bounded, and the scheme adapts automatically to the (unknown, possibly changing) number of contending nodes — heavier contention is met with proportionally larger randomization range, which is precisely the self-tuning behavior a static backoff constant cannot achieve.

Taking-turns protocols guarantee both no collisions (like partitioning) and full utilization when only one node is active (like random access, but deterministically), at the cost of O(N) latency per round in polling (each of N nodes must be asked even if only one has data) and vulnerability to failure of the token or the master — a lost token requires a timeout-based regeneration protocol, an engineering complication absent from the collision-based schemes.

Worked example

Consider a small Ethernet segment with N = 4 hosts (A, B, C, D) sharing one CSMA/CD bus, offered load causing repeated contention. Frame transmission time is 10 time units; propagation delay is negligible (small LAN) so we focus on the collision/backoff mechanics rather than the vulnerable-window derivation above.

TimeEventn (collisions so far, this frame)Backoff draw
t=0A, B, C, D all sense idle, all transmit simultaneously——
t=0.1All four detect collision, send jam signal, abortn=1 for alleach draws r ∈ {0,1} slot
—Suppose A draws 0, B draws 1, C draws 1, D draws 0
t=1 slotA and D (r=0) retransmit simultaneously → collide again; B, C still waitingn=2 for A,DA,D draw r ∈ {0,1,2,3}
t=1 slot (jam)A draws 2, D draws 0
t=2 slotsD (r=0) transmits alone — channel was sensed idle by D, and B, C are still in their original wait — success for Dn resets for D
t=2+10B and C's original backoff (r=1, counted from t=0's jam) now expires; both sense idle, both transmitn=1 (their first collision) still counted from before
...B and C collide again, back off further, eventually stagger and succeed one at a time

This trace illustrates three properties proven above: (1) the first collision is essentially certain when all nodes start with data simultaneously (an adversarial but realistic "burst" scenario e.g. after a network partition heals); (2) binary exponential backoff spreads contenders across an exponentially growing window, so D succeeds after only 2 rounds while B and C need more rounds because they happened to draw the same value; (3) the protocol is self-correcting — no central authority decided that D should go first, yet the randomized backoff converged to a collision-free schedule within a small, bounded number of rounds with high probability.

Contrast with slotted ALOHA on the same scenario: with p = 1/4 (retransmission probability tuned for N = 4 to approximate the optimal G = 1), each node, once holding a frame, retransmits in each slot independently with probability p. The expected number of slots until a specific frame succeeds (given no new arrivals) is 1/p = 4 slots on average — comparable in order of magnitude to CSMA/CD's backoff rounds above, but ALOHA burns full slots on every collision (no carrier sensing to detect a doomed transmission early), whereas CSMA/CD's jam-and-abort mechanism wastes only a fraction of a slot per collision, which is precisely why Ethernet outperforms ALOHA in practice despite both being random-access protocols.

Common pitfalls & traps

PitfallWhy it happensFix
Confusing "collision" with "corruption"Students assume a collision means noise damaged the frame; really it means two senders' signals combined on the wire, undecodable by either receiverDefine collision as "temporal overlap of two or more transmissions," a scheduling event, not a physical noise event
Forgetting the vulnerable-period doubling in pure vs. slotted ALOHAAssuming both have the same collision window since "it's still ALOHA"Recompute: pure ALOHA's window is 2 frame-times (overlap from either side); slotting halves it to 1
Treating binary exponential backoff as bounded/deterministicAssuming a fixed cap on retries guarantees success within k attemptsBackoff is probabilistic; success is guaranteed only "with high probability" in bounded expected time, not deterministically
Ignoring the minimum-frame-size / propagation-delay relationship in CSMA/CDAssuming carrier sensing alone prevents all collisionsRecall CSMA/CD still requires min frame size ≥ 2 × (max propagation delay × bit rate) to guarantee collisions are always detected before a sender finishes
Treating token loss as a non-issue in token-passing designsAssuming the ring "just keeps working"A lost or duplicated token requires an explicit timeout/regeneration protocol; without it the network can deadlock or duplicate transmissions

Pioneers & history

Origins · 1 minNorman Abramson and how this was discovered
NA
Norman Abramson
1932–2020 · University of Hawaii, radio packet networking, 1970s

Norman Abramson designed the ALOHAnet, the first packet radio network, to connect the scattered Hawaiian islands' university campuses without leased telephone lines. Facing a fundamentally new problem — many radios sharing one frequency with no wired collision detection possible — he proposed the strikingly simple "just transmit, retry on failure" scheme that became pure ALOHA. His analysis of ALOHA's throughput, and Leonard Kleinrock and Simon Lam's later refinement showing slotting's benefit, founded the mathematical theory of random access protocols that underlies Ethernet, Wi-Fi, and cellular random-access channels to this day.

History
- 1970 — Norman Abramson deploys ALOHAnet and formulates pure ALOHA for packet radio in Hawaii.
- 1972 — Roberts introduces slotted ALOHA, doubling maximum throughput via time-slot synchronization.
- 1973 — Robert Metcalfe and David Boggs at Xerox PARC invent Ethernet, adapting ALOHA-style random access with carrier sense and collision detection (CSMA/CD).
- 1980 — IEEE 802.3 standardizes Ethernet, cementing CSMA/CD and binary exponential backoff as the LAN standard for the next two decades.
- 1985–1990s — Token Ring (IEEE 802.5) and FDDI popularize deterministic taking-turns protocols for environments demanding bounded latency.

Where this matters

Classic (hub-based) Ethernet used CSMA/CD directly on a shared coaxial or twisted-pair bus; understanding its collision dynamics explains historical Ethernet's minimum frame size and the reason modern switched Ethernet, which gives each link a dedicated collision domain, eliminated the need for CSMA/CD almost entirely (a preview of Ethernet and the Frame Format). Wi-Fi (IEEE 802.11) uses CSMA/CA (Collision Avoidance) rather than CSMA/CD, because a wireless transmitter cannot reliably listen for collisions on its own outgoing signal (its own transmission drowns out any incoming interference at the antenna) — it instead uses random backoff before transmitting and optional RTS/CTS handshakes, directly descended from the ALOHA/CSMA lineage developed here. Cable modem networks (DOCSIS) combine TDMA-style time slots for upstream transmission with contention-based "request" slots resembling slotted ALOHA. Cellular networks use CDMA (3G) or scheduled OFDMA resource blocks (4G/5G, an evolved form of channel partitioning) for the data channel, paired with a random-access channel (based on slotted ALOHA) purely for a device's initial connection request. Token-based industrial networks (e.g., some fieldbus protocols in factory automation) still favor taking-turns designs where bounded worst-case latency matters more than peak throughput. Understanding these three families — and the throughput math behind them — is the foundation for reasoning about capacity, fairness, and latency in every shared-medium network layered above the physical layer, directly connecting to Delay, Loss, and Throughput in Packet Networks when analyzing real link performance.

Ask the tutor: How does the CSMA/CD efficiency formula change if propagation delay is comparable to or larger than transmission time, and why does this make CSMA/CD impractical for long-distance or satellite links?

Why can't we just use channel partitioning everywhere and avoid collisions entirely?

Channel partitioning (TDMA/FDMA/CDMA) statically divides the channel among N nodes regardless of whether all N are actually sending data at any given moment. If traffic is bursty — as most real network traffic is — many nodes will be idle at any instant, and their dedicated slot, frequency band, or code capacity simply goes unused, capping total throughput far below the channel's physical capacity. Random access protocols instead let any active node opportunistically use the full channel, which is far more efficient under light-to-moderate, bursty load, at the cost of wasted transmission time when collisions occur under heavy load. The choice is fundamentally a tradeoff between guaranteed fairness/simplicity and adaptive efficiency, and real systems often blend both (e.g., cellular networks use scheduled resource blocks for data but slotted-ALOHA-style random access purely for initial connection requests).

Why does CSMA/CD not work well for wireless networks like Wi-Fi?

Collision detection requires a transmitter to listen to the channel while it transmits and notice if the received signal differs from what it sent. On a wired bus, a transmitting node's own signal is easy to distinguish from a collision because the wire carries a clean superposition. On a wireless radio, a transmitting antenna's own outgoing signal is far stronger at the transmitter than any incoming interference, effectively deafening the receiver to overlapping signals from other nodes — this is the "hidden terminal" and self-interference problem. Wi-Fi therefore uses CSMA/CA (Collision Avoidance): it senses the channel before transmitting, adds randomized backoff even when the channel appears idle, and optionally uses RTS/CTS handshakes to reserve the channel, but it cannot detect collisions mid-transmission the way wired CSMA/CD can.

What exactly is a "vulnerable period" and why does it matter for the ALOHA throughput formula?

The vulnerable period is the time window during which a new transmission, if it starts, will collide with an already-ongoing one. For pure ALOHA, a frame beginning at time t collides with any other frame that starts anywhere in the interval (t−1, t+1) frame-times, because a frame starting up to one frame-time earlier is still transmitting when t's frame begins, and one starting up to one frame-time later begins mid-overlap — a 2-frame-time window. Slotted ALOHA aligns all frames to slot boundaries, so a collision can only occur if two frames start in exactly the same slot, shrinking the vulnerable period to 1 frame-time. Since collision probability under Poisson arrivals is e^(−G·window), halving the window from 2 to 1 directly doubles the maximum achievable throughput from 1/(2e) to 1/e.

Is binary exponential backoff guaranteed to eventually succeed?

In a probabilistic sense, yes, with probability approaching 1 as the number of retries grows, but there is no hard deterministic guarantee of success within a fixed number of attempts. Each retry draws a backoff uniformly from an exponentially growing window, so the chance that two contending nodes repeatedly draw colliding values shrinks geometrically with each collision. In practice, Ethernet's IEEE 802.3 standard caps the window growth at n = 10 (window size 1024) and gives up after 16 total attempts, reporting a transmission failure to higher layers — an engineering choice reflecting that astronomically unlucky repeated collisions are vanishingly improbable, not that they are mathematically impossible.

How does taking-turns (token passing) compare to CSMA/CD under very heavy, sustained load?

Under light load, CSMA/CD is generally more efficient because a node with data can usually transmit immediately, whereas a token-passing node might have to wait for the token to circulate through many idle nodes first. Under very heavy, sustained load, however, token passing has an advantage: because it eliminates collisions entirely, no transmission time is ever wasted on colliding frames, and every node gets a bounded, predictable share of the channel each ring cycle. CSMA/CD's throughput actually degrades under heavy load because more simultaneous senders means more frequent collisions and longer backoff delays. This tradeoff is why some latency-sensitive industrial and real-time networks historically favored token-based designs despite their single-point-of-failure risk from a lost token.

Why did switched Ethernet make CSMA/CD largely obsolete?

CSMA/CD exists to arbitrate a shared broadcast medium where multiple senders' signals can physically collide on the same wire. A network switch instead gives each connected device its own dedicated, full-duplex link directly to a switch port, so there is no shared medium among different devices to contend for — each link is effectively a private point-to-point connection. Because collisions cannot occur when every device has an isolated collision domain of size one, switched full-duplex Ethernet has no need for carrier sensing, collision detection, or binary exponential backoff at all. Understanding why CSMA/CD was needed in hub-based Ethernet, and why switching architecturally removes that need, is a core bridge to appreciating how Ethernet evolved, covered when examining the modern frame format and switching fabric.

Before this

Where this leads