ns3添加模块之vanet-highway

在网上搜了下添加模块的教程,搜到了一个帖子:http://blog.csdn.net/barcodegun/article/details/6898193 ,但是这个帖子仅仅给出了怎样添加的步骤,我觉得写的比较简单,当我们需要添加别的模块时就不知道怎样操作了。所以,我写这个帖子,会将很多遇到的细节问题和原因展现出来。

vanet-highway,这个模块是Bradley Dupont在Arbabi, Weigle的基础上进行改进的模块代码,使用了xml文件以及加入了更多的场景因素,具体可以参见相关文档,代码文档和介绍文档可以在google code中下载:https://code.google.com/p/ns-3-highway-mobility/downloads/list  ,有些不能翻墙的同学下载不了,我上传一份到csdn上:http://download.csdn.net/detail/zy416548283/7626425
,这份代码来自于谷歌的ns3论坛:https://groups.google.com/forum/#!msg/ns-3-users/aOXi5A9tCy8/3-wLcEx31j4J,相对于google code中的代码更加符合module的文件夹分类。

分模块编译,可以参考这个帖子:http://zzgthk.iteye.com/blog/1402271,用一个简单的例子,教你怎样添加模块。ns3的官方也有教程,在ns3-manual中,ns3.20是在第18.2节:Adding a New Module to ns-3.  具体就不翻译了,很好的参考资料,有一个python文件可以帮助你生成模块的相关文件和目录:

./create-module.py new-module

vanet-highway中是给了例子的,为了跑这个例子,在添加好模块之后(直接新建一个文件,然后将上述压缩文件拷贝进去就可以了),然后需要使用waf来编译模块,在编译模块的过程中,由于ns3版本的不断升级,ns3.15的用法和ns3.20的用法已经产生了一些改变,现在把编译过程中的一些问题(编译使用./waf),按照先后问题,做记录,以作参考:

1.(.text+0x18):对‘main’未定义的引用,这个是我自己添加测试模块时,main函数拼写错误造成,还有可能是文件有没有保存。

2.BuildContext‘
object has no attribute ‘new_task_gen‘,对比一下文件,就知道新版的wscript的写法做了改变。如下修改即可:

#headers = bld.new_task_gen(features=['ns3header'])
headers = bld(features='ns3header')

3.../src/vanet-highway/model/WifiConfigurationXml.h:50:36: error: ‘WIFI_PHY_STANDARD_80211p_CCH’ was not declared in this scope

使用谷歌搜索,搜索到了这个文件:http://www.nsnam.org/~pdbarnes/doxygen/wifi-phy-standard_8h_source.html,按照这个文件把这两个变量添加进去即可。

4.../src/vanet-highway/model/Highway.cc:255:85:
error: ‘min’ was not declared in this scope

查看这个文件,math.h中没有这个函数,用fmin函数代替这个函数。

5../src/vanet-highway/model/Highway.cc:83:28:
error: expected type-specifier before ‘list’

在list前面加一个std::list。

6.程序的运行方式,可以自己阅读例子程序,也可以参见:https://code.google.com/p/ns-3-highway-mobility/wiki/HighwayMobilityAndVehicularNetworksInNs3#How_To_Run

7.生成了文件vehicleTrace.csv和networkTrace.csv,具体含义,也可以在wiki中查看;

剩下的是分析代码,以及尝试用netanim来绘出车辆的运动轨迹。google
code中还提供了一个vehicle viewer代码,可以尝试使用下。

ns3添加模块之vanet-highway

时间: 2024-11-05 14:59:58

ns3添加模块之vanet-highway的相关文章

ns3加入模块之vanet-highway

在网上搜了下加入模块的教程,搜到了一个帖子:ns3加入模块 ,可是这个帖子只给出了如何加入的步骤.我认为写的比較简单,当我们须要加入别的模块时就不知道如何操作了. 所以,我写这个帖子,会将非常多遇到的细节问题和原因展现出来. vanet-highway,这个模块是Bradley Dupont在Arbabi, Weigle的基础上进行改进的模块代码,使用了xml文件以及增加了很多其它的场景因素,详细能够參见相关文档.代码文档和介绍文档能够在google code中下载:谷歌code下载链接  ,有

apache添加模块时报错:module status_module is built-in and can't be loaded

在使用cacti监控linux主机上的apache时,apache需要加载 mod_status.so 模块. 编辑httpd.conf,手动添加下行: LoadModule status_module modules/mod_status.so 在重启apache时报错如下: httpd: Syntax error on line 58 of /etc/httpd/httpd.conf: module status_module is built-in and can't be loaded

centos 7下nginx搭建流媒体服务器【动态添加模块】

1.安装nginx依赖包 yum install gcc gcc-c++ openssl-devel zlib-devel pcre pcre-devel yamdi 2.下载解压nginx_mod_h264_streaming,让nginx支持flv,mp4流播放 wget http://h264.code-shop.com/download/nginx_mod_h264_streaming-2.2.7.tar.gz 解压后需要修改src目录下的ngx_http_streaming_modul

nginx添加模块与https支持

实例1:为已安装nginx动态添加模块 以安装rtmp媒流模块为例: 1)下载第三方模块到 [[email protected] nginx-1.8.1]# git clone https://github.com/arut/nginx-rtmp-module.git 2)查看nginx编译安装时安装的模块 [[email protected] nginx-1.8.1]# nginx -V nginx version: nginx/1.8.1 built by gcc 4.4.7 2012031

python在Ubuntu添加模块搜索路径

本文我们来分享python添加模块搜索路径的3个方法,另外不补充了篇"为Python添加默认模块搜索路径". 大约有这么几种方法: 1.添加环境变量PYTHONPATH,python会添加此路径下的模块,在.bashrc文件中添加如下类似行: export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages 2.在site-packages路径下添加一个路径配置文件,文件的扩展名为.pth,内容为要添加的路径即可

手动添加模块路径

# -*- coding: utf-8 -*- #python 27 #xiaodeng #手动添加模块路径 #文件名的后缀(.py)是刻意从import语句中省略的,python会选择在搜索路径中第一个符合导入文件名的文件 # #手动添加模块路径方法 #sys.path.append(dirname)

OpenWRT添加模块 Makefile和Config.in

添加模块编译 在网上找了一下,很多关于编译Openwrt系统的资料,不过这些事情芯片厂商提供的开发包都已经办得妥妥了,但是没有找到系统介绍的资料,添加一个包的介绍有不多,其中有两个很有参考价值: http://blog.csdn.net/lj627889343/article/details/7997463 http://kamikaze.openwrt.org/docs/openwrt.html#x1-460002.1.2 详细步骤如下: 在package目录下创建模块目录my_module,

MVC动态添加模块cshtml页面

@model Lixise.HealthCloud.ServiceOrder.Models.ServiceOrderEdit @using Lixise.HealthCloud.ServiceOrder.Utils @{ ViewBag.Title = "CreateOrder"; } <style type="text/css"> #close { /*background: url(img/close.png) no-repeat; width: 3

Linux下Nginx的安装、升级及动态添加模块

系统基于ubuntu server 14.04.4 amd64 安装 第一步 下载并解压Nginx压缩包 从Nginx官网下载Nginx,或者在Linux上执行wget http://nginx.org/download/nginx-1.10.1.tar.gz命令直接下载解压nginx-1.10.1.tar.gz文件: tar zxvf nginx-1.10.1.tar.gz 第二步 配置 cd nginx-1.10.1 ./configure --prefix=/usr/local/nginx