5. 效能評估與分析
5.1. 理論值之推導與估計
在效能評估前,本章節將先推導流量的理論值,藉此來進行模擬結果的驗證。而在 本處理論值的推導上將著重於本章中接下來將提出的兩種流量產生樣式,這個情境則如 下所示:
主要使用者 (於兩種流量中均固定)
資料產生之模組:由 MAC 產生一般之資料,單向傳輸。
資料大小:2048 bytes
流量產生方式:封包產生時間間隔為 Poisson 機率分布,佔用 40%的頻寬。
無線感知網路之使用者
樣式一
38
資料產生之模組:由 MAC 產生一般之資料,單向傳輸。
資料大小:2048 bytes (MAC Payload)
流量產生方式:隨時均有資料產生。
樣式二
資料產生之模組:應用程式以 TCP 通訊協定進行資料交換。
資料大小:1474 bytes (TCP Payload)
流量產生方式:隨時均有資料產生。
而在推導式子前,為了簡化整體的狀況,使得推導內容能夠簡單易懂,因此在此進 行底下的假設:
1. 假設所有控制封包均為相同大小,在此處以 ACK 為基準。
2. TCP 與 IP 表頭均無額外之欄位,亦及此二表頭長度為 20 bytes。
3. 推導環境
i、 假設在此環境內,所有使用設備均可收到來自於所有其它設備傳遞之訊 號。
ii、 在整個情境中,所有傳輸均成功送達接收端,不會受到其他外在因素而產 生碰撞或封包遺失等事件。
iii、 假設每個頻段在其進入閒置狀況時,隨即會有一位使用者來進行使用。
iv、 主要使用者均可達到其預估之平均流量值,即 40%的頻寬。
在定義完流量產生樣式與推導之假設後,在此將開始針對兩種流量樣式來進行理論
39
流量之推導。推導流程在一開始會先著重在主要使用者為達到 40%頻寬的傳輸量,其將 會佔用 1 秒內多少時間的推算;接下來透過這個時間,將可以推論無線感知網路使用者 在這 1 秒的時間內還有多少時間可供其傳送資料;最後即可推導出其理論上的流量值。
過程中所使用之參數定義與計算
控制封包傳輸所需時間 (TRTS, TCTS, TACK, TRTI):
LENACK :IEEE 802.11 ACK 之表頭長度〈112 bits〉
Bandwidth:頻段最大可傳輸之資料率,即 2 Mbps。
TPREAMBLE = 144 s TPCLP = 48 s
TACK = Ceiling(LENACK / Bandwidth * 106 + TPREAMBLE + TPCLP)
= Ceiling( (112 / 106) / 2 * 106 + 144 + 48)
= 248 ( s)
MAC Data 2048 bytes 資料傳輸所需時間 (TDATA)
LENDATA = LENMAC-Payload + LENMAC-Header
= 2048 + 28
= 2076 (bytes)
= 16608 (bits)
TDATA = Ceiling(LENDATA / Bandwidth * 106) + TPREAMBLE + TPCLP
= Ceiling( (16608 / 106) / 2 * 106) + 144 + 48
40
= 8496 ( s)
TCP Payload 1474 bytes 資料傳輸所需時間 (TTCP-DATA)
LENTCP-DATA = LENTCP-Payload + LENTCP-Header + LENIP-Header + LENMAC-Header
= 1474+ 20 + 20 + 28
= 1542 (bytes)
= 12336 (bits)
TTCP-DATA = Ceiling(LENTCP-DATA / Bandwidth * 106) + TPREAMBLE + TPCLP
= Ceiling( (12336 / 106) / 2 * 106) + 144 + 48
= 6360 ( s)
TCP ACK 資料傳輸所需時間 (TTCP-ACK)
LENTCP-ACK = LENTCP-Header + LENIP-Header + LENMAC-Header
= 20 + 20 + 28
= 68 (bytes)
= 544 (bits)
TTCP-ACK = Ceiling(LENTCP-ACK / Bandwidth * 106) + TPREAMBLE + TPCLP
= Ceiling( (544 / 106) / 2 * 106) + 144 + 48
= 464 ( s)
主要使用者為達到 40%的頻寬之流量所需之時間 (TPU)
透過流量的換算,可以得到若 1 秒內要達到 40%的資料傳輸,需要傳送的總資料量
41
為:
LENTotal_DATA = 0.4 (sec) * Bandwidth (Mbps)
= 0.4 * 2
= 0.8 (Mbits)
= 800000 (bits)
因此,在此可以得到於這 1 秒內,主要使用者需要傳送多少個 DATA Frame 才能達 到此流量:
NDATA_Frame = Ceiling(LENTotal_DATA / LENMAC_Payload)
= Ceiling(800000 / 2048 / 8)
= 49
由上面的 NDATA_Frame可以得到主要使用者在 1 秒內至少需要傳送 49 個 DATA Frame 才能達到此流量,但是在一般 IEEE 802.11 中的 MAC 封包傳輸程序中不考慮 RTS
Threshold 的狀況下,它本身是需要遵守 RTS, CTS, DATA, ACK 的傳輸程序的。因 此為了傳送這樣的資料量,主要使用者需要使用的時間 TPU如底下式子所示:
TPU = (sifs + TRTS + sifs + TCTS + difs + TDATA + sifs + TACK) * NDATA_Frame
= (10 + 248 + 10 + 248 + 20 + 8496 + 10 + 248) * 49
= 9290 * 49
= 455210 ( s)
42
故從中我們可以得到主要使用者需要使用 454720 s,才能使其資料傳輸量到達總 資料頻寬的 40%;而這也代表了無線感知網路的使用者在在此 1 秒內於這個頻段可 以使用的總時間(TCR)為:
TCR = 1000000 - 454720
= 544790 ( s)
無線感知網路使用者在傳輸樣式一的流量理論值 (THCR1)
在得到無線感知網路使用者在此頻段內可使用的時間 (TCR)後,接下來為了得到在 這段時間內的最大資料傳輸量,此處仍需要再求出這段時間內可傳送 Data 的個數
NCR-Transmit。而為了得到這個值,在一開始我們需要求出在資料傳輸之頻段時進行一
次資料傳輸〈即從無線感知網路使用者切入資料傳輸頻段開始,至該位使用者返回 控制封包傳輸頻段止〉的所需時間(TCR-Data1):
TCR-Data1 = TSensing + sifs + TRTS + sifs + TCTS +
(difs + TDATA + sifs + TACK + sifs + TRTI + sifsCR) * TxOPCR
= 2000 + 10 + 248 + 10 + 248 + (20 + 8496 + 10 + 248 + 10 + 248 + 100) * TxOPCR
= 2516 + 9132 * TxOPCR
於此處,TxOPCR為一變動值,其值為 1, 2, 3, 4。因此,可以求得 TCR-Data1如下:
由以上之數值,可以求出這段時間內可傳送 Data 的個數 NCR1-Transmit,於此先行定義
43
44
協定較為複雜,因此在此進行一個假設:在傳輸的過程中,一律是傳送端送出 TxOPCR 個資料,而接收端會在此時回傳 TxOPCR個 TCP ACK。因此,基於這樣的模型,在 此可以進行簡化後的 TCP 流量之理論推導,而在最一開始,也還是先從求出在資料 傳輸之頻段時進行一次資料傳輸的所需時間(TCR-Data1)開始推導:
TCR-Data2 = TSensing + sifs + TRTS + sifs + TCTS +
(difs + TTCP-DATA + sifs + TACK + sifs + TRTI + sifsCR) * TxOPCR + TSensing + sifs + TRTS + sifs + TCTS +
(difs + TTCP-ACK + sifs + TACK + sifs + TRTI + sifsCR) * TxOPCR
= 2000 + 10 + 248 + 10 + 248 + (20 + 6360 + 10 + 248 + 10 + 248 + 100) * TxOPCR + 2000 + 10 + 248 + 10 + 248 + (20 + 464 + 10 + 248 + 10 + 248 + 100) * TxOPCR
= 2516 + 6996 * TxOPCR + 2516 + 1100 * TxOPCR
= 5032 + 8096 * TxOPCR
=
由以上之數值,可以求出這段時間內可可傳送 Data 的個數 NCR-Transmit。但此處需要 注意的是:若成功傳送完一個 TCP Data,即將此資料傳輸量記錄下來。因此,使用 的式子需要進行修正:
TDataSegment = difs + TTCP-DATA + sifs + TACK + sifs + TRTI + sifsCR = 6996
45