第三章 異質無線共存網路環境定義與探討
3.1 異質無線共存網路環境定義
3.1.3 Range3 之相互傳輸範圍
如圖 3-4 所示,基於 Range3 之相互傳輸範圍的定義,IEEE 802.15.4 與 IEEE
802.11 因相互間距離較遠,兩者的傳輸範圍皆無法覆蓋到彼此,所以兩者相互間 均無法感應到彼此之訊號傳輸。因此在此一範圍內 IEEE 802.15.4 與 IEEE 802.11 將不會產生相互間的同頻干擾。
Range3
802.15.4 Transmission Range (Radius)
802.11 Transmission Range (Radius)
802.15.4 802.11
IEEE 802.11 (Wi-Fi Access Point) IEEE 802.15.4 (Zigbee)
圖 3-4、Range3 之相互傳輸範圍示意圖
3.2 IEEE 802.15.4 與 IEEE 802.11 相關機制比較
在此章節中,我們將比較 IEEE 802.15.4 與 IEEE 802.11 之碰撞機制、
CSMA/CA 與 Markov chain 模型之差異。因此本研究將分析相關差異後並以 Markov chain 模型在異質網路中,說明同頻段干擾所造成之影響。
18
3.2.1 IEEE 802.15.4 碰撞機制與 CSMA/CA 分析
根據 IEEE 802.15.4 標準之定義,對於通道存取機制(CSMA/CA)可區分為
Beacon-enabled mode 與 Non beacon-enabled mode 二種類型。Beacon-enabled mode 採用了 slotted CSMA/CA 機制,在個人區域網路(Personal Area Network, PAN)中藉 由網路協調器(Coordinator)週期性地發送 Beacon 給所有的無線感測節點,為整個
PAN 作時間同步,對於有資料需傳送的節點而言,它們會向 Coordinator 提出要 求進行傳送請求,才開始執行 CSMA/CA 機制;若是為 Non beacon-enabled mode 則採用 unslotted CSMA/CA 機制,因為 PAN 中無網路協調器存在,故當節點欲傳 輸資料時,可以隨時加入競爭,而非同步的進行排程與管理。
由於 Non beacon-enabled mode 在單位時間內只能有一個節點進行傳輸,因此 為了避免多個節點同時存取通道而發送封包所造成的碰撞問題,IEEE 802.15.4 的
MAC 層採用了碰撞避免機制(CSMA/CA),此機制迫使想要傳輸封包的節點在 存取通道前,先自預設的 CW (Contention Window)中挑選一段隨機的延遲時間
(Backoff Period),當這段延遲時間結束,節點會針對通道執行 CCA 偵測,偵測後 判斷結果為 idle medium,節點才可開始傳輸封包;反之若 CCA 判定通道當前為
busy medium,那麼該節點被迫再次延遲 (Backoff),並且亦再次隨機挑選一次延 遲時間與執行 CCA,此步驟會不斷重複,直到節點成功存取通道或是達到 backoff 次數上限為止,後者代表該節點在此次競爭傳輸的結果為失敗。
19
圖 3-5 闡述了 CSMA/CA 演算法的步驟。標準的 CSMA/CA 運作流程如下,
首先 NB_15.4、BE_15.4 和 CW 設為初始值,在第一次的競爭中(第 0 次 backoff )
CW 的 size 大小是從[ 0, 2MinBE_15.4-1]個 backoff time units 中,隨機挑選一個時間 點,開始倒數等待一段時間,等到此段時間一結束,隨即對通道執行 CCA 偵測,
若偵測結果 idle medium,便可成功存取通道進行傳輸,但倘若偵測到通道已被其 它節點佔用,CCA 須回報狀態為 busy medium,NB_15.4 和 BE_15.4 加 1,並進 入下一次的 backoff stage,而此回的 CW 以將以 2 倍增加,也就是說有[ 0, 24-1]
種不同的延遲時間可挑選,若 BE_15.4 已達 BE_15.4max那麼指數便不再增加,CW 最大值為 25-1,後續若再次 backoff,CW 仍是從[0, 25-1]範圍中選取延遲時間點,
直到 NB_15.4=NB_15.4max執行 CCA 仍無法成功存取通道,意味著節點競爭傳輸 失敗並進入空閒狀態。
20
NB_15.4=0, BE_15.4=BE_15.4min
Delay for random (2BE_15.4-1) unit backoff periods
Perform sensing
Channel idle?
NB_15.4=NB_15.4+1, BE_15.4=min(BE_15.4
+1,BE_15.4max)
Success NB_15.4>NB_15.4max?
Failue
Y
Y
N
N
圖 3-5、IEEE 802.15.4 CSMA/CA algorithm
3.2.2 IEEE 802.11 碰撞機制與 CSMA/CA 分析
IEEE 802.11 的通道存取機制(CSMA/CA)基本原理與 IEEE 802.3[27]乙太網路 相似,其中 IEEE 802.3 MAC 層的存取方式為 CSMA/CD (Carrier Sense Multiple Access with Collision Detection),原理為利用偵測封包碰撞的方式來傳送訊息,當 封包要送到網路上時,發送端會將封包直接送出;如果當封包在網路上遇到碰撞 時,此封包則會被退回發送端。因此依據 IEEE 802.11 標準在 MAC 層的存取方 式為 CSMA/CA。當發送端要發送封包時,並不會立即傳送出去,而是先等待延
21
遲時間(IFS,Interval Frame Space),之後會確認通道是否忙碌,通道若是空閒則 就開始傳送封包。如果發送端若發現頻道忙碌的話,則會開始 Backoff,首先與 IEEE 802.15.4 一樣會從最小 CW 中挑選一段隨機的延遲時間(Backoff Period)開始 倒數,若發現頻道忙碌的話則會凍結延遲時間的倒數,直到確認頻道是空閒的再 繼續倒數,直到延遲時間一到,再進行接下來的運作。而發送端在發送出封包之 前,會先發出 RTS(Request To Send)的通知訊號,然而目的端收到 RTS 訊號 後必須要回應 CTS(Clear To Send)的訊號。當發送端收到 CTS 訊號後才把封包 傳送出去。而其他要傳送封包的節點,如果偵測到媒體中存有 RTS 或 CTS 訊號 時,則會因為處於延遲時間凍結的階段,因此不會在此時傳送資料。
圖 3-6 所呈現為 IEEE 802.11 的 CSMA/CA 演算法步驟。標準的 CSMA/CA 運 作流程如下,首先 NB_11、BE_11 與 CW 設為初始值,在第一次的競爭中(第 0 次 backoff ) CW 的 size 大小是從[ 0, 2MinBE_11-1]個 backoff time units 中,隨機挑選 一個時間點開始倒數,每倒數一個 backoff time unit 就會偵測通道是否忙碌,若 通道是空閒則可以傳送資料;若通道非空閒情況則會凍結在當前的 time unit,等 到通道再度被釋放,backoff 倒數延遲恢復運作,繼續接續的時間動作。當此次 backoff 時間倒數完畢通道仍然忙碌,則 CCA 須回報狀態為 busy medium,NB_11 和 BE_11 加 1,並進入下一次的 backoff stage,在此回的 CW 以 2 倍增加,也就 是說有[ 0, 24-1]種不同的延遲時間可挑選,若 BE_11 已達 BE_11max那麼指數便不 再增加,CW 最大值為 210-1,後續若再次 backoff,CW 仍是從[0, 210-1]範圍中選
22
取延遲時間點,直到 NB_11=NB_11max執行 CCA 仍無法成功存取通道,意味著 節點競爭傳輸失敗並進入空閒狀態。
NB_11=0, BE_11=BE_11min
Delay for random (2BE_11-1) unit backoff periods
Channel idle?
NB_11=NB_11+1,
BE_11=min(BE_11+1,BE_11max)
Success NB_11>NB_11max?
Failue
Y
Y N
N
Wait IFS
Channel idle?
N
Wait IFS
圖 3-6、IEEE 802.11 CSMA/CA algorithm
3.2.3 IEEE 802.15.4 與 IEEE 802.11 碰撞機制與 CSMA/CA 之差異分析
IEEE 802.11 與 IEEE 802.15.4 相同,皆是使用 CSMA/CA 機制避免碰撞情形 發生,在 IEEE 802.11 環境中當一個裝置欲存取通道傳輸資料時,首先也是需先 經歷一段 backoff 延遲時間,接著透過 CCA 偵測確定通道為空閒,才能傳送資料,
23
但由於 IEEE 802.11 無須考慮能源消耗問題,因此每個 backoff time unit 都會執行
CCA,除此之外,當裝置在 backoff 延遲時間偵測到通道已被佔用,backoff 延遲 倒退則會凍結在當前的 time unit,等到通道再度被釋放,backoff 倒數延遲恢復運 作,繼續接續的時間動作。而 IEEE 802.15.4 與 IEEE 802.11 最大不同是,IEEE 802.15.4 backoff 延遲時間會一直倒數完後再執行 CCA 確認通道是否為空閒,
IEEE 802.15.4 在 backoff 延遲時間倒數途中皆不會停止倒數。表 3-1 呈現 IEEE 802.15.4 與 IEEE 802.11 CSMA/CA 之參數差異,根據採用不同物理調變方式,而 有不同的單位時間、初始 CW 大小、CW 最大值。
表 3-1、IEEE 802.15.4 與 IEEE 802.11 CSMA/CA Parameters PHY Slot-Time CWmin CWmax IEEE 802.11 DSSS 20μs 31(25-1) 1023(210-1 IEEE 802.15.4 DSSS 320μs 7(23-1) 31(25-1)
3.2.4 IEEE 802. 15.4 Non-beacon 之 Markov chain 模型
圖 3-7 為 IEEE 802.15.4 的 CSMA/CA 機制利用二維 non-beacon 之 Markov
chain 模型所描繪之運作流程,其中每一個橢圓圖形代表一個 backoff time unit(又 稱作 state),而每個 state 裡面定義了兩個參數分別是{nb_15.4(t), bw_15.4(t)},
NB_15.4(t) 表示 backoff 的次數,nb_15.4(t) ∈ [0, m],m 為 NB_15.4max,而
24
nb_15.4(t)= -1 則定義為節點成功存取通道並開始進入傳輸封包的階段。除此之
外,傳輸封包所需佔用通道的時間長度(time slot 的個數)視為封包的長度大小,
以L表示,由第L個 time unit 倒數直到 1 為傳輸的最後一個 time unit,傳輸完成 即回到空閒狀態{-1, 0},q 為進入下一個 time unit 節點仍為空閒的機率。bw_15.4(t) 為 backoff 倒數計數器,bw_15.4(t) ∈ [0, Wi - 1],它從隨機選取的 backoff time unit 開始倒數至 0,即進行 CCA,此時將立即傳輸,在此用-1 取代 0,表示 CCA 的
state。當執行 CCA 時,通道被其他節點佔用之機率為 α。當傳輸開始時,在接收 端之頻道 BER 將影響到整體封包的錯誤率(FER),在圖 3-7 中以 λ 表示 FER,所 以若要成功傳輸封包,必須沒有發生封包錯誤,才能完整將封包傳輸完成,倘若 再接收端發生傳送錯誤時,將會導致封包的重傳。
因此接下來我們將改進文獻[28][29][30]之分析模型,用以分析異質共存環境下之無
線感測網路節點傳輸成功機率,其分析方式如下:
25
圖 3-7、IEEE 802.15.4 Markov chain 模型
假設此 Markov chain 在穩定狀態之機率計算,定義為 bn,b =P{(nb(t), bw(t)) =
26
27 橢圓圖形代表一個 backoff time unit(又稱作 state),而每個 state 裡面定義了二個參 數,分別是{nb_11(t), bw_11(t)},其中 NB_11(t)表示 backoff 的次數,nb_11(t) ∈ [0,
m],m 為 NB_11max。bw_11(t)為 backoff 倒數計數器,bw_11(t) ∈ [0, Wi - 1],它從 隨機選取的 backoff time unit 開始倒數至 0。若中途發生碰撞則會停止倒數,直到 通道空閒之後,才恢復倒數。因此在圖中每次 backoff 皆被須是成功時才會執行 下一個 state。
然而 IEEE 802.11 在 Contention Window 隨機挑出一個亂數值,當亂數值倒數
28
到 0 時,便把封包傳送出去。若封包是成功的傳送則把 CW 設為最小值(Minimum
Contention Window, CWmin)。若發生碰撞則 CW 變成目前值的兩倍,直到值為最 大值(Maximum Contention Window, CWmax);當值為最大值時,若封包傳送仍 然未成功 CW 值將不在增加,直到 NB_11max 大於上限次數為止。
接下來本研究將參照[31]中所提到的 IEEE 802.11 的 Markov chain 模型所推導 出相關的機率方程式進行討論。 Markov chain 模型得到一個封閉式的方程式如(14)所示:
0
29
30
圖 3-8、IEEE 802.11 Markov chain 模型
3.2.6 IEEE 802.15.4 與 IEEE 802.11 Markov chain 模型比較
從 3.2.1 與 3.2.2 節當中可以了解 IEEE 802.15.4 與 IEEE 802.11 Markov chain 模型是有所差異。首先從 backoff 機制分析,雖然 IEEE 802.15.4 與 IEEE 802. 11 開始皆是隨機產生一個亂數值,當亂數值倒數至 0 時,便將封包傳送出去。但是 若遭受碰撞,IEEE 802.15.4 則會繼續倒數,倒數完後若通道依然忙碌則會繼續跳
31
至下一個 CW 值,直到 backoff 次數達到最大限制 5 次後,則將此封包視為失敗。
而 IEEE 802.11 傳送封包時遭受碰撞後則會停止倒數,直到通道淨空後才會恢復 倒數,因此 IEEE 802.11 在每次切換到下一個狀態時傳送機率都必須為 1。若倒數 完 IEEE 802.11 一樣遭遇封包碰撞,backoff 的數值則會從目前值兩倍開始倒數起 直到 CW 數值達到最大為止就不再增加。
因此本研究設計一種符合在異質共存無線網路當中所使用的Markov chain模 型,如圖3-9所示。此一Markov chain模型為改良IEEE 802.11的Markov chain模型;
當中我們多加了一段CIFS (Coexistence Inter-Frame Space)時間以取代DIFS,其主 要目的是為了提升IEEE 802.15.4之傳輸機率。首先當封包要傳送時會先等待一段
CIFS時間,因此在此時內若通道是忙碌時會凍結時間,直到通道淨空後才會重新 計數。因此在圖中x代表等待CIFS時間後通道仍然忙碌時的機率,若等待完後通 道淨空後則進入backoff機制。而相關backoff運作機制如第3.2.2小節所示。
32
Range1、Range2 與 Range3。Range1:IEEE 802.11 和 IEEE 802.15.4 互相可以監 聽到彼此正在傳輸。Range2:IEEE 802.15.4 可以監聽 IEEE 802.11 正在傳輸,但
33
是 IEEE 802.11 感測不到 IEEE 802.15.4 正在傳輸。Range3:由於距離較遠,IEEE
802.15.4 與 IEEE 802.11 相互間均無法接收彼此之訊號。因此接下來在本論文中,
802.15.4 與 IEEE 802.11 相互間均無法接收彼此之訊號。因此接下來在本論文中,