2013-07-16 57 views
2

我試圖自己分析802.11幀,我遇到了兩個我無法解決的問題。802.11 QoS數據幀

首先,LLC(邏輯鏈路控制)報頭何時遵循IEEE 802.11數據幀?我認爲當一幀數據存在時,在數據之前總是會有一個llc的開銷,但我有一個以太網II而不是LLC的wireshark。但是我不知道如何真正知道它是否會成爲遵循802.11數據頭的LLC或Ethernet II報頭。 802.11頭中沒有字段指定以下內容。

其次,當我打開包含802.11 QoS數據幀的捕獲文件時,我注意到了wireshark中的一些內容。在頭文件末尾有QoS控制字段,這是正常的,它在IEEE 802.11文檔中有詳細說明(我一遍又一遍地閱讀它,試圖找到我的問題的答案)。但是,接下來有兩個字節wireshark認爲802.11報頭的一部分(當你點擊原始字節時,wireshark指向802.11報頭,但是字節的含義不會顯示在報頭的字段中!我的問題是否有意義?

在下面的第一個屏幕截圖中,您會看到選定的802.11標頭,並在十六進制中看到相關字節。 Entire 802.11 header

請注意此數據包的最後幾個字節:00 00 10 aa

現在我擴展802.11頭並點擊它的最後一個字段(QoS控制,在RFC中指定)。你可以看到相應的字節是00 00,但這些字節不是數據包的最後一個字節!仍然有10個是無線數據包的一部分,但我不知道這些字節代表什麼!

last field selected

任何一個有想法?

+0

單擊十六進制轉儲中的實際字節,wireshark將顯示它表示的標題。 :) –

回答

3

首先,何時LLC(邏輯鏈路控制)報頭遵循IEEE 802.11數據幀?

應該總是有一個,儘管對於聚合數據包來說事情可能很奇怪。如果您在802.11接口捕獲並且未在監視模式下捕獲,您可能會看到包含以太網報頭的數據包開始,但這是不同的 - 這是適配器和/或驅動程序將802.11報頭+ LLC報頭轉換爲一個以太網頭。

但是,還有這麼Wireshark的考慮802.11報頭

這實際上可能是「Atheros的填充」的部分2個字節,「有益」插入,在監視模式中,802.11報頭之間和幀體由一些Atheros網絡適配器組成。打開Radiotap標題並查看Flags field中是否設置了「Data Pad」標誌;如果是這樣,數據包有「Atheros填充」。

+0

哇,它是數據簿,我打開radiotap標題,就是這樣!非常感謝你,你爲我節省了很多時間。 Atheros填充總是兩個字節還是可變的? – Starscream

+1

由於[有關Flags字段的頁面](http://www.radiotap.org/defined-fields/Flags)表示:「幀在802.11報頭和有效載荷(到32位邊界)之間具有填充」。填充是將有效負載放在4字節邊界上所需的任何東西,所以如果802.11頭長度是4的倍數,那麼沒有填充,但如果它只是2的倍數,則有2個填充字節,如果它是甚至不是2的倍數,將會有1或3字節的填充。 – 2013-07-17 06:33:02