Skip to content

ieee80211: advance sequence spaces from the first zero value - #1201

Draft
mgonzalezlopezudc wants to merge 1 commit into
inet-framework:masterfrom
mgonzalezlopezudc:fix/ieee80211-audit-sequence-allocation
Draft

mgonzalezlopezudc wants to merge 1 commit into
inet-framework:masterfrom
mgonzalezlopezudc:fix/ieee80211-audit-sequence-allocation

Conversation

@mgonzalezlopezudc

@mgonzalezlopezudc mgonzalezlopezudc commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Summary

Legacy allocation started at one, while QoS shared-space allocation could reuse a counter across different receivers. Start at zero and advance each shared allocation, preserving same-receiver collision avoidance and per-RA/TID spaces.

Scope

Legacy and QoS sequence allocators.

Standards references: IEEE 802.11-2024 §10.3.2.14.2 and Table 10-5.

Dependencies and merge order

No prerequisite within this audit series; this topic was built and tested independently on the pinned base.

Validation

Pinned test base: 7287f347aaca36e557c708d6930a6f5a450b2833.

The isolated topic head passed an assertions-enabled debug build (-O0 -Wall -g0; debug symbols omitted for storage) and the focused checks below. The larger integration source tree also passed debug and release compilation; no separate release build is claimed for this topic.

Executed focused test commands, from the repository root after source setenv -q:

inet_run_unit_tests -m debug -f 'Ieee80211SequenceAllocation_1\.test'
(
cd tests/fingerprint
./fingerprinttest -m 'showcases/wireless/fragmentation' -F tyf -d -t 4
)

Results: 1 unit, 4 fingerprint cases passed.

Fingerprint baseline updates cover every recorded configuration that serializes an affected 802.11 management or non-QoS data frame: 92 showcase rows, 74 example rows, 5 tutorial rows (Step8A, Step8B, Step9, Step10C, Step12), and the two DCF fragmentation rows already recorded (DCFnofrag dbb5-67b0 → e0f6-575e, DCFfrag 2e7b-0729 → 7d08-3938). Reverting only the allocator fix restored the old values.

The corrected 12-bit Sequence Control values move only the ~tND ingredient across all 173 updated rows:

  • tests/fingerprint/showcases.csv: 94 rows (92 showcase rows and 2 DCF fragmentation rows)
  • tests/fingerprint/examples.csv: 74 rows
  • tests/fingerprint/tutorials.csv: 5 rows

Other ingredients (tplx, ~tNl, tyf) and all timing/event sequences remain unchanged across these configurations. The other 251 selected wireless rows remain unchanged.

Limits and review status

Fingerprint baseline changes are strictly limited to the ~tND ingredient across the 173 configurations that serialize affected 802.11 management or non-QoS data frames.

Draft pending final independent review and reconciliation with current upstream. Live PR overlap has not been reverified against the pinned test base.

@mgonzalezlopezudc
mgonzalezlopezudc force-pushed the fix/ieee80211-audit-sequence-allocation branch 3 times, most recently from ed6123a to cb54a34 Compare September 16, 2026 12:22
The legacy allocator pre-incremented a counter initialized to zero, so its first emitted sequence number was 1. The QoS shared allocator advanced only to avoid a same-receiver collision, allowing allocations for different receivers to reuse the shared counter value.

Initialize the legacy predecessor to 4095 and advance the QoS shared counter for every allocation while preserving same-receiver collision avoidance and independent receiver/TID spaces. Unit coverage checks first allocation, progression, wrap, collision avoidance, and independent spaces.

The corrected 12-bit Sequence Control values move only the ~tND fingerprint ingredient for every recorded configuration that serializes an affected 802.11 management or non-QoS data frame: 92 showcase rows, 74 example rows, 5 tutorial rows, and the two DCF fragmentation rows already recorded. The other 251 selected wireless rows remain unchanged.

SignalLevels and ChangingPaths were omitted from the tag-filtered refresh because their rows lacked the wireless selector tag despite containing 802.11 nodes. Add that test metadata so future wireless fingerprint campaigns include both configurations.

Change: src.ieee80211.sequence | behavior.change.fix | fingerprint test | wifi-audit
@mgonzalezlopezudc
mgonzalezlopezudc force-pushed the fix/ieee80211-audit-sequence-allocation branch from cb54a34 to 9d59d40 Compare September 16, 2026 12:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant