- 论坛徽章:
- 0
|
RXThresh_ is the reception threshold. If the received signal strength is
greater than this threshold, the packet can be successfully received.
CSThresh_ is the carrier sensing threshold. If received signal strength is
greater than this threshold, the packet transmission can be
sensed. However, the packet cannot be decoded unless signal strength is
greater than RXThresh_.
CPThresh_ refers to the capture phenomenon. If two packets are received
simultaneously, i.e. they collide, it is still possible to receive the
'stronger' packet if its signal strength is CPThresh_ times the other
packet. For example, if CPThresh_ is 10.0, the stronger packet in a
collision can be decoded if its signal strength is at least 10.0 times
that of the other packet; otherwise, both packets are lost in the
collision.
-----------
To
set communication radius, you have to set the receiving threshold
value, RXThresh_. This can be obtained by running the program
~ns/indep-utils/propagation/threshold.cc (compile using g++ and the
option –lm) and specifying the propagation model and the desired
radius. Then in your script, before creating the simulator, use the
command “Phy/WirelessPhy set RXThresh_ ”. Ideally, you would also like
to set the transmission power, Pt_ and the carrier sensing threshold,
CSThresh_. But I still don’t know how to obtain their values. Some
standard values for Pt_ are: 7.214e-4 for 100m, 8.5872e-4 for 40m. Also
note that the effectiveness of the radius depends on the propagation
model. While it works perfectly for FreeSpace, it might not work as
well for the other two.
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/94593/showart_1928852.html |
|