Skip to main content

On energy-efficient TCP traffic over wireless cooperative relaying networks


Cooperative relay is a promising technology to provide better end-to-end performance for wireless communication through spatial diversity. Most of previous study on relay networks concentrates on lower layer performance. However, how to design the relay network for standard transport control protocol (TCP), which is very important for application layer service, is rarely investigated. We focus on energy efficiency of TCP traffic which is determined by relay selection and transmission parameters in the lower layer, e.g., the length of frame, the modulation and the maximum retransmission time. The relay selection in the cooperative network is formulated as a restless bandits with switching cost (RBSC) system, in which the problem of optimal selection of cooperative relay is solved by using a linear programming relaxation and primal-dual index based heuristic algorithm. By this means, the relay selection is designed with "one step looka-head" policy so that the energy efficiency performance can be achieved in a time horizon. The simulations verify that the lower layer parameters affect the energy efficiency of TCP traffic in wireless cooperative networks environment, and demonstrate that the proposed relay selection scheme outperforms the memoryless schemes, e.g., greedy scheme that takes no consideration of the statistical characteristics of the channels.

1 Introduction

Multi-path fading is one major impediment in designing of wireless networks. A lot of frequency, time, and spatial diversity techniques can be used to alleviate the fading in wireless environment. Cooperative relaying technique has gained much attention due to its ability to mitigate the fading through spatial diversity, hence it could provide better end-to-end performance [1, 2]. In cooperative relaying networks, a number of relay nodes are assigned to use their antennas to help the source forward data to the destination via constructing a virtual antenna array. Typical cooperative relay communication consists of two phases: (1) the source broadcasts data to relay(s) and destination, (2) relay(s) transmit data received before to the destination using simply amplify forward (AF) or decode forward (DF) schemes. The destination combines the data received from independently channels, by which the spatial diversity gain can be obtained, the system capacity can be expanded, and the networks quality and system performance can be improved.

Because the cooperation gain acquired by destination is tightly related to the channel state information (CSI) between the source to relay, source to destination ad relay to destination, the relay selection is regarded as the key to achieve optimal performance, e.g., throughput, and outage probability, etc., [3, 4]. Moreover, the energy-efficient transmission in relay system has been paid more attention on, since most nodes in cooperative relay net-work scenarios are mobile devices which are battery-powered, and the energy-efficiency is crucial to the life time of the network and the user perceived quality. Bletsas et al. [5] devise a novel scheme that selects the best relay between source and destination based on instantaneous channel measurements to reduce the outage probability. However, the analysis of upper layer protocol's performance is not included. Madan [6] analyze the energy efficiency issue subject to the overall outage constraint in physical layer.

On the other hand, cross-layer design philosophy encourages us to explore the performance optimization for upper layers, such as transportation control protocol (TCP). TCP is dominant in most internet applications, e.g., the interactive session like Telnet and HTTP, and bulk data transfer such as FTP, and some of streaming applications. Initially, TCP is designed for wired networks where it has a lower bit error rate. However, in the wireless environment, TCP may suffer from severe performance degradation due to the unstable wire-less channel which has been depicted in [7, 8]. In addition, the performance of TCP directly affects the users' perceived quality of service (QoS). Since TCP is so important for upper layer service provisioning, the wireless networks, including cooperative relay network, should be designed or optimized for standard TCP, rather than modifying standard TCP to adapt to wireless networks [9]. Some efforts are carried out while focusing on TCP throughput optimization from cross-layer perspective, such as [10, 11]. Wei et al. [12] analyze the distributed relay selection problem considering the CSI, the residue energy of relay nodes and the statistical parameters of each channel. However, most of previous study concentrates on physical layer and link layer. Even [13] investigates cross-layer design for TCP over relay networks, the optimized design for optimal energy-efficient performance in TCP traffic in relay networks has not been well studied in above works.

In this article, we analyze the energy efficiency of TCP traffic over relay network. The channel fading states of differently selected relay and lower layer control parameters, e.g., the modulation, coding and frame size, are proved to be the determinants of the performance of the energy efficiency of the upper layer TCP. The wireless cooperative network with reley selection decision problem is formulated as a restless bandits with switching cost (RBSC) system [14]. Based on the instantaneous channel measurement and the experiential channel state transition probability anticipation, the relay selection problem is solved by using the primal-dual index heuristic algorithm with switching costs of relay reselection being considered. Finally, the energy-efficient performance for TCP traffic could be achieved in time horizon while using a "one step lookahead" policy.

The rest of this article is organized as follows. The description of system model and the energy efficiency issue of TCP traffic in wireless cooperative networks are analyzed in Section 2. In Section 3, the relaying network is formulated as a RBSC system and the relay selection problem is investigated. Simulations with their analysis are shown in Section 4. Finally, we conclude the article in Section 5.

2 System model and performance description

2.1 System model

First, we consider a wireless network scenario where the source node S, the destination D and a set of N relay nodes, N = { 1 , , N } coexist. The cooperative network is depicted in Figure 1. The source node S is expected to transmit bulk TCP data to destination via one relay R that is selected out from N relay nodes. The single relay Decode and Forward (DF) [15] is considered as relaying transmission strategy.

Figure 1
figure 1

The wireless cooperative network model.

