# Metric-Based Cooperative Routing in Multihop Ad Hoc Networks

Authors: Xin He; Frank Y. Li
Journal: Journal of Computer Networks and Communications
 (2012)

---

## Abstract

Cooperative communication fully leverages the broadcast nature of wireless channels and exploits time/spatial diversity in a distributed manner, thereby achieving significant improvements in system capacity and transmission reliability. Cooperative diversity has been well studied from the physical layer perspective. Thereafter, cooperative MAC design has also drawn much attention recently. However, very little work has addressed cooperation at the routing layer. In this paper, we propose a simple yet efficient scheme for cooperative routing by using cooperative metrics including packet delivery ratio, throughput, and energy consumption efficiency.  To make a routing decision based on our scheme, a node needs to first determine whether cooperation on each link is necessary or not, and if necessary, select the optimal cooperative scheme as well as the optimal relay. To do so, we calculate and compare cooperative routing metric values for each potential relay for each different cooperative MAC scheme (C-ARQ and CoopMAC in this study), and further choose the best value and compare it with the noncooperative link metric. Using the final optimal metric value instead of the traditional metric value at the routing layer, new optimal paths are set up in multihop ad hoc networks, by taking into account the cooperative benefits from the MAC layer. The network performance of the cooperative routing solution is demonstrated using a simple network topology.


---

## Body

## 1. Introduction

Multihop wireless networks in forms of ad hoc networks, mesh networks and sensor networks have become active research topics in recent years in both academia and industry. Different types of nodes are deployed pervasively in various environments such as office buildings, wildlife reserves, battle fields, and metropolitan area networks. However, lots of challenging tasks still remain for building multihop ad hoc networks, despite significant progress achieved so far.Traditional techniques conceived for wired networking provide inefficient performance when applied in wireless ad hoc networks. Efforts are being made to improve the existing techniques and protocols with new features suitable for the wireless paradigms. For example, different from wired transmission, broadcast is an inherent feature in wireless communications, that is, information transmitted from a source node can be overheard by not only the destination node, but also neighboring nodes surrounding the source. In traditional wireless networks, signals received by the neighboring nodes are treated as interference and many techniques have been developed to alleviate its effect. However, such signals actually contain useful information for the destination node. In fact, if the information can be properly forwarded by the surrounding node(s), the reception performance at the destination can be improved. This fact motivates the application of a new technology, known ascooperative communication [1].The theory behind cooperation communication has been studied in depth [2]. Different approaches can be used at the physical layer to exploit cooperative diversity such as store-and-forward (S&F), amplify-and-forward (A&F), decode-and-forward (D&F), coded cooperation (CC), and many others [3–5]. Significant improvements of system performance have been demonstrated in terms of parameters such as outage probability, coverage extension, and energy efficiency. Recently, cooperative medium access control (MAC) design in distributed wireless networks has also attracted much attention [6–8]. Based on carrier sense multiple access with collision avoidance (CSMA/CA), there are mainly two categories of cooperative MAC protocols proposed in the literature: virtual hop cooperative MACand automatic repeat request, with CoopMAC [9] and C-ARQ [10] as typical examples in each family.Although significant efforts have been made on the physical layer and MAC layer issues of cooperative communications, there has been very little work so far on the cross-layer design of cooperative systems, especially on how to combine cooperation with routing. While some of the studies focused on the theoretical analysis on routing and cooperative diversity [11], other work, [12], addressed the joint optimization of routing and power allocation. [13] calculated the theoretical optimal route of a cooperative network based on the assumption of simultaneous channel access of multiple nodes. However, this assumption is not realistic for devices currently used in wireless networks.Apart from designing a brand new cross-layer cooperative routing protocol, an alternative way to extend cooperative communications to routing layer is to design routing metrics that reflect potential cooperation gain and find optimal paths using the new cooperative metrics. Reference [14] proposed a routing metric solution for a given cooperative network model. In their model, each node or each link is assumed to have a selected relay. However, as pointed out in [15], relay selection with low overhead is a challenging task in cooperative transmissions. Reference [16] introduced a routing metric, termed cooperative expected transmission time (CETT), which may be adopted in multihop networks with a suitable cooperative MAC mechanism. CETT is defined as the estimated frame transmission time over one single hop, considering the presence of potential relay nodes within its reach.As a contribution to this direction, this paper proposes a cross-layer cooperative scheme by using various cooperative metrics instead of traditional routing metrics to exploit cooperative diversity at the routing layer. To perform the scheme, a new cooperative metric is calculated for each potential relay and every individual cooperative transmission scheme for each link beforehand. Then, by comparing the obtained best cooperative link metric with the traditional noncooperative link metric, a node decides whether cooperative retransmission on each link needs to be initiated or not. By choosing the best among all these calculated metrics, the optimal relay node as well as the optimal MAC scheme are selected for each link. Finally, the optimal path from source to destination is established through routing algorithms using the new optimal link metrics. In this way, the potential cooperative benefit from the MAC layer is exploited at the routing layer.The studied metrics include packet delivery ratio (PDR), throughput, and energy efficiency, considering different requirements in various network scenarios. The proposed routing algorithm is implemented and evaluated using a simple topology to demonstrate the performance improvement by the proposed cooperative routing scheme.The rest of the paper is organized as follows. The cross-layer cooperative network is introduced in Section2. The derivation of different routing metrics is given in Section 3, while the routing algorithm is outlined in Section 4. In Section 5, the performance is evaluated through simulations. Finally, the paper is concluded in Section 6.


## 2. Cross-Layer Cooperative Networking

The cross-layer cooperative networking system considered in our study involves the physical layer, the MAC layer as well as the routing layer. In this section, the network model is introduced first, and then the average packet error rate of the data transmission is derived. In the second subsection, we summarize the principles of the twoexisting cooperative MAC mechanisms which constitute the layer 2 basis for our routing algorithms. In the third subsection, how cooperative benefits are exploited at the routing layer using the MAC layer information is explained.


### 2.1. Signal-to-Noise Ratio and Packet Error Rate (Physical Layer)

