NetBSD Problem Report #43150
From www@NetBSD.org Sun Apr 11 23:18:47 2010
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id A346263BCF6
for <gnats-bugs@gnats.NetBSD.org>; Sun, 11 Apr 2010 23:18:47 +0000 (UTC)
Message-Id: <20100411231847.6A03063B8BC@www.NetBSD.org>
Date: Sun, 11 Apr 2010 23:18:47 +0000 (UTC)
From: rs@netapp.com
Reply-To: rs@netapp.com
To: gnats-bugs@NetBSD.org
Subject: TCP/ECN behaves different to CE/CWR than ns2 reference
X-Send-Pr-Version: www-1.0
>Number: 43150
>Category: kern
>Synopsis: TCP/ECN behaves different to CE/CWR than ns2 reference
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Apr 11 23:20:00 +0000 2010
>Closed-Date: Fri Apr 16 03:23:39 +0000 2010
>Last-Modified: Fri Apr 16 03:23:39 +0000 2010
>Originator: Richard Scheffenegger
>Release: ---
>Organization:
NetApp
>Environment:
---
code inspection, day-1 problem
>Description:
Used TBIT (www.icir.org/tbit/) to verify the RFC3168 compliance of the FreeBSD ECN implementiation.
Unfortunately, RFC3168 has slightly ambigous wording, but the reference implementation of ECN in ns2, done by the authors of the RFC, can be used as a best practise implementation.
The Bug prevents the deployment of further enhancements into TCP CC algorithms which make smart use of CE marked frames.
This issue occurs with CWR/CW frames (both TCP CWR flag, and IP CE codepoint are set). In the reference implementation, this frame results in a ECE/ACK, while in most BSD stacks, ECE will NOT be set.
>How-To-Repeat:
Establish a ECN connection;
Mark one data frame towards the NetBSD host with both CE and CWR.
Expected result: A ECE frame
Current result: A normal ACK
>Fix:
See http://www.freebsd.org/cgi/query-pr.cgi?pr=145600
relevant codebase is identical, therefore even the patch should work.
>Release-Note:
>Audit-Trail:
From: Mindaugas Rasiukevicius <rmind@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/43150 CVS commit: src/sys/netinet
Date: Fri, 16 Apr 2010 03:13:03 +0000
Module Name: src
Committed By: rmind
Date: Fri Apr 16 03:13:03 UTC 2010
Modified Files:
src/sys/netinet: tcp_input.c
Log Message:
tcp_input: set ECE flag even if CWR flag is active.
Submitted by Richard Scheffenegger in PR/43150.
To generate a diff of this commit:
cvs rdiff -u -r1.302 -r1.303 src/sys/netinet/tcp_input.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: open->closed
State-Changed-By: rmind@NetBSD.org
State-Changed-When: Fri, 16 Apr 2010 03:23:39 +0000
State-Changed-Why:
Fix committed. Thanks a lot for the report!
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.