International Journal of Distributed Sensor NetworksVolume 2012 (2012), Article ID 785403, 9 pagesdoi:10.1155/2012/785403

Research Article

CAC-MAC: A Cross-Layer Adaptive Cooperative MAC for Wireless Ad Hoc Networks

Chunguang Shi, Haitao Zhao, Shan Wang, Jibo Wei, and Linhua Zheng

BCNG, College of Electronic Science and Engineering, National University of Defense Technology, Changsha 410073, China

Received 19 December 2011; Accepted 1 March 2012

Academic Editor: Shukui Zhang

Copyright © 2012 Chunguang Shi et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

Cooperative communication has been recently proposed as a way to mitigate fading in wireless networks. A cross-layer adaptive cooperative MAC (CAC-MAC) protocol for IEEE 802.11 DCF-based wireless ad hoc networks is proposed. The novel aspect and core idea of our proposal is a cross-layer adaptive data transmission algorithm considering both the length of data frame at the MAC layer and instantaneous wireless channel conditions. Under this algorithm, direct transmission mode or proper cooperative transmission mode will be adaptively selected for data packets according to both MAC layer and physical layer information. Analytical results demonstrate the effectiveness of the adaptive data transmission algorithm. Simulation studies based on NS2 show that the CAC-MAC protocol can significantly improve network throughput and reduce packet delay compared with legacy IEEE 802.11 protocol, which illustrate a new paradigm for realistic cross-layer cooperative MAC protocol design for next-generation wireless ad hoc networks.

1. Introduction

Cooperative communication, which can achieve spatial diversity by exploiting distributed virtual antennas of cooperative nodes, has attracted much attention recently due to its ability to mitigate fading in wireless networks. The main feature of cooperative communication is the involvement of neighboring nodes in data transmissions. As depicted in Figure 1, the source has an inferior channel with destination and meanwhile no less than one neighboring node has a good channel with both the source and the destination. And hence, the source can transmit data packets via neighbor node(s) to the destination at a higher data rate instead of a direct transmission to the destination at a lower data rate.

Figure 1: Illustration of cooperative communication.

The studies in [1–3] show that significant benefit is obtained through cooperative communication in terms of reliability, throughput, coverage range, and energy efficiency. Although cooperative communication originates from the physical layer, from the system point of view, in order to realize a fully cooperative network, researches at the physical layer should be coupled with those at the higher network layers, for example, MAC layer. However, so far no standard on cooperative MAC design has been achieved, and hence leave it an open research topic.

The neighboring nodes participating in the cooperative communication are called relay nodes or helpers. The relay nodes can operate on decode-and-forward (DF), amplify-and-forward (AF) or coded cooperation (CC) strategies. For further details readers are referred to [4, 5]. Generally, employing more relay nodes for a given source-destination pair may obtain more cooperative diversity gain, but the resultant lower spectrum efficiency and higher computational complexity may not lead to a beneficial performance-complexity tradeoff [6]. Therefore, this paper focuses on selecting no more than one relay node for each source-destination pair whenever cooperative communication is desirable.

There have been exiting literatures on cooperative MAC design utilizing just one relay node for IEEE 802.11 DCF-based wireless networks. rDCF [7] and CoopMAC [8] are two similar cooperative MAC protocols that take advantage of the multirate capability of the IEEE 802.11 in which high-data-rate nodes assist low-data-rate nodes to transmit data. In these two protocols, each node promiscuously listens to ongoing transmissions to establish and maintain a relay table. Therefore, the relay selection cannot adapt to dynamic channel conditions and network topology in wireless networks just as it is based on the observation of historical transmissions. Furthermore, in these researches, the cooperative diversity is not exploited and only one copy of a packet coming from the source or the relay node is processed at the destination. Hence, more specifically, rate adaptation is the main focus in data transmissions in these two protocols. Considering that CoopMAC is a cooperative protocol for infrastructure-based wireless LANs, Korakis et al. [9] extend it to the ad hoc network environment. Based on CoopMAC, Liu et al. [10] further propose a cross-layer cooperative protocol for wireless ad hoc networks to leverage cooperation in both MAC and PHY layers where the relay node adopts coded cooperation strategy [5]. Actually, for a cooperative MAC protocol, the data transmission mode should be dynamically selected according to both the length of data frame at the MAC layer and the time-varying channel status between source, relay, and destination, which is not considered in the above-mentioned studies [7–10].

In order to reap more benefit of cooperation, in this paper, a cross-layer adaptive cooperative MAC (CAC-MAC) protocol for IEEE 802.11 DCF-based wireless ad hoc networks is proposed, which forms a cross-layer approach to cooperation involving interaction between MAC layer and physical layer. The novel aspect and core idea of our proposal is a cross-layer adaptive data transmission algorithm considering both the length of data frame at the MAC layer and instantaneous wireless channel conditions. Under this algorithm, direct transmission mode or proper cooperative transmission mode will be adaptively selected for data packets according to both MAC layer and physical layer information. The key features of our proposal are as follows.

First, only when a data frame at the MAC layer is longer than a specified length, CAC-MAC initiates a RTS/CTS handshake, which brings down the overhead of network.

Second, for long data frames, RTS/CTS direct transmission or proper cooperative transmission will be selected according to the wireless channel conditions. Moreover, the cooperative transmission is divided into either “source-relay-destination” transmission scheme or receiver maximal ratio combining scheme according to the channel conditions between source, relay, and destination.

Third, the selection of the best relay node for a given source-destination pair is based on instantaneous wireless channel measurements instead of a relay table, which has the added cost to be created and maintained based on the observation of historical transmissions.

The remainder of this paper is organized as follows. Section 2 introduces the system model. Section 3 proposes a cross-layer adaptive cooperative MAC (CAC-MAC) protocol for IEEE 802.11 DCF-based wireless ad hoc networks. Section 4 analyzes the cross-layer adaptive data transmission algorithm. Section 5 evaluates the performance of CAC-MAC protocol based on NS2, and Section 4 concludes this paper.

2. System Model

We consider a wireless ad hoc network based on IEEE 802.11a that supports transmission rates of 6, 12, 24, and 54 Mbps. A single physical channel is available for wireless transmissions. We assume a slow fading channel that the channel conditions do not change within the duration of a MAC frame transmission. We assume that each node has constant transmission power and that the wireless channels are symmetric. It is also assumed that a relay node works on the decode-and-forward (DF) strategy [4]. The terms relay node and helper are of the same meaning in this paper.

Due to the broadcast nature of the channel, the destination will receive the signals transmitted by both the source and the relay node. Receiver combining technique [11], not supported by any existing wireless hardware, can be implemented in the next-generation wireless baseband chip. Hence, it is reasonable to assume that the destination can adopt maximal ratio combining diversity technique at the physical layer to combine the signals coming from the source and the relay node if the independent copies are in the same modulation scheme, enabling higher transmission rates and robustness against channel variations due to fading.

3. The Proposed CAC-MAC Protocol

In our proposal, each data transmission is based on two planes: control plane and data plane. The control plane is to determine the data transmission mode, in which the main issues include relay selection and the cross-layer adaptive data transmission algorithm. The data plane is in charge of transmitting, receiving, or forwarding data packets according to the transmission mode.

3.1. Relay Selection

In CAC-MAC protocol, for long data frames, the RTS/CTS handshake is initiated, so the neighbor nodes can measure the instantaneous channel conditions toward source and destination via overhearing RTS and CTS frames. In addition, the neighbor nodes can extract the channel conditions between source and destination from the extended CTS frame. The extended CTS frame format will be described later in Section 3.3. With the channel quality information, by checking the threshold value, which is pre-calculated and guarantees a certain bit error rate for each modulation scheme, we can obtain the achievable transmission rate between source and relay, relay and destination, and source and destination, denoted by ,, and, respectively.

We assume the length of a data frame is bytes; if a direct transmission is adopted, the transmission time would be

If a cooperative transmission via node is adopted, the transmission time would include two parts: the time consumed between the source and the relay and that consumed between the relay and the destination, namely,

For a neighbor node , if it satisfies

it becomes a candidate relay node. And the candidate relay node that has the minimum transmission time will be the best relay node for the given source-destination pair, that is, where is the set of all candidate relay nodes.

