• 沒有找到結果。

第三章 研究方法

3.1  問題分析

3.1.4 在某些條件下 AIAD 並不適用

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

19 

3.1.3 重傳次數限制

一 HARQ 封包傳送最大可以容忍的重傳次數為 7(不包含第一次傳送),如果仍然 失敗則會放棄。但某些即時性 QoS 等級的封包卻不一定,因為其延遲時間的容忍度較低,

不要重傳這麼多次。在 802.16j 中,由於加入 RS 作為傳送資料的中繼站,其延遲時間是 很可觀的,而在容忍度較低的 QoS 等級封包,勢必會造成封包傳送失敗的機率大增。因 此如何安排 pre-allocated slot 給 RS 是個重要的議題。

3.1.4 在某些條件下 AIAD 並不適用

在[4]中,作者以 AIAD 動態預先保留 slot 的方式,並在第一次發生錯誤的時候便開 始運作。但我們發現到,這樣 AIAD 的預先保留機制在特殊的狀況下會有問題。我們以 一條 link 為範例, X 代表封包傳送失敗,以 O 代表封包傳送成功。在傳送封包時若發 生 XXO 的時候,表示第一次傳送發生錯誤開始運作動態預先保留 slot,可是第二次也 傳送失敗,但因為有預留的 Slot 便開始第三次傳送然後成功。在以上這樣的情況是沒有 問題的,但我們發現當發生 XOX 時,會有很大的問題。第一次傳送失敗然後開始運作 機制,第二次傳送成功因此沒有使用預留的 slot,認定 slot 為多餘的便刪除,可是第三 次傳送發生失敗也沒有預留的 slot,再分配 slot 下去。我們可以發現因為 MR-BS 給予的 pre-allocated slot 的變動是在下一次 scheduling 時才產生。若發生上述狀況,這樣的動態 預先保留 slot 的方式是完全沒有作用的,也和 802.16j 原來的 HARQ 機制是相同的。換 句話說,同樣也會因為重傳而增加封包的延遲時間。如圖 3-1,當傳送發生錯誤時,我 們增加一個 pre-allocated slot;當傳送成功時,若有多餘的 pre-allocated slot 就減一個,

當下一次傳送又發生錯誤時就不會有 pre-allocated slot 幫忙重新傳送封包,所以我們發 現在這樣非連續錯誤的情況下,pre-allocated slot 完全沒有用到,,這樣就和 802.16j 標 準上的 HARQ 機制相同,在封包發生錯誤需重傳時都需要二倍的總 hop 數時間傳送,

非常沒有效率。

allocated sl 到的 slot,可 下去給需要的 有太多的 pre 配演算法中並

duling 時,

-3 是把 pre pre-allocated

allocated slo 會降低封包資 e-allocated s 並無說明,

若有多餘的 -allocated s d slot 分配 ot 使用,能夠 資料的傳輸

續錯誤的情

llocated sl

況下,為了充 allocated slo 用 到 , 此 時

-allocated sl

duling 前被

配傳送的封 配完各 link 上 根 據 優 先 順

的 schedulin slot。若就這 [4]的 pre-al 題。如圖 3 當作 pre-alloc

到 MS2 三條 ot 大部分都 傳送資料給三

新傳送的封 located slot 需 要 的 link 一定是沒有 餘的 slot 分 會造成 link located slot -2,在 BS cated slot。

條 link 上。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

圖 3-22:Empty S

圖 3-3:將

Slot 因為沒

將 pre-allocat

21

沒有用到,所

ted slot 平均

所以轉成 pr

均分給三條

re-allocated

條不同的 link

d slot 分配。

k 上。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

各種 更符

綜合以上的 種限制,也要 符合 802.16j

圖 3-4:僅 的問題分析 要思考如何 的運作模式

僅 4 個 alloc 析,我們需要 何安排 pre-a

式,可以大

22

cated slot 卻 要設計一方法 allocated slo 大量提升整體

卻需傳送資料 法,不但需 ot 才能減少 體系統的效

料給 3 個 M 需要考慮不同 少延遲時間

效率。

MS 。 同 QoS 等級

,讓 HARQ

級的需求和 Q 機制可以 和 以

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

23 

3.2 研究方法

3.2.1 分配 pre-allocated slot 限制(total slot limit)

原本在 HARQ 封包傳送時,若有足夠的 pre-allocated slot 是可以無限制增加的。但 實際上,總 slot 數是有限制的,所以我們在發生封包傳送錯誤而需要增加 pre-allocated slot 時,必須要限制在總 slot 數之下才是合理的。而在有限的 slot 之下,必須要有效地安排 pre-allocated slot 才是最重要的問題。

因此每當 MR-BS 在安排增加各個 link 的時候,我們需要先判斷增加 pre-allocated slot 時,是否有在總 slot 數之下,若超過就不給 pre-allocated slot。

3.2.2 分配 pre-allocated slot 優先權控制(prioritze pre-allocated slot)

在 pre-allocated slot 的分配有可能會超過總 slot 的情況之下或者在 slot 不足的狀況 下,該如何分配 slot 給哪條 link 是一大問題。在我們的研究中發現,在 802.16j HARQ 無論在何處重傳資料封包在,都需要二倍的總 hop 數傳送時間,所以並無差異,如圖 3-5,

packet2 在 RS1 就發生錯誤,需要重傳,等到 MS 回傳 feedback 訊息給 MR-BS 後,packet2 再進行重傳。這樣的回傳以及重傳就需要六個 frame 的時間,等於二倍圖中三個 hop 數 的時間。

ritize Link A

:a list reco

the P[link]

le (total If total P[link Else if ther P[link

ording the cu

in an incre -allocated s -allocated s k] = P[link]

re is enough k] = P[link]

論在何處重

討優先權的問 所傳遞的資

-BS 的 link

urrent numb

asing order slot exceeds slot exceed b ] – 1.

h bandwidth ] + 1.

ber of pre-a

r based on t s bandwidth bandwidth t

h then

需要二倍總

發現到雖然重 的 link 多,pr

的優先權。

allocated slo

the distance h or there is

enough ban

時間。

遲時間都相同 d slot 也需要 先權設定的

link

ndwidth) do

同,但是越 要比較多,

的演算法。

o

使用 pre-allo allocated slo re-allocated 回原來的值。

成的問題。

圖 3-6:

如圖 3-6 在 allocate slo 以直接重新傳

4 最大重傳 各個 Q

