我在N / S2中通过蓝牙协议实现无线技术。这是一个tcl脚本。但我收到以下错误:
num_nodes is set 4
(_o13 cmd line 1)
invoked from within
"_o13 cmd rt AODV"
invoked from within
"catch "$self cmd $args" ret"
invoked from within
"if [catch "$self cmd $args" ret] {
set cls [$self info class]
global errorInfo
set savedInfo $errorInfo
error "error when calling class $cls: $args" $..."
(procedure "_o13" line 2)
(SplitObject unknown line 2)
invoked from within
"$node_($i) rt AODV"
("for" body line 3)
invoked from within
"for {set i 0} {$i < $val(nn)} {incr i} {
set node_($i) [$ns_ node $i]
$node_($i) rt AODV
$node_($i) on
[$node_($i) set l2cap_] set ifq_limit_ 30
$nod..."
(file "bluetooth.tcl" line 58)
答案 0 :(得分:0)
首先,我们需要查看您的场景并给出答案......其次,您似乎正在尝试使用其他不需要的参数创建节点...
试试这个:
set node_($i) [$ns_ node]
而不是:
set node_($i) [$ns_ node $i]
关于下一行你可以做到这一点,找出你缺少的东西或你使用错误方法的参数:
打开一个新终端并cd
到您的ns2目录。
例如:$cd /ns-allinone-2.35/ns-2.35/
使用grep
了解如何正确使用这些参数。
示例:
grep -r "rt AODV" ./
或者,如果结果超出了您的终端的历史记录,您可以为搜索指定一个文件:
grep -r "rt AODV" ./ > search.txt
为每个参数尝试一下,看看它是如何工作的。