美文网首页
NS3基本命令学习

NS3基本命令学习

作者: 53324d792ce6 | 来源:发表于2016-03-09 20:44 被阅读639次

脚本运行

./war --run scratch/myfirst

日志设置

可以在程序中给程序设置日志级别

LogComponentEnable("UdpEchoClientApplication", LOG_LEVEL_INFO);

程序外export命令设置

export NS_LOG=UdpEchoClientApplication=level_all
export 'NS_LOG=UdpEchoClientApplication=level_all|prefix_func'
export 'NS_LOG=UdpEchoClientApplication=level_all|prefix_func:UdpEchoServerApplication=level_all|prefix_func'
export 'NS_LOG=UdpEchoClientApplication=level_all|prefix_func|prefix_time:UdpEchoServerApplication=level_all|prefix_func|prefix_time'
export 'NS_LOG=*=level_all|prefix_func|prefix_time'
export 'NS_LOG=*=level_all|prefix_func|prefix_time'
 ./waf --run scratch/myfirst > log.out 2>&1
/*
./waf --run scratch/myfirst 1> log.out 2>&1
Linux的IO输入输出有三类
Standard Input 代码 0
Standard Output 代码 1
Standard Error 代码 2
2>&1 &1表示类似1,错误输出绑定到1上
*/
export NS_LOG= //清除脚本外ns3日志设置

使用命令行参数(当次运行有效)

CommandLine cmd;
cmd.Parse (argc, argv);//在程序中加入
./waf --run "scratch/myfirst --PrintHelp"
./waf --run "scratch/myfirst --PrintAttributes=ns3::PointToPointNetDevice"
./waf --run "scratch/myfirst --ns3::PointToPointNetDevice::DataRate=5Mbps"
./waf --run "scratch/myfirst --ns3::PointToPointNetDevice::DataRate=5Mbps --ns3::PointToPointChannel::Delay=2ms --ns3::UdpEchoClient::MaxPackets=2"//要注释掉程序中原来的参数
//自己添加命令行参数
uint32_t nPackets = 1;
CommandLine cmd;
cmd.AddValue("nPackets", "Number of packets to echo", nPackets);
//然后再运行./waf --run "scratch/myfirst --PrintHelp"就可以看到自己添加的参数了
./waf --run "scratch/myfirst --nPackets=2"

使用Tracing

Trace发送端是可以在仿真过程中产生信号事件并且提供有关数据访问通道。
Trace发送端自身是没有用的,必须要跟接收端提供有用信息的代码段“相连”。这种发送端和接收端工作的基本原理是允许用户给已有的tracing发送端关联上新类型的接收端,而不需要编辑和重新编译仿真器的核心,一个用户可以在脚本中定义新的tracing接收端,并且可以将其关联到仿真核心中定义的tracing接收端

ASCII 码Tracing

增加以下代码
#include <iostream>//就可以使用标准的C++输出
然后,在Simulator::Run()前增加下面的代码:

AsciiTraceHelper ascii;
pointToPoint.EnableAsciiAll(ascii.CreateFileStream("myfirst.tr"));

然后编译运行,使用trace可以更加详细的分析仿真过程

启用pcap tracing

pointToPoint.EnablePcapAll ("myfirst");

用tcpdump读取结果或者用Wireshark读取结果

tcpdump -nn -tt -r myfirst-0-0.pcap

相关文章

  • NS3基本命令学习

    脚本运行 日志设置 可以在程序中给程序设置日志级别 程序外export命令设置 使用命令行参数(当次运行有效) 使...

  • 基于NS3的无线链路物理层仿真实验

    一、实验目的 掌握NS3的基本仿真方法 熟悉NS3的无线链路模型 改进NS3的无线链路模型 二、实验背景 在原有的...

  • NS初学-first.cc

    在ubuntu上安装了ns3后开始使用样例学习使用ns3,ns3使用c++编程还是让我学起来比较爽的

  • 2022-07-13

    NS3可视化(未完成) 运行命令sudo ./waf -d debug --enable-examples --e...

  • 无标题文章

    # NS3学习报告一 ## 一.实验结果 1. 用命令行读入并且输出了姓名和学号 2. 仿真在5s时停止输出,每一...

  • Linux入门10-bash基础特性

    Linux Bash初体验,学习命令别名,继续学习linux基本命令。

  • Linux入门08-Linux常用基础命令全解

    继续学习Linux基本命令操作,Linux命令初体验。

  • centos7环境下ns3 安装过程

    centos7环境下ns3 安装过程 (1)安装ns3依赖环境 (2)步骤 下载ns3 从https://www....

  • ns3仿真demo(third.cc(wifi))

    ns3仿真demo(third.cc) 一. 运行third.cc #include ''ns3/core-mod...

  • NS3 日志使用

    介绍 NS3提供了功能强大的日志系统,利用日志我们可以方便的使用、调试NS3代码。并且NS3的日志系统使用起来也非...

网友评论

      本文标题:NS3基本命令学习

      本文链接:https://www.haomeiwen.com/subject/eyctlttx.html