leach.energy分析仿真

2010-11-24 wcdj

 

本文对wireless.energy文件进行分析。wireless.energy的结构为:第一列表示:运行时间,第二列表示:节点ID,第三列表示:节点目前消耗的能量。用awk编写脚本提取自己需要的信息。下面是分析leach协议中,节点目前已消耗能量和时间关系的awk脚本:(可参考如下)
[1] leach_energy.awk (awk代码)

把awk文件放在~/ns-allinone-2.27/ns-2.27/mit/leach_sims目录下:
cd ~/ns-allinone-2.27/ns-2.27/mit/leach_sims
gawk   -f   leach_energy.awk   leach.energy

执行后,会在~/ns-allinone-2.27/ns-2.27/mit/leach_sims目录下生成4个文件名为节点ID的文件。使用gnuplot工具对其中一个文件可生成如下图形:

pic

从图形中可以看出,随着时间(round,轮)节点消耗能量的变化趋势。

修改leach_energy.awk脚本文件,将输出全部重定向到leach_energy.out一个文件中,并画图显示如下:
[2] leach_energy2.awk (awk代码)


pic

从图形中可以看出,随着时间的变化,有些节点消耗的能量并不均匀,即,在某个时间段曲线很陡。(这是LEACH协议有待改进的地方)
PS:LEACH协议是一个负载均衡的协议。它的基本思想是:以循环的方式选择簇首节点,将整个网络的能量负载平均分配到每个传感器节点中,从而达到降低网络能源消耗、提高网络整体生存时间的目的。仿真表明,与一般的平面多跳路由协议和静态分层算法相比,LEACH协议可以将网络生命周期延长%15。

 

注意修改:在leach中,可以从leach.out文件分析可知,一轮20秒,即每20秒重新选举一次簇首节点。上述图中横坐标注释为time更为合适。

 

 

参考:Getting started with awk

 

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值