ChinaUnix.net
相关文章推荐:

ns3中文教程

nsAODV协议分析 在ns2.27,AODV路由协议主要包括以下几个组件: 1、协议实体 2、路由表 3、定时器 (1)广播定时器 (2)周期Hello报文广播定时器 (3)用于邻居管理的定时器 (4)用于路由缓存的定时器 (5)用于本地修复的定时器 (6)缓存广播ID的定时器 4、日志记录器 5、路由缓存队列 首先来看协议从接收到一个分组开始的基本流程。 当协议接收到一个分组,即recv(Packet*, Handler*)函数被调用,函数根据分...

by shuying3344 - Linux文档专区 - 2008-11-03 09:59:03 阅读(1073) 回复(0)

相关讨论

ns2.27,AODV路由协议主要包括以下几个组件:1、协议实体2、路由表3、定时器(1)广播定时器(2)周期Hello报文广播定时器(3)用于邻居管理的定时器(4)用于路由缓存的定时器(5)用于本地修复的定时器(6)缓存广播ID的定时器4、日志记录器5、路由缓存队列首先来看协议从接收到一个分组开始的基本流程。当协议接收到一个分组,即recv(Packet*, Handler*)函数被调用,函数根据分组类型调用不同的处理函数进行处理。1、如果是...

by 朱熹之 - 网络技术文档中心 - 2007-01-10 15:32:24 阅读(2983) 回复(0)

ns2的能量模型主要针对无线网络,如Ad-hoc及WSN。其能量模型的实现在~ns/mobility/energy-model.h/cc,同时在~/ns/mac/wireless-phy.h/cc进行引用,用来实现能量的控制,如发送能量、接收能量。

by TOMATOFAN - 数据安全 - 2011-12-22 08:53:36 阅读(776) 回复(0)

基于Agent其实可以做很多的事了,有的看起来不是Agent的事,例如底层的协议,都可以换一个角度用Agent来做,最典型的AODV就是这样。也就是说Agent能做的事就是:把数据包从底层拿上来,处理一下,然后或者转发出去或者直接交给本节点的应用层。 基于Agent的开发简单,开发者不必去关心底层的实现,这是最大的好处。一般来讲基于Agent开发只需要这样几个文件:yourAgent.h yourAgent.cc yourAgent.tcl,当然你可以把yourAgent.cc优...

by zhglinux - Linux文档专区 - 2008-07-28 10:42:39 阅读(635) 回复(0)

1. ns2数据包packet类结构图: packet类的access函数如下: inline unsigned char* access(int off) const { if (off access(offset_); } 从以上的函数可以看出只要给出特定的报头在packet的偏移量offset_,立刻就能够取得指向该报头的指针(通过强类型转换,原理有点类似把一个子类强类型转换为其父类),从而访问或设置该报头内容。 常见TCL脚本有如下语句: remove-all-packet-headers add-packet-header AO...

by zhglinux - Linux文档专区 - 2008-07-26 15:34:35 阅读(853) 回复(0)

网络仿真有很多场景是需要随机数作为输入或控制时刻的,为此我参考了柯老师资料,学习了ns2产生随机数的方法,并且给出我的TCL代码,方便大家学习,也方便自己以后查询,可以拿来即用! 以下只给出产生各种随机数的基本方法,至于实际场景下应该如何设置具体的参数,应该选取何种随机数,以及各种随机数本身的特性,请自行斟酌哦! 随机数: Pareto分布; Constant型; Uniform分布; Expo...

by ProhibidoAmor - 网络技术文档中心 - 2009-11-10 13:10:50 阅读(2564) 回复(0)

1、缩进风格:高位指令8空格缩进。 2、变量命名约定: 类的实例变量应该以下划线结束,这有助于将实例变量与全局变量、局部变量区别开。 C++和Tcl的绑定变量应同名。 3、杂集: 避免使用C++模板。 对于nsObjects,使用debug_实例变量可以激活调试功能,它可以避免调试语句的重复定义,并且无需重新编译即可调试一个特定的nsObject。 例如: Queue set debug_ true Debug("This is a debug statement %d",...

by zcwuwei - 网络技术文档中心 - 2008-07-03 09:35:06 阅读(992) 回复(0)

一.cbrgen(~ns/indep-utils/cmu-scen-gen) cbrgen用来生成传输负载,可以产生TCP流或者CBR流。 使用方法如下: ns cbrgen.tcl [-type cbr|tcp] [-nn nodes] [-seed seed] [-mc connections] [-rate rate] -type tcp流或cbr流 -nn 节点数 -mc 节点间的最大连接数 -rate 每个连接间的流的负载数 -seed 指定随机数种子 二.s...

by zcwuwei - 网络技术文档中心 - 2008-07-03 09:06:36 阅读(1113) 回复(0)

在/var/log/message出现 kernel: hrtimer: interrupt took 3123826 ns 请问一下是什么原因

by General_715 - 内核源码 - 2012-12-06 20:07:49 阅读(5300) 回复(2)
by TOMATOFAN - 数据安全 - 2011-12-22 08:53:36 阅读(817) 回复(0)

首先需要知道的是定时器(Timer)既可以在C++实现也可以在Otcl实现。在C++,各种定时器都是基于抽象基类TimerHandler 的,而其又是由Handler继承来的,而且定时器经常用于Agent对象,当然也可以用在其他对象,这里主要说在Agent对象的使用方法。

       列举几个比较重要的函数和参数:
       sched():设定定时器在delay秒后超时,此时定时器必须处在TIM...

by norbert_jxl - 数据安全 - 2011-12-21 08:43:29 阅读(686) 回复(0)