-
-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unlimited thoughput during tcset #68
Comments
Thank you for sharing interesting information.
If your assumption is correct, the following might workaround the issue Would you try this? 1. Initial setup
2. Create a tc script for the next bandwidth
# cat tcset_eth0.sh
#!/bin/sh
# tc script file:
# the following command sequence lead to equivalent results as
# 'tcset --device eth0 --rate 5M'.
# created by tcset on 2017-06-07T00:09:14.
tc qdisc add dev eth0 root handle 1a1a: htb default 1
tc class add dev eth0 parent 1a1a: classid 1a1a:1 htb rate 1000000kbit
tc class add dev eth0 parent 1a1a: classid 1a1a:2 htb rate 5000.0Kbit ceil 5000.0Kbit burst 62.5KB cburst 62.5KB
tc qdisc add dev eth0 parent 1a1a:2 handle 1a9a: netem
tc filter add dev eth0 protocol ip parent 1a1a: prio 1 u32 match ip dst 0.0.0.0/0 flowid 1a1a:2 3. Modify the script
# cat tcset_eth0.sh
#!/bin/sh
#tc qdisc add dev eth0 root handle 1a1a: htb default 1
tc class change dev eth0 parent 1a1a: classid 1a1a:1 htb rate 1000000kbit
tc class change dev eth0 parent 1a1a: classid 1a1a:2 htb rate 5000.0Kbit ceil 5000.0Kbit burst 62.5KB cburst 62.5KB
tc qdisc change dev eth0 parent 1a1a:2 handle 1a9a: netem
#tc filter add dev eth0 protocol ip parent 1a1a: prio 1 u32 match ip dst 0.0.0.0/0 flowid 1a1a:2 4. Execute the modified script
|
I forgot to mention but it might be important due to the high throughput or low latency, but I was running this over the loopback interface |
This looks better! The first iperf3 session is while executing
|
Thank you for sharing the results. Then, I will modify the |
Thanks! |
I've added
This option will use |
Super! |
I'll close the issue then. |
HI,
I am using tcset to limit the throughput of a connection while following a bandwidth profile. For this I use the tcset command every 30 seconds. However, I notice a spike in the available throughput right after/while the new limit is set. I assume that the previous limit is removed, before adding a new limit and between these there is a not insignificant amount of time when there is no limit.
Is there a possibility to avoid this period of unlimited bandwidth?
As you can see, the measured throughput (red) spikes after when the available throughput (green) has changed (@ 60, 150 and 210 seconds)
![bandwidth_plot](https://cloud.githubusercontent.com/assets/11250711/26834605/1735fef0-4ad6-11e7-903c-c8e3f5518b86.png)
The text was updated successfully, but these errors were encountered: