A Fast-and-Fair Collision Resolution Protocol Tailored for Ad Hoc Wireless Networks

: Wireless technologies have permeated a significant number of devices over the years. On the other hand, Medium Access Control (MAC) protocols strive to deal with an increasing number of contending nodes on crowded frequency bands. This work presents an efficient medium access control resolution protocol. The proposed protocol, termed Collision Resolution Protocol (CRP), uses pulse / tone signaling that works in both Collision Detection (CD) and Non-Collision Detection (NCD) environments. Given n >1 contending nodes, CRP selects a single transmitting node in 16 n and 40 n time slots, respectively, for the CD and the NCD scenarios, with probability of at least 1-2 -1.5 n . Furthermore, CRP does not require an exact number, or estimation, of the contending nodes. Extensive simulations on the OMNeT++ shows that, for n = 256 and considering CD-capability, CRP successfully grants channel access in 0.03% of the time required by the IEEE 802.11 standard while improving the number of transmissions per second in 100%. In addition, CRP provides fair resource allocation and reduced channel access latency.


Introduction
Owing to its flexibility, low-cost and easydeployment, wireless technologies have become commonplace in a wide-range of consumer electronics, such as smart phones, cameras and e-readers. Likewise, ad hoc networks have gained significant attention as they allow wireless devices to communicate with each other without the need of a fixed and usually costly network infrastructure. Ad hoc networks usually comprise of several channels, which are shared among the contending nodes (Perkins, 2008). Packet collision occurs when two or more adjacent nodes attempt to transmit concurrently on the common channel. In such case, these packets are garbled beyond recognition. An increase on the number of contending nodes usually incurs on high channel access delays and reduced network throughput (Kumar et al., 2006). To decrease the chance of packet collision, various Medium Access Control (MAC) protocols have been proposed in the literature (Bharghavan et al., 1994;802.11b Working Group, 1997). Backoff strategies have been employed such that nodes wishing to communicate need to wait their turn before transmitting. The IEEE 802.11 standard (802.11b Working Group, 1997) applies the Binary Exponential Backoff (BEB) technique to decrease the chance of collisions among contending nodes. When a node transmits, the contending nodes interrupt their backoff counter until the channel becomes idle. After that, these nodes continue to defer their backoff counter. The IEEE 802.11 provides acceptable results for a limited number of contending nodes (Bianchi, 2000).
Mobile devices enhanced with wireless technologies have increased significantly in the last few years. Such increase exacerbates the demands more elaborated solutions to comply with the application's Quality of Service (QoS) constraints. Thus, several random access control protocols have been proposed in the literature (Bharghavan et al., 1994;802.11b Working Group, 1997;Song et al., 2003;Venkitaraman et al., 1999). Control frames, such as Request to Send (RTS) and Clear to Send (CTS), have been used to reduce the effects of hidden terminal problem (802.11b Working Group, 1997). The Dual Busy Tone Multiple Access (DBTMA) (Haas and Deng, 2002) and Busy Tone Multiple Access (BTMA) (Kleinrock and Tobagi, 1975) scheme uses BEB coupled with out-of-band signaling (a.k.a. pulse/tone) to effectively address the hidden and exposed terminal problems. Ma et al. (2012), the authors use pulse/tone signals to reduce the collision probability of RTS/CTS control frames. Recently, (Guimarães et al., 2015) proposed the use of pulse/tone signaling to reduce the overhead of control frames on IEEE-based MAC protocols. In (Lu et al., 2015), the authors successfully implemented pulse/tone signals on a test-bed using the Microsoft Sora Platform for Cognitive Radios Networks (CRN) (Tan et al., 2009).
Tree-based algorithms (split, stack or collision resolution) usually implement a partitioning strategy, allowing nodes to receive a free slot for communication (Wattanamongkhol, 2013). Mathys and Flajolet (2006) presented a group and split approach, called Q-ary split. The main idea is to gather the colliding stations in Q > 2 groups and employ a split approach to reduce collision probability in each group. Wattanamongkhol (2013) proposes the Uniform Selection (UNI) protocol where the contending stations uniformly elect a time slot for transmission. The outcome of their attempt is later propagated to the contending stations. Such information is then used to reduce the chance of collision. Tree-based algorithms usually assume that the number of contending stations is known a priori (Wattanamongkhol, 2013;Mathys and Flajolet, 2006). Nevertheless, on a distributed environment, it may be not possible to obtain a precise number, or even an estimate, of the contending stations (Nakano and Olariu, 2002). Felice et al. (2013), the authors attempt to determine the number of contending nodes by monitoring busy slots. However, their solution is not able to deal with a large number of transmitting stations.
This work presents the CRP, a collision resolution protocol that provides collision free transmission of data frames while providing for a fast selection of a transmitter among n>1 contending nodes. CRP incorporates some of the features of the aforementioned tree based algorithms. Nevertheless, CRP does not require a prior knowledge on the number of contending stations. Similarly to the works in (Haas and Deng, 2002;Ma et al., 2012;Guimarães et al., 2015), CRP takes advantage of pulse/tone signaling to elect a transmitter among a group of contending stations. To assess the goodness of the proposed scheme, we first consider the case in which the nodes are equipped with collision detection (CD) mechanisms (Tseng et al., 2002). As it will be explained in the subsequent sections, a CD-enhanced node can properly obtain the channel status in the current time slot. In particular, a CDenabled station can determine if its own transmission resulted in collision or not. We prove that, given n>1 CD-enabled stations, CRP can effectively select a transmitter among the contending nodes in 16n time slots with probability of at least 1-2 −1.5n . Next, CRP is modified to handle the case in which the nodes are not enhanced with CD-capabilities. We show that, even when the nodes are not enhanced with CD capabilities, CRP can effectively select a transmitter among n>1 contending nodes in 40n time slots with probability of at least 1-2 −1.5n . Lastly, CRP is compared with the IEEE 802.11 BEB mechanism using the OMNET++ simulator (OC, 2016a). Simulation results show that CRP outperforms BEB.
The remainder of this paper is organized as follows: Section 2 presents the network communication model considered in this work. Section 3 begins by presenting a fast and fair collision resolution mechanism, termed CRP, for the case where the nodes are empowered with collision detection capabilities. Next, the CRP is extended to deal with the non-collision detection scenario. Section 4 shows the simulation environment and performance assessment of the proposed mechanism. Finally, Section 5 presents the conclusions and directions for further investigation.

Communication Model
This section presents the communication model and proposed Collision Resolution Protocol. The network is defined as a complete, undirected, graph G = (V, E), where E is a set of edges (links) and V = {v 1 , v 2 , ⋅⋅⋅,v n } is a set of nodes (vertices), with E⊆V 2 . Each node is equipped with a radio transceiver, which implements the IEEE802.11 standard. As in (Haas and Deng, 2002;Shih et al., 2009;Ma et al., 2012), nodes are reassumed to be capable of receiving and sending data packets along with pulse/tone signals. Pulse/Tone signals have been used to notify nearby nodes about a particular condition of the network, when the identity of the source node is irrelevant. Different from control and data frames, pulse/tone signals contain no information (Deng and Haas, 1998). Hence, they can be transmitted and received faster than data and control frames. According to (Kleinrock and Tobagi, 1975), pulse/tone can be properly identified if they are transmitted for at least 5µs. In this study, time is assumed to be slotted, matching the duration of a pulse/tone signal. Data packets, on the other hand, may require several time slots to be correctly transmitted/received. This work assumes that the stations maintain a certain level of synchronization, similar to that considered in (Wattanamongkhol, 2013;Mathys and Flajolet, 2006;Nakano and Olariu, 2002;Felice et al., 2013;Zhou and Lai, 2005). For instance, synchronization could be obtained using a mechanism like the Self-Adjusting Timing Synchronization Function (SATSF) algorithm (Zhou and Lai, 2005). The SATSF is compatible with IEEE 802.11 Timing Synchronization Function (TSF). At any time, a node's transceiver v i , (1≤i≤n), can be: (i) transmitting; (ii) receiving; or (iii) idle. Furthermore, when two or more nodes transmit at the same time, the intended receiver fails to correctly decode the transmitted information (Tseng et al., 2002). As illustrated in Fig. 1, the status of a channel, at the end of a time slot, is defined as: • SINGLE: Only one node transmits; or • COLLISION: Two or more nodes transmit; or • NULL: No node transmits A station equipped with Collision Detection (CD) is capable of correctly estimate the status of the current time slot of a channel. In other words, a CD-enabled node v i (1≤ i ≤ n), after its own transmission, can distinguish whether the channel status is SINGLE, COLLISION or NULL. Nevertheless, wireless stations are typically built with half-duplex antennas. For this reason, after transmitting, the transmitter cannot determine the channel status. That is, a transmitting station without CD capabilities (NCD-node) is not able to identify the resulting channel status after its own transition. The proposed CRP, works for both CD and NCD nodes.

Collision Resolution Protocol
In this section, the CRP protocol is presented. The CRP uses tone signal to develop a data frame, collisionfree, channel control access. CRP implements an effective and fast scheme for transmitter selection. To achieve this, CRP continuously reduces the number of contending stations until a single transmitter is selected. From an initial group of nodes G 1, where |G 1 |>1, CRP is able to always select a smaller subset of nodes until a winner is selected. This process is illustrated in Fig. 2. The next subsection presents the CRP protocol for the scenario in which the nodes are empowered with Collision Detection capabilities (CD). When this is the case, we show that the CRP is able select a station among n>1 contenting nodes in 16n time slots with probability of at least 1-2 −1.5n . We then go on to extend the CRP to the case in which the nodes have Non-Collision Detection (NCD) capabilities. We show that the CRP for NCD is able to select a station among n>1 contenting nodes in 40n time slots with probability of at least 1-2 −1.5n . The details of the CRP for the CD scenario are presented below.

CRP for Collision Detection Scenario
As mentioned in Section 2, simultaneous transmission of two or more nodes leads to packet loss. Suppose that, at a given timeslot T, a subset S≥2 of nodes have data items ready to be transmitted. To guarantee a collision-free transmission of a data frame, a single node must be selected to transmit at a time. To achieve this, CRP implements the GroupSplitting-CD routine. As it will be shown later, the problem of selecting a transmitter can be computed in O(n) time slots with probability at least 1-2 −1.5n .
Let S≥2 denote the number of nodes contending for channel access at a time. The GroupSplitting-CD procedure divides the nodes in S into non-empty subsets S 1 and S 2 . The subset S 2 is then divided into two nonempty subsets S 2 and S 3 . The same procedure is then applied to S 3 . Generalizing, a subset S i is divided into non-empty subsets S i and S i+1 . This process is repeated until a subset containing a single element is found (|S i | = 1). Let v w be remaining station in station in S i . Then, station v w is proclaimed the winner of the contention period. After that, all nodes learn that a winner was correctly selected and leave the contention phase. These nodes postpone their transmission until the next iteration of transmission selection, which will take place after node v w completes its data frame transfer. One can confirm that routine GroupSplitting-CD divides the set S i into two non-empty subsets, S i and S i+1 . Recall from Section 2 that every CD-enabled node knows whether |S i | = 1 or |S i |≥2.
Likewise, it is possible to determine whether |S i+1 | = 1 or |S i+1 | ≥ 2. GroupSplitting-CD uses Status(head) and Status(tail) to register the resulting channel status at the end of a time slot. Note that, during the partitioning process, tone transmissions always occur at different time slots, for instance: n and n+1 time slots (routine 1, lines 3 and 5). Figure 3 presents an example of the CRP protocol's behavior. Figure 3a shows the splitting operation process for an initial group S, as defined in Routine 1. Figure 3b shows the mapping process between the subdivisions and the channel status throughout the execution of the CRP protocol. At the beginning of the protocol, all nodes in S are active. Whenever a winner is elected, all nodes exit the actual contention phase. According to the example, the initial subset S is formed by 5 contending stations v 1 , v 2 , v 3 , v 4 and v 5 . In the first iteration, Figure 3a, the stations executing Routine 1 are divided into two subsets: S i = {v 1 , v 3 , v 5 } (head) and S i+1 = {v 2 , v 4 } (tail). Figure 3b denotes the channel state at the end of the first and the second slot (1 st iteration). In the second iteration, the subset S i is divided into an unbalanced way. That is, the subset S i+1 = {v 1 , v 3 , v 5 } and S i+2 = ∅. These unbalanced subsets return true at the condition test Status(tail) == NULL in Routine 1 (line 7), forcing another subdivision of the subset S i . The third iteration divides the subset S i in two nonempty subsets S i+1 = {v 3 } (head) and S i+2 = {v 1 , v 5 } (tail). As |S i+1 | = 1, station v 3 declares itself as the winner of the current contention period. At this point, all stations wait for the channel allocation process, which is initialized by station v 3 . This process is further discussed in section 3.3.
The details of the CRP protocol are shown in Routine 2. Notice that the task of verifying whether |S i | = 1 can be done through the channel status acquired in GroupSplitting-CD, without any further transmission. Next, we compute the time slots involved in routine GroupSplitting-CD. Assume that m, (m≥2), nodes are to be divided into two non-empty sets using routine GroupSplitting-CD. In this case, an iteration of the while-loop, in routine GroupSplitting-CD, is considered successful if it succeeds in dividing the set into two non-empty subsets. Let m be the random variable representing the number of nodes that chosen head. Since m≥2, the probability of an iteration to be successful can be expressed as: Pr 1 1 1 Pr 0 Pr Since a successful iteration generates two nonempty subsets, it is obvious that CRP demands, in the worst-case scenario, log n successful iterations of routine GroupSplitting-CD. Next, we evaluate the number of time slots to guarantee, with high probability, the existence of log n successful iterations of GroupSplitting-CD. Let Y be the random variable defining the number of successes among 8n Bernoulli trials, with parameter p = 1/2. Let E[Y] denote the expected value of Y. Clearly, E[Y] = np = 4n. To analyze the tail of the binomial distribution, we use of the following estimate, commonly referred to as Chernoff bound (Motwani and Raghavan, 1995): By virtue of (1) with ò = 3/4, the probability that 8n trials contain fewer than log n successes are: We just proved that with probability at least 1-2 −1.5n , among the first 8n iterations of the while-loop in routine GroupSplitting-CD there must exist at least log n successful iterations. Since each while-loop takes two time slots, the CRP protocol terminates in 8n×2 = 16n time slots with probability at least 1-2 −1.5n . The above discussion is summarized below.