制(Count 整 pre-alloc

目的是要解 功而把多餘 d slot 的浪費 樣給予一個 p

ocated slot ot,而是扣 餘的 pre-allo

費及如同 80

Maximum 的封包,由於

25

時,我們在每 節的問題,

ocated slot 02.16j HAR ed slot,而若 刪除一個 pr

allocated slo

re-allocated 次傳輸失敗 me 的時間就

mission Tim 間的限制不同

個 pre-alloc

,也可防止 cated slot,並 止在非連續錯

延遲時間下降

重傳成功後 一個 pre-all 功傳送封包 located slot

過 maximum 規定的時間

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

27 

我們根據各個不同等級的 QoS 和其所規範的最大容忍時間限制,定義出我們的最大 重傳次數限制。

class

QoS

={UGS、rtPS、ertPS}

MLQoS:the Maximum Latency for each class of QoS n:the number of hops between MR-BS and SS

Tf :the frame duration

RLQoS:the Retry count Limit for each class of QoS

f 2 QoS f QoS

n T⋅ + ⋅RL ⋅ ⋅n TML

2

QoS f

QoS

f

DT n T

RL n T

≤ − ⋅

⋅ ⋅

封包傳送成功的時間需要n Tf,傳送失敗需要重傳的時間是2⋅RLQoS⋅ ⋅n Tf,所以傳 送成功加上傳送失敗需要重傳的時間必須小於最大容忍時間限制。我們就可以算出最大 重傳次數限制。

3.2.5 最大 pre-allocated slot 分配個數(Maximum Slot)

在進行封包資料傳送時,對無即時性的封包給予 pre-allocated slot 的意義並不大,

因為這些無即時性的封包著重點在於是否成功送達目的,對於 delay time 要求並不高。

因此我們將 pre-allocated slot 的機制加入即時性的封包傳輸過程,如 UGS、ertPS、rtPS。

經過實驗發現,由於即時性封包有其參數限制,maximum latency,若在第一次傳送時,

封包發生錯誤後重傳並加入 pre-allocated slot 可以在封包又發生錯誤的狀況下及時重傳,

但往往在第二或者第三次重傳時雖然有 pre-allocated slot 的幫忙,卻會因為超過 maximum latency 而成為無效封包。因此若有即時性的封包在傳送時,在第一次傳送封

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

28 

包時就應該有 pre-allocated slot 的幫忙。若沒有,極有可能會造成重傳時,封包的失效 率大增。至於需要給予幾個 pre-allocated slot 才足夠,我們需要一個明確的參考值。

Maximum Slot,是傳送即時性封包(UGS、rtPS、ertPS)時可給予的最大 pre-allocated slot 限制。我們根據 delay time 的計算和 maximum latency 的限制定義出何謂 Maximum Slot。對於 nrtPS 及 BE 等級的封包,因為沒有 maximum latency 因此也就沒有 Maximum Slot。

首先我們定義參數及變數

MSQoS:the Maximum Slot for each class of QoS class

QoS

={UGS、rtPS、ertPS}

MLQoS:the Maximum Latency for each class of QoS

RD:the Delay of Retransmission (use pre-allocated slot to transmit) D:the Delay time for packet transmission form BS to MS

n:the number of hops between MR-BS and SS

j :the hop number

然後我們以 maximum latency 為限制,定義出 Maximum Slot

QoS QoS

DelayTimeML

QoS first QoS

MS RD D ML

=> ⋅ + ≤

QoS first

QoS

ML D

MS RD

=> ≤ −

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

29 

封包傳送成功,至少需要 2 倍的總 hop 數時間

2 f

D= n T

在有 pre-allocates slot 情況下,傳送失敗重傳只需要 2 個 frame 時間 2 f

RD= T

因此我們可以算出每種不同 QoS 的 Maximum Slot,如表 3-1 2

2 2

QoS f QoS

QoS

f f

ML nT ML

MS n

T T

≤ − = −

UGS ertPS rtPS

MS

MS

MS

表 3-1:Maximum Slot of each QoS traffic。

QoS UGS ertPS rtPS

Maximum Slot

MSUGS MSertPS MSrtPS

3.2.6 使用 pre-allocated slot 限制(Using Pre-allocated Slot Limit)

我們在有 pre-allocated slot 的狀態下,發現到可能封包在有 pre-allocated slot 的情形 之下,自行重傳多次,導致雖然在 retransmission times 的限制以下但仍然會超過封包的 最大容忍時間限制。這是因為 IEEE 802.16j 是多 hop 數的環境,封包傳輸發生失敗需要 經過多個 hop 時間進行,在 MR-BS 判別封包失敗要進行重傳前是否超過其 transmission times 的時候,可能早在 link 有 pre-allocated slot 的情形下,已自行重傳多次,造成雖然 不超過 transmission times 卻也早就成為無效的封包。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

30 

而在即時性封包上,我們還另外增加更多的 pre-allocated slot,也就是 Maximum Slot。

因為 Maximum Slot 是可以在 maximum latency 內重傳 slot 數的最大限制。而 Maximum Slot 在 MR-BS scheduling 時會預先給予各個 link 包含 Maximum Slot 個數的 slot,這樣 很有可能雖然封包重傳還在 retransmission times limit 的限制內,卻因為使用到過多的 pre-allocated slot 造成 delay time 超過封包所能容忍的 maximum latency。因此我們需要 另外設限,也就是在使用 pre-allocated slot 的數量需要在 Maximum Slot 的限制之下。若 使用超過 Maximum Slot 的 pre-allocated slot,將表示這個傳送到達目的的封包就是無效 的。

所以我們除了 retransmission times limit 的限制外還需加上使用 pre-allocated slot 的 限制(using pre-allocated slot limit)。才不會造成雖然在 retransmission times limit 的限制 之下,卻早已超過 maximum latency 的限制。而 using pre-allocated slot limit 的值我們設 為 Maximum Slot 的大小,因為只要超過 Maximum Slot 就一定會超過封包的最大容忍時 間限制(maximum latency)。

using pre-allocated slot = Maximum Slot

3.3 系統架構

根據以上方法我們制定好 MR-BS 以及 RS 各別的工作,並以流程架構圖表示。圖 3-8 是 MR-BS 的運作架構,我們將該架構圖分三部份說明,第一部分是 MR-BS 一開始 的運作,第二部分是 MR-BS 處理 ACK 訊息,第三部分是 MR-BS 處理 NACK 訊息。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

及 N

如圖 3-9,

NACK 封包拆

首先 MR-B 拆開來處理

圖 3-8

圖 3-9

BS 在接受到 理。

31

8:MR-BS

9:MR-BS

到所有 AC

系統架構。

開始運作。

CK 及 NAC

K 的 feedbback 訊息後後,將 ACKK

個 pre-alloc 以上動作。

下一步將分

,若 feedba pre-allocate 0,我們就把 步驟。

所傳送出去 cated slot 在

分配的

pre-圖 3-10:

ack 訊息是 ed slot。若需

把該條 link

去的封包是否 在 link 上;

allocated sl

32

allocated slo

、ertPS 或 rt

配 Maximum 的 link 都做

nsmission t 類別的封包

limit,若超 limit,則增

們將 pre-allo 除 MS 端的

BS 端的 pre

些 pre-alloc

,若 MR-times limit,

。若是則再 超過則丟棄該 增加一個 pre

ocated slot 根 pre-allocate e-allocated

ated slot 配 e-allocated

33

根據 priori ed slot 直到

-allocated s 時性的封包 為 UGS、ert

過 using pr

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

34 

3.3.1 基地台(Base Station)

我們根據上一節的架構圖及文字敘述,寫成虛擬碼並且實作在我們的程式上。

total

S

:the total slot in DL_MAP

S

:the total slot in DL_MAP