- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NS2.35添加MFlood洪泛协议
NS2.35 添加MFlood 洪泛协议
许银龙 2013.05.09
第一次添加协议时,很难查找错误的原因,因此我们先用比较成熟的MFlood 协议进行
尝试,熟悉协议添加的流程,找出易错点,便于以后的协议添加。
协议添加流程:
·编写协议的C++源程序
·修改相应文件packet.h 、ns-packet.tcl、ns-lib.tcl、Makefile 等(不同的协议,修改的文件不一样)
·重新编译make 、调试、验证
ns-allinone-2.35
bin lib ns-2.35 tcl8.4.13 tk8.4.13 tclcl-1.18 otcl-1.12 nam-1.12 …
common aodv link queue tcp … doc tcl
ex test lan http rtp …
C++源代码
Tcl脚本范例 测试用例 OTcl代码
1.下载MFlood 协议
从csdn 上下载MFlood 协议,MFlood 洪泛协议是一个简单的无线路由协议,其中基本的思
想是:节点根据一定的规则转发自己收到的数据包。
下载网址:/detail/lz3365100
2.在 ns-2.35 文件夹下建立mflood 目录
在ns-2.35 目录下建立mflood 目录,将下载的文件中的mflood.h, mflood.cc, mflood_packet.h,
mflood-seqtable.h, mflood-seqtable.cc 放入该文件夹内。
3.ns-2.35/common/packet.h (改两处)
(1)packet.h 是定义分组类型头文件,这里要修改packet_t 的类型。2.35 跟2.29 很不同,
在75 行左右说的很清楚。预定义的分组类型通过static const 来实现。
那么在下面一串
static const packet_t PT_TCP = 0;
……
……
static packet_t PT_NTYPE = 73; // This MUST be the LAST one
这些都是分组类型,最后一行的PT_NTYPE 必须是最后一个,那么在这行之前加入
PT_MFLOOD 类型。
加入下划线一行之后如下:
static const packet_t PT_TCP = 0;
……
……
static const packet_t PT_MFLOOD = 73;
static packet_t PT_NTYPE = 74; // This MUST be the LAST one
(2 )还需要加入对应分组类型PT_MFLOOD 的字符串。需要p_info 类,跟2.29 也不一样
了,2.35 把赋值语句放到了initName() 函数中,找到这个函数,可以把这句依然放到
PT_NTYPE 之前。
name_[PT_MFLOOD]=MFlood;
name_[PT_NTYPE]= undefined;
4.ns-2.35/tcl/lib/ns-packet.tcl (改一处)
mflood 定义自己的分组头部,这个头部需要激活。所以在此文件中修改,添加mflood 的头
部。(mflood 头部定义的具体代码在mflood.cc 中)。
#Mobility, Ad-Hoc Networks, Sensor Nets:
MFlood
AODV # WSN protocol for ad-hoc networks
5.ns-2.35/tcl/lib/ns-lib.tcl (改两处)
(1)在这里添加语句,表示当无线移动节点指定路由协议为MFlood 是,将调用
create-mflood-agent 成员函数进行初始化。
OMNIMCAST {
eval $node addr $args
set ragent [$self create-omnimcast-agent $node]
}
MFlood {
文档评论(0)