1. 程式人生 > >802.11與802.3資料幀轉換(即有線和無線資料幀轉換)

802.11與802.3資料幀轉換(即有線和無線資料幀轉換)

原文直接摘自《802.11無線網路權威指南》第二版,僅僅作為個人記錄下。

無線到有線(802.11至802.3)
當基站的無線介面接收到準備傳送至有線網路的幀,基站就必須在兩種介質間橋送幀。非正式來講,以下是基站必須進行的一系列工作:
1. 當基站接收到一個幀,首先會檢測該幀基本上是否完整。接下來,基站會針對所使用的物理層,檢視本章之前討論過的物理層標頭,然後驗證802.11 幀上的幀檢驗碼。
2. 證幀接收無誤後,基站就會繼續檢視是否應該進一步處理該幀。
  • a. 傳送至基站的幀,會將基站的MAC 地址(即BSSID)擺在802.11 MAC 標頭的Address 1 位。不符該基站BSSID 的幀應予以丟棄。(有些產品並未實現此步驟。)
  • b. 802.11 MAC 接著監測且移出重複的幀。產生重複幀的原因很多,不過最常見的情況是802.11 應答資訊在傳送過程中丟失或有所損毀。為了簡化上層協議的工作,因此由802.11 MAC 負責剔除重複的幀。
3. 一旦基站判定需要進一步處理該幀,就必須予以解密,因為該幀會受到鏈路層安全演算法的保護。解密的細節詳見後續與安全性有關的章節。
4. 成功解密之後,基站即檢視該幀是否為幀片段,需要進一步重組。完整性保護(integrity protection)針對重組後完整幀,而不是個別的幀片段。
5. 如果經過步驟2a 的BSSID 檢驗,判定基站必須橋送該幀,較複雜的802.11 MAC 標頭就會被轉換為較簡單的乙太網 MAC 標頭。

  • a. 記錄在802.11 MAC 標頭之Address 3 位裡的目的地址,會被複制到乙太網的目的地址。
  • b. 記錄在802.11 MAC 標頭之Address 2 位裡的源地址,會被複制到乙太網的源地址。
  • c. 從802.11 Data 位裡的SNAP 標頭,將(Type)型別程式碼複製到乙太網幀裡的Type 位。如果該乙太網幀亦使用SNAP,就複製整個SNAP 標頭。
  • d. 順序資訊主要供幀片段重組之用,不過當幀被橋送之後即予以丟棄。
  • e. 如果有標準的服務質量處理程式,即在此進行無線與有線的Qos 對應。不過到目前為止,用來表示服務質量的形式,通常就是在有線幀中使用802.1p優先性等級bit,或者其他的控制形式。
6. 重新計算幀檢驗碼。乙太網與802.11 使用相同的演算法來計算FCS,不過802.11 幀多出一些位,同時為FCS 所保護。
7. 所產生的新幀交付乙太網介面傳送。

有線到無線(802.3至802.11)
將幀從基站有線端橋接至無線介質的過程剛好相反:
1. 驗證乙太網 FCS 後,基站首先會檢視是否需要進一步處理所接收到的幀,亦即檢視該幀的目的地址是否屬於目前與基站連線的工作站。
2. 將SNAP 標頭附加於乙太網幀的資料之前。上層封包是以SNAP 標頭進行封裝,而其Type 位是自乙太網幀裡的型別程式碼複製而來。如果該乙太網幀亦使用SNAP,則複製整個SNAP 標頭。
3. 對幀的傳送進行排程。802.11 包含複雜的省電過程,將幀置於傳送序列之前,基站可能會將幀暫存於快取區。
4. 一旦幀被置於序列待傳,就會被賦予一個順序編號。如有必要,所產生的資料可以用完整性檢驗值加以保護。如果幀需要分段,則會根據事先設定好的分段門限進行分段。分段幀時,將會在Sequence Control 位指定片段編號。
5. 如果幀需要保護,則對幀(或每個幀片段)的本體加密。
6. 802.11 MAC 標頭是根據乙太網 MAC 標頭產生。
  • a. 將乙太網 的目的地址複製到802.11 MAC 標頭的Address 1 位。
  • b. 將BSSID 置於MAC 標頭的Address 2,以做為無線介質上之幀的傳送者。
  • c. 將幀的源地址複製到MAC 標頭的Address 3 位。
  • d. 將其他位填入802.11 MAC 標頭。也就是把預計傳送時間填入Duration 位,並把適當的旗標填入Frame Control 位。
7. 重新計算幀檢驗碼。乙太網與802.11 使用相同的演算法來計算FCS,不過802.11 幀多出一些位,同時為FCS 所保護。
8. 所產生的新幀交付802.11 介面傳送。

相關推薦

802.11802.3資料轉換有線無線資料轉換

原文直接摘自《802.11無線網路權威指南》第二版,僅僅作為個人記錄下。無線到有線(802.11至802.3)當基站的無線介面接收到準備傳送至有線網路的幀,基站就必須在兩種介質間橋送幀。非正式來講,以下是基站必須進行的一系列工作:1. 當基站接收到一個幀,首先會檢測該幀基本

802.11協議精讀10:節能模式PSM

序言 在802.11主要的版本中,總共定義了四種節能模式,本文主要關注最初始的PSM模式,對於在802.11e中新增的ASPD以及802.11n中新增的PSMP,SMPS機制,我們在下一篇再進行論述。 PSM(Power Save Mode):802.11協議中初始的節能

802.11ac802.11n的主要差異

  無線新時代已經來臨,802.11ac標準作為一個偉大的充滿革命性和創新性地技術標準,將無線接入帶入真正的G位元時代。在2014年,隨著企業將需要支援越來越多的無線裝置和頻寬密集型應用程式,基於新802.11ac標準的Wi-Fi裝置將受到越來越多使用者的關注。《IP領航

