From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from catfish.maple.relay.mailchannels.net (catfish.maple.relay.mailchannels.net [23.83.214.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 6ED973B2A3 for ; Fri, 7 Apr 2017 06:56:18 -0400 (EDT) X-Sender-Id: netnames|x-authuser|sagermail@sager.me.uk Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 1D9463628A0 for ; Fri, 7 Apr 2017 10:56:17 +0000 (UTC) Received: from smtp3.easily.co.uk (unknown [100.96.133.151]) by relay.mailchannels.net (Postfix) with ESMTPA id 7EE15363907 for ; Fri, 7 Apr 2017 10:56:16 +0000 (UTC) X-Sender-Id: netnames|x-authuser|sagermail@sager.me.uk Received: from smtp3.easily.co.uk (smtp3.easily.co.uk [172.20.107.195]) (using TLSv1 with cipher DHE-RSA-AES256-SHA) by 0.0.0.0:2500 (trex/5.7.37); Fri, 07 Apr 2017 10:56:17 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: netnames|x-authuser|sagermail@sager.me.uk X-MailChannels-Auth-Id: netnames X-Illegal-Spot: 2b77974320abbd0c_1491562576963_2949307553 X-MC-Loop-Signature: 1491562576963:1339694066 X-MC-Ingress-Time: 1491562576962 Received: from [81.2.83.97] (port=54728 helo=mainserver.wc) by smtp3.easily.co.uk with esmtpa (Exim 4.43) id 1cwRYs-0003ci-Ej for cake@lists.bufferbloat.net; Fri, 07 Apr 2017 11:56:14 +0100 Received: from localhost ([127.0.0.1]) by mainserver.wc with esmtp (Exim 4.86_2) (envelope-from ) id 1cwRYo-0006Dg-Lz for cake@lists.bufferbloat.net; Fri, 07 Apr 2017 11:56:10 +0100 To: cake@lists.bufferbloat.net References: <2FD59D30-3102-4A3E-A38E-050E438DABF0@gmail.com> <6F118C46-16DB-48AC-A90D-7E6D44B6D069@gmail.com> <1E4563E2-63E2-419D-AFDD-8CD74F22539B@gmail.com> From: John Sager X-Enigmail-Draft-Status: N1110 Message-ID: Date: Fri, 7 Apr 2017 11:56:13 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 X-AuthUser: sagermail@sager.me.uk Content-Transfer-Encoding: quoted-printable Subject: Re: [Cake] flow isolation for ISPs 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, 07 Apr 2017 10:56:22 -0000 On 07/04/17 09:28, Jonathan Morton wrote: >> It looks like the mark could be obtained from the =E2=80=98mark' field= of the sk_buff struct, but I don=E2=80=99t know the validity of the fiel= d in various cases. For example, I don=E2=80=99t think I can set the mark= on ingress before it reaches a qdisc on an IFB device. >=20 > It has been suggested, in the context of using the =E2=80=9Cmark=E2=80=9D= for Diffserv purposes, that Linux=E2=80=99 conntrack facility could pres= erve the mark between directions of flow. Cake can already query conntra= ck for NAT awareness. >=20 That's how I use marks, though for guaranteeing bandwidth to classes rath= er than fairness per se - it prevents big file downloads killing video streaming. See this fraction from my setup script: # add ingress qdisc $TC qdisc add dev $IFACE handle ffff: ingress # set pkt mark from connmark & send all traffic to ifb interface $TC filter add dev $IFACE parent ffff: protocol ip u32 match u32 0 0 \ action connmark action mirred egress redirect dev $IFB Marks are set up by iptables rules on egress and copied to conntrack. The qdiscs on egress and ifb are htb+fq_codel. John