Scheduler:Event UID not valid(转)
今天做了柯志亨老师的实验23,比较不同的无线网络路由,DSDV/AODV/DSR。按照书上的要求写了脚本和AWK程序,测试一切顺利。但是到了实验二,做DSR实验的时候却出现了事件UID非法的提示。查看trace文件,发现确实停在了大概56s的位置。查了很多资料,解决方法没有找到。而且也不敢随便修改mac文件。不过看了一些解释,我怀疑可能是tcl脚本中的一项设置:Mac/802_11 set SlotTime_ 0.000020 ;#20us不合适。这里设置slot长度为20us。我尝试改了这个参数。把20us改成了10us。运行一遍,顺利通过!
虽然通过测试了,但是我还是不太能够理解其中原因,现将tcl脚本一并贴上来,希望大家能够给我指点指点。
proc getopt {argc argv} {
global opt
lappend optlist nn
for {set i 0} {$i<$argc} {incr i} {
set opt($i) [lindex $argv $i]
}
}
getopt $argc $argv
#参数设置
set opt(chan) Channel/WirelessChannel
set opt(prop) Propagation/TwoRayGround
set opt(netif) Phy/WirelessPhy
#下面设置比较特别,若是使用DSR,所使用的ifq就要用CMUPriQueue
set opt(mac) Mac/802_11
if {$opt(0) == "DSR"} {
set opt(ifq) CMUPriQueue
} else {
set opt(ifq) Queue/DropTail/PriQueue ;#interface queue type
}
set opt(ll) LL
set opt(ant) Antenna/OmniAntenna
set opt(x) 500
set opt(y) 500
set opt(ifqlen) 2000
set opt(seed) 0.0
set opt(tr) trace2.tr ;#trace file
set opt(adhocRouting) $opt(0)
set opt(nn) 100
set opt(cp) "cbr_n100_m10_r10"
set opt(sc) "scen_100n_0p_10M_100t_500_500"
set opt(stop) 100.0
Mac/802_11 set CWMin_ 31
Mac/802_11 set CWMax_ 1023
Mac/802_11 set SlotTime_ 0.000010 ;#10us
Mac/802_11 set SIFS_ 0.000010 ;#10us
Mac/802_11 set PreambleLength_ 144 ;#144bit
Mac/802_11 set PreambleDataRate_ 1.0e6 ;#1Mbps
Mac/802_11 set PLCPHeaderLength_ 48 ;#48bit
Mac/802_11 set PLCPDataRate_ 1.0e6 ;#1Mpbs
Mac/802_11 set RTSThreshold_ 3000 ;#bytes Disable RTS/CTS
Mac/802_11 set ShortRetryLimit_ 7 ;#retrans_mission_
Mac/802_11 set LongRetryLimit_ 4 ;#retrans_mission_
Mac/802_11 set dataRate_ 2Mb ;#802.11data trans_mission rate
Mac/802_11 set basicRate_ 1Mb ;#802.11 basic trans_mission rate
set ns_ [new Simulator]
set tracefd [open $opt(tr) w]
$ns_ trace-all $tracefd
set topo [new Topography]
$topo load_flatgrid $opt(x) $opt(y)
set god_ [create-god $opt(nn)]
set chan_1_ [new $opt(chan)]
$ns_ node-config -adhocRouting $opt(adhocRouting) \
-llType $opt(ll) \
-macType $opt(mac) \
-ifqType $opt(ifq) \
-antType $opt(ant) \
-ifqLen $opt(ifqlen) \
-propType $opt(prop) \
-phyType $opt(netif) \
-channel $chan_1_ \
-topoInstance $topo \
-agentTrace ON \
-routerTrace ON \
-macTrace OFF
for {set i 0} {$i < $opt(nn)} {incr i} {
set node_($i) [$ns_ node]
$node_($i) random-motion 0
}
#设置结点移动模式
puts "Loading connection pattern..."
#使用source去载入traffic pattern文件
source $opt(cp)
#设置联机传输模式
puts "Loading scenario file..."
#使用source去载入结点移动场景文件
source $opt(sc)
for {set i 0} {$i < $opt(nn)} {incr i} {
$ns_ initial_node_pos $node_($i) 20
}
for {set i 0} {$i < $opt(nn)} {incr i} {
$ns_ at $opt(stop).1 "$node_($i) reset"
}
$ns_ at $opt(stop).1 "puts \"ns EXITING...\";$ns_ halt"
puts "Starting Simulation..."
$ns_ run
Scheduler:Event UID not valid(转)相关推荐
- Mendix开发不卡壳之 Scheduler Event定时任务使用
任务需求:定时插入数据 解决方案:Timer & Scheduler Event,Timer之前已经用过,这里记录Scheduler Event的使用. Scheduler Event和MS ...
- NS2 教學手冊 ( NS2 Learning Guide)
转载自:NS2 教学手册(柯志亨网站资源) NS2 教學手冊 ( NS2 Learning Guide) [快速連結區] My works 中文影音教學區 Q&A for my works ...
- 柯志亨老师-- NS2 教學手冊
感谢柯志亨老师! NS2教學手冊( NS2 Learning Guide) [快速連結區] My works中文影音教學區Q&A for my worksMy BookMy TalksForu ...
- FlinkCEP - Complex event processing for Flink
https://ci.apache.org/projects/flink/flink-docs-release-1.3/dev/libs/cep.html 首先目的是匹配pattern sequenc ...
- 单击屏幕亮屏流程分析
一. kernel部分 1.看TP驱动有没有事件上报 cat /dev/input/evnet1 或者看kernel log [ 4036.282237] bt541_ts_device 5-00 ...
- ndnSIM学习(八)——examples之ndn-simple.cpp每个函数逐行剖析
文章目录 前言 源代码 0.先聊聊Simulator 1.Config::SetDefault 2.CommandLine::Parse 3.NodeContainer::Create 4.Point ...
- TI Cortex-M4 USB Host CDC 驱动详解及源代码
1. USB CDC介绍 USB的CDC类是USB通信设备类(Communication Device Class)的简称.CDC类是USB组织定义的一类专门给各种通信设备(电信通信设备和中速网络通信 ...
- CentOS7 基线检查
口令锁定策略 威胁等级:Low 规则描述 设置口令认证失败后的锁定策略 审计描述 检查配置文件的/etc/pam.d/system-auth和/etc/pam.d/password-auth是否有 a ...
- 定时调度模块:sched
定时调度模块:sched """A generally useful event scheduler class. 事件调度器类Each instance of this ...
最新文章
- python绘制简单图形-python绘制数学图形(堪比matlab)
- 201521123022 《Java程序设计》 第十三周学习总结
- NewLife.Net——管道处理器解决粘包
- 从PM到GAN——LSTM之父Schmidhuber横跨22年的怨念(文字版)
- Java并发编程实战~ReadWriteLock~
- android wear 运动程序,Android Wear 之 为通知添加动作
- H3C路由器映射端口到外网
- 2007年河南湖北各市GDP
- 里氏替换原则_趣谈设计模式之里氏替代原则
- 手把手教你学项目管理软件project
- FinBi银行数据驾驶舱
- 微型计算机原理与应用彭楚武,微型计算机原理及其应用
- Oracle数据库安装及配置(一)
- Shell脚本实现俄罗斯方块小游戏
- Improving and Simplifying Pattern Exploiting Training
- mezzanine timezone 的问题
- PacBio HiFi测序介绍及百迈客最新下机数据公布
- Java、JSP基于WEB的师生互动系统
- springboot萌宠宠物网店的开发与设计 毕业设计-附源码011042
- 天气预报小程序案例(springboot服务端)
热门文章
- Git如何配置多个SSH-Key呢?
- Docker Windows 安装
- 简易方法判断浏览器的类型和版本
- harmonyOS的架构图,HarmonyOS通用设计基础---应用架构
- python 矩阵乘法梯度下降_使用python和numpy进行梯度下降
- Carryon的字符串
- vim提示-bash:vim :common not found解决方法
- Python中字符串的startswith()和endswith()方法
- Linux下的less命令
- springmvc请求返回一个字符_Spring MVC框架详解01