leach协议在NS2.34上的安装移植

本文参照了中的方法,成功的移植了leach协议,希望对你有所帮助

http://www.linuxquestions.org/questions/linux-software-2/how-to-integrate-the-resource-energy-leach-class-into-ns-2-34-a-870368/

注意:将Leach-setup.sh中的/opt/ns-allinone-2.34 替换为自己的ns-allinone-2.34的目录,例如,/home/wsn/ns-allinone-2.34

假设ns-2.34 的编译器为gcc-4.4
ns-2.34 安装目录是/home/wsn/ns-allinone-2.34
第一步:下载 ns-234-leach.tar.gz ,并将其拷贝到 /home/wsn/ns-allinone-2.34/ns-2.34。下载网址为
https://docs.google.com/uc?id=0BzLWx...CNWG1NQK&hl=en
第二步:下载 leach-setup.sh  并拷贝到 /home/wsn/ns-allinone-2.34/ns-2.34 下载网址为
https://docs.google.com/uc?id=0BzLWx...CJSU5ZYG&hl=en
第三步:将Leach-setup.sh中所有的/opt/...替换为自己的ns-allinone-2.34的目录/home/wsn/....
第四步:切换到/home/wsn/ns-allinone-2.34/ns-2.34/目录下,运行leach-setup.sh
wsn@ubuntu:~$ cd /home/wsn/ns-allinone-2.34/ns-2.34/
wsn@ubuntu:/home/wsn/ns-allinone-2.34/ns-2.34$ bash leach-setup.sh
第五步:修改Makefile” & “Makefile.in 文件:如下所示
CC = gcc-4.4
CPP = g++-4.4
第六步:修改 trace/cmu-trace.h 文件
在第60行添加下面定义
#ifdef MIT_uAMPS
#define ADV_CHAR             'A'
#define REQ_CHAR             'R'
#define DATA_CHAR            'D'
#endif

在第167行添加
#ifdef MIT_uAMPS
    void    format_rca(Packet *p, int offset);
#endif


第七步:配置并重新编译ns-2.34,并进行 ./configure , make clean ,make
wsn@ubuntu:/opt/ns-allinone-2.34/ns-2.34$./configure
wsn@ubuntu:/opt/ns-allinone-2.34/ns-2.34$make clean
wsn@ubuntu:/opt/ns-allinone-2.34/ns-2.34$make

第八步:make成功后,我们就要测试一下我们的Leach文件是否能够运行了。

这时,直接输入./test,估计肯定会有Line3和Line5行的提示错误,要处理这个问题,只需打开test文件,将里面的代码改为(注意红色部分位置):

#!/bin/bash
cd tcl/exns wireless-demo-csci694.tcl
sleep 2
cd ../../  
                                                       
./leach_test
即可。再次输入./test运行,结果如果如下所示,就说明成功了。

[root@localhostns-2.34]# ./test

num_nodes is set3

warning: Please use-channel as shown in tcl/ex/wireless-mitf.tcl

INITIALIZE THE LISTxListHead

Loading connectionpattern...

thefile:../mobility/scene/cbr-3-test

Loading scenariofile...

StartingSimulation...

channel.cc:sendUp -Calc highestAntennaZ_ and distCST_

highestAntennaZ_ = 1.5, distCST_ = 89771.2

SORTING LISTS...DONE!

NSEXITING...

 第九步:如果出现警告信息,其实也不用担心的,协议是可以正常运行的,也可以通过如下操作消除警告:

在tcl/lib下的ns_default.tcl文件第692行加入7个初始值,具体的初始值应该对照mac文件下的wireless-phy.cc 值输入,如下所示:

Phy/WirelessPhy set alive_  1;     ;# 0 = dead, 1 =alive

Phy/WirelessPhy set Efriss_amp_ 100*1e-12;        ;# Friss amp energy(J/bit/m^2)Phy/Wireless

