SuperShaper-SOHO icon indicating copy to clipboard operation
SuperShaper-SOHO copied to clipboard

stab setting to better Accurate.

Open yutayu opened this issue 5 years ago • 12 comments

I forgot this script. Sorry. I cannot write script.I ask to shape new script you.

yutayu avatar Aug 02 '19 20:08 yutayu

stab setting to better Accurate All stab setting is necessary for accurate calculation. For example, atm overhead is 5bytes per 53bytes. ethenet overhead is 14bytes per each packet.

yutayu avatar Aug 02 '19 20:08 yutayu

@yutayu I have no idea what you're trying to achieve with this PR. I understand that the stab qdisc does something related to table sizing depending on your link layer, but I don't see what it actually improves. Please explain more in detail, in better English.

robinsmidsrod avatar Aug 02 '19 21:08 robinsmidsrod

Since tc normally only calculates the size of an IP packet, the upper limit of the bandwidth must be set as low as 20% to allow for overhead, otherwise the actual link speed will be exceeded. But there is a way to calculate the overhead exactly. Since the stab setting is calculated in consideration of the overhead in advance, the speed of the link may be set as the upper limit of the bandwidth.

yutayu avatar Aug 02 '19 22:08 yutayu

Did you understand in my English? lol A bandwidth limit without a stub configuration cannot use all the bandwidth. Stub configuration avoids wasted bandwidth.

yutayu avatar Aug 03 '19 03:08 yutayu

If you set the linklayer in the stab setting to atm, a packet of 1500 bytes will be calculated at 1696 bytes plus the overhead and will use all of the configured bandwidth. If you leave it at 1500 bytes, you will need about 20% more than the configured bandwidth.

yutayu avatar Aug 03 '19 17:08 yutayu

I will try to persuade you for a better script. What's New This script also allows you to configure the stab feature so that you don't have to worry about overhead when setting the bandwidth limit. For example, you can set 8 Mbit to use the 10 Mbit band. Otherwise the modem will cause buffer bloat. Using the stab function, you only need to set about 9.5 Mbit, and you can calculate the queue correctly.

yutayu avatar Aug 04 '19 10:08 yutayu

Using the stab configuration, the ack packet size is calculated to be 106 bytes in qdisc instead of 40 bytes. 40 + overhead = (48 bytes + 5 bytes overhead) * 2 Adjustment is required.

yutayu avatar Aug 04 '19 19:08 yutayu

@yutayu If you intend to have all of the variables in the script, then you should use them to calculate the correct values in the $stab variable based on the type of link layer, according to the recommendations in the tc-stab man page, which you can read here: http://linuxcommandlibrary.com/man/tc-stab.html

You should use Bash math to actually calculate the the values, and I think the typical PPPoE ADSL/VDSL over ATM (which I think is one of the most common ways to connect using copper) connection should be the default in the script.

Also, can you squash your git commits into a single one and add some descriptive comments (with proper English grammar) that describes briefly how to calculate the stab values and points to the tc-stab man page for more details?

robinsmidsrod avatar Aug 04 '19 20:08 robinsmidsrod

I will try except bash calc.

yutayu avatar Aug 04 '19 21:08 yutayu

Please see newest.

yutayu avatar Aug 04 '19 23:08 yutayu

How?

yutayu avatar Aug 06 '19 12:08 yutayu

How?

How what? What was this a reference to? If you're referring to "squash commits", then I'm talking about using git rebase to change all of the different commits on this branch into a single commit. Also rewrite the commit message into something that is consistent with earlier commit messages.

robinsmidsrod avatar Aug 06 '19 15:08 robinsmidsrod