本教程基於VM_Ware 虛擬機上安裝的Ubuntu20.04
一:安裝 NS-3 本體
准備:
安裝開始之前建議大家更換一下軟件源並更新一下庫,這樣接下來的安裝會塊很多
由於安裝過程中需要用到一些工具,所以提前准備好,已經安裝的直接下一步。
sudo apt-get install build-essential
sudo apt-get install python
下載安裝包既可以在官網下載也可以用wget獲取,這里采用命令行的方式
下載過后編譯既可以用build.py腳本,也可以用Waf的方式編譯,這里采用第二種種方式
創建新目錄用於存放ns3安裝包,並進入
mkdir ns3
cd /ns3
直接從網絡上下載ns3安裝包並保存在當前目錄
wget https://www.nsnam.org/release/ns-allinone-3.29.tar.bz2
解壓壓縮包
sudo tar -jxvf ns-allinone-3.29.tar.bz2
清空以前編譯的內容,防止重復編譯可能帶來的錯誤
sudo ./waf clean
編譯系統檢查各種依存關系(以debug模式運行)
sudo ./waf --build-profile=debug --enable-examples --enable-tests configure
編譯
sudo ./waf
運行HelloSimulator程序檢查編譯是否成功
sudo ./waf --run hello-simulator
若出現HelloSimulator則說明編譯成功
至此,ns3安裝已經完成,可以開始仿真,但沒有可視化的效果。下面開始安裝NetAnim可視化工具
二:安裝NetAnim可視化工具
NetAnim安裝包已經隨ns3一起下載,只需編譯安即可。
安裝需要的依賴
# 安裝工具
sudo apt-get install qt4-qmake
# 繪圖所需
sudo apt-get install libqt4-dev
# netanim需要讀取程序生成的xml文件,離線展示動畫
sudo apt-get install libxml2-dev
首先cd進入到ns3的netanim-3.xxx文件夾中
以我的為例
cd ns3/ns3/netanim-3.108
然后開始編譯
sudo make clean
sudo qmake NetAnim.pro
sudo make
啟動
在當前文件夾下運行下面命令,即可啟動軟件
./NetAnim
三:測試
嘗試用NetAnim來展示first.cc的仿真結果
首先在first.cc里面,加上頭文件
#include "ns3/netanim-module.h"
run前面加上三句代碼
AnimationInterface anim("first.xml");
anim.SetConstantPosition(nodes.Get(0), 1.0, 2.0);
anim.SetConstantPosition(nodes.Get(1), 2.0, 3.0);
Simulator::Run();
Simulator::Destroy();
return 0
在ns3文件夾下重新編譯程序
sudo ./waf --run scratch/first
在netanim文件夾下重新啟動
./NetAnim
用打開NetAnim打開生成的XML文件
- 方法:Open->first.xml->Play
- 即:
先點擊軟件左上角文件標志
然后找到first.xml(我的路徑是“/ns3/ns3/ns-3.29/first.xml”)
打開即可看到動畫演示