Networking · Wireless Networking
OFDMA Scheduling and Multi-User Transmission in Wi-Fi
How a 20 MHz channel is split into resource units, how a trigger frame coordinates simultaneous uplinks, and what the scheduling overhead costs.
Contention allocates the medium to one station at a time. That is a reasonable rule when the alternative is chaos, but it is a poor match for traffic that consists of many small frames from many stations. A sensor reporting 40 bytes, a phone sending a keepalive, and a laptop sending an acknowledgement all need a turn, and each turn costs a preamble, an interframe space, and an acknowledgement that dwarf the payload. Under contention the cost is paid per station, so the cell’s efficiency falls as the number of stations rises.
Orthogonal frequency-division multiple access changes the unit of allocation from the whole channel to a slice of it. Several stations transmit at once, each on a different set of subcarriers, and one preamble and one acknowledgement cover the group. The coordination that contention provided implicitly is replaced by an explicit schedule that the access point publishes.
Resource units as the allocatable quantum
The high-efficiency amendment divides a channel into resource units, each a contiguous group of subcarriers. In a 20 MHz channel the usable 242 subcarriers can be allocated as:
| Unit size (subcarriers) | Approximate bandwidth | How many fit in 20 MHz |
|---|---|---|
| 26 | 2 MHz | 9 |
| 52 | 4 MHz | 4 |
| 106 | 8 MHz | 2 |
| 242 | 20 MHz | 1 |
The counts are not simply 242 divided by the unit size, because the units are laid out with null subcarriers between them to keep the spectrum tidy and to keep each unit’s edges inside the mask. A 26-tone unit occupies 26 × 78.125 kHz, about 2.03 MHz, and the nine units that fit in 20 MHz account for 234 of the 242 subcarriers; the remainder are the nulls at the boundaries.
The number of subcarriers per unit determines both the capacity and the minimum duration of a transmission. A 26-tone unit carries at most 26 subcarrier symbols per OFDM symbol, and with 12.8 microsecond symbols a frame cannot be shorter than one symbol plus its guard interval. Small units therefore suit small frames carried for a longer time; large units suit bulk data. The allocation is a two-dimensional fit: subcarriers and time.
Pilots scale with the unit. A 26-tone unit carries 2 pilots, a 52-tone unit 4, and a 242-tone unit 8, so the proportion of capacity spent on tracking is highest for the smallest units. A 26-tone unit holds 24 data subcarriers, so at 256-QAM it carries 24 × 8 coded bits per OFDM symbol before the coding rate is applied, and the two pilots take roughly 8 percent of the unit.
Downlink: the AP decides alone
Downlink multi-user transmission needs no new coordination frame. The AP knows what it has queued for each station, it knows each station’s capabilities and its channel state from sounding feedback, and it transmits a single preamble followed by a payload whose resource units are assigned to different stations. Each station decodes the preamble, finds the unit addressed to it in the preamble’s user field, and decodes only that unit’s subcarriers.
The preamble is longer than a single-user one because it repeats the training symbols per user, and the repetition is per unit group rather than per station. The cost is that the preamble grows with the number of users, so the efficiency gain from multi-user transmission is realised only when the payload is long enough to amortise it. A downlink transmission to four stations with 100 bytes each is worse than four single-user frames, because the multi-user preamble is paid once and the payloads are tiny. The break-even point depends on the modulation, but the shape of the trade is fixed: multi-user wins on payload, loses on preamble.
Multi-user multiple-input multiple-output is the companion mechanism, and it is a different resource. OFDMA separates users by frequency, MU-MIMO separates them by spatial signature, and the two can be combined: a resource unit can carry multiple streams to different stations if the channel matrix supports the separation. The sounding feedback that makes MU-MIMO possible is the same feedback a scheduler uses to choose a modulation for each user, which is why the two are usually implemented together.
Uplink: the trigger frame
Uplink is the harder direction because the AP does not control the stations’ queues. A station may have nothing to send, may have more than fits in its allocation, or may have a frame that is urgent. The AP must learn enough about each station’s queue to schedule, and it must grant permission in a way that all the stations can act on simultaneously.
The trigger frame does both. It is a control frame transmitted by the AP that carries a common information field and a list of per-user fields. The common field gives the uplink length, the channel width, and the guard interval. Each per-user field gives the association identifier of the station, the resource unit it may use, the modulation and coding scheme, the coding type, and a target received signal strength. A station that finds its identifier decodes the frame and transmits exactly the allocated burst at the start of the interval the trigger defines.
Synchronisation is the delicate part. All the participating stations must begin transmitting within the cyclic prefix window, or their signals arrive misaligned and the AP cannot separate them. The guard interval is the tolerance: a station whose transmission starts more than the guard interval late corrupts its own unit and possibly its neighbours’. The trigger frame’s timing is defined relative to the end of the frame plus a short interframe space, so every station derives the start instant from the same event, and the accuracy of each station’s clock becomes a system constraint.
There are several trigger types, distinguished by a field in the common information. A basic trigger solicits data. A buffer status report poll solicits a report of each station’s queue depth, which is how the AP learns what to schedule in the next round. A multi-user block ack request solicits acknowledgements for a previous downlink transmission. A beamforming report poll solicits channel state. The same frame format carries all of them, and a station that does not recognise the type ignores the frame.
/* Scheduler sketch: one unit per station, sized to the station's queue. */
struct alloc { int aid; int ru_tones; int mcs; };
size_t schedule_uplink(const struct station *s, size_t n,
struct alloc *out, size_t max_out)
{
/* Unit sizes a 20 MHz channel permits, smallest first. */
static const int ru_sizes[] = { 26, 52, 106, 242 };
const size_t n_ru = sizeof ru_sizes / sizeof ru_sizes[0];
size_t k = 0;
for (size_t i = 0; i < n && k < max_out; i++) {
if (!s[i].pending || s[i].ru_capable == 0)
continue;
size_t j = 0;
/* Take the smallest unit that carries the queue in one symbol;
each step up roughly halves the symbols the frame occupies. */
while (j + 1 < n_ru &&
s[i].pending > (size_t)(ru_sizes[j] * s[i].bits_per_tone / 8))
j++;
out[k].aid = s[i].aid;
out[k].ru_tones = ru_sizes[j];
out[k].mcs = s[i].safe_mcs;
k++;
}
return k;
}
The sketch is deliberately crude: a real scheduler must respect the constraint that the units in one trigger must tile the channel, which means the set of unit sizes chosen must be one of the standard’s permitted layouts. Choosing nine 26-tone units is valid; an arrangement of the permitted sizes that does not correspond to one of those layouts is not, because the assignments are enumerated rather than composed freely.
The overhead that limits the gain
A trigger-based uplink costs more than the data it carries. The trigger frame itself is tens of bytes at one of the low rates in the basic set, the stations respond after a short interframe space, and the AP must acknowledge the group with a multi-station block acknowledgement. For four stations each sending 200 bytes, the coordination frames can approach the payload in airtime.
The counterweight is that the coordination is amortised over the group. A single trigger that elicits four transmissions replaces four separate contentions, each of which would have cost a DIFS, a backoff, a preamble, and an acknowledgement. The saving is real when the group is large and the payloads are not trivial; it is negative when the AP triggers a single station.
The second cost is latency. A station with a frame ready cannot transmit it; it must wait for a trigger, and the AP may not poll it immediately. Under contention a station with a small frame can win the medium quickly. Under scheduled access it waits for its turn in a schedule it does not control. This is why the amendment retains contention-based access as an alternative: a station can still use the distributed procedure, and the AP’s schedule coexists with it.
The third cost is state. The AP must track each station’s capabilities, its buffer status, and its channel state, and the station must track its allocations. A station that misses a trigger — because it was asleep, or because the frame was corrupted — misses its allocation, and the AP does not know whether the station was silent because it had nothing to send or because it never heard the trigger. The buffer status report poll exists precisely to reduce that ambiguity, at the cost of another round trip.
Where the design points
The whole mechanism is a bet that coordination beats contention when the number of stations is large and the frames are small. The bet is sound in a lecture hall, an airport lounge, or a stadium, where dozens of devices each send a trickle. It is a poor bet in a home with three devices sending bulk transfers, where contention’s simplicity costs little and the trigger overhead is pure loss.
That is why the amendment’s features are individually negotiable. An AP advertises which it supports, a station advertises which it can use, and the schedule applies only to the intersection. A network with no high-efficiency stations behaves exactly as its predecessors did, and a network with them gains only in the conditions the mechanism was designed for.
The scheduling decisions themselves are not specified. The standard defines the frames, the unit layouts, and the timing, and leaves the choice of who transmits when to the implementation. The consequence is that two APs with identical hardware can produce very different behaviour under the same load, and the quantity that distinguishes them is not the peak rate in a specification table but the airtime each station receives — the same measure that Airtime fairness and the slow-client problem uses, and one that depends on the frame durations fixed by OFDM subcarrier spacing, guard intervals, and channel width. Whether the concurrent transmissions a schedule creates are actually separable in space is the question Spatial reuse, OBSS, and BSS coloring addresses from the other direction.
References
- IEEE 802.11ax: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications — High Efficiency WLAN — IEEE
- IEEE 802.11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications — IEEE
- OFDM for Wireless Multimedia Communications — van Nee and Prasad, Artech House