out.tr文件浅析
2013-03-30 11:57
190 查看
原文地址:http://blog.sina.com.cn/s/blog_6704f18f01015hkj.html
在ns2中进行了一个ns模拟后会产生一个跟踪文件out.tr。
生成的out.tr文件形式如下:
+ 0.1 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
- 0.1 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.108 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
- 0.108 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
r 0.114 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.114 2 3 cbr 1000 ------- 2 1.0 3.1 0 0
- 0.114 2 3 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.116 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
- 0.116 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
r 0.122 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
+ 0.122 2 3 cbr 1000 ------- 2 1.0 3.1 1 1
- 0.122 2 3 cbr 1000 ------- 2 1.0 3.1 1 1
+ 0.124 1 2 cbr 1000 ------- 2 1.0 3.1 3 3
- 0.124 1 2 cbr 1000 ------- 2 1.0 3.1 3 3
r 0.13 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
相对应的12个部分分别为:
event time from_node to_node pkt_type pkt_size flags fid src_addr dst_addr seq_num pkt_id
每一笔记录的开始字段都是封包事件发生的原因:r表示这个封包被某个节点接受,+表示进入队列,-表示离开队列,d表示封包被队列丢弃;
第二个字段表示事件发生的时间;
第三个字段表示事件发生的开始节点:from node;
第四个字段表示事件发生的结束节点:to node;
第五个字段表示封包的类型;
第六个字段表示封包的大小,单位是byte;
第七个字段表示封包的标记标注;
第八个字段表示封包属于哪一个数据流。即在TCL脚本中所定义的类似$udp set fid_ 2;
第九、十两个字段表示封包的来源端和目的端,格式为a.b,a代表节点编号,吧表示端口号;
第十一字段表示封包的序号;第十一个字段表示的是网络层包的顺序号,需要注意的是,对于UDP应用来说是不需要顺序号的,但是对于NS2依然保持这个顺序号是为了方便分析。
第十二字段表示封包的id。
一般进行了ns模拟之后就会产生out.tr,它是你在哪层文件夹进行ns仿真就会在哪产生这个跟踪文件。
在tcl文件中要有如下代码:
set nf1 [open out.tr w]
$ns trace-all $nf1
如果想产生nam的跟踪文件则同样,如下:
set nf2 [open out.nam w]
$ns namtrace-all $nf2
这个out.tr很重要,但是它因为数据太多很不方便分析。于是我们有了nam等分析工具。nam等都是在基于out.tr上得出的分析。
在ns2中进行了一个ns模拟后会产生一个跟踪文件out.tr。
生成的out.tr文件形式如下:
+ 0.1 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
- 0.1 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.108 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
- 0.108 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
r 0.114 1 2 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.114 2 3 cbr 1000 ------- 2 1.0 3.1 0 0
- 0.114 2 3 cbr 1000 ------- 2 1.0 3.1 0 0
+ 0.116 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
- 0.116 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
r 0.122 1 2 cbr 1000 ------- 2 1.0 3.1 1 1
+ 0.122 2 3 cbr 1000 ------- 2 1.0 3.1 1 1
- 0.122 2 3 cbr 1000 ------- 2 1.0 3.1 1 1
+ 0.124 1 2 cbr 1000 ------- 2 1.0 3.1 3 3
- 0.124 1 2 cbr 1000 ------- 2 1.0 3.1 3 3
r 0.13 1 2 cbr 1000 ------- 2 1.0 3.1 2 2
相对应的12个部分分别为:
event time from_node to_node pkt_type pkt_size flags fid src_addr dst_addr seq_num pkt_id
每一笔记录的开始字段都是封包事件发生的原因:r表示这个封包被某个节点接受,+表示进入队列,-表示离开队列,d表示封包被队列丢弃;
第二个字段表示事件发生的时间;
第三个字段表示事件发生的开始节点:from node;
第四个字段表示事件发生的结束节点:to node;
第五个字段表示封包的类型;
第六个字段表示封包的大小,单位是byte;
第七个字段表示封包的标记标注;
第八个字段表示封包属于哪一个数据流。即在TCL脚本中所定义的类似$udp set fid_ 2;
第九、十两个字段表示封包的来源端和目的端,格式为a.b,a代表节点编号,吧表示端口号;
第十一字段表示封包的序号;第十一个字段表示的是网络层包的顺序号,需要注意的是,对于UDP应用来说是不需要顺序号的,但是对于NS2依然保持这个顺序号是为了方便分析。
第十二字段表示封包的id。
一般进行了ns模拟之后就会产生out.tr,它是你在哪层文件夹进行ns仿真就会在哪产生这个跟踪文件。
在tcl文件中要有如下代码:
set nf1 [open out.tr w]
$ns trace-all $nf1
如果想产生nam的跟踪文件则同样,如下:
set nf2 [open out.nam w]
$ns namtrace-all $nf2
这个out.tr很重要,但是它因为数据太多很不方便分析。于是我们有了nam等分析工具。nam等都是在基于out.tr上得出的分析。
相关文章推荐
- 文件系统不同步问题-resource is out of sync with the file system
- Spring配置文件浅析(学习笔记)
- Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式
- 浅析反射、工厂和配置文件
- Linux下如何不停止服务,清空nohup.out文件
- 用 tr 过滤文件
- ns2仿真结束的.tr文件中的数据意义
- Spring中使用classpath加载配置文件浅析
- Perl编程之基于XML::XPath和XML::Simple的XML文件读写浅析
- ELF可执行格式文件转换成a.out格式分析工具
- 微软私有云分享(R2)11-应答文件浅析
- 一个javabean文件,含三个属性,利用set、out标签完成对三个属性的设置和显示
- 解决Tomcat日志文件catalina.out文件过大问题
- Laravel基础-浅析.env配置文件
- 服务器性能分析工具gprof的使用及没有生成gmon.out文件的原因
- 黑马程序员——对象序列化,读取 存入文件ObjectIn(Out)putStream;非序列化,1,static;2,transient
- C语言中的文件操作浅析
- 浅析BMP位图文件结构(含Demo)
- Android init.rc文件浅析
- Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式: