Multiple access links and protocols

A multiple access link (or broadcast link) is a link that connects multiple nodes through a shared communication channel.

On a shared channel, a broadcast occurs when one node transmits a frame and every other node attached to the link receives a copy (e.g., Ethernet and wireless LANs).

A shared channel is like a conversation in a classroom:

In computer networks, if two or more nodes transmit at the same time, their signals interfere, causing a collision. As a result:

A multiple access protocol coordinates transmissions from active nodes on the shared channel to avoid collisions. They are commonly grouped into three categories:

  1. channel partitioning protocols
  2. random access protocols
  3. taking-turns protocols

Ideal properties

Ideally, a multiple access protocol for a broadcast channel with transmission rate R bits/s should satisfy the following properties:

  1. maximum throughput: if only one node has data to send, it should have a throughput of R bits/s
  2. fairness: if M active nodes have data to send, each should have an average throughput of R/M bits/s
  3. decentralized: the protocol should not rely on a master node, avoiding a single point of failure
  4. simple: the protocol should be inexpensive to implement

In the following examples, we assume that a channel supports N nodes and has a transmission rate of R bits/s.

Channel partitioning protocols

Channel partitioning protocols divide a broadcast channel's bandwidth among all nodes that share it and collisions are structurally prevented.

TDM (time-division multiplexing)

TDM divides a broadcast channel in time:

Simple four-node TDM example

In the classroom analogy:

TDM eliminates collisions and is perfectly fair: each node gets a dedicated throughput of R/N bits/s per frame.

However, it has two main drawbacks, even when only one node has data to send:

  1. it's limited to an average rate of R/N bits/s
  2. a node must wait for its turn, even if the channel is idle

FDM (frequency-division multiplexing)

FDM divides a broadcast channel in frequency:

Simple four-node FDM example

Like TDM, FDM:

CDMA (code division multiple access)

CDMA assigns a unique code to each node:

CDMA is widely used in cellular networks. It's tightly tied to wireless channels.

Random access protocols

In a random access protocol, all nodes share the same channel and transmit whenever they have data, which can lead to collisions.

If a collision occurs:

There are many random access protocols, such as:

Slotted ALOHA

In slotted ALOHA:

Each node decides randomly whether to transmit in a given slot:

Slotted ALOHA

As more nodes join, the chance that two or more choose the same time slot increases very quickly.

The efficiency is the fraction of successful slots, assuming many active nodes where each always has data to send:

ALOHA

In the first ALOHA protocol, packets are transmitted at any time without waiting for slot boundaries.

This means that transmissions can overlap in time, so collisions are more likely.

To understand its efficiency, we make the following assumptions:

For a transmission to be successful:

This is because even a slightly overlapping transmission causes a collision:

ALOHA collisions

So, compared to slotted ALOHA, the vulnerable period is effectively twice as large, since transmissions are not aligned to slots (collisions can happen from both past and future overlaps).

As a result, the probability of a successful transmission is reduced.

Mathematically, it turns out that the maximum efficiency of pure ALOHA is exactly half that of slotted ALOHA.

CSMA (carrier sense multiple access)

ALOHA is like a rude student who keeps talking without checking if anyone else is already speaking. This often causes people to talk over each other.

In human protocols, there are two important rules in conversation:

  1. listen before speaking:
    • if someone else is talking, wait until they finish
    • in networking, this is called carrier sensing
    • before sending data, a node listens to the network
    • if another node is already transmitting, it waits
    • once the network has been quiet for a short time, it starts transmitting
  2. stop if someone starts talking at the same time:
    • if two people begin speaking together, they usually stop and let one person continue
    • in networking, this is called collision detection
    • while transmitting, a node keeps listening to the network
    • if it detects another transmission at the same time (a collision), it:
      • stops transmitting
      • waits for a random amount of time
      • then tries again by listening before transmitting

These ideas form the basis of two networking protocols:

If all nodes perform carrier sensing, why do collisions still happen?

This is easier to understand with a space-time diagram:

Time Events Image

At time \( t_{0} \)

  • node 1 senses the channel is idle
  • it begins transmitting
  • its signal travels in both directions along the broadcast medium
  • although the signal travels very fast, it still takes a short time to reach the other nodes

At time \( t_{1} \)

  • node 2 also wants to transmit
  • 1 is already transmitting
  • 1's signal has not yet reached 2
  • node 2 cannot hear 1, so it believes the channel is idle
  • 2 begins transmitting

A short time later

  • the signals from 1 and 2 meet somewhere on the shared medium
  • a collision occurs because the signals overlap
  • eventually, both 1 and 2 detect the collision

Carrier sensing cannot completely prevent collisions because network signals need time to travel.

The longer the propagation delay (the time for a signal to travel from one node to another), the greater the chance that two nodes will both think the network is idle and begin transmitting at the same time.

CSMA/CD (carrier sense multiple access with collision detection)

In CSMA/CD, an adapter in a node follows these rules:

Step Description

1

get a datagram from the network layer and build a link-layer frame

2

sense the channel:

  • if idle (no signal energy entering the adapter from the channel) → start transmitting
  • if busy → wait until it becomes idle, then send

3

while transmitting, continue to sense the channel

4

stop immediately if a collision is detected

5

wait a random time after aborting, then try again

Stopping early improves performance because the nodes do not finish sending a corrupted frame.

If devices always waited the same fixed amount of time after a collision, they would continue colliding forever.

Random waiting reduces this chance, but:

So the best waiting time adapts to congestion:

Ethernet uses binary exponential backoff to choose the random delay.

After \( n \) collisions, a node picks:

The size of the sets from which \( K \) is chosen grows exponentially with the number of collisions:

Each new frame is treated independently by CSMA/CD and may transmit immediately if the channel is idle, while other nodes may still be in exponential backoff from earlier collisions.

Mathematically, it turns out that CSMA/CD efficiency works best when frames are long and propagation delay is small, allowing the channel to be used productively most of the time.

Taking-turns protocols

In taking-turns protocols, nodes share the channel by taking turns transmitting.

They often approximate fairness, unlike random-access protocols such as ALOHA and CSMA, where collisions and contention can lead to uneven access and throughput between nodes.

Polling protocols

A polling protocol requires one of the nodes to be designated as a master node:

Advantages:

Drawbacks:

  1. polling delay:
    • each node must wait until the master polls it
    • if only one node is active, it still has to wait while the master polls inactive nodes
    • as a result, the active node cannot achieve the full rate of R bits/s
  2. single point of failure:
    • if the master node fails, the entire network stops working

Historically used in systems such as Bluetooth piconets.

Token-passing protocols

Instead of a master node, a small control frame called a token is passed between nodes in a fixed order:

When a node receives the token:

Advantages:

Drawbacks:

E.g., IEEE 802.5 Token Ring.

DOCSIS

A cable access network connects thousands of residential cable modems to a Cable Modem Termination System (CMTS).

DOCSIS (Data Over Cable Service Interface Specifications):

DOCSIS is an excellent case study because it combines all three classes of multiple access protocols.

Frequency-division multiplexing

DOCSIS uses FDM to divide the cable spectrum into multiple upstream and downstream channels:

Downstream transmission

A downstream channel:

Upstream transmission

An upstream channel:

Each upstream channel is divided into intervals of time (TDM-like) containing mini-slots during which cable modems can transmit to the CMTS.

The CMTS centrally grants permission to individual cable modems to transmit during specific mini-slots by sending MAP messages on the downstream channel that specify:

Since the CMTS allocates mini-slots, it can prevent collisions during data transmission.

Requesting transmission opportunities

How does the CMTS know which cable modems have data to send?

A cable modem:

Summary

DOCSIS combines all three classes of multiple access protocols:

  1. channel partitioning:
    • FDM partitions the cable spectrum into upstream and downstream channels
    • TDM-like scheduling divides each upstream channel into mini-slots
  2. random access:
    • mini-slot-request frames are transmitted using random access and may collide
  3. taking turns:
    • the CMTS centrally allocates mini-slots, allowing cable modems to take turns transmitting without collisions

Previous Error-detection and error-correction techniques All ⏎ Next Switched LANs and ARP

A Kemar Joint