Maximizing Throughput of Packet Switched Wireless ... - CiteSeerX

7 downloads 0 Views 331KB Size Report
The throughput of a packet switched wireless communication system is the effective ... Rate adaptation is carried out to achieve the throughput capacity or the.
Maximizing Throughput of Packet Switched Wireless Communication Systems Chin Keong Ho, Frans Willems

Job Oostveen

Eindhoven University of Technology PO Box 513, 5600 MB Eindhoven The Netherlands Email: {c.k.ho,f.m.j.willems}@tue.nl

Philips Research Laboratories Prof. Holstlaan 4, 5656 AA Eindhoven The Netherlands Email: [email protected] Abstract

The throughput of a packet switched wireless communication system is the effective amount of data, usually in bits/symbols, that is transferred from the transmitter to the receiver. This serves as an important system measure of which fundamental limits are derived in this paper. We formalize the supremum of the average throughput as the throughput capacity. Depending on the restrictions imposed by the communication system, different throughput capacity is obtained. Furthermore, we consider a K-packet communication system where the channel is quasi-static over every K packets and causal partial feedback is provided. The average throughput is maximized using different coding schemes. Numerical results are obtained from the general formulations which reveal the effectiveness of the proposed schemes in Rayleigh fading channels.

I. I NTRODUCTION In some wireless communication systems, such as specified in IEEE 802.11 standards for wireless LANs, a packet switched approach is adopted whereby the transmitter sends information to a receiver in blocks of data called packets. The packets can be transmitted from the base station to different mobile receivers, and vice versa, in a centralized network, or in an ad hoc manner in a peer-to-peer network. We are interested in the effective data rate that is transferred from the transmitters to the receivers and that is known as the throughput [1], [2]. In automatic repeat request (ARQ) communication systems [3], [4], an acknowledgement (ACK) bit is sent to the transmitter indicating whether the packet is correctly received. This can be considered as a form of partial channel state information (CSI) to the encoder. In Type II hybrid ARQ systems, redundant bits are added consecutively for each packet and decoding is carried out at each stage with increasing reliability. A well known code that achieves incremental redundancy is the rate compatible punctured convolutional code (RCPC) [5]. Extensions to capacity achieving codes have been carried out by replacing the convolutional code with a turbo code [6] or with a low-density parity-check code [7]. The authors propose sending a packet at the highest code rate, then sending incremental redundancy until the packet is decoded correctly. Hence, rate adaptation is not carried out specifically to maximize throughput. Also, a huge delay may be incurred as new bits are not sent until the erroneous packets are recovered or until a specified time is exceeded. In this paper, we approach the problem of throughput maximization from an information theoretic perspective. Rate adaptation is carried out to achieve the throughput capacity or the supremum of the average throughput. We consider a piece-wise time invariant channel over K packets with ACK as partial CSI. The throughput capacity depends on the amount of CSI available (full, no or partial), the coding strategy (independent or causal) and K. To recover the erroneous packets, especially when K is small, using incremental redundancy is essential to maintain a high throughput capacity. We develop a code that uses optimized rates and also transmits new data bits to packets even in the process of recovering erroneous packets. In a Rayleigh fading channel, the code approaches within 1 bit/symbol of the ergodic capacity using K = 4 when the SNR is less than 30dB.

II. T HROUGHPUT C APACITY After giving the system model, we define the throughput and throughput capacity for packet by packet transmission. We then consider the throughput capacity with full and with no CSI, which act as the upper and lower bounds for the case with partial CSI. A. System Model We use the following system model in a block fading additive white Gaussian noise (AWGN) channel yk = h k xk + n k

(1)

where yk ∈ CN is the receive signal vector and xk ∈ CN the transmit signal vector for the packet index k. The packet size in number of symbols, N , is assumed to be sufficiently large so that the capacities and information outages defined throughout this paper are achievable. The channel hk ∈ C is time invariant for each packet but may change from packet to packet. The noise vector nk ∈ CN is AWGN with variance σn2 . We state some common definitions of the capacity. When there is no fading, i.e. h = 1, Cawgn is the maximum data rate that can be transferred reliably: Cawgn (¯ γ ) = log (1 + γ¯ )

(2)

in bits/symbol. We assume that the log function has base 2. The average SNR, denoted as 2 γ¯ = σσx2 , is the signal to noise power ratio. For a block fading AWGN channel, the ergodic n capacity and instantaneous capacity are commonly used for system measures. They are given, respectively, as Cerg (¯ γ ) = Eh [Cinst (¯ γ , h)] ,  Cinst (¯ γ , h) = log 1 + γ¯ |h|2 .

