无线局域网的应用
- 格式:doc
- 大小:132.00 KB
- 文档页数:14
无线网络技术及其应用无线局域网的应用
专业:
班级:
姓名:
学号:
成绩:
项目任务:
1、无线局域网的隐藏节点的问题应用
2、无线局域网的暴露节点的问题应用
项目分析:
1、无线网络隐藏节点若节点0和节点2同时要传送给节点1,,但节点0和节点都不在对方的传送范围之内,所以当节点0传送分组给节点1时,由于节点2不在节点0的覆盖范围内,他不能侦听到1在发送分组,这种情况下,若2向1发送分组,则发送碰撞,像这样因为传输距离而发生误判的问题就成为节点隐藏问题。
2、无线网络暴露节点,当某节点要发送数据给另一个节点时,因邻节点也正在发送数据,影响了自身的潜在传输。节点0、1、2、3.其中节点2、3均不在对方的传输范围内,而节点0、1均在彼此的传输范围内。因此当节点0发送数据给节点3时,节点1却不能将数据发送给节点3,因此节点1会检测到节点0正传输数据,如果其也发送数据,则会影响节点0的传输。而事实上,节点1可以将数据传输到节点3,因此节点1并不在节点2的传输激励内。
项目实施:
1、无线局域网的隐藏节点
#仿真环境的参数设置
#Threshold是界限的意思
#RTSThreshold是规定了低频射频信号的包大小,设置的越小,那么相同的数据就需要越多的包来发送。
Mac/802_11 set RTSThreshold_ 0
#设定无限节点的通信半径
Antenna/OmniAntenna set X_ 0
Antenna/OmniAntenna set Y_ 0
Antenna/OmniAntenna set Z_ 1.5
Antenna/OmniAntenna set Gt_ 1.0
Antenna/OmniAntenna set Gr_ 1.0
#引用了WirelessPhy类,设定信号传输范围
#RXThresh_ :由节点传输范围250m计算出来的
#RXThresh_ :由载波侦听范围550m计算出来的
#这两个值设置的是否合理,将影响到数据是否能正确传输到MAC层Phy/WirelessPhy set CPThresh_ 10.0
Phy/WirelessPhy set CSThresh_ 8.91754e-10
Phy/WirelessPhy set RXThresh_ 2.81838e-9
#带宽2Mbps
Phy/WirelessPhy set bandwidth_ 2e6
@传输功率
Phy/WirelessPhy set Pt_ 0.281838
Phy/WirelessPhy set freq_ 9.14e+6
#system_loss
Phy/WirelessPhy set L_ 1.0
#仿真变量设置
set val(chan) Channel/WirelessChannel
set val(prop) Propagation/TwoRayGround
set val(netif) Phy/WirelessPhy
set val(mac) Mac/802_11
set val(ifq) Queue/DropTail/PriQueue
set val(ll) LL
set val(ant) Antenna/OmniAntenna
set val(ifqlen) 100
set val(rp) DSDV#广播路由信息
#ns实例化合trace文件设置
#单播节点的定义set ns[new Simulator]
#组播节点的定义set ns[new Simulator -multicast on]
set ns [new Simulator]
set f [open Hidden_Terminal.tr w]
$ns trace-all $f
$ns eventtrace-all
set nf [open Hidden_Terminal.nam w]
$ns namtrace-all-wireless $nf 500 500
#仿真拓扑设置
#设置拓扑的范围和全局节点记录,便于控制节点的位置和运动范围
set topo [new Topography]
$topo load_flatgrid 500 500
create-god 3
#配置节点
#在节点实例化前对节点的参数进行配置,包括路由协议,天线类型,物理层模型等,实现正确有效的隐藏节点实验分析
set chan [new $val(chan)]
$ns node-config -adhocRouting $val(rp) \
-llType $val(ll) \
-macType $val(mac) \
-ifqType $val(ifq) \
-ifqLen $val(ifqlen) \
-antType $val(ant) \
-propType $val(prop) \
-phyType $val(netif) \
-channel $chan \
-topoInstance $topo \
-agentTrace ON \
-routerTrace OFF \
-macTrace ON \
-movementTrace OFF
#$ns node对节点进行实例化
for {set i 0} {$i < 3} {incr i} {
set node_($i) [$ns node]
$node_($i) random-motion 0
}
#对节点位置进行设置,不能超过拓扑范围
$node_(0) set X_ 30.0
$node_(0) set Y_ 130.0
$node_(0) set Z_ 0.0