Total Pageviews

Friday 19 July 2024

网络性能测试工具iNet

  • 带宽 Bandwidth
  • 往返时延 rtt
  • 抖动 Jitter
  • 丢包率

使用方法

server 端

# 启动
./iNet -s -p 9999

client 端

./iNet -c 127.0.0.1 -p 9999 -i 2 -t 10 -b 1M 
./iNet -c 127.0.0.1 -p 9999 -r # rtt test 默认测试10次,数据包大小为64B
-c:客户端模式,后接服务器ip
-p:后接服务端监听的端口
-i:设置带宽报告的时间间隔,单位为秒
-t:设置测试的时长,单位为秒
-b:设置udp的发送带宽,单位bit/s

在UDP模式下,客户端以100Mbps为数据发送速率,测试客户端到服务器上的带宽。

项目文件说明

  • 客户端与服务器端连接 UdpConnection.h
  • 客户端发送数据包工具类 Message.h
  • socket 多平台兼容创建和管理 SocketUtil.h

主要流程

server 端

  • 绑定本地端口,建立socket
  • 接收rtt测试消息
    • 接收客户端传过来的数据包,没接收一个,返回当前数据包的rtt时延
  • 接收bandwidth测试消息
    • 接收客户端传过来的数据包,直至bandwidthtestfinish 消息结束,进行统计,并给客户端回复报告
    • 设置了超时时间5s

client 端

  • 创建sockets
  • 发送rtt测试请求,发送rtt测试包
  • 发送bandwidth测试请求,发送bandwidth测试包
    • 测试报告的打印间隔
  • 接收服务器端返回的统计信息

from https://github.com/ihewro/iNet

 

No comments:

Post a Comment