Upon the relay network, the TCP transmission is carried out based on IP services to provide the application layer protocols, e.g., Telnet, HTTP, and FTP, with an end-to-end and connection-oriented packet transport mechanism that ensures the reliable and ordered delivery of data. In this article, considering the standard TCP protocol, we choose TCP Reno [16] as reference, which is widely used for TCP implementation. Moreover, we assume that the bulk data service is carried in the TCP transmission, e.g., a big le over FTP, and there are several TCP services are concurrently deployed upon the relay networks. Let Lseg represents the length of each TCP segment (in bits). The segment is input into link layer and encapsulated as N fr frames with length L fr . The frame is composed of the payload L frp and frame header L frh . Obviously, L frp equals to Lseg/N fr .

In the link layer, the automatic repeat request (ARQ) mechanism is used to guarantee certain level of reliability in current layer. An acknowledgment (ACK) frame is fed back if the destination received correctly. Otherwise, a NACK frame is fed back to the source node to indicate the frame is not received correctly. A frame is transmitted repeatedly for Narq times at the most if it is not received by the destination successfully. The whole TCP segment is correctly received if all the frames belonging to it are successfully transmitted.

For the MAC implementation for relay network, CoopMAC [17] is used as reference protocol for future expansion. According to CoopMAC, the source node S determines whether the cooperation is needed. If not, the source node transmits data directly using the traditional MAC mechanism, e.g., 802.11. If the cooperation is needed, the source node selects certain node out of relay or helper candidates, which will be discussed later in Section 3. If the relay R is selected, the CoopMAC RTS-CTS mode interaction is then used, which is followed by two phases relay transmission of data frame [17]. In this article, we consider that each relay is of different relay state which is characterized by the three models of Rayleigh fading channels, the source to the destination, the source to the nth relay and the nth relay to destination, and they are denoted as h SD , h SRn , and h RnD . The state of each channel is independent distributed. And for Rayleigh fading channel, the received SNR from node i to node j, which is denoted as γ ij = γ i |h ij |2, is exponentially distributed with parameter 1/ γ ̄ i j . γ i is the transmit SNR at node i. Each receiver side in the network can have exact CSI, including SNR. Moreover, we assume that all the rayleigh fading channels can be modeled as finite-state Markov channel (FSMC) according to the received SNR [18]. The initial state and the transition probability can be calculated by the network beforehand, and can be disseminated to all the nodes. To simply the analysis, the initial states and transition probabilities are assumed to be consistent for a period, e.g., the whole duration of data transmission.

The transmission of bulk TCP data is designed to be processed across T time slots that tJ= { 0 , , T - 1 } . We assume that the channels of all relays are block fading which means the states keep constant for a period of time and vary after the time. Based on different relay states, the source selects a specific relay and cooperates with it with elaborated setting of lower layer parameters in each time slot, by which the performance of TCP traffic can be optimized. For each time slot, we assume that only one relay node can be selected to provide cooperation for a source in the network. A ( t ) = { a 1 ( t ) , a 2 ( t ) , , a n ( t ) , , a N ( t ) } is used to describe the actions of all relay in time slot t, where a n (t) ={0, 1} and nN. a n (t) = 1 means in time slot t the n th relay is selected and set ACTIVE, otherwise it is not selected and set NOT ACTIVE.

The energy-efficiency performance of TCP transmission is defined as the successfully transmitted TCP data per energy unit during a time period, e.g., a relay frame time. The object of our article is to achieve the maximum energy efficiency of TCP traffic by finding the appropriate helpers to provide cooperative communication across the time slots and controlling the lower layer parameters in each slot. In the next subsection, we will discuss the model on energy efficiency of TCP traffic over relay network if the bulk date is transmitted.

2.2 The model of energy-efficiency of TCP traffic

TCP provides end-to-end reliable transmission based on IP service. In our scenario, IP layer mechanism is not considered since the routing problem in cooperative relay network in not involved. As mentioned above, TCP throughput which is the successfully transmitted TCP data per unit time, and the steady-state performance of TCP [19] should be considered as the base of energy-efficiency of TCP traffic. We de ne the energy efficiency of TCP traffic using n th relay for cooperation in time slot t as follows:

η ( n ) = B ( n ) L seg T f r E f .

where T fr is the duration of one frame in time slot t, B(n) is the throughput of TCP traffic (in segments) when the n th relay is selected in time slot t. The state of n th relay in time slot t is denoted as x n (t). E f is the energy consumed for one frame transmission in time slot t.

For the standard TCP protocol, the throughput of TCP adapts to the network condition by the congestion avoidance mechanism [20]. Upon receiving the ACKs, the window enlarges to increase its sending rate. If the ACK is not received within a timeout interval, the retransmission of packet will be processed. In Reno, transmission includes two main phases: slow start and congestion avoidance. At the slow start phase, the TCP sender's congestion window size (cwnd) grows exponentially. When cwnd reaches the slow start threshold (ssthresh), the TCP source enters the congestion avoidance phase and the cwnd increases linearly by round trip times (RTTs). If packet is received incorrectly or lost, the sender will receive duplicate ACK. When the number of the duplicated ACK reaches a threshold, fast retransmit process is entered at the TCP sender. The sender retransmits the lost packet, reduces the cwnd to half and linearly increases cwnd as in the congestion avoidance phase, therefore, the transmission rate is reduced. The Reno sender retransmits at most one dropped packet per round-trip time. In summary, the throughput of TCP is tightly related to the cwnd, the RTT and segment loss event probability. Based on Padhye's model [19], the throughput (segments per second) of TCP Reno is described as follows:

B ( W m , R T T , P seg ) min W m R T T , 1 R T T 2 b P seg 3 + T 0 min 1 , 3 3 b P seg 8 P seg ( 1 + 32 P seg 2 ,

where W m is the maximum cwnd, RTT is the round trip time and Pseq is the segment loss probability. b is the number of packets acknowledged by a received ACK segment. Most implementations send a cumulative ACK for two consecutive segments. T0 is the initial timeout, i.e., when segment is lost the sender waits for T0 before retransmitting the non-acknowledged segment.

Since TCP transmission, especially in wireless network, will suffer from frequent packets loss due to the unstable wireless channel, the TCP throughput is regarded to be related to lower layer mechanisms and parameters.

The segment loss probability Pseg is determined by the bit error rate (BER) caused by additive white Gaussian noise (AWGN) in the wireless environment. The closed-form expressions of BER for the three nodes decode-and-forward (DF) relaying system using binary phase shift keying (BPSK) modulation is presented as [21]:

P b = 1 4 1 - γ ̄ S R n 1 + γ ̄ S R n 1 - γ ̄ S D 1 + γ ̄ S D + 1 4 γ ̄ S D γ R n γ ̄ S D γ R n - γ ̄ R n D γ R s 1 + γ ̄ S R n 1 + γ ̄ S R n 1 - γ ̄ S D 1 + γ ̄ S D + 1 4 γ ̄ R n D γ S γ ̄ R n D γ S - γ ̄ S D γ R n 1 + γ ̄ R n D 1 + γ ̄ R n D 1 - γ ̄ S D 1 + γ ̄ S D

The frame error rate is denoted as P fr and it is expressed as:

P f r = 1 - ( 1 - P b ) L f r .

The result in (4) is applicable to other modulation and coding schemes, and the BER can be acquired according to [21]. Using ARQ, the frame error probability is P fr Narq+1. One TCP segment is transmitted successfully if all frames are transmitted correctly. Hence the segment loss probability is

P seg = 1 - ( 1 - P f r N a r q + 1 ) N f r .

In the link layer, the carrier sense multiple access with collision avoidance (CSMA/CA) mechanism is used as the medium access protocol for distributed coordination function (DCF). This means each terminal can initiate a data transmission and the channel sensing before data transmission is crucial to avoid the collisions. As mentioned above, CoopMAC is used as a reference of the link layer protocol. During each time slot, the procedure of frame transmission is shown in Figure 2. According to CoopMAC, when the source decides to send the data using relay mode and he relay node is selected, it first senses the channel to make sure it is clear. The source listens to the channel for DCF interframe space (DIFS) before data transmission. A random backo is executed to avoid collision. Then the source sends Request-to-Send (RTS) and sets Network allocation Vector (NAV) in RTS frame to let all nodes receiving the control frame know the time for which the channel is going to be free. After receiving RTS from S, the selected relay or helper node sends Help-ready-To-Send (HTS) frame after a short interframe space (SIFS) to declare the conformation and preparation of the relay cooperation. The destination D will send Clear-To-Send (CTS) to complete the control interaction among S, R and D after it correctly receives the RTS and HTS. Then, the cooperative relay data transmission will begin with two phases mentioned above.

Figure 2
figure 2

The frame transmission procedure of CoopMAC protocol.

At the link layer, the automatic repeat request (ARQ) mechanism is also employed to support certain level of reliability in lower layer transmission. An ACK frame is fed back if the destination received the data frame correctly. Otherwise, a NACK frame is fed back to the source node to indicate the frame is not received correctly. A frame can be transmitted repeatedly for at most N arq times if it is not received by the destination successfully. When the retransmission time exceeds N arq , the frame will be discarded.

Therefore, the RTT of TCP segment can be expressed as:

R T T = N f r ( N a r + 1 ) T overhead + L f r R S R n + L f r R R n D ,

where Toverhead = 5TSIFS +TDIFS +TRTS +THTS +TCTS is the overhead cost, which is the summation of interframe space, control frame and random backo time. R S R n and R R n D are the transmit rate from source to the n th relay and the n th relay to destination respectively. N ar is the average number of frame retransmission that equals to ( 1 - P f r ) i = 1 N a r g i P f r i .

The energy consumed by TCP segments is determined by the consumption of each frame.

The total energy consumed during the frame transmission can be expressed as:

E f = ( P T S + 2 P R ) L f r R S R n + ( P T R n + P R ) L f r R R n D ,

where P T S and P T R n stand for the transmit power of the source node and the nth relay node. P R is the power consumption for receiving.

Therefore, based on Equation (2), (3), (5), (6), and (7), the equation(1) can be expressed as:

η ( n ) = B { W m ( t ) , R T T [ L f r ( t ) , R S R n ( t ) , R R n D ( t ) , N a r q ( t ) ] , P seg [ x n ( t ) , L f r ( t ) , N a r q ( t ) ] } E f [ R S R n ( t ) , R R n D ( t ) , L f r ( t ) ] × L seg × T f r [ R S R n ( t ) , R R n D ( t ) , L f r ( t ) ]

where R S R n ( t ) denotes the transmit rate from source to relay and R R n D ( t ) the rate from relay to destination, which is determined by the modulation and the bandwidth of relay network. We also assume R S R n ( t ) , R R n D ( t ) to be constant for each time slot t in the article. In addition, we use binary phase shift keying (BPSK) modulation. T fr (t) = Toverhead + L fr (t)/RSR(t)+L fr (t)/R RD (t).

We could see that the channel fading states which represent relay selection result in lower layer relay network contributes to the segment loss probability and finally the energy efficiency of TCP traffic in the wireless cooperative relay networks. In addition, the modulation, the bandwidth, the N arq and the frame length L fr also have impacts to the TCP energy-efficiency performances. To be more specific on relay cooperative network, we pay more attention to the factors related to relay selection mechanism with its decision algorithm, therefore, Wm, timeout T0, b in formula (2), bandwidth and modulation (determining the R S R n ( t ) and R R n D ( t ) ) are considered to be static in this article. Equation (8) can be expressed as:

η ( n ( t ) ) = B { R T T [ L f r ( t ) , N a r q ( t ) ] , P seg [ x n ( t ) , L f r ( t ) , N a r q ( t ) ] } L seg T f r [ L f r ( t ) ] E f [ L f r ( t ) ] .

3 Achieving energy-efficient TCP traffic

3.1 Optimal decision problem

Under the prescribed model, the optimal relay decision problem of a source node to transmit energy efficient TCP traffic is straightforward: it periodically updates its best choices of relay nodes for cooperative communication and sets the appropriate control parameters for link layer frame transmission. Equivalently, in each time slot t, S calculates the optimal η(n) for each relay candidate R n with relay state x n (t) by finding the optimal control parameter setting of L fr (t) and N arq (t), and then finds the best relay R n * ( t ) with its control parameters being L f r * ( t ) and and N a r q * ( t ) .

{ R n * ( t ) , L f r * ( t ) , N a r q * ( t ) } = arg max R n ( t ) B ( W m , R T T [ L f r ( t ) , N a r q ( t ) ] , P seg [ x n ( t ) , L f r ( t ) , N a r q ( t ) ] ) L seg T f r [ L f r ( t ) ] E f [ L f r ( t ) ]

We may transform the original decision problem (10) into an optimal control problem based on the system view: source S decides R n * ( t ) , L f r * ( t ) , N a r q * ( t ) as an optimal control signal into system consisting of S, N and D, so that the control objective, i.e., energy efficiency for TCP relay transmission for S - D pair in the t th time slot, is maximized.

The decision in formula (10) is just made for one time slot. However, when the overall energy efficiency across the time horizon is considered, the greedy solution in which the decision is made just in one time slot scope may be unable to achieve the optimizing goal in a long run. The channel fading states of a relay n, x n (t), may have high probability to change to another x n (t+1) in the next time slot t+1, which may cause non-ideal performance in energy efficiency. By this way, the overall TCP traffic may have poor energy efficiency performance in a long run. Therefore, we prefer to making the decision with a "one-step lookahead" policy [14].

Based on the assumption that the rayleigh fading channels can be modeled using FSMC and the states of channels for a relay is independent distributed, the decision model for optimal control problem with "one-step lookahead" policy match the Restless Bandit system model in control theory [14]. In addition, we also consider the switching cost in relay selection procedure where the reselection and handover process may consume the energy while spending time for TCP data transmission. Therefore, we adopt Restless Bandit system with Switching Cost (RBSC) [14] based approach in this article.

3.2 Approach based on restless bandit system with switching cost

The RBSC approach is used to solve the stochastic control problems with the following characteristics: there are N projects and one is selected and set active at each time slot t = 0;1, . . . , T - 1. If the system switches from project i to j, it bring an additional costs denoted by c ij . Each project is in a finite state space x n (t)S n , n = 1, . . . , N. We denote the Cartesian product of the state spaces as J= S 1 ×× S N . For project n, a reward r n 1 ( x n ( t ) ) is earned if it is selected, otherwise the reward is r n 0 ( x n ( t ) ) . Moreover, the reward is time-discounted by factor α(0,1). The projects' states change in a Markovian fashion according to the transition probability matrix. Project is selected under a policy u, which is in the set of all available policies U. The purpose is to find the optimal u that maximize the expected discounted reward.

In following subsections, the relay network with relay selection decision will be formulated as RBSC system.

3.2.1 Relay state description and system reward

A FSMC is used to model the Rayleigh fading channel according to the received SNR [18]. The received SNR at j from i at time t is denoted as γ ij (t) and divided into K discrete levels with increasing order. Each level is associated with a state of the Markov chain. Let ϒ = {ϒ1, ϒ2, . . . , ϒ K } denotes the finite state space. The K × K transition probability matrix is

Ψ ( t ) = [ ψ u v ( t ) ] ,

where ψ u v ( t ) = Pr ( γ ( t + 1 ) = v | γ ( t ) = u ) and v, u ϒ

In each time slot t {0, 1, . . . T-1},the state of the n th relay is characterized by the three Rayleigh fading channels, including the source to the n th relay and the destination, and the n th relay to the destination. We assume the state of each channel is independent distributed.

Therefore, the state of the n th relay is described as the three channels' state at time t:

x n ( t ) = [ γ S D ( t ) , γ S R n ( t ) , γ R n D ( t ) ] .

The relay state changes in a Markovian fashion and the finite state space of the n th relay is denoted as S n , that x n (t)S n . The transition probability matrix is

P n ( t ) = [ ψ f n j n ( t ) , ψ h n y n ( t ) , ψ u n v n ( t ) ] H n × H n ,

where Hn = K × K × K and f n , j n , h n , y n , u n , v n ϒ. The matrixes can be obtained and updated according to the history observation, and in simulation, they keep constant.

The purpose of the proposed scheme is to maximize the energy efficiency described in equation (9) by selecting the optimal relay and adjusting the lower layer parameters according to the current relay state. The reward of the n th relay in each time slot t is

r n a n ( t ) ( x n ( t ) ) = a n ( t ) η ( x n ( t ) , L f r ( t ) , N a r q ( t ) ) .

where x n (t) is the n th relay state at time t, a n ( t ) A = { 0 , 1 } , L fr (t) is the frame size and N arq (t) is the maximum retransmission time.

3.2.2 Solving the RBSC

The RBSC problem is determined by several factors: N is the set of available projects, S n is the state space of the n th project, the Cartesian product of the state spaces is J= S 1 ×× S N , A n is the action space, P n is the transition probability, ν is the initial distribution, c ij is denoted as the switching cost from i th relay to j th relay, α(0,1) is the discounted factor and r is the reward.

The complete state of the network is (x;s) = (x1,. . . , x N ;s), where vector × is the current states of N relay nodes, s denotes the current selected relay that s N . To solve RBSC problem with linear programming, we denote the state-action pairs as K= { ( x ; s ) , a : x J , s N , a N } . The occupation measures ρ(x;s),aare the expected discounted time of different state-action pairs. The distribution of initial system state is described by ν, e.g., ν (x1, . . . ,x N ;s) = ν1(x 1 ) . . . ν N (x N ) δ1 (s) if the 1 project is selected and set active initially. Let c ij denote the switching cost from i to j. α(0,1) is the discounter factor. The RBSC problem can be cast into the MDP framework and the linear program can be written:

maximize s = 1 N x J a = 1 N ( r a 1 ( x a ) + j a r j 0 ( x j ) - c s a ) ρ ( x 1 , . . . , x N ; s ) , a subject to a = 1 N ρ ( x ; s ) , a - α s = 1 N x J ρ ( x' ; s ) , s p x 1 x 1 0 . . . p x s x s 1 . . . p x N x N 0 = ( 1 - α ) v ( x ; s ) , ( x , s ) J × N ρ ( x ; s ) , a 0 , ( ( x ; s ) , a ) J × N 2 ,

In the above formula, the decision variables ρ ( x 1 , , x N ; s ) , a , which is exponential in size of the input data. Therefore, this problem can not be solved efficiently in the real world. By relaxing the constraint in (15), we get the final LP relaxation for RBSC:

maximize s = 1 N a = 1 N x a S a ( r a 1 ( x a ) - c s a ) ρ ( x a ; s ) a + j a x j S j r j 0 ( x j ) ρ ( x j ; s ) , a j subject to ρ ( x i ; s ) , a i Q i α ( v i ) , i N x i S i ρ ( x i ; s ) , a i = x 1 S 1 ρ ( x 1 ; s ) , a 1 , i , s , a N .

where Q i α ( v i ) is the polytope of the state-action pair variable defined as:

Q i α ( v i ) = ρ ( x i ; s ) , a i + | s i | × N 2 : a = 1 N ρ ( x i ; i ) , a i - α x i S i s = 1 N ρ ( x i ; s ) , i i p x i x i 1 = ( 1 - α ) v i ( x i ) δ 1 ( i ) x i S i , a = 1 N ρ ( x i ; i ) , a i - α x i S i s = 1 N ρ ( x i ; s ) , i i p x i x i 0 = ( 1 - α ) v i ( x i ) δ 1 ( s ) x i S i , s i .

For N projects, there are O ( N 3 × max i ( | S i | ) ) variables and constraints. So the variables in (16) is in polynomial size of input data. In addition, the dual of the above LP is:

minimize ( 1 - α ) i = 1 N s = 1 N x i S i v i ( x i ) δ 1 ( s ) λ x i , s i subject to λ x 1 , s 1 - α x 1 S 1 p x 1 x 1 1 λ x 1 , 1 1 + i = 2 N μ s , 1 i r 1 1 ( x 1 ) - c s 1 , s N , x 1 S 1 λ x 1 , s 1 - α x 1 S 1 p x 1 x 1 0 λ x 1 , a 1 + i = 2 N μ s , a i r 1 0 ( x 1 ) , s N , x 1 S 1 , a 1 λ x j , s j - α x j S j p x j x j 1 λ x j , j j - μ s , j j r j 1 ( x j ) - c s j , j 2 , s N , x j S j λ x j , s j - α x j S j p x j x j 0 λ x j , j j - μ s , j j r j 0 ( x j ) , j 2 , s N , x j S j , α j .

The author in [14] provided a primal-dual index heuristic approach to solve the selection problem. For (16) and (18), the solution is denoted as { ρ ̄ ( x i ; s ) , a ι } and { λ ̄ x i , s i , μ ̄ s , a i } . The reduced costs { ξ ̄ ( x i ; s ) , a i } are the difference between the left and right of the constraints in (18). The reduced costs are nonnegative and ξ ̄ ( x i ; s ) , a i equals to 0 if the corresponding ρ ̄ ( x i ; s ) , a ι >0. It is also interpreted as the rate of decrease in the objective value of the primal linear program (16) per unit increase of variable ρ ( x i ; s ) , a i . If the current state is (x1, . . . , x N ; s), the candidate index (CI) of action a is as:

I ( ( x 1 , , x N ; s ) , a ) = i = 1 N ξ ̄ ( x i ; s ) , a i

which is the sum of all projectsŕeduced cost to action a. Therefore, the optimal action is to select the project with the minimal CI:

â = arg min a N I ( ( x 1 , , x N ; s ) , a ) .

We can store the O ( N 3 max i ( | S i | ) ) optimal reduced costs and compute the indices described in (19) in time O ( N 2 ) , which is polynomial in the size of input data.

3.3 Relay selection procedure

Based on the approach depicted above, the relay decision algorithm is summarized as Algorithm 1.

For each node, a CoopTable similar to [17] is maintained. Based on the CoopTable, the source node can decide which relay candidate to cooperate for energy-efficient TCP transmission. The revised CoopTable consists of seven fields: the address of destination node (S), the address of potential relay for source node S (R n ), the CSI (SNR) from S to D (hSD), the CSI (SNR) from S to R n ( h S R n ) , the CSI (SNR) from R n to D ( h R n D ) , the count of failure about this cooperative relay ( N F R n ) , and the update time. The initial distribution of state and the transition probability, which can be obtained from the network × node (long run node or base station) in advance, is also stored in each node.

The channel states information in CoopTable record can be updated through control frames and overheard transmissions: The channel between any two nodes is assumed to be symmetric, because they all use the same frequency band for transmission. When S receives HTS frame sent by R n , it gets the estimated γ S R n D receives HTS frame and estimates γ R n D and piggyback it in its CTS frames. When D sends CTS frames, it encapsulates SNR from S to D (γSD) which is estimated at D when receiving RTS. After receiving CTS, S extracts the channel state information γ SD and γ S R n . S and D can also overhear frame from other candidate relays to estimate the channel state information between S and R x , R x , and D, and D will also piggyback the γ R x D in its CTS frames. By this way, each S can maintain the CSI for all relays based on which the optimized result for relay selection to achieve energy efficiency of TCP traffic in every time slot can be calculated.

Moreover, when S decision produces a new relay R n other than currently selected relay R s el, it invokes the relay selection procedure expanded based on CoopMAC, as shown in Figure 3. A new message IDLE is introduced to facilitate the re-selection. S sends a IDLE frame which inform the currently selected relay Rsel to suspend its cooperation and set the state from ACTIVE to NOT ACTIVE after sending back an ACK. IDLE frame also contains NAV to preserve the channel for selection query interactions. S sends RTS to request R n 1 * to provide the cooperation while setting NAV in its frame. The target relay R n 1 * may be available and willing to provide the cooperation so that it sends back the HTS. On the other hand, the target relay may also be reserved by other blind source or unwilling to provide the cooperation. In this case, it keeps silent and replies nothing. If no HTS received at S after SIFS interval, which means the newly selected relay is unavailable at this time, S begins another round of relay decision using Algorithm 1 excluding the unavailable relay. It sends RTS to the newly selected R n j * and waits for HTS. The procedure iterates until one HTS is received. Finally, D sends CTS to complete the selection and control interactions. After that, the data transmission begins for t th time slot with the selected relay R n j * with the length of link layer frame being L f r j ( t ) and the maximum retransmission time being N a r q j ( t ) . Obviously, if S does not decide to change relay in time slot t, the CoopMAC RTS-CTS mode as well as two phases of data relay transmission follows as regular design shown in Figure 2.

Figure 3
figure 3

The relay selection procedure extended based on CoopMAC.

Algorithm 1 Select the optimal relay â


  • S n , nN{State Space}

  • v(x1, . . ., x N ;s) {Distribution of Initial State}

  • P n (t) {State Transition Probability of Each Relay}

  • c ij {Switching Cost From Relay i to j}


  • â {The Optimal Relay}

1: Obtain the current state of the system: (x;s).

2: Get the optimal solution of primal and dual problems:

{ ρ ^ ( x i ; s ) , a i } { λ ^ x i , s i , μ ^ s , a i } .

3: Get the reduced cost:

{ γ ^ ( x i ; s ) , a i } .

4: Calculate the CI of the N relays and select the relay with smallest CI:

â = arg min a N I ( ( x 1 , , x N ; s ) , a ) .

In the procedure mentioned above, the switching cost is incurred by the control message interactions for reselection, e.g., IDLE and ACK, RTS and its retransmission. To keep the measurement of switching cost consistent with the energy efficiency in Equation (1), we define the switching cost as the product of the average system reward η ̄ and the expected extra retransmission time of control frames, where η ̄ = Σ n = 1 N Σ x n S n η ( x n ) Σ n = 1 N | S n | . The probability that the target relay node is idle can be denoted as Pidl, and the expected extra retransmission number is {1/Pidl - 1}. Therefore, the switching cost is η ̄ ( 1 / P id 1 - 1 ) , i.e., if the target relay node is idle with probability 1 there is no switching cost.

4 Performance evaluation

In this section, we depict the in influence of the frame length and the maximum retransmission time N arq to the energy efficiency of TCP traffic. Also, we present the simulations to evaluate the performance of the proposed relay scheduling scheme. Then, we illustrate the effect of switching cost to the relay scheduling process. Finally, we compare the pro-posed scheme with a random selection method and a greedy method which maximize the instantaneous system reward without considering the transition probability of relays' state, i.e., a greedy =arg max a N { r a 1 ( x a ) - r a 0 ( x a ) - c s a } . The greedy policy is optimal in the case of multi-armed bandits (MAB) problem that the passive projects do not change their states, with no switching cost and deteriorating rewards.

We use the TCP Reno in which a large le is transmitted by le transfer protocol (FTP) to keep the data transmission buffer full. Consider there are 5 relays in the network, which could incur switching cost when choosing a different relay for the next time slot transmission, and the bandwidth of each channel is 1 MHz. The data rates R S R n and R R n D are set 1Mbps as BPSK modulation mode is used. The length of segment Lseg is 1500 bytes, the timeout T0 is 3 s and the maximum window size is 64 K bytes. In the data link layer, the length of frame header Lfrh is 20 bytes. The discount factor is set to be 0.95. The RTS is 20 bytes, HTS is 14 bytes, CTS is 14 bytes, TSIFS = 16 μs and TDIFS = 35 μs.

For simplicity, we assume the AWGN has unit variance and the transmit power of source and relays is the same. The power consumption for transmitting is set to be 1400 mW, and the power consumption for receiving is 900 mW [22]. Rayleigh fading channel models is used to describe the channels between nodes. The received SNR from source to relays and relays to destination is categorized into three states: 15 dB, 20 dB, and 25 dB. Similarly, the received SNR at destination from sources is divided into three states: 14 dB, 16 dB, and 18 dB. We set the transition probability of each channel as:

Ψ n ( t ) = 0 . 60 . 30 . 1 0 . 20 . 60 . 2 0 . 10 . 30 . 6 .

Figures 4, 5, and 6 illustrate the segment loss probability with different frame size and different N arq . First, when the frame size is short, i.e., N fr is large, the segment loss probability gets small. Because if the frame size is short, the frame loss probability will decrease. Second, with different maximum frame retransmission time N arq , the segment loss probability is not the same. As the N arq gets larger, the segments loss probability will be reduced since the frame loss probability is in inverse proportion to the N arq .

Figure 4
figure 4

The segment loss probability with different frame size under certain relay states ( N arq = 2).

Figure 5
figure 5

The segment loss probability with different frame size under certain relay states ( N arq = 3).

Figure 6
figure 6

The segment loss probability with different frame size under certain relay states ( N arq = 4).

Figure 6, 7, 8, and 9 illustrate the effect of frame size L fr and N arq to the energy efficiency of TCP traffic. For a specific relay state, by dividing the TCP segment into a proper number of frames the TCP traffic could reach the optimal energy efficiency. It can be seen when the frame size is short, the energy efficiency is degraded since the overhead cost is dominant which causes a waste of energy. As the frame gets longer, the energy efficiency reaches a peak and then decreases dramatically. Because as the frame gets longer the segment loss probability gets higher, which decreases the TCP throughput. In addition, as the N arq gets larger, the energy efficiency is increased under different relay state, because large N arq could reduce the segment loss probability. Moreover, the results get more irrelevant to the channel states as N arq gets larger. Therefore, to maximize the energy efficiency of TCP traffic in transport layer, a proper frame size should be associated to each relay state.

Figure 7
figure 7

The energy efficiency with different frame size under certain relay states ( N arq = 2).

Figure 8
figure 8

The energy efficiency with different frame size under certain relay states ( N arq = 3).

Figure 9
figure 9

The energy efficiency with different frame size under certain relay states ( N arq = 4).

Figure 10 gives an idea of the importance of switching costs in the decision process of the source node. The probability that the target relay node is idle Pidl is set with different values (0.4, 0.5, 0.625), which determines c/ η ̄ , the result of the average switching cost divided by the average active reward. When the Pidl is 0.625, the source node switches its relay frequently since the average switching cost c is small comparing to the reward of the target relay. As the Pidl gets smaller (e.g., 0.4), which means the re-selection spends more interactions, the switching costs get larger (c/ η ̄ , equals to 1.5), the switching events happens occasionally. Because the source node switch only if the reward of the target relay exceeds the current relays reward after compensating for the cost.

Figure 10
figure 10

The relay selection process with different P idl .

Figure 11 shows the cumulative discounted rewards of three policies (the proposed solution for RBSC problem, greedy policy and random selection policy) in three Pidl preconditions (0.4, 0.5, 0.625) which determine different ratios of the average switching cost to average active reward c/ η ̄ . The greedy policy considers only the instantaneous system reward and ignores the state transition probability of each relay node. The one-step lookahead policy of RBSC outperforms the other two policies since it not only take the current reward into account but also analyzes the state transition probability of each relay.

Figure 11
figure 11

The cumulative discounted reward with different P idl .

5 Conclusion and future work

In this article, we analyze the energy efficiency of TCP traffic in wireless cooperative relaying networks from a cross-layer perspective. The state of relay node is modeled as a Markov chain and we formulate the relay selection process as a RBSC system which comes from control theory and can be solved by linear programming relaxation. A primal-dual index heuristic algorithm is presented to solve the selection problem. Simulations show that the energy efficiency of TCP can be improved by adjusting the lower layer parameter, e.g., frame size and maximum retransmission time. The one-step lookahead heuristic algorithm could improve the system performance in time horizon according to the current system state and the transition probability.


  1. Laneman JN, Tse DNC, Wornell GW: Cooperative diversity in wireless networks: efficient protocols and outage behavior. IEEE Trans Inf Theory 2004, 50: 3062-3080. 10.1109/TIT.2004.838089

    Article  MathSciNet  Google Scholar 

  2. Tannious R, Nosratinia A: Spectrally-efficient relay selection with limited feedback. IEEE J Sel Areas Commun 2008, 26: 1419-1428.

    Article  Google Scholar 

  3. Shah V, Mehta N, Yim R: Relay selection and data transmission throughput tradeoff in cooperative systems. IEEE Global Telecommunications Conference 2009 2009, 1-6. GLOBE-COM'09, Hawaii, USA

    Chapter  Google Scholar 

  4. Lee I, Kim D: Outage probability of multi-hop MIMO relaying with transmit antenna selection and ideal relay gain over Rayleigh fading channels. IEEE Trans Commun 2009, 57(2):357-360.

    Article  Google Scholar 

  5. Bletsas A, Khisti A, Reed DP, Lippman A: A simple cooperative diversity method based on network path selection. IEEE J Sel Areas Commun 2006, 24: 659-672.

    Article  Google Scholar 

  6. Madan R, Mehta N, Molisch A, Zhang J: Energy-efficient cooperative relaying over fading channels with simple relay selection. IEEE J Sel Areas Commun 2008, 7: 3013-3025.

    Google Scholar 

  7. Tian Y, Xu K, Ansari N: TCP in wireless environments: Problems and solutions. IEEE Commun Mag 2005, 43: 27-32.

    Article  Google Scholar 

  8. Chockalingam A, Zorzi M, Tralli V: Wireless TCP performance with link layer FEC/ARQ, in 1999. In IEEE International Conference on Communications, 1999. Volume 2. ICC'99, British Columbia, Canada; 1999:1212-1216.

    Google Scholar 

  9. Karn P, Bormann C, Fairhurst G, Grossman D, Ludwig R, Mahdavi J, Montenegro G, Touch J, Wood L: Advice for Internet Subnetwork Designers. RFC 3819 Internet Engineering Task Force; 2004. []

    Google Scholar 

  10. Sharma G, Joo C, Shro N, Mazumdar R: Joint congestion control and distributed scheduling for throughput guarantees in wireless networks. ACM Trans Model Comput Simul (TOMACS) 2010, 21: 5.

    Article  Google Scholar 

  11. Bui L, Eryilmaz A, Srikant R, Wu X: Joint asynchronous congestion control and distributed scheduling for multi-hop wireless networks. In Proceedings of 25th IEEE International Conference on Computer Communications, 2006. INFOCOM'06, Barcelona, Spain; 2006:1-12.

    Chapter  Google Scholar 

  12. Wei Y, Yu FR, Song M: Distributed optimal relay selection in wireless cooperative net-works with finite-state Markov channels. IEEE Trans Veh Tech 2010, 59: 2149-2158.

    Article  Google Scholar 

  13. Wei Y, Yu FR, Song M, Zhang Y: Cross-layer design for TCP throughput optimization in cooperative relaying networks. In Proc IEEE ICC'10. Cape Town, South Afric; 2010:1-5.

    Google Scholar 

  14. Ny JL, Feron E: Restless bandits with switching costs: Linear programming relaxations, performance bounds and limited lookahead policies. In Proc Amer Control Conf. Minneapolis, USA; 2006:1587-1592.

    Google Scholar 

  15. Kramer G, Gastpar M, Gupta P: Cooperative strategies and capacity theorems for relay networks. IEEE Trans Inf Theory 2005, 51(9):3037-3063. 10.1109/TIT.2005.853304

    Article  MathSciNet  Google Scholar 

  16. Anjum F, Tassiulas L: Comparative study of various TCP versions over a wireless link with correlated losses. IEEE/ACM Trans Netw 2003, 11(3):370-383. 10.1109/TNET.2003.813033

    Article  Google Scholar 

  17. Liu P, Tao Z, Narayanan S, Korakis T, Panwar S: CoopMAC: a cooperative MAC for wireless LANs. IEEE J Sel Areas Commun 2007, 25: 340-354.

    Article  Google Scholar 

  18. Zhang Q, Kassam S: Finite-state markov model for rayleigh fading channels. IEEE Trans Comput 1999, 47: 1688-1692. 10.1109/26.803503

    Google Scholar 

  19. Padhye J, Firoiu V, Towsley DF, Kurose JF: Modeling TCP reno performance: a simple model and its empirical validation. IEEE/ACM Trans Netw 2000, 8: 133-145. 10.1109/90.842137

    Article  Google Scholar 

  20. Paxson V, Allman M, Stevens W: TCP congestion control. RFC 2581 Internet Engineering Task Force; 1999. []

    Google Scholar 

  21. Hu J, Beaulieu NC: Closed-form expressions for the outage and error probabilities of decode-and-forward relaying in dissimilar Rayleigh fading channels. In Proc IEEE ICC'07. Scotland, UK; 2007:5553-5557.

    Google Scholar 

  22. Ebert I, Aier S, Kofahl G, Becker A, Bums B, Wolisz A: Measurement and simulation of the energy consumption of a WLAN interface. In Tech Rep TKN-02-010, Technical University Berlin, Telecommunication Networks Group. Germany; 2002.

    Google Scholar 

Download references

7 Acknowledgments

This study was partially funded by the National Key Program of New Generation of Broadband Wireless Mobile Communication Network (No. 2011ZX03005-004-02 and No. 2009ZX03002-003-04), the National Basic Research Program of China (973 Program) (No. 2009CB320406) and the EU FP7 Project EVANS (Grant No.: 2010-269323).

Author information

Authors and Affiliations


Corresponding author

Correspondence to Zheng Hu.

Additional information

6 Competing interests

The authors declare that they have no competing interests.

Authors’ original submitted files for images

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and permissions

About this article

Cite this article

Hu, Z., Li, G. On energy-efficient TCP traffic over wireless cooperative relaying networks. J Wireless Com Network 2012, 78 (2012).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: