Wireless Networking Lab 106: Rate Control


This exercise is aimed at exploring how rate control and adaptation of carrier sense threshold can affect spatial reuse (and hence aggregate throughput) in a multi-hop network.

Signal-to-Interference Noise Ratio (SINR) required for successful reception at the receiver depends on the transmission rate being used. The ideal capacity of a channel with bandwidth B is given by Shannon's Equation: W=Blog(1+SINR), yielding SINR(reqd) >= (2^(W/B)-1). However, most commonly used modulation schemes tend to have much greater SINR requirement than the ideal. Since ns2 does not model cumulative interference, we shall work within its constraints (at the expense of accuracy), and instead work with the receiver sensitivity (RXThresh), and the capture threshold (CPThresh). The former gives the minimum received signal power necessary to attempt decoding a packet. The latter indicates the relative signal level at which a new packet can disrupt an ongoing reception, and we interpret it as the minimum SINR. We use the following sensitivity values (obtained from the Cisco Aironet 350 adapter):

Rate: Receiver Sensitivity
1 Mbps: -94 dBm
2 Mbps: -91 dBm
5.5 Mbps: -89 dBm
11 Mbps: -85 dBm

For capture threshold, we use the following min. SINR values (values taken from Yee et al, Understanding Wireless LAN performance trade-offs, Comm. Systems Design, Nov. 2002):

Rate: Receiver Sensitivity
1 Mbps: -2.92 dB
2 Mbps: 1.59 dB
5.5 Mbps: 5.98 dB
11 Mbps: 6.99 dB

Recall that when Physical Carrier Sense is used, a node that wishes to transmit a packet must first assess the channel. If the energy detected on channel > Carrier-Sense Threshold, the station must assume that the channel is busy, and defer. Thus, a small carrier sense threshold (CSThresh) implies that even nodes quite far away from a transmitting node shall detect the channel as busy, and defer. On the contrary, a large carrier-sense threshold implies that only nodes very close to a transmitter shall assess the channel as busy. Recall that carrier-sense range (CSRange) is the distance from the transmitter upto which nodes assess the channel as busy, and thus CSThresh and CSRange possess an inverse relationship with each other. A larger CSRange implies more space is "reserved" by a transmission as a "guard zone" to avoid interference/collisions. A smaller CSRange implies there can be more concurrent transmissions, but chances of collision are higher.

Observe that a higher transmission rate implies a higher RXThresh requirement at the receiver, and decreases range. The increased capture threshold increases sensitivity to collision. Lower rates allow for greater resilience to interference, but take up more channel time.

This provides the background for this exercise. A small CSRange implies greater concurrency but more interference. We wish to explore whether this may be offset by lowering transmission rate (and increasing interference resilience).

ns2 Instructions

1. Get the tcl script from here.
2. A script "rcs_sim.tcl" is provided. This script sets up a simulation topology of 100 nodes arranged in a 10x10 grid with a grid-spacing of 150m. The IEEE 802.11b protocol is used, and the RTS/CTS mechanism is effectively shut-down by setting the RTSthreshold to a suitably high value. 25 CBR conversations between randomly chosen source-destination pairs are set up. The script takes as arguments the TX-Rate (in bps), the RxThresh (in Watts), CPThresh (ratio; no units), and the CSThresh (in Watts). Script Usage is : ns multi-hop.tcl -rate {rate (Mbps)} -rxthresh {rcv_threshold} -cpthresh {capture-threshold} -csthresh {carrier-sense threshold (W)}
3. Tx-Rate can take values 1.0Mbps, 2.0Mbps, 5.5 Mbps, and 11.0 Mbps, with the corresponding RXThresh values, and CPThresh values for that rate to be supplied from the tables above. For each value of RXThresh, use values of CSThresh=0.9*RxThresh, 0.5*RXThresh, 0.1*RXThresh, 0.05*RXThresh. Remember to perform the necessary conversions to appropriate units.
4. Run the simulations for all combinations of TX-rate+RXThresh and CSThresh. Obtain the aggregate CBR throughput for each run. Plot throughput versus TX-rate for each value of (RXThresh/CSThresh), on the same graph.


What trends may be observed? For this simulation topology, what combination seems to yield the best performance?


1. Overview of IEEE 802.11
2. Know ns2