1. 程式人生 > >一、 wlan基礎知識

一、 wlan基礎知識

基本概念

WLAN

Wireless Local Area Networks,無線區域網絡。它利用射頻(Radio Frequency,RF)的技術,使用電磁波代替雙絞線進行網路通訊。以無線方式構成的區域網.

Wi-Fi

Wireless Fidelity是一個無線網路通訊技術的品牌,由Wi-Fi聯盟所持有。目的是改善基於IEEE 802.11標準的無線網路產品之間的互通性。遵循802.11相關標準。 

Wi-Fi認證產品的logo如下。

IEEE 802.11

IEEE (Institute of Electrical and Electronics Engineers)是美國電氣和電子工程師協會的簡稱。又稱為LMSC(LAN /MAN Standards Committee, 區域網/都會網路標準委員會),致力於研究區域網和都會網路的物理層和MAC層中定義的服務和協議,對應OSI網路參考模型的最低兩層(即物理層和資料鏈路層)。

該委員會被細分成多個工作組(Working Group),每個工作組負責解決某個特定方面問題的標準。工作組也會被賦予一個編號(位於802編號的後面,中間用點號隔開)

工作組內部還會細分為多個任務組(Task Group,TG),修改、更新標準的某個特定方面。其編號為英文字母,如a、b、c等。

802.2 :邏輯鏈路控制Logical Link Control

802.3 :乙太網Ethernet (CSMA/CD)

802.11:無線區域網Wireless LAN  

IEEE 802 家族,以及其與 OSI 模型的關係,如下圖所示:

802.11制定了無線網路技術的規範,其發展歷經好幾個版本. a/b/g/n/ac/ad/.

AP

Access Point,AP本身也是一個STA,只不過它還能為那些已經關聯的(associated)STA提供分散式服務

BSS

Basic Service Set. 一個熱點的覆蓋範圍被成為一個BSS.

基本服務組合,是 802.11 網路的基本元件,由一組彼此通訊的工作站所構成。

ESS

BSS 的服務範圍,可以涵蓋整個小型辦公室或家庭,不過無法服務較廣的區域。 802.11允許將幾個 BSS 串連為延伸式服務組合(extended serviceESS),藉此延伸無線網路的覆蓋區域· 所謂 ESS 就是利用骨幹網路將幾個BSS連在一起。

所有位於同一個 ESS 的基站將會使用相同的服務組合識別碼(set identifier,簡稱 SSID),通常就是使用者所謂的網路「名稱」。

ESS是一種邏輯概念.

cfg80211

核心空間中用於配置管理無線裝置的部分. nl80211為使用者空間用於配置管理無線裝置.

cfg80211與FullMAC驅動或基於mac80211的驅動一起工作.

CLI

Command-line interface. 提供可以在控制檯或終端器中執行的除錯工具.

FullMAC

FullMAC 用於描述MLME在硬體中進行管理的無線晶片. 不能使用mac80211寫FullMAC無線驅動.

git-describe

git-describe 是一個git命令, 其輸出如下:

v3.12-11297-g6579946

第一部分是當前的tag/版本號;第二部分是標籤應用以來應用的補丁數量;最後一部分,在g後面是最後一次提交的SHA1號.

IBSS

Independent Basic Service Set. 他是最基本的Ad-Hoc模式.

Information Element

Information Element (IE) 是IEEE 802.11 WLAN協議的管理幀的一部分,is a part of management frames in the IEEE 802.11 wireless LAN protocol. IE用於在管理幀中傳遞關於自身的描述資訊。通常每個幀中有幾個IE,每個都是由型別-長度-值(TLVs, Type-length-value)構成的。

IE的通用結構如下:

|   1   |    1   |     1-255       |
+-------+--------+-----------------+
| Type  | Length |     Data        |
+-------+--------+-----------------+

 而供應商特定的IE大致如下:

|   1   |    1   |          4        |    1-251   |
+-------+--------+-------------------+------------+
|  221  | Length |        OUI        |     Data   |
+-------+--------+-------------------+------------+

iw

iw是一個基於nl80211的無線裝置除錯工具. 一種CLI.

nl80211

使用者空間側用於配置管理無線設定. 它是一個基於NETLink的使用者空間協議。cfg80211用於核心空間配置管理無線裝置。

 利用NL80211可使用多個使用者空間應用。

mac80211

用於SoftMac無線晶片的一組驅動API.

MLME

Media Access Control (MAC) Sublayer Management Entity.

MLME是物理層(PHY)MAC狀態機駐留的管理實體。MLME有助於如下操作:

  • Authenticate 認證

  • Deauthenticate 取消認證

  • Associate 連線

  • Disassociate 斷開連線

  • Reassociate 重新連線

  • Beacon 信標幀

  • Probe 探測幀 mac80211的MLME管理當前在如下程式碼實現:
    net/mac80211/ieee80211_sta.c       //只處理STA MLME

PHY

physical-layer. 物理層

SME

Station Management Entity, often prepended with AP (Access Point)

SoftMAC

SoftMAC是用於描述WNIC型別的術語,其中MLME在軟體中進行管理。例如,mac80211是用於SoftMAC WNIC的驅動API。

SSID

Service Set IDentifier.  SSID是附加到無線網路上的所有分組的程式碼,以標識每個分組作為該網路的一部分。該程式碼由1-32個八位位元組組成的字串(通常表示為區分大小寫的字母數字字元)。

Station (STA)

STA是用於描述無線裝置的通用術語,它可以與無線網路中的其他站通訊。站的常見形式是接入點(AP)、計算機或電話。

STA就是指攜帶無線網路介面卡(即無線網絡卡)的裝置

SoftMAC VS FullMAC

SoftMAC和FullMAC的區別在於MLME是在軟體還是硬體上實現.

SoftMAC: MLME通過軟體實現.
FullMAC: MLME通過硬體實現,也叫HardMAC.

SoftMAC優勢:
1. 低硬體成本
2. 升級驅動可以直接通過更新軟體實現
3. 不同無線網路裝置可以使用同一個驅動
4. 對裝置有更精細的控制

FullMAC的主要優勢是執行快,不佔用cpu.

SoftMAC通過mac80211框架實現,FullMAC通過cfg80211框架實現
不管SoftMAC還是FullMAC,都要呼叫cfg80211,mac80211通過cfg80211的callback來執行.

Wireless Medium

無線介質(Wireless medium),指能傳送無線MAC幀資料的物理層.射頻和紅外

Distribution system

傳輸系統(Distribution system),屬於 802.11 的邏輯元件,負責將幀(frame)轉送至目的地。

WE

Wireless-Extensions. 老的驅動API,用於使用者空間←→核心空間通訊。被cfg80211淘汰.

WEXT

Wireless-Extensions. 老的驅動API,用於使用者空間←→核心空間通訊。被cfg80211淘汰.

WIPHY

Wireless PHY.

通道劃分

WiFi組網模式

Ad-Hoc模式, Ad Hoc也叫對等網路。只有STA組成,不存在AP。Independent BSS。

Infrastructure(AP模式). Infrastructure BSS

WDS網橋模式

相關推薦

wlan基礎知識

基本概念 WLAN Wireless Local Area Networks,無線區域網絡。它利用射頻(Radio Frequency,RF)的技術,使用電磁波代替雙絞線進行網路通訊。以無線方式構成的區域網. Wi-Fi Wireless Fidelity是一個無線網

計算機基礎知識

    1、電腦和伺服器的主要構成:         機箱:             1)電源:                 功能:保障電腦的電源供應,伺服器一般提供雙電源(雙冗餘電源)。             2)主機板:                 功能:所有

實驗物件基礎知識4

 public Point x1,x2,x3; //構造方法設定三角形的三點的位置 public void setTri(Point a,Point b,Point c){  x1=a;x2=b;x3=c; } //獲得任意兩點之間的距離並返回距離值 public double length(Point a,

CS231n():基礎知識

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

Vue.js 運行環境搭建詳解(基於windows的手把手安裝教學)及vuenode基礎知識普及

頁面 沒有 全能 服務器程序 重載 帶來 size 耐心 編程   Vue.js 是一套構建用戶界面的漸進式框架。他自身不是一個全能框架——只聚焦於視圖層。因此它非常容易學習,非常容易與其它庫或已有項目整合。在與相關工具和支持庫一起使用時,Vue.j

HTML基礎

列表 按鈕 兩個 -s htm 合並 rip res 超鏈接 一、HTML基礎1、基本元素<p>,<a>,<img>,<h1>-<h6>,<br>,<hr>; &nasp

angularjs基礎了解

避免 for 應用 目前 tor sta run 頁面 引用 說明:此處比較雜,目前沒有統一的總結哦 angularjs 是mvvm框架 加載JS文件總是使用後綴為.min.js的文件,因為這些文件是經過壓縮的,能提升應用的啟動速度 模塊說明: 1、config只能註入

tensorflow筆記()之基礎知識

輸入 gpu oat baidu nump 通過 img ubuntu下 能力 tensorflow筆記(一)之基礎知識 版權聲明:本文為博主原創文章,轉載請指明轉載地址 http://www.cnblogs.com/fydeblog/p/7399701.html 前言

網絡技術基礎()計算機網絡基礎知識

高級 簡介 依賴性 維基 es2017 都是 iso 光驅 範圍 零.簡介 1.計算機網絡是當今最熱門的學科之一。近十幾年來,網絡已經成為一種全社會的、經濟的、快速的存取信息的必要手段。網絡技術對未來的信息產業乃至整個社會都將產生深遠的影響。 一.計算機網絡的產生與發展

Python隨筆()python基礎

python在pycharm下設置自己的模板:在File---settings---File and Code Templates---Python script 腳本裏添加:#!usr/bin/env python #-*- coding:utf-8 _*- """ @author:${USER} @fi

EF6 在原有數據庫中使用 CodeFirst 總復習(搭建基礎環境)

width eight tle sca 使用 圖片 zh-cn span del 本來以為已經會了,可動手時發現許多問題還是模糊不清,正所謂眼高手低。只能重新查資料,再復習一遍。 vs.net2013 ef6 mvc5 sqlserver2008 一、建立數據

.Net基礎【1.8】遞歸

[] 字符 pan 多少 style 兩個 ons int urn 1.什麽是遞歸? 方法自己調用自己。兩個條件:遞推方法;遞歸的終止條件:什麽情況下不再遞歸。 2.案例1:階乘      //階乘:5!=5*4*3*2*1。6!=6*5*4*3*2*1。f(n)=n*f

.Net基礎【1.7】數組常見問題

.net ble dex float 元素 class post out blog 對於int、double、float等數組,沒有賦值的元素被初始化為0; 對於String等引用類型初始化為null。 如果程序IndexOutOfRangeException那是因為數組

計算機基礎

tle blog itl htm 計算機基礎 .com title www 基礎知識 目錄 計算機基礎知識 計算機的發展史及多道技術 計算機網絡知識簡單介紹一、計算機基礎

JS筆記():基礎知識

bsp man function child 變量 file 使用 IE 單獨 (一) 標識符 標識符就是一個名字,在JS中,標識符用來對變量和函數命名,或者用做JS代碼中某些循環語句中的跳轉位置的標記。JS的標識符必須以字母、_或$符號開始,後續字符可以是字母、數字、_

PHP面試(二):程序設計框架基礎知識算法與數據結構高並發解決方案類

表設計 工作原理 結構 單一入口 php 能力 高並發解決方案 數據表 缺點 一、程序設計 1、設計功能系統——數據表設計、數據表創建語句、連接數據庫的方式、編碼能力 二、框架基礎知識 1、MVC框架基本原理——原理、常見框架、單一入口的工作原理、模板引擎的理解 2、常見框

開發基礎(1)

關系 精度 與或非 實體 lam 打印 獲取 表達式 with 語言 Python 選擇Python是因為Python是一門動態腳本型語言,也有人稱之為膠水語言,實在是因為Python的應用太廣泛了,什麽都能做,但想做好還是要看領域。 由於Python是邊解釋邊運行的,所以

開發基礎(3)

例如 規則 來源 就會 絕對導入 直接 模塊名 組合類 私有變量 模塊 模塊也是一個對象 模塊的出現是為了代碼的重用 通過模塊,將大型應用分解為小模塊,小模塊分別實現不同的功能 使用模塊最重要的就是要避免循環導入 模塊名/目錄名遵循命名語法規則 import如何工作

Go基礎程式設計:遞迴函式函式型別匿名函式與閉包

1. 遞迴函式 遞迴指函式可以直接或間接的呼叫自身。 遞迴函式通常有相同的結構:一個跳出條件和一個遞迴體。所謂跳出條件就是根據傳入的引數判斷是否需要停止遞迴,而遞迴體則是函式自身所做的一些處理。 //通過迴圈實現1+2+3……+100 func Test01() int { i

軟體開發架構網路基礎知識osi七層模型

一、軟體開發的架構 涉及到兩個程式之間通訊的應用大致可以分為兩種: 第一種是應用類:qq、微信、網盤、優酷這一類是屬於需要安裝的桌面應用 第二種是web類:比如百度、知乎、部落格園等使用瀏覽器訪問就可以直接使用的應用 這些應用的本質其實都是兩個程式之間的通訊。而這兩個分類又對應了兩個軟體開發的架構