/tcconfig

Simple tc command wrapper. Easy to setup traffic control of network bandwidth/latency/packet-loss to a network interface.

Primary LanguagePythonMIT LicenseMIT

tcconfig

https://travis-ci.org/thombashi/tcconfig.svg?branch=master

Simple tc command wrapper. Easy to set up traffic control of network bandwidth/latency/packet-loss to a network interface.

The following parameters can be set of network interfaces.

  • Network bandwidth [G/M/K bps]
  • Network latency [milliseconds]
  • Packet loss rate [%]

tcconfig canbe installed via pip (Python package manager).

sudo pip install tcconfig

tcset is a command to impose traffic control to a network interface (device).

usage: tcset [-h] [--version] [--logging] [--stacktrace] [--debug | --quiet]
             --device DEVICE [--rate RATE] [--delay DELAY] [--loss LOSS]
             [--overwrite]

optional arguments:
  -h, --help       show this help message and exit
  --version        show program's version number and exit
  --debug          for debug print.
  --quiet          suppress output of execution log message.

Miscellaneous:
  --logging        output execution log to a file (tcset.log).
  --stacktrace     display stack trace when an error occurred.

Traffic Control:
  --device DEVICE  network device name
  --rate RATE      network bandwidth [K|M|G bps]
  --delay DELAY    round trip network delay [ms] (default=0)
  --loss LOSS      round trip packet loss rate [%] (default=0)
  --overwrite      overwrite existing setting
# tcset --device eth0 --rate 100k
# tcset --device eth0 --delay 100
# tcset --device eth0 --loss 0.1
# tcset --device eth0 --rate 100k --delay 100 --loss 0.1

tcdel is a command to delete traffic control from a network interface (device).

usage: tcdel [-h] [--version] [--logging] [--stacktrace] [--debug | --quiet]
             --device DEVICE

optional arguments:
  -h, --help       show this help message and exit
  --version        show program's version number and exit
  --debug          for debug print.
  --quiet          suppress output of execution log message.

Miscellaneous:
  --logging        output execution log to a file (tcset.log).
  --stacktrace     display stack trace when an error occurred.

Traffic Control:
  --device DEVICE  network device name
# tcdel --device eth0
  • iproute2 (reqrequired for tc commandured)