[Bloat] About Setting Bandwidth limit with or without ethernet overhead?

Y intruder_tkyf at yahoo.fr
Wed Nov 7 21:17:52 EST 2018


Dear Moe

I have never touch this defaults.sh

sqm-scripts/src/defaults.sh

# You need to jiggle these parameters. Note limits are tuned towards a
<10Mbit uplink <60Mbup down

[ -z "$SCRIPT" ] && SCRIPT=
[ -z "$UPLINK" ] && UPLINK=2302
[ -z "$DOWNLINK" ] && DOWNLINK=14698
[ -z "$IFACE" ] && IFACE=eth0
[ -z "$QDISC" ] && QDISC=fq_codel
[ -z "$LLAM" ] && LLAM="default"
[ -z "$LINKLAYER" ] && LINKLAYER="none"
[ -z "$OVERHEAD" ] && OVERHEAD=0
[ -z "$STAB_MTU" ] && STAB_MTU=2047
[ -z "$STAB_MPU" ] && STAB_MPU=0
[ -z "$STAB_TSIZE" ] && STAB_TSIZE=512
[ -z "$AUTOFLOW" ] && AUTOFLOW=0
[ -z "$LIMIT" ] && LIMIT=1001	# sane global default for *LIMIT
for fq_codel on a small memory device [ -z "$ILIMIT" ] && ILIMIT=
[ -z "$ELIMIT" ] && ELIMIT=
[ -z "$ITARGET" ] && ITARGET=
[ -z "$ETARGET" ] && ETARGET=
[ -z "$IECN" ] && IECN="ECN"
[ -z "$EECN" ] && EECN="ECN"
# These two used to be called something else; preserve backwards
compatibility [ -z "$ZERO_DSCP_INGRESS" ] &&
ZERO_DSCP_INGRESS="${ZERO_DSCP:-${SQUASH_DSCP:-1}}" [ -z
"$IGNORE_DSCP_INGRESS" ] &&
IGNORE_DSCP_INGRESS="${IGNORE_DSCP:-${SQUASH_INGRESS:-1}}"

[ -z "$IQDISC_OPTS" ] && IQDISC_OPTS=""
[ -z "$EQDISC_OPTS" ] && EQDISC_OPTS=""
[ -z "$TC" ] && TC=tc_wrapper
[ -z "$TC_BINARY" ] && TC_BINARY=$(which tc)
[ -z "$IP" ] && IP=ip_wrapper
[ -z "$IP_BINARY" ] && IP_BINARY=$(which ip)
# Try modprobe first, fall back to insmod
[ -z "$INSMOD" ] && INSMOD=$(which modprobe) || INSMOD=$(which insmod)
[ -z "$TARGET" ] && TARGET="5ms"
[ -z "$IPT_MASK" ] && IPT_MASK="0xff" # to disable: set mask to
0xffffffff #sm: we need the functions above before trying to set the
ingress IFB device #sm: *_CAKE_OPTS should contain the diffserv keyword
for cake [ -z "$INGRESS_CAKE_OPTS" ] && INGRESS_CAKE_OPTS="diffserv3"
[ -z "$EGRESS_CAKE_OPTS" ] && EGRESS_CAKE_OPTS="diffserv3"

# HTB without a sufficiently large burst/cburst value is a bit CPU
hungry # so allow to specify the permitted burst in the time domain
(microseconds) # so the user has a feeling for the associated worst
case latency cost # set to zero to use htb default butst of one MTU
[ -z "$SHAPER_BURST_DUR_US" ] && SHAPER_BURST_DUR_US=1000
[ -z "$ISHAPER_BURST_DUR_US" ] &&
ISHAPER_BURST_DUR_US=$SHAPER_BURST_DUR_US [ -z "$ESHAPER_BURST_DUR_US"
] && ESHAPER_BURST_DUR_US=$SHAPER_BURST_DUR_US

# use the same logic for the calculation of htb's quantum
# quantum controlls how many bytes htb tries to deque from the current
tier # before switching tiers.
[ -z "$SHAPER_QUANTUM_DUR_US" ] &&
SHAPER_QUANTUM_DUR_US=$SHAPER_BURST_DUR_US [ -z
"$ISHAPER_QUANTUM_DUR_US" ] &&
ISHAPER_QUANTUM_DUR_US=$SHAPER_QUANTUM_DUR_US [ -z
"$ESHAPER_QUANTUM_DUR_US" ] &&
ESHAPER_QUANTUM_DUR_US=$SHAPER_QUANTUM_DUR_US


# Logging verbosity
VERBOSITY_SILENT=0
VERBOSITY_ERROR=1
VERBOSITY_WARNING=2
VERBOSITY_INFO=5
VERBOSITY_DEBUG=8
VERBOSITY_TRACE=10
[ -z "$SQM_VERBOSITY_MAX" ] && SQM_VERBOSITY_MAX=$VERBOSITY_INFO
# For silencing only errors
[ -z "$SQM_VERBOSITY_MIN" ] && SQM_VERBOSITY_MIN=$VERBOSITY_SILENT

[ -z "$SQM_DEBUG" ] && SQM_DEBUG=0
if [ "$SQM_DEBUG" -eq "1" ]
then
    SQM_DEBUG_LOG=${SQM_STATE_DIR}/${IFACE}.debug.log
    OUTPUT_TARGET=${SQM_DEBUG_LOG}
else
    OUTPUT_TARGET="/dev/null"
fi

# These are the modules that do_modules() will attempt to load
ALL_MODULES="act_ipt sch_$QDISC sch_ingress act_mirred cls_fw cls_flow
cls_u32 sch_htb sch_hfsc"

tc -s qdisc
qdisc noqueue 0: dev lo root refcnt 2 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0
qdisc htb 1: dev eth0 root refcnt 2 r2q 10 default 18
direct_packets_stat 0 direct_qlen 3 Sent 2448706 bytes 1851 pkt
(dropped 319, overlimits 4375 requeues 0) backlog 6413b 4p requeues 0
qdisc fq_codel 120: dev eth0 parent 1:12 limit 1001p flows 1024 quantum
300 target 17.2ms interval 112.2ms memory_limit 32Mb Sent 2437470 bytes
1844 pkt (dropped 319, overlimits 0 requeues 0) backlog 6413b 4p
requeues 0 maxpacket 1643 drop_overlimit 0 new_flow_count 861 ecn_mark
0 memory_used 8960 new_flows_len 0 old_flows_len 7
qdisc fq_codel 130: dev eth0 parent 1:13 limit 1001p flows 1024 quantum
300 target 17.2ms interval 112.2ms memory_limit 32Mb Sent 0 bytes 0 pkt
(dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0
  maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc fq_codel 110: dev eth0 parent 1:11 limit 1001p flows 1024 quantum
300 target 17.2ms interval 112.2ms memory_limit 32Mb Sent 0 bytes 0 pkt
(dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0
  maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc ingress ffff: dev eth0 parent ffff:fff1 ---------------- 
 Sent 117856 bytes 1631 pkt (dropped 0, overlimits 0 requeues 0) 
 backlog 0b 0p requeues 0
qdisc htb 1: dev ifb4eth0 root refcnt 2 r2q 10 default 16
direct_packets_stat 0 direct_qlen 32 Sent 206912 bytes 1631 pkt
(dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0
qdisc fq_codel 110: dev ifb4eth0 parent 1:10 limit 1001p flows 1024
quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn Sent
206912 bytes 1631 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b
0p requeues 0 maxpacket 1643 drop_overlimit 0 new_flow_count 1428
ecn_mark 0 new_flows_len 1 old_flows_len 6

qdisc noqueue 0: dev lo root refcnt 2 
qdisc htb 1: dev eth0 root refcnt 2 r2q 10 default 18
direct_packets_stat 0 ver 3.17 direct_qlen 3 linklayer atm overhead -4
mtu 2047 tsize 512 qdisc fq_codel 120: dev eth0 parent 1:12 limit 1001p
flows 1024 quantum 300 target 17.2ms interval 112.2ms memory_limit 32Mb
qdisc fq_codel 130: dev eth0 parent 1:13 limit 1001p flows 1024 quantum
300 target 17.2ms interval 112.2ms memory_limit 32Mb qdisc fq_codel
110: dev eth0 parent 1:11 limit 1001p flows 1024 quantum 300 target
17.2ms interval 112.2ms memory_limit 32Mb qdisc ingress ffff: dev eth0
parent ffff:fff1 ---------------- qdisc htb 1: dev ifb4eth0 root refcnt
2 r2q 10 default 16 direct_packets_stat 0 ver 3.17 direct_qlen 32
linklayer atm overhead -4 mtu 2047 tsize 512 qdisc fq_codel 110: dev
ifb4eth0 parent 1:10 limit 1001p flows 1024 quantum 1514 target 5.0ms
interval 100.0ms memory_limit 32Mb ecn 



On Wed, 07 Nov 2018 16:35:16 -0800
Sebastian Moeller <moeller0 at gmx.de> wrote:

> Dear Y.
> 
> Okay could you please post the full defaults.sh then as I assume this
> to configure sqm. Also the output of
> tc -s qdisc
> tc -d qdisc
> Would be interesting.
> 
> Best Regards
> 
> 
> On November 7, 2018 4:06:52 PM PST, Y <intruder_tkyf at yahoo.fr> wrote:
> >moeee :)
> >
> >I don't use openwrt.
> >Maybe, so I cannot find /etc/config/sqm on my pc. 
> >But I use sqmscript with below setting.
> >
> >UPLINK=815 # 98% of linkspeed
> >DOWNLINK=11603 # 98% of linkspeed
> >SCRIPT=simple.qos
> >LINKLAYER=atm
> >OVERHEAD=-4
> >EECN=NOECN
> >
> >Thanks.
> >Yutaka.
> >
> >
> >On Wed, 7 Nov 2018 15:21:24 -0800
> >Sebastian Moeller <moeller0 at gmx.de> wrote:
> >  
> >> Hi Y,
> >> 
> >> when you shape for an ATM link you absolutely nned to set the
> >> linklayer to ATM. If you use openwrt why don't you post the
> >> contents of "cat /etc/config/sqm"
> >> here and we can go over it line by line?
> >> 
> >> Best Regards
> >> 	Sebastian
> >>   
> >> > On Nov 7, 2018, at 14:13, Y <intruder_tkyf at yahoo.fr> wrote:
> >> > 
> >> > I am sorry. Dave.
> >> > 
> >> > My actual speed with this setting , almost expected .
> >> > Around 90kbytes per second actual speed = 810kbit per second
> >> > actual setting speed * 48/53 considering atm connection. 
> >> > This settled speed doesn't include ethernet framing.
> >> > 
> >> > Maybe , 
> >> > Bandwidth = without ethernet overhead
> >> > tc-stab overhead = -14 
> >> > is correct.
> >> > 
> >> > Thank you .
> >> > 
> >> > On Thu, 8 Nov 2018 06:48:30 +0900
> >> > Y <intruder_tkyf at yahoo.fr> wrote:
> >> >     
> >> >> Hi , Dave
> >> >> Thank you for your reply.
> >> >> 
> >> >> I should show you tc-stab setting.
> >> >> 
> >> >> My connection is PPPoA via ethernet. PC connects ethernet  
> >directly.  
> >> >> 
> >> >> ####stab linklayer atm overhead -4
> >> >> 
> >> >> I add PPPoA overhead 10 + Ethernet overhead -14 = -4
> >> >> But, settled Bandwith is 98% of link speed ( I mean this is
> >> >> settled bandwidth without ethernet overhead).
> >> >> 
> >> >> I should shape more?
> >> >> 
> >> >> Thanks.
> >> >> 
> >> >> On Wed, 07 Nov 2018 11:28:47 -0800
> >> >> Dave Taht <dave at taht.net> wrote:
> >> >>     
> >> >>> Y <intruder_tkyf at yahoo.fr> writes:
> >> >>>     
> >> >>>> Hi, I am Yutaka.
> >> >>>> 
> >> >>>> I connect internet via ethenet.	
> >> >>>> Shoud I set Bandwidth limit with or without ethernet overhead
> >> >>>> in any qdiscs?
> >> >>>> When I measured , It seems setting without ethernet overhead
> >> >>>> is correct.        
> >> >>> 
> >> >>> It depends on your next hop's framing. If you are on ethernet
> >> >>> going to ethernet, then you should set ethernet. If you are on
> >> >>> ethernet, going through a cablemodem, set docsis. If you are on
> >> >>> ethernet, going through dsl or something else, you set the  
> >framing  
> >> >>> appropriately.
> >> >>> 
> >> >>> Without setting the framing appropriately you can run into
> >> >>> situations where your shaper can be 60% in accurate (dsl).
> >> >>>     
> >> >>>> 
> >> >>>> Thanks.
> >> >>>> _______________________________________________
> >> >>>> Bloat mailing list
> >> >>>> Bloat at lists.bufferbloat.net
> >> >>>> https://lists.bufferbloat.net/listinfo/bloat        
> >> >>     
> >> > 
> >> > _______________________________________________
> >> > Bloat mailing list
> >> > Bloat at lists.bufferbloat.net
> >> > https://lists.bufferbloat.net/listinfo/bloat    
> >>   
> 



More information about the Bloat mailing list