ns中模拟出来的时间最终会以trace文件的形式告诉我们,虽然说一般都是用awk等工具分析trace文件,但是了解trace文件的格式也是必不可少的。下面就介绍一下无线网络模拟中trace文件的格式。

trace文件的最开始时一段形如

M 0.0 nn  x  y  rp DSDV
M 0.0 sc cp seed 0.0
M 0.0 prop Propagation/TwoRayGround ant Antenna/OmniAntenna

这段代码主要是一些环境介绍性性的文字。通过查阅官方手册我自己理解,大概猜了一下

首先的那个字母有五种选择

  • N: Node Property
  • I: IP Level Packet Information
  • H: Next Hop Information
  • M: MAC Level Packet Information
  • P: Packet Specific Information

代表的是trace文件所描述信息的类型,然后跟的就是一些tcl中的配置信息,像是范围什么之类的。

  再给出一段我们要重点分析的例子:

动作 时间 节点 层次 ---分组UID 分组类型 分组大小 【mac层信息】 ----【ip层信息】
r 0.033271645 _1_ MAC --- CTS [ 18f840e1 d23f5e16 ]
s 0.033281645 _1_ MAC --- UNKN [ 18f840e1 d23f5414 ]
s 0.033803645 _1_ MAC --- cbr [ 18f840e1 d23f8a01 ] ------- [: : ] []
r 0.038604145 _0_ MAC --- cbr [ 18f840e1 d23f8a01 ] ------- [: : ] []
s 0.038614145 _0_ MAC --- ACK [ 18f840e1 d23f0000 ]
r 0.038998645 _1_ MAC --- ACK [ 18f840e1 d23f0000 ]
s 0.039308645 _2_ MAC --- message [ 80e6de89 933f0000 ] ------- [: -: ]
r 0.040108978 _3_ MAC --- message [ 80e6de89 933f0000 ] ------- [: -: ]
r 0.040109145 _0_ MAC --- message [ 80e6de89 933f0000 ] ------- [: -: ]
D 0.040244414 _2_ RTR IFQ cbr [ ] ------- [: : ] []
s 0.041607590 _1_ MAC --- RTS [ 18f840e1 d23f6818 ]
r 0.042056090 _0_ MAC --- RTS [ 18f840e1 d23f6818 ]
s 0.042066090 _0_ MAC --- CTS [ 18f840e1 d23f5e16 ]
r 0.042578590 _1_ MAC --- CTS [ 18f840e1 d23f5e16 ]

可以看出文件的开始形式基本相同

首先

第一列代表的是事件类型,其中:

s代表分组的发送事件;

r代表分组的接收事件;

d代表分组的丢弃事件;

f代表分组的转发事件;

第二列是时间的发生时间

第三列(形如“——1——”)代表节点编号

第四列是trace种类,种类有:

    RTR:路由器Trace;

  AGT:代理Trace;

  MAC:MAC层Trace;

接下来的部分略有不同。首先我们看事件类型为发送和接收的:

第五列(形如“---”)是分隔符

第六列是分组id

第七列是分组类型(像是RTS、CTS、ACK等)

第八列是分组大小(单位字节)

第九列(接下来那个中括号括的)表示mac层的详细信息

然后有的还有

第十列(中括号中的四个值)分别表示:

  分组发送的源IP地址:节点号.端口号

  分组发送的目的IP地址:节点号.端口号

  分组的TTL值。

  源节点到目的节点的跳数。

这是些比较通用的字段,其他的部分主要就是和自己的定义有一定关系了。

NS2中trace文件分析的更多相关文章

  1. [Android Pro] 通过Android trace文件分析死锁ANR

    转载自: http://blog.csdn.net/oujunli/article/details/9102101#reply 对于从事Android开发的人来说,遇到ANR(Application ...

  2. 转【Oracle】一款非常好用的trace文件分析工具

    [Oracle]一款非常好用的trace文件分析工具之一   北在南方 2016-04-14 11:23:58 浏览547 评论0 摘要: 介绍一款非常好用的10046分析工具--trca(Trace ...

  3. Omapl138中AIS文件分析(参照Using the OMAP-L138 Bootloader)(转)

    Omapl138中AIS文件分析(参照Using the OMAP-L138 Bootloader) 转载链接:https://blog.csdn.net/qq_40788950/article/de ...

  4. 使用trace文件分析ANR

    2017年02月07日 12:32:45 不死鸟JGC 阅读数 13886更多 分类专栏: Android   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链 ...

  5. Oracle 10046 trace文件分析

    生成10046 trace文件: SQL> create table t10046 as select * from dba_objects; Table created. SQL> se ...

  6. anr trace文件分析

    测试给的trace文件好几万行,怎么看? 1.搜索 你的包名,看它报错误报在你代码的哪里 2.在你代码里面分析 还有,synchronized 就是用来防止多线程调用的,没有那么神奇.

  7. Caffe源码中common文件分析

    Caffe源码(caffe version:09868ac , date: 2015.08.15)中的一些重要头文件如caffe.hpp.blob.hpp等或者外部调用Caffe库使用时,一般都会in ...

  8. JVM中 Class 文件分析

    Java 虚拟机中定义的 Class 文件格式.每一个 Class 文件都对应着唯一一个类 或接口的定义信息,但是相对地,类或接口并不一定都得定义在文件里(譬如类或接口也可以通过 类加载器直接生成). ...

  9. Maven项目中pom文件分析

    pom英文全称: project object model 1.概述 pom.xml文件描述了maven项目的基本信息,比如groupId,artifactId,version等.也可以对maven项 ...

随机推荐

  1. C++ 代码头注释模板

    /********************************************************************************* *Copyright(C),You ...

  2. jdbc事务处理和连接池

    JDBC: * JDBC概念:Java DataBase Connectivity(Java数据库连接) SUN公司提供的一组连接数据库API. * JDBC开发步骤: * 1.注册驱动. * 2.获 ...

  3. Effective C++ -----条款17:以独立语句将newed对象置入智能指针

    以独立语句将newed对象存储于(置入)智能指针内.如果不这样做,一旦异常被抛出,有可能导致难以察觉的资源泄露.

  4. nyoj412_bitset_

    Same binary weight 时间限制:300 ms  |  内存限制:65535 KB 难度:3   描述 The binary weight of a positive  integer ...

  5. 从下拉菜单拖拽一个元素 出来,插入到页面中的app 列表中

    1,实现功能:从下拉菜单拖拽一个元素 出来,插入到页面中的app 列表中 并实现app向后移动一个元素的位置: 2.实现思路: 01.遍历下拉菜单,添加拖拽方法,实现位置移动功能: 02.遍历app列 ...

  6. 在SpringMVC中获取request对象

    1.注解法 @Autowired private  HttpServletRequest request; 2. 在web.xml中配置一个监听 <listener> <listen ...

  7. Android Canvas绘图详解(图文)

    编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识.前端.后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过! Andr ...

  8. 【leetcode】Next Permutation(middle)

    Implement next permutation, which rearranges numbers into the lexicographically next greater permuta ...

  9. 数据库的日志数据库(_log.ldf)文件太大,如何压缩

    DUMP TRANSACTION TCB WITH NO_LOGBACKUP LOG TCB WITH NO_LOGDBCC SHRINKDATABASE(TCB) 执行这三条语句就可以了,这里的TC ...

  10. QtCreator 添加第三方头文件库文件路径

    打开工程名.pro文件 添加 INCLUDEPATH += $$PWD/../../Obelisk/thirdparty/prebuilt/include/LeapSDKOrion LIBS += - ...