From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp72.ord1c.emailsrvr.com (smtp72.ord1c.emailsrvr.com [108.166.43.72]) (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 72E833BA8E for ; Fri, 4 Jan 2019 13:20:22 -0500 (EST) Received: from smtp2.relay.ord1c.emailsrvr.com (localhost [127.0.0.1]) by smtp2.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id 2ADDFC04DF; Fri, 4 Jan 2019 13:20:22 -0500 (EST) X-SMTPDoctor-Processed: csmtpprox beta Received: from smtp2.relay.ord1c.emailsrvr.com (localhost [127.0.0.1]) by smtp2.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id 26930C0403; Fri, 4 Jan 2019 13:20:22 -0500 (EST) X-Auth-ID: dev@logicalwebhost.com Received: by smtp2.relay.ord1c.emailsrvr.com (Authenticated sender: dev-AT-logicalwebhost.com) with ESMTPSA id C3FCEC04F5; Fri, 4 Jan 2019 13:20:21 -0500 (EST) X-Sender-Id: dev@logicalwebhost.com Received: from [192.168.2.157] (97-90-101-114.static.mdfd.or.charter.com [97.90.101.114]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:25 (trex/5.7.12); Fri, 04 Jan 2019 13:20:22 -0500 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) From: Dev In-Reply-To: Date: Fri, 4 Jan 2019 10:20:20 -0800 Cc: bloat Content-Transfer-Encoding: quoted-printable Message-Id: <989E8F77-A96E-46AB-AEBD-2B47C5822924@logicalwebhost.com> References: <9B37BCD5-9ADE-4E7D-8B5C-82830051831B@logicalwebhost.com> <87d0pdy5ik.fsf@toke.dk> To: Pete Heist X-Mailer: Apple Mail (2.3445.102.3) Subject: Re: [Bloat] fq_codel on bridge multiple subnets? X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Jan 2019 18:20:22 -0000 I want to pass multiple hundreds of Mbps across this bridge very = consistently, and across multiple subnets to different enterprise = gateways which then connect to the internet, will plan a little test to = see how this does under load. Hopefully I don=E2=80=99t need special = NIC=E2=80=99s to handle it? > On Jan 4, 2019, at 1:19 AM, Pete Heist wrote: >=20 > It=E2=80=99s a little different for me in that I=E2=80=99m rate = limiting on one of the physical interfaces, but otherwise, your setup = should reduce latency under load when the Ethernet devices are being = used at line rate. >=20 > If your WAN interface is enp8s0 and goes out to the Internet, you may = want to shape there (htb+fq_codel or cake) depending on what upstream = device is in use. >=20 > If enp7s6 and enp9s2 are only carrying LAN traffic, and not traffic = that goes out to the Internet, fq_codel=E2=80=99s target and interval = could be reduced. >=20 >> On Jan 4, 2019, at 6:22 AM, Dev wrote: >>=20 >> Okay, so this is what I have for /etc/network/interfaces (replaced = eth0-2 with what Debian Buster actually calls them): >>=20 >> auto lo br0 >> iface lo inet loopback >>=20 >> allow-hotplug enp8s0 >> iface enp8s0 inet static >> address 192.168.10.200 >> netmask 255.255.255.0 >> gateway 192.168.10.1 >> dns-nameservers 8.8.8.8 >>=20 >> iface enp7s6 inet manual >> tc qdisc add dev enp7s6 root fq_codel >>=20 >> iface enp9s2 inet manual >> tc qdisc add dev enp9s2 root fq_codel >>=20 >> # Bridge setup >> iface br0 inet static >> bridge_ports enp7s6 enp9s2 >> #bridge_stp on >> address 192.168.3.50 >> broadcast 192.168.3.255 >> netmask 255.255.255.0 >> gateway 192.168.3.1 >> dns-nameservers 8.8.8.8 >>=20 >> so my bridge interfaces now show: >>=20 >>> : tc -s qdisc show dev enp7s6 >> qdisc fq_codel 0: root refcnt 2 limit 10240p flows 1024 quantum 1514 = target 5.0ms interval 100.0ms memory_limit 32Mb ecn >> 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 >>=20 >> and=20 >>=20 >>> : tc -s qdisc show dev enp9s2 >> qdisc fq_codel 0: root refcnt 2 limit 10240p flows 1024 quantum 1514 = target 5.0ms interval 100.0ms memory_limit 32Mb ecn >> Sent 12212 bytes 80 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 >>=20 >> with my bridge like: >>=20 >> ip a=20 >>=20 >> 5: br0: mtu 1500 qdisc noqueue = state UP group default qlen 1000 >> link/ether 00:04:5a:86:a2:84 brd ff:ff:ff:ff:ff:ff >> inet 192.168.3.50/24 brd 192.168.3.255 scope global br0 >> valid_lft forever preferred_lft forever >> inet6 fe80::204:5aff:fe86:a284/64 scope link >> valid_lft forever preferred_lft forever >>=20 >> So do I have it configured right or should I change something? I = haven=E2=80=99t gotten a chance to stress test it yet, but will try = tomorrow. >>=20 >> - Dev >>=20 >>> On Jan 3, 2019, at 10:54 AM, Pete Heist wrote: >>>=20 >>>=20 >>>> On Jan 3, 2019, at 7:12 PM, Toke H=C3=B8iland-J=C3=B8rgensen = wrote: >>>>=20 >>>> Dev writes: >>>>=20 >>>>> I=E2=80=99m trying to create a bridge on eth1 and eth2, with a = management >>>>> interface on eth0, then enable fq_codel on the bridge. My bridge >>>>> interface looks like: >>>>=20 >>>> You'll probably want to put FQ-CoDel on the underlying physical >>>> interfaces, as those are the ones actually queueing the traffic... >>>=20 >>> I can confirm that. I'm currently using a bridge on my home router. = eth3 and eth4 are bridged, eth4 is connected to the CPE device which = goes out to the Internet, eth4 is where queue management is applied, and = this works. It does not work to add this to br0=E2=80=A6 >>>=20 >>=20 >=20