Re: HTB MPU

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jason Boxman wrote:

On Friday 14 May 2004 03:05, Ed Wildgoose wrote:
<snip>


I appears that you could change the patch in tc/core in fn
tc_calc_rtable, from:

 + if (overhead)
 +     sz += overhead;

to something like:

+ if (overhead)
+ sz += (((sz-1)/mpu)+1) * overhead;



I did that and recompiled iproute2. I kicked my rate up to my actual connection, 256Kbps, and I was nailed as usual. No measurable change using the above with an mpu of 54 for each class. Nothing changed at my handicapped rate of 160kbit either.





I think that calculation needs to be changed so that the divisor "mpu" should become 48, and the overhead will be 5


You could change the whole size calculation to be this instead (ie no IF):
sz = (  (int)((sz-1)/48) + 1) * 53;

Note I don't have the code in front of me, so you may need to tweak that a bit. The idea though is that you get 48 data bytes in each ATM cell, hence we work out how many cells are required. Then we multiply by 53 which is that actual size of the atm cell. Clear as mud?

What would be nice is something that would calculate the actual PPPo(E|A) overhead on the fly at runtime and schedule accordingly.



That's what it ought to do...


Please try this alteration and see if it works any better. (Note: I think that MPU will need to be 48 for the purposes of this code? Check my logic, but setting it to 48 is a little low, but the above calculation will then kick in and change it to 53 which is your real min packet size. Otherwise we will double count.

Interested to hear if this works...

Ed W
_______________________________________________
LARTC mailing list / LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux