> I don't know. I guess that you will have to experiment and see. Please
> let us know what you learn, so I can update the Complex TC doc with your
> findings.
>
I think I figured it out - the tricky part was to determine the excesses
and the additional delay I have to split between the two remaining
classes - 16 & 17. So, here is what I think the final figures should be:
a:13, priority:2, guaranteed speed 320kbit to 320kbit - Main class for
outgoing traffic
a:13:14, priority 2, guaranteed speed 120kbit to full (40KB/s), dmax
60ms, umax 1500b - VOIP traffic routed outside ("boosted" to 200kbits)
a:13:15, priority 3, guaranteed speed 80kbit to full, dmax 100ms, umax
1500b - VPN 1 traffic going out ("boosted" to 120kbits)
a:13:16, priority 4, guaranteed speed 80kbit to full, dmax 224ms, umax
1500b - VPN 2 traffic going out
a:13:17, priority 5, guaranteed speed 40kbit to full, dmax 374ms, umax
1500b - other unclassified traffic going out
N.B. I had to revise up my initial dmax value for class 14 from 50ms to
60ms as I don't think I could have the total speed of all *boosted*
subclasses (14 & 15 in my case) to exceed the speed of the parent class
(class 13). My calculations are as follows (strap yourselves in!):
1. Nominal delays (delay at which classes transmit packets at nominal
speed):
14 - 100ms -> (8*1,500)/120,000
15 - 150ms -> (8*1,500)/80,000
16 - 150ms -> (8*1,500)/80,000
17 - 300ms -> (8*1,500)/40,000
2. Calculating dmax and excess bits values for class 14:
2.1 The "boost" speed for class 14 is 200kbits, which translates to 60ms
-> (8*1,500)/200,000. Therefore dmax for class 14 = 60ms.
2.2 The total speed of all subclasses when class 14 has "boost" speed is
200,000 + 80,000 + 80,000 + 40,000 = 400kbits
2.3 The total amount of bits transmitted at that speed for 60ms is
24,000 (400,000*60ms)
2.4 The total amount of bits transmitted at nominal speed by all classes
for 60ms is 19,200 (320,000*60ms)
2.5 Therefore the amount of excess bits for class 14 is 4,800 bits
(24,000 - 19,200)
3. Calculating dmax and excess bits values for class 15:
3.1 The "boost" speed for class 15 is 120kbits, which translates to
100ms. Therefore dmax for class 15 = 100ms
3.2 The total speed of all subclasses when class 15 has "boost" speed is
120,000 + 120,000 + 80,000 + 40,000 = 360kbits
3.3 The total amount of bits transmitted at that speed for 100ms is
36,000 (360,000*100ms)
3.4 The total amount of bits transmitted at nominal speed by all classes
for 100ms is 32,000 (320,000*100ms)
3.5 Therefore the amount of excess bits for class 15 is 4,000 bits
(36,000 - 32,000)
4. Determine dmax values for leaf classes 16 & 17, taking into account
punitive excesses from classes 14 & 15.
4.1 The total number of excess bits is 8,800 (4,800 + 4,000). I have
decided to split them up according to the nominal speed of classes 16 &
17 so that each class takes roughly equal measure (in terms of time in
milliseconds) of the punishment. In other words, class 16 takes 2/3 of
the total amount of excess bits (as it has twice the speed of class 17)
with class 17 taking the rest. So, 2/3 of 8,800 ~ 5,867 bits, while
class 17 takes the rest - 2,933 bits.
4.2 The amount of time required to transmit 5,867 bits at speed 80kbit/s
(the nominal speed of class 16) is 73.33ms (5,867/80,000) - rounded up
to 74ms. Therefore dmax value for class 16 is 224ms (150ms + 74ms).
4.3 The amount of time required to transmit 2,933 bits at speed 40kbit/s
(the nominal speed of class 17) is 73.325ms (2,933/40,000) - rounded up
to 74ms. Therefore dmax value for class 17 is 374ms (300ms + 74ms).
Does the above makes sense? How do I actually "test" whether these
calculations are correct?
------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Shorewall-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/shorewall-users