NS2中trace文件分析
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文件分析的更多相关文章
- [Android Pro] 通过Android trace文件分析死锁ANR
转载自: http://blog.csdn.net/oujunli/article/details/9102101#reply 对于从事Android开发的人来说,遇到ANR(Application ...
- 转【Oracle】一款非常好用的trace文件分析工具
[Oracle]一款非常好用的trace文件分析工具之一 北在南方 2016-04-14 11:23:58 浏览547 评论0 摘要: 介绍一款非常好用的10046分析工具--trca(Trace ...
- Omapl138中AIS文件分析(参照Using the OMAP-L138 Bootloader)(转)
Omapl138中AIS文件分析(参照Using the OMAP-L138 Bootloader) 转载链接:https://blog.csdn.net/qq_40788950/article/de ...
- 使用trace文件分析ANR
2017年02月07日 12:32:45 不死鸟JGC 阅读数 13886更多 分类专栏: Android 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链 ...
- Oracle 10046 trace文件分析
生成10046 trace文件: SQL> create table t10046 as select * from dba_objects; Table created. SQL> se ...
- anr trace文件分析
测试给的trace文件好几万行,怎么看? 1.搜索 你的包名,看它报错误报在你代码的哪里 2.在你代码里面分析 还有,synchronized 就是用来防止多线程调用的,没有那么神奇.
- Caffe源码中common文件分析
Caffe源码(caffe version:09868ac , date: 2015.08.15)中的一些重要头文件如caffe.hpp.blob.hpp等或者外部调用Caffe库使用时,一般都会in ...
- JVM中 Class 文件分析
Java 虚拟机中定义的 Class 文件格式.每一个 Class 文件都对应着唯一一个类 或接口的定义信息,但是相对地,类或接口并不一定都得定义在文件里(譬如类或接口也可以通过 类加载器直接生成). ...
- Maven项目中pom文件分析
pom英文全称: project object model 1.概述 pom.xml文件描述了maven项目的基本信息,比如groupId,artifactId,version等.也可以对maven项 ...
随机推荐
- html5——canvas画直线
<html> <head> <title>canvas demo</title> </head> <body> <canv ...
- 应用HTK搭建语音拨号系统2:创建单音素HMM模型
选自:http://maotong.blog.hexun.com/6204849_d.html 苏统华 哈尔滨工业大学人工智能研究室 2006年10月30日 声明:版权所有,转载请注明作者和来源 该系 ...
- ubuntu14.04 163sources.list
deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.163 ...
- Android常用控件
Android 中使用各种控件(View) DatePicker - 日期选择控件 TimePicker - 时间选择控件 ToggleButton - 双状态按钮控件 EditText - 可编辑 ...
- cxLookupComboBox 控件
cxLookupComboBox cxLookupComboBox1.Properties.ListSource //显示数据源 dtsTmnList cxLookupCombo ...
- ePass.CreateFile
javascript和vbscript中没有结构体Struct,ePass的ActiveX对象中把各个参数都展开了,官方文档只给出了对应的代码,没有给出相应的数字,示例代码中却都是数字,其VC代码中有 ...
- Effective C++ -----条款53:不要轻忽编译期的警告
严肃对待编译器发出的警告信息.努力在你的编译器的最高(最严苛)警告级别下争取“无任何警告”的荣誉. 不要过度依赖编译器的报警能力,因为不同的编译器对待事情的态度并不相同.一旦移植到另一个编译器上,你元 ...
- 【leetcode】Search for a Range(middle)
Given a sorted array of integers, find the starting and ending position of a given target value. You ...
- 【python】classmethod & staticmethod 区别
来源:http://blog.csdn.net/carolzhang8406/article/details/6856817 其他参考: http://blog.csdn.net/lovingprin ...
- db2中报SQLCODE=-530, SQLSTATE=23503错误
今天在写一个增加操作时,报错信息如下:SQLCODE=-530, SQLSTATE=23503,该sqlcode说明:“对特定的约束名指定了无效的外健值”. 项目中用的框架是SSH,新增的主对象有多个 ...