Umber Networks · Fi-Wi-L4S Whitepaper

Contended Access Scheduling Protocol (CASP) for 802.11 networks

Problem statement from Umber Networks: why a contended 802.11 access link resists scheduling from above the MAC, what interface would let the network schedule it, and what has to be measured before any of it is worth standardizing. The implementation mechanics live in a separate engineering note, available on request.

Every 802.11 station contends for the medium independently, following carrier sense multiple access with collision avoidance (CSMA/CA) ahead of transmitting. It applies listen before talk (LBT), then must back off, whether or not anyone else is on the air. Three properties define the algorithm. Distributed: each station runs it alone on what it can hear, answering to no arbiter anywhere in the system. Stochastic: each draws its own random delay, so chance settles the order. Exponential: each failure doubles the previous range, so consecutive failures compound rather than add. As more stations hold traffic, the odds that several draw the same slot climb steeply, and collisions, retries and widening latency tails follow. The CSMA/CA algorithm runs whenever the driver has packets queued for the 802.11 MAC, and it goes quiet only while an upper layer withholds them.

This note proposes an interface that lets a scheduler control when traffic becomes eligible to enter that contention process. It asks two things. The scheduler sends grants, and the endpoint follows them, holding traffic back and releasing it when its grant opens. Grant times are stated in the TSF domain that 802.11 already synchronizes. The protocol has the working name CASP, and it defines neither the scheduler nor any part of the 802.11 MAC. Section 6 sets out the asks.

1Problem statement and control principle

The client's 802.11 MAC arbitrates whenever its transmit queue is non-empty. Nothing above the MAC can suspend arbitration directly; the only state in which the MAC is guaranteed quiet is an empty FIFO. Arbitration is also unconditional. A station alone on an idle medium still defers for AIFS and still draws a backoff before each transmission after its first, because the post-transmission backoff is mandatory and only a frame arriving at a medium already idle for AIFS may skip the draw. The cost is a floor under every transmission rather than a penalty that appears under load, which is what makes arbitrations per delivered megabyte meaningful at any density. Every mechanism in this note is therefore an instrument for manufacturing the absence of payload at all instants outside a grant, so that the transition from FIFO-empty to FIFO-non-empty happens only when the scheduler intends it. The direction that makes this hard is uplink: downlink transmissions are the infrastructure's own to time, while on the uplink the contended link is the client's first hop and the queue feeding it sits inside a device the network does not own.

The target is not zero arbitrations. An 802.11ax trigger frame does not eliminate arbitration either: the AP wins one EDCA contention, and the triggered responses follow within SIFS (the short interframe space, a fixed 16 µs turnaround in the 5 GHz OFDM PHYs, too short for any competing station to begin contending), consolidating N stations' arbitrations into one. Even a centralized 802.11 scheduler has to win the medium before it can allocate it, and that arbitration is not free.1 Consolidation rather than elimination is therefore the target, though the interface described here reaches it differently. Each participating station still runs its own arbitration. What a scheduler changes is how often queues become eligible to arbitrate at all, and how the surviving arbitrations are arranged so that the stations it controls avoid each other. That gives the first figure of merit for everything below: arbitrations per delivered megabyte at fixed offered load.

Consolidation is not the only target. EDCA, the access-category-aware form of CSMA/CA in modern 802.11, resolves contention by having each station draw a random backoff from its contention window, so when several stations contend in the same interval the chance that several draw the same slot follows the birthday problem: collision probability climbs steeply with the number of simultaneous contenders rather than in proportion to them.

P(collision) = 1 − (CW+1)! / [ (CW+1−n)! · (CW+1)n ]
n  stations contending in the same interval.
CW+1  backoff slots each draws from, uniformly.
AC_BE: CWmin 15, so 16 slots. Assumes all n contend at once.

It is the birthday computation with backoff slots in place of birthdays, and it grows with the n(n−1)/2 pairs that can coincide. The assumption that all n contend at once is weaker than it looks, because every countdown pauses while the air is busy and resumes when it clears, so stations that deferred through the same transmission resume together and concentrate their draws into the same window.

Collision probability against simultaneous contenders (CW = 15) Contenders (n) P(collision) 2 6% 3 18% 4 33% 6 66% 8 88% 10 97% The MAC sets the limit while the PHY still holds capacity in hand, so adding capacity leaves collisions in place.

Each collision costs a whole transmission, the retry that follows it, and a doubled contention window that widens the latency tail. Reducing how many stations contend at the same instant therefore attacks packet error rate directly. The collision component of PER is the part a scheduler can address, since errors the channel itself causes are not its to fix, and separating the two is a measurement problem rather than an assumption.

When grants to participating clients are non-overlapping, those clients no longer collide with one another, and their surviving arbitrations tend to encounter an idle medium, costing only an AIFS deferral (the arbitration interframe space, a per-access-category wait of a few tens of microseconds) plus a random backoff. Traffic outside the scheduler's control, such as neighboring BSSs and non-participating stations, remains, and that residual external contention is itself a measurable quantity.

2Why we do not wait for trigger-capable silicon

802.11ax added trigger frames, the standard's own move in this direction. The AP sends a trigger naming which stations may transmit, on which resource units, at what rate and transmit power, and those stations respond together one short interframe space later. The AP contends once on their behalf, so many station contentions collapse into one,1 and for the length of that exchange the uplink is scheduled rather than contended for. The precedent matters here, because 802.11 has already accepted that an infrastructure decision beats leaving the outcome to independent draws. The rest of this section is why a scheduler cannot rest on it today.

Native 802.11ax trigger-based uplink, in which the AP's Trigger frame solicits a trigger-based (TB) PPDU response from the client, requires PHY and MAC support at the client and the AP that cannot be assumed across the installed fleet, and the required capabilities are not exposed as a portable host-controlled scheduling primitive on deployed clients. Support and behavior also vary across implementations, and UORA (UL OFDMA-based Random Access), the trigger mechanism through which a station announces demand the scheduler does not yet know about, cannot be relied upon as a consistently available demand-discovery mechanism across the deployed fleet. A scheduling architecture intended to operate on today's heterogeneous installed base therefore cannot depend on native trigger operation.

Most of the trigger machinery is also more than this system needs. Its weight serves simultaneous multi-user uplink: resource unit (RU) allocation, per-STA power pre-correction toward a target RSSI, tight timing and frequency pre-synchronization, and commanded MCS (modulation and coding scheme) all exist so that several clients' TB PPDUs arrive at the AP aligned in time, frequency, and power. The scheduling model here does not require simultaneity within a channel. Its scheduling unit is the TXOP (transmit opportunity), a whole-channel time grant to one station, which drops the synchronization, power-control, and RU-signaling burden entirely and leaves rate adaptation with the client as part of its autonomous execution of an eligibility decision. The frequency-domain multiplexing that RUs provide within a BSS can instead be obtained across an array of radios where a deployment has one, with clients scheduled concurrently on different radios and channels against the same shared timeline. The residual cost of time-only grants, per-station preamble and interframe-space overhead under many small uplink flows, is the case the grant policy exists to compress.

Triggers also scope a single BSS with the AP as scheduler. Standards-based multi-AP coordination is still evolving and will take time to become broadly available across a heterogeneous installed fleet, while software mechanisms deployable on existing silicon can be evaluated much sooner. When MAPC primitives become widely available, they can become additional actuators under the same control plane rather than replacing it.

3What the IP layer can and cannot reach

There is no protocol mechanism by which a node in the forwarding path installs state in an endpoint's kernel. SO_TXTIME and TCP_TX_DELAY are syscalls, not protocols: the resulting departure time lives in skb->tstamp, which has no wire representation and is consumed within the sender's host and NIC transmit path. This is the Earliest Departure Time (EDT) model of pacing, in which each packet carries a "not before" timestamp decided in the sender's stack and enforced by the sender's own qdisc or NIC launch-time hardware; EDT is a host-stack construct with no existence in any IP or TCP header. The contrast with the MAC is exact: 802.11 gives the network an in-band control channel into the client's transmit machinery (EDCA parameter sets, TWT agreements, triggers), while IP was designed with essentially none. The path-visible knobs are the receive window, ACK arrival timing, the ECN field, and the timing of our own downlink. That asymmetry, a rich control plane at L2 and a near-empty one at L3/L4, is the gap this program fills.

It follows that the FIFO empty-to-non-empty instant is writable from three practical control strata. From the path, we can only induce the transition by shaping the inputs endpoints already respond to. From code resident on the client, we can set it directly; that is a resident client library. From the MAC, triggers and TWT let client firmware honor a grant sent over the air. Section 4 states the interface the first two strata require; the mechanisms that realize them are developed in the engineering note. The MAC-side actuators are existing 802.11 mechanisms and are outside the scope of this problem statement.

4The interface: a grant, in TSF time

Scheduling a hop the network does not own reduces to two obligations at the interface between the scheduler and the endpoint. The scheduler sends grants. The endpoint follows them, which means holding traffic back and releasing it when its grant opens, and doing so on a clock both ends already share. Naming the two separately is the useful move, because each has a different maturity, a different threat model, and a different answer to whether it belongs in a standard at all.

Grant. An eligibility decision: an identifier, a start time in the TSF domain, and an airtime budget, with a size hint for what the endpoint should release. A grant is not a command. An endpoint that follows one releases traffic at the granted time; its MAC then contends for the medium as it always would, so the grant shapes the contention process rather than replacing it, which is what makes the model workable on silicon the network does not control. A grant governs when traffic is released. Congestion control continues to govern how much, and how the two interact is the open question in Section 5.

Time. Grant times, carried in the TSF domain. A grant means nothing without a timebase both ends agree on, and 802.11 already supplies one: every associated station disciplines a hardware TSF counter from beacon timestamps inserted at PHY transmit time, a protocol-mandated synchronization service that reaches unmodified clients for free. The interface therefore carries no clock protocol of its own. It states grant times in the TSF domain and relies on the synchronization the standard already performs. A scheduler serving several radios holds a mapping from each radio's TSF onto its own timeline, an affine fit of offset and drift, and that mapping is the scheduler's business rather than the interface's. One gap is open and worth naming rather than deferring. A station's hardware disciplines its TSF, but userspace has no portable way to read it, so an endpoint built as an application library cannot by itself place a grant on the clock the grant is stated in. Endpoints with kernel or driver access can; the library tier cannot. Serving that tier needs a discipline exchange between scheduler and endpoint, which this interface does not define and which is anticipated extension work. Adding one would widen the security surface with it, since any such exchange inherits the delay-attack threat model PTP deployments know well.

A scheduler needs more than these two. It needs to know what the medium actually did: whether a grant was executed, when frames reached the air, what the radio observed while sending them. Defining that telemetry, deciding how to obtain it and deciding what to make of it all sit outside CASP. They belong to the scheduler, and CASP does not define the scheduler.

Three constraints are load-bearing from the first line of any specification. Grants must be authenticated inside an encrypted session: a spoofed grant is a targeted denial of service, an altered grant time moves a transmission to an instant the scheduler did not choose, and any telemetry a scheduler pairs with grants carries per-packet radio state, an RF fingerprint that must never travel in cleartext. Everything after a minimal invariant header should be encrypted for the anti-ossification reason QUIC established. And declared endpoint capability must be treated as a hint rather than a contract, with actual obedience classified from measurement, because a network scheduling hardware it does not own cannot take that hardware's word for anything.

Nothing in these two functions presumes a particular infrastructure. A single autonomous AP sits on the return path of its own clients, already distributes a TSF its stations discipline against, and can observe its own medium, so it can issue grants and keep the timebase without any of the architecture described elsewhere in Umber's work. What it cannot do is schedule against a neighbor, because the arbitrations it consolidates are only its own. Centralizing the scheduler across cells that share a medium extends the same interface to infrastructure self-contention, which is an argument for a particular deployment rather than for the interface. The interface should be judged on its own.

Participation is by consent. An endpoint takes part by running the library, so a scheduled client is one that has agreed to be scheduled, and no CASP state reaches a device whose owner has not installed anything.

Non-participating clients require no changes and remain standard 802.11 participants, receiving whatever shaping the path and the MAC stratum can induce. Their service under scheduling is a measured quantity rather than an assumption.

5What needs experimental validation

There are two figures of merit. The first is arbitrations per delivered megabyte at fixed offered load, which follows directly from the control principle: the target is consolidation rather than elimination, so the metric has to count arbitrations against delivered work rather than count throughput alone. The second is the collision component of packet error rate, with the retry airtime and contention-window growth that follow from it, since suppressing simultaneous contention is the other half of what scheduling is for. Distinguishing collision loss from channel loss is part of the experiment rather than an input to it, which is one reason these measurements belong on a rig where the channel is controlled.

The measurements that matter are comparative, on identical channel conditions, across an open-loop baseline and each successive degree of scheduling. Around that sit three questions the architecture cannot answer from first principles. Congestion control interacts with grant shape, and a window-limited ACK-clocked sender and a paced sender do not respond alike to the same grant, so the result may invert which congestion control looks better under scheduling. The delay between a grant and the first frame on air is a distribution rather than a constant, and guard bands should be adapted from it rather than set conservatively. And traffic outside a particular mechanism's control, from ARP and ND through DHCP renewals, mDNS, DNS, keepalives and management frames, puts a floor under the consolidation ratio. Which traffic that is depends on the stratum doing the scheduling, so the floor is a measured quantity rather than a fixed list.

These are measurements on a conducted RF rig, not simulations, and they are the evidence any standardization argument would have to rest on. Umber is running them. The reference load generator is iperf 2, which already carries per-packet release-scheduling machinery in its UDP path, and the grant-obedient generator is being built in the open.

6Positioning and the ask

Cellular demonstrated that scheduled MACs beat contended MACs at density where the scheduler owns the medium, and C-RAN centralized the scheduler because vantage wins. Unlicensed spectrum withholds that ownership, which is what the empirical program tests. In Umber's Fi-Wi implementation the scheduler resides in the Concentrator, which has the vantage: every queue it serves, path-visible flow and transport state, every radio head, the WAN side, and one master clock; the client MAC remains the microsecond executor of eligibility decisions planned at millisecond scale. The nearest neighbors in this building are DetNet and RAW, and the distinction is the whole point: DetNet schedules transmitters the network owns, while this schedules transmitters the network does not own, by consent, on a medium it shares with strangers. 802.11 provides rich MAC and PHY scheduling actuators, but it does not define this L3/L4 scheduling interface between the network and an endpoint. The interface described here is that missing layer, and it is neither Fi-Wi-specific nor, in principle, Wi-Fi-specific: it is an L3/L4 scheduling control plane for a contended access link, with TSF as the timebase Wi-Fi happens to distribute for free.

The transport community has spent the last decade building the instruments a scheduler composes: earliest-departure-time pacing, L4S signaling, QUIC's userspace deployment model, and per-packet telemetry in the IOAM tradition. What remains is to aim them at the hop where the queues actually form.

The name is deliberately free of Wi-Fi, of fiber and of any vendor, and free of a direction: the contended link is the last hop of a downlink and the first hop of an uplink, and the interface serves both. That neutrality is the positioning argument in miniature, since the interface is the contribution and the scheduler behind it is not.

The asks are specific. Review the CASP grant semantics and their congestion-control interaction, since the question in Section 5 is genuinely open and may invert current assumptions. Attack the grant timing: what an adversary gains by delaying, replaying or altering a grant time in the TSF domain, and what the endpoint should do about a grant that arrives late. Run the code. And if the contended access link is your problem too, say so on the record, because that is the evidence that decides whether this is one company's engineering problem or the community's.

A reasonable path is running code and measurements alongside a problem-statement draft. Likely discussion venues include TSVWG and CCWG for the transport interactions, and IPPM if the measurement work becomes a document of its own. Whether a working group follows is for that process to determine.

If you schedule packets for a living, the contended access link is the queue you have not scheduled yet. Come schedule it with us.

1. A trigger frame does not arrive on a scheduled medium. The standard requires the AP to win an EDCA contention before it may send one, so every scheduled exchange opens with an unscheduled arbitration. With the commonly used AC_BE parameters, Yalavarthy reports mean access delays for those frames running to milliseconds once the channel is busy, with collision probability above 40 percent under high utilization, and proposes AC_VO parameters to reduce it (Global Journal of Engineering and Technology Advances 23(03), 2025).