Plans for an online meeting regarding Radiotap

Gábor Stefanik netrolller.3d at gmail.com
Fri Aug 21 15:01:51 UTC 2009


Radiotap is a de-facto standard for 802.11 frame injection and reception.
Up to field ID 13, it can truly considered a standard (all current 
implementations
agree on fields 1-13), but after that, implementations diverge widely.

Here is a map of how current implementations define field IDs 14 and up:

Linux (both mac80211 & madwifi, not sure about libertas) & NetBSD:
Field 14: RX flags (standardized field)
Field 15: TX flags
Field 16: RTS retries
Field 17: Data retries

FreeBSD:
Fields 14...17 skipped (incliding standardized field 14), field 18: 
Extended channel

OpenBSD:
Field 14: FCS of the frame (clashes with standard - field 14 is defined 
as RX flags!)
Field 15: Hardware queue
Field 16: RSSI

DragonFly BSD: No fields above 13 implemented.

Aircrack-ng:
Field 14: RX flags (as in the standard)
Field 15: TX flags

CACE AirPcap software:
Field 14: FCS of the frame (clashes with standard; the FCS is also appended
to the end of the packet, so this usage is unneeded)

Wireshark:
Field 14: RX flags, with option to decode FCS instead
Fields 15...17 skipped
Field 18: Extended channel

Radiotap fields 14 and up need to be sorted out to allow further 
advancements
of the standard. In the current state, essentially no fields can be 
added without
risking a collision between implementations. To remedy this, I would 
like to propose
an online mini-summit to be held on Freenode, with the goal of defining 
a standard
way to use fields 14 and up.
The summit is to be held in IRC channel #radiotap, where interested 
parties can join
the discussion and propose changes. My preferred time for this event is
August 25, 2009, 18:00 GMT; please let me know if this date is 
unsuitable for any of
you, and I will try to find a better time for the summit when everyone 
interested can attend.

My current proposal for the future standard field ordering beyond field 14:

Field 14: RX flags (as defined by the standard)
Field 15: TX flags (as used by Linux, NetBSD and aircrack-ng)
Field 16: RTS retry count (as used by Linux and NetBSD)
Field 17: Data retry count (as used by Linux and NetBSD)
Field 18: Extended channel (as used by FreeBSD and Wireshark)
Field 19: RSSI (OpenBSD's field 16 moved to field ID 19 to avoid collisions)

In addition, the following new fields may be worth addition to the standard:
RTS threshold, Fragmentation threshold, Extended rate (with MCS index 
support).
I'm deliberately not assigning field numbers to these proposed fields 
yet to prevent
early, divergent implementations of them; the field IDs for these should 
be decided
during the summit.

I'm for dropping the following fields, please let me know during the summit
if there are any use cases for them:
-FCS of the frame (if we have FCS data, then it should be appended to the
end of the frame, not put into the header)
-Hardware queue (I don't see the point of this... maybe a full QoS 
control field
would be needed instead)

Hope to see you on Freenode at the set date. Again, if the time is a 
problem,
respond, and I will try to find a better time.

Sincerely,
Gábor Stefanik <netrolller.3d at gmail.com>



More information about the freebsd-mobile mailing list