 Research
 Open Access
 Published:
On energyefficient TCP traffic over wireless cooperative relaying networks
EURASIP Journal on Wireless Communications and Networking volume 2012, Article number: 78 (2012)
Abstract
Cooperative relay is a promising technology to provide better endtoend 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 primaldual index based heuristic algorithm. By this means, the relay selection is designed with "one step lookahead" 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
Multipath 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 endtoend 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 energyefficient transmission in relay system has been paid more attention on, since most nodes in cooperative relay network scenarios are mobile devices which are batterypowered, and the energyefficiency 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, crosslayer 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 wireless 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 crosslayer 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 crosslayer design for TCP over relay networks, the optimized design for optimal energyefficient 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 primaldual index heuristic algorithm with switching costs of relay reselection being considered. Finally, the energyefficient 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, $\mathcal{N}=\left\{1,\phantom{\rule{0.3em}{0ex}}\dots ,\phantom{\rule{0.3em}{0ex}}N\right\}$ 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.
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 endtoend and connectionoriented 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 L_{seg} 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 L_{seg}/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 N_{arq} 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 RTSCTS 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/{\stackrel{\u0304}{\gamma}}_{ij}.\phantom{\rule{0.3em}{0ex}}{\gamma}_{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 finitestate 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 $t\in \mathcal{J}=\left\{0,\dots ,T1\right\}$. 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. $\mathcal{A}\left(\mathsf{\text{t}}\right)=\left\{{a}_{1}\left(t\right),\phantom{\rule{0.3em}{0ex}}{a}_{2}\left(t\right),\phantom{\rule{0.3em}{0ex}}\dots ,\phantom{\rule{0.3em}{0ex}}{a}_{n}\left(t\right),\phantom{\rule{0.3em}{0ex}}\dots ,\phantom{\rule{0.3em}{0ex}}{a}_{N}\left(t\right)\right\}$ is used to describe the actions of all relay in time slot t, where a_{ n } (t) ={0, 1} and $n\in \mathcal{N}$. 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 energyefficiency 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 energyefficiency of TCP traffic
TCP provides endtoend 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 steadystate performance of TCP [19] should be considered as the base of energyefficiency of TCP traffic. We de ne the energy efficiency of TCP traffic using n th relay for cooperation in time slot t as follows:
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 roundtrip 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:
where W_{ m } is the maximum cwnd, RTT is the round trip time and P_{seq} 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. T_{0} is the initial timeout, i.e., when segment is lost the sender waits for T_{0} before retransmitting the nonacknowledged 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 P_{seg} is determined by the bit error rate (BER) caused by additive white Gaussian noise (AWGN) in the wireless environment. The closedform expressions of BER for the three nodes decodeandforward (DF) relaying system using binary phase shift keying (BPSK) modulation is presented as [21]:
The frame error rate is denoted as P_{ fr } and it is expressed as:
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
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 RequesttoSend (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 HelpreadyToSend (HTS) frame after a short interframe space (SIFS) to declare the conformation and preparation of the relay cooperation. The destination D will send ClearToSend (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.
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:
where T_{overhead} = 5T_{SIFS} +T_{DIFS} +T_{RTS} +T_{HTS} +T_{CTS} 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 $\left(1{P}_{fr}\right){\sum}_{i=1}^{{N}_{arg}}i{P}_{fr}^{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:
where ${P}_{{T}_{S}}$ and ${P}_{{T}_{Rn}}$ 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:
where ${R}_{S{R}_{n}}\left(t\right)$ denotes the transmit rate from source to relay and ${R}_{{R}_{n}D}\left(t\right)$ 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}}\left(t\right)$, ${R}_{{R}_{n}D}\left(t\right)$ to be constant for each time slot t in the article. In addition, we use binary phase shift keying (BPSK) modulation. T_{ fr }(t) = T_{overhead} + L_{ fr }(t)/R_{SR}(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 energyefficiency 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, W_{m}, timeout T_{0}, b in formula (2), bandwidth and modulation (determining the ${R}_{S{R}_{n}}\left(t\right)$ and ${R}_{{R}_{n}D}\left(t\right)$) are considered to be static in this article. Equation (8) can be expressed as:
3 Achieving energyefficient 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}^{*}\left(t\right)$ with its control parameters being ${L}_{fr}^{*}\left(t\right)$ and and ${N}_{arq}^{*}\left(t\right)$.
We may transform the original decision problem (10) into an optimal control problem based on the system view: source S decides $\left\{{R}_{n}^{*}\left(t\right),{L}_{fr}^{*}\left(t\right),{N}_{arq}^{*}\left(t\right)\right\}$ as an optimal control signal into system consisting of S, $\mathcal{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 nonideal 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 "onestep 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 "onestep 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 $\mathcal{J}={S}_{1}\times \dots \times {S}_{N}$. For project n, a reward ${r}_{n}^{1}\left(xn\left(t\right)\right)$ is earned if it is selected, otherwise the reward is ${r}_{n}^{0}\left(xn\left(t\right)\right)$. Moreover, the reward is timediscounted 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 $\mathcal{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
where ${\psi}_{uv}\left(t\right)=\mathsf{\text{Pr}}\left(\gamma \left(t+1\right)=v\gamma \left(t\right)=u\right)$ and v, u ∈ϒ
In each time slot t ∈ {0, 1, . . . T1},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:
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
where H_{n} = 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
where x_{ n }(t) is the n th relay state at time t, ${a}_{n}\left(t\right)\in \mathcal{A}=\left\{0,1\right\}$, 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: $\mathcal{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 $\mathcal{J}={S}_{1}\times \dots \times {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) = (x_{1},. . . , x_{ N } ;s), where vector × is the current states of N relay nodes, s denotes the current selected relay that $s\in \mathcal{N}$. To solve RBSC problem with linear programming, we denote the stateaction pairs as $\mathcal{K}=\left\{\left(\mathsf{\text{x}};s\right),a:\mathsf{\text{x}}\in \mathcal{J},s\in \mathcal{N},a\in \mathcal{N}\right\}$. The occupation measures ρ_{(x;s),a}are the expected discounted time of different stateaction pairs. The distribution of initial system state is described by ν, e.g., ν (x_{1}, . . . ,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:
In the above formula, the decision variables ${\rho}_{\left({x}_{1},\dots ,{x}_{N};s\right),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:
where ${Q}_{i}^{\alpha}\left({v}_{i}\right)$ is the polytope of the stateaction pair variable defined as:
For N projects, there are $\mathcal{O}\left({N}^{3}\times {max}_{i}\left(\left{S}_{i}\right\right)\right)$ variables and constraints. So the variables in (16) is in polynomial size of input data. In addition, the dual of the above LP is:
The author in [14] provided a primaldual index heuristic approach to solve the selection problem. For (16) and (18), the solution is denoted as $\left\{{\stackrel{\u0304}{\rho}}_{\left({x}_{i};s\right),a}^{\iota}\right\}$ and $\left\{{\stackrel{\u0304}{\lambda}}_{{x}_{i},s}^{i},{\stackrel{\u0304}{\mu}}_{s,a}^{i}\right\}$. The reduced costs $\left\{{\stackrel{\u0304}{\xi}}_{\left({x}_{i};s\right),a}^{i}\right\}$ are the difference between the left and right of the constraints in (18). The reduced costs are nonnegative and ${\stackrel{\u0304}{\xi}}_{\left({x}_{i};s\right),a}^{i}$ equals to 0 if the corresponding ${\stackrel{\u0304}{\rho}}_{\left({x}_{i};s\right),a}^{\iota}>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 ${\rho}_{\left({x}_{i};s\right),a}^{i}$. If the current state is (x_{1}, . . . , x_{ N }; s), the candidate index (CI) of action a is as:
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:
We can store the $\mathcal{O}\left({N}^{3}{max}_{i}\left(\left{S}_{i}\right\right)\right)$ optimal reduced costs and compute the indices described in (19) in time $\mathcal{O}\left({N}^{2}\right),$ 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 energyefficient 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 (h_{SD}), the CSI (SNR) from S to R_{ n } $\left({{h}_{SR}}_{n}\right)$, the CSI (SNR) from R_{ n } to D $\left({hRn}_{D}\right)$, the count of failure about this cooperative relay $\left(N{{F}_{R}}_{n}\right)$, 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 ${\gamma}_{S{R}_{n}}$ D receives HTS frame and estimates ${\gamma}_{{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 ${\gamma}_{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 ${\gamma}_{{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 reselection. S sends a IDLE frame which inform the currently selected relay R_{s}el 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}_{n1}^{*}$ to provide the cooperation while setting NAV in its frame. The target relay ${R}_{n1}^{*}$ 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}_{nj}^{*}$ 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}_{nj}^{*}$ with the length of link layer frame being ${L}_{fr}^{j}\left(t\right)$ and the maximum retransmission time being ${N}_{arq}^{j}\left(t\right)$. Obviously, if S does not decide to change relay in time slot t, the CoopMAC RTSCTS mode as well as two phases of data relay transmission follows as regular design shown in Figure 2.
Algorithm 1 Select the optimal relay â
Input:

S_{ n }, $n\in \mathcal{N}${State Space}

v(x_{1}, . . ., 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}
Output:

â {The Optimal Relay}
1: Obtain the current state of the system: (x;s).
2: Get the optimal solution of primal and dual problems:
3: Get the reduced cost:
4: Calculate the CI of the N relays and select the relay with smallest CI:
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 $\stackrel{\u0304}{\eta}$ and the expected extra retransmission time of control frames, where $\stackrel{\u0304}{\eta}=\frac{{\Sigma}_{n=1}^{N}{\Sigma}_{{x}_{n}\in {S}_{n}}\eta \left({x}_{n}\right)}{{\Sigma}_{n=1}^{N}\left{S}_{n}\right}$. The probability that the target relay node is idle can be denoted as P_{idl}, and the expected extra retransmission number is {1/P_{idl}  1}. Therefore, the switching cost is $\stackrel{\u0304}{\eta}\left(1/{P}_{\mathsf{\text{id}}1}1\right)$, 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 proposed 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}_{\mathsf{\text{greedy}}}=arg{max}_{a\in \mathcal{N}}\left\{{r}_{a}^{1}\left({x}_{a}\right){r}_{a}^{0}\left({x}_{a}\right){c}_{sa}\right\}$. The greedy policy is optimal in the case of multiarmed 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 L_{seg} is 1500 bytes, the timeout T_{0} is 3 s and the maximum window size is 64 K bytes. In the data link layer, the length of frame header L_{frh} 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, T_{SIFS} = 16 μs and T_{DIFS} = 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:
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 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 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 P_{idl} is set with different values (0.4, 0.5, 0.625), which determines $c/\stackrel{\u0304}{\eta}$, the result of the average switching cost divided by the average active reward. When the P_{idl} 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 P_{idl} gets smaller (e.g., 0.4), which means the reselection spends more interactions, the switching costs get larger ($c/\stackrel{\u0304}{\eta}$, 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 11 shows the cumulative discounted rewards of three policies (the proposed solution for RBSC problem, greedy policy and random selection policy) in three P_{idl} preconditions (0.4, 0.5, 0.625) which determine different ratios of the average switching cost to average active reward $c/\stackrel{\u0304}{\eta}$. The greedy policy considers only the instantaneous system reward and ignores the state transition probability of each relay node. The onestep 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.
5 Conclusion and future work
In this article, we analyze the energy efficiency of TCP traffic in wireless cooperative relaying networks from a crosslayer 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 primaldual 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 onestep lookahead heuristic algorithm could improve the system performance in time horizon according to the current system state and the transition probability.
References
 1.
Laneman JN, Tse DNC, Wornell GW: Cooperative diversity in wireless networks: efficient protocols and outage behavior. IEEE Trans Inf Theory 2004, 50: 30623080. 10.1109/TIT.2004.838089
 2.
Tannious R, Nosratinia A: Spectrallyefficient relay selection with limited feedback. IEEE J Sel Areas Commun 2008, 26: 14191428.
 3.
Shah V, Mehta N, Yim R: Relay selection and data transmission throughput tradeoff in cooperative systems. IEEE Global Telecommunications Conference 2009 2009, 16. GLOBECOM'09, Hawaii, USA
 4.
Lee I, Kim D: Outage probability of multihop MIMO relaying with transmit antenna selection and ideal relay gain over Rayleigh fading channels. IEEE Trans Commun 2009, 57(2):357360.
 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: 659672.
 6.
Madan R, Mehta N, Molisch A, Zhang J: Energyefficient cooperative relaying over fading channels with simple relay selection. IEEE J Sel Areas Commun 2008, 7: 30133025.
 7.
Tian Y, Xu K, Ansari N: TCP in wireless environments: Problems and solutions. IEEE Commun Mag 2005, 43: 2732.
 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:12121216.
 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. [http://www.ietf.org/rfc/rfc3819.txt]
 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.
 11.
Bui L, Eryilmaz A, Srikant R, Wu X: Joint asynchronous congestion control and distributed scheduling for multihop wireless networks. In Proceedings of 25th IEEE International Conference on Computer Communications, 2006. INFOCOM'06, Barcelona, Spain; 2006:112.
 12.
Wei Y, Yu FR, Song M: Distributed optimal relay selection in wireless cooperative networks with finitestate Markov channels. IEEE Trans Veh Tech 2010, 59: 21492158.
 13.
Wei Y, Yu FR, Song M, Zhang Y: Crosslayer design for TCP throughput optimization in cooperative relaying networks. In Proc IEEE ICC'10. Cape Town, South Afric; 2010:15.
 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:15871592.
 15.
Kramer G, Gastpar M, Gupta P: Cooperative strategies and capacity theorems for relay networks. IEEE Trans Inf Theory 2005, 51(9):30373063. 10.1109/TIT.2005.853304
 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):370383. 10.1109/TNET.2003.813033
 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: 340354.
 18.
Zhang Q, Kassam S: Finitestate markov model for rayleigh fading channels. IEEE Trans Comput 1999, 47: 16881692. 10.1109/26.803503
 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: 133145. 10.1109/90.842137
 20.
Paxson V, Allman M, Stevens W: TCP congestion control. RFC 2581 Internet Engineering Task Force; 1999. [http://www.ietf.org/rfc/rfc2581.txt]
 21.
Hu J, Beaulieu NC: Closedform expressions for the outage and error probabilities of decodeandforward relaying in dissimilar Rayleigh fading channels. In Proc IEEE ICC'07. Scotland, UK; 2007:55535557.
 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 TKN02010, Technical University Berlin, Telecommunication Networks Group. Germany; 2002.
7 Acknowledgments
This study was partially funded by the National Key Program of New Generation of Broadband Wireless Mobile Communication Network (No. 2011ZX0300500402 and No. 2009ZX0300200304), the National Basic Research Program of China (973 Program) (No. 2009CB320406) and the EU FP7 Project EVANS (Grant No.: 2010269323).
Author information
Additional information
6 Competing interests
The authors declare that they have no competing interests.
Authors’ original submitted files for images
Below are the links to the 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 (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Hu, Z., Li, G. On energyefficient TCP traffic over wireless cooperative relaying networks. J Wireless Com Network 2012, 78 (2012). https://doi.org/10.1186/16871499201278
Received:
Accepted:
Published:
Keywords
 Time Slot
 Source Node
 Channel State Information
 Relay Node
 Switching Cost