网络性能测试工具ethr

2020-02-03  本文已影响0人  佛系小懒

概述

基于go语言的网络性能测试工具,支持多操作系统,多协议(如: TCP, UDP, HTTP, HTTPS),主要用于网络 bandwidth, connections/s, packets/s, latency, loss等性能指标测试。

当前的支持情况如下:

基于源码进行安装

git clonehttps://github.com/Microsoft/ethr.git

cd ethr

dep ensure -v #dep为go的包管理工具,可使用glide等工具进行替换

go build

命令介绍

server模式

-s 以server mode运行.

-ui 在text UI中展示输出信息.

-ports <k=v,...> 使用指定端口.多个key=value对通过逗号分隔. Key指定protocol, value指定端口port.默认'control=8888,tcp=9999,udp=9999,http=9899,https=9799'

client模式

-c <server>以client mode 运行连接到<server>.

-r 用于Bandwidth测试,发送数据从server 到 client.

-d <duration> 用于test的时间周期(format: <num>[ms | s | m | h] 0:一直运行; 默认: 10s

-n <number> 并发Sessions (and Threads). 0: 设置与CPUs数相同 默认: 1

-ncs 打印没有Connection Stats. 常与-n option一起使用.

-l <length> buffer大小 (format: <num>[KB | MB | GB]) ,只对Bandwidth测试有效. Max 1GB. 默认: 16KB

-p <protocol> 协议 ("tcp", "udp", "http", "https", or "icmp") 默认: tcp

-ports <k=v,...> 指定端口. 键值对. Key指定 protocol, value指定 base port. 注意:client & server这个设置需要保持一致.默认: 'control=8888,tcp=9999,udp=9999,http=9899,https=9799'

-t <test> 运行测试 ("b", "c", "p", or "l") b: Bandwidth c: Connections/s or Requests/s p: Packets/s l: Latency, Loss & Jitter 默认: b - Bandwidth measurement.

-i <iterations> Number of round trip iterations for each latency measurement. 默认: 1000

External server模式

-m <mode> 必须指定'-m x'用于external mode.

-s :以server mode运行.

-ports <k=v,...> 键值对. Key指定 protocol, value指定 base port.默认: 'tcp=9999,http=9899,https=9799'

External client模式

-m <mode>必须指定'-m x'用于external mode.

-c 以external client mode运行且连接到,host:port格式. 如: www.microsoft.com:443 or 10.1.0.4:22

-d <duration> 测试时间周期 (format: <num>[ms | s | m | h] 0: 一直运行 默认: 10s

-n <number>并发 Sessions (and Threads). 0: 与CPUs数相同 默认: 1

-ncs 打印No Connection Stats,常与 -n option使用.

-l <length> buffer大小 (format: <num>[KB | MB | GB]) ,只对Bandwidth测试有效. Max 1GB. 默认: 16KB

-t <test> 运行测试 ("b", "c", "p", or "l") b: Bandwidth c: Connections/s or Requests/s p: Packets/s l: Latency, Loss & Jitter 默认: b - Bandwidth measurement.

-g <gap> 两次successive measurements 的时间间隔(format: <num>[ms | s | m | h] 0: 没有gap 默认: 1s

通用

-h Help

-no:禁用日志文件(默认,未禁用)

-o <filename> log文件名. 默认Server mode: 'ethrs.log' ;Client mode: 'ethrc.log' External server mode: 'ethrxs.log' External client mode: 'ethrxc.log'

-debug:使能debug信息输出

-4:只用于 IP v4

-6:只用于 IP v6

上一篇 下一篇

猜你喜欢

热点阅读