From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp180.iad.emailsrvr.com (smtp180.iad.emailsrvr.com [207.97.245.180]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by huchra.bufferbloat.net (Postfix) with ESMTPS id AEAE5201AF4 for ; Fri, 6 May 2011 11:35:42 -0700 (PDT) Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp28.relay.iad1a.emailsrvr.com (SMTP Server) with ESMTP id 8DB57E03A4; Fri, 6 May 2011 14:40:44 -0400 (EDT) X-Virus-Scanned: OK Received: by smtp28.relay.iad1a.emailsrvr.com (Authenticated sender: ford-AT-isoc.org) with ESMTPSA id D43B6E0361; Fri, 6 May 2011 14:40:43 -0400 (EDT) Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Matthew Ford In-Reply-To: <1304695674.3066.57.camel@edumazet-laptop> Date: Fri, 6 May 2011 19:40:41 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <11823FFA-4018-4FEE-AC41-0F57A9FD88CC@isoc.org> References: <4DA67BBE.9050606@taht.net> <1303145028.24248.1442482225@webmail.messagingengine.com> <1304695674.3066.57.camel@edumazet-laptop> To: Eric Dumazet X-Mailer: Apple Mail (2.1084) Cc: Bufferbloat Mainlinglist Subject: Re: [Bloat] No ECN marking in IPv6 linux X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 May 2011 18:35:42 -0000 On 6 May 2011, at 16:27, Eric Dumazet wrote: > FYI >=20 > IPV6 ECN support is buggy on current linux kernels >=20 > Fix is on the way, problem spotted by Steinar H. Gunderson >=20 > https://bugzilla.kernel.org/show_bug.cgi?id=3D34322 >=20 FWIW, Mac OSX has similar behaviour and I filed the bug with Apple in = July of last year. Summary: When ECN is enabled (by setting net.inet.tcp.ecn_initiate_out =3D= 1 and net.inet.tcp.ecn_negotiate_in =3D 1), the ECN capable-transport = (ECT) bit is not set in the IPv6 Traffic Class field when communicating = with ECN-enabled hosts. Steps to Reproduce: 1. Set net.inet.tcp.ecn_initiate_out=3D1 and = net.inet.tcp.ecn_negotiate_in =3D 1 2. Connect over IPv6 to another similarly ECN-enabled host and transfer = some data over TCP (e.g. an HTTP transaction, or FTP transfer). 3. Monitor the connection with your favourite protocol analyser. 4. Observe that the ECN-Echo bits are correctly set in the initial TCP = handshake. 5. Observe that the ECT bit is not being set in the IPv6 Traffic Class = field in subsequent packets. Expected Results: RFC3168 defines ECN for IP. In IPv4 and IPv6, ECN codepoints are = specified as bits 6 and 7 of the TOS Byte and Traffic Class Octet = respectively. The ECN Capable Transport (ECT) bit should be set after = TCP has successfully concluded ECN initialisation. Actual Results: ECT is set for IPv4 communications. ECT is not being set for IPv6 = communications. Mat