Phy set Etwo_ray_amp_  0.013*1e-12;       ;#Two-ray amp energy (J/bit/m^4)

Phy/WirelessPhy set EXcvr_  50*1e-9;             ;# Xcvr energy(J/bit)

Phy/WirelessPhy set sleep_  0;                  ;# 0 = awake, 1 =asleep

Phy/WirelessPhy set ss_  1;                     ;# amountof spreading

Phy/WirelessPhy set dist_  0;                   ;# approx. distance totransmitter

注意:这样修改之后,要重新编译。即先执行make clean,再执行make。make成功后,再次运行./test,得到第一次的结果。

第十步:这时,打开/mit/leach_sims文件夹,查看leach.err和leach.out文件,如果leach.out为空,leach.er显示找不到mit/rca下的文件,应该是环境变量设置有问题,需要在.bashrc中加入环境变量

export RCA_LIBRARY=/home/wsn/ns-allinone-2.34/ns-2.34/mit/rca

export uAMPS_LIBRARY=/home/wsn/ns-allinone-2.34/ns-2.34/mit/uAMPS

注意,“home/wsn”要改成你自己的安装目录。

重新运行,应该就会得到结果了,显示如下:

[root@localhost ns-2.34]# ./test

num_nodes is set 3

warning: Please use -channel as shown intcl/ex/wireless-mitf.tcl

INITIALIZE THE LIST xListHead

Loading connection pattern...

the file:../mobility/scene/cbr-3-test

Loading scenario file...

Starting Simulation...

channel.cc:sendUp - Calc highestAntennaZ_ and distCST_

highestAntennaZ_ = 1.5,  distCST_ = 89771.2

SORTING LISTS ...DONE!

NS EXITING...

这时再运行./test应该没有问题了,反正我的安装是没有问题了。

再次打开leach.err文件,里面出现代码:
INITIALIZE THE LIST xListHead
SORTING LISTS ...DONE!

leach.out文件大小也随时间增加,同时产生leach.alive,leach.data等文件,这样就成功了。恭喜你,可以开始leach协议的分析了。


智慧旅游解决方案利用云计算、物联网和移动互联网技术,通过便携终端设备,实现对旅游资源、经济、活动和旅游者信息的智能感知和发布。这种技术的应用旨在提升游客在旅游各个环节的体验,使他们能够轻松获取信息、规划行程、预订票务和安排食宿。智慧旅游平台为旅游管理部门、企业和游客提供服务,包括政策发布、行政管理、景区安全、游客流量统计分析、投诉反馈等。此外,平台还提供广告促销、库存信息、景点介绍、电子门票、社交互动等功能。 智慧旅游的建设规划得到了国家政策的支持,如《国家中长期科技发展规划纲要》和国务院的《关于加快发展旅游业的意见》,这些政策强调了旅游信息服务平台的建设和信息化服务的重要性。随着技术的成熟和政策环境的优化,智慧旅游的时机已经到来。 智慧旅游平台采用SaaS、PaaS和IaaS等云服务模式,提供简化的软件开发、测试和部署环境,实现资源的按需配置和快速部署。这些服务模式支持旅游企业、消费者和管理部门开发高性能、高可扩展的应用服务。平台还整合了旅游信息资源,提供了丰富的旅游产品创意平台和统一的旅游综合信息库。 智慧旅游融合应用面向游客和景区景点主管机构,提供无线城市门户、智能导游、智能门票及优惠券、景区综合安防、车辆及停车场管理等服务。这些应用通过物联网和云计算技术,实现了旅游服务的智能化、个性化和协同化,提高了旅游服务的自由度和信息共享的动态性。 智慧旅游的发展标志着旅游信息化建设的智能化和应用多样化趋势,多种技术和应用交叉渗透至旅游行业的各个方面,预示着全面的智慧旅游时代已经到来。智慧旅游不仅提升了游客的旅游体验,也为旅游管理和服务提供了高效的技术支持。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值