您的位置:首页 > 其它

NS2.33中安装Noah协议

2012-06-25 06:48 225 查看
在NS2中间补充安装协议过程还是有那么一点点的折腾,这里介绍下安装noah协议

noah下载链接:http://download.csdn.net/detail/fzxy002763/4390619

里面默认有个英语的install的方法的简介,还是挺简单的,不过由于版本问题,这里还是大致介绍下(配置NS2的步骤这里不介绍了,之前有写)

首先在 ns-allinone-2.33/ns-2.33 目录下新建noah这个文件夹

把noah.cc  noah.h这两个文件塞到这个文件夹(ns-allinone-2.33/ns-2.33/noah)下,整个文件夹里面东西都塞过去也无所谓,不要少东西就行

把noah.tcl放到 /ns-allinone-2.33/ns-2.33/tcl/mobility 这个目录下

接着修改Makefile 

PS:vi中先按:,然后输入set number可以显示行号,:然后直接数字可以跳转到指定行,\然后内容是搜索

这里在OBJ_CC中添加noah/noah.o \,注意不要多加空格,放里面任何一个位置就行

在NS_TCL_LIB 里添加tcl/mobility/noah.tcl \,同样不要多加空格

然后是是修改/ns-allinone-2.33/ns-2.33/tcl/lib/ns-lib.tcl这个文件

这里版本不同,修改行数不同,比较郁闷,建议跳转到附近,看下周围的再改(PS:最好根据我给的图示改下,不一定要精确到特定行)

In ./tcl/lib/ns-lib.tcl line 191 (for v2.29 line 197), add ,在197行附近添加以下这句,

        source ../mobility/noah.tcl



In ./tcl/lib/ns-lib.tcl line 603ff (for v2.29 line 649ff), add ,在649行左右添加以下内容,
            NOAH {

                    set ragent [$self create-noah-agent $node]

            }



In ./tcl/lib/ns-lib.tcl line 768ff (for v2.29 line 839ff), add,在839行附近添加以下内容

        Simulator instproc create-noah-agent { node } {

                # Create a noah routing agent for this node

                set ragent [new Agent/NOAH]

                ## setup address (supports hier-addr) for noah agent

                ## and mobilenode

                set addr [$node node-addr]

                $ragent addr $addr

                $ragent node $node

                if [Simulator set mobile_ip_] {

                        $ragent port-dmux [$node demux]

                }

                $node addr $addr

                $node set ragent_ $ragent

                return $ragent

        }



添加完了之后重新make clean,make一下就行了,noah里面出现noah.o基本就安装好了,里面有个run.sh的脚本,可以试运行下,ok就没问题了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tcl mobile 脚本