吞吐量

这篇博客主要关注如何使用awk脚本来测量CBR(Constant Bit Rate)数据包的平均吞吐率。作者提供了针对out.tr文件的分析代码,通过分析不同字段如action, time, from, to等,计算特定流量(from=2, to=3, flow_id=2)的吞吐量,单位为kbps,并确保传输开始和结束时的吞吐量为0,以优化图表展示。" 112965498,10542379,Python NetworkX:按边权重排序相邻边,"['python', 'networkx', '数据结构', '图算法']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关注点:

        有线场景中,Trace文件的格式;(此处不细说 )
        利用awk工具计算端到端延迟、抖动率、丢包率、吞吐量;
        利用gnuplot的基本命令,并将awk工具的分析结果用曲线图绘制出来!
 
        tcl在前三章有!
 

 
 测量抖动率: measure-throughput.awk文件

 

#测量CBR数据包的平均吞吐率的awk代码
#针对out.tr的分析
 
BEGIN {
       init=0;
    i=0;
  }
  {
  #将out.tr文件的相应字段赋值给变量
  action=$1;
  time=$2;
  from=$3;
  to=$4;
  type=$5;
  pktsize=$6;
  flow_id=$8;
  src=$9;
  dst=$10;
  seq_no=$11;
  packet_id=$12;
 
 if (action=="r" && from==2 && to==3 && flow_id==2) {
      pkt_byte_sum[i+1]=pkt_byte_sum[i]+pktsize;
  
   if (init==0) {
       start_time=time;
    init=1;
  }
  end_time[i]=time;
  i=i+1;
       }
    }
    END {
      #第一笔记录的Throughput设置为零, 以表示传输开始, 为了绘图的美观
      printf("%.2f/t %.2f/n", end_time[0],0);
   
   for (j=1; j<i; j++) {
   #单位为 kbps
       th=pkt_byte_sum[j]/(end_time[j] - start_time) *8/1000;
    printf("%.2f/t%.2f/n", end_time[j], th);
  }
  
  #最后一笔记录的Throughput设置为零, 以表示传输结束, 为了绘图的美观
      printf("%.2f/t%.2f/n", end_time[i-1],0);
    }

 

 

命令可以参考前面的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值