On 11/18/2014 1:33 AM, [email protected] wrote:
> On Mon, 17 Nov 2014 18:49:59 -0800
> Tom Eastep <[email protected]> wrote:
> 
>> On 11/17/2014 6:32 PM, [email protected] wrote:
> 
>>> Yes.  This is described in the SFQ algorithm.  And it happens
>>> exactly like it is described, eg. each 10 seconds.  Each 10 seconds
>>> the SFQ algorithm will "perturb' the queues, resulting in loosing
>>> the sequence.
>  
>> Have you tried either of the two alternatives to SFQ?
> 
> Could you please give me an example on how these would be configured -
> thanks.

I'm afraid that the only one that I've personally used is rather
complicated -- it uses RED.

There are comments in the params file describing the parameters to the
configuration. It shapes both the WAN and LAN interfaces.

There is an unfinished article describing the example at
http://www.shorewall.org/QOSExample.html. There is a link in that
document to the original work.

-Tom
-- 
Tom Eastep        \ When I die, I want to go like my Grandfather who
Shoreline,         \ died peacefully in his sleep. Not screaming like
Washington, USA     \ all of the passengers in his car
http://shorewall.net \________________________________________________
DOWNLOAD=40000 #download speed in kbit. set xx% of real download speed
UPLOAD=17000   # set xx% of real upload speed

# multiports = up to 15 ports
# ports to be classified as bulk #set after connection mark save and after 
connection mark restore
TCP_BULK="1024:" #S and D ports
UDP_BULK="1024:" #S and D ports

# Destination ports to be classified as P2P
TCP_P2P="13769" #D ports
UDP_P2P="13769" #D ports
IP_P2P="192.168.0.133"

# Destination ports to be classified as normal
TCP_NORMAL="80,443,25,20,21,110,993,995" # D ports
UDP_NORMAL=""

# Destination ports to be classified as Prio (overules bulk ports)
TCP_PRIO="22,53" #destination ports
UDP_PRIO="22,53" #destination ports

# Destination ports to be classified as VoIP (overules bulk ports)
TCP_VOIP=""
UDP_VOIP="18080"
IP_VOIP="192.168.0.226" #destination and source IP
IP_VOIP="192.168.0.226" #destination and source IP

#!!!!!uplink leaf class parameters!!!!!!!!!

#bulk
UP_LS_BULK_RATE=$(($UPLOAD*5/100))
UP_UL_BULK_RATE=$UPLOAD
#settings leaf qdisc
UP_BULK_RED_PROB=0.05 #red drob probability
UP_BULK_RED_min=6250 #real limit. To limit BULK traffic
UP_BULK_RED_min2=6250 #min for doing the calculations (burst and etc)
UP_BULK_RED_max=$((2 * $UP_BULK_RED_min2 + $UP_BULK_RED_min))
UP_BULK_RED_burst=$(((5 * $UP_BULK_RED_min2) / (3 * 1000)))
UP_BULK_RED_limit=$(($UP_BULK_RED_max * 5))

#P2P
UP_LS_P2P_RATE=$(($UPLOAD * 5 / 100))
UP_UL_P2P_RATE=$UPLOAD
#settings leaf qdisc
UP_P2P_RED_PROB=0.05 #red drob probability
UP_P2P_RED_min=32000 #real limit. To limit P2P traffic
UP_P2P_RED_min2=32000 #min for doing the calculations (burst and etc)
UP_P2P_RED_max=$((5 * $UP_P2P_RED_min2 + $UP_P2P_RED_min))
UP_P2P_RED_burst=$(((5 * $UP_P2P_RED_min2) / (3 * 1000)))
UP_P2P_RED_limit=$(($UP_P2P_RED_max * 5))
#normal class
UP_LS_NORMAL_RATE=$(($UPLOAD * 90 / 100))
UP_UL_NORMAL_RATE=$UPLOAD
#settings leaf qdisc
UP_NORMAL_RED_PROB=0.05 #red drob probability
UP_NORMAL_RED_min=6250 #real limit. To limit NORMAL traffic
UP_NORMAL_RED_min2=6250 #min for doing the calculations (burst and etc)
UP_NORMAL_RED_max=$((2 * $UP_NORMAL_RED_min2 + $UP_NORMAL_RED_min))
UP_NORMAL_RED_burst=$(((5 * $UP_NORMAL_RED_min2) / (3 * 1000)))
UP_NORMAL_RED_limit=$(($UP_NORMAL_RED_max * 5))

#prio
UP_LS_PRIO_RATE=$(($UPLOAD*50/100))
UP_RT_PRIO_RATE="200" #rate in kbit
UP_RT_PRIO_UMAX="400" #lengte of the packets [byte]
UP_RT_PRIO_DMAX="15" #delay in ms
UP_UL_PRIO_RATE=$UPLOAD

#Voip
UP_UL_VOIP_RATE=$UPLOAD
UP_SC_VOIP_RATE="200"
UP_SC_VOIP_UMAX="350" #length of the voip packets [byte]
UP_SC_VOIP_DMAX="10" #delay in ms

#bulk
DOWN_LS_BULK_RATE=$(($DOWNLOAD*5/100))
DOWN_UL_BULK_RATE=$DOWNLOAD
#leaf qdisc parameters
DOWN_BULK_RED_PROB=0.05 #red drob probability
DOWN_BULK_RED_min=62500 #real limit. To limit BULK traffic
DOWN_BULK_RED_min2=62500 #min for doing the calculations (burst and etc)
DOWN_BULK_RED_max=$((2 * $DOWN_BULK_RED_min2 + $DOWN_BULK_RED_min))
DOWN_BULK_RED_burst=$(((5 * $DOWN_BULK_RED_min2) / (3 * 1000)))
DOWN_BULK_RED_limit=$(($DOWN_BULK_RED_max * 5))


#P2P
DOWN_LS_P2P_RATE=$(($DOWNLOAD*5/100))
DOWN_UL_P2P_RATE=4000
#leaf qdisc parameters
DOWN_P2P_RED_PROB=0.05 #red drob probability
DOWN_P2P_RED_min=200000 #real limit. To limit P2P traffic
DOWN_P2P_RED_min2=200000 #min for doing the calculations (burst and etc)
DOWN_P2P_RED_max=$((2 * $DOWN_P2P_RED_min2 + $DOWN_P2P_RED_min))
DOWN_P2P_RED_burst=$(((5 * $DOWN_P2P_RED_min2) / (3 * 1000)))
DOWN_P2P_RED_limit=$(($DOWN_P2P_RED_max * 5))

#normal class
DOWN_LS_NORMAL_RATE=$(($DOWNLOAD*75/100))
DOWN_UL_NORMAL_RATE=$DOWNLOAD

#leaf qdisc parameters
DOWN_NORMAL_RED_PROB=0.05 #red drob probability
DOWN_NORMAL_RED_min=62500 #real limit. To limit NORMAL traffic
DOWN_NORMAL_RED_min2=62500 #min for doing the calculations (burst and etc)
DOWN_NORMAL_RED_max=$((2 * $DOWN_NORMAL_RED_min2 + $DOWN_NORMAL_RED_min))
DOWN_NORMAL_RED_burst=$(((5 * $DOWN_NORMAL_RED_min2) / (3 * 1000)))
DOWN_NORMAL_RED_limit=$(($DOWN_NORMAL_RED_max * 5))

#prio
DOWN_RT_PRIO_RATE="500" #rate in kbit
DOWN_RT_PRIO_UMAX="400" #length of the packets [byte]
DOWN_RT_PRIO_DMAX="1.5" #delay in ms
DOWN_UL_PRIO_RATE=$DOWNLOAD


#Voip
DOWN_UL_VOIP_RATE=$DOWNLOAD
DOWN_SC_VOIP_RATE="250"
DOWN_SC_VOIP_UMAX="350" #lengt of voip packets [byte]
DOWN_SC_VOIP_DMAX="1.2" #delay in ms
#
# Shorewall version 4 - Tcclasses File
#
# For information about entries in this file, type "man shorewall-tcclasses"
#
# See http://shorewall.net/traffic_shaping.htm for additional information.
#
########################################################################################################
#IFACE: MARK    RATE:                           CEIL                            
PRIORITY        OPTIONS
#CLASS          DMAX:UMAX
1       1       ${UP_SC_VOIP_RATE}kbit:\
                ${UP_SC_VOIP_DMAX}              ${UP_UL_VOIP_RATE}kbit          
1
#               ${UP_SC_VOIP_DMAX}:
#               ${UP_SC_VOIP_UMAX}              ${UP_UL_VOIP_RATE}kbit          
1

1       2       ${UP_RT_PRIO_RATE}kbit:\
                ${UP_RT_PRIO_DMAX}:\
                ${UP_RT_PRIO_UMAX}              ${UP_LS_PRIO_RATE}kbit:\
                                                ${UP_UL_PRIO_RATE}kbit          
2               tcp-ack:1,tos-minimize-delay            

1       3       -                               ${UP_LS_NORMAL_RATE}kbit:\
                                                ${UP_UL_NORMAL_RATE}kbit        
3               red=(limit=$UP_NORMAL_RED_limit,\
                                                                                
                     min=$UP_NORMAL_RED_min,\
                                                                                
                     max=$UP_NORMAL_RED_max,\
                                                                                
                     burst=$UP_NORMAL_RED_burst,\
                                                                                
                     probability=$UP_NORMAL_RED_PROB,\
                                                                                
                     ecn)
1       4       -                               ${UP_LS_P2P_RATE}kbit:\
                                                ${UP_UL_P2P_RATE}kbit           
4               red=(limit=$UP_P2P_RED_limit,\
                                                                                
                     min=$UP_P2P_RED_min,\
                                                                                
                     max=$UP_P2P_RED_max,\
                                                                                
                     burst=$UP_P2P_RED_burst,\
                                                                                
                     probability=$UP_P2P_RED_PROB,\
                                                                                
                     ecn)
1       5       -                               ${UP_LS_BULK_RATE}kbit:\
                                                ${UP_UL_BULK_RATE}kbit          
5               default,\
                                                                                
                red=(limit=$UP_BULK_RED_limit,\
                                                                                
                     min=$UP_BULK_RED_min,\
                                                                                
                     max=$UP_BULK_RED_max,\
                                                                                
                     burst=$UP_BULK_RED_burst,\
                                                                                
                     probability=$UP_BULK_RED_PROB,\
                                                                                
                     ecn)

2:10    1       ${UP_SC_VOIP_RATE}kbit:\
                ${UP_SC_VOIP_DMAX}:\
                ${UP_SC_VOIP_UMAX}              ${UP_UL_VOIP_RATE}kbit          
1

2:20    2       ${DOWN_RT_PRIO_RATE}kbit:\
                ${DOWN_RT_PRIO_DMAX}:\
                ${DOWN_RT_PRIO_UMAX}            ${DOWN_UL_PRIO_RATE}kbit        
2               tcp-ack:1,tos-minimize-delay

2:30    3       -                               ${DOWN_LS_NORMAL_RATE}kbit:\
                                                ${DOWN_UL_NORMAL_RATE}kbit      
3               red=(limit=$DOWN_NORMAL_RED_limit,\
                                                                                
                     min=$DOWN_NORMAL_RED_min,\
                                                                                
                     max=$DOWN_NORMAL_RED_max,\
                                                                                
                     burst=$DOWN_NORMAL_RED_burst,\
                                                                                
                     probability=$DOWN_NORMAL_RED_PROB)
2:40    4       -                               ${DOWN_LS_P2P_RATE}kbit:\
                                                ${DOWN_UL_P2P_RATE}kbit         
4               red=(limit=$DOWN_P2P_RED_limit,\
                                                                                
                     min=$DOWN_P2P_RED_min,\
                                                                                
                     max=$DOWN_P2P_RED_max,\
                                                                                
                     burst=$DOWN_P2P_RED_burst,\
                                                                                
                     probability=$DOWN_P2P_RED_PROB)
2:50    5       -                               ${DOWN_LS_BULK_RATE}kbit:\
                                                ${DOWN_UL_BULK_RATE}kbit        
5               red=(limit=$DOWN_BULK_RED_limit,\
                                                                                
                     min=$DOWN_BULK_RED_min,\
                                                                                
                     max=$DOWN_BULK_RED_max,\
                                                                                
                     burst=$DOWN_BULK_RED_burst,\
                                                                                
                     probability=$DOWN_BULK_RED_PROB)
2:60    6       -                               512mbit:1024mbit                
6               default                                                         
                          
                        
#
# Shorewall version 4 - Tcdevices File
#
# For information about entries in this file, type "man shorewall-tcdevices"
#
# See http://shorewall.net/traffic_shaping.htm for additional information.
#
###############################################################################
#NUMBER:        IN-BANDWITH             OUT-BANDWIDTH   OPTIONS         
REDIRECTED
#INTERFACE                                                              
INTERFACES
1:COMB_IF       ~20mbit:250ms:4sec      ${UPLOAD}kbit   
hfsc,linklayer=ethernet,overhead=0
2:INT_IF        -                       1024mbit        hfsc,classify

Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Shorewall-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/shorewall-users

Reply via email to