1. 程式人生 > >WLAN 802.11 系列之一:基礎知識

WLAN 802.11 系列之一:基礎知識

這篇文章源於公司內部的一次分享,個人結合之前的知識和近年來工作上的實際運用整理出來,有些內容是從網路上找到的認為很不錯的東西,如果這些東西涉及到智慧財產權請及時通知我,如果文章中有錯誤或者有任何疑問可以留言也可以發郵件給我,一起討論,[email protected]

這一系列的WLAN 802.11知識分享會涵蓋從入門到一些艱難晦澀的部分,總體而言是基於協議並且注重軟體開發過程的實際應用,通俗的說,就是滿滿的都是乾貨,接下來就開始了,繫好安全帶。

請注意,WLAN是一個寬泛的概念,在文中我們討論的是其狹義的概念,範圍縮小到802.11 所規定的WiFi部分。

802.11 概覽

802.11是什麼?
IEEE 802.11 is a set of media access control (MAC) and physical layer (PHY) specifications for implementing WLAN computer communication. They are created and maintained by the IEEE LAN/MAN Standards Committee.802.11 協議框架上面的連結涵蓋了802.11協議的發展路線圖,包含了已經發布的諸如802.11 b/g/n和11ac,以及IEEE 802.11工作組目前在起草中的協議,像11ad專業術語DSSS
-direct-sequencespread spectrum,直接序列擴頻OFDM-Orthogonalfrequency-division multiplexing,正交頻分複用MIMO-Multi-inputMulti-outputMCS-Modulationand Coding Scheme,調製與編碼策略GI-GuardInterval,安全間隔QAM-Quadrature Amplitude Modulation,正交幅度調製BPSK-BinaryPhaseShift Keying,二相位偏移調製QPSK-四相位偏移調製

下面顯示了802.11協議簇從1997年到目前的發展路線,


802.11協議簇龐大而複雜,幸好有人做了下面的總結,


可以看到,802.11協議覆蓋包含了從頻譜到安全性到漫遊等方方面面,實際應用中接觸到的一般是802.11 b/g/n和11ac,802.11k和802.11r.

802.11 b釋出於1999年,PHY採用DSSS,工作在2.4G,最高速率支援11Mbps.

802.11 a釋出於1999年,PHY採用ODFM,工作在5G,最高速率支援54Mbps.

11b和11a一個速率不行,一個頻段太高(5G晶片研製在當時面臨不小挑戰)所以並沒有流行開來,IEEE注意到這種情況,所以在2003年釋出了各取所長的11g,PHY採用OFDM,工作在2.4G,速率支援到54Mbps,並且向下相容11b,成為802.11系列中最為紮實的一個版本。

2009年釋出的11n到目前為止都是主力版本,下面來看看她的特性,


可以看到11n最高速率支援到600Mbps,而11ac更是達到了6.9Gbps,總結802.11協議簇的演化過程,我們可以發現,技術的進步主要來自如下幾個方面:

1, 數字訊號調製解調技術,DSSS到OFDM

2,編位元速率的提高,從3/4到5/6

3,更高的頻寬,從20M到40M到80M一直到11ac的160M

4,更短的GI,從800ns到400ns.

5, MIMI技術的應用,從SISO到MIMO,從SU-MIMO到MU-MIMO

下面稍微說一下MIMO技術的原理,



上面都是一些理論上的只是,在實際工作中,我們需要確定我們的裝置工作在正確的模式(b/g/n mode)上,怎麼確定呢?

下面是一份11n和11ac的碼錶,非常有用,所謂的空間流簡單的說就是收發天線的數量,比如單天線和雙天線,甚至是三天線四天線。


11ac的碼錶




從哪裡可以找到上面這資料呢,這得用sniffer工具了,sniffer簡單的說是一張沒有過濾功能的網絡卡,可以捕獲空氣中的802.11幀,加上軟體工具就可以解析這些幀,常用的工具是Ominpeek和wireshark,下面是一個ominpeek抓取和解析的截圖,



可以說Sniffer是分析WiFi的利器,怎麼用呢?

Sniffer設定通道過濾MAC 地址ProtocoletcDecrypt,怎麼解密 使用WPA2加密的802.11幀?Ominpeek和wireshark都可以,但是需要如下資訊無線名稱SSID密碼PWD4次握手的全過程,EAPOl4-way handshake,這一點很重要,不然是無法解密的。•更多關於使用Omnipeek/wireshark的知識,請檢視下面來自Cisco的一份sniffer使用指南,非常詳實https://www.cisco.com/c/en/us/support/docs/wireless-mobility/80211/200527-Fundamentals-of-802-11-Wireless-Sniffing.html#anc71這一期的分享就到這裡,有問題可以留言,可以發郵件,下一期是關於通道的知識,歡迎繼續關注,謝謝。

相關推薦

WLAN 802.11 系列之一基礎知識

這篇文章源於公司內部的一次分享,個人結合之前的知識和近年來工作上的實際運用整理出來,有些內容是從網路上找到的認為很不錯的東西,如果這些東西涉及到智慧財產權請及時通知我,如果文章中有錯誤或者有任何疑問可以留言也可以發郵件給我,一起討論,[email protected

SpringCloud學習系列之一基礎概念介紹

引言 本系列博文主要為SpringCloud學習的博文系列。 到底什麼是微服務 SpringCloud元件介紹 一、到底什麼是微服務 1、微服務的定義 "Microservice" 即微服務,在Martin Fowler的博文中介紹了微服務的具體概念。它是一

APK反編譯之一基礎知識

      上面定義的static fields和instance fields均為成員變數,格式是:.field public/private [static] [final] varName:<型別>。然而static fields和instance fields還是有區別的,當然區別很明顯,

夯實基礎系列網路知識總結

前言 無論是 C/S 開發還是 B/S 開發,無論是前端開發還是後臺開發,網路總是無法避免的,資料如何傳輸,如何保證正確性和可靠性,如何提高傳輸效率,如何解決會話管理問題,如何在網路擁堵環境下采取措施。這些都是需要了解的。 今天總結下與網路相關的知識,不是那麼詳細,但是包含了我認為重要的所有點。如果想深入瞭解

夯實基礎系列資料庫知識總結

前言 對於後端開發人員來說,經常會和資料打交道,今天總結下資料庫相關的知識。包括MySQL,JDBC基礎,JDBC進階,MongoDB,效能優化。以下對這些內容做一些簡單的總結,同時我也有完整的思維導圖,部落格上不方便展示,若有需要,請關注微信公眾號永倫的小屋,後臺回覆 資料庫 即可獲取。 細節 1.

C#基礎拾遺系列之一先看懂IL程式碼

一、前言 首先,想說說為什麼要寫這樣系列的文章,有時候在和同事朋友聊天的時候,經常會聽到這樣的話題: (1)在這家公司沒什麼長進,程式碼太爛,學不到東西。(你有沒有想想框架為什麼這樣寫,程式碼還可以怎麼去優化,比如公司使用Dapper,原始碼研究過沒以及這樣封裝原因是啥) (2)現在只會Ctrl + C

夯實基礎系列Linux 知識總結

前言 現在很多公司專案部署都使用的是 Linux 伺服器,網際網路公司更是如此。對於大一些的網際網路公司,系統可能會非常複雜,本地無法啟動,一般都會採用專門的開發機給開發人員開發測試使用。我實習期間接觸的專案沒一個可以在本地啟動的,都需要寫好程式碼,把程式碼更新到開發機上,然後編譯部署,

1900頁Python系列PPT分享一基礎知識(106頁)

總體說明:本套PPT共約1900頁,包含董付國老師Python系列圖書《Python程式設計基礎》(2017年7月第5次印刷)、《Python程式設計(第2版)》(2017年9月第4次印刷)、《Python可以這樣學》(2017年7月第3次印刷)、《Python程式設計開發寶典》(2017年10月第2次印刷

C++入門課程系列基礎知識篇(1)

錯誤 輸出 控制 保時捷 基本類 blue val prim ets C++是一種靜態數據類型語言。 ? 在C++語言中,變量是計算機編程的一個重要概念,它是一個存儲值的字母或名稱? 有幾種基本類型的變量:string (“一組詞”)、chars(‘a’)、floats(1

CS231n(一)基礎知識

深度學習 highlight 自己 元組 .py [0 upper bsp python 給自己新挖個坑:開始刷cs231n深度學習。 看了一下導言的pdf,差缺補漏。 s = "hello" print s.capitalize() # 首字母大寫; prints "

VGA系列之一VGA顯示網絡圖片

參數 sed 學習 nal 計數 2個 導入 查看 這一 一休哥是在讀研究生的時候開始正式接觸FPGA的,之所以這麽說呢,是因為之前本科參加電賽的時候也學過一點FPGA的知識,可惜學習周期太短導致那次電賽慘敗。可能世上就是有這麽巧的事,剛上研究生的第一天,老板就給了我一塊F

EJB系列 - 會話Bean基礎知識

java 軟件開發 java ee ejb peretang 本人博客文章網址:https://www.peretang.com/basic-knowledge-of-session-bean/ 什麽是會話 有限的時間周期內,客戶端和服務器之間的連接 為什麽使用會話

framework7學習筆記二基礎知識

部分 cnblogs query 基礎 logs code 自己 $$ pan 一:DOM7 framework7有自己的 DOM7 - 一個集成了大部分常用DOM操作的高性能庫。它的用法和jQuery幾乎是一樣的,包括大部分常用的方法和jquery風格的鏈式調用。 在開發

初識RabbitMQ系列之一簡單介紹

核心概念 out queue producer 概念 images logs 紅色 .org 一:RabbitMQ是什麽? 眾所周知,MQ是Message Queue(消息隊列)的意思,RabbitMQ就是眾多MQ框架其中的一款,開源實現了AMQP協議(官網:http:/

緩存系列之一buffer、cache與瀏覽器緩存

網站 按鈕 強制 根據 3.4 發生 htm 多少 pan 緩存系列之一:buffer、cache與瀏覽器緩存 一:緩存是為了調節速度不一致的兩個或多個不同的物質的速度,在中間對速度較快的一方起到一個加速訪問速度較慢的一方的作用,比如CPU的一級、二級緩存是保存了CPU最近

數據庫面試系列之一內連接和外連接

數據庫 面試 log 全外連接 nbsp 結果 連接 -1 .cn 內連接是返回關系表中既滿足查詢條件又滿足連接條件的元組 外連接是返回關系表中滿足查詢條件的但不一定滿足連接條件的元組 外連接分為:左外連接,右外連接,全外連接 左外連接是返回左表中滿足查詢條件但不一定滿

項目管理碎碎念系列之一幹系人管理

關系 mbo ans con lock iar odi 所在 alt 初次見到“項目幹系人”這個詞,我是有點蒙圈的,因為這不太符合中文平時的表達。 其實所謂“項目幹系人”,英文稱作“Project Stakeholder”,翻譯成利益相關者,對其含義就一目了然

mongo 3.4分片集群系列之一淺談分片集群

通過 分片集群 分配 指定 可擴展性 key 負載 snap 無法 這篇為理論篇,稍後會有實踐篇 1、分片集群是個啥玩意兒 要回答這個問題,首先得知道它是由什麽東東組成的。 MongoDB分片集群由以下組件組成: mongos:mongos作為查詢路由器,提供客戶端應用程

Office 365 系列之一初識Office 365

什麽是office 365 office 365 最近項目越來越多,壓力也是越來越大,而且到了年底了還要進行Office 365的考試,最近小編是在閑暇之余各種查看Office 365的資料,今天跟大家分享自己對 Office 365 的學習和理解,如有寫得不對的地方還希望大家多 多指點哦。

【視頻編解碼·學習筆記】7. 熵編碼算法基礎知識 & 哈夫曼編碼

html 節點 表示 效率 article tchar vector nod code 一、熵編碼概念: 熵越大越混亂 信息學中的熵: 用於度量消息的平均信息量,和信息的不確定性 越是隨機的、前後不相關的信息,其熵越高 信源編碼定理: 說明了香農熵越信源符號概率之間的