stringQString之間的轉換兩種方法:fromStdString直接轉換,或者fromLocal8Bit(cstr.c_str())

div body from local AR c_str dst blog 轉換 string str;QString qstr;//從QString 到 std::stringstr = qstr.toStdString();//從std::string 到QString

Python3OpenCV3.3 圖像處理--環境搭建簡單DEMO

http opencv3 opencv col lan pytho href tar .net https://blog.csdn.net/qq_32811489/article/details/78636049 https://blog.csdn.net/gangzhu

資料結構演算法JavaScript描述讀書筆記js實現連結串列-迴圈連結串列

迴圈連結串列 迴圈連結串列同單鏈表,只需設定head.next = head就可以實現迴圈連結串列 其它方法不變,但是遍歷方法需要改一下 function display() { var cur = this.head; var str = ''; //如果不設定

資料結構演算法JavaScript描述讀書筆記js實現連結串列-雙向連結串列

雙向連結串列 雙向連結串列的 remove() 方法比單向連結串列的效率更高,因為不需要再查詢前驅節點了 //建立建構函式建立節點 function Node(element){ this.element = element; this.next = null; th

外部類內部類之間的訪問程式碼是連結串列資料結構為例

外部類與內部類之間的訪問 內部類相當於外部類的一個成員,和其它成員處於同一個級別,因此可以在內部類中直接訪問外部類的各個成員(包括私有屬性)。 需要注意的是在外部類中要想訪問內部類的各個成員(這裡也包括內部類的私有屬性)就必須先例項化內部類,然後才能訪問。對

數字相關轉換包括英文漢語拼音

數字到英文描述的轉換 1.給定一個整數,列印該整數的對應的英文描述,例如輸入1234,輸出“One Thousand,Two Hundred Thirty Four” 解題思路: 例如在轉換19323984時,我們可以考慮分段處理,每三位轉換一次,

【LeetCode & 劍指offer刷題】查詢排序題7:11旋轉陣列的最小數字153. Find Minimum in Rotated Sorted Array系列

【LeetCode & 劍指offer 刷題筆記】目錄(持續更新中...) 153. Find Minimum in Rotated Sorted Array Suppose an array sorted in ascending ord

jQueryAjax小練習-二級聯動從Oracle資料庫獲取資料

之前做了個簡單的二級聯動小練習,這次算是加強版的吧,希望能對大家有點用處。 //主頁面 <html> <head> <meta charset="UTF-8"> <title>Insert titl

機器學習 第3篇:資料預處理使用插補法處理缺失值

插補法可以在一定程度上減少偏差,常用的插補法是熱卡插補、擬合插補和多重插補。擬合插補,要求變數間存在強的相關性;多重插補(MCMC法),是在高缺失率下的首選插補方法,優點是考慮了缺失值的不確定性。 一,熱卡插補 熱卡填充(Hot deck imputation)也叫就近補齊,對於一個包含空值的物件,熱卡填充法

java String長度varchar長度匹配理解字符字節長度理解

轉化 筆記 指定 是我 有一個 ati 法語 itl 情況 java String長度與varchar長度匹配理解(字符和字節長度理解) string中的length()長度,返回的是char的數量,每個char可以存儲世界上任何類型的文字和字符,一個char 而

獲取屏幕寬高度可視區域寬高度availWidth、clientWidth、width、innerWidth

標簽欄 獲取 包含 cli 頂部 bsp ima img nbsp   經常會遇到需要獲取屏幕寬度、高度,可視區域寬度、高度等問題,也就常跟這幾個打交道,一不小心,還真愛弄混淆了。   先來列舉下這幾個吧:   screen.availHeight、screen.ava

【紫書】例題3-5 生成元Digit Generator, ACM/ICPC Seoul 2005, UVa1583

暴力 真的 mes sed stream 簡單 post flag 個數 【題目描述】 如果x加上x的各個數字之和得到y,就說x是y的生成元。給出n(1≤n≤100000),求最小生成元。無解輸出0。例如,n=216,121,2005時的解分別為198,0,1979。 【代

【紫書】例題3-6 環狀序列Circular Sequence, ACM/ICPC Seoul 2004, UVa1584

alt scanf tdi post audio 描述 spa log return 【題目描述】 長度為n的環狀串有n種表示法,分別為某個位置開始順時針得到。例如,圖中的環狀串有10種表示: CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等。在這些表示

PythonC之間的相互呼叫Python C API及Python ctypes庫

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

UnityShader 漫反射蘭伯特半蘭伯特光照模型-逐頂點逐畫素光照

漫反射效果 漫反射 是指投射在粗糙表面上的光向各個方向反射的現象。當一束平行的入射光線射到粗糙的表面時,表面會把光線向著四面八方反射,所以入射線雖然互相平行,由於各點的法線方向不一致,造成反射光線向不同的方向無規則地反射,這種反射稱之為“漫反射”或“漫射”。這種反射的光稱為漫射光。很

Android 資料持久化技術資料儲存方式

在討論資料持久化技術之前我們先了解幾個概念? 什麼是瞬時資料:儲存在記憶體當中,有可能會因為程式的關閉或其他原因導致記憶體被收回而丟失的資料。   為什麼採用資料持久化技術:為了保證關鍵資料在程式退出時不被丟失。   什麼是資料持久化技術:將記憶體中的瞬時資料

易學筆記-0:Java語言總結/0.11 Java中輸出的流表示都是針對位元組陣列byte[ ]操作

Java中輸出的流表示 針對快取的: ByteArrayOutputStream StringBufferOutputStream 針對檔案的:FileOutputStream 針對物件:ObjectOutputStream