(3) (4)

As above, we make the following assumptions throughout this paper. Assumption 1: At the transmitter, the transmit power for each codeword is fixed and full CSI, no CSI or partial CSI is available. At the receiver, full CSI is available. The Gaussian input distribution achieves the AWGN and instantaneous (Shannon) capacities. However, in general, the input distribution that achieves the capacity has to be determined explicitly, sometimes even numerically. To ease further discussions, we make the following assumption. Assumption 2: The input distribution is assumed to be Gaussian 1 but the rate 0 ≤ R < ∞, in general a random variable, can be selected. Hence, we have infinitely many Gaussian codebooks, each corresponding to a rate R and used with probability p(R). B. Throughput If a packet is not received correctly, an outage is said to occur. Practically, this information is available at the receiver via a cyclic redundancy check (CRC) at the medium access control (MAC) layer. The packet is either discarded or re-transmitted later in non-delay sensitive applications. The present packet therefore fails to deliver the data bits and the instantaneous throughput is zero. Otherwise, if the packet is received correctly, the instantaneous throughput in bit/symbols equals the data rate. The throughput for a packet is therefore defined as T (¯ γ , R, h) = R × (1 − (¯ γ |R, h))

(5)

where (¯ γ |R, h) is the conditional outage probability that the outage event occurs at γ¯ for a given R and h. 1

Hence, the input distribution may not be optimal in terms of achieving Shannon capacity.

We consider the expectation of the throughput as a single measure that quantifies the performance of the packet based communication system Eh,R [T (¯ γ , R, h)] = Eh,R [R × (1 − (¯ γ |R, h))] .

(6)

We treat, in general, the rate R at the transmitter as a random variable with some fixed distribution. Hence, the expectation of the throughput is carried out over the channel as well as over the rate. This formulation does not exclude the case when R is deterministic rather than random, in which case its distribution becomes a Dirac delta function. C. Throughput Capacity with Full CSI Consider an optimal transmission strategy so that the throughput capacity C T (¯ γ ), defined as the supremum of the average throughput (6), is achieved. The maximization is carried out over the joint probability density function (PDF) p(R, h) = p(R|h)p(h) using any code. Since p(h) depends on the environment and cannot be altered by design, the maximization is carried out over p(R|h). Hence, CT (¯ γ ) = sup Eh,R [T (¯ γ , R, h)] .

(7)

p(R|h)

Proposition 1: Suppose that the packet size N → ∞, then CT (¯ γ ) = Cerg (¯ γ ) with full CSI. The throughput capacity is achieved by using a capacity achieving code of rate R i = Cinst (¯ γ , hi ) for the ith packet. Proof: If N → ∞, then inf (¯ γ |Ri , hi ) = I (Ri > Cinst (¯ γ , hi )), where I (·) is the indicator function. Hence Eh,R [T (¯ γ , R, h)] ≤ Eh,R [R|R = Cinst (¯ γ , hi )] = Cerg (¯ γ ). The upper bound is achieved if full CSI is available and letting p(R|h i ) = δ(R −Cinst (¯ γ , hi )), th i.e. using the rate Ri = Cinst (¯ γ , hi ) for the i packet. D. Throughput Capacity with No CSI To achieve the throughput capacity given in Proposition 1, full CSI is required. Obtaining the CSI can be carried out by feedback. It may be difficult to realize in practice since the feedback is causal and the channel may change too rapidly for the feedback to be reliable. Therefore, first we consider the extreme case when no CSI is available. In the case when h is not known at the transmitter, we let p(R|h) = p(R). Under this constraint, and denoting (¯ γ |R) = Eh [(¯ γ |R, h)], the throughput capacity (7) becomes CT (¯ γ ) = sup ER [Eh [T (¯ γ , R, h)]] = sup ER [R × (1 − (¯ γ |R))] p(R)

p(R)

= sup R × (1 − (¯ γ |R)).

(8)

R

The last line is justified by using Lemma 1 as given in the Appendix. In (8), only one optimized rate is used for each average SNR regardless of the channel realizations. This result reflects the fact that we are not able to adapt the rate to different channel realizations. At each rate R, when N → ∞, the probability of information outage, Pr(C inst (¯ γ , h) < R), lower bounds (¯ γ |R) [8] for any code. Hence, substituting this into (8), we get CT (¯ γ)

= sup Tave (¯ γ , R)

(9)

R

where

Tave (¯ γ , R)= R × Pr(Cinst (¯ γ , h) ≥ R).

The corresponding rate argument that achieves the throughput capacity is denoted as R o . The above result indicates that using the information outage to indicate a packet outage gives the largest possible throughput capacity with no CSI. In order to simplify our discussion for more complicated cases and provide at least an achievable result we make the following assumption: Assumption 3: A packet outage occurs if and only if an information outage occurs.

14 CAWGN Cerg

12

Ro CT

Capacity

10

Average throughput for rate 1, 2, ...10 (from left to right)

8 6 4 2 0

Fig. 1.

0

5

10

15

20 SNR

25

30

35

40

Various capacities for the AWGN and Rayleigh fading channels.

E. Numerical Results Consider the Rayleigh fading channel  where the PDF of the instantaneous SNR γ = 1 2 2 |h| /σn is given as pγ (γ) = γ¯ exp − γγ¯ . Therefore, it can be shown that Tave (¯ γ , R) =  R R × exp 1−2 . To find the maximum of Tave (¯ γ , R) with respect to R, we first note that γ ¯ Tave (¯ γ , R) ≥ 0, and Tave (¯ γ , R) → 0 when R → 0 and R → ∞. Thus, the maximum of Tave (¯ γ , R) is given by setting the first derivative to 0. By defining the Lambert W -function as the inverse of the function f (W ) = W exp(W ), the closed form solution can be  written  Ro o o explicitly as R = W (¯ γ )/ ln 2. The corresponding outage probability is  = 1−exp 1−2γ¯ . The throughput capacity CT is then given as Ro (1 − o ). The average throughputs when fixed rates R = 1, 2, · · · , 10 are used are shown in Fig. 1. Using Ro , however, allows the throughput capacity to be achieved that upper bounds the average throughput using arbitrary rates. When full CSI is available, C erg is achieved which is substantially larger. At high SNR, the gradient of the C erg curve is also significantly higher, indicating the significance of channel knowledge at the transmitter. III. K-PACKET S YSTEM WITH I NDEPENDENT C ODING So far we consider the case when rate adaptation is performed independently for every packet. This scenario is valid when the channel changes independently from packet to packet. This could be due to a fast changing environment or simply because the packets are transmitted to different receivers. Next, we consider the throughput of a communication system where the channel is ergodic but time invariant over every K-packet. This model is made practically possible if (a) the transmitter sends K packets to the same receiver before switching to another and (b) the channel is quasi-static at least over K packets. For this model to be practically useful, K should be fairly small, say 2 or 3. Obviously, when K = 1, it reduces to the packet based communication system discussed in Section II. The K-packet allows rate adaptation and coding/decoding to be carried out in a sequential manner with dependency on past packets. In this section, we restrict the coding schemes to those that encode the information bits independently in every packet. This has the benefit of allowing the packet to be decoded independently. Therefore, there is no need to buffer the packets at the receiver which is desirable from the implementation perspective.

A. Throughput Capacity with Full CSI and No CSI We treat every K packets as one basic unit: a K-packet. The throughput for the K-packet system is then T K (¯ γ , r, h) =

K 1 X T (¯ γ , Rk , h) K k=1

(10)

where r = [R1 R2 · · · RK ] is the rate vector and Rk is the rate of the k th packet. In general, for other lengths of the rate vector, we write rk = [R1 R2 · · · Rk ]. The superscript K is used to denote that a K-packet system model is used. The throughput capacity is the supremum of the average throughput over all rates   CTK (¯ γ ) = sup Eh,r T K (¯ γ , r, h) . (11) p(r|h)

Proposition 2: Suppose that full CSI is available, then the throughput capacity is independent of K for a K-packet, i.e. CTK (¯ γ ) = CT (¯ γ ),

K = 1, 2, · · · .

(12)

where CT (¯ γ ) is given by (7). Proof: Since the supremum of a sum is less or equal to the sum of the suprema, CTK (¯ γ)

K 1 X ≤ sup Eh,r [T (¯ γ , Rk , h)] = CT (¯ γ) K k=1 p(r|h)

(13)