We start our description from an introduction of power consumption of a communication system in different modes. A transmitting node consumesPT amount of power during transmission, but only PT(1-α) is actually generated for radio-frequency (RF) transmission power, where (1-α) accounts for the efficiency of the RF power amplifier. Any receiving node consumes PR amount of power to receive data. The power consumed in the idle state is neglected. The concrete values of the parameters, α, PT, and PR are specified by the manufacturer and are assumed to be the same for all nodes in the network.Thus, the signal received at a transmitter, which isd distance away from the transmitter, can be expressed as follows:
(1)y(t)=PT(1-α)d-τh(t)x(t)+n(t),
where x(t) is the transmitted signal; n(t) is the system noise; h(t) is the corresponding channel attenuation factor; τ is the path loss exponent.The average signal-to-noise ratio (SNR) of the received signal,γ¯, is expressed as follows, where N0 is the spectral power density of the Gaussian white noise at the receiver and W is bandwidth of the transmission in Hertz:
(2)γ¯=PT(1-α)|h(t)|2diτN0W.Rayleigh fading is assumed in our channel model, but our analysis can be extended to other fading channels such as Rician or Nakagami. In order to simplify higher layer implementation, we obtain the average packet error rate (PER) performance through analysis. The instantaneous SNR at the receiver through a Rayleigh fading channel has an exponential distribution as:(3)f(γ)=1/γ¯e-γ/γ¯.We rely on the following expression to approximate PER over additive white gaussian noise (AWGN) [17]:
(4)PERn(γ)≈{1,ifγ≤γnth,βne-κnγ,ifγ>γnth,
where n is the modulation and coding scheme (MCS) index, and γ is the SNR value at the receiver. Parameters βn, κn, and γnth are dependent on the specific MCS scheme and data packet length. The appropriate values of these parameters are obtained by fitting (4) into the exact PER values through simulations. The tuning process is explained in details in the appendix, where the accuracy of this PER approximation is also verified [17].Given an average SNR value, the PER performance averaged over Rayleigh fading is given as:(5)PER¯(γ¯)=∫0∞PER(γ)f(γ)dγ=βn1+κnγ¯e-γnth(κn+1/γ¯)+(1-e-γnth/γ¯).In the case of adaptive coding and modulation (ACM), the MCS scheme at the physical layer is determined according to the given channel condition. For instance, the channel condition between the transmitter and the receiver can be represented by the SNR value of the received signal. By checking a threshold value, an appropriate data rate is selected [18]. In this case, the average PER can be expressed as:
(6)PER¯*(γ¯)=∑n∫γndwγnupPERn(γ)f(γ)dγ=∫γ1dwγ1upPER1(γ)f(γ)dγ+∫γ2dwγ2upPER1(γ)f(γ)dγ+⋯+∫γndwγnupPERn(γ)f(γ)dγ=∑n[βn1+κnγ¯(e-γndw(κn+1/γ¯)-e-γnup(κn+1/γ¯))+(e-γndw/γ¯-e-γnup/γ¯)βn1+κnγ¯],
where γnup and γndw are the upper bound and the lower bound of the SNR values, respectively, when the MCS scheme with index n is adopted. The values of γnup and γndw are predetermined for a given certain bit error rate for each MCS scheme or to maximize system throughput.Based on the above information, the PER between each transmission pair can be calculated. After that, the PDR values, that is, the percentage numbers of packet successfully delivered among all the packets at the MAC layer, can easily be obtained usingPDR=1-PER¯ (or PER*¯) on each link. These PDR values will be used later to calculate different metrics with different MAC schemes for cooperative routing.Note that the packet delivery ratio on each link can also be obtained at the MAC layer by counting the percentage of packets that are acknowledged by ACK messages from the receiver. However, for simplification and feasibility reasons, the PDR values in this study are calculated according to the physical layer abstraction procedure described above.


### 2.2. Cooperative MAC Mechanisms (MAC Layer)

As mentioned earlier, there exist two typical categories of cooperative MAC in the literature, namely,virtual-hop cooperative MAC and cooperative retransmission MAC. In this study, we select one example from each category as the constituent MAC mechanism for our routing scheme.


#### 2.2.1. Virtual-Hop Cooperative MAC: CoopMAC

InCoopMAC [9], high data rate nodes are employed to transmit data in a two-hop manner instead of one-hop direct transmission with low data rate in order to avoid the throughput bottleneck caused by low data rate nodes. With this virtual-hop CoopMAC mechanism, a relay is adopted to forward its data packet when:(7)1Rsr⁡+1Rrd⁡<1Rsd⁡,
where Rsd, Rsr, are Rrd the selected data transmission rates (determined by MCS schemes) on the channels from the sender to the one hop destination, from the sender to the relay node, and from the relay node to the one-hop destination, respectively.If the relay node is chosen in CoopMAC, the data packet is first sent to the relay atRsr, and then forwarded by the relay to the destination at Rrd after a short interframe space (SIFS) interval, as shown in Figure 1. An ACK packet is returned back to the sender (S) directly at Rsd if the destination (D) decodes the packet correctly. Otherwise, if the relay link is not better than the direct link, the data transmission will be executed according to the original distributed coordination function (DCF) protocol [19].Figure 1
CoopMAC (virtual-hop relay scheme).


#### 2.2.2. Cooperative Retransmission MAC: C-ARQ

As the first step inC-ARQ [10], node S sends out its data packet to D at Rsr following the original DCF protocol. If the direct transmission succeeds, the message sequence will proceed exactly the same as specified in DCF. Otherwise, when the direct transmission fails, if R has decoded its received data packet correctly, it will automatically forward the packet to D at Rrd after ACK timeout, without waiting for a DCF interframe space (DIFS) interval. If the cooperative transmission through R succeeds, an ACK will be sent to R at Rrd and then relayed to S by R at Rsr in a two-hop manner, in order to guarantee a reliable transmission. If even the cooperative retransmission fails, S has to wait for a longer ACK timeout, which is twice of the sum of SIFS and ACK transmission time, to initiate a new round of transmission.The message sequences when the cooperative retransmission is executed successfully are illustrated in Figure2.Figure 2
C-ARQ (cooperative retransmission scheme).


### 2.3. Routing with Cooperative Metrics (Routing Layer)

To operate a multihop ad hoc network, cooperative MAC mechanism itself is not sufficient. A smart routing protocol is needed for path establishment from source to destination.Different from traditional routing decision, the best route selected by our routing scheme needs to take cooperative gains which are obtained from the underlying MAC layer into consideration. Cooperative routing is enabled when potential cooperation gain exists in comparison with traditional routing.A very simple topology in Figure3 is used here to explain how the proposed cooperative routing scheme works. In this network, both S and D can hear R1 and R3 but cannot hear each other. R2 and R4 can hear S and R1, but cannot hear the other nodes. When traditional routing is used, the routing metric is calculated for each link between any node pair which can hear each other. The possible paths for traffic from S to D will have four alternatives: (1) S → R1 → D; (2) S → R3 → D; (3) S → R2 → R1 → D; or (4) S → R4 → R1 → D. Here, we assume that link S → R3 → D has better link quality and therefore is selected as the best route by traditional routing.Figure 3
Topology to illustrate cooperative routing.When cooperative communications are introduced into this network,R2 or R4 can function as a relay node between S and R1. In this way, the link quality between S and R1 is upgraded when cooperative transmission is applied. As a result, path S → R1 → D may surpass path S → R3 → D and becomes the best route between S and D, as explained below.First, the cooperative link metric needs to be calculated for each cooperative MAC scheme for each relay candidate. With two different MAC (CoopMAC and C-ARQ) and two relay candidates (R2 and R4), we have four cooperative routing metrics for this link between S and R1. Choosing the best metric among these four alternatives, both the optimal relay and the optimal MAC scheme (e.g., R4 with C-ARQ) are selected. Thereafter, the obtained best value is compared with the noncooperative link information metric. If the best cooperative link metric is superior to the noncooperative link metric, cooperative MAC is adopted for data transmission over the link from S to R1, and the link metric from S to R1 is updated to the best cooperative routing metric. With the new metric in routing algorithms, S → R1 → D, using R4 as a relay with C-ARQ for the link between S and R1, is selected to be the working path instead of S → R3 → D. Better network performance can be achieved using the new path with cooperative transmissions. On the other hand, if the best cooperative link metric is inferior to the original noncooperative link metric, the link metric remains the same, that is, S → R3 → D as the working path.In summary, with cooperative routing, not only the best path for data transmission is selected, but also the best cooperative MAC scheme as well as the best relay candidate are chosen. Different paths with different cooperative schemes and relays will be selected according to network requirements through different metrics from the MAC layer to the routing layer. Note that within a one-hop transmission link (i.e., a pair of source and destination nodes together with their neighboring nodes), the source node decides the transmission scheme and which relay to cooperate with. Thereafter, the neighboring nodes can be notified with this decision through the MAC header of the packet sent from the source node.


## 2.1. Signal-to-Noise Ratio and Packet Error Rate (Physical Layer)

We start our description from an introduction of power consumption of a communication system in different modes. A transmitting node consumesPT amount of power during transmission, but only PT(1-α) is actually generated for radio-frequency (RF) transmission power, where (1-α) accounts for the efficiency of the RF power amplifier. Any receiving node consumes PR amount of power to receive data. The power consumed in the idle state is neglected. The concrete values of the parameters, α, PT, and PR are specified by the manufacturer and are assumed to be the same for all nodes in the network.Thus, the signal received at a transmitter, which isd distance away from the transmitter, can be expressed as follows:
(1)y(t)=PT(1-α)d-τh(t)x(t)+n(t),
where x(t) is the transmitted signal; n(t) is the system noise; h(t) is the corresponding channel attenuation factor; τ is the path loss exponent.The average signal-to-noise ratio (SNR) of the received signal,γ¯, is expressed as follows, where N0 is the spectral power density of the Gaussian white noise at the receiver and W is bandwidth of the transmission in Hertz:
(2)γ¯=PT(1-α)|h(t)|2diτN0W.Rayleigh fading is assumed in our channel model, but our analysis can be extended to other fading channels such as Rician or Nakagami. In order to simplify higher layer implementation, we obtain the average packet error rate (PER) performance through analysis. The instantaneous SNR at the receiver through a Rayleigh fading channel has an exponential distribution as:(3)f(γ)=1/γ¯e-γ/γ¯.We rely on the following expression to approximate PER over additive white gaussian noise (AWGN) [17]:
(4)PERn(γ)≈{1,ifγ≤γnth,βne-κnγ,ifγ>γnth,
where n is the modulation and coding scheme (MCS) index, and γ is the SNR value at the receiver. Parameters βn, κn, and γnth are dependent on the specific MCS scheme and data packet length. The appropriate values of these parameters are obtained by fitting (4) into the exact PER values through simulations. The tuning process is explained in details in the appendix, where the accuracy of this PER approximation is also verified [17].Given an average SNR value, the PER performance averaged over Rayleigh fading is given as:(5)PER¯(γ¯)=∫0∞PER(γ)f(γ)dγ=βn1+κnγ¯e-γnth(κn+1/γ¯)+(1-e-γnth/γ¯).In the case of adaptive coding and modulation (ACM), the MCS scheme at the physical layer is determined according to the given channel condition. For instance, the channel condition between the transmitter and the receiver can be represented by the SNR value of the received signal. By checking a threshold value, an appropriate data rate is selected [18]. In this case, the average PER can be expressed as:
(6)PER¯*(γ¯)=∑n∫γndwγnupPERn(γ)f(γ)dγ=∫γ1dwγ1upPER1(γ)f(γ)dγ+∫γ2dwγ2upPER1(γ)f(γ)dγ+⋯+∫γndwγnupPERn(γ)f(γ)dγ=∑n[βn1+κnγ¯(e-γndw(κn+1/γ¯)-e-γnup(κn+1/γ¯))+(e-γndw/γ¯-e-γnup/γ¯)βn1+κnγ¯],
where γnup and γndw are the upper bound and the lower bound of the SNR values, respectively, when the MCS scheme with index n is adopted. The values of γnup and γndw are predetermined for a given certain bit error rate for each MCS scheme or to maximize system throughput.Based on the above information, the PER between each transmission pair can be calculated. After that, the PDR values, that is, the percentage numbers of packet successfully delivered among all the packets at the MAC layer, can easily be obtained usingPDR=1-PER¯ (or PER*¯) on each link. These PDR values will be used later to calculate different metrics with different MAC schemes for cooperative routing.Note that the packet delivery ratio on each link can also be obtained at the MAC layer by counting the percentage of packets that are acknowledged by ACK messages from the receiver. However, for simplification and feasibility reasons, the PDR values in this study are calculated according to the physical layer abstraction procedure described above.


## 2.2. Cooperative MAC Mechanisms (MAC Layer)

As mentioned earlier, there exist two typical categories of cooperative MAC in the literature, namely,virtual-hop cooperative MAC and cooperative retransmission MAC. In this study, we select one example from each category as the constituent MAC mechanism for our routing scheme.


### 2.2.1. Virtual-Hop Cooperative MAC: CoopMAC

InCoopMAC [9], high data rate nodes are employed to transmit data in a two-hop manner instead of one-hop direct transmission with low data rate in order to avoid the throughput bottleneck caused by low data rate nodes. With this virtual-hop CoopMAC mechanism, a relay is adopted to forward its data packet when:(7)1Rsr⁡+1Rrd⁡<1Rsd⁡,
where Rsd, Rsr, are Rrd the selected data transmission rates (determined by MCS schemes) on the channels from the sender to the one hop destination, from the sender to the relay node, and from the relay node to the one-hop destination, respectively.If the relay node is chosen in CoopMAC, the data packet is first sent to the relay atRsr, and then forwarded by the relay to the destination at Rrd after a short interframe space (SIFS) interval, as shown in Figure 1. An ACK packet is returned back to the sender (S) directly at Rsd if the destination (D) decodes the packet correctly. Otherwise, if the relay link is not better than the direct link, the data transmission will be executed according to the original distributed coordination function (DCF) protocol [19].Figure 1
CoopMAC (virtual-hop relay scheme).


### 2.2.2. Cooperative Retransmission MAC: C-ARQ

As the first step inC-ARQ [10], node S sends out its data packet to D at Rsr following the original DCF protocol. If the direct transmission succeeds, the message sequence will proceed exactly the same as specified in DCF. Otherwise, when the direct transmission fails, if R has decoded its received data packet correctly, it will automatically forward the packet to D at Rrd after ACK timeout, without waiting for a DCF interframe space (DIFS) interval. If the cooperative transmission through R succeeds, an ACK will be sent to R at Rrd and then relayed to S by R at Rsr in a two-hop manner, in order to guarantee a reliable transmission. If even the cooperative retransmission fails, S has to wait for a longer ACK timeout, which is twice of the sum of SIFS and ACK transmission time, to initiate a new round of transmission.The message sequences when the cooperative retransmission is executed successfully are illustrated in Figure2.Figure 2
C-ARQ (cooperative retransmission scheme).


## 2.2.1. Virtual-Hop Cooperative MAC: CoopMAC

InCoopMAC [9], high data rate nodes are employed to transmit data in a two-hop manner instead of one-hop direct transmission with low data rate in order to avoid the throughput bottleneck caused by low data rate nodes. With this virtual-hop CoopMAC mechanism, a relay is adopted to forward its data packet when:(7)1Rsr⁡+1Rrd⁡<1Rsd⁡,
where Rsd, Rsr, are Rrd the selected data transmission rates (determined by MCS schemes) on the channels from the sender to the one hop destination, from the sender to the relay node, and from the relay node to the one-hop destination, respectively.If the relay node is chosen in CoopMAC, the data packet is first sent to the relay atRsr, and then forwarded by the relay to the destination at Rrd after a short interframe space (SIFS) interval, as shown in Figure 1. An ACK packet is returned back to the sender (S) directly at Rsd if the destination (D) decodes the packet correctly. Otherwise, if the relay link is not better than the direct link, the data transmission will be executed according to the original distributed coordination function (DCF) protocol [19].Figure 1
CoopMAC (virtual-hop relay scheme).


## 2.2.2. Cooperative Retransmission MAC: C-ARQ

As the first step inC-ARQ [10], node S sends out its data packet to D at Rsr following the original DCF protocol. If the direct transmission succeeds, the message sequence will proceed exactly the same as specified in DCF. Otherwise, when the direct transmission fails, if R has decoded its received data packet correctly, it will automatically forward the packet to D at Rrd after ACK timeout, without waiting for a DCF interframe space (DIFS) interval. If the cooperative transmission through R succeeds, an ACK will be sent to R at Rrd and then relayed to S by R at Rsr in a two-hop manner, in order to guarantee a reliable transmission. If even the cooperative retransmission fails, S has to wait for a longer ACK timeout, which is twice of the sum of SIFS and ACK transmission time, to initiate a new round of transmission.The message sequences when the cooperative retransmission is executed successfully are illustrated in Figure2.Figure 2
C-ARQ (cooperative retransmission scheme).


## 2.3. Routing with Cooperative Metrics (Routing Layer)

To operate a multihop ad hoc network, cooperative MAC mechanism itself is not sufficient. A smart routing protocol is needed for path establishment from source to destination.Different from traditional routing decision, the best route selected by our routing scheme needs to take cooperative gains which are obtained from the underlying MAC layer into consideration. Cooperative routing is enabled when potential cooperation gain exists in comparison with traditional routing.A very simple topology in Figure3 is used here to explain how the proposed cooperative routing scheme works. In this network, both S and D can hear R1 and R3 but cannot hear each other. R2 and R4 can hear S and R1, but cannot hear the other nodes. When traditional routing is used, the routing metric is calculated for each link between any node pair which can hear each other. The possible paths for traffic from S to D will have four alternatives: (1) S → R1 → D; (2) S → R3 → D; (3) S → R2 → R1 → D; or (4) S → R4 → R1 → D. Here, we assume that link S → R3 → D has better link quality and therefore is selected as the best route by traditional routing.Figure 3
Topology to illustrate cooperative routing.When cooperative communications are introduced into this network,R2 or R4 can function as a relay node between S and R1. In this way, the link quality between S and R1 is upgraded when cooperative transmission is applied. As a result, path S → R1 → D may surpass path S → R3 → D and becomes the best route between S and D, as explained below.First, the cooperative link metric needs to be calculated for each cooperative MAC scheme for each relay candidate. With two different MAC (CoopMAC and C-ARQ) and two relay candidates (R2 and R4), we have four cooperative routing metrics for this link between S and R1. Choosing the best metric among these four alternatives, both the optimal relay and the optimal MAC scheme (e.g., R4 with C-ARQ) are selected. Thereafter, the obtained best value is compared with the noncooperative link information metric. If the best cooperative link metric is superior to the noncooperative link metric, cooperative MAC is adopted for data transmission over the link from S to R1, and the link metric from S to R1 is updated to the best cooperative routing metric. With the new metric in routing algorithms, S → R1 → D, using R4 as a relay with C-ARQ for the link between S and R1, is selected to be the working path instead of S → R3 → D. Better network performance can be achieved using the new path with cooperative transmissions. On the other hand, if the best cooperative link metric is inferior to the original noncooperative link metric, the link metric remains the same, that is, S → R3 → D as the working path.In summary, with cooperative routing, not only the best path for data transmission is selected, but also the best cooperative MAC scheme as well as the best relay candidate are chosen. Different paths with different cooperative schemes and relays will be selected according to network requirements through different metrics from the MAC layer to the routing layer. Note that within a one-hop transmission link (i.e., a pair of source and destination nodes together with their neighboring nodes), the source node decides the transmission scheme and which relay to cooperate with. Thereafter, the neighboring nodes can be notified with this decision through the MAC header of the packet sent from the source node.


## 3. Cross-Layer Routing Metric

As mentioned in the preceding section, various metrics will be used for routing decision making in multihop networks. In this section, we will explain how to calculate these link metrics with different underlying cooperative MAC mechanisms.The study is carried out considering different network performance parameters, such as packet delivery ratio, throughput, and energy efficiency. Denotem as the index of an optional routing path in a graph, j as the index of a link along a whole path, and i as the index of a relay over a link. In cooperative link j, the sender u, the receiver v and the relay candidates Ni, i=1,2…,ξj are considered, where ξj is the number of available relays on link j. Use the topology in Figure 3 as an example. Along the optional path S → R1 → D (m=2), in the first link S → R1 (j=1), S is u; R1 is v; ξj is 2; R3 and R4 are referred to as N1 and N2, respectively, according to the naming rules in this section.The data rates used on the links fromu to v, from u to Ni, and from Ni to v are denoted as Ruv, Rui, and Riv, respectively. Accordingly, the packet successful transmission rates on each channel are denoted as PDRuv, PDRui, and PDRiv, respectively. These packet successful transmission rate values are determined by the selected data rate over the link, given packet length and channel condition. In our simulations, the PDR values are obtained from physical layer analysis, as explained in Section 2.1.


### 3.1. Packet Delivery Ratio

Packet delivery ratio at the MAC layer is used as an indicator for link reliability in this study. The PDR of the one-hopdirect transmission scheme is the packet successful transmission ratio on the noncooperative direct link as:
(8)PDRj,mdcf=PDRuv,
where PDRuv is the success probability of data transmission on the direct channel from sender to receiver.InCoopMAC, if the relay link is chosen for data transmission, the PDR performance, PDRCoop, is the probability that the transmissions both from u to relay i and from relay i to v are successful. Otherwise, PDRCoop is the same as PDRdcf in the direct transmission scheme:
(9)PDRi,j,mCoop={PDRuiPDRiv,if1Rui+1Riv<1Ruv,PDRdcf,otherwise.ForC-ARQ, v receives the signal from u in the direct transmission phase with date rate Ruv and packet delivery ratio PDRuv. Meanwhile, packet delivery ratio PDRuic is determined by Ruv and channel condition from the sender to the relay node. The PDR of the C-ARQ scheme is therefore the sum of the success probability of the direct transmission and the success probability of the cooperative retransmission, expressed as follows:
(10)PDRi,j,mCarq=PDRuv+(1-PDRuv)PDRuicPDRi2.ComparingPDRi,j,mCoop and PDRi,j,mCarq for all different relays i=1,2,…,ξj, the best relay and the optimal cooperative mechanism can be selected. Then, the best cooperative link metric is compared with the direct transmission link metric, PDRj,mdcf, to decide whether cooperation should be initiated or not. The best PDR value is chosen as the final link metric on link j and will be used in the routing algorithm to find optimal paths.The PDR performance for the whole pathm, denoted as PathPDRm, is given in the following:
(11)PathPDRm=∏jmax⁡(PDRj,mdcf,max⁡i=1,2,…,ξj(PDRi,j,mCoop,PDRi,j,mCarq)).As shown in (11), the packet will be delivered successfully only if the packet is transmitted without errors on each link along the path, and the path with the maximal value of PathPDR will be selected as the working path.


### 3.2. Effective Throughput

For traditionaldirect transmission, the throughput performance can be obtained by calculating the average number of successfully transmitted payload information bits within average unit time consumed during the transmission:(12)ηj,mdcf=PDRi,j,mdcfLδ¯+L/Ruv+LACK/Ruv+SIFS+DIFS,
where L and LACK are the lengths of the DATA and ACK packets in bits, respectively; δ¯ is the average backoff time before each data transmission.ForCoopMAC, the throughput when relay i is used as a virtual hop can be expressed correspondingly in two cases:
(13)ηi,j,mCoop={RPDi,j,mCoopLDi,j,mCoop,if1Rui+1Riv<1Ruv,ηi,j,mdcf,otherwise,
where Di,j,mCoop is the time used for the transmission of the data packet through the relay in the virtual-hop relay scheme:
(14)Di,j,mCoop=δ¯+LRui+LRiv+LACKRuv+2SIFS+DIFS.Based on the same principle, the throughput ofC-ARQ is derived as:
(15)ηi,j,mCarq=PDRi,j,mCarqLDi,j,mCarq,
where Di,j,mCarq is the average time used for the whole transmission procedure in the cooperative retransmission scheme, and is shown in the following:
(16)Di,j,mCarq=δ¯+LRuv+LACKRuv+SIFS+DIFS+(LRiv+LACKRiv+LACKRui+2SIFS)×(1-PDRuv)PDRuic.Comparingηi,j,mCoop and ηi,j,mCarq with all different relays i=1,2,…,ξj, we choose the highest value and then compare it with the noncooperative link metric ηj,mdcf. The higher throughput value will be used as the final link metric on link j and used for routing decision.For the simplicity and feasibility of routing algorithms, we define the end-to-end effective throughput to be the geometric mean of the throughput on each link along the path. The effective throughput performance for the whole pathm, denoted as PathTgtm is given below:
(17)PathTgtm=1∑j(max⁡(ηj,mdcf,max⁡i=1,2,…,ξj⁡(ηi,j,mCoop,ηi,j,mCarq))).Based on the above information, the path with the maximal value ofPathTgt will be selected to be the working path.


### 3.3. Energy Efficiency

As mentioned earlier, the energy consumed by nodes in the idle mode is neglected in this study. Therefore, thetotal energy consumed in the network for transmitting and receiving data packets in the direct transmission link is calculated as follows:
(18)Ej,mdcf=(PT+PR)(LRuv+PDRuvLACKRuv).ForCoopMAC, the total energy consumed during the data transmission with relay i is:
(19)Ei,j,mCoop={Ei,j,mCoop,if1Rui+1Riv<1Ruv,Ei,j,mdcf,otherwise,
where Ei,j,mCoop is the energy consumption when the relay node is adopted to forward data, as expressed below: (20)Ei,j,mCoop=(PT+PR)LRui+(PT+PR)PDRuiLRiv+(PT+PR)PDRuiPDRivLACKRuv.
The first two terms in the right side of the above expression correspond to the first and the second data transmission attempts, respectively, and the last term accounts for the ACK transmission when the one hop destination decodes the data packet successfully.ForC-ARQ, the total energy consumed during the cooperative data transmission with relay i is calculated as:
(21)Ei,j,mCarq=(PT+2PR)LRuv+PDRuvLACKRuv+(PT+PR)(1-PDRuv)PDRuicLRiv+(PT+PR)(1-PDRuv)PDRuicPDRiv×(LACKRiv+LACKRu2),
where the first term in the right hand side corresponds to the direct DATA packet transmission; the second term corresponds to the ACK transmission when the direct transmission succeeds; the third term accounts for the cooperative DATA packet retransmission which happens when relay i decodes the data packet from the sender correctly; and the last term accounts for the ACK transmission when the receiver decodes the data packet successfully after the cooperative retransmission.Similar to the effective throughput metric, the energy efficiency for the whole path is shown as follows, and the path with the maximal value ofPathEfy will be selected as the best path for cooperative communication:
(22)PathEfym=1∑j(max⁡(Ej,mdcf,max⁡i=1,2,…,ξj⁡(Ei,j,mCoop,Ei,j,mCarq))).


## 3.1. Packet Delivery Ratio

Packet delivery ratio at the MAC layer is used as an indicator for link reliability in this study. The PDR of the one-hopdirect transmission scheme is the packet successful transmission ratio on the noncooperative direct link as:
(8)PDRj,mdcf=PDRuv,
where PDRuv is the success probability of data transmission on the direct channel from sender to receiver.InCoopMAC, if the relay link is chosen for data transmission, the PDR performance, PDRCoop, is the probability that the transmissions both from u to relay i and from relay i to v are successful. Otherwise, PDRCoop is the same as PDRdcf in the direct transmission scheme:
(9)PDRi,j,mCoop={PDRuiPDRiv,if1Rui+1Riv<1Ruv,PDRdcf,otherwise.ForC-ARQ, v receives the signal from u in the direct transmission phase with date rate Ruv and packet delivery ratio PDRuv. Meanwhile, packet delivery ratio PDRuic is determined by Ruv and channel condition from the sender to the relay node. The PDR of the C-ARQ scheme is therefore the sum of the success probability of the direct transmission and the success probability of the cooperative retransmission, expressed as follows:
(10)PDRi,j,mCarq=PDRuv+(1-PDRuv)PDRuicPDRi2.ComparingPDRi,j,mCoop and PDRi,j,mCarq for all different relays i=1,2,…,ξj, the best relay and the optimal cooperative mechanism can be selected. Then, the best cooperative link metric is compared with the direct transmission link metric, PDRj,mdcf, to decide whether cooperation should be initiated or not. The best PDR value is chosen as the final link metric on link j and will be used in the routing algorithm to find optimal paths.The PDR performance for the whole pathm, denoted as PathPDRm, is given in the following:
(11)PathPDRm=∏jmax⁡(PDRj,mdcf,max⁡i=1,2,…,ξj(PDRi,j,mCoop,PDRi,j,mCarq)).As shown in (11), the packet will be delivered successfully only if the packet is transmitted without errors on each link along the path, and the path with the maximal value of PathPDR will be selected as the working path.


## 3.2. Effective Throughput

For traditionaldirect transmission, the throughput performance can be obtained by calculating the average number of successfully transmitted payload information bits within average unit time consumed during the transmission:(12)ηj,mdcf=PDRi,j,mdcfLδ¯+L/Ruv+LACK/Ruv+SIFS+DIFS,
where L and LACK are the lengths of the DATA and ACK packets in bits, respectively; δ¯ is the average backoff time before each data transmission.ForCoopMAC, the throughput when relay i is used as a virtual hop can be expressed correspondingly in two cases:
(13)ηi,j,mCoop={RPDi,j,mCoopLDi,j,mCoop,if1Rui+1Riv<1Ruv,ηi,j,mdcf,otherwise,
where Di,j,mCoop is the time used for the transmission of the data packet through the relay in the virtual-hop relay scheme:
(14)Di,j,mCoop=δ¯+LRui+LRiv+LACKRuv+2SIFS+DIFS.Based on the same principle, the throughput ofC-ARQ is derived as:
(15)ηi,j,mCarq=PDRi,j,mCarqLDi,j,mCarq,
where Di,j,mCarq is the average time used for the whole transmission procedure in the cooperative retransmission scheme, and is shown in the following:
(16)Di,j,mCarq=δ¯+LRuv+LACKRuv+SIFS+DIFS+(LRiv+LACKRiv+LACKRui+2SIFS)×(1-PDRuv)PDRuic.Comparingηi,j,mCoop and ηi,j,mCarq with all different relays i=1,2,…,ξj, we choose the highest value and then compare it with the noncooperative link metric ηj,mdcf. The higher throughput value will be used as the final link metric on link j and used for routing decision.For the simplicity and feasibility of routing algorithms, we define the end-to-end effective throughput to be the geometric mean of the throughput on each link along the path. The effective throughput performance for the whole pathm, denoted as PathTgtm is given below:
(17)PathTgtm=1∑j(max⁡(ηj,mdcf,max⁡i=1,2,…,ξj⁡(ηi,j,mCoop,ηi,j,mCarq))).Based on the above information, the path with the maximal value ofPathTgt will be selected to be the working path.


## 3.3. Energy Efficiency

As mentioned earlier, the energy consumed by nodes in the idle mode is neglected in this study. Therefore, thetotal energy consumed in the network for transmitting and receiving data packets in the direct transmission link is calculated as follows:
(18)Ej,mdcf=(PT+PR)(LRuv+PDRuvLACKRuv).ForCoopMAC, the total energy consumed during the data transmission with relay i is:
(19)Ei,j,mCoop={Ei,j,mCoop,if1Rui+1Riv<1Ruv,Ei,j,mdcf,otherwise,
where Ei,j,mCoop is the energy consumption when the relay node is adopted to forward data, as expressed below: (20)Ei,j,mCoop=(PT+PR)LRui+(PT+PR)PDRuiLRiv+(PT+PR)PDRuiPDRivLACKRuv.
The first two terms in the right side of the above expression correspond to the first and the second data transmission attempts, respectively, and the last term accounts for the ACK transmission when the one hop destination decodes the data packet successfully.ForC-ARQ, the total energy consumed during the cooperative data transmission with relay i is calculated as:
(21)Ei,j,mCarq=(PT+2PR)LRuv+PDRuvLACKRuv+(PT+PR)(1-PDRuv)PDRuicLRiv+(PT+PR)(1-PDRuv)PDRuicPDRiv×(LACKRiv+LACKRu2),
where the first term in the right hand side corresponds to the direct DATA packet transmission; the second term corresponds to the ACK transmission when the direct transmission succeeds; the third term accounts for the cooperative DATA packet retransmission which happens when relay i decodes the data packet from the sender correctly; and the last term accounts for the ACK transmission when the receiver decodes the data packet successfully after the cooperative retransmission.Similar to the effective throughput metric, the energy efficiency for the whole path is shown as follows, and the path with the maximal value ofPathEfy will be selected as the best path for cooperative communication:
(22)PathEfym=1∑j(max⁡(Ej,mdcf,max⁡i=1,2,…,ξj⁡(Ei,j,mCoop,Ei,j,mCarq))).


## 4. Routing Algorithm and Implementation

After introducing all the different routing metrics in Section3, we will explain the cooperative routing procedure, that is, how the cooperative metrics are exploited and used for making routing decision.In our network, the relays are selected from the neighboring nodes of a transmitter-receiver pair, and these relays generate their own traffic as well. Path establishment starts from a traditional routing procedure first, and the nodes send packets and obtain information from each other, for example, channel information (SNR in our case) for each link. Based on the gathered information, the cooperative metrics are updated. Thereafter, new routes will be set up with the updated cooperative metrics. The routing algorithm is summarized as Algorithm1.Algorithm 1
Algorithm: Find_Path(G, S, D)Input:   G = (V, E)Edge-weighted graph(network topology)with an SNR valueon each link:S: source node;D: destination node.Output:Best path array from S to D.Step  1: For every edge (u,v) in E(G),compute cooperative metric oflink (u,v),(Link PDR/Throughput/Energy Efficiency)based on the given SNR values,for each potential relay withdifferent MAC schemes (e.g.,CoopMAC and C-ARQ).Step  2: Compare all cooperative metrics,select the optimal value ascooperative weight,w⋆(u,v).Step  2: Compare w⋆(u,v) with non-cooperative link metric w(u,v),select the better value asnew weight, w′(u,v).Step  4: Generate G′ = (V,E′) withnew weight matrix, w′.Step  5: Use the modified Dijkstra’salgorithm to find the bestpath from S to D.The proposed routing algorithm follows the same principle as the original Dijkstra’s shortest path algorithm, but updated with small modifications for analogous operations. The pseudocode of the implementation is listed as Algorithm2.Algorithm 2
function modified Dijkstra (G, S, D):for each vertex v in Graph://Initializationscost [v]:= infinity;//Unknown cost function from S to vprevious [v]:= undefined;//Previous node in optimal path from Send for;cost [S]:= 0;Q:= the set of all nodes in Graph;while Q is not empty:u:= vertex in Q with smallest cost[];if cost [u] = infinity:break;//remaining vertices inaccessible from Sfi;remove u from Q;for each neighbor v of u://where v has not yet beenremoved from Q.temp:= 1− (1−cost [u]) linkmetric(u,v);//link cost for PDRtemp:= cost [u] + 1/linkmetric(u,v);//link cost for Throughputor Energy Efficiencyif alt < cost [v]:cost [v]:= temp;//Update new metricprevious [v]:= u;//Update new pathfi;end for;end while;return cost[];path:= empty sequence//find shortest path between S and Dd:= Dwhile previous [d] is defined:insert u at the beginning of pathd:= previous [d]end whilereturn path;end modified Dijkstra.In our algorithm, different metrics have different operations to calculate link cost. With regard to routing based on packet delivery ratio, the link cost is the probability of unsuccessful transmission through the link. The data packets are delivered successfully to the destination along the path only when the transmission on each link is successful. Therefore, in the modified Dijkstra’s algorithm, we use1-(1-cost[u])linkmetric(u,v) operation instead of “sum” operation to calculate the cost accumulated along the path. In our simplified scenario, the average end-to-end throughput is the geometric mean of the throughput on each link, and the link cost is the reciprocal value of the link throughput. As shown in the following function, the accumulated cost along the path with regard to throughput is calculated using cost[u]+1/linkmetric(u,v). The routing algorithm for energy efficiency shares the same principle with the algorithm for throughput, with the reciprocal value of the energy efficiency on each link as its link cost.With respect to possible real-life implementation of our algorithm, it is highly feasible to integrate the above cooperative routing scheme with popular routing protocols such as the optimized link state routing protocol (OLSR) protocol. OLSR is a proactive link-state routing protocol designed for mobile ad hoc networks, which uses HELLO messages for neighbor discovering and then topology control (TC) messages for disseminating link state information throughout the whole network [20]. In order to extend OLSR to a metric-based routing protocol, link quality extensions have been introduced in [21], where HELLO messages and TC messages are augmented with the link quality information of all neighboring nodes. To integrate cooperative communication into routing decision, the metric for each link needs to be updated according to the cooperative MAC scheme, and the routing decision is made based on the updated new link metrics, as calculated in Section 3.


## 5. Simulations and Numerical Results

To evaluate the performance of the proposed cooperative routing scheme, we have implemented the DCF, CoopMAC, and C-ARQ mechanisms and the modified Dijkstra’s routing algorithm described in the previous section in MATLAB.


### 5.1. Simulation Setup

A simple network topology with 6 nodes is configured in our simulations, as shown in Figure4. The path loss exponent τ is set to be 4.0 to represent indoor environments. The power consumption for transmission is set to be 1400 mW and the power consumption for reception is 900 mW [22]. The channels between each transmission pair are set as independent Rayleigh fading channels. Other simulation parameters are listed in Table 1.Table 1
Simulation parameters.
LACK14 bytesW20 MHzLDATA500 bytesCWmin15PT1400 mWDIFS34μsPR900 mWSIFS16μsBasic datarate6 MbpsSlottime9μsRF efficiencyα0.5Path loss exponentτ4.0Figure 4
Network topology for cooperative routing simulations.The transmission rate of the data packet is determined according to the average SNR value of the received signal at the receiver. The required channel conditions are assumed to be obtained beforehand and the overhead for channel estimation is ignored in this study. The MCS set and their corresponding parameters are listed in Table2.Table 2
Modulation and coding scheme set.
MCS Indexn01234ModulationBPSKQPSK16QAM16QAM64QAMCode rate1/23/41/23/43/4Data Rate (Mbps)618243654SNRnth (dB)−1.03.04.06.09.0Scope (dB)<1212~16.816.8~17.517.5~18>18βn0.22.3 × 1032.6 × 1041.1 × 1051.2 × 106κn2.82.52.41.91.5Et/N0 is used to describe channel conditions in our study, instead of Eb/N0, where Et is the transmitted energy per bit at the transmitter. The reason is that when there are multiple transmitters (sender and relay) in the network with fixed transmitting power, the received signal strength from a transmitting node that is closer to the receiver is higher, resulting in higher received SNR and better performance. Therefore, Et/N0 is a more sensible metric to illustrate the performance with transmitters at different locations.


### 5.2. Simulation Results

#### 5.2.1. Routing Path Illustration

Firstly, we setEt/N0 as 140 dB and observe the routing path obtained through the traditional routing protocol versus the path established through the cooperative routing protocol. In the network topology in Figure 3, with this Et/N0 value, most nodes can hear each other, except that Node D cannot hear Node S or Node R2 due to the long distances between them.The optimal path from source (Node S) to destination (Node D) is shown in Figure5, for traditional and cooperative routing, respectively, using PDR as the metric. The values on the lines are the packet delivery ratio in each link. We can observe that in traditional routing, the data packet is sent to the destination using R2, R4, and R1 in succession as intermediate hops to guarantee a high packet delivery ratio. However, in cooperative routing, Node R2 will use Node R1 as its second hop and Node R4 as its relay node with C-ARQ scheme. The reason is that under the given scenario and channel condition, the link between R2 and R1, with R4 forwarding the packet when the direct transmission fails, can provide higher packet delivery ratio than the combined link from R2 to R4 and from R4 to R1 when the packet is transmitted in a two-hop manner. The benefits of the cooperative routing will be shown in the second part of the subsection.Route for highest packet delivery ratio.
(a)
Traditional routing(b)
Cooperative routingFigure6 illustrates the optimal paths selected by the traditional routing and cooperative routing protocols, respectively when throughput is used as the metric. The values on the lines are the corresponding link effective throughput in Mbps. It is shown that the best path for the traditional routing is the path from S through R2 and R1 to Node D. However, in cooperative routing, Node S will send packets to R1, with R4 as its relay node with C-ARQ. Similarly to routing for the highest PDR case, higher throughput can be achieved through the link between S and R1 with R4 as a relay for cooperative retransmission than the combined links from S to R2 and from R2 to R1.Routing for highest throughput.
(a)
Traditional routing(b)
Cooperative routingThe optimal paths with regard to energy efficiency are shown in Figure7. The values on the lines are the corresponding link energy efficiency values in bit/J. Evident from the figure, both the traditional and cooperative routing protocols have chosen the long path through R2, R4, and R1 to Node D. It means that data transmission between the transmitter and receiver pair with the shortest distance is most energy efficient in the given scenario, no matter the traditional or cooperative routing is employed.Routing for highest energy efficiency.
(a)
traditional routing(b)
cooperative routing


#### 5.2.2. Performance Comparison

Secondly, we investigate the performance of cooperative routing in comparison with traditional routing under different channel conditions.Figure8 illustrates the PDR performance comparison between the cooperative routing and the traditional routing. From the figure, we can observe that the PDR performance can be improved significantly when cooperative routing is applied, especially when Et/N0 is above 135 dB. That is because a high order MCS scheme is adopted in the original scheme and the packet delivery ratio is decreased as a result. Cooperative routing protocol adopts the relay node in the network to forward the unsuccessful packet and therefore enhances the performance. However, the benefit is not significant when Et/N0 is around 135 dB, because when the channel quality is too poor, the probability for a relay node to decode the packet and retransmit successfully is also low. With ideal channel conditions, cooperative routing will not be beneficial anymore. This is in accordance with the intuition that the original direct transmission mechanism can provide error-free data delivery in this case and therefore no cooperations are needed.Figure 8
Traditional routing versus cooperative routing (PDR).Furthermore, the throughput performance comparison under different channel conditions is shown in Figure9. We can observe that the throughput is enhanced noticeably by cooperative routing when Et/N0 is around 135 dB and 140 dB. The enhancement is evident in terms of both higher packet delivery ratio and less data transmission time. However, when Et/N0 further increases to 145 dB, cooperative routing has no performance advantage. That is again due to the fact that under excellent channel conditions, traditional routing is as efficient enough in finding the optimal path without cooperative transmissions.Figure 9
Traditional routing versus cooperative routing (throughput).Finally, the numerical results based on energy efficiency for end-to-end data transmission are shown in Figure10. It is obvious that there is no evident difference between cooperative routing and traditional routing. In other words, the traditional communication has equivalent performance as cooperative communications when it comes to energy efficiency. Therefore, we can conclude that in given scenarios, the network does not get benefits from cooperative communication.Figure 10
Traditional routing versus cooperative routing (energy efficiency).


## 5.1. Simulation Setup

A simple network topology with 6 nodes is configured in our simulations, as shown in Figure4. The path loss exponent τ is set to be 4.0 to represent indoor environments. The power consumption for transmission is set to be 1400 mW and the power consumption for reception is 900 mW [22]. The channels between each transmission pair are set as independent Rayleigh fading channels. Other simulation parameters are listed in Table 1.Table 1
Simulation parameters.
LACK14 bytesW20 MHzLDATA500 bytesCWmin15PT1400 mWDIFS34μsPR900 mWSIFS16μsBasic datarate6 MbpsSlottime9μsRF efficiencyα0.5Path loss exponentτ4.0Figure 4
Network topology for cooperative routing simulations.The transmission rate of the data packet is determined according to the average SNR value of the received signal at the receiver. The required channel conditions are assumed to be obtained beforehand and the overhead for channel estimation is ignored in this study. The MCS set and their corresponding parameters are listed in Table2.Table 2
Modulation and coding scheme set.
MCS Indexn01234ModulationBPSKQPSK16QAM16QAM64QAMCode rate1/23/41/23/43/4Data Rate (Mbps)618243654SNRnth (dB)−1.03.04.06.09.0Scope (dB)<1212~16.816.8~17.517.5~18>18βn0.22.3 × 1032.6 × 1041.1 × 1051.2 × 106κn2.82.52.41.91.5Et/N0 is used to describe channel conditions in our study, instead of Eb/N0, where Et is the transmitted energy per bit at the transmitter. The reason is that when there are multiple transmitters (sender and relay) in the network with fixed transmitting power, the received signal strength from a transmitting node that is closer to the receiver is higher, resulting in higher received SNR and better performance. Therefore, Et/N0 is a more sensible metric to illustrate the performance with transmitters at different locations.


## 5.2. Simulation Results

### 5.2.1. Routing Path Illustration

Firstly, we setEt/N0 as 140 dB and observe the routing path obtained through the traditional routing protocol versus the path established through the cooperative routing protocol. In the network topology in Figure 3, with this Et/N0 value, most nodes can hear each other, except that Node D cannot hear Node S or Node R2 due to the long distances between them.The optimal path from source (Node S) to destination (Node D) is shown in Figure5, for traditional and cooperative routing, respectively, using PDR as the metric. The values on the lines are the packet delivery ratio in each link. We can observe that in traditional routing, the data packet is sent to the destination using R2, R4, and R1 in succession as intermediate hops to guarantee a high packet delivery ratio. However, in cooperative routing, Node R2 will use Node R1 as its second hop and Node R4 as its relay node with C-ARQ scheme. The reason is that under the given scenario and channel condition, the link between R2 and R1, with R4 forwarding the packet when the direct transmission fails, can provide higher packet delivery ratio than the combined link from R2 to R4 and from R4 to R1 when the packet is transmitted in a two-hop manner. The benefits of the cooperative routing will be shown in the second part of the subsection.Route for highest packet delivery ratio.
(a)
Traditional routing(b)
Cooperative routingFigure6 illustrates the optimal paths selected by the traditional routing and cooperative routing protocols, respectively when throughput is used as the metric. The values on the lines are the corresponding link effective throughput in Mbps. It is shown that the best path for the traditional routing is the path from S through R2 and R1 to Node D. However, in cooperative routing, Node S will send packets to R1, with R4 as its relay node with C-ARQ. Similarly to routing for the highest PDR case, higher throughput can be achieved through the link between S and R1 with R4 as a relay for cooperative retransmission than the combined links from S to R2 and from R2 to R1.Routing for highest throughput.
(a)
Traditional routing(b)
Cooperative routingThe optimal paths with regard to energy efficiency are shown in Figure7. The values on the lines are the corresponding link energy efficiency values in bit/J. Evident from the figure, both the traditional and cooperative routing protocols have chosen the long path through R2, R4, and R1 to Node D. It means that data transmission between the transmitter and receiver pair with the shortest distance is most energy efficient in the given scenario, no matter the traditional or cooperative routing is employed.Routing for highest energy efficiency.
(a)
traditional routing(b)
cooperative routing


### 5.2.2. Performance Comparison

Secondly, we investigate the performance of cooperative routing in comparison with traditional routing under different channel conditions.Figure8 illustrates the PDR performance comparison between the cooperative routing and the traditional routing. From the figure, we can observe that the PDR performance can be improved significantly when cooperative routing is applied, especially when Et/N0 is above 135 dB. That is because a high order MCS scheme is adopted in the original scheme and the packet delivery ratio is decreased as a result. Cooperative routing protocol adopts the relay node in the network to forward the unsuccessful packet and therefore enhances the performance. However, the benefit is not significant when Et/N0 is around 135 dB, because when the channel quality is too poor, the probability for a relay node to decode the packet and retransmit successfully is also low. With ideal channel conditions, cooperative routing will not be beneficial anymore. This is in accordance with the intuition that the original direct transmission mechanism can provide error-free data delivery in this case and therefore no cooperations are needed.Figure 8
Traditional routing versus cooperative routing (PDR).Furthermore, the throughput performance comparison under different channel conditions is shown in Figure9. We can observe that the throughput is enhanced noticeably by cooperative routing when Et/N0 is around 135 dB and 140 dB. The enhancement is evident in terms of both higher packet delivery ratio and less data transmission time. However, when Et/N0 further increases to 145 dB, cooperative routing has no performance advantage. That is again due to the fact that under excellent channel conditions, traditional routing is as efficient enough in finding the optimal path without cooperative transmissions.Figure 9
Traditional routing versus cooperative routing (throughput).Finally, the numerical results based on energy efficiency for end-to-end data transmission are shown in Figure10. It is obvious that there is no evident difference between cooperative routing and traditional routing. In other words, the traditional communication has equivalent performance as cooperative communications when it comes to energy efficiency. Therefore, we can conclude that in given scenarios, the network does not get benefits from cooperative communication.Figure 10
Traditional routing versus cooperative routing (energy efficiency).


## 5.2.1. Routing Path Illustration

Firstly, we setEt/N0 as 140 dB and observe the routing path obtained through the traditional routing protocol versus the path established through the cooperative routing protocol. In the network topology in Figure 3, with this Et/N0 value, most nodes can hear each other, except that Node D cannot hear Node S or Node R2 due to the long distances between them.The optimal path from source (Node S) to destination (Node D) is shown in Figure5, for traditional and cooperative routing, respectively, using PDR as the metric. The values on the lines are the packet delivery ratio in each link. We can observe that in traditional routing, the data packet is sent to the destination using R2, R4, and R1 in succession as intermediate hops to guarantee a high packet delivery ratio. However, in cooperative routing, Node R2 will use Node R1 as its second hop and Node R4 as its relay node with C-ARQ scheme. The reason is that under the given scenario and channel condition, the link between R2 and R1, with R4 forwarding the packet when the direct transmission fails, can provide higher packet delivery ratio than the combined link from R2 to R4 and from R4 to R1 when the packet is transmitted in a two-hop manner. The benefits of the cooperative routing will be shown in the second part of the subsection.Route for highest packet delivery ratio.
(a)
Traditional routing(b)
Cooperative routingFigure6 illustrates the optimal paths selected by the traditional routing and cooperative routing protocols, respectively when throughput is used as the metric. The values on the lines are the corresponding link effective throughput in Mbps. It is shown that the best path for the traditional routing is the path from S through R2 and R1 to Node D. However, in cooperative routing, Node S will send packets to R1, with R4 as its relay node with C-ARQ. Similarly to routing for the highest PDR case, higher throughput can be achieved through the link between S and R1 with R4 as a relay for cooperative retransmission than the combined links from S to R2 and from R2 to R1.Routing for highest throughput.
(a)
Traditional routing(b)
Cooperative routingThe optimal paths with regard to energy efficiency are shown in Figure7. The values on the lines are the corresponding link energy efficiency values in bit/J. Evident from the figure, both the traditional and cooperative routing protocols have chosen the long path through R2, R4, and R1 to Node D. It means that data transmission between the transmitter and receiver pair with the shortest distance is most energy efficient in the given scenario, no matter the traditional or cooperative routing is employed.Routing for highest energy efficiency.
(a)
traditional routing(b)
cooperative routing


## 5.2.2. Performance Comparison

Secondly, we investigate the performance of cooperative routing in comparison with traditional routing under different channel conditions.Figure8 illustrates the PDR performance comparison between the cooperative routing and the traditional routing. From the figure, we can observe that the PDR performance can be improved significantly when cooperative routing is applied, especially when Et/N0 is above 135 dB. That is because a high order MCS scheme is adopted in the original scheme and the packet delivery ratio is decreased as a result. Cooperative routing protocol adopts the relay node in the network to forward the unsuccessful packet and therefore enhances the performance. However, the benefit is not significant when Et/N0 is around 135 dB, because when the channel quality is too poor, the probability for a relay node to decode the packet and retransmit successfully is also low. With ideal channel conditions, cooperative routing will not be beneficial anymore. This is in accordance with the intuition that the original direct transmission mechanism can provide error-free data delivery in this case and therefore no cooperations are needed.Figure 8
Traditional routing versus cooperative routing (PDR).Furthermore, the throughput performance comparison under different channel conditions is shown in Figure9. We can observe that the throughput is enhanced noticeably by cooperative routing when Et/N0 is around 135 dB and 140 dB. The enhancement is evident in terms of both higher packet delivery ratio and less data transmission time. However, when Et/N0 further increases to 145 dB, cooperative routing has no performance advantage. That is again due to the fact that under excellent channel conditions, traditional routing is as efficient enough in finding the optimal path without cooperative transmissions.Figure 9
Traditional routing versus cooperative routing (throughput).Finally, the numerical results based on energy efficiency for end-to-end data transmission are shown in Figure10. It is obvious that there is no evident difference between cooperative routing and traditional routing. In other words, the traditional communication has equivalent performance as cooperative communications when it comes to energy efficiency. Therefore, we can conclude that in given scenarios, the network does not get benefits from cooperative communication.Figure 10
Traditional routing versus cooperative routing (energy efficiency).


## 6. Conclusions and Future Work

The research effort on how to apply cooperative communication into routing decisions in multihop wireless networks is still in its infant stage. In this paper, we propose a metric-based routing scheme that integrates both cooperative MAC mechanism selection and relay selection into routing decision making. Various routing metrics are proposed considering link reliability, throughput, and energy consumption.The network performance with cooperative routing is evaluated using a simple network topology. The obtained numerical results demonstrate that cooperative communication is effective for PDR performance enhancement but less effective for throughput enhancement. Furthermore, cooperative communication has basically no advantage over traditional transmission with regard to energy efficiency for the scenarios studied in this work.The simulations in our work were done by implementing the routing algorithm and applying it to a simple network topology. Certainly, it could be more convincing with results provided from real-life network testbeds. Integrating a complete routing protocol with the proposed cooperative routing metrics is left for future work. In addition, our focus is only on static networks such as wireless mesh networks in this study therefore node mobility is not taken into consideration. Although the proposed routing algorithm may apply to mobile ad hoc networks in principle, how effective cooperative communications are as well as extra protocol overhead introduced due to mobility are left for further investigation.



---

*Source: 893867-2012-04-09.xml*