如何在aodv协议中访问node的各项属性 .
2012-11-07 14:55
447 查看
如何在aodv协议中访问node的各项属性(例如,X_, Y_, speed_)
aodv协议里面没有出现当前节点,如要访问与之对应的节点的信息,则添加一个节点并与AODV对应的Agent绑定。
1、在aodv.h中添加如下代码
protected:
MobileNode *node_; // My node
2、修改aodv.cc中的command函数如
int
AODV::command(int argc, const char*const* argv) {
…… //不变
else if(argc == 3) {
…… //不变
if(strcmp(argv[1], "node") == 0 ) {
node_ = (MobileNode*) TclObject::lookup(argv[2]);
if(node_ == 0) return TCL_ERROR;
return TCL_OK;
}
…… //不变
}
3、修改../tcl/lib/ns-lib.tcl中的create-aodv-agent如下(重要!!!)
Simulator instproc create-fnaodv-agent { node } {
set ragent [new Agent/AODV [$node node-addr]]
set addr [$node node-addr]
$ragent node $node
$node set ragent_ $ragent
$self at 0.0 "$ragent start"
return $ragent
}
node_就是当前AODV Agent所在的节点,使用例如
node_->dX()
node_->dX()
node_->speed()
等的命令就可以得到节点的坐标,速度等参数,具体都能获得哪些数据,可以参考../common/mobilenode.h
aodv协议里面没有出现当前节点,如要访问与之对应的节点的信息,则添加一个节点并与AODV对应的Agent绑定。
1、在aodv.h中添加如下代码
protected:
MobileNode *node_; // My node
2、修改aodv.cc中的command函数如
int
AODV::command(int argc, const char*const* argv) {
…… //不变
else if(argc == 3) {
…… //不变
if(strcmp(argv[1], "node") == 0 ) {
node_ = (MobileNode*) TclObject::lookup(argv[2]);
if(node_ == 0) return TCL_ERROR;
return TCL_OK;
}
…… //不变
}
3、修改../tcl/lib/ns-lib.tcl中的create-aodv-agent如下(重要!!!)
Simulator instproc create-fnaodv-agent { node } {
set ragent [new Agent/AODV [$node node-addr]]
set addr [$node node-addr]
$ragent node $node
$node set ragent_ $ragent
$self at 0.0 "$ragent start"
return $ragent
}
node_就是当前AODV Agent所在的节点,使用例如
node_->dX()
node_->dX()
node_->speed()
等的命令就可以得到节点的坐标,速度等参数,具体都能获得哪些数据,可以参考../common/mobilenode.h
相关文章推荐
- 如何在aodv协议中访问node的各项属性
- 如何在aodv协议中访问node的各项属性
- 如何在aodv协议中访问node的各项属性
- C#如何访问Lua中的属性(1)
- 如何在.net 程序中访问 office文档的属性
- @protocol和category 中如何使用@property (协议和分类中如何使用@property属性)
- 如何: 通过HTML文档对象模型访问文档中的ActiveX控件的属性
- Objective-C如何自己实现一个基于数组下标的属性访问模式
- Struts2 如何使用OGNL表达式访问静态方法和属性
- 如何把groovy对象的全部属性取出,无需逐个访问
- win7下面如何禁止访问网络属性
- 关于如何访问当前页面所在的iframe属性
- Objective-C如何自己实现一个基于数组下标的属性访问模式
- layer如何关闭以及父页面如何访问IFRAME页面的JS方法属性
- 如何访问一个文件的创建、修改时间、文件属性
- 如何在物理机上访问虚拟机linux中创建的web服务器(通过Node 实现)
- 如何解决Ajax访问不断变化的session的值不一致以及HTTP协议中的GET、POST的区别
- C#如何访问Lua中的属性(3)
- [轻微]WEB服务器启用了OPTIONS方法/如何禁止DELETE,PUT,OPTIONS等协议访问应用程序/tomcat下禁用不安全的http方法
- 如何直接访问php实例对象中的private属性详解