一、環境準備
ns3是基于GNU/Linux平臺使用C++開發的工具軟件,在windows系統中安裝使用ns3環境,可以使用虛擬機VMware并安裝ubuntu系統來實現,現將本教程所用到的虛擬機和系統鏡像放到網盤提供下載
名稱 | 鏈接 | 提取碼 |
---|---|---|
VMware Workstation 17 Pro | https://pan.baidu.com/s/1IEPZdvGGUYJ4-oHW5AHaKw | m3gm |
ubuntu-18.04.6-desktop-amd64 | https://pan.baidu.com/s/1UEueh6bXdQ9LXRTZdMEEBA | aopg |
虛擬機以及Ubuntu系統安裝過程請參考以下文章:
https://blog.csdn.net/u014151564/article/details/132279564
進入系統后,先將系統的源改為清華源或者是阿里,方便后續下載各種依賴
Ubuntu系統菜單→軟件和更新→下載自
二、安裝依賴
在Ubuntu系統桌面右鍵,選擇打開終端
1、更新源
sudo apt-get update
2、安裝軟件包
- 注意:下面的指令有兩種方式來執行,軟件包安裝需要花大量的時間,你可以一條一條的在終端中執行,或者是將安裝命令寫入shell腳本,并加入自動確認參數(-y),然后執行腳本文件,不用一直守在那里
sudo apt-get install gcc g++ python python-dev
sudo apt-get install mercurial
sudo apt-get install bzr
sudo apt-get install gdb valgrind
sudo apt-get install gsl-bin libgsl-dev libgsl23
sudo apt-get install flex bison libfl-dev
sudo apt-get install g++-3.4 gcc-3.4
sudo apt-get install tcpdump
sudo apt-get install sqlite sqlite3 libsqlite3-dev
sudo apt-get install libxml2 libxml2-dev
sudo apt-get install libgtk2.0-0 libgtk2.0-dev
sudo apt-get install vtun lxc
sudo apt-get install uncrustify
sudo apt-get install doxygen graphviz imagemagick
sudo apt-get install texlive texlive-extra-utils texlive-latex-extra
sudo apt-get install python-sphinx dia
apt-get install gir1.2-goocanvas-2.0 python-gi python-gi-cairo python-pygraphviz python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython ipython3
sudo apt-get install libboost-signals-dev libboost-filesystem-dev
sudo apt-get install openmpi*
三、安裝ns3
NS3可通過Tarballs和Bake兩種方式進行安裝,以下將以Tarballs為例:創建Tarballs目錄、進入目錄、下載壓縮包、解壓
有關ubuntu下常見軟件安裝方法可參考文章:https://blog.csdn.net/java211/article/details/3044103
在Ubuntu桌面右鍵打開終端,然后按順序執行以下指令
1、創建Tarballs目錄
mkdir tarballs2、進入目錄
cd tarballs3、下載壓縮包
wget http://www.nsnam.org/release/ns-allinone-3.28.tar.bz24、解壓
tar xjf ns-allinone-3.28.tar.bz2
四、編譯ns3
安裝完成后,在系統的主文件夾里會有剛才創建的名為tarballs的文件夾,我們的ns3就是安裝在這里面,進入到解壓后的ns3主文件夾,我們來到這里是因為需要使用build.py來編譯ns3
在空白處右鍵,打開終端,然后執行以下命令
./build.py
編譯成功后會顯示如下,這里耗費的時間會長一點,感覺時間長的話不用擔心是不是出了問題
編譯完成后我們再使用waf重新配置和編譯ns3系統,雖然這不是必須的,但是一旦工程已經編譯過,就不能再使用build.py腳本了,這時如果想改變原有ns3的配置就需要使用交互式waf命令進行重新配置和編譯,步驟如下
1、進入到ns-3.28文件夾
cd ns-3.282、清除先前配置編譯
./waf distclean3、重新配置ns3,優化編譯包括例子和測試(默認的例子和測試是不編譯的),然后系統會重新配置,編譯系統會檢查ns3以來的軟件包是否安裝
./waf configure --build-profile=debug --enable-examples --enable-tests4、以上僅是配置ns3,正式編譯使用下面的命令
./waf build
至此,ns3編譯完成,接下來進行測試
五、測試
還是在ns-3.28這個文件夾下打開終端(或者從終端使用cd指令直接進入)
執行如下指令
test.py是Python編寫的測試腳本,下面的命令是測試ns3是否編譯正確的典型方法
測試結果最后一行現實的是總共測試和通過測試的腳本數目
./test.py -c core
六、運行腳本測試
下面通過運行ns3提供的示例,再次驗證ns3是否正常安裝,首先執行如下命令
./waf --run hello-simulator
顯示如下則測試通過
至此,ns3環境安裝成功,后續會更新Netanim的簡單使用