From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 448133B2A0 for ; Fri, 10 Jun 2016 09:02:57 -0400 (EDT) Received: from [172.17.3.79] ([134.76.241.253]) by mail.gmx.com (mrgmx002) with ESMTPSA (Nemesis) id 0MUZG7-1b2JVl3c3f-00RG3q; Fri, 10 Jun 2016 15:02:54 +0200 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) From: moeller0 In-Reply-To: <735b7505-584f-6c94-2047-110254e73ee8@gmail.com> Date: Fri, 10 Jun 2016 15:02:53 +0200 Cc: cake@lists.bufferbloat.net Content-Transfer-Encoding: quoted-printable Message-Id: References: <7409a52d-8c81-25f0-e070-c7638fdf9d83@gmail.com> <0B4652E3-F061-479D-8BB3-EA0193333A51@gmx.de> <3d4cdbf4-42dd-a371-2d44-f1bad6505684@gmail.com> <735b7505-584f-6c94-2047-110254e73ee8@gmail.com> To: Dennis Fedtke X-Mailer: Apple Mail (2.2104) X-Provags-ID: V03:K0:zfeVku7MhBpVEWISr+bQByfZHs3vLWoe8E7qIuCMobqGgbzQjec wRHNX2Ge7tmbwh7KTEegZXB+M4Mg9cQ1TNzZrf7+sUROGj75WO+xloY69vcalMMnfE7cQXi tyjLPMZ3G7Dl7Sk5V12M3jLIi0ADfRo30ICVaeiR6lOPguGUil8MzTsC+PWhINvms9rm3Tf reuVTvP9hqEY6GzxT9ebw== X-UI-Out-Filterresults: notjunk:1;V01:K0:eq8zUgnAGp8=:a1t8URB5ZuOKjflsMkObk+ RFLan2ZA1bS/FE7CUhyDk0EhcrkxMtpKE55PPxSFmZEBHEEERC79p+dhoWoxrlv+/t1puSELA 4HCpl7fQHNxtEqRnuApseKhXfRh5+a0+NY1LBcY1xQg0dlBy5DfGFa6uGS3IIzmEPxra+/yLS yUgcD17RfNSmuugq8A+rYvc7NjHfnyB/bVbbtdNdt7Ec6L4xrlnKHSZZRKdhsOqc8QJNA5zhn Tm5xvCq4EBywkVGas4vK2wfs+nlUsofyqwU44cxF3KrBKINPTOgVEzYSqbV2ehcjFFGL2Vo7m rnuIuroxbjQTnE1tss35qd85+1vXYDVNZfqq3HjTdAkBBV9uJnNgWm1dPDmTYBIWgt+2Tyy/g xW2gewst7/XvtPbzaoiuNgQZEqSxO+v6aHaxgEi/Pvzy88ugRutFG9w9wLlk/wACa/v0jyAnW LO+UkuApSNy2IhB9a7cSNjRe/NZC4hSKeZAVmbdlhxbzVFAs2hT95Gf/fEz5MahbNb76mWXLk fWvTWd28WUIu4U1qMa+Ig/hKvgtyRB2pra/bDU4fB438yvg3LnzY1M6p/n9rDa6KvMjZqTePk aQ/IQjq79hGsRaR4xjap7su2Nmn7mHOqKU6/Gq8qOuGoP7Rf1O5RE2/xW/M/RMOgqeW8hX2ru ICaslJ60J8prRR+xJx0uhBYEb6e3e1XBPXbt+ny6Pfpj3TdylGqsFnisBzuFQzWIBvpL5apBK 40d6RZZCC7BBbu1lDOewMVC5Co1uo/+J7O5fNXJWeoDYqqJpy32QkP4MmQN/9a3ff4vti1SrE uPXf/AE Subject: Re: [Cake] New to cake. Some questions 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: Fri, 10 Jun 2016 13:02:57 -0000 Hi Dennis, > On Jun 10, 2016, at 14:43 , Dennis Fedtke = wrote: >=20 > Hi Sebastian, >=20 > i used the default setting of 1000. Okay, that should work i assume unless you have a very fast = link=E2=80=A6 What link at what ISP do you actually have? > But it seems that my isp is dropping icmp packets if there are = exceeding some sending threshold. I would be amazed if they did, a sympotom of that would be rsate = reduction to all ICMP probe flows independent of target host. If however = you only see this with specific hosts it is very likely that that host = rate limits its ICMP responses. In either case try another host further = upstream. II think I has reasonable decent results with targeting = 8.8.8.8, googles dns servers. > So there is a lot of none usable ping data. Again, try another host=E2=80=A6 > I increased the send delay to 50ms. 25 ms already shows dropped = requests. That might also help, as long as you stay below their throttling = rate the chosen host might still work okay. > This is the third run now. Waiting for completion. Well, sorry that the method is not as slick and streamlined, but = there are no guarded good ICMP reflectors available on the net. > The ping target is my first hop. Try the next hop then ;) >=20 > Actually my ping always varies around +-5ms even at idle and = independently of ping target. This is via wifi/wlan? If so try from a wired connection = instead. > When i look through the ping file the increase in ping times are = actually appear to be random to me. Well, we expect variability of the individual =E2=80=9Ctrials=E2=80= =9D to exist, that is why we collect so many and try to select the best = measure in the matlab code to remove the unwanted variance. Could you = post a link to both of the generated plots please, the first one showing = te different aggregation measures might be helpful in diagnosing the = issues deeper. > So how to test if my isp responses with fixed icmp packet size? You could try manually. In the folloewing example I pinged = gstatic.com (which belongs to googles CDN as far as I know): bash-3.2$ ping -s 1 -c 1 gstatic.com PING gstatic.com (216.58.213.195): 1 data bytes 9 bytes from 216.58.213.195: icmp_seq=3D0 ttl=3D55 --- gstatic.com ping statistics --- 1 packets transmitted, 1 packets received, 0.0% packet loss bash-3.2$ ping -s 64 -c 1 gstatic.com PING gstatic.com (216.58.213.195): 64 data bytes 72 bytes from 216.58.213.195: icmp_seq=3D0 ttl=3D55 time=3D19.446 ms --- gstatic.com ping statistics --- 1 packets transmitted, 1 packets received, 0.0% packet loss round-trip min/avg/max/stddev =3D 19.446/19.446/19.446/0.000 ms bash-3.2$ ping -s 65 -c 1 gstatic.com PING gstatic.com (216.58.213.195): 65 data bytes 72 bytes from 216.58.213.195: icmp_seq=3D0 ttl=3D55 time=3D21.138 ms wrong total length 92 instead of 93 --- gstatic.com ping statistics --- 1 packets transmitted, 1 packets received, 0.0% packet loss round-trip min/avg/max/stddev =3D 21.138/21.138/21.138/0.000 ms bash-3.2$=20 bash-3.2$ ping -s 1400 -c 1 gstatic.com PING gstatic.com (216.58.213.195): 1400 data bytes 72 bytes from 216.58.213.195: icmp_seq=3D0 ttl=3D55 time=3D6.878 ms wrong total length 92 instead of 1428 --- gstatic.com ping statistics --- 1 packets transmitted, 1 packets received, 0.0% packet loss round-trip min/avg/max/stddev =3D 6.878/6.878/6.878/0.000 ms Once I try to send 65 Bytes of ICMP payload the response is cut short to = 92 bytes, the same might happen with your isp. But also if all your ISP = does is rate limiting the ICMP packests that still can lead to to much = variance in the RTTs=E2=80=A6 >=20 > Im in central europe too :D Ah, then you just have a different work/sleep cycle than I do = ;). Where in central Europe, if I might as Ii am, as you might have = guessed based in Germany=E2=80=A6 Best Regards Sebastian >=20 > Thanks :) >=20 >=20 > Am 10.06.2016 um 07:20 schrieb moeller0: >> Hi Dennis, >>=20 >>=20 >>> On Jun 10, 2016, at 02:49 , Dennis Fedtke = wrote: >>>=20 >>> Hi Sebastian, >>>=20 >>> Sorry this is positive or? >> I would say that is unclear=E2=80=A6 >>=20 >>> But i need more samples ? >> I would try with more samples, after checking that the ping = times in the recorded data file actually are larger for larger probes = than for smaller, some hosts will reply with a fixed maximum ICMP packet = instead of returning the received packet, thereby reducing the signal = range (as only the upload leg of the link is meaning fully contributing = useful differential signal. >> BTW I am in central europe so at times of the day my responses = can be very sporadic, as I either am at work or sleeping ;) >>=20 >> Best Regards >> Sebastian >>=20 >>> Thanks :) >>>=20 >>>=20 >>> Am 10.06.2016 um 01:11 schrieb moeller0: >>>> Hi Dennis, >>>>=20 >>>>> On Jun 10, 2016, at 00:45 , Dennis Fedtke = wrote: >>>>>=20 >>>>> Hi Sebastian, >>>>>=20 >>>>> thank you for your answers :) >>>>>=20 >>>>> The ATM overhead detector script is currently running. >>>>> I read the wiki about it but im not quite sure how to interpret = the plot. >>>>> I mean what info should i read from it? maximum packet size? >>>> The relevant number is reported as =E2=80=9CEstimated overhead = preceding the IP header=E2=80=9D in the top part of the second figure = created by the script. But that is only relevant.useful if you see a = nice step like plot in figure 2 as well ( the second figure in = https://github.com/moeller0/ATM_overhead_detector/wiki as positive and = the fourth figure as negative example. >>>>=20 >>>>> If yes do i set the overhead in cake? Or do i set iptables to = clamp to new mtu/mss? >>>> If you use plain cake and you know the numerical overhead (NN) = the easiest is to add the following to your cake invocation: =E2=80=9Catm = overhead NN=E2=80=9D >>>>=20 >>>> Please note that if you use cake on an ethernet interface the = kernel will already account for 14 byte of ethernet overhead, so if the = script told you 44 as actual overhead, you use =E2=80=9Doverhead 30=E2=80=9D= to address that. If you use a pppoe interface the kernel will most = likely not add the 14 bytes for you, so then you would use =E2=80=9Coverhe= ad 44=E2=80=9D (I excluded the atm option in the last examples for = clarity=E2=80=A6) >>>>=20 >>>>> Regarding UDP paket dropping problem: >>>>> I just read some forums and users stated that under heavy load = cake starts to drop udp packets which causes lag ingame. >>>>> My idea was to set ingress/egress to diffserv4 and apply the EF = dscp mark on those packets. >>>> Ell, not a bad idea, but often the problem are in the incoming = traffic, and unfortunately with the ifb we use we can not use iptables, = but only tc, and remarking with tc is unpleasant. >>>>=20 >>>>> Will this even work? if yes how to do this? iptables? >>>> No, you wuld need tp use tc. >>>>=20 >>>>> ipt -t mangle -A PREROUTING -p udp -m multiport --ports 5000:5500 = -j DSCP --set-dscp-class EF >>>>>=20 >>>>> Like thia? Is prerouting correct here? (Taken from layer cake = script) >>>> This will affect outgoing packets and might be a good idea in = your specific case. >>>>=20 >>>> BUT why don=E2=80=99t you try the default behaviour with specific = rules and tricks and report success or failure back to us, after all the = fastest/easiest classification is one one does not need to perform at = all. >>>>=20 >>>>> For the squash and wash feature. >>>>> Im asking because if i choose to squash in the advanced options of = sqm scripts. >>>>> The dscp fields/marks will be overwritten by iptables to 0 = (besteffort). (layer cake script) >>>>> So then it makes no sense to manually set dscp fields/marks or? = (Or even setting diffserv) >>>> No unfortunately on ingress cake sees the packets before = iptables, so the effective behavioral emulation of wash/squash by cake = is to set ingress cake to besteffort (basically cake ignores the dscp = field which functionally is identical to all packets having the same = value). The squashing by iptables just clears the dscp marls so that = internal networking elements like potentially wifi liknks are not = confuzed by the dscp information. >>>>=20 >>>>> Did i understand this correctly. Per rfc isps should not provide = dscp fields/marks? >>>> Not exactly, per RFC DSCPs are only ever valid/defined inside a = DSCP domain and your ISPs domain ends before it reaches your CPE. Since = you have no control over your ISPs markings, they can be very much not = like you want them to be (Dave That reported that his ISP re-mapped = almost 1/3 or so of packets into the CS1 background class). So it is = recomended that each DSCP domain re-mapps the code points at its entry = point, which in your case is your router=E2=80=A6 >>>>=20 >>>> Best Regards >>>> Sebastian >>>>=20 >>>>> Thank you. >>>>>=20 >>>>>=20 >>>>>=20 >>>>> Am 09.06.2016 um 23:30 schrieb moeller0: >>>>>> Hi Dennis, >>>>>>=20 >>>>>> let me start with a disclaimer, I am not the best information = source for cake on this mailing list, but I assume the others will chime = in if I say something questionable=E2=80=A6 >>>>>>=20 >>>>>>> On Jun 9, 2016, at 22:58 , Dennis Fedtke = wrote: >>>>>>>=20 >>>>>>> Hi >>>>>>>=20 >>>>>>> Currently im running lede + cake + sqm_scripts and i have some = questions: >>>>>>>=20 >>>>>>> 1. What is considered the =E2=80=9Coptimal" setup atm for cake? >>>>>> The same as without cake; really, proper per-packet-overhead = accounting is important for bandwidth shaping, especially for ATM -based = links. I would recommend to follow the method on = https://github.com/moeller0/ATM_overhead_detector to m\empirically = measure whether your link uses ATM encapsulation and what exact overhead = is in use. >>>>>>=20 >>>>>>> e.g. which cake script should i use piece or layer cake? >>>>>> piece_of_cake has only one tier of priority, while layer_cake = currently offers 4. Packets are put into the different priority bands = based on the content of their TOS/DSCP filed in the IP header; if this = is greek to you, I guess piece_of_cake most likely is what you are = looking for.. >>>>>>=20 >>>>>>> 2. Recently squash and wash was removed. >>>>>>> But the sqm scripts were not updated. In the advanced options = should i set that the dcsp marks are kept? >>>>>> This really is an implementation detail that has no immediate = effect if you choose piece_of_cake as typically only the bottleneck is = sensitive to DSCP based priority banding. (Typically in that if you are = unlucky your WLAN will use the DSCP marks to move packets into 4 = different priority classes, which is fine if you want that, but bad for = not sanity checked packets coming in from the wider internet (one is not = supposed to assume incoming packets have sensible dscp markings as per = RFC) that is why the wash/squash option is missed by some of us, = independent of the fact that it was a layering violation). >>>>>>=20 >>>>>>> 3. Should i use advanced options in sqm scripts and set = triple-isolate + diffserv8 ? >>>>>> If you understand what these options do and believe that this is = the best for your network go ahead, otherwise=E2=80=A6 The = triple-isolate option will try to be fair to host_IP addresses first and = then for each hostIP fair to each flow, but for that to do something you = will most likely want this requires that cake sees internal IP addresses = of your end-hosts. In the typical configuration with SQM on the WAN = interface of a NAT router all internal addresses are replaced with the = external IP address of the router it self and triple-isolates per host = fairness will pretty much be equal to per flow fairness (not exactly, = but in essence). So if you want to try tiple-isolate or its better = defined brothers dual-srchost and dual-dsthost you would need to = instantiate SQM on an internal interface like LAN. But then the = direction of ingress and egress from the routers perspective changes = with regards to the internet download and upload direction and you will = need to put the internet upload bandwidth into the download field of the = sqm GUI and vice versa. Also SQM on an internal interface will also = shape internal traffic over the same interface, and that often affects = traffic to and from the wifi/wlan radios to the lan switch=E2=80=A6 (I = guess you would have preferred a shorter less vague response, but such = are the constraints=E2=80=A6) >>>>>>=20 >>>>>>> 4. Is it recommend to enable diffserv on ingress? >>>>>> If you trust/konw/have confirmed that your upstream (ISP?) sends = you sensible and reasonable DSCP markings by all means enable diffserv = on ingress. But the default assumption should be that your upstream used = a dscp mapping that only makes sense for them and not for you. >>>>>>=20 >>>>>>> 5. Is there still the udp packet dropping problem? e.g. games = that are using udp. >>>>>>> If yes does it make sense to apply diffserv classes manually? = How to do this? >>>>>> I am not sure what you mean, but if you test this and have some = findings please report here=E2=80=A6 >>>>>>=20 >>>>>>> 6. is the autorate_ingress still under development? >>>>>>> This very interesting feature. especially for docsis networks. = Will it be possible to set target ping time? >>>>>> The last tests did indicate that this feature is not ready for = primetime at least not on typically fixed bandwidth links and I assume = docsis links are fixed enough. >>>>>>=20 >>>>>>> 6. What difference does it make to set a different rtt? >>>>>>> Setting lower rtt will reduce download speed i guess but will it = allow better ping times (because of lower downloadrate uh)? >>>>>>> What happens if rtt is set way higher? >>>>>> With the RTT parameter you in essence specify how much time you = give the endpoints of a flow to respond to a congestion signal (ECN = marking or packet drop) if you select this way to small you will = sacrifice bandwidth, if you set this too high you will accumulate more = latency under load. The good thing seems to be that this does not need = to be terribly precise, order of magnitude correctness seems to be = sufficient (at least in base2) >>>>>>=20 >>>>>>=20 >>>>>>> Thank you! >>>>>> I am sure the real experts will also chime in=E2=80=A6 >>>>>>=20 >>>>>> Best Regards >>>>>> Sebastian >>>>>>=20 >>>>>>> _______________________________________________ >>>>>>> Cake mailing list >>>>>>> Cake@lists.bufferbloat.net >>>>>>> https://lists.bufferbloat.net/listinfo/cake >>>>> _______________________________________________ >>>>> Cake mailing list >>>>> Cake@lists.bufferbloat.net >>>>> https://lists.bufferbloat.net/listinfo/cake >>>=20 >=20 >=20