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项 ...
随机推荐
- Android蓝牙连接以及数据接收发送
1.加入权限 <uses-feature android:name="android.hardware.bluetooth_le" android:required=&quo ...
- 时间和日期控件(Calendar1)
取得选择的: taskItem["data"] = Calendar1.SelectedDate.ToShortDateString();
- python to be linux daemon
所需第三方库:python-daemon[https://pypi.python.org/pypi/python-daemon/] 使用方式: python linux_service.py star ...
- MySQL ODBC for Linux
参考自http://blog.csdn.net/allens_zhou/article/details/8575400 centos7 64bit [IP:192.168.0.100] yum ins ...
- php empty()和isset()
2015年12月11日 10:59:08 echo phpversion(); //5.6.13 $a = array( 'aaa' => 1, 'bbb' => 0, 'ccc' =&g ...
- a byte of python (摘01)
a byte of python 第一章 介绍 Python 特色 简单.易学.免费.开源 高层语言.可移植性.解释性 面向对象.可扩展性.可嵌入性 丰富的库 第二章 安装Python http:// ...
- best matched pair
今天的模拟赛,被虐的不行....英文太差,弄不懂题意,弄懂题意了还不会... 感觉快要受不了了... #include <iostream> #include <cstdio> ...
- Divide and conquer:Garland(POJ 1759)
挂彩灯 题目大意:就是要布场的时候需要挂彩灯,彩灯挂的高度满足: H1 = A Hi = (Hi-1 + Hi+1)/2 - 1, for all 1 < i < N HN = B Hi ...
- BestCoder20 1002.lines (hdu 5124) 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5124 题目意思:给出 n 条线段,每条线段用两个整数描述,对于第 i 条线段:xi,yi 表示该条线段 ...
- 【leetcode】Edit Distance (hard)
Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2 ...