which follows from the definition given by (7). Obviously, equality can be achieved by using the same supremum achieving rate as the single packet system with full CSI. Generally, the same result holds when there is no change of CSI throughout the K-packet, and specifically when no CSI is available. This is attributed to the fact that the proof is independent of the argument of the supremum as long as it is defined similarly for C TK (¯ γ) and CT (¯ γ ). Hence, it is not possible to increase the throughput capacity further by increasing K for either no CSI or full CSI. However, when incremental partial CSI is available, we are able to improve the throughput capacity as K increases. This is the subject of our study in the subsequent sections. B. Throughput Capacity with Partial CSI We consider feedback consisting of a 1 bit ACK whereby the transmitter is notified of whether the packet is received correctly. This provides a form of incremental CSI which is always available in a communication system with hybrid ARQ. For example, consider a 3-packet system. Packet 1, 2 and 3 are transmitted using the same channel. Packet 1 has no CSI, Packet 2 knows whether an outage occurs for Packet 1, and Packet 3 knows whether outages occur for Packet 1 and 2. Let the 1 bit ACK for the ith packet be denoted as Ai ∈ {0, 1}, i = 1, 2, · · · , K − 1, and the ACK vector containing all ACKs as ak = [A1 A2 · · · Ak ]. The element Ak−1 represents the incremental partial CSI made available to the k th packet before an appropriate rate Rk is selected. This leads to the following causal CSI and partial CSI assumptions: Assumption 4 (Causal CSI): Assume that rate adaptation is causal, i.e. R k depends only on past rates rk−1 and past partial CSI ak−1 . This leads to p(r|aK−1 ) =

K Y

k=1

p(Rk |rk−1 , ak−1 ).

(14)

Fig. 2.

Rates using for K = 3 with 1 bit ACK feedback.

Assumption 5 (Partial CSI): Assume that p(r|h, aK−1 ) = p(r|aK−1 ). This assumption also leads to a factoring of the joint PDF of r, h and aK−1 as p(r, h, aK−1 ) = p(r|aK−1 )p(aK−1 )p(h|aK−1 ). (15) For causal partial CSI, the throughput capacity is formulated by introducing the extra random variable aK−1 in the expectation of (11). Also, using (14) and (15), (11) becomes   CTK (¯ γ ) = sup Er,h,aK−1 T K (¯ γ , r, h) p(r|aK−1 )   =Q sup EaK−1 Er|aK−1 Eh|aK−1 T K (¯ γ , r, h) . (16) K k=1

p(Rk |rk−1 ,ak−1 )

Generally, the distribution that achieves the throughput capacity is not unique, but we are interested in at least one solution. The following proposition is used to identify a simple one. We denote optimal rates with a superscript o. o Proposition 3: There exists a deterministic rate vector ro (aK−1 ) = [R1o R2o (a1 ) · · · RK (aK−1 )] th o that achieves (16). The rate of the k packet, Rk (ak−1 ), depends only on ak−1 . Proof: Using the chain rule of conditional probability on p(a K−1 ) and expanding the sup operator where appropriate, the last line of (16) can be written as   sup ER1 EA1 sup ER2 |r1 ,a1 · · · EAK−1 |aK−2 sup ERK |rK−1 ,aK−1 Eh|aK−1 T K (¯ γ , r, h) .

p(R1 )

|

{z

sup R1

p(R2 |r1 ,a1 )

}

|

{z

sup

R2 (r1 ,a1 )

p(RK |rK−1 ,aK−1 )

}

|

sup

{z

RK (rK−1 ,aK−1 )

}

By using Lemma 1, we can replace each expression above the under-braces by the corresponding expression below them. With this simplification, the optimal rate for packet k is Rko (rok−1 , ak−1 ) and is deterministic. Hence, the optimal rate vector is also deterministic. Furthermore, due to the dependency on rok−1 , Rko is also a function of ai ∀i = 1, 2, · · · , k − 1 of which is completely specified by ak−1 . We can therefore drop the dependency on rok−1 when we refer to optimal rates. Graphically, the rates of r(aK−1 ) can be represented as a tree which emphasizes the effect of the causality constraint. This is illustrated in Fig. 2 for K = 3. The rate for Packet 1 is not dependent of any ACKs and one optimized rate R1o exists, while the rates for packet k depend on ak−1 and 2k−1 optimized rates Rko (ak−1 ) exist. Knowing that the optimal solution is deterministic allows us to perform a joint optimization maximization over just one modified P rate vector rather than over a joint distribution. Since k K Ak contains 2 elements, there exists K−1 k=0 2 = 2 − 1 distinct optimal rates that account for all possible aK−1 . Define the vector rall as the vector that collects all the 2K − 1 distinct

14

C

TP

C2

TP

C4

12

3

CTP

TP

Ergodic capacity

Capacity

10

8

6

4

2

0

Fig. 3.

0

5

10

15

20 SNR

25

30

35

40

Throughput capacity with 1 bit ACK feedback using independent coding.

rates in r(aK−1 ) over all possible aK−1 . The throughput capacity finally simplifies as K (¯ γ , rall ) CTK (¯ γ )= sup Tave

(17)

rall

where

K Tave (¯ γ , rall )=

K 1 X γ , Rk (ak−1 ), h)] . Ea Eh|ak−1 [T (¯ K k=1 k−1

(18)

C. Example and Numerical Results For illustration, we consider the example when K = 2. Let A i = 0 denote an outage for the ith packet and Ai = 1 otherwise. By Assumption 3, A1 = 0 ⇔ R1 ≤ Cinst (¯ γ , h), hence the average throughput before maximization in (17) simplifies as K Tave (¯ γ , rall ) = 1/2[ R1 × Pr(R1 ≤ Cinst (¯ γ , h)) +R2 (1) × Pr(R1 ≤ Cinst (¯ γ , h), R2 (1) ≤ Cinst (¯ γ , h)) +R2 (0) × Pr(R1 > Cinst (¯ γ , h), R2 (0) ≤ Cinst (¯ γ , h))].

(19)

The average throughput when A1 = 1 (i.e. R1 ≤ Cinst (¯ γ , h)) is given by the first 2 lines and when a1 = 0 is given by the last line. For a Rayleigh fading channel, the average throughput (19) is maximized according to (17) via numerical maximization. The results are plotted in Fig. 3 for K = 2, 3, 4. The plot for Cerg and CT when no CSI is available is also given for comparison. We see that the improvement in throughput is largest from a single packet system to a 2-packet system. However, the rate of improvement is slow with respect to K and this motivates us to consider more advanced coding methods. IV. C AUSAL C ODING WITHIN K- PACKETS By coding across packets but within a K-packet, the throughput capacity can be further improved as compared to independent coding. We restrict ourselves to consider the following coding strategy that operates in a casual manner. If the previous packet is decoded correctly, each packet is coded using some rate to be determined. Otherwise, one or more packets are erroneous. Redundant bits are sent to improve the reliability of the erroneous bits, possibly together with new bits. For this purpose, we require a capacity achieving mother code consisting of M > 1 components where the first m = 1, 2, · · · , M − 1 components also constitute a capacity achieving code. The existence of such a code is proven in [2].

A. Throughput Capacity Denote Bk (ak−1 ) as the number of bits/symbol recovered when Packet k is not in outage given the ACK vector ak−1 . For the case when independent coding is used, Bk (ak−1 ) = Rk (ak−1 ). To accommodate for the general case, the throughput is formulated as Tgeneral (¯ γ , Bk (ak−1 ), Rk (ak−1 ), h) = Bk (ak−1 ) (1 − (¯ γ |Rk (ak−1 ), h)) .

(20)

Notice that this definition becomes (5) when independent coding is used. The throughput capacity is similar to (17) by replacing T with Tgeneral . The average throughput to be maximized is therefore K Tave (¯ γ , rall )

K 1 X = Ea Eh|ak−1 [Tgeneral (¯ γ , Bk (ak−1 ), Rk (ak−1 ), h)] . K k=1 k−1

(21)

B. K = 2 We give examples using K = 2 for three coding methods which are of interest due to their implementation possibility. The last coding method gives the largest possible throughput capacity and is elaborated in Sect. V for the general case. The same 1 bit ACK feedback is used. 1) Repetition Code, K=2: Consider a conventional re-transmission scheme. When Packet 1 is erroneous, the transmitter re-sends exactly the same packet in Packet 2. At the receiver, instead of discarding Packet 1, the packet can be buffered. When the re-transmitted packet arrives, the optimal decoding method for a time invariant channel is to average the two packets which improves the SNR by 3 dB. In this case, B1 = R1 , B2 (1) = R2 (1) and B2 (0) = R1 . From (20), the average throughput using such a repetition code is then K Tave (¯ γ , rall ) = 1/2 × [ R1 × Pr (R1 ≤ Cinst (¯ γ , h)) +R2 (1) × Pr (R1 ≤ Cinst (¯ γ , h), R2 (1) ≤ Cinst (¯ γ , h)) +R1 × Pr (R1 > Cinst (¯ γ , h), R1 ≤ Cinst (2¯ γ , h))].

(22)

The first line gives the throughput of Packet 1, the second line gives the throughput of Packet 2 when A1 = 1, the third line gives the throughput of Packet 2 when A 1 = 0. Although simple to implement, the capacity can be improved by using a better coding method. 2) Suboptimal Code, K=2: Alternatively, if Packet 1 is in outage, Packet 2 is used entirely to send redundant bits. This allows an effective rate of R1 /2 to be achieved for Packet 2 with B2 (0) = R1 . From (20), the average throughput using such a suboptimal code becomes K Tave (¯ γ , rall ) = 1/2 [R1 × Pr (R1 ≤ Cinst (¯ γ , h)) +R2 (1) × Pr (R1 ≤ Cinst (¯ γ , h), R2 (1) ≤ Cinst (¯ γ , h)) +R1 × Pr (R1 > Cinst (¯ γ , h), R1 /2 ≤ Cinst (¯ γ , h))].

