ndnsim结果分析
2024-09-01 10:05:32
ndnSIM中提供了几种trace用来对仿真结果进行跟踪,生成数据文件txt
官网地址: https://ndnsim.net/current/metric.html#packet-trace-helper-example
1、L3RateTracer(官网示例文件:ndn-tree-tracers.cpp)
L3RateTracer::InstallAll("rate-trace.txt", Seconds(1.0));
跟踪NDN节点转发的兴趣/数据包的字节数和速率
生成结果文件rate-trace.txt,包含以下内容
Time Node FaceId FaceDescr Type Packets Kilobytes PacketRaw KilobytesRaw
0.5 leaf-1 1 internal:// InInterests 0 0 0 0
0.5 leaf-1 1 internal:// OutInterests 0 0 0 0
0.5 leaf-1 1 internal:// InData 0 0 0 0
0.5 leaf-1 1 internal:// OutData 0 0 0 0
0.5 leaf-1 1 internal:// InNacks 0 0 0 0
0.5 leaf-1 1 internal:// OutNacks 0 0 0 0CacheHits:“数据包”列指定缓存中满足的兴趣数 CacheMisses:“数据包”列指定缓存中未满足的兴趣数
0.5 leaf-1 1 internal:// InSatisfiedInterests 0 0 0 0
0.5 leaf-1 1 internal:// InTimedOutInterests 0 0 0 0
0.5 leaf-1 1 internal:// OutSatisfiedInterests 1.6 0 1 0
0.5 leaf-1 1 internal:// OutTimedOutInterests 0 0 0 0
2、L2RateTracer(官网示例文件:ndn-simple-withl2tracer.cpp)
此跟踪器在本质上与ndn :: L3RateTracer相似,但当前仅跟踪第2层上的数据包丢弃
下图是根据官网用R语言绘制的结果图
ns3::L2RateTracer::InstallAll("rate-trace.txt", Seconds(1.0));
结果文件包含以下内容:
Time Node Interface Type Packets Kilobytes PacketsRaw KilobytesRaw
1 Rtr1 combined Drop 0 0 0
3、CsTracer(官网示例文件:ndn-tree-cs-tracers.cpp)
仅当使用OldContentStore结构时,此跟踪器才起作用!
通过使用ndn :: CsTracer,可以获得仿真节点上缓存命中/缓存未命中的统计信息
CsTracer::InstallAll("cs-trace.txt", Seconds()); 结果文件包含:
Time Node Type Packets
1 leaf-1 CacheHits 0
1 leaf-1 CacheMisses 11
1 leaf-2 CacheHits 0
1 leaf-2 CacheMisses 1 Type:CacheHits: “数据包”列指定缓存中满足的兴趣数
CacheMisses:“数据包”列指定缓存中未满足的兴趣数
Packets:该时间段内的数据包数量,其含义取决于“类型”列
4、AppDelayTracer(官网示例文件:ndn-tree-app-delay-tracer.cpp)
通过使用ndn :: AppDelayTracer,可以获取有关发出兴趣和接收相应数据包之间的延迟的数据。
AppDelayTracer::InstallAll("app-delays-trace.txt"); 结果文件中包含:
Time Node AppId SeqNo Type DelayS DelayUS RetxCount HopCount
10.0058 leaf-1 0 0 LastDelay 0.0057904 5790.4 1 2
10.0058 leaf-1 0 0 FullDelay 9.00579 9.00579e+06 3 2 seqNo:兴趣数据的序列号
Type: LastDelay表示DelayS和DelayUS表示最后发送的兴趣和接收到的数据包之间的延迟
FullDelay表示DelayS和DelayUS代表发送的第一个兴趣点和接收到的数据包之间的延迟(即,包括兴趣点重传的时间)
DelayS:延迟值,以秒为单位
DelayUS:延迟值,以微秒为单位(10 ^ -6)
RetxCount:重发兴趣的次数(对于LastDelay始终等于1)
HopCount:检索到的数据包在从生产者应用程序或缓存返回的途中经过的网络跃点数。 请注意,与ndnSIM 1.0相比,HopCount字段的语义已更改。
剩下的工作就是将结果数据文件处理后可视化
官方使用的R语言,这里数据处理的方法都可,我习惯用python。
最新文章
- express框架
- win10平台mysql5.6.34免安装版(绿色版zip)的配置以及密码和编码设置
- 几个有用的JSON工具
- iOS 展示二级页面
- Java多线程死锁的产生实例
- duilib进阶教程 -- 改进窗口拖动 (12)
- GIT: 远程建立一个仓库,然后复制到本地
- 详解Windows平台搭建Androiod开发环境
- IOS添加自定义字体库
- JS传递参数时对中文进行编码和解码
- mongodb----修改器
- SQLLoader3(数据文件没有分隔符时的导入)
- cocos2d-x学习过程中的疑问
- 学号 20175223 《Java程序设计》第 6 周学习总结
- HDU 1015(字符运算 **)
- vue及webpack在项目中的一些优化
- CNN-卷积层和池化层学习
- 批量删除SQL数据库中的所有表【笔记】
- 20145333茹翔 Exp7 网络欺诈技术防范
- MapGIS Mobile开发