Lemma 1
The CRP Protocol can Elect a Transmitting Node Among n CD-Enabled Contending Stations, in a Single-Hop Ad Hoc Network, in at Most 16n Time Slots with Probability at Least 1-2 −1.5n Our next task is to show that the CRP can be extended to handle the case in which the contending nodes are not empowered with CD capabilities.

CRP for Non-Collision Detection Scenario
This section enhances the CRP protocol for handling the Non-Collision Detection (NCD) scenario. Recall from Section 2 that a NCD-station is not able to recognize the status of the channel after its transmission. That is, after transmitting a packet, the transmitting NCD-station cannot specify whether the resulting channel status is SINGLE, COLLISION or NULL. Thus, the aim of this section is to enhance the CRP to tackle the above issue. For this purpose, the GroupSplitting-CD routine is revised to allow NCD-nodes to acquire the status of the channel. The details of the NCD version of the GroupSplitting-CD routine, termed as GroupSplitting-NCD, are shown in Routine 3. The Do While-loop in Routine GroupSplitting-NCD can be viewed as two main phases with distinct goals: Notification and transmission. Starting with the transmission phase, an iteration of Routine 3 splits the nodes into two nonempty groups H i and T i . The stations in H i transmit on the channel while the stations in T i monitor and record the resulting status of the channel. After that, the monitoring group notifies the transmitting group about the resulting channel status recorded. In the notification phase, the challenge is to successfully notify the transmitting stations about the resulting channel status overheard. As discussed in section 2, a tone signal carry no information. In this context, the codification of the NULL, SINGLE or COLLISION status are made varying the transmission time of the tone signal transmissions.
Clearly, three possible states can be encoded using two regular times slots of 5µs each in an obvious way. Routine 4 shows the details of the encoding scheme. When the observed resulting channel status is SINGLE, the notification process is as presented in the Fig. 4. That is, as the transmission phase is detected as SINGLE, the stations wait one slot and transmit a tone signal in the second one. In case of COLLISION, the stations transmit a tone for one time slot only, as shown in Fig. 5. In case the resulting channel status is NULL, the stations remain silent for two consecutive time slots (Fig. 6). The above scheme allows the stations in the transmitting group to know the result status of the channel after their transmissions. Clearly, Routine 3 can be executed by a station without Collision Detection capability.
From the above discussion, one can confirm that each group (head/tail) is capable to determine the resulting channel status after its transmission. That is, the routine GroupSplitting-NCD is able to partition the input set S i into two non-empty subsets, S i and S i+1 . That is, each node knows whether |S i |=1 or |S i |≥2 from the channel Status (head|tail). Likewise, it can be decided whether |S i+1 | = 1 or |S i+1 |≥2. The next step is to estimate the time slots that the protocol takes to finish its execution. Note that the CRP protocol has not been modified and it requires no transmission. In the while-loop of Routine 3, an iteration takes two time slots to complete the transmission phase. On the other hand, the notification phase is completed with 2 (two) or 3 (three) time slots. The notification phase takes two time slots when |S i |≥2 and |S i+1 |≥2 in the while-loop of Routine 3. This is the case when COLLISION is detected in both sets as illustrated in Figure 5. Otherwise, the notification phase takes three time slots, which occurs when one of the set is empty, that is |S i |≥2 and |S i+1 | = ∅, or vice-versa. Likewise, |S i |≥2 and |S i+1 |=1 and vice-versa also takes three time slots. Hence, an iteration, of the while-loop, takes at most 5 (five) time slots: two for the transmission phase and three for the notification phase. Using the same reasoning of the previous section and by virtue of Lemma 1, the CRP protocol for NCD-scenario ends in 8n×5 = 40n time slots with probability at least 1-2 −1.5n . Thereby, Lemma 2 is defined as follows:

Lemma 2 The CRP can Elect a Transmitting Node Among n Contending NCD-nodes, in a Single-Hop Ad Hoc Network, in at Most 40n Time Slots with
Probability at Least 1-2 −1.5n An iteration of GroupSplitting-NCD algorithm can be completed in 25µs, admitting that a tone signal can be transmitted in a 5µs slots. In this case, an iteration takes 10µs in the transmission phase and 15µs in the notification phase. In what follows, we show how the IEEE 802.11 standard can take advantage of the CRP as a replacement of the current BEB mechanism (802.11b Working Group, 1997).

IEEE 802.11 DCF Enhanced with CRP
This section presents a brief overview of the IEEE 802.11 Distributed Coordination Function (DCF) operation mode (802.11b Working Group, 1997) and shows how the DCF can be enhanced with the proposed CRP protocol. The IEEE 802.11 standard uses the listen-before-talk strategy. That is, a node wishing to communicate must first verify the channel status. In case the channel status is idle for a time equal to Distributed Inter-Frame Space (DIFS), the contending node selects a random backoff, which is decremented at each idle time slot. When the backoff reaches zero, the node transmits the desired packet. Collisions may occur when two or more stations transmit at the same time. To reduce the chance of collision, the Binary Exponential Backoff (BEB) is employed. The BEB requires that, on a collision event, the backoff window to be extended (802.11b Working Group, 1997).  Figure 7 shows a successfully communication cycle of IEEE 802.11 protocol using both BEB and CRP. A successfully communication cycle comprehends the exchange of control frames, data frame and inter-frame spacing. This cycle can be viewed as two distinct parts: (i) contention phase and (ii) data transmission phase. The contention phase, when RTS/CTS frames are considered, involves the time necessary to complete the following sequence: DIFS + BEB + SIFS + RTS + SIFS + CTS. The data transmission phase involves SIFS + DATA + SIFS + Ack (802.11b Working Group, 1997). While some parts of the above cycle are fixed, such as DIFS and SIFS, others depend on the data rate used, number of contending nodes, etc. Of interest is the time taken by the BEB mechanism, which is influenced by the number of collisions and contending nodes. According to Fig. 7, one may observe that CRP can replace the BEB mechanism without further modifications to the DCF communication cycle. Once the nodes running the CRP have the capacity to issue in-band pulse/tone signals, these signals can be employed to decrease network latency. Consequently, in what concerns to Data transfers, nodes running the CRP may employ Data-pulse sequence. It is important to state that pulse and tone signals can be differentiated either by phase, frequency, or amplitude (Liberti and Rappaport, 1999), allowing the nodes to deal properly with these signals. As it will be shown in the subsequent section, the CRP provides substantial gains as compared with the current BEB mechanism.

