zz:http://hi.baidu.com/cqupt_dingo/blog/item/9b8ba2cad013f20d93457e13.html

首先仿真时会输出以下内容

highestAntennaZ_ = 1.5, distCST_ = 550.0

highestAntennaZ_:指的是无线天线的高度,好像ns2里都是1.5米,没见到过改这个参数的。

distCST_:指的是载波监听范围,这里是550米,我装好ns2就默认是这个了。

1.载波监听

      在CSMA中,由于通道的传播延迟,当两个站点监听到总线上没有存在信号而发送帧时,仍会发生冲突。由于CSMA算法没有冲突检测功能,即使冲突己发 生,仍然要将已破坏的帧发送完,使总线的利用率降低。改进方案是使站点在传输时间继续监听媒体,一旦检测到冲突,就立即停止发送,并向总线上发一串短的阻塞报文(Jam),通知总线上各站冲突己发生,可以提高总线的利用率。这种方案称做载波监听多路访问/冲突检测协议,简写为CSMA/CD,这种协议已广泛应用于局域网中。

      CSMA/CD的代价是用于检测冲突所花费的时间。对于基带总线而言,最坏情况下用于检测一个冲突的时间等于任意两个站之间传播时延的两倍。从一个站点开始发送数据到另一个站点开始接收数据,也即载波信号从一端传播到另一端所需的时间,称为信号传播时延。

信号传播时延(μs)=两站点的距离(m)/信号传播速度(200m/μs)。

假定A、B两个站点位于总线两端,两站点之间的最大传播时延为tp。当A站点发送数据后,经过接近于最大传播时延tp时,B站点正好也发送数据,此时冲突便发生。发生冲突后,B 站点立即可检测到该冲突,而A站点需再经过一份最大传播时延tp后,才能检测出冲突。也即最坏情况下,对于基带CSMA/CD来说,检测出一个冲突的时间等于任意两个站之间最大传播时延的两倍(2tp)。

所以,载波侦听距离要大于2倍无线节点通信距离。在NS-2 仿真软件中,干扰范围的半径约为发射范围半径的2.2 倍。所以上面载波侦听范围是550米,无线通信范围是250米。

2.distCST_计算

在ns2.34/mac/channel.cc文件中,当使用WirelessPhy时,

distCST_ = wifp->getDist(wifp->getCSThresh(),wifp->getPt(), 1.0, 1.0,highestZ , highestZ,wifp->getL(),wifp->getLambda());

里面有个重要参数是“CSThresh"。什么是CSThresh?

  • 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 bedecoded unless signal strength is greater than RXThresh_.

  • CPThresh_ refers to the capture phenomenon.

ns用接收功率来模拟包的接收

  • 接受功率(Pr)<侦听阀值(CSThresh_),那么无线网络接口将这个信号作为噪声而丢弃。因此,MAC 层不能检测到这个载波。或者说,对于MAC 层而言,这个信号是不存在的。
  • 侦听阀值(CSThresh_)<侦听阀值(Pr)<接收阀值(RXThresh_) ,  则能感应到包但不能解析包。无线网络接口将这个信号标记为错误信号,然后上传给MAC 层进行处理。对于MAC 层而言,该信号可以被检测到,但是不能被正确地解码。因此,MAC 层将该信号视为一个干扰噪声。
  • 接收功率(Pr)>接收阀值(RXThresh_), 就正确接收包。无线网络接口直接将该信号上传给MAC 层。此时, MAC 层可以对该信号进行正确地解码,并进行相应地处理。

3.RXThresh_和CSThresh_计算

在ns-2.34/tcl/lib/ns-default.tcl中有以下内容

1
2
3
4
5
6
7
8
9

# Initialize the SharedMedia interface with parameters to make
# it work like the 914MHz Lucent WaveLAN DSSS radio interface

Phy/WirelessPhy set CPThresh_ 10.0
Phy/WirelessPhy set CSThresh_ 1.559e-11 ;#550m
Phy/WirelessPhy set RXThresh_ 3.652e-10 ;#250m
Phy/WirelessPhy set bandwidth_ 2e6 ;#2Mbps
Phy/WirelessPhy set Pt_ 0.28183815 ;#传输功率
Phy/WirelessPhy set freq_ 914e+6
Phy/WirelessPhy set L_ 1.0

这就是ns默认的参数,在ns2.34/nsindep-utils/propagation/下有个工具 threshold工具,可以通过距离、功率等等条件算出这些参数,具体编译过程上一篇博客讲过了。这个550前的阀值是怎么算出来的?在终端下输入:

1

./threshold -m TwoRayGround -r 1 550

(from 行走的天马:也可以直接用  ./threshold -m TwoRayGround 550)

然后输出:

1
2
3
4
5
6
7
8
9
10
11
12
13

distance = 550
propagation model: TwoRayGround
 
