Re: [tcpm] Fwd: [Technical Errata Reported] RFC6582 (6871)
Yoshifumi Nishida <nsd.ietf@gmail.com> Fri, 19 January 2024 04:34 UTC
Return-Path: <nsd.ietf@gmail.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D40D0C14CEE4 for <tcpm@ietfa.amsl.com>; Thu, 18 Jan 2024 20:34:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.105
X-Spam-Level:
X-Spam-Status: No, score=-7.105 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hzEI902WhIe7 for <tcpm@ietfa.amsl.com>; Thu, 18 Jan 2024 20:34:06 -0800 (PST)
Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 52D5CC14CEFA for <tcpm@ietf.org>; Thu, 18 Jan 2024 20:34:02 -0800 (PST)
Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-33678156e27so228842f8f.1 for <tcpm@ietf.org>; Thu, 18 Jan 2024 20:34:02 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705638841; x=1706243641; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=l/yBOEYcn8Df2isIDNZCgmO9lw8yaSx9p4UUpXOF6+8=; b=cY0fqqDG4mlqpBk/X418Ed+Vgf9OPO0EAnMll2d9vIIPvQttaoRvTHu//tXrDUIJXH oXT+cn6oOJr4HvpCxzj+7YAveN8+7tRtS/pQnZRbsSe4ZJE6FEC31T2273QRvVOqyT7U I5Gu6SWXuMgyvX8xB4VeXXU2tEQP0snP6CqfRAxBezMB+cVSVPwEXqYF9LvKKwKfZTt4 +A/8vvnM26Vv/4VACM8mgtjKNQvHvtiz+hNGXt3uGEKMLpR1dQek7xomYGMFr5Sbr4Kx pyKXPqQh1ToHau4JbbYQNKqVVeLw1rKjiHPImDQo1ru40+tUhcxgXSoF7tVpLqibTC/+ HzbA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705638841; x=1706243641; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=l/yBOEYcn8Df2isIDNZCgmO9lw8yaSx9p4UUpXOF6+8=; b=k5sIzeYNET96kTbXX4rdsd8UzkfR5lBr2OYTHlI+IBPL6iOl5PLtkPVMLy0W13iBxX Db8XQ53Ej3aGq8viRs7YhrPaj2NiH+2JUJhzYOdH0PoOzqJHHg2aScoKZTnk468pm7Zt WEkRFvkWx/xI86OdaLe68zfoIqFLWA8ZYnoT1sKUW7nURWwG2F69a0RnHdXlTEw2Y9o8 vk96IQ+g/vzYWk+EALuAR8OlBboNSImkLLP8Gx6Rl+e6vMiOdf41b3OuxZ/jRJjnft0G nnt72Q1uLhk96q48JBI53N8/6KAhUwY7R6LgYFvmgeVKLSwVNxCzZpsBlTC6tLi5MIaG C9cg==
X-Gm-Message-State: AOJu0Yxfg7iC0i44bRFHdyfrYr3clS/07FjLcp8+que2BmYcWyZ+CNmE Kh1NzXiCTXifhW0im2HiLvfAbh+SQxrRilJQUEBCzPWE94g2N49npeWAQBIS1G08rOruiS2tchY ysojMHIkbQqKl5p6arlsQeeNJgeM=
X-Google-Smtp-Source: AGHT+IFKT4sp+KaVS/lSGiGJvcIejvmQ7/IBpNmhSXi7PhIjjlw7WcDEdpMVqBsniEr3YSt82JLPEYJkB20jFI95/74=
X-Received: by 2002:adf:e946:0:b0:337:39e3:47b5 with SMTP id m6-20020adfe946000000b0033739e347b5mr993047wrn.14.1705638840478; Thu, 18 Jan 2024 20:34:00 -0800 (PST)
MIME-Version: 1.0
References: <20220307150858.E05E46AAB1@rfc-editor.org> <CAM4esxTxdcnNzr5p_o3SdZd5NCnUhyyFQeMwcMLoVp8Mg89mWg@mail.gmail.com>
In-Reply-To: <CAM4esxTxdcnNzr5p_o3SdZd5NCnUhyyFQeMwcMLoVp8Mg89mWg@mail.gmail.com>
From: Yoshifumi Nishida <nsd.ietf@gmail.com>
Date: Thu, 18 Jan 2024 20:33:49 -0800
Message-ID: <CAAK044SeLoK-6Gy-fmRn-cK7PQ=sMiUqE-0+EknFKuzAvxE-YQ@mail.gmail.com>
To: Martin Duke <martin.h.duke@gmail.com>
Cc: "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000033b148060f44fdab"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/xwIrxOyx03XG8IOSYjvNaL2gtLs>
Subject: Re: [tcpm] Fwd: [Technical Errata Reported] RFC6582 (6871)
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 19 Jan 2024 04:34:10 -0000
Hi Martin, I personally think this errata is correct. -- Yoshi On Thu, Jan 18, 2024 at 3:10 PM Martin Duke <martin.h.duke@gmail.com> wrote: > I do not have any TCP code in front of me, but ISTM this errata is > accurate. > > if the window advances by 3 MSS or less, that implies that <= 2 DUPACKs > were lost, which would not have triggered a Fast Retransmit. > > If the window advances by 4 MSS or more, then the peer should have sent at > least 3 DUPACKs, which if received would have triggered FR. > > Am I thinking about this correctly? > > ---------- Forwarded message --------- > From: RFC Errata System <rfc-editor@rfc-editor.org> > Date: Mon, Mar 7, 2022 at 7:08 AM > Subject: [Technical Errata Reported] RFC6582 (6871) > To: <thomas.r.henderson@boeing.com>, <floyd@acm.org>, <gurtov@ee.oulu.fi>, > <nishida@wide.ad.jp>, <martin.h.duke@gmail.com>, < > Zaheduzzaman.Sarker@ericsson.com>, <nsd.ietf@gmail.com>, < > michael.scharf@hs-esslingen.de>, <tuexen@fh-muenster.de> > Cc: <q645v49v@anonaddy.me>, <tcpm@ietf.org>, <rfc-editor@rfc-editor.org> > > > The following errata report has been submitted for RFC6582, > "The NewReno Modification to TCP's Fast Recovery Algorithm". > > -------------------------------------- > You may review the report below and at: > https://www.rfc-editor.org/errata/eid6871 > > -------------------------------------- > Type: Technical > Reported by: Clive Bloom <q645v49v@anonaddy.me> > > Section: 4.1 > > Original Text > ------------- > If the Cumulative Acknowledgment field didn’t cover more than > recover, check to see if the congestion window is greater than > SMSS bytes and the difference between highest_ack and > prev_highest_ack is at most 4*SMSS bytes. If true, duplicate > ACKs indicate a lost segment (enter fast retransmit). > Otherwise, duplicate ACKs likely result from unnecessary > retransmissions (do not enter fast retransmit). > > Corrected Text > -------------- > If the Cumulative Acknowledgment field didn’t cover more than > recover, check to see if the congestion window is greater than > SMSS bytes and the difference between highest_ack and > prev_highest_ack is at most 3*SMSS bytes. If true, duplicate > ACKs indicate a lost segment (enter fast retransmit). > Otherwise, duplicate ACKs likely result from unnecessary > retransmissions (do not enter fast retransmit). > > Notes > ----- > RFC6582 (as well as RFC3782) references to Gur03 and GF04 papers as to the > initial sources > of the heuristics both ACK-based and Timestamp-based. Neither of those > papers nor Gur03 nor GF04 defines difference between highest_ack and > previous_highest_ack > of at least 4*SMSS bytes upon receiving the third duplicate ACK as an > indication > of droped retransmitted segment. Instead, section III of GF04 says: > > "The acknowledgment heuristic is based on an observation that if the > TCP sender unnecessarily retransmits at least three adjacent packets, > there will be a jump by at least four segments in a cumulative > acknowledgment field. The sender will have correctly retransmitted at least > one packet, to advance the cumulative acknowledgment field, and > unnecessarily retransmitted at least three more to result in three > duplicate > acknowledgments. Following the advancement of the cumulative acknowledgment > field, the sender stores the value of the previous cumulative > acknowledgment > as prev_highest_ack and stores the latest cumulative acknowledgment as > highest_ack. Upon receiving the third duplicate acknowledgment, > the sender invokes a Fast Retransmit if its congestion window is greater > than one MSS (Maximum Segment Size), and the difference between highest_ack > and prev_highest_ack is at most three MSS." > > According to GF04 if TCP sender in absence of any droped acknowledgments > upon receiving > the third duplicate ACK has difference between highest_ack and > prev_highest ack values > of at most/i.e. no more than 3*SMSS bytes then this is explicite > indication of droped retransmitted > segment and leads TCP sender to invoke Fast Retransmit, but current > description of ACK-based > heuristic in RFC6582 section 4.1 in part of: "If the Cumulative > Acknowledgment field didn’t cover more than recover, check to see if the > congestion window is greater than > SMSS bytes and the difference between highest_ack and prev_highest_ack is > at most 4*SMSS bytes. > If true, duplicate ACKs indicate a lost segment (enter fast retransmit). > Otherwise, duplicate ACKs > likely result from unnecessary retransmissions (do not enter fast > retransmit). ", makes TCP sender > to treat difference between highest_ack and prev_highest_ack of 4SMSS > bytes upon receiving 3rd > duplicate ACK as indication of lost retransmitted segment but again > according to GF04 this is NOT so, > and makes TCP sender to invoke Fast Retransmit when in fact those three > duplicate acknowledgments > indicate unnecessarily retransmitted segments and have in their > acknowledgment fields sequence > number which receiver expects to receive next but which sender has NOT > sent yet, so Fast Retransmit > has no point in this case. > > Instructions: > ------------- > This erratum is currently posted as "Reported". If necessary, please > use "Reply All" to discuss whether it should be verified or > rejected. When a decision is reached, the verifying party > can log in to change the status and edit the report, if necessary. > > -------------------------------------- > RFC6582 (draft-ietf-tcpm-rfc3782-bis-05) > -------------------------------------- > Title : The NewReno Modification to TCP's Fast Recovery > Algorithm > Publication Date : April 2012 > Author(s) : T. Henderson, S. Floyd, A. Gurtov, Y. Nishida > Category : PROPOSED STANDARD > Source : TCP Maintenance and Minor Extensions > Area : Transport > Stream : IETF > Verifying Party : IESG > _______________________________________________ > tcpm mailing list > tcpm@ietf.org > https://www.ietf.org/mailman/listinfo/tcpm >
- [tcpm] [Technical Errata Reported] RFC6582 (6871) RFC Errata System
- [tcpm] Fwd: [Technical Errata Reported] RFC6582 (… Martin Duke
- Re: [tcpm] Fwd: [Technical Errata Reported] RFC65… Yoshifumi Nishida