Performance Evaluation
This section presents the performance evaluation of the proposed CRP. To this end, the CRP has been implemented in the OMNeT++ 4.6 Simulator and compared it against the BEB mechanism (Binary Exponential Backoff) (802.11b Working Group, 1997). The next subsections detail the simulation environment and present the main simulation results.

Simulation Environment
The CRP has been implemented in the OMNeT++ 4.6 (OC, 2016a). For modeling the physical and data link layers, the MiXiM framework has been used (OC, 2016b).

Channel Allocation Time
This subsection evaluates the number of channel reservations provided by the CRP for both CD and NCD scenarios. CRP behavior consists of decreasing the number n of contending nodes until a transmitter is selected. Therefore, the first evaluation is related to the time spent to properly elect a single station in a group of n>1 stations. This evaluation considers the number of iterations, since the time will be proportional to it. Fig. 8 shows the average number of times slots for different number of contending nodes. The X-axis presents the number of contending stations while the Y-axis presents the time slots spent by CRP to choose a single transmitting station.
As previously referred, CRP needs at most log n successful iterations to properly choose a single transmitter. The simulation results confirm that CRP takes, on average, ≈2×log 2 n times slots for CRP (CD) and ≈6×log 2 n for CRP (NCD) to select a transmitter. These values are within the interval defined by Lemma 1, which is 16n times slots for CRP (CD) and 40n times slots for CRP (NCD) as defined by Lemma 2.
Next, we present an evaluation related to the number of channel reservations that can be done in a determined time. In this scenario, Data and Ack frames are assumed to take no time to be transferred, so that the nodes will continuously run the contention mechanisms. RTS and CTS frames, however, are still considered as they are used to inform the remaining stations that a communication is taking place. This setting is closely related to that one in which many data channels are available, although the contention resolution occurs in the control channel, similarly to the works in (Almotairi and Shen, 2010;Li et al., 2003). In other words, it would be interesting to have an evaluation about the maximum number of stations per second that can be granted channel access.  Figure 9 shows the successful transmissions per second for an increasing number of stations. Note that BEB decays fast when the number of contending stations is high. In turn, CRP reaches a significant increase in the overall transmissions per second, when compared to BEB. As mentioned in Section 3.2, compared with a CDstation, a NCD-station uses 4 additional time slots per iteration in the splitting process. Consequently, CDstations attain better performance. The maximum theoretical number of transmissions has its calculation detailed in (Jun et al., 2003). So, our work uses this approach to calculate the maximum theoretical number of transmissions for the CRP protocol (Theoretical (NCD) in the Fig. 9). As can be seen, the CRP is close to its theoretical limit. Compared to BEB, with n = 256, CRP (CD) and (NCD) can improve the number of successful transmission up to ≈246% and ≈178%, respectively. Figure 10 presents the average time spent for each protocol to grant channel access to a varying number of contending stations. CRP protocol grants channel access in a portion of the time spent by BEB. This occurs because CRP decreases the contending nodes by half in each iteration. Indeed, the time spent by BEB is exponentially related to the number of contending nodes. In turn, the time spent by CRP has a logarithmic relation to the stations contending for channel access.
Next, we evaluate the time taken by an individual station to be granted channel access. Figure 11 shows the simulation results for n = 256. Also, Fig. 11 presents the trend using linear regression and the respective best-fit equations. From this figure, it is important to note that CRP implementation grants channel access in a portion of the time spent by BEB. Clearly, with n = 25, BEB cannot meet the constraints to operate with real-time applications due to its high latency (Filho et al., 2012). In fact, some applications such as Voice over IP (VoIP) require round-trip time to be at most 300 ms (Zhai et al., 2006). However, for n = 256, BEB is not able to meet this requirement. As an alternative, CRP can provide channel access in a time shorter than 1ms. Therefore, CRP can take advantage of its low latency to handle applications that have severe QoS constrains, such as online gaming (Chen et al., 2006).

