ns-3模拟基本流程
1)选择或开发相应的模块
根据实际仿真对象和仿真场景选择相应的仿真模块:如是有线局域网络(CSMA)还是无线局域网络(Wi-Fi);节点是否需要移动(mobility);使用何种应用程序(application);是否需要能量(energy)管理;使用何种路由协议(internet、aodv等);是否需要动画演示等可视化界面(visualizer、netanim)等。
2)编写网络仿真脚本
有了相应的模块,就可以搭建网络仿真环境。ns-3仿真脚本支持在2种语言:C++和python,但是2种语言的API接口是一样的(部分API还没有提供python接口)。
编写ns-3仿真脚本的大体过程如下:
- 生成节点:ns-3中节点相当于一个空的计算机外壳,接下来要给这个计算机安装网络所需要的软硬件,如网卡,应用程序,协议栈等。
- 安装网络设备:不同的网络类型有不同的网络设备,从而提供不同的信道,物理层和MAC层,如CSMA,Wi-Fi,WiMAX和point-to-point等。
- 安装协议栈:ns-3网络中一般是TCP/IP协议栈,依据网络选择具体协议,如是UDP还是TCP,如何选择不同的路由协议&#