In practice, to select the best relay node for a given source-destination pair, each candidate relay node will start a timer [6] in line with the parameter , and the longer means a lager . And hence, the timer of the relay node with the minimum will expire first. Once the timer expires, the relay node will transmit an HTS (helper ready to send) frame [8] to declare its capacity to participate in the cooperative transmission. All other candidate relay nodes waiting for their timer to expire that overhear the HTS frame from another relay node will back off. After the best relay node has been selected, it is ready to participate in cooperative transmission.

3.2. Cross-Layer Adaptive Data Transmission Algorithm

In CAC-MAC protocol, the data transmission modes are divided into four schemes, that is, basic access scheme, RTS/CTS direct transmission scheme, “source-relay-destination” transmission scheme, and receiver maximal ratio combining scheme, according to both the length of data frame at the MAC layer and the time-varying channel status between source, relay, and destination. The cross-layer adaptive data transmission algorithm is briefly summarized in Algorithm 1.

Input: , , and

Output:  transmission mode (mode) and the source transmission rate (rate)

(1) if L < RTSThreshold

(2)      mode = basic access scheme; rate = 6 Mbps

(3) end if

(4) if   ≥ RTSThreshold (to initiate a RTS/CTS handshake)

(5)    If ≥ 24 

(6)            mode = RTS/CTS direct transmission scheme; rate =

(7)    else if ≤12 

(8)               (to initiate cooperative transmission)

(9)                if <

(10)                     mode = relay transmission scheme; rate =

(11)              else if ≥

(12)                     mode = maximal ratio combining scheme; rate =

(13)             end if

(14)    end if

(15) end if

Algorithm 1: Cross-layer adaptive data transmission algorithm.

It is well known that there are two access schemes defined in IEEE 802.11 DCF, namely, the basic access scheme and the RTS/CTS scheme. Similarly, under our proposed algorithm, when a data frame is shorter than RTS threshold, the source transmits it directly to the destination by the basic access scheme. Otherwise, the source will initiate a RTS/CTS handshake. If the source has a good channel with the destination where the sustainable rate is equal to or larger than 24 Mbps, or in the case that the channels between source and destination, source and relay, relay and destination are inferior where all the sustainable rates are equal to or less than 12 Mbps, the source transmits the data frame by the RTS/CTS direct transmission scheme.

On the other hand, if the source has an inferior channel with the destination and meanwhile no less than one relay node has a good channel with both the source and the destination, therefore the source can transmit the data packet via the relay node to the destination. Once the source initiates one cooperative transmission via a relay node, it will transmit a data packet at a rate of . When the relay node decodes and forwards the data packet toward the destination at a rate of , the destination will receive two copies of the packet: one from the source with the rate of and the other from the relay node with the rate of .

Since the destination has an inferior channel with the source, it will not be able to solely decode the data packet with the rate of, just as its sustainable rate is (,). When , if the destination adopts the maximal ratio combining scheme, the relay node should forward the data packet at a higher rate of () due to the assumption that the independent copies are in the same modulation scheme for the receiver maximal ratio combining technique, which will improve the network performance compared with the “source-relay-destination” transmission scheme. Otherwise, when, if the destination adopts the maximal ratio combing scheme, the relay node should forward the data packet at a lower rate of (), which will sacrifice the original higher transmission rate . So, under the circumstances, the “source-relay-destination” transmission scheme will achieve superior network performance.

3.3. Details of the CAC-MAC Protocol

To support CAC-MAC protocol, some minor modifications to the IEEE 802.11 frames format are required, and meanwhile the RTS/CTS handshake defined in IEEE 802.11 is further extended to an RTS/CTS/HTS handshake. The modified CTS, HTS, and DATA frames format and the exchange of messages are shown in Figures 2 and 3, respectively.

(a) CTS frame format

(b) HTS frame format

(c) DATA frame format

Figure 2: Frames format for CAC-MAC.

(a) Control frames exchange

(b) Data frame exchange

Figure 3: The exchange of messages.

We now give a detailed description of CAC-MAC protocol from the views of source node, destination node, and relay node, respectively, as follows.

Source Node(1)When the length of a data frame is less than the RTS threshold, the source will transmit it directly to the destination by the basic access scheme of IEEE 802.11 DCF, which brings down the overhead in the network; otherwise, the source will send an RTS frame and wait for a CTS frame from the destination.(2)If the source receives a CTS frame but does not receive any HTS frame from neighbor nodes in a certain interval, it will transmit the data packet by RTS/CTS direct transmission scheme. If both CTS and HTS frames are received in sequence, the source transmits the data packet according to the “transfer mode” piggybacked in the HTS frame.(3)If an ACK is not received after an ACK timeout, the source should perform random backoff; otherwise, the source will handle the next data packet in its queue.

Destination Node(1)If the destination receives an RTS frame from the source, it sends a CTS frame including the measured channel conditions information between source and destination and waits for HTS frames from neighbor nodes.(2)If any HTS frame is not received before receiving data packet, indicating that the source transmits data packet by RTS/CTS direct transmission scheme, the destination processes the unique data packet. (3)If the destination receives an HTS frame before receiving data packet, it will process the received data packet according to the “transfer mode” piggybacked in HTS and then sends an ACK to the source.

Neighbor Node(1)The neighbor node judges whether itself is a candidate relay node for a given source-destination pair according to (1)–(3) in Section 3.1. If it is, it will wait for the timer to expire and then broadcasts an HTS frame to declare itself; if it receives an HTS frame before the timer reaches zero meaning it is not the best relay node for the given source-destination pair, the neighbor node should backoff.(2)When overhearing a data packet, a candidate relay node extracts the “relay address” information to judge whether it is the relay node for the given source-destination pair. If it is, the node will decode and forward the data packet to the destination.

4. Analysis of Adaptive Data Transmission Algorithm

In this section, we analyze the saturation throughput and average packet delay of the cross-layer adaptive data transmission algorithm based on a Markov chain model, taking finite retry limits into account. For simplicity, it is assumed that there are no hidden nodes or capture effect in the network.

4.1. Markov Chain Model

IEEE 802.11 DCF adopts a binary exponential backoff scheme. At each packet transmission, the backoff time is uniformly chosen in the range . The value of depends on the number of failed transmissions of a packet. At the first transmission attempt , which is the minimum contention window. After each retransmission due to a collision, is doubled up to a maximum value, , where represents the maximum backoff stage and is the largest contention window size. Once the reaches , it will remain at the value until it is reset. Therefore, we have: where is the backoff stage, and represents the maximum retransmission limits.

Let be the stochastic process representing the backoff time counter for a given node and be the stochastic process representing the backoff stage of the node at time . So we model the bidimensional process with the discrete-time Markov chain depicted in Figure 4.

Figure 4: Markov chain model.

Let be the stationary distribution of the Markov chain. It is assumed that each packet collides with constant and independent probability. As any transmission occurs when the backoff time counter reaches zero, the probability that a node transmits a packet in a randomly chosen slot time can be expressed as [12, 13] where can be obtained from

From (6), we can see that the transmission probability depends on the collision probability. The probability that a transmitted packet encounters a collision is the probability that at least one of the remaining nodes transmit in the same time slot. If all nodes transmits with probability, the collision probabilityis

Therefore, (6) and (8) form a nonlinear system with two unknowns and , which can be solved by the numerical method. Note that and .

4.2. Saturation Throughput

Let be the probability that there is at least one transmission in the considered slot time. When nodes contend on the same channel and each transmits with probability:

The probability that an occurring packet transmission is successful is given by the probability that exactly one node transmits and the remaining nodes defer transmission, conditioned on the fact that at least one node transmits:

Considering that a random slot is empty with probability and contains a successful transmission with probability and a collision with probability, the saturation throughput is given by where represents the length of data packet, is the average time that the channel is sensed busy due to a successful transmission, is the average time that the channel is sensed busy by each node during a collision, and is the duration of an empty slot time.

4.3. Average Packet Delay

A packet is dropped when it reaches the last backoff stage and experiences another collision. Let be the average number of slot times required for a packet to experience collisions in the stages [14]:

The average packet delay for a successfully transmitted packet is defined as the duration from the time the packet is at the head of its MAC queue ready to be transmitted until an acknowledgement is received. So the average packet delay, provided that this packet is not discarded, is given by where the average length of a slot time is

and is the average number of slot times required for successfully transmitting a packet given by:

4.4. Numerical Results

According to (11) and (13), we compare the saturation throughput and average packet delay achieved by our proposed adaptive data transmission scheme (adaptive) with the basic access scheme (basic access), RTS/CTS direct transmission scheme (rts/cts), “source-relay-destination” transmission scheme (s-r-d), and receiver maximal ratio combing scheme (mrc), through 1000 times Monte Carlo simulations. The main parameters are listed in Table 1 based on IEEE 802.11a standard.

Table 1: Parameters used in simulations.

Parameters
Values

MAC header
28 bytes

PHY header
24 bytes

RTS
44 bytes

CTS
39 bytes

HTS
51 bytes

ACK
38 bytes

Slot time
9 μ s

SIFS
16 μ s

DIFS
50 μ s

aCWMin
15 slots

aCWMax
1023 slots

7

5

Figure 5 reveals the relation between the saturation throughput and the number of nodes. It is shown that the throughput of all schemes deteriorate the number of nodes increases; however, the throughput of the adaptive data transmission scheme performs significantly better than that of the other schemes.

Figure 5: Throughput versus number of nodes ( bytes).

Figure 6 depicts the saturation throughput of five transmission schemes as the length of data frame at the MAC layer increases. When the data frame length is less than the RTS threshold, the saturation throughput of the adaptive data transmission scheme is equal to that of the basic access scheme. As the data frame length increases, the adaptive transmission scheme apparently outperforms the other four transmission schemes.

Figure 6: Throughput versus data frame length (nodes).

Figure 7 gives the packet delay varying with the number of nodes. It can be seen that the packet delay of the adaptive data transmission scheme is lower than that of the other schemes as the number of nodes increases.

Figure 7: Packet delay versus number of nodes ( bytes).

Figure 8 describes the packet delay adopting different transmission schemes. Similarly, when the data frame length is less than the RTS threshold, the packet delay of the adaptive transmission scheme is equal to that of the basic access scheme. As the data frame length increases, the adaptive data transmission scheme outperforms the other schemes.

Figure 8: Packet delay versus data frame length ( nodes).

Analytical results shown in Figures 5–8 demonstrate the effectiveness of the adaptive data transmission algorithm. This is due to the fact that the adaptive data transmission scheme considers both the length of data frame at the MAC layer and instantaneous wireless channel conditions compared with the other transmission schemes when data packets are transmitted.

5. Evaluation of CAC-MAC Protocol

In this section, we evaluate the performance of the CAC-MAC protocol compared with the legacy IEEE 802.11 protocol based on NS2 [15, 16].

We consider a wireless ad hoc network based on IEEE 802.11a where 15 nodes are randomly deployed in the area of 300 m × 300 m. In this network, there exits three source-destination pairs that are selected randomly and the remaining nodes can be exploited as relay nodes. Each of the three source nodes generates traffic at the constant bit rate (CBR) of bps with a packet length of 1500 bytes and the relay nodes work on the decode-and-forward (DF) mode. We change the value of “” to reflect the scenarios of different node traffic loads. We adopt Rayleigh fading model in the simulations.

We compare CAC-MAC protocol (CAC-MAC) with legacy IEEE 802.11 protocol (802.11) in terms of network throughput and packet delay.

Figure 9 reveals the network throughput varying with source nodes traffic load, that is, the value of . As each node traffic load increases, the network throughputs adopting CAC-MAC protocol and IEEE 802.11 protocol both increase up to saturation; however, the CAC-MAC protocol always significantly outperforms IEEE 802.11 protocol.

Figure 9: Network throughput versus node traffic load.

Figure 10 depicts the relation between packet delay and source nodes traffic load. It is evident that data packets in CAC-MAC protocol experience significantly less delay than in legacy IEEE 802.11 protocol as the source nodes traffic load increases.

Figure 10: Packet delay versus node traffic load.

As demonstrated in Figures 9 and 10, CAC-MAC protocol can achieve a much higher network performance than the legacy IEEE 802.11 protocol in terms of network throughput and packet delay. These improvements primarily stem from the novel cross-layer adaptive approach to design the cooperative MAC, which involves interaction of both MAC layer and physical layer.

6. Conclusions

In this paper, we propose a cross-layer adaptive cooperative MAC (CAC-MAC) protocol for IEEE 802.11 DCF-based wireless ad hoc networks, which consists of a realistic cooperative framework to exploit both MAC layer and PHY layer information. In CAC-MAC protocol, each data transmission is based on two planes: control plane and data plane. The control plane is to determine the data transmission mode, in which the main issues include relay selection and the cross-layer adaptive data transmission algorithm. The data plane is in charge of transmitting, receiving, or forwarding data packets according to the transmission mode. Simulation results based on NS2 show that our proposal can significantly improve network throughput and reduce packet delay compared with legacy IEEE 802.11 protocol.

Acknowledgments

The authors would like to thank the Editor Shukui Zhang and the anonymous reviewers for their constructive comments and valuable suggestions. This work was supported by the National Natural Science Foundation of China (no. 61002032) and the Doctoral Fund of Ministry of Education of China (no. 20094307110004).

References

A. Sendonaris, E. Erkip, and B. Aazhang, “User cooperation diversity—part I: system description,” IEEE Transactions on Communications, vol. 51, no. 11, pp. 1927–1938, 2003.

A. Sendonaris, E. Erkip, and B. Aazhang, “User cooperation diversity—part II: implementation aspects and performance analysis,” IEEE Transactions on Communications, vol. 51, no. 11, pp. 1939–1948, 2003.

J. N. Laneman, D. N. C. Tse, and G. W. Wornell, “Cooperative diversity in wireless networks: Efficient protocols and outage behavior,” IEEE Transactions on Information Theory, vol. 50, no. 12, pp. 3062–3080, 2004.

G. Kramer, M. Gastpar, and P. Gupta, “Cooperative strategies and capacity theorems for relay networks,” IEEE Transactions on Information Theory, vol. 51, no. 9, pp. 3037–3063, 2005.

T. E. Hunter and A. Nosratinia, “Diversity through coded cooperation,” IEEE Transactions on Wireless Communications, vol. 5, no. 2, pp. 283–289, 2006.

A. Bletsas, A. Khisti, D. P. Reed, and A. Lippman, “A simple cooperative diversity method based on network path selection,” IEEE Journal on Selected Areas in Communications, vol. 24, no. 3, pp. 659–672, 2006.

H. Zhu and G. Cao, “rDCF: a relay-enabled medium access control protocol for wireless ad hoc networks,” IEEE Transactions on Mobile Computing, vol. 5, no. 9, pp. 1201–1214, 2006.

P. Liu, Z. Tao, S. Narayanan, T. Korakis, and S. S. Panwar, “CoopMAC: a cooperative MAC for wireless LANs,” IEEE Journal on Selected Areas in Communications, vol. 25, no. 2, pp. 340–353, 2007.

T. Korakis, Z. Tao, Y. Slutskiy, and S. Panwart, “A cooperative MAC protocol for ad hoc wireless networks,” in Proceedings of the 5th Annual IEEE International Conference on Pervasive Computing and Communications Workshops, pp. 532–536, March 2007.

F. Liu, T. Korakis, Z. Tao, and S. Panwar, “A MAC-PHY cross-layer protocol for wireless ad-hoc networks,” in Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC '08), pp. 1792–1797, Las Vegas, Nev, USA, April 2008.

J. W. Mark and W. Zhuang, Wireless Communications and Networking, Prentice-Hall, Upper Saddle River, NJ, USA, 2003.

G. Bianchi, “Performance analysis of the IEEE 802.11 distributed coordination function,” IEEE Journal on Selected Areas in Communications, vol. 18, no. 3, pp. 535–547, 2000.

H. Wu, Y. Peng, K. Long, S. Cheng, and J. Ma, “Performance of reliable transport protocol over IEEE 802.11 wireless LAN: Analysis and enhancement,” in Proceedings of the IEEE INFOCOM, pp. 599–607, New York, NY, USA, June 2002.

P. Chatzimisios, A. C. Boucouvalas, and V. Vitsas, “IEEE 802.11 packet delay—a finite retry limit analysis,” in Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM '03), pp. 950–954, December 2003.

Network Simulator ns-2, http://www.isi.edu/nsnam/ns/

Q. Chen, F. Schmidt-Eisenlohr, D. Jiang, M. Torrent-Moreno, L. Delgrossi, and H. Hartenstein, “Overhaul of IEEE 802.11 modeling and simulation in NS-2,” in Proceedings of the 10th ACM Symposium on Modeling, Analysis, and Simulation of Wireless and Mobile Systems (MSWiM '07), pp. 159–168, October 2007.