tcconfig
is a Simple tc command wrapper. Easy to set up traffic control of network bandwidth/latency/packet-loss to a network interface.
Traffic control can be specified network to apply to:
- Outgoing/Incoming packets
- Certain IP address/network and port
The following parameters can be set to network interfaces.
- Network bandwidth rate [G/M/K bps]
- Network latency [milliseconds]
- Packet loss rate [%]
- Packet corruption rate [%]
tcset
is a command to impose traffic control to a network interface (device).
# 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
# tcset --device eth0 --delay 100 --network 192.168.0.10
# tcset --device eth0 --delay 100 --network 192.168.0.0/24 --port 80
tcdel
is a command to delete traffic control from a network interface (device).
# tcdel --device eth0
tcshow
is a command to display traffic control to network interface(s).
# tcset --device eth0 --delay 10 --delay-distro 2 --loss 0.01 --rate 0.25M --network 192.168.0.10 --port 8080
# tcset --device eth0 --delay 1 --loss 0.02 --rate 500K --direction incoming
# tcshow --device eth0
{
"eth0": {
"outgoing": {
"network=192.168.0.10/32, port=8080": {
"delay": "10.0",
"loss": "0.01",
"rate": "250K",
"delay-distro": "2.0"
},
"network=0.0.0.0/0": {}
},
"incoming": {
"network=0.0.0.0/0": {
"delay": "1.0",
"loss": "0.02",
"rate": "500K"
}
}
}
}
More examples are available at http://tcconfig.readthedocs.org/en/latest/pages/usage/index.html
tcconfig
can be installed via pip (Python package manager).
sudo pip install tcconfig
- iproute2 (reqrequired for tc commandured)
Dependency python packages are automatically installed during tcconfig
installation via pip.