您的位置:首页 > 其它

NS2中节点的CSThresh_和RXThresh_设置

2013-09-14 11:00 211 查看

1.CSThresh_和RXThresh_两个阈值的解释

在802.11的载波侦听机制中,主要的有 Physical Carrier Sense和Virtual Carrier Sense(RTS/CTS)两种。NS-2中控制数据包接收与否也是通过CSThresh_和RXThresh_进行决定,下面对这两个值做简要介绍。

(1)Pr(接收到的信号能量) < CSThresh,则无线接口将这个信号作为噪声而丢弃,因而MAC 层不能检测到这个载波,通俗的说,对于MAC 层而言,这个信号是不存在的;

(2)CSThresh < Pr < RXThresh,无线接口将这个信号标记为错误信号,然后上传给MAC 层进行处理,因而对于MAC 层而言,该信号可以被检测到,但是不能被正确地解码,通俗的说,MAC 层将该信号视为一个干扰噪声;

(3)Pr > RXThresh,无线接口直接将该数据包上传给MAC 层,此时 MAC 层可以对该信号进行正确地解码,并进行相应地处理

在NS2 中,干扰范围的半径约为发射范围半径的2.2 倍。

2.NS2中如何设置CSThresh_和RXThresh_

本例以Propagation/TwoRayGround为例,阐述NS2中CSThresh_和RXThresh_的设置。默认情形下,无线节点的信号传输范围(TX_range)为250m,物理载波侦听范围(PCS_range)为550m。一般来说,载波侦听的范围需要设置为信号传输范围的2.2倍。在NS2中,根据ns-defaut.tcl文件内容,我们可以看到如下有关物理层的设置:

Phy/WirelessPhy set CPThresh_ 10.0
Phy/WirelessPhy set CSThresh_ 1.559e-11
Phy/WirelessPhy set RXThresh_ 3.652e-10
Phy/WirelessPhy set bandwidth_ 2e6
Phy/WirelessPhy set Pt_ 0.28183815
Phy/WirelessPhy set freq_ 914e+6
Phy/WirelessPhy set L_ 1.0

其中,RXThresh_为接收阈值,它由节点的信号传输范围(250m)计算出来,CSThresh_为载波侦听阈值,它由载波侦听阈值(550m)计算出来,从已有的研究和分析可以看出,这两个值设置的合适与否影响着MAC能否正确接收数据包。接下来主要介绍如何从范围得到阈值:

(1)首先需要编译NS2自带的计算阈值的工具,如下图所示(该图引自:http://leiming32.blog.51cto.com/1021363/476692



(2)利用编译生成的可执行文件,可按如下计算阈值(该图引自:http://leiming32.blog.51cto.com/1021363/476692





利用上述得到的阈值,我们就可以在仿真时设置节点的传输范围。应用新的阈值时,不许要修改ns-defaut.tcl,仅需要在node-config前采用如下代码设置:

Phy/WirelessPhy set CSThresh_ 6.40195e-09
Phy/WirelessPhy set RXThresh_ 3.09854e-08


在应用上述工具时,计算CSThresh_和RXThresh_时仅需计算不同的距离值就可以得打,前者的距离值是后者的2.2倍。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: