天天看點

無線網絡概論_4

成幀細節

  • 資料幀:好比802.11中的馱馬,負責在工作站直接闆運輸資料。
  • 控制幀:通常能夠與資料幀搭配使用,負責區域的清空,信道的取得以及載波監聽的維護并于收到資料時給予肯定确認,借此來增加資料傳輸的可靠性。
  • 管理幀:負責監督,主要用來加入或者推出無線網絡以及處理接入點直接關聯的轉移事宜

資料幀

會将上層協定的資料置于幀主體(frame body)中加以傳遞,會用到哪些字段,取決于該資料幀所屬的類型。

無線網絡概論_4

下如圖,則是資料真的分類方式:

無線網絡概論_4

Frame Control:

每個幀控制位都有可能會影響到MAC标頭中其他字段的解讀方式。最值得注意的是那些位址字段,他們的意義将因ToDS及FromDS位的值的不同而不同。

Duration:

用來記載網絡配置設定适量(NAV)的值,通路媒介的時間限制有NAV指定。

  • 無競争周期所傳遞的任何幀必須将該字段設定為32768,此規範适用于無競争周期所傳遞的任何資料幀。
  • 目的地為廣播或多點傳播位址的幀的持續時間為0。此類幀并非原子交換過程的一部分,接收端也不會加以确認,是以給予競争的媒介通路可以在廣播或多點傳播資料幀結束後立即開始。·NAV在幀交換過程中用來保護對傳送媒介的通路。之後也沒有來自鍊路層的确認,是以沒有必要鎖定媒介使用權。
  • Frame Control字段中的More Fragment位為0,最後的幀片段隻需為本身的确認預定媒介使用權,之後就可以恢複基于競争的通路。Duration字段會被設定為傳送一個短幀間間隔及片段響應所需要的時間,如下圖:
    無線網絡概論_4
  • Frame Control字段中的More Fragment位為1,是以,Duration被設定為傳送2個确認加上3個短幀間間隔及下一個幀片段所需要的時間。為最終片段設定NAV的方式本質上于RTS相同,是以也被稱為虛拟RTS。
    無線網絡概論_4

    尋址與DS位:

    如下圖,列出了位址字段在資料幀中的各種用法:

    無線網絡概論_4
  • Address 1

    字段代表幀的接收端位址。再某些情況下,接收端即為目的地,但不總是這樣,目的地是指負責處理幀中網絡層封包的工作站,而接收端則是負責将無線電波解碼為802.11幀的工作站。

  • Address

    2字段是發送端位址,用來發送确認資訊。發送端(transmitter)不見得就是來源地(sender)來源地是指産生幀中網絡層協定封包的工作站;而發送端則是負責将頓傳送至無線鍊路。

  • Address 3 字段則是供接入點與分布式系統過濾之用,不過該字段的用法取決于所使用的網絡類型

    由于IBSS并未使用接入點,是以不會涉及分布式系統。發送端即為幀的來源,而接收端即為幀的目的地。每個幀都會記載BSSID,是以工作站可以檢查廣播與多點傳播資訊。隻有隸屬同一個BSS的工作站才會處理該廣播或多點傳播資訊。在IBSS 中,BSSID 是由随機數産生器随機産生的。

    802.11對來源地與發送端以及目的地與接收端有明确的差別。将送至無線媒介的發送端不見得就是幀的産生者。目的地位址與接收端位址同樣有此差別。接收端可能隻是中間目的地,而幀隻有到達目的地,才會由上層的協定加以處理。

BSSID

每個BSS都會被賦予一個BSSID,是一個長度為48位的二進制辨別符,用來識别不同的BSS。BSSID 的主要優點是它可作為過濾之用。雖然不同的802.11網絡彼此之間可能重疊,但即使如此也不應該讓互相重疊的網絡收到彼此的鍊路層廣播。

在infrastructure BSS 中,BSSID就是建立該BSS的接入點上無線接口的MAC位址。而IBSS 則必須建立BSSID,才能産生網絡。為了讓所建立的位址盡量不重複,BSSID有46位是随機産生的。其所産生的 BSSID會将Universal/Local位設定為1,代表這是一個本地位址,至于Individual/Group位則會設定為0。兩個不同的IBSS如果要産生相同的BSSID,那麼它們所産生的 46位随機數必須完全相同。

有一個BSSID會被保留不用,就是所有位均設定為1的BSSID,又稱為廣播型BSSID。使用廣播型 BSSID 的可以不被MAC中任何的 BSSID filter 所過濾BSSID 的廣播隻有在移動式工作站送出 probe request 以試圖找出有哪些網絡可以加入時才會被用到。probe 憤要能夠探測現有的網絡,就不能被BSSID filter過濾掉。probe 傾是唯一允許使用廣播型 BSSID的。

舉個例子

圖4-4展示了一個網絡,無線用戶端通過 802.11 網絡連接配接至伺服器用戶端将幀傳送給伺服器:

無線網絡概論_4

如果幀的目的地位于分布式系統 (distribution system,簡稱DS),則用戶端既是來源地也是發送端。至于無線幀的接收端則是接入點,不過該接入點隻是個中間目的地。當頓送達接入點時,該頓會經分布式系統轉送給伺服器。是以,分布式是接收端,而伺服器才是最後的目的地。在基礎結構型網絡裡,接入點會以其無線接口的位址建立相應的BSS,這就是為什麼接收端位址 (Address 1) 會被設定為 BSSID 的原因。

當伺服器響應用戶端,幀會通過接入點被傳送給用戶端,如圖4-5所示。

無線網絡概論_4

0.

幀産生自伺服器,是以伺服器的MAC 位址即為該的源位址 (source address,簡稱 SA)。當幀通過接入點轉送出去時,接入點将會以自己的無線接口作為發送端位址(transmitter address,簡稱TA)。如同前一個例子,接入點的接口位址就是 BSSID。幀最後會被送至用戶端,此時用戶端既是目的地 (destination)也是接收端 (receiver)。

無線分布式系統 (wireless distribution system,簡稱WDS)

無線網絡概論_4

無線分布式系統有時也稱為無線橋接器 (wireless bridge)。如圖4-6所示,兩條有線網絡通過扮演無線橋接器角色的基站彼此相連。從用戶端送至伺服器的幀會經過 802.11 WDS。該無線的源位址與目的地位址依然對應到用戶端與伺服器的位址。不過,這些幀還是會區分無線媒介上幀的發送端與接收端。對于由用戶端送至伺服器的幀而言,發送端就是用戶端這邊的接入點,而接收端就是伺服器這邊的接入點将來源地與傳送端分開的好處是,當伺服器這邊的接入點送出必要的802.11響應給對方的接入點時,不會幹擾到有線鍊路層

資料幀的類型主題:

要使用何種幀,取決于服務是屬于基于競争的還是無競争的。基于效率上的考慮,無競争幀中可以納入其他功能。隻要改變幀的subtype,無競争周期中的資料可用來确認其他,如此便可省去間間隔以及一一确認所帶來的負擔。以下是常見的資料幀類型:

data

子類型為 Data的頓隻有在基于競争的通路周期才會被傳送。這類簡單的頓隻有一個目的,即在工作站間傳送幀主體。

Null

它是由MAC 标頭與FCS标尾所組成。在傳統的Ethernet中,Null無非就是額外的負擔。在802.11網絡中,移動式工作站會利用Null頓來通知接入點改變省電狀态。當工作站進入休眠狀态時,接入點必須開始為之緩存幀。如果該移動式工作站沒有資料要經分布式系統傳送,也可以使用 Null幀,同時将 Frame Control (控制)字段的 Power Management (電源管理)位設定為1。接入點不可能進入省電模式,是以不會傳送 Null。如下圖:

無線網絡概論_4

不過在無競争服務在實作上并不常見。

資料幀的封裝

資料幀的形式取決于網絡的類型。幀究竟屬于何種類型,完全取決于subtype 字段,而與其他字段是否出現在幀中無關。

IBSS幀

在IBSS 中使用的address 字段有三種,如圖-8 所示。第一個位址代表 receiver ,同時也是IBSS 網絡中的destination位址。第二個位址是source位址。在這些位址之後,伴随而來的是IBSS的 BSSID。當無線 MAC 收到一個幀時,首先會去檢查 BSSID,隻有 BSSID 與工作站的相同的才會交由上層協定處理。

無線網絡概論_4

IBSS 資料幀的子類型不是 data 就是 Null,後者隻是用來告知目前的電源管理狀态。

傳送來自接入點 (From AP)的幀

4-9顯示了從接入點傳送給移動式工作站的格式。

無線網絡概論_4

和所有資料一樣,第一個位址字段代表無線網絡中接收該幀的receiver (接收端),即該幀的目的地。第二個位址字段存放了transmitter(發送端)的位址。在infrastructure(基礎結構型)網絡中,發送端位址即為接入點(AP)上無線接口的位址,同時也是 BSSID最後,該會記載的來源MAC位址。區分source 與發送端之是以必要是因為802.11 MAC會将确認送給的transmitter,而較上層的協定會将回複送給幀的 source。

在802.11的規範說明書中并未明文禁止接入點傳送 Null ,不過這麼做并沒有任何意義。因為接入點禁止使用省電例程,是以接入點隻會确認來自工作站的Nul1頓,而不會在響應中使用Nul1幀。實際上,在基于競争的通路周期,接入點會使用Data頓,而在無競争周期,則是使用包含 CF-Pol1 功能的幀。

傳送至接入點 (TOAP) 的幀

圖4-10顯示了在infrastructure網絡裡,移動式工作站傳送給所連接配接的接人點的幀格式。

無線網絡概論_4
  • 接收端位址 (RA)為BSSID。在基礎結構型網絡裡,BSSID 即為接入點的MAC位址。送至接入點的幀,其來源地/發送端位址

    (SA/TA)是無線工作站的網絡接口。接入點并未進行位址過濾的動作,而是使用第三個位址(DA)将資料轉送至位于分布式系統的适當位置。

  • 傳送至分布式系統(DS)的的TODS位會被設定為1,而FromDS位會被設定為0。在基礎結構型網絡中,移動式工作站不能扮演點協調者

    (point coordinator)的角色,是以不能傳送含有 CF-Poll(無競争-輪詢)功能的。

WDS中的幀

無線網絡概論_4
  • source (來源地)以及destination (目的地)位址,并且将之與無線鍊路 (wireless link)所使用的位址區分開來。
  • 在無線橋接鍊路中,通常不會存在移動式工作站,也不會使用無競争周期。接入點禁止進入省電模式,是以Power Management (電源管理)位必然被設定為0。

經過加密的幀

  • 受到鍊路層安全協定保護的并不算新的幀類型。當幀經過加密處理後,Frame Control(幀控制)字段的Protected Frame位會被設定為1,至于Frame Body (主體)字段則是以第五章或第七章所描述的加密标頭開始,這取決于所使用的是何種協定。

控制幀

控制幀主要用于協助資料幀的傳遞。它們可用來管理無線媒介的通路 (但非媒介本身)以及提供 MAC 層的可靠性。

一般的幀控制字段:

所有控制幀均使用相同的Frame Control (控制)字段,如下圖:

無線網絡概論_4
  • Protocol:協定版本的值為0,因為這是目前絕無僅有的版本。
  • Type:控制幀的類型辨別符為01。定義時,所有控制均使用此辨別符
  • Subtype:此字段代表傳送的控制幀的子類型
  • ToDS與FromDS位:控制幀負責仲裁無線媒介的通路,是以隻能夠由無線工作站産生。分布式系統(DS) 并不會收發控制,是以這兩個位必然為 0
  • More Fragments位:控制幀不可能被分段,是以這個位必然為0。
  • Retry位:控制幀不像管理幀或資料幀那樣,必須在隊列中等候重新發送,是以這個位必然為0.
  • Power Management位:此位用來訓示完成目前的幀交換過程後,傳送端的電源管理狀态
  • More Data位:此位隻用于管理幀及資料幀中,在控制幀中此位必然為 0
  • Protected Frame位:控制幀不會經過加密,是以對控制幀而言,此位必然為 0。
  • Order位:控制幀是原子幀交換程式 (atomic frame exchange operation)的組成要件,是以必須依序傳送,是以這個位必然為 0。

RTS(請求發送)

RTS 可用來取得媒介的控制權,以便傳送“大型”幀。至于多大可稱為“大型”,則是由網卡驅動程式中的 RTS threshold來定義。媒介通路權隻能保留給單點傳播(unicast)幀使用,而廣播(broadcast) 與多點傳播(multicast)頓隻是被簡單地傳送。

就和所有控制頓一樣,RTS隻包含頭。頓主體中并未包含任何資料,幀頭之後即為 FCS (校驗碼)。

無線網絡概論_4

RTS的MAC 标頭由4個字段構成:

  • Frame Control:Frame Control字段并沒有任何特殊之處。幀的subtype字段被設定為1011,代表RTS 頓。除此之外,它與其他的控制幀有相同的字段。
  • Duration:RTS 頓會試圖預約媒介使用權,供交換過程使用,是以RTS 傳送者必須計算RTS 頓結束後還需要多少時間用于頓交換。圖 4-14說明了整個交換過程,總共需要3個SIFS 周期、1個CTS 持續時間、最後的ACK 加上傳送第一個或片段所需要的時間。
  • Receiver Address :接收大型幀的工作站位址。
  • Transmitter Address :RTS 幀的發送端位址。

    如圖:

    無線網絡概論_4
    CTS(清除發送)
    無線網絡概論_4
CTS 頓有兩種目的,其格式如 4-15 所示。起初,CTS 僅用于回複 RTS ,如果之前沒有RTS出現,就不會産生CTS。後來,CTS被 802.11g保護機制用來避免幹擾較舊的工作站。

CTS幀的 MAC标頭由3個字段構成:

  • Frame Control:幀的 subtype (子類型) 字段被設定為 1100,代表 CTS 幀。
  • Duration:用來響應RTS時,CTS 的發送端會以 RTS 的duration 值作為持續時間的計算基準。RTS幀會為整個RTS-CTS-frame-ACK 交換過程預留媒介使用時間。

圖4-16顯示了CTS duration 與RTSduration的關系:

無線網絡概論_4
  • Receiver Address:CTS幀接收端即為之前 RTS 的發送端,是以MAC會将RTS 的發送端位址複制到CTS 幀的接收端位址。

ACK (确認)

無線網絡概論_4
ACK 就是MAC以及任何資料的傳送 (包括一般傳送、RTS/CTS 交換之前的幀、幀片段)所需要的肯定确認 (positive acknowledgment)。服務品質擴充功能放寬了對于資料幀的單一确認要求。要評估響應機制對淨吞吐量 (net throughput)所造成的影響。

ACK幀的MAC标頭由3個字段構成:

  • Frame Control:幀的subtype (子類型)字段被設定為 1101,代表ACK 幀。
  • Duration:根據ACK信号在整個幀交換過程中所處的位置,duration 的值可以有兩種設定方式。

    在完整的資料幀及一連串頓片段的最後一個片段中,duration會被設定為0。資料發送端會将Frame Control(控制)字段中的More Fragments位設定為0,表示資料傳送已經結束。如果 More Fragments 位為0,表示整個傳送已經完成,沒有必要再延長對無線信道的控制權,是以會将duration設定為0。

    如果More Fragments 位為1,表示尚有片段在傳送中。此時 Duration 字段的用法和CTS 幀中的 Duration 字段相同。傳送 ACK以及其短間間隔所需要的時間,将從最近的幀片段所記載的duration)中減去。如果不是最後一個ACK幀,duration的計算方式就類似CTS duration的計算方式。事實上,802.11的規範說明書将 ACK順中的 duration 設定稱為虛拟CTS

無線網絡概論_4
  • Receiver Address:接收端位址是由所要确認的發送端幀複制而來。就技術而言,它是從所要确認的頓的 Address 2字段複制而來。确認主要是針對資料、管理以及 PS-PoIl 頓。

PS-POLL(省電-輪詢):

當一個移動式工作站從省電模式中蘇醒後,便會傳送一個 PS-POIl 給接入點以取得任何緩存頓。

PS-Poll幀的格式如圖 4-19 :

無線網絡概論_4
  • Frame Control:字段被設定為 1010,代表PS-Pol1 幀。
  • AID(關聯辨別符):PS-Poll幀會以MAC标頭的第三位與第四位來代表關聯辨別符 (association ID)關聯辨別符是接入點指定的一個數值,用來識别關聯。将此辨別符放入幀中,可讓接入點找出為其緩存的幀。
  • BSSID:此字段包含發送端目前所在 BSS 的 BSSID,此BSS 由目前所關聯的接入點建立
  • Transmitter Address:此為PS-Pol1 頓發送端的 MAC 位址。
在PS-Poll 幀中并未包含 duration 資訊,是以無法更新 NAV。不過,所有收到PS-Poll的工作站都會以短幀間間隔加上傳送ACK信号所需要的時間來更新NAV。

關聯辨別符(AID)

在PS-Poll幀中,Duration/ID宇段是關聯辨別符,而非虛拟載波監聽功能所使用的數值。當移動式工作站與接入點關聯時,接入點會從1~2007這個範圍内指派一個值來作為關聯辨別符。

繼續閱讀