无线自组织网络的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
无线网络技术及其应用无线自组织网络的应用
专业:
班级:
姓名:
学号:
成绩:
项目任务:
FSR协议应用
项目分析:
“鱼眼”技术最初由Klein rock 和Stevens 提出来,可用来减少表示图形图像的数据。鱼眼能清晰地捕捉焦点附近的像素,但清晰度随着离焦点的距离增大而降低。“鱼眼”技术在路由中用来维护精确的距离和路由质量信息,但也会随着距离变大而逐渐不精确。鱼眼范围是指在一定路由距离(即Hop Count)范围内的节点的集合,节点11为中心节点,黑色为其1跳的邻居,灰色为2跳的邻居,白色为3跳的邻居,鱼眼范围为3时则节点11可以“看到”全局网络的信息。
其使用鱼眼技术,在不同鱼眼域中的节点以不同频率(由节点距离决定)只向邻居节点广播链路更新信息,能大大减少链路状态更新信息,从而降低洪泛开销。通过节点之间相互交换链路状态消息,每个FSR路由器都能获知全网拓扑信息。根据这些最新的信息,FSR为每个目标节点计算最短路径。由于链路更新频率由距离决定,因此对于域内的节点路由都是精确的,而对于域外节点,离目标节点越远,路由精确度便越低,这是因为距离较近的更新较快,较远的更新较慢。但是,不会像按需路由那样需花时间去寻找路由,因此能维持较低时延。而且,随着离目标节点越来越近,路由信息越来越精确,正好弥补了路由的不精确性。移动网络中,逐渐精确的路由减小了节点移动对路由精确度的影响。链路崩溃时,FSR不会发出任何控制信息,而且也不包含在下一个更新信息中,而是简单删除邻居列表和拓扑结构表中信息,适合于拓扑高度变化的网络环境。目标序列号的使用不仅使得FSR能使用最新的链路状态信息去维护拓扑结构,而且
还避免了环形路由的形成,因此较适合高移动性无线网络。
项目实施:
FSR代码解释如下:
#仿真变量设置val变化
set val(chan) Channel/WirelessChannel ;# channel type
……
set val(stop) 101.0 ;# time of simulation end
# Threshold是界限的意思
#RTSThreshold 是规定了低频射频信号的包的大小,设置的越小,那么相同数据就需要越多的包来发送.
#引用了WirelessPhy类,设定信号传输的范围psy 物理层
#RXThresh_指的是receiving threshold (RTX),它是由节点传输范围250m计算出来的
#CSThresh_指的是carrier-sense threshold (CTX),它是由载波侦听范围550m计算出来的。
#CSThresh_与RXThresh_这两个值是功率的threshold值。通过在tcl脚本中设置它们的大小,
#就可以相应设置节点传输范围和载波侦听范围。计算出RXThresh_的值要用到threshold工具,
#在indep-utils/propagation目录下。
Phy/WirelessPhy set CPThresh_ 10.0 ;# Capture threshold (db)Ns2中802.11a/b/g参数设置
Phy/WirelessPhy set CSThresh_ 1.559e-11 ;# Carrier sense threshold(W)#550m
#200m 8.91754e-10
#300m 1.76149e-10
Phy/WirelessPhy set RXThresh_ 1.76149e-10;# Receive power threshold(W)
Phy/WirelessPhy set Rb_ 2*1e6 ;# Bandwidth #带宽
Phy/WirelessPhy set Pt_ 0.2818 ;# Transmission power (W)#传输功率
Phy/WirelessPhy set freq_ 914e6 ;# frequency
Phy/WirelessPhy set L_ 1.0 ;# system loss factor
# 单位增益,全向天线
# set up the antennas to be centered in the node and 1.5 meters above it天线设立在节点中心1.5米以上
#对节点位置进行设置,不能超过拓扑范围
Antenna/OmniAntenna set X_ 0
……
Antenna/OmniAntenna set Gr_ 1.0
#设置延时函数,带宽
LL set mindelay_ 50us
LL set delay_ 25us
LL set bandwidth_ 0 ;# not used
#ns实例化,设置记录文件
set ns [new Simulator]
#仿真拓扑设置
#设置拓扑范围和全局节点记录,来便于控制节点的位置和运动范围set topo [new Topography]
$topo load_flatgrid $val(x) $val(y)
create-god $val(nn)
#打开trace文件夹
#Open the NS trace file
set tracefile [open FSR.tr w]#跟踪文件
$ns trace-all $tracefile
……
set chan [new $val(chan)];#Create wireless channel
#配置节点实例化前对节点的参数进行配置.
$ns node-config -adhocRouting $val(rp) \#路由协议
-llType $val(ll) \ #逻辑链路层
-macType $val(mac) \#MAC类型
-ifqType $val(ifq) \#队列类型
-ifqLen $val(ifqlen) \#队列长度
-antType $val(ant) \天线类型
-propType $val(prop) \#无线信道传输模式
-phyType $val(netif) \#物理层类型
-channel $chan \#拓扑对象
-topoInstance $topo \ #关闭应用层对象的
-agentTrace ON \#关闭路由
-routerTrace ON \#启用
-macTrace ON \#关闭移动
-movementTrace ON
#建立14个节点,并设置每个节点的位置
set n0 [$ns node]
$n0 set X_ 597
$n0 set Y_ 500