Giter Site home page Giter Site logo

tcp-quic-tools's Introduction

QUIC vs TCP performance measurement tools

Build

Before obtaining a runnable executable file you'll have to run go build qtm.go to build the program. A main.exe file will be created right next to the qtm.go file in the root of the repository.

qtm is the name of the tool, which is short for "QUIC / TCP measurement".

Try executing it from the command line: qtm.exe or qtm on the command line!

Application modes

You can start the command line measurement tool in either server or client mode. To start the tool in server mode append the flag --server on startup. If you omit the --server flag the tool is started in client mode by default.

Start tool in client mode
qtm
Start tool in server mode
qtm --server

Usage

Tool syntax:

qtm <flag 1> <flag 2> ... <flag n>

The flags can be in the format -server or --server

Connection Type

There are two connection types available:

  • TCP
  • QUIC

Set the connection type either if you configure nothing (The used connection type is QUIC) or if you provide the --type flag with the connection type. Example: qtm --type=TCP.

Measuring Throughput

In order to measure the throughput, you can either use:

  • --bytes (Example: qtm --bytes=10000000) to send the set amount of bytes
  • --duration with --buffer-size where you'll send for the set duration in chunks of the set buffer-size. (Example: qtm --duration=5s --buffer-size=1024)
TCP measuring example

Start the server with:

qtm --server --type=TCP

Start the client with:

qtm --type=TCP --bytes=100000000

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.