行政院國家科學委員會專題研究計畫 成果報告
子計畫二:無線封包網路之資源管理技術(2/2)
計畫類別: 整合型計畫 計畫編號: NSC93-2219-E-009-012- 執行期間: 93 年 08 月 01 日至 94 年 07 月 31 日 執行單位: 國立交通大學電信工程學系(所) 計畫主持人: 王蒞君 報告類型: 完整報告 報告附件: 出席國際會議研究心得報告及發表論文 處理方式: 本計畫可公開查詢中 華 民 國 94 年 10 月 31 日
行政院國家科學委員會補助專題研究計畫
■ 成 果 報 告
□期中進度報告
B3G 無線接取網路之無線資源管理技術---子計劃二
無線封包網路之資源管理技術(2/2)
計畫類別:□ 個別型計畫 ■ 整合型計畫
計畫編號:NSC93-2219-E009-012
執行期間:93 年 8 月 1 日至 94 年 7 月 31 日
計畫主持人:王蒞君 教授
成果報告類型(依經費核定清單規定繳交):□精簡報告 ■完整報告
本成果報告包括以下應繳交之附件:
□赴國外出差或研習心得報告一份
□赴大陸地區出差或研習心得報告一份
□出席國際學術會議心得報告及發表之論文各一份
□國際合作研究計畫國外研究報告書一份
處理方式:除產學合作研究計畫、提升產業技術及人才培育研究計畫、
列管計畫及下列情形者外,得立即公開查詢
□涉及專利或其他智慧財產權,■一年□二年後可公開查詢
執行單位:國立交通大學電信工程研究所
中 華 民 國 94 年 7 月 31 日
目 錄
Part-I:
Gap-Processing Time Analysis of Stall Avoidance
Schemes for High Speed Downlink Packet Access with
Parallel HARQ Mechanisms
I. INTRODUCTION……….1
II. BACKGROUND...………...3
A. Multi-Channel SAW HARQ Mechanism
……….……...…………..…...3
B. Definition of Type-I and Type-II Gaps
………...……….4
III. THE STALL AVOIDANCE SCHEMES…………...……..…………5
A. Timer-Based Scheme
………...……….…5
B. Window-Based Scheme
……….………...………6
C. Indicator-Based Scheme
……….………….…………...………...7
IV. PERFORMANCE MEASURE AND SYSTEM ASSUMPTIONS...8
A. Gap-processing time
……….………...8
B. Assumptions
……….……….…...9
V. ANALYSIS OF TIMER-BASED STALL AVOIDANCE
SCHEME…..…………..………10
VI. ANALYSIS OF WINDOW-BASED STALL AVOIDANCE
SCHEME……….………12
VII. ANALYSIS OF INDICATOR-BASED STALL AVOIDANCE
SCHEME………….…………..……….…………15
VIII. NUMERICAL RESULTS AND DISCUSSIONS…….…………..20
A. Average gap-processing time of the Timer-Based Scheme
……...………21
B. Average gap-processing time of the Window-Based Scheme
…...………23
C. Average gap-processing time of the Indicator-Based Scheme
…...………27
D. Probability mass function of the gap-processing time
………28
IX. CONCLUSIONS………29
References………..………..29
Part-II:
A TCP-Physical Cross-Layer Congestion Control
Mechanism for the Multirate WCDMA system Using
Explicit Rate Change Notification
I. INTRODUCTION………...………32
II. BACKGROUND ON TCP BEHAVIOR………..………….33
III. MOTIVATION AND PROBLEM FORMULATION……….35
A. The Relations of Queue Size, Throughput, and Delay
…….………..…..35
B. Control of the Queue Size
……….…………..37
IV. THE PROPOSED ERCN MECHANISM………..…..……41
V. NUMERICAL RESULTS………….……….………42
A. The Simulation Model
………..……….…42
B. The Accuracy Validation of the Analysis
……..………43
C. The Comparison of ECN and ERCN
………….………46
VI. CONCLUSIONS……….………..48
References………..………..48
Part-III:
Comparisons of Link Adaptation Based Scheduling
Algorithms for the WCDMA System with High Speed
Downlink Packet Access
I. INTRODUCTION……….50
II. HIGH SPEED DOWNLINK PACKET ACCESS………53
A. Adaptive Modulation and Coding
……….…54
B. Fair Scheduling
………..54
C. Multi-Code Assignment
………..54
III. CURRENT LINK ADAPTATION BASED SCHEDULING
ALGORITHMS………55
A. Maximum C/I Scheduler
………..………56
B. Fair Time Scheduler
………...………56
C. Proportional Fair Scheduler
……….56
D. Exponential Rule Scheduler
………...………..57
I V . P R O P O S E D Q U E U E - B A S E D E X P O N E N T I A L R U L E
SCHEDULER………...58
A. Fairness Definition
……….58
B. Queue-Based Exponential Rule Scheduler
………58
C. Time-Multiplexing Fashion v.s. Code-Multiplexing Fashion
……….59
V. SIMULATION RESULTS……….59
A. Simulation Model
………..60
B. Single-Code Operation in the Time-Multiplexing Fashion
………60
C. Multi-Code Operation in the Time-Multiplexing Fashion
……….62
D. Multi-Code Operation in the Code-Multiplexing Fashion
……….63
VI. CONCLUSION……….………65
References………..………..66
Summary
……….………..………71
Publications
…….……….………..………73
III摘 要
這個計劃的主體主要分為三個部份(一): 寬頻分碼多重存取(WCDMA)系統中 高速向下連結封包存取(HSDPA)的停滯防制(stall avoidance)機制之性能比 較;(二):多速率寬頻分碼多重存取系統中使用速率變換於傳輸控制協定層(TCP)
及實體層之擁塞控制機制 (三):HSDPA的封包排程(scheduling)技術之研究。
第 一 部 份 , 我 們 使 用 分 析 的 方 法 比 較 了 WCDMA 中 HSDPA 的 三 種 stall avoidance的方法:計時器基礎、視窗基礎、以及指示器基礎的方法。為了達到 比較的目的,我們首先定義了一個新的評量標準稱為間空處理時間。再者,分別 推導了三種stall avoidance方法的間空處理時間的公式。藉由公式分析及模擬 結果,我們發現指示器基礎的stall avoidance的表現優於計時器基礎以及視窗 基礎的方法。此外,我們所推得的分析公式也有助於決定在停止與等待的混合自 動重傳要求機制中的平行傳輸通道的數量。同時,也可以利用此公式配合允許進 入系統的用戶數。 第二部份,我們提出了一個明確速率變換警示(ERCN)機制以改善WCDMA系統 的TCP表現。我們首先推導了TCP層的最大暫存器容量與實體層之間的關係,並且 我們得到了平均流量的表示法。再這個表示法中包含了幾個變數分別是,暫存大 小,暫時延誤及通道容量。我們所推導的公式有助於隨機變換速率的無線電系統 中TCP及實體層的跨層級系統設計。 第三部份討論了高速向下連結中在考慮通道影響、延遲時間以及公平性的情 況下最佳的封包排程技術。我們利用一個公平性指標評價了最大信號干擾比 (maximum C/I) 排程法、知更 鳥式循環(Round Robin)排程法、比例式公平 (proportional fair)排程法以及指數型法則(exponential rule)排程。而後我 們發現在這樣的公平性指標的定義下,上述的方法無法達到有效的公平性原則。 因此我們提出了序列式指數型法則(queue-based exponential rule)排程法,使 系統能夠同時達到公平性,高流量以及低延遲的指標。
Abstract
This report consists of three parts (1) gap-processing time analysis of stall avoidance schemes for high speed downlink packet access with parallel hybrid automatic repeat request (HARQ) mechanisms; (2) a transmission control protocol(TCP)-physical cross-layer congestion control mechanism for the multirate wideband code division multiple access (WCDMA) system using explicit rate change notification; (3) packet scheduling for the WCDMA system with HSDPA.
In the first part, we present an analytical approach to compare three stall avoidance schemes: the timer-based, the window-based, and the indicator-based schemes for the HSDPA in WCDMA. To this end, we first propose a new performance metric -- gap-processing time. Second, we derive the closed-form expressions for the average gap-processing time of these three stall avoidance schemes. Further, by analysis we demonstrate that the indicator-based stall avoidance scheme outperforms the timer-based and the window-based schemes. The developed analytical approaches can help determine a proper number of processes for the parallel SAW HARQ mechanisms. We also show that the analytical formulas can be used to design the number of acceptable users for an admission control policy subject to the gap-processing time constraint.
In the second part, we propose an explicit rate change notification (ERCN) mechanism to improve the TCP performance in the WCDMA system. We first derive the relation between the bandwidth in the physical layer and the maximum queue size in the TCP layer, and then obtain a closed-form expression for the average throughput in terms of average queue size, queue delay and channel capacity. We validate results by simulations. The analytical formula can facilitate the design of a cross-layer TCP-physical congestion control mechanism for the rate adaptive wireless system.
In the third paprt, we discuss the scheduling algorithm with the concern of channel condition, delay, and fairness for HSDPA in WCDMA systems. By a definition of fairness measure, we compare the fairness performance between maximum C/I, round robin, proportional fair, and exponential rule methods. We find that these four algorithms can not achieve fairness. Under this motivation, we propose a scheduling method called the queue-based exponential rule to reach the goal of fairness, high throughput, and low delay at the same time.
Gap-Processing Time Analysis of Stall Avoidance
Schemes for High Speed Downlink Packet Access
with Parallel HARQ Mechanisms
Li-Chun Wang
1and Chih-Wen Chang
Department of Communication Engineering
National Chiao Tung University, Taiwan
Email : [email protected]
Abstract
The parallel multi-channel stop-and-wait (SAW) hybrid automatic repeat request (HARQ) mechanism is one of key technologies for high speed downlink packet access in the wideband code division multiple access system. However, this parallel HARQ mechanism may encounter a serious stall problem, resulted from the error of the negative acknowledgement (NACK) changing to the acknowledgement (ACK) in the control channel. In the stall situation, the receiver waits for a packet that will be no longer sent by the transmitter and stops delivering the medium access control (MAC) layer packets to the upper layer. The stall issue seriously degrades the quality of service for the high speed mobile terminal owing to the high probability of NACK-to-ACK errors.
In this paper, we present an analytical approach to compare three stall avoidance schemes: the timer-based, the window-based, and the indicator-based schemes. To this end, we first propose a new performance metric – gap-processing time, which is defined as the duration for a nonrecoverable gap appearing in the MAC layer reordering buffer until recognized. Second, we derive the probability mass functions and the closed-form expressions for the average gap-processing time of these three stall avoidance schemes. It will be shown that our analytical results match the simulations well. Further, by analysis we demonstrate that the indicator-based stall avoidance scheme outperforms the timer-based and the window-based schemes. The developed analytical approaches can help determine a proper number of processes for the parallel SAW HARQ mechanisms. We also show that the analytical formulas can be used to design the number of acceptable users for an admission control policy subject to the gap-processing time constraint. In the future, our analysis can facilitate the MAC/radio link control (RLC) cross-layer design because the gap-processing time in the MAC layer is closely related to the window size in the RLC retransmission mechanism.
1The contact author.
2
This work was supported jointly by the National Science Council R.O.C under the contract 93-2219-E-009-012, 92-2219-E-009-026, EX-91-E-FA06-4-4, and the ASUSTek Computer Inc. under the contract 91C189.
3
Part of this work appeared in IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, vol. 3, pp. 2431-2436, Sep. 2003.
I. INTRODUCTION
H
IGH speed downlink packet access (HSDPA) has become an important feature for the wideband code division multiple access (WCDMA) system [1]. The HSDPA in the WCDMA system aims to deliver mobile data services at rates up to 10 Mbits/sec [2], [3]. The key enabling technologies for HSDPA includes physical layer fast adaptive modulation and coding [4]–[6], fast packet scheduling in the medium access control (MAC) layer [7]–[11], fast cell selection [12], multiple input multiple output (MIMO) antenna [13], [14], and buffer overflow control [15].In this paper, we investigate the stall avoidance techniques to enhance the MAC layer performance of a parallel multi-channel stop-and-wait (SAW) hybrid automatic repeat request (HARQ) mechanisms adopted in HSDPA. [16]–[21] In such a fast HARQ mechanism, a reordering buffer is equipped at the receive entity because packets may arrive out of sequence. However, due to transmission errors in a wireless channel, the negative acknowledgement (NACK) control signal for a damaged/lost packet is likely changed to the acknowledgement (ACK) signal. In this situation, the transmitter mistakenly believes that the packet has successfully reached the destination. Meanwhile, the receiver keeps waiting for a packet which will not be sent again by the MAC layer retransmission scheme. We call this problem the stall issue if the reordering buffer has a non-recoverable gap due to a NACK-to-ACK error. The stall of delivering the MAC layer data to the upper layer will delay the inevitable upper layer radio link control (RLC) retransmission [22], [23]. It has been reported that the probability of the NACK signal becoming the ACK signal can be as high as 10−2 for a high speed mobile during handoff [24], [25]. Thus, resolving the stall problem becomes an important task to reduce the transmission delay for the HSDPA [26].
To resolve the stall issue for the multi-channel SAW HARQ, there are two main research directions in the literature. The first direction is to improve the reliability of control packets by increasing the power of ACK or NACK signals [24]. The second direction is to design stall avoidance schemes to inform the receiver to stop waiting for the lost MAC layer packets and start forwarding all the received in-sequence packets to the upper layers [26]–[30]. Since the lost packet cannot be recovered by the MAC layer retransmission mechanism, the upper layer protocols will be responsible for requesting the retransmission of the lost MAC layer packets. In [27], a timer-based stall avoidance scheme was suggested to trigger the process of forwarding received packets to the upper layer as long as a gap of the received packets’ sequences in the reordering buffer lasts over a predetermined expiration period. In [28], a window-based stall avoidance scheme proposed using a sliding window method to detect the stall situation in the reordering buffer before the timer expires. In [26], [29], [30], an indicator-based stall avoidance scheme is proposed with the aid of a new data indicator (NDI). This scheme recognizes the stall situation by checking the NDI information and the transmission sequence number (TSN) of each packet. If it is found that all the HARQ
processes, instead of sending the expected missing packet, are transmitting either new packets or other old packets, the stall situation is confirmed. To our knowledge, the performances of the above stall avoidance schemes were only evaluated by extensive simulations [16], [22], [23], [31].
The objective of this paper is to develop analytical methods to evaluate the performance of these three stall avoidance methods: the timer-based, the window-based, and the indicator-based schemes. To characterize the performance of the stall avoidance schemes, a new performance metric, called the gap-processing time (defined in Section III), is introduced in this paper. We derive the probability mass functions and the closed-form expressions for the average gap-processing time of the three considered stall avoidance techniques. By simulations and analyses, we find that the indicator-based stall avoidance scheme significantly reduces the gap-processing time compared to the timer-based and the window-based schemes. When applying these three stall avoidance schemes, the presented analytical approach can provide important information for determining a proper number of processes in the parallel SAW HARQ mechanism. It can also be used to design the allowable retransmissions for the timer-based and the window-based schemes. Furthermore, the number of acceptable users can also be designed by the proposed analytical approach when the admission control and the gap-processing time are jointly considered.
The rest of this paper is organized as follows. In Section II, we describe the stall issue in the multi-channel SAW HARQ mechanism. Section III introduces three kinds of stall avoidance schemes (the timer-based, the window-timer-based, and the indicator-based schemes). In Section IV, we define a new performance metric processing time and describe system assumptions. Sections V ∼ VII derive the average gap-processing time of the timer-based, the window-based, and the indicator-based stall avoidance schemes, respectively. Section VIII shows the performance of the stall resolution schemes in the Rayleigh fading channel. We also discuss the design principles of the expiration period for the timer-based scheme, the window size for the window-based scheme, and the number of parallel HARQ processes for the indicator-based scheme. Section IX gives our concluding remarks.
II. BACKGROUND
A. Multi-Channel SAW HARQ Mechanism
The channel SAW HARQ is adopted in the HSDPA system [1]. The basic idea of the multi-channel SAW HARQ is to “keep the data pipe full”. Figure 1(a) illustrates an example of a dual-multi-channel SAW HARQ consisting of an even transmitter and an odd transmitter [32]. As shown in Fig. 1(b), after sending packet 0, the even transmitter waits for the acknowledgement from the receiver. Meanwhile, the odd transmitter starts sending packet 1. With two transmitters sending data alternatively, the dual-channel SAW HARQ can fully utilize the channel capacity, thereby achieving high throughput.
Process Sequencer Even Tx Process Odd Tx Process Even Rx Process Odd Rx Process Data Channel
Even Feedback Channel
Odd Feedback Channel Even Control Channel
Odd Control Channel
(a) Structure
(b) Timeline
Fig. 1. The structure and timeline for the dual-channel SAW H-ARQ mechanism.
B. Definition of Type-I and Type-II Gaps
In this paper, a gap is defined as an idle space reserved for a lost packet in the reordering buffer of the receiver. We can further classify two types of gaps for the HARQ retransmission scheme. Type-I gap is defined as the lost packet that are possibly recovered in future retransmissions, while Type-II gap is the one that will never be sent again by the MAC retransmission scheme due to a NACK-to-ACK error. Whenever a Type-II gap appears in the reordering buffer, the process of sending packets to the upper layer is stalled. Note that a regular HARQ process usually cannot distinguish a Type-II gap from a Type-I gap. Thus, it is necessary to design a stall avoidance scheme to detect the occurrence of a Type-II gap to expedite data forwarding to the RLC layer. After a Type-II gap is detected, the available packets in the reordering buffer as well as this Type-II gap must be flushed out to the RLC layer. Next an RLC retransmission request is initiated for the missing Type-II gap [22], [29], [30].
III. THE STALLAVOIDANCESCHEMES
Because a NACK control signal may be corrupted during transmissions in a wireless channel, many stall avoidance schemes are proposed to prevent a receiver from waiting for a missing packet due to a
Fig. 2. An example of the timer-based stall avoidance scheme.
NACK-to-ACK error. In this section, we discuss three current stall avoidance schemes, the timer-based [27], the window-based [28], and the indicator-based schemes [29], [30].
A. Timer-Based Scheme
The basic principles of the timer-based method in [27] are described as follows:
1) A timer is triggered when either a Type-I gap or a Type-II gap appears in the reordering buffer of the receiver.
2) As the timer expires, the receiver stops waiting for the lost packet and judge that the lost packet belongs to a Type-II gap.
3) The timer is reset if the missing packet is successfully retransmitted before the timer expires. Figure 2 illustrates the operation principles of the timer-based stall avoidance scheme. When packet 2 successfully arrives at the receiver, it is aware that packets 0 and 1 are missing and thus a timer is triggered. Note that only one timer is triggered for the consecutive gaps. Assume that packets 3, 4, 6 and 8 reach the receiver, but packets 5 and 7 are damaged. Based on the timer-bases stall avoidance scheme, a new timer will not be initiated for additional gaps until the previous timer expires. Thus, in this example, only after the timer set for packets 0 and 1 expires, a new timer will be set for the missing packets 5 and 7. After that, the receiver sends packets 2 ∼ 4 to the upper layer and requests for retransmitting packets 0 and 1 in the RLC layer.
B. Window-Based Scheme
In [28], the window-based method was suggested to detect Type-II gaps in the reordering queue on top of the timer-based scheme. To explain the operation of the window-based stall avoidance scheme, we define the detection window. The detection window means a set of packets that are expected to arrive at the receiver. The detection window functions as a sliding window protocol. If a gap occurs, the detection window is initiated and two possible scenarios follows. For a Type-I gap, the detection window will shrink from the trailing edge after the gap is filled. For a Type-II gap, however, the trailing edge of the detection window is halted. Thus, the detection window expands from the leading edge when other subsequent packets arrive. In a long run, a pre-determined maximum threshold of the detection window size will be reached.
A fully-booked detection window means that all available slots/seats in the reordering buffer have been taken. The detection window size is usually designed large enough to guarantee a successful retransmission. Thus, the gaps halting the trailing edge of a fully booked detection window usually belongs to Type-II gaps. As a consequence, when a new packet arrives and the detection window is fully booked, the window-based stall avoidance scheme forwards Type-II gaps and subsequent received in-sequence packets in the reorder buffer to the upper layer in regardless of timer expiration.
Figure 3 shows an example to illustrate the operation principles of the window-based stall avoidance scheme. Consider a detection window with a size of seven, which currently contains packets 2, 3, 4, and 6 and the gaps for missing packets 0, 1, and 5. Suppose that packets 0, 1, and 5 are Type-II gaps and new packets 7 and 8 arrive at this moment. Since the detection window is already fully-booked and its trailing edge is halted by packets 0 and 1, the window-based stall avoidance scheme can recognize that packets 0 and 1 are Type-II gaps. Accordingly, the receiver forwards packets 2, 3, 4 together with gaps of packet 1 and 2 to the upper layer. Now the detection window size becomes two and its trailing edge slides until the gap for packet 5. With more space available in the reordering buffer, packets 7 and 8 are accommodated and the detection window is reserved for packets 5 to 8.
C. Indicator-based Scheme
In [26], [29], [30], a new stall avoidance scheme is proposed by taking advantage of the new data indicator (NDI). The NDI (just a one-bit tag) is associated with every packet and is transmitted in the high speed downlink control channel [33]. The NDI is toggled for a new transmitted packet, but is not changed for a retransmitted old packet. By checking the NDI in the control channel and the transmission sequence number (TSN) in the traffic channel for each packet, the indicator-based stall avoidance scheme can determine whether the missing packet will be transmitted or not. If all HARQ processes are transmitting
Fig. 3. An example of the window-based stall avoidance scheme with the detection window size equal to seven.
new packets or other old packets except for the expected missing packet, then this gap in the reordering buffer can be judged to be a Type-II gap.
Table I illustrates the status of a 4-process SAW HARQ mechanism for a particular user in two cycles. The cycle duration is defined as the sum of the transmission time interval (TTIs) with all different parallel processes transmitting one packet, e.g. the cycle duration is 4 TTIs in this case. The field in the table is filled with a triplet variable (TSN, Sc, NDI). Here SC ∈ {ACK, NACK, and N→A} denotes one
of the three events: “receiving an ACK”, “receiving a N ACK”, and having a NACK-to-ACK error, respectively. The status N EW or OLD in the field N DI is equivalent to that the NDI is changed for a
new packet or is unchanged for a retransmitted old packet, respectively. An empty field implies that this
time slot is idle or assigned to other users. Assume that the target user requests to transmit five packets with TSN = 0 ∼ 4 from the RLC layer. The functions of the indicator-based stall avoidance scheme associated with Table I are explained as follows:
1) In cycle 1, the four parallel processes transmit packets 0 to 3, respectively. Assume that packet 3 passes the cyclic redundancy check (CRC), but packets 0 ∼ 2 fail. In the feedback channel, suppose that a NACK-to-ACK error occurs in process 1, and processes 2 and 3 successfully receive NACK for packets 1 and 2. The reordering buffer currently contains packet 3 together with the three gaps of packets 0 ∼ 2. At this moment, processes 1, 2, and 3 assumes that the missing packets 0 ∼ 2 will be retransmitted, but are unsure which packet will be received. The stall avoidance scheme starts monitoring the status of processes 1, 2, and 3 to check whether these gaps belong to Type-II gaps.
TABLE I
AN EXAMPLE OF THE STATUS IN A4-PROCESSSAW HARQMECHANISM FOR ATYPE-IIGAP BEING DETECTED BY RECEIVING NEW
PACKETS IN THREE PROCESSES AND OLD PACKET IN ONE PROCESS.
Process ID in 4-process SAW HARQ
Process 1 Process 2 Process 3 Process 4
(TSN,Sc,NDI) (TSN,Sc,NDI) (TSN,Sc,NDI) (TSN,Sc,NDI)
Cycle 1 (0,N→A,NEW) (1,NACK,NEW) (2,NACK,NEW) (3,ACK,NEW)
Cycle 2 (4,ACK,NEW) (1,ACK,OLD) (2,ACK,OLD)
2) In cycle 2, processes 1, 2, and 3 receive a new packet 4, and old packets 1 and 2, respectively. Now the holes of packets 1 and 2 in the reordering buffer are filled. Since the NDI status of processes 1 and 4 are NEW and the TSNs of processes 2 and 3 indicate that packets 1 and 2 are received, the subsequent packets arriving at the receiver will have TSNs higher than 4. Thus, no process is responsible for sending the missing packet 0. Consequently, it can be confirmed that the gap of packet 0 is a Type-II gap. Hence, the available in-sequence packets 1 ∼ 4 are forwarded to the upper layer together with packet 0.
IV. PERFORMANCEMEASURE AND SYSTEMASSUMPTIONS
A. Gap-processing time
To measure the performance of the stall avoidance schemes, we define a new performance measure –
gap-processing time (GPT). It is the duration from the occurrence of a Type II gap until a stall avoidance
scheme recognizes the existence of nonrecoverable gaps. The gap-processing time is an important perfor-mance metric to evaluate the quality of service (QoS) for HSDPA. A short gap-processing time means the RLC retransmission can be initiated earlier, which is especially critical for the delay sensitive services. Referring to the analytical model in [34], the packet delivery delay (denoted by Td) in the third-generation
(3G) WCDMA with transport control protocol (TCP) can be decomposed as
Td= Qd+ Rd+ Nd , (1)
where Qd, Rd, and Ndare the queuing delay, reordering delay, and the wireline network delay, respectively.
However, the packet delivery delay of (1) does not cover the effect of NACK-to-ACK error. To incorporate the effect of NACK-to-ACK error into packet delivery delay, Td should be modified as
Td= Qd+ Rd+ Nd+ GP T . (2)
Note that the reordering delay Rd is caused by Type-I gaps while the GP T is caused by Type-II gaps.
procedure of forwarding the received packets to the upper layer. Consequently, the stall problem may seriously degrade the fluency of packet delivery. For the probability of a NACK-to-ACK error equal to 0.01, packet error rate of 0.3, and transmission time interval of 2 milli-seconds, a five seconds transmission of delay sensitive service may experience 5/0.002 × 0.3 × 0.01 = 7.5 times of the stall problem. If the stall problem can not be solved, the procedure of forwarding packet to the upper layer will be held up forever. As a result, the data delivery delay can be extremely long and the goodput can be seriously decreased. Therefore, how to solve the stall problem become an important issue, especially for the delay sensitive services. Furthermore, if the gap-processing time is longer than the RLC timeout, the excess gap-processing time may induce some additional RLC retransmission causing even longer packet delivery delay. In this paper, we assume that the RLC timeout is longer than the gap-processing time.
The longer period of gap-processing time also leads to more packets accumulated in the MAC layer. Therefore, the overflow probability of the reordering buffer is increased. Moreover, as more received packets are forwarded to the RLC layer due to longer gap-processing time, a larger-sized buffer in the RLC layer is required to accommodate these packets. With large enough buffers of both MAC and RLC layers, the received packets can be accommodated in the receiver. In this paper, we focus on the analysis of GP T of the three stall avoidance schemes. Gap-processing time is influenced by the physical layer parameters, such as packet error rate (P ER) and the probability of a NACK becoming an ACK (PN →A),
and the MAC layer parameters, e.g. the size of the reordering buffer and the number of processes in the parallel SAW HARQ mechanisms.
B. Assumptions
Being a function of both physical layer and MAC layer parameters, gap-processing time is difficult to be computed analytically. To make the analysis tractable, we make the following assumptions:
1) Because a NACK-to-ACK error usually occurs when a mobile terminal moves at high speeds, it is assumed that the fast changing channel is modelled by an independent Rayleigh fading channel from one packet to another packet.
2) All packets are assumed to have the same priority.
3) All transmit processes in the HARQ mechanism always have packets ready for transmission. 4) Effects of incremental redundancy and Chase combining are not considered. The provided analysis
in the paper can be viewed as the worst-case analysis.
5) Assume the modulation and coding scheme and the packet length are not changed during the period of the gap-processing time.
V. ANALYSIS OFTIMER-BASED STALLAVOIDANCESCHEME
In Proposition 1, we derive the average gap-processing time for the timer-based stall avoidance scheme.
Proposition 1: Denote Ps and PN →A the probability of a packet being successfully received and that of
having a NACK-to-ACK error, respectively. Then the probability with a Type-II gap (denoted by PG) is
equal to
PG= (1 − Ps)PN →A . (3)
Let D be the expiry time of the timer normalized to the transmission time interval (TTI). In terms of PG
and Ps and D, the average gap-processing time for the timer-based stall avoidance scheme (denoted by
GP Ttimer) in the single user case can be expressed as
GP Ttimer =
D
X
`=0
GP T (`) , (4)
where the average gap-processing time with ` Type-II gaps (denoted by GP T (`)) is
GP T (`) = (1 − PG)D[D + ∞ X i=1 i(1 − Ps)i−1Ps] , ` = 0 ; P` G(1 − PG)D−` D−`+1X t1=1 D−`+2X t2=t1+1 ... D X t`=t`−1+1 ` X j=1 2D − tj ` , ` = 1, · · · , D , (5)
and tj is defined as the elapsed time of the previous timer until the end of gap j (j = 1, · · · , `).
Proof: Assume that a timer is already initiated for a certain gap. We consider the following two scenarios:
(I) No new Type-II gap occurs in a period of D, ` = 0:
Referring to Figure 4(a), let gap 0 occur after the previous timer expires. Suppose that i TTIs later a packet with higher TSN than gap 0’s is successfully received. A new timer is then initiated for gap 0. For this case, the gap-processing time of gap 0 is i plus the expiration time of the timer D. Because the probability of not having new Type-II gap within D TTIs is (1 − PG)D and the average time to start the
timer for gap 0 is
∞
X
i
i(1 − Ps)i−1Ps TTIs, the average gap-processing time in the case of l = 0 can be
computed as follows: GP T (0) = " D + ∞ X i=1 i(1 − Ps)(i−1)Ps # (1 − PG)D . (6)
Thus, the first part of Proposition 1 is proved.
(II) ` Type-II gaps occur before the timer expires, ` 6= 0:
Assume that ` new Type-II gaps occur before the timer expires, as shown in Fig. 4(b). For gap j, (j = 1, ..., `), a period of time (D − tj) is needed before its own timer starts. Recall that tj is defined
(a) No new Type-II gap occurs before the timer expires for a previous gap.
(b) Some new Type-II gaps occur before the timer expires for a previous gap.
Fig. 4. Two scenarios for the timer-based stall avoidance scheme to remove a Type-II gap.
j is equal to (2D − tj) in this case. As a consequence, given (t1, · · · , t`) of ` Type-II gaps, the average
gap-processing time is equal to
Gap(`|t1, · · · , t`) = ` X j=1 2D − tj ` . (7)
The probability of having ` Type-II gaps conditioned on known t1, · · · , t` can be computed by
Prob{having ` Type-II gaps | t1, · · · , t`} = PG`(1 − PG)D−` . (8)
By considering all the possible occurrence time of ` Type-II gaps in D TTIs, we have
Gap(`) = PG`(1 − PG)D−` D−`+1X t1=1 D−`+2X t2=t1+1 ... D X t`=t`−1+1 ` X j=1 2D − tj ` (9)
Hence, we prove the second part of Proposition 1.
Fig. 5. An illustrative example of the seat allocation in a detection window for the window-based stall avoidance scheme.
VI. ANALYSIS OFWINDOW-BASED STALLAVOIDANCESCHEME
In this section, we first concisely derive the closed-form expression of the average gap-processing time for the window-based stall avoidance scheme in Proposition 2. Then, due to complexity, we separately derive its probability mass function (pmf ) of the gap-processing time.
A. Average Gap-processing time
Proposition 2: Let W be the detection window size of the window-based stall avoidance scheme for
an M -channel SAW HARQ mechanism. Denote Pnew and Pold the probability of receiving a new packet
and that of receiving a retransmitted old packet, respectively. From the definitions of Ps and PN →A in
Proposition 1, Pnew and Pold can be expressed as
Pnew = Ps+ (1 − Ps)PN →A , (10)
and
Pold = (1 − Ps)(1 − PN →A) . (11)
Then the average gap-processing time of the window-based stall avoidance scheme normalized to TTI can be computed in terms of parameters Pnew, Pold, W , and M as follows:
GP Twindow = M + M X m=1 " (W − m) ∞ X n=1 nPnewPoldn−1 # µ M − 1 m − 1 ¶ Pm−1 new PoldM −m . (12)
Proof: The gap-processing time for the window-based stall avoidance scheme is derived in two steps.
In the following, we will prove that
GP Twindow = cycle duration + residual detection time , (13)
where the cycle duration is defined in Section III(C) and the residual detection time is defined as the extra time to detect a Type II gap in addition to one cycle duration.
1) cycle duration: The minimum gap-processing time for the window-based stall avoidance scheme is equal to one cycle duration (M TTIs). Consider the smallest detection window W = M . The detection window size (or equivalently the reordering buffer size) is usually larger than the number of parallel HARQ processes, i.e. W ≥ M . Suppose that a Type-II gap occurs in process P R∗ in
i-th cycle. If subsequent M − 1 processes transmit new packets successfully, process P R∗ intends to
send a new packet (P KT∗) in the (i + 1)-th cycle due to a NACK-to-ACK error. However, because the detection window is fully-booked, the gap in the i-th cycle for process P R∗ can be judged to be a Type-II gap according the rule of the window-based stall avoidance scheme. In this situation, the gap-processing time is equal to one cycle duration (i.e. M TTIs).
2) residual detection time: The residual time is defined as the extra time after one cycle duration for the detection window becoming fully-booked. The residual detection time spans in the following two cases (a) W > M and (b) W = M with some of the M − 1 processes subsequent to process
P R∗ receiving old packets.
a) W > M : Now let’s examine the seat allocation of a detection window, as shown in Fig. 5. Recall in step 1 that process P R∗ produced a type-II gap (gap∗) in cycle i. Thus, process P R∗ will transmit a new packet P KT∗ in cycle i + 1. Without loss of generality, choose (m − 1) processes out of the total other (M − 1) processes to send new packets, and the remaining
(M −m) processes to send old packets. Clearly, the probability of (m−1) processes transmitting
new packets is Pnewm−1 and that of (M −m) processes retransmitting old packets is PoldM −m. Since there are ¡M −1m−1¢ choices, the probability of P KT∗ and gap∗ being separated by m seats is equal to PM(m) = µ M − 1 m − 1 ¶ Pnewm−1PoldM −m , (14)
where PMm=1PM(m) = 1. A Type-II gap will finally halt the trailing edge of a detection
window and is seated at the first place of the detection window. Hence, P KT∗ will be positioned at the (m + 1)-th seat. Accordingly, there will be another (W − m − 1) available seats remained in the detection window. Note that the detection window extends its leading edge only when receiving a new packet and the old packets just fill in the empty holes in
the reserved seats of the reordering buffer. Since the probability of a new packet arriving at the reordering buffer within n TTIs is equal to PnewPoldn−1, the average time for the detection
window extending its leading edge by one seat (denoted by T0) can be computed by
To =
∞
X
n=1
nPnewPoldn−1 . (15)
As a result, it takes extra (W − m − 1)To TTIs to have a fully-booked window in addition to
one cycle duration. When another new packet arrives in the next To, the receiver can judge the
gap at seat 1 is a Type-II gap and start the process of forwarding the received packets with type II gap to the upper later. From (14) and (15) and the above discussion, the total residual detection time for that case of M > M in addition to one cycle duration is calculated as
residual detection time =
M X m=1 [(W − m)To] PM(m) = M X m=1 " (W − m) ∞ X n=1 nPnewPoldn−1 # µ M − 1 m − 1 ¶ Pm−1 new PoldM −m .(16)
b) W=M: Recall that the residual time for W = M lasts when some of the M − 1 processes subsequent to process P R∗ receive old packets. Following the same approach of obtaining (14) in the case of W > M , we assume that the (m − 1) processes of the subsequent (M − 1) processes send new packets and the remaining (M − m) processes send old packets. In this situation, gap∗ can be recognized as a Type-II gap when the remaining (M − m − 1) plus one seats in the ordering buffer are occupied. Then, one can easily find that the residual time for
W = M is just a special case of that for W > M by setting W = M in (16).
Adding the residual detection time (16) to the cycle duration (M TTIs), we obtain the average gap-processing time of the window-based stall avoidance scheme as shown in (12).
¥
B. Probability Mass Function of Gap-processing time
In this subsection, owing to the complexity, we separately derive the pmf of the gap-processing time for the window-based scheme. Assume that P KT∗ is positioned at the (m+1)-th seat with probability PM(m)
in (14). Following from the above subsection, we know that the Type-II gap gap∗ can be detected when the remaining (M − m − 1) plus one seats in the ordering buffer are occupied. Then, the gap-processing time for gap∗ will be M + (W − m) TTIs when W − m consecutive new packets arrive the receiver successfully with conditional probability PnewW −m, where M is the cycle duration. In this case, the probability of gap-processing time equal to M + (W − m) TTIs is PnewW −mPM(m). However, the gap-processing time will be
longer than M + (W − m) TTIs if one or more of the W − m new packets fail the CRC at their first trials to reach the receiver. Thus, the gap-processing time will be M + (W − m) + 1 TTIs if one of the W − m new packets takes two transmissions (one transmission with probability Pnew and one retransmission with
probability Pold) to reach the receiver. In this case, the probability is (W − m)PnewW −mPoldPM(m).
Now we assume that there are W − m transmissions and total n − (W − m) retransmissions before these
W − m new packets successfully reach the receiver. The gap-processing time is n + M TTIs in this case.
Because these total n − (W − m) retransmissions may belong to some of the W − m packets, there are
(n−1)!
(W −m−1)!(n−(W −m))! =
¡ n−1
W −m−1
¢
choices in this case, for each of which the probability is PnewW −mPoldn−(W −m). Thus, the probability of gap-processing time equal to n + M (denoted by P [GP T = n + M ]) can be expressed as P [GP T = n + M] = P [GP T = n + M|P KT∗ at (m + 1)-th seat]P M(m) = µ n − 1 W − m − 1 ¶ PnewW −mPoldn−(W −m) µ M − 1 m − 1 ¶ Pnewm−1PoldM −m = µ n − 1 W − m − 1 ¶µ M − 1 m − 1 ¶ PW −1 new Poldn+M −W . (17)
Note that (17) is not valid for W = M and m = M . For W = M and m = M , P [GP T = n +
M|P KT∗ at (M + 1)-th seat] = P
newPoldn because P KT∗ may successfully reach the receiver after n + 1
transmissions, where n ≥ 0. Then, we can have
M X m=1 L X n=W −m P [GP T = n + M] = 1 , (18)
where L is the required TTIs to detect a Type-II gap. The average gap-processing time can also be calculated byPMm=1PLn=W −m(n + M)P [GP T = n + M], which is equal to the result obtained from (12).
VII. ANALYSIS OFINDICATOR-BASEDSTALLAVOIDANCESCHEME
In Proposition 3, we derive the average gap-processing time for the indicator-based stall avoidance scheme.
Proposition 3: Consider an M -channel SAW HARQ mechanism. The gap-processing time for the
indicator-based scheme can be calculated in terms of parameters M , Ps, Pnew, and Pold as follows:
GP Tindicator = M(Pnew+ PoldPs)M −1+
C X k=1 M X m=2 (m − 1 + kM )P (xk = S1) " k X i=0 P (xi = S1) #m−2"k−1 X j=0 P (xj = S1) #M −m , (19)
where
P (x0 = S1) = Pnew+ PoldPs (20)
and
P (x` = S1) = Pold` (1 − Ps)Pnew for ` ≥ 1 . (21)
C is the required cycles of involving all the processes in the M-channel SAW HARQ mechanism to detect
a Type-II gap.
Proof: Recall that the basic idea of the indicator-based stall avoidance scheme is to examine the status
of each HARQ process by the use of the NDI in the control channel and the TSN in the traffic channel to confirm whether the missing packet will be transmitted or not. To ease our discussion, the status of an HARQ process are described by the following two events:
A , {N DI(rec) = N EW } ; (22)
B , {{T SN(rec) 6= T SN∗} ∩ {NDI(rec) = OLD}} , (23)
where N DI(rec) and T SN(rec) are the NDI and the TSN of the received packet; T SN∗ is the TSN of the
missing gap. If either event A or event B is sustained for a HARQ process, then this HARQ process is ruled out to be the candidate for sending the missing packet T SN∗. If all the HARQ processes are ruled out, it implies that the existing gap in the reordering buffer belongs to the nonrecoverable Type-II gap since no HARQ process will transmit the missing packet. However, if none of events A and B happens (denoted by {A ∪ B}), the receiver believes that the HARQ process still possibly transmits the packet
T SN∗ to fill the gap of the reordering buffer in the future. Note that when T SN
(rec) = T SN∗, this Type-I
gap is filled in the reordering buffer, which will not cause the stall issue.
Assume that a Type-II gap appears in the first process (P R1) of the M -processes SAW HARQ
mechanism in the cycle 0 (` = 0) as shown in Fig. 6. To begin the proof, we first define a semi-Markov chain to describe the status of each HARQ process. Fig. 7 shows this semi-Markov chain with two states defined as follows:
1) Retransmission state (S0): If event {A ∪ B} happens, this HARQ process enters the retransmission
state. Denote x` the state variable in the l-th cycle. If a process in the retransmission state in the
(` − 1)-th cycle, the receiving process will issue a NACK signal for requesting a retransmission in
the `-th cycle. However, if the NACK signal is changed to an ACK signal, a new packet will be transmitted in the `-th cycle instead. Based on the definition of event A in (22), we have
where PN →A is the probability of having a NACK-to-ACK error. On the contrary, if the NACK
signal arrives the transmitter correctly, the missing packet will be retransmitted in the `-th cycle. Note that probability of the NACK signal arriving the transmitter correctly is (1 − PN →A) and the
probability of successfully retransmitting packet to the receiver is Ps. According to the definition
of (23), the occurrence probability of event B is equal to
P (B|x`−1 = S0) = (1 − PN →A)Ps . (25)
Because events A and B are mutually exclusive and from (24) and (25), we can obtain
P (x` = S0|x`−1 = S0) = P ({A ∪ B}|x`−1 = S0)
= 1 − [P (A|x`−1 = S0) + P (B|x`−1 = S0)] = 1 − [PN →A+ (1 − PN →A)Ps]
= (1 − PN →A)(1 − Ps)
= Pold . (26)
Recall that in (11), we define Pold = (1 − PN →A)(1 − Ps). According to the definition of S0, when
a process receives a retransmitted old packet which fails the CRC test, it enters state S0. Thus, the
initial probability of a process at S0 can be expressed as
P (x0 = S0) = Pold(1 − Ps) . (27)
2) Stop state (S1): If either event A or event B happens, the state of process will enter the stop state.
From Fig. 7 and (24) and (25), the probability of a process in the stop state S1 in the `-th cycle
can be expressed as P (x`= S1|x`−1 = S0) = P (A ∪ B|x`−1 = S0) = P (A|x`−1 = S0) + P (B|x`−1 = S0) = PN →A+ (1 − PN →A)Ps = Ps+ (1 − Ps)PN →A = Pnew . (28)
Recall that in (10), we define Pnew = Ps+ (1 − Ps)PN →A. According to the definition of state S1,
when a process receives a new packet or successfully receives a retransmitted old packet, it will enter state S1. Thus, the initial probability of a process at S1 can be expressed as
Fig. 6. An illustration for the gap-processing time of the indicator-based stall avoidance scheme.
Fig. 7. The state transition diagram for the indicator-based stall avoidance scheme.
From (26) and (28), we obtain the state transition probability matrix Γ of the two-state Markov chain in Fig. 7 as follows: Γ , P (x` = S0|x`−1 = S0) P (x`= S1|x`−1 = S0) P (x` = S0|x`−1 = S1) P (x`= S1|x`−1 = S1) = Pold Pnew 0 0 . (30)
Then from (27) and (29), a state probability vector P(x`) , [P (x` = S0), P (x` = S1)] can be obtained
by
P(x`) = P(x`−1)Γ = P(x0)Γ` = [P`+1
Now referring to Fig. 6, we derive the average gap-processing time for the following two possible scenarios.
(I) Detect Type-II gap right after cycle 0:
If in cycle 0 processes P R2 ∼ P RM are all in state S1, the gap T SN∗ can be detected as a Type-II gap
right after the end of cycle 0. Due to a NACK-to-ACK error, P R1 transmits a new packet in cycle 1. As
long as process P R1 receives the NDI and finds N DI = N EW , the receiver can confirm that the missing
packet T SN∗ is a Type-II gap since all processes are handling other packets except for T SN∗. In this case, the receiver spends M TTIs to detect this Type-II gap. Thus, from (29), the average gap-processing time for detecting a Type-II gap immediately after cycle 0 can be expressed as
GP T0 = M × [P (x0 = S1)]M −1
= M(Pnew+ PoldPs)M −1 . (32)
(II) Detect the Type-II gap more than one cycle:
Recall that if a process is in state S1, this process is ruled out to be the candidate for sending the missing
packet T SN∗. When all the processes are all ruled out, the remaining gap in the reordering buffer is the Type-II gap. Denote PInd(m, k) the probability the Type-II gap being detected in the k-th cycle by P Rm,
where m ≥ 2 and k ≥ 1. As shown in Fig. 6, the gap-processing time for this case is (m − 1 + kM ). To compute PInd(m, k), three event E1, E2, and E3 are defined as follows:
E1 = {P Rm is ruled out in the k-th cycle.} (33)
E2 = {P R2 ∼ P Rm−1 are ruled out within k-th cycle.} (34)
E3 = {P Rm+1 ∼ P RM are ruled out within (k − 1)-th cycle.} (35)
From the state probability of the Markov chain in (31), it is obvious that
P (E1) = P (xk = S1) . (36)
Before calculating P (E2), we first denote Pk(α) the probability of process P Rα being ruled out within
k-th cycle. Because all processes send data independently, the probability for processes P R2 ∼ P Rm−1
being ruled out within k-th cycle can be expressed as
P (E2) = (m−2) z }| { Pk(2)× Pk(3)× · · · × Pk(m−1) = " k X i=0 P (xi = S1) #m−2 . (37)
Similarly, for event E3 we can have
P (E3) = "k−1 X j=0 P (xj = S1) #M −m . (38)
Since events E1, E2, and E3 are mutually independent, combining (36), (37), and (38), we can express
the average gap-processing time for case (II) as follows:
GP T1 = C X k=1 M X m=2 (m − 1 + kM)PInd(m, k) = C X k=1 M X m=2 (m − 1 + kM)P (E1) × P (E2) × P (E3) = C X k=1 M X m=2 (m − 1 + kM)P (xk= S1) " k X i=0 P (xi = S1) #m−2"k−1 X j=0 P (xj = S1) #M −m , (39) where C is the required cycles of involving all the processes of an M -channel SAW HARQ mechanism to remove a Type-II gap. For given parameters Pnew, Pold, Ps, and M , the value of C can be obtained
from (Pnew+ PoldPs)M −1+ C X k=1 M X m=2 P (xk = S1) " k X i=0 P (xi = S1) #m−2"k−1 X j=0 P (xj = S1) #M −m = 1 . (40) Combining (32) and (39), the average gap-processing time for the indicator-based stall avoidance scheme can be computed by GP Tindicator = GP T0 + GP T1 = M(Pnew+ PoldPs)M −1+ C X k=1 M X m=2 (m − 1 + kM )P (xk = S1) " k X i=0 P (xi = S1) #m−2"k−1 X j=0 P (xj = S1) #M −m . (41) ¥
VIII. NUMERICAL RESULTS AND DISCUSSIONS
In this section, by analysis and simulations, we investigate the average gap-processing time and the corresponding probability mass function for the timer-based, the window-based, and the indicator-based stall avoidance schemes. We will discuss the relation between the gap-processing time, the allowable retransmissions, and the number of acceptable users for different stall avoidance schemes. For these purposes, we conduct a simulation cross physical and MAC layers under the assumptions of IV.(B). In the simulation, each packet is transmitted through the flat Rayleigh fading channel. The correctness of each received packet is checked by CRC. If the received packet passes CRC, a ACK signal will be sent through
1
TABLE II
THESIMULATIONENVIRONMENT
Channel model Rayleigh fading
Doppler frequency 100 Hz
Packet size 320 bits
CRC bits 16 bits No. of parallel 4, 6, 8 HARQ processes TTI 2 msec Eb/N0 (dB) 10 ∼ 20 dB 1st transmission P ER1 0.09 ∼ 0.42
the feedback control channel otherwise a NACK signal is sent. If a NACK-to-ACK error occurs in the feedback control channel, a Type-II gap will appear in the reordering buffer. Then, the received packets are accumulated in the reordering buffer until that Type-II gap is detected by the stall avoidance scheme. The gap-processing time is calculated from its appearance until it is detected. To confirm the correctness of simulation results, we run 100000 packets for each simulation. The Doppler frequency of the Rayleigh fading channel is 100 Hz, which is equivalent to 54 km/hour with a carrier frequency of 2 GHz. Other simulation parameters are shown in Table II. Furthermore, in the discussion of the number of acceptable users, we assume that each user contributes equal traffic load to the system and the system capacity can support the all the requests from users. Also, all the users are under the same QoS requirements, i.e. the required gap-processing time should be lower than 100 TTIs. A fair scheduling policy is implemented to allocate resource to multiple users.
A. Average gap-processing time of the Timer-Based Scheme
Figure 8 shows the average gap-processing time of the timer-based stall avoidance scheme with various settings on the timer’s expiration (D). It is shown that the analytical results are close to the simulation results. In the case of D = 20 TTIs and Eb/N0 = 14 dB, the analytical average gap-processing time
(21.7 TTIs) is only 2.7% smaller than the simulation value (22.3 TTIs). Regarding the 2.7% discrepancy of the analytical result, the following summarized the reason. Recall that the stall avoidance scheme will be triggered when the receiver successfully receives a packet with a TSN larger than that of a gap in the reordering buffer. However, this rule may be conflicted in the derivations of Proposition I. Referring to Fig. 4(a), a timer begins to count for gap 0 when the packet denoted by “O” reaches the receiver under the assumption that the packet “O” possesses a TSN larger than that of gap 0. This is not always the case for packet “O” carrying a larger TSN. If the TSN of packet “O” is less than that of gap 0, the receiver needs
Fig. 8. The average gap-processing time of the timer-based stall avoidance scheme with different timer expiration for the 4-channel SAW HARQ mechanism in the Rayleigh fading channel with Doppler frequency of 100 Hz.
to wait for a next successful packet with larger TSN to discover gap 0. In this case, the gap-processing time will be extended. The same phenomenon happens in another case of Proposition I. As shown in Fig. 4(b), a new timer starts for gap 1 ∼ ` immediately after the previous timer expires under the assumption that the packet (denoted by P KT?) received in the last time slot of the counting period of the last timer carries a TSN larger than that of gap `. However, in the following two cases, the new timer will not count for gap `: (1) the TSN of P KT? is smaller than that of gap `; (2) P KT? has a TSN larger than that of gap ` but it fails CRC. In these two situations, gap ` will not be discovered and included in the counting period of the new timer. Consequently, the gap-processing time of gap ` will be extended. This explains the lower values of the analytical results.
The timer’s expiration impacts the MAC layer performance of HSDPA in two folds. On the one hand, as shown in the figure, a longer timer results in longer gap-processing time. For D = 20 TTIs at Eb/N0 = 14
dB the average gap-processing time (GP Ttimer) is 21.7 TTIs , while for D = 28 TTIs GP Ttimer = 30.1
TTIs. On the other hand, a larger value of time expiration allows more retransmissions. Specifically, for an M-process SAW HARQ mechanism, the allowable number of retransmissions (h) is equal to D/M in the single user case. A properly designed timer expiration is to allow enough retransmissions to recover the lost packet, and in the meanwhile not to cause too long gap-processing time. From Proposition 1, we can rapidly evaluate the impact of the allowable retransmissions (h = D/M ) on the gap-processing time (GP Ttimer) for different values of Ps and PN →A without time consuming simulations.
Fig. 9. The number of acceptable users of the timer-based stall avoidance scheme versus the numbers of allowable retransmissions (h) for various number processes (M ) in the parallel SAW HARQ mechanism subject to a constraint of gap-processing time 100 TTIs.
Furthermore, the derived analytical method of computing the gap-processing time can also be applied to design the proper number of acceptable users from the admission control standpoint. Let To be the
constraint on the maximum allowable gap-processing time. Then the acceptable users in the system can be approximated by bTo/GP Ttimerc, where bxc is the function of obtaining a maximum integer less than x.
According to the above guidelines, Figure 9 shows the number of acceptable users of the timer-based stall avoidance scheme versus the number of allowable retransmissions (n) for different numbers of parallel processes (M ) subject to the constraint of To= 100 TTIs. As shown in the figure, the more the allowable
retransmissions (n), the fewer the users can be accepted. For M = 4, as the value of h increases from 2 to 6, the number of acceptable users decreases from 10 to 3. This is because for a given M , a larger value of h leads to a longer timer expiration (D = n × M in the single user case), thereby resulting in a longer period of the gap-processing time. That is, more retransmissions increases the gap-processing time and thus decreases the number of acceptable users. Similarly, as the number of parallel HARQ processes increases, the effect of increasing gap-processing time will reduce the acceptable users.
B. Average gap-processing time of the Window-Based Scheme
Figure 10 shows GP Twindow against Eb/N0 for various window sizes. The accuracy of the derived
average gap-processing time (i.e. (12)) of the window-based stall avoidance scheme is validated by simulations. As shown in the figure, the analytical results match the simulations well. Most importantly, Fig. 10 also provides important insights into designing an admission control policy subject to the
gap-Fig. 10. The average gap-processing time of the window-based stall avoidance scheme with different window sizes for the 4-channel SAW HARQ mechanism in the Rayleigh fading channel with Doppler frequency of 100 Hz.
processing time constraint T0. Consider a fair scheduling policy. The number of acceptable users (N ) in
the system can be approximated by
N = bTo/GP Twindowc , (42)
where bxc is the function of obtaining a maximum integer less than x. For Eb/N0 = 14 dB in Fig. 10, one
can observe that GP Twindow = 15.3, 19.2, 23.1 TTIs for W = 12, 15, 18, respectively. For the maximal
gap-processing time constraint T0 = 100 TTIs, the allowable users are therefore equal to 6, 5, and 4 for
the window of size of 12, 15, and 18, respectively.
As a matter of fact, the window size is a function of the allowable minimum retransmissions (n) and the number of HARQ processes (M ). In the single user case, for an M-process SAW HARQ mechanism with a window of size of W , the allowable retransmissions (n) of a missing packet is at least
n = W
M − 1− 1 . (43)
For M = 4 and W = 12, the missing packet can be retransmitted by M −1W − 1 = 3 times. Assume one process keeps transmitting a missing packet and the other 3 processes transmit new packets successfully. After 4 cycles, a window with a size of 12 is fully occupied. Because the window has no more space for the missing packet, this packet will not be transmitted.
Hence, the admission control policy subject to the gap-processing time requirement can also be designed for different combinations of parameters n and M . Take M = 4 as an example. Figure 11 shows the
Fig. 11. The number of acceptable users of the window-based stall avoidance scheme versus Eb/N0 with various number minimum
allowable retransmissions (n = 3, 4, 5) in the 4-process SAW HARQ mechanism subject to a gap-processing time constraint of 100 TTIs.
number of acceptable users versus Eb/N0 with various minimum allowable retransmissions (n) subject to
a gap-processing time constraint of 100 TTIs. These curves are obtained by mapping Fig. 10 according to (42). From (43), n = 3, 4, and 5 correspond to W = 12, 15, and 18, respectively. As shown in the figure, the acceptable users is reduced from 7 to 4 as n increases from 3 to 5 for 16 dB ≤ Eb/N0 ≤ 18 dB.
Figure 12 shows the number of acceptable users of the window-based stall avoidance scheme against packet error rate (P ER) with various numbers of parallel processes (M ), where the maximal allowable gap-processing time To = 100 TTIs and the minimum allowable retransmission n = 3. These curves are
obtained by substituting the parameters M , W , Ps, and PN →A into (12). Note that P ER = 1 − Ps and
the corresponding window size W = 12, 20, and 28 is obtained from W = (n + 1)(M − 1) according to (43). This figure can be associated with an admission control policy subject to gap-processing time by observing P ER. According to the CRC results and P ER, suitable number of allowable users to maintain the QoS can be determined from the standpoint of meeting the gap-processing time requirement. In the figure, we find that more parallel SAW HARQ processes results in fewer allowable users in the system subject to the total gap-processing time requirement. For P ER = 0.15, the number of acceptable users decreases from 7 to 3 as M increases from 4 to 8. Recall n = M −1W −1 in (43). For a fixed n, a larger value of M also leads to a lager value of W and longer gap-processing time. Hence, the number of acceptable users is reduced for a larger value of M to satisfy the gap-processing time requirement.
Fig. 12. The number of acceptable users of the window-based stall avoidance scheme versus P ER with various number processes (M ) in the parallel SAW HARQ mechanism subject to a gap-processing time constraint of 100 TTIs. The minimum allowable retransmission (n) is three.
Fig. 13. Effect of the number of processes in the multi-channel SAW HARQ mechanism on the gap-processing time for the indicator-based
C. Average gap-processing time of the Indicator-Based Scheme
Figure 13 shows the analytical average gap-processing time for the indicator-based stall avoidance scheme obtained from (19) and simulations. As shown in the figure, the differences between the two are quite small. The reason for the difference is similar to that for the discrepancy of the timer-based scheme. Referring to Fig. 6, it indicates that the minimum gap-processing time for the indicator-based stall avoidance is M when processes P R2 ∼ P RM receive packet successfully. However, if the packet in
process P R2 carries a TSN smaller than T SN∗ of the gap in process P R1 at ` = 0, then the
indicator-based stall avoidance scheme can not be triggered to monitor the activities of the parallel processes at ` = 0 of process P R2 even if process P R2 receives a packet successfully at ` = 0. Then, it may take another
cycle for process P R2 to enter the stop state defined in Section IIV. Consequently, the gap-processing
time must be longer than M in this situation. Furthermore, there could be some kind of probability for the indicator-based scheme to finish the monitoring procedures at cycle ` > 1 of process P R1. Consider
that (1) the TSNs of processes P R2 ∼ P RM at cycle ` = 0 are all smaller than T SN∗; (2) process
P R1 receives a new packet which fails the CRC at cycle ` = 1; (3) processes P R2 ∼ P RM successfully
receive packets with TSNs larger than T SN∗ at cycle ` = 1. In this situation, the monitoring procedure of the indicator-based stall avoidance scheme will be finished whenever process P R1 receives a packet
successfully at cycle ` > 1. Especially note that the probability of the occurrence of the above joint conditions of (1)∼(3) is larger for a smaller M . This explains the larger discrepancy of the analytical results of M = 4. The above cases are excluded from the derivations of Proposition III because it is very difficult to include the information of the TSN into derivations. Thus, actually, Proposition III provides an elegant approximation of the average gap-processing time for the indicator-based scheme.
Comparing to Figs. 8, 10, and 13, the indicator-based scheme outperforms the timer-based and the window-based schemes in terms of the gap-processing time. For a 4-process SAW HARQ mechanism with
Eb/N0 = 14 dB, the gap-processing time of the indicator-based scheme is 4.9 TTIs; the gap-processing
time is 21.7 TTIs for the timer-based scheme with a timer expiration of 20 TTIs; the gap-processing time is 15.27 TTIs for the window-based scheme with a window of a size of 12. Also, it is found that the more the parallel HARQ processes, the longer the average gap-processing time.
The developed gap-processing time computation method for the indicator-based scheme can be applied to determine the acceptable users through bTo/GP Tindicatorc as the timer-based and the window-based
schemes, where To is a given constrain on the gap-processing time. Figure 14 shows the number of
acceptable users of the indicator-based stall avoidance scheme against P ER with various numbers of parallel HARQ processes (M ) under a constraint of the gap-processing time 100 TTIs. One can find that with the aid of the indicator-based stall avoidance scheme, an HSDPA system can accommodate more