AloysAugustin / qperf

qperf is a performance measurement tool for QUIC similar to iperf

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

qperf

A performance measurement tool for QUIC similar to iperf. Uses https://github.com/h2o/quicly

basic usage and example output

Usage: ./qperf [options]

Options:
  -s              run as server
  -c target       run as client and connect to target server
  -t time (s)     run for X seconds (default 10s)
  -e              measure time for connection establishment and first byte only
  -h              print this help

server

./qperf -s
starting server on port 18080
got new connection
request received, sending data
connection 0 second 0 send window: 410688458
connection 0 second 1 send window: 825786506
connection 0 second 2 send window: 1301139487
connection 0 second 3 send window: 1781791568
connection 0 second 4 send window: 1295055881
connection 0 second 5 send window: 1295055881
connection 0 second 6 send window: 634578277
connection 0 second 7 send window: 634578277
connection 0 second 8 send window: 444205689
connection 0 second 9 send window: 444206969

Note: The server looks for a TLS certificate and key in the current working dir named "server.crt" and "server.key" respectively. You can use a self signed certificate; the client doesn't validate it.

client

./qperf -c 127.0.0.1
running client with host=127.0.0.1 and runtime=10s
connection establishment time: 6ms
time to first byte: 7ms
second 0: 3.144 gbit/s (422030372 bytes received)
second 1: 3.444 gbit/s (462189378 bytes received)
second 2: 3.184 gbit/s (427337822 bytes received)
second 3: 3.333 gbit/s (447304096 bytes received)
second 4: 2.996 gbit/s (402100242 bytes received)
second 5: 3.274 gbit/s (439462608 bytes received)
second 6: 3.083 gbit/s (413746021 bytes received)
second 7: 3.336 gbit/s (447686682 bytes received)
second 8: 3.034 gbit/s (407235597 bytes received)
second 9: 3.02 gbit/s (405314061 bytes received)

how to build

git clone --recurse-submodules git@github.com:rbruenig/qperf.git
mkdir build-qperf
cd build-qperf
cmake ../qperf
make

About

qperf is a performance measurement tool for QUIC similar to iperf

License:GNU General Public License v3.0


Languages

Language:C 94.7%Language:C++ 3.0%Language:CMake 2.3%