(23)

To implement such a scheme, we require a capacity achieving code of rate R 1 with the property that it can be extended to a capacity achieving code with rate R 1 /2. A more general coding scheme is possible by relaxing the requirement that Packet 2 contains only redundant bits.

Capacity for 2 packets with different causal coding 14

CT with no CSI 2 CT using repetition code 2 CT using suboptimal code 2 CT using optimal code CT with full CSI

12

10

Capacity

8

6

4

2

0

0

5

10

15

20

25

30

35

40

SNR

Fig. 4.

Throughput capacity with 1 bit ACK feedback of a 2-packet using causal codes.

3) Optimal Code, K=2: Suppose that in Packet 1, B1 bits/symbol of information bits are transmitted; hence R1 = B1 . If Packet 1 is not in outage, then we use rate R2 (1) for Packet 2. Otherwise, Packet 2 is split into 2 parts. The first part consisting of normalized packet B1 for the erroneous bits. length α ≤ 1 is used to send redundant bits at an effective rate of 1+α The second part of length 1 − α is used to transmit B2 ≥ 0 new bits of data, hence the rate B2 B2 . For consistency, we define 1−α = 0 for B2 = 0, α = 1. We then impose the equal is 1−α rate constraint that equates the effective rates of the erroneous and new bits to be the same B1 B2 as some rate R2 (0), i.e. R2 (0) = 1+α = 1−α . For a given R2 (0), this constraint fixes the variables B2 and α. Also, using Assumption 3, an important implication of the equal rate constraint then follows: a 1 bit ACK for A2 is sufficient to indicate whether the erroneous bits and the new bits are simultaneously recovered. 2 With the equal rate constraint, it can be easily shown that R2 (0) = B1 +B . If Packet 2 is 2 received correctly after Packet 1 is in outage, we recover B2 (0) = B1 + B2 . Thus, R2 (0) can be interpreted as the effective rate for the first two packets taken as a whole 2 . Notice that this coding method reduces to the suboptimal code if α = 1 and B 2 = 0. From (20), the average throughput for the optimal code is then K Tave (¯ γ , rall ) = 1/2 × [ R1 × Pr(R1 ≤ Cinst (¯ γ , h)) +R2 (1) × Pr(R1 ≤ Cinst (¯ γ , h), R2 (1) ≤ Cinst (¯ γ , h)) +2R2 (0) × Pr(R1 > Cinst (¯ γ , h), R2 (0) ≤ Cinst (¯ γ , h))].

(24)

This only differs from (23) in the last line when an outage occurs for Packet 1: an extra degree of freedom is available in choosing R2 (0). To implement such a code, we require a capacity achieving code of rate R1 with the property that it can be extended to a capacity achieving code with rate R2 (0). 4) Numerical Results: The average throughput (22), (23), (24) is maximized jointly for all rates for comparison. The maximization is performed numerically for K = 2 for a Rayleigh fading channel and the throughputs are illustrated in Fig. 4. When compared to C T with no CSI, using a repetition code results in a SNR improvement of the throughput by about 1 dB. We note that the SNR improvement is parallel to CT at high SNR. Using a suboptimal code improves the throughput in terms of the slope, while using the optimal code results in the best performance. 2

The reader may note that 0 ≤ α ≤ 1 leads to a rate restriction of R1 /2 ≤ R2 (0) ≤ R1 . However, in Sect. V it will be shown that this will not affect the optimality of the throughput capacity.

Fig. 5.

Packet structure of optimal codes for a K-packet system.

V. C AUSAL C ODING USING O PTIMAL C ODE The optimal code is elaborated in this section for any K. The code differs from the independent code only when a burst of packet errors occurs. Hence, for the purpose of description, we suppose that the first K − 1 consecutive packets are erroneous in a Kpacket, i.e. aK−1 = 0K−1 (a row vector containing K − 1 zeros). We will return to the general case in Sect. V-B when the throughput capacity is discussed. A. Optimal Code when aK−1 = 0K−1 Fig. 5 illustrates how the optimal code is implemented for the K th packet. First split the K th packet into K parts. The first K − 1 parts are then used to send redundant bits using a normalized packet length of αK (i), i = 1, · · · , K − 1, each part corresponding to one erroneous packet. The K th part is used to send BK new bits. To fix all the parameters, we choose to fix the effective rate of the packets by the equal rate constraint. Interestingly, this choice has the property that it does not affect the optimality of the throughput capacity. To lighten the notation, we write Rk (0k−1 ) simply as Rk in this section since we are only concerned of the case when past packets are erroneous. 1) Definitions: We make the following definitions for the optimal code: • Dk refers to data bits first sent in Packet k, • Pk refers to all the redundancy bits of Dk for Packet k + 1 and onwards, • Bk ≥ 0 is the number of new data bits transmitted in Packet k, • 0 ≤ αk (i) ≤ 1 is the normalized packet length used in Packet k for transmitting the redundancy bits of Di , K • Tk ≥ 0 is the total time used in a K-packet for transmitting D k and Pk .   P P Note that TkK = 1 − k−1 α (i) + K k j=k+1 αj (k), which follows directly by observing i=1 Fig. 5. 2) Packet Structure: The packet structure for Packet k is specified by the set of parameters Sk = {Bk , αk (i), i = 1, 2, · · · , k − 1}. Given the packet structure of the first K − 1 packets, we give an algorithm to determine the packet structure for Packet K, i.e. SK . For a given RK (satisfying an inequality to be discussed later), we impose the generalized equal rate constraint that for TkK > 0 RK =

Bk , TkK

k = 1, 2, · · · , K.

(25)

This allows SK to be determined as follows: • for k = 1, 2, · · · , K − 1, calculate αK (k) so that the effective rate of Dk and Pk is RK , • calculate BK so that the same effective rate of DK is also RK .

3) Properties: The rate RK represents the average rate of the K-packet taken as a whole since RK = (B1 + B2 + · · · + BK )/K. (26) PK PK PK K K Proof: Using (25), we have k=1 Bk = RK k=1 Tk . Since k=1 Tk represents the total time of a K-packet and equals K, the result follows. The use of the equal rate constraint leads to the following rate restriction K −1 RK−1 ≤ RK ≤ RK−1 . (27) K Proof: Since Packet K − 1 also uses the optimal code, the equal rate constraint applies. Therefore (25) and (26) is true by replacing K by K − 1 as well. Hence, using (25), we have T K−1 RK = Tk K ≤ 1 since the time used for Dk and Pk never decreases as the packet index RK−1 k

increases. Also, using (26), we have RK = (K−1)RKK−1 +BK ≥ K−1 RK−1 since BK ≥ 0. K 4) Throughput: Using the equal rate constraint, and by Assumption 3, either all or none of the packets will be received correctly. Hence, a single bit ACK is sufficient for rate adaptation. Given that the past K − 1 packets are erroneous imply that Packet K − 1 is erroneous and hence RK−1 > Cinst (h). Denote BK as the number of bits/symbol received in the K th packet when there is no outage for Packet K, i.e. RK < Cinst (h). Therefore, using (20) the average throughput for Packet K is B Pr (RK < Cinst (h), RK−1 > Cinst (h)) K BK Pr (RK < Cinst (h) < RK−1 ) , RK ≤ RK−1 = (28) 0, RK > RK−1 This leads to the important property that the equal rate restriction is not a bad choice. o o Proposition 4: Let RK−1 , RK be the rates for Packets K −1, K that achieve the throughput capacity, when the first K − 1 packets are erroneous. For a K-packet, the rate restriction of (27) does not lead to a loss in optimality of the throughput capacity, i.e. imposing K −1 o o o RK−1 ≤ RK ≤ RK−1 (29) K will not lead to a smaller throughput capacity. Proof: The lower inequality K−1 RK−1 ≤ RK given in (27) is derived as a consequence K o o of BK ≥ 0. Hence it applies to the optimum rates RK−1 , RK as well; hence the lower inequality of (29) is valid. The upper inequality in (27) is a consequence of the equal rate restriction and we need to show that this restriction does not affect the throughput capacity. From (28), choosing RK ≤ RK−1 never results in a smaller average throughput because the average throughput is always non-negative. Since the throughput capacity seeks to maximize o o the throughput, having RK ≤ RK−1 does not reduce the throughput capacity. B. Throughput Capacity When there is no outage, the bits recovered in Packet k, Bk (ak−1 ), depends on whether the previous packets are erroneous. Consider the case when the last m elements of a k−1 are zeros and not more. Therefore, ak−1 = [b 0m ], 0 ≤ m ≤ k − 1, where b is either an arbitrary row vector of length ending with 1 or an empty vector. Using the optimal code over the last m packets, and if no outage occurs for the k th packet, we recover the data bits Bk−m +Bk−m+1 +· · ·+Bk . By extending the result of (26), this is equivalent to (m+1)R k|ak−1 . Otherwise, all previous packets must be received correctly. The rate for Packet k can then be selected independently as Rk (ak−1 ). Summarizing, we have  (m + 1)Rk (ak−1 ), when ak−1 = [b 0m ], 0 ≤ m ≤ k − 1, (30) Bk (ak−1 ) = Rk (ak−1 ), otherwise. The throughput capacity can then be obtained by maximizing (21) by using Assumption 3.

14

C

T

C2

T 3

12

CT C4T

Capacity

10

Ergodic capacity

8

6

4

2

0

Fig. 6.

0

5

10

15

20 SNR

25

30

35

40

Throughput capacity with 1 bit ACK feedback of a K-packet using optimal code for K = 2, 3, 4.

C. Numerical Results The throughput capacity of the optimal code using for K = 2, 3, 4 is illustrated in Fig. 6. We see that as K increases, better throughput capacity can be achieved. The throughput of CT4 is not smooth due to local maximas found in the numerical maximization procedures. Nevertheless, the throughput is only less than 1 bit of throughput capacity with full CSI (i.e. the ergodic capacity) when the SNR is less than 30dB. VI. C ONCLUSION We propose several rate adaptation schemes to maximize the throughput. We consider a piece-wise time invariant system that is constant over K packets. By allowing joint decoding of re-transmitted packets and the original erroneous packets, the throughput can be improved significantly. A PPENDIX Lemma 1: Suppose that f (x) is a function of a random variable x with domain D X , and p(x|y) a conditional PDF with support SX|Y =y ⊆ DX for all y. The variables x, y can be of any finite dimension. Then sup EX|Y =y [f (x)] = p(x|y)

sup x∈SX|Y =y

f (x) , fo .

(31)

The supremum achieving distribution argument on the LHS is p(x|y) = δ(x − x o (y)), where xo (y) is the supremum achieving argument on the RHS. Proof: For any f (x), Z Z EX|Y =y [f (x)] = f (x)p(x|y)dx ≤ fo p(x|y)dx = fo . x∈SX|Y =y

x∈SX|Y =y

Equality is achieved if p(x|y) = δ(x − xo ), hence completing the proof. ACKNOWLEDGMENT The authors would like to thank Stan Baggen and Ronald Rietman for valuable discussions.

R EFERENCES [1] L. Lin, R. D. Yates, and P. Spasojevic, “Adaptive transmission with discrete code rates and power levels,” IEEE Trans. Commun., vol. 51, no. 12, pp. 2115–2125, Dec. 2003. [2] C. F. Leanderson and G. Caire, “The performance of incremental redundancy schemes based on convolutional codes in the block-fading gaussian collision channel,” IEEE Trans. Wireless Commun., vol. 3, no. 3, pp. 843–854, May 2004. [3] J. M. Wozencraft and M. Horstein, “Coding for two-way channels,” Res. Lab. Electron., MIT, Cambridge, MA, Tech. Rep. 383, Jan. 1961. [4] P. Sindhu, “Retransmission error control with memory,” IEEE Trans. Commun., vol. 25, no. 5, pp. 473–479, May 1977. [5] J. Hagenauer, “Rate-compatible punctured convolutional codes (RCPC codes) and their applications,” IEEE Trans. Commun., vol. 36, no. 4, pp. 389–400, Apr. 1998. [6] D. N. Rowitch and L. B. Milstein, “On the performance of hybrid FEC/ARQ systems using rate compatible punctured turbo (RCPT) codes,” IEEE Trans. Commun., vol. 48, no. 6, pp. 948–959, June 2000. [7] S. Sesia, G. Caire, and G. Vivier, “Incremental redundancy hybrid arq schemes based on low-density parity-check codes,” IEEE Trans. Commun., vol. 52, no. 8, pp. 1311–1321, Aug. 2004. [8] L. Ozarow, S. Shamai, and A. Wyner, “Information theoretic considerations for cellular mobile radio,” IEEE Trans. Veh. Technol., vol. 43, no. 2, pp. 359–378, May 1994.