Evaluation of the Communication Process
This subsection evaluates the performance of the CRP protocol when considering Data frames with a significant payload size (1024 bytes). As previously mentioned, after a successful RTS-CTS exchange, CRP employs Data-tone sequence instead Data-Ack sequence, which is used in BEB. Figure 12 presents the number of transmissions per second for an increasing number of contending stations. Compared against the BEB mechanism, with n = 256, CRP (CD) delivers nearly twice the number of transmissions. CRP (NCD) delivers ≈1.93 times more transmission than the BEB. The average channel access time, presented in Fig. 13, exhibits a similar behavior of that observed in Fig. 10. However, with a payload of 1024 bytes, the performance of the BEB deteriorates faster. On average, each contending node waits at least 1.9 sec to obtain channel access for n = 256. On the other hand, CRP protocol grants channel access in less than 1ms. That is, CRP allows channel access in 0.03% of the time spent by BEB. The performance difference is due to the control frame collisions, as can be observed in Fig. 14. The figure shows the RTS frame collisions experienced by the BEB mechanism. This setting considers a payload of 1024 bytes (denoted as BEB (1024)) without considering the Data-Ack sequence, denoted simply as BEB. Note that the latter uses the same approach as defined in Subsection 4.2. As can be seen, when the number of contending nodes is 256, approximately 654 collisions per second occur when BEB scheme is considered (1024 bytes). That is, for each contending station there are 2.55 collisions on average.

Conclusion
This paper proposed a channel reservation technique that takes advantage of pulse and tone signals to obtain a collision-free channel access. Our technique, termed Collision Resolution Protocol (CRP), recursively decreases the number of contending stations. Using this process, CRP provides a fast channel access. Furthermore, CRP works with stations empowered with and without Collision Detection (CD) capabilities.
This paper proves that the task for choosing a single transmitter from a subset of n≥2 contending stations can be performed in 16n and 40n time slots, for the CD and Non-CD stations, respectively, with probability at least 1-2 −1.5n . Empirical evaluation on the OMNeT++ simulator has been used to assess the goodness of the proposed CRP protocol. The traditional Binary Exponential Backoff (BEB), defined in the IEEE 802.11 standard has been selected for comparison. The simulation results show that CRP grants channel access using 0.03% of the time spent by the BEB mechanism. Moreover, the results show that CRP can deliver 100% more transmissions per second than BEB. The results show that CRP can grant channel access in a fraction of time when compared with the traditional BEB while providing a fair resource allocation. These features are highly desirable when severe QoS constraints are considered. Hence, we plan to explore the use of CRP technique to improve the resources allocation management in a multichannel environment as well as to consider mobility and multi-hop settings.