Selected parameters:
transmit power: 0.281838
frequency: 9.14e+08
transmit antenna gain: 1
receive antenna gain: 1
system loss: 1
transmit antenna height: 1.5
receive antenna height: 1.5
 
Receiving threshold RXThresh_ is: 1.55924e-11

最后一行即所求的值。

ns2中无线通信距离的一些小节相关推荐

  1. NS2中无线仿真场景生成

    1.节点移动和拓扑生成 Instead of specifying and control each nodes' position and movement pattern, we use a CM ...

  2. 远程抄表系统(AMR/AMI)中无线模块选型指南

    1.概述 远程抄表系统是为提高水表.电表等能耗参数的综合计费管理水平而设计的新兴技术.它以全自动的抄表方式取代了传统的人工抄表方式,和同类抄表系统相比,具有网络结构自适应.免调试.免维护.运行稳定.方 ...

  3. NS2仿真分析无线网络的攻击防御(2)

    牙说:继续上一篇博文进行翻译. 4. NS和我们的工作 我们试图评估黑洞攻击在无线Ad-hoc网络中的影响. 为了实现这一点,我们已经使用NS 网络模拟 [14]程序模拟了一个含有黑洞节点的无线自组网 ...

  4. NS2仿真分析无线网络的攻击防御(1)

    这个学期有个选题是NS2仿真分析无线网络的攻击防御,比较有意思的样子,现在来慢慢学一下这个是什么东西. 首先,还是一篇文章(老长老长了),还是全英文的,还是先来分析一下它到底在说什么,文章太长(78页 ...

  5. NS2中数据包Packet的分析 (转帖)

    1. NS2中数据包packet类结构图: packet类中的access函数如下: inline unsigned char* access(int off) const {      if (of ...

  6. 自由空间传播时的无线通信距离的计算方法

    无线通信距离的计算 这里给出自由空间传播时的无线通信距离的计算方法:所谓自由空间传播系指天线周围为无限大真空时的电波传播,它是理想传播条件. 电波在自由空间传播时,其能量既不会被障碍物所吸收,也不会产 ...

  7. NS2中的WirelessPhyExt工作机制研究

    NS2中的WirelessPhyExt工作机制研究 @NS2开发笔记 1.概述 WirelessPhyExt是WirelessPhy的扩展,是直接从WirelessPhy继承而来的,但是在Wirele ...

  8. NS2中Trace部分的一点认识

    NS2中Trace部分的一点认识 NS2追踪部分的源码主要涉及以下几个文件: ns-2.34/trace/basetrace[.cc][.h] ns-2.34/trace/trace[.cc][.h] ...

  9. h3c 链路聚合测试_4G/5G聚合路由器在直播中无线多链路聚合图传技术是什么?

    近年,面向互联网集群用户的移动直播已成常态,放眼看去,现在的直播平台几乎全部是技术外包或硬件采购,鲜少有自主研发相关设备技术.特别是传输链路技术.直播推流等难题难以得到有效解决,直播场景雷区重重. 乾 ...

最新文章

  1. 希尔排序(shellsort)算法实现
  2. 统计学习方法第四章朴素贝叶斯法-李航
  3. python获取计算机IP、mac地址、计算机名
  4. Numpy np.random.RandomState()的简单用法
  5. [bzoj1834][ZJOI2010]network 网络扩容
  6. 两男子骑摩托车抢夺宴席礼金 警方:嫌疑人已被抓获
  7. mysql5.7.10 performance_schema_MySQL的show profile简介以及该功能在MySQL 5.7中performance_schema中的替代...
  8. 写这么骚的代码,不怕被揍么?
  9. 冯诺依曼元胞计算机,冯诺依曼元胞自动机
  10. 在Windows 7 Media Center中收听本地FM广播
  11. 仿淘宝商品详情页[带有视频和图片的轮播功能]
  12. 逆向开发--4.iOS签名与重签名
  13. c语言程序 强制关机程序,怎么用C或者C++编写一个电脑强制关机程序
  14. 电脑WIFI突然消失解决方法
  15. Bus消息总线如何实现
  16. XML第二讲:格式正规的XML文档、XML文档的元素、属性、实体深度详解
  17. 将电脑硬盘的图片生成一个链接,提供外网访问
  18. 数字电路实验(十四)——CPU综合设计(10)
  19. 计算机网络——哈工大
  20. 微信的移动生态闭环是怎么回事

热门文章

  1. 23种设计模式(第二章创建者模式5种)
  2. 中国知网机构用户如何阅读下载的文献
  3. 【茶余饭后001】Python代码写唐诗宋词,竟然也可以浪
  4. python统计微信消费
  5. file DOWNLOAD HASH mismatch(编译安装opencv 3.2.0时报错)
  6. 铝板AS/NZS 1530.1 不燃性材料的阻燃测试
  7. ios和android测试面试题目,App测试面试题总结
  8. win10 改变输入法的切换快捷键
  9. Android测试包安装方式汇总
  10. python监听udp端口,Python和UDP监听