radiotap.netbsd.org archive mirror
 help / color / mirror / Atom feed
* Proposal for an S1G header for radiotap
@ 2019-02-01  0:02 Richard Sharpe
       [not found] ` <CACyXjPwCydx6fumWdXdLvg-StsRcALBLc5+4fCsGDaC7tcZXCQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Sharpe @ 2019-02-01  0:02 UTC (permalink / raw)
  To: radiotap-sUITvd46vNxg9hUCZPvPmw
  Cc: Aaron J. Lee, Ray Wang, tlin-+OaQ/Okkt+3YtjvyW6yDsg

[-- Attachment #1: Type: text/plain, Size: 2668 bytes --]

Hi folks,

Attached is a git format-patch patch that contains a proposal for an S1G header.

This proposal was created by Aaron Lee and underwent a couple of
rounds of modifications among the WFA folks.

All I have done here is to transcribe it to the format required by the
documentation web site. Hopefully I have not changed any intent.

Below is some feedback from Johannes about the proposal so he does not
have to retype it along with some comments from me.

We should try to get this finalized as quickly as possible as quite a
bit of work is going on in this area.

Those who are interested in this topic should join the mailing list
because people may forget to reply-all!

> Channel field: This is a really old field, almost certainly somebody
> somewhere uses those bits they suggest already ... but I guess if
> wireshark doesn't parse them then that doesn't really matter, so I guess
> that'd be OK. I'd probably suggest using higher bits anyway, which are
> less likely to already be used.
>
> HALOW field: Mostly looks fine.
>
> I think the NDP indication (0x10 in data1) should probably be moved out
> into the 0-length psdu field we already have, so we don't need to handle
> special cases for it this in wireshark and other dissectors. The known
> bit for that (in known field) makes no sense anyway because clearly you
> have to know whether a packet was NDP or not. Unless I'm completely
> misunderstanding the meaning of this field.

The issue may be that an NDP actually carries non-MAC data. 25 bits in
the case of 1MHz NDPs and 37 bits in the case of 2MHz NDPs. If we can
shoehorn them into the 0-length-PSDU maybe we should.

> The "NSS" field is only 2 bits and can only capture values 0-3, not 1-4,
> so they probably mean the value inside is NSS-1, or NSS==field+1. Fine,
> but needs clarification.

Yeah. I unilaterally clarified that, so Aaron will have to look at it
and correct me if I am wrong.

> Aggregation bit isn't clear - don't they do things similarly to normal
> HT/VHT/HE A-MPDU and could re-use that field for aggregation? That can
> (optionally) also hold whether it was first/last and a cookie which
> frames belong together in an aggregation, so that's useful to have. IMHO
> should be moved to A-MPDU unless somebody can really explain why they
> need something special.
>
> And with that it easily fits into 2 u16 fields rather than 3 (actually
> it fits now even) so might be something to consider, though I don't
> really think space is much of a concern.

-- 
Regards,
Richard Sharpe
(何以解憂?唯有杜康。--曹操)(传说杜康是酒的发明者)

[-- Attachment #2: 0001-Add-an-S1G-field.patch --]
[-- Type: application/octet-stream, Size: 2890 bytes --]

From 68e60d051b459a1144fc805c7b71492815cbfa59 Mon Sep 17 00:00:00 2001
From: Richard Sharpe <rsharpe@localhost.localdomain>
Date: Thu, 31 Jan 2019 15:47:50 -0800
Subject: [PATCH] Add an S1G field.

The author is Aaron Lee. Transcribed by Richard Sharpe.
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>
---
 fields/Channel.md   |  3 +++
 fields/S1G.md       | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 fields/suggested.md |  1 +
 3 files changed, 53 insertions(+)
 create mode 100644 fields/S1G.md

diff --git a/fields/Channel.md b/fields/Channel.md
index 784c5c4..5747862 100644
--- a/fields/Channel.md
+++ b/fields/Channel.md
@@ -21,6 +21,9 @@ Currently, the following flags are defined:
 
 | **Mask** | **Meaning** |
 | 0x0010 | Turbo Channel |
+| 0x0002 | S1G 700MHz spectrum channel |
+| 0x0004 | S1G 800MHz spectrum channel |
+| 0x0008 | S1G 900MHz spectrum channel |
 | 0x0020 | CCK channel |
 | 0x0040 | OFDM channel |
 | 0x0080 | 2 GHz spectrum channel |
diff --git a/fields/S1G.md b/fields/S1G.md
new file mode 100644
index 0000000..a719de8
--- /dev/null
+++ b/fields/S1G.md
@@ -0,0 +1,49 @@
+---
+title: S1G
+categories: [suggested]
+---
+Bit Number
+: 16
+
+Structure
+: u16 known, u16 data1, u16 data2
+
+Required Alignment
+: 2
+
+Unit(s)
+: none
+
+The presence of this field indicates the frame was capture using an S1G phy.
+
+This field contains data to allow correct handling by programs like
+Wireshark etc.
+
+## known
+
+| **`0x0001`** | S1G PPDU Format known |
+| **`0x0002`** | Response indication known |
+| **`0x0004`** | NDP known |
+| **`0x0008`** | Guard interval known |
+| **`0x0010`** | NSS known | 
+| **`0x0020`** | Bandwidth known |
+| **`0x0040`** | MCS known |
+| **`0x0080`** | Color known |
+| **`0x0100`** | Aggregation known |
+| **`0xFE00`** | Reserved |
+
+## data1
+
+| **`0x0003`** | S1G PPDU Format: 0=S1G_1M, 1=S1G_SHORT, 2=S1G_LONG |
+| **`0x000C`** | Response indication: 0=NO_RESPONSE, 1=NDP_RESPONSE, 2=NORMAL_RESPONSE, 3=LONG_RESPPNSE |
+| **`0x0010`** | NDP: 0=Not NDP, 1=NDP |
+| **`0x0020`** | Guard interval | 0=Long GI, 1=Short GI |
+| **`0x00C0`** | Number spatial streams: 0=1 Spatial stream, 1=2, .. 3=4 Spatial streams |
+| **`0x0F00`** | Bandwidth: 0=1MHz, 1=2MHz, 2=4MHz, 3=8MHz, 4=16MHz |
+| **`0xF000`** | MCS (MCS rate index, 0-10, 11-15 reserved) |
+
+## data2
+
+| **`0x000F`** | Color: 0-7 |
+| **`0x0010`** | Aggregation: 0=No aggregation, 1=aggregation |
+| **`0xFFE0`** | Reserved |
diff --git a/fields/suggested.md b/fields/suggested.md
index 32577d9..ec598bb 100644
--- a/fields/suggested.md
+++ b/fields/suggested.md
@@ -18,3 +18,4 @@ This table lists the fields some OSes assigned by bit number:
 | 16 | [RTS retries](/fields/RTS retries), [RSSI](/fields/RSSI) |
 | 17 | [data retries](/fields/data retries) |
 | 18 | [XChannel](/fields/XChannel) |
+| 28 | [S1G](/fields/S1G) |
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-02-05 19:19 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-01  0:02 Proposal for an S1G header for radiotap Richard Sharpe
     [not found] ` <CACyXjPwCydx6fumWdXdLvg-StsRcALBLc5+4fCsGDaC7tcZXCQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-02-01 11:33   ` Johannes Berg
     [not found]     ` <8d1bb1c53c670e7cfddfc0cf2f5e2447b2ee2ecb.camel-cdvu00un1VgdHxzADdlk8Q@public.gmane.org>
2019-02-01 18:35       ` Richard Sharpe
     [not found]         ` <CACyXjPzc--Deaecx9HuV5i0jyO5uUKFOqEeUaWWv3oYXqBqc8g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-02-01 22:03           ` yodazhong-Re5JQEeQqe8AvxtiuMwx3w
2019-02-01 23:04             ` Ray Wang
     [not found]               ` <CY1PR07MB27160AEE154215058A2CA4F2FF920-p80jK0/XGTb2cgXex6xO0uFPX92sqiQdvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2019-02-05  9:55                 ` Johannes Berg
     [not found]                   ` <885a63e846a5c08b111601dfd25bf352c3763538.camel-cdvu00un1VgdHxzADdlk8Q@public.gmane.org>
2019-02-05 19:19                     ` Ray Wang
2019-02-05  9:17             ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).