From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf0-x232.google.com (mail-pf0-x232.google.com [IPv6:2607:f8b0:400e:c00::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 0877C3B25E for ; Sun, 24 Jul 2016 02:12:27 -0400 (EDT) Received: by mail-pf0-x232.google.com with SMTP id y134so53752084pfg.0 for ; Sat, 23 Jul 2016 23:12:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=n3hUaCr/mY4PeHRs2s1+pL4/AtdlQkasu5Ii7lfB7xM=; b=Yinbbke0Hc9onMkGrlb3pEy7VmfiLxdJ6JHuyaACfpcMBFNX1l9Y+6vW6Yk+q245z3 k5LGy0WJ0iJXYZ+rJcGaR10HpjRsMdGtYrjaP2ZhKY+5yU4e0qYG6kyfdCqQtYuYPZ8r TUL/KJ6pWDSm8P2cJI7HP6hqYhtnOIjaZrVGDXysnS1mSSuintkQ4UQhiANrr46Bf6Kd dV6nEsfiOOtDyRBIiOIRmvtlg4StUXPC7BMazSgc6mesUzifIo3b929kSud+eoIdRw5/ z3FUOjpxCvN0NlwPSr6fkT8y0ZAvem9u4+ihE4nVjS2CjFsEokyV8r7CgiGzVhD8ON03 XHNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=n3hUaCr/mY4PeHRs2s1+pL4/AtdlQkasu5Ii7lfB7xM=; b=I/Z0tO1fMu3ZyoZa/FvPYMnxwzMj8k/8BtE1UjsyKsfjYbvXnKn29Snvvq5S8wvry9 BpcwS7VgTr9uHPBGj9TASWVHPlrn3eydJDqW/Gr2gMUwXqOU3PgzwyVIzogh6x9pJE5p 8WGG5x/Hp2Pu6TgAbrJkv/Pm+1jcNNkXs+V3mVJjZ87QUkBbW6ExX8Dxvq18MiG8poEZ hUD4Yb7/PD+sXNRUYxg2u4RGl9pda14u9EmQxFD71GdaVZncBILbNYI5/uqbn72LnheM Y1rm9EFFBESYti/AIkVYM8+kFXLl3UzD95T/Y4Q7qZaJCFAfU/IRnEOzfk5MCMepSRiu PGxg== X-Gm-Message-State: AEkoouv0EFeWAJUU8kSXsqBcxuC/sNjN9H6HKa/pDEnidA9lGAPaOSzfmTvoEQxH+uEesZgen6y6dApDhsJprA== X-Received: by 10.98.47.132 with SMTP id v126mr19701082pfv.152.1469340747129; Sat, 23 Jul 2016 23:12:27 -0700 (PDT) MIME-Version: 1.0 Received: by 10.66.142.133 with HTTP; Sat, 23 Jul 2016 23:12:26 -0700 (PDT) In-Reply-To: References: <66C89432-6E70-422F-A638-7522BF233707@gmail.com> <35967373-D9F6-4C0C-8005-787DB8C7B1BB@gmx.de> <7ECE7E7A-0310-4DC4-8AC9-29B0F1F2E383@gmx.de> From: Loganaden Velvindron Date: Sun, 24 Jul 2016 10:12:26 +0400 Message-ID: To: moeller0 Cc: cake@lists.bufferbloat.net Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Cake] fq_codel on 3g network in Mauritius X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Jul 2016 06:12:28 -0000 Hi Sebastian, Since dslreports disable the ping due to high latency: I did a ping test during the test: --- youtube-ui.l.google.com ping statistics --- 61 packets transmitted, 61 packets received, 0.0% packet loss round-trip min/avg/max/stddev =3D 336.631/369.733/493.473/30.946 ms It looks to me that configuring the interval to be high for fq_codel (350ms) does improve the latency under load. On Sun, Jul 24, 2016 at 9:53 AM, Loganaden Velvindron wrote: > I've set the interval to 350ms, by using advanced option: > > Result is better: > > http://www.dslreports.com/speedtest/4520697 > > > I will submit a patch for sqm-luci so that the interval is > configurable easily via web ui for African countries where the latency > tends to be of the order of 300ms to 600ms, particularly on 3g > connections. > > > tc -s qdisc > qdisc fq_codel 0: dev eth0 root refcnt 2 limit 1024p flows 1024 > quantum 300 target 5.0ms interval 100.0ms ecn > Sent 3493746 bytes 5455 pkt (dropped 0, overlimits 0 requeues 2) > backlog 0b 0p requeues 2 > maxpacket 256 drop_overlimit 0 new_flow_count 0 ecn_mark 0 > new_flows_len 0 old_flows_len 0 > qdisc htb 1: dev eth1 root refcnt 2 r2q 10 default 12 > direct_packets_stat 3 direct_qlen 1000 > Sent 4869533 bytes 18710 pkt (dropped 0, overlimits 8200 requeues 0) > backlog 0b 0p requeues 0 > qdisc fq_codel 110: dev eth1 parent 1:11 limit 1001p flows 1024 > quantum 300 target 41.1ms interval 350.0ms > Sent 12742 bytes 115 pkt (dropped 0, overlimits 0 requeues 0) > backlog 0b 0p requeues 0 > maxpacket 256 drop_overlimit 0 new_flow_count 84 ecn_mark 0 > new_flows_len 0 old_flows_len 1 > qdisc fq_codel 120: dev eth1 parent 1:12 limit 1001p flows 1024 > quantum 300 target 41.1ms interval 350.0ms > Sent 4854326 bytes 18569 pkt (dropped 85, overlimits 0 requeues 0) > backlog 0b 0p requeues 0 > maxpacket 1454 drop_overlimit 0 new_flow_count 4831 ecn_mark 0 > new_flows_len 1 old_flows_len 1 > qdisc fq_codel 130: dev eth1 parent 1:13 limit 1001p flows 1024 > quantum 300 target 41.1ms interval 350.0ms > Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) > backlog 0b 0p requeues 0 > maxpacket 256 drop_overlimit 0 new_flow_count 0 ecn_mark 0 > new_flows_len 0 old_flows_len 0 > qdisc ingress ffff: dev eth1 parent ffff:fff1 ---------------- > Sent 21938964 bytes 23336 pkt (dropped 0, overlimits 0 requeues 0) > backlog 0b 0p requeues 0 > qdisc mq 0: dev wlan0 root > Sent 18874833 bytes 18494 pkt (dropped 0, overlimits 0 requeues 2) > backlog 0b 0p requeues 2 > qdisc htb 1: dev ifb4eth1 root refcnt 2 r2q 10 default 10 > direct_packets_stat 0 direct_qlen 32 > Sent 22265602 bytes 23335 pkt (dropped 0, overlimits 5193 requeues 0) > backlog 0b 0p requeues 0 > qdisc fq_codel 110: dev ifb4eth1 parent 1:10 limit 1001p flows 1024 > quantum 300 target 5.0ms interval 350.0ms ecn > Sent 22265602 bytes 23335 pkt (dropped 0, overlimits 0 requeues 0) > backlog 0b 0p requeues 0 > maxpacket 1454 drop_overlimit 0 new_flow_count 4392 ecn_mark 0 > new_flows_len 1 old_flows_len 1 > > On Sat, Jul 23, 2016 at 10:59 PM, Loganaden Velvindron > wrote: >> After going through: >> >> https://tools.ietf.org/html/draft-ietf-aqm-fq-codel-06 >> >> I think that I should remove the itarget and etarget, and set the >> Interval rather to 500ms. >> >> >> >> The _interval_ parameter has the same semantics as CoDel and is used >> to ensure that the minimum sojourn time of packets in a queue used as >> an estimator by the CoDel control algorithm is a relatively up-to- >> date value. That is, CoDel only reacts to delay experienced in the >> last epoch of length interval. It SHOULD be set to be on the order >> of the worst-case RTT through the bottleneck to give end-points >> sufficient time to react. >> >> The default interval value is 100 ms. >> >> The default interval value is not suited for my 3g connection where >> the worse-case RTT is much higher. >> >> >> >> On Sat, Jul 23, 2016 at 10:36 PM, Loganaden Velvindron >> wrote: >>>> It seems the initial burst like behavior from the earlier test= was a false positive; these test are still not beautiful, but at least the= y do not indicate that HTB+fq_codel as configured on your system do not suf= fer from uncontrolled bursty-ness. Unfortunately, I have no real insight or= advice to offer how to improve your situation (short f setting the shaper = rates considerably lower). >>>> BTW, =E2=80=9Ctc -d qdisc=E2=80=9D and =E2=80=9Ctc -s disc=E2= =80=9D give a bit more information, and =E2=80=9Ctc class show dev eth1=E2= =80=9D and =E2=80=9Ctc class show dev ifb4eth1=E2=80=9D will also offer mor= e detail about your setup. >>>> >>>> >>>> Best Regards >>>> Sebastian >>>> >>>> >>>> >>> >>> tc -d qdisc: >>> >>> qdisc fq_codel 0: dev eth0 root refcnt 2 limit 1024p flows 1024 >>> quantum 300 target 5.0ms interval 100.0ms ecn >>> qdisc htb 1: dev eth1 root refcnt 2 r2q 10 default 12 >>> direct_packets_stat 5 ver 3.17 direct_qlen 1000 >>> qdisc fq_codel 110: dev eth1 parent 1:11 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> qdisc fq_codel 120: dev eth1 parent 1:12 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> qdisc fq_codel 130: dev eth1 parent 1:13 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> qdisc ingress ffff: dev eth1 parent ffff:fff1 ---------------- >>> qdisc mq 0: dev wlan0 root >>> qdisc htb 1: dev ifb4eth1 root refcnt 2 r2q 10 default 10 >>> direct_packets_stat 0 ver 3.17 direct_qlen 32 >>> qdisc fq_codel 110: dev ifb4eth1 parent 1:10 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms ecn >>> >>> tc -s qdisc: >>> >>> qdisc fq_codel 0: dev eth0 root refcnt 2 limit 1024p flows 1024 >>> quantum 300 target 5.0ms interval 100.0ms ecn >>> Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) >>> backlog 0b 0p requeues 0 >>> maxpacket 256 drop_overlimit 0 new_flow_count 0 ecn_mark 0 >>> new_flows_len 0 old_flows_len 0 >>> qdisc htb 1: dev eth1 root refcnt 2 r2q 10 default 12 >>> direct_packets_stat 5 direct_qlen 1000 >>> Sent 23456195 bytes 109776 pkt (dropped 0, overlimits 86210 requeues 0= ) >>> backlog 0b 4p requeues 0 >>> qdisc fq_codel 110: dev eth1 parent 1:11 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> Sent 14760 bytes 164 pkt (dropped 0, overlimits 0 requeues 0) >>> backlog 0b 0p requeues 0 >>> maxpacket 256 drop_overlimit 0 new_flow_count 163 ecn_mark 0 >>> new_flows_len 1 old_flows_len 0 >>> qdisc fq_codel 120: dev eth1 parent 1:12 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> Sent 23440300 bytes 109600 pkt (dropped 115, overlimits 0 requeues 0) >>> backlog 5816b 4p requeues 0 >>> maxpacket 1454 drop_overlimit 0 new_flow_count 15749 ecn_mark 0 >>> new_flows_len 0 old_flows_len 1 >>> qdisc fq_codel 130: dev eth1 parent 1:13 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms >>> Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) >>> backlog 0b 0p requeues 0 >>> maxpacket 256 drop_overlimit 0 new_flow_count 0 ecn_mark 0 >>> new_flows_len 0 old_flows_len 0 >>> qdisc ingress ffff: dev eth1 parent ffff:fff1 ---------------- >>> Sent 190858989 bytes 149884 pkt (dropped 0, overlimits 0 requeues 0) >>> backlog 0b 0p requeues 0 >>> qdisc mq 0: dev wlan0 root >>> Sent 194287835 bytes 153002 pkt (dropped 0, overlimits 0 requeues 7) >>> backlog 0b 0p requeues 7 >>> qdisc htb 1: dev ifb4eth1 root refcnt 2 r2q 10 default 10 >>> direct_packets_stat 0 direct_qlen 32 >>> Sent 192953486 bytes 149877 pkt (dropped 0, overlimits 41505 requeues = 0) >>> backlog 0b 0p requeues 0 >>> qdisc fq_codel 110: dev ifb4eth1 parent 1:10 limit 1001p flows 1024 >>> quantum 300 target 500.0ms interval 100.0ms ecn >>> Sent 192953486 bytes 149877 pkt (dropped 0, overlimits 0 requeues 0) >>> backlog 0b 0p requeues 0 >>> maxpacket 1454 drop_overlimit 0 new_flow_count 16778 ecn_mark 0 >>> new_flows_len 1 old_flows_len 2 >>> >>> >>> tc class show dev eth1 >>> class htb 1:11 parent 1:1 leaf 110: prio 1 rate 128Kbit ceil 100Kbit >>> burst 1600b cburst 1600b >>> class htb 1:1 root rate 300Kbit ceil 300Kbit burst 1599b cburst 1599b >>> class htb 1:10 parent 1:1 prio 0 rate 300Kbit ceil 300Kbit burst 1599b >>> cburst 1599b >>> class htb 1:13 parent 1:1 leaf 130: prio 3 rate 50Kbit ceil 284Kbit >>> burst 1600b cburst 1599b >>> class htb 1:12 parent 1:1 leaf 120: prio 2 rate 50Kbit ceil 284Kbit >>> burst 1600b cburst 1599b >>> class fq_codel 110:188 parent 110: >>> class fq_codel 120:3d6 parent 120: >>> >>> >>> tc class show dev ifb4eth1: >>> class htb 1:10 parent 1:1 leaf 110: prio 0 rate 19600Kbit ceil >>> 19600Kbit burst 1597b cburst 1597b >>> class htb 1:1 root rate 19600Kbit ceil 19600Kbit burst 1597b cburst 159= 7b >>> class fq_codel 110:2f1 parent 110: >>> class fq_codel 110:330 parent 110: >>> >>> I changed the target from 350ms to 500ms for both ingress and egree, >>> and the throughput seem to be better: >>> >>> http://www.dslreports.com/speedtest/4515961