Re: [tcpm] 793bis ready to go?
Michael Tuexen <michael.tuexen@lurchi.franken.de> Sat, 20 February 2021 21:53 UTC
Return-Path: <michael.tuexen@lurchi.franken.de>
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 5532F3A0E2A for <tcpm@ietfa.amsl.com>; Sat, 20 Feb 2021 13:53:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.498
X-Spam-Level:
X-Spam-Status: No, score=-1.498 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, KHOP_HELO_FCRDNS=0.4, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id asfiUP67mGbl for <tcpm@ietfa.amsl.com>; Sat, 20 Feb 2021 13:53:43 -0800 (PST)
Received: from drew.franken.de (mail-n.franken.de [193.175.24.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D0EC23A0E2E for <tcpm@ietf.org>; Sat, 20 Feb 2021 13:53:42 -0800 (PST)
Received: from [IPv6:2a02:8109:1140:c3d:bd48:ec3f:ec08:510] (unknown [IPv6:2a02:8109:1140:c3d:bd48:ec3f:ec08:510]) (Authenticated sender: lurchi) by mail-n.franken.de (Postfix) with ESMTPSA id 703D472246348; Sat, 20 Feb 2021 22:53:38 +0100 (CET)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.60.0.2.21\))
From: Michael Tuexen <michael.tuexen@lurchi.franken.de>
In-Reply-To: <4F753030-7F77-4D6C-98B5-3F1FCBDBA076@strayalpha.com>
Date: Sat, 20 Feb 2021 22:53:38 +0100
Cc: tcpm IETF list <tcpm@ietf.org>, Markku Kojo <kojo=40cs.helsinki.fi@dmarc.ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <54BF8FD5-671F-4AFE-B6B5-B92D872400D0@lurchi.franken.de>
References: <cd600644350847ef8415d21588d1e912@hs-esslingen.de> <alpine.DEB.2.21.2102160206350.3820@hp8x-60.cs.helsinki.fi> <07c02ad6-979f-4049-3075-cae0064b7def@gmx.at> <51A077AB-F5A5-4E4E-9B7F-C606DF50C407@fh-muenster.de> <4F753030-7F77-4D6C-98B5-3F1FCBDBA076@strayalpha.com>
To: Joseph Touch <touch@strayalpha.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/7iqq5-F2FE8Tcnz7BnO78n-YD-g>
Subject: Re: [tcpm] 793bis ready to go?
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
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: Sat, 20 Feb 2021 21:53:45 -0000
> On 20. Feb 2021, at 22:37, Joseph Touch <touch@strayalpha.com> wrote: > > Even if you prefer the FreeBSD variant, the text below doesn’t appear to fix this; it will end up sending the SYN-ACK of the received data *and a second ACK* at the end of the sixth step. I think the idea of Richard is that if the text is If SND.UNA > ISS (our SYN has been ACKed), change the connection state to ESTABLISHED, form an ACK segment <SEQ=SND.NXT><ACK=RCV.NXT><CTL=ACK> and should send it. Then NOT following the should, but only send the ACK at the end of step 6. Wouldn't that work? Best regards Michael > > Joe > >> On Feb 20, 2021, at 12:56 PM, tuexen@fh-muenster.de wrote: >> >>> On 18. Feb 2021, at 14:59, Scheffenegger, Richard <rs.ietf@gmx.at> wrote: >>> >>> One more nit, around dealing with data-in-SYN,ACK >>> >>> 793bis (page 71) has this text, which unfortunately doesn have any >>> RFC2119 language. >>> >>> But in short, it seems to require the transmission of a pure ACK just >>> for the SYN bit, and a 2nd ACK right afterwards (step 6) to acknowledge >>> the data. >>> >>> The FBSD implementation was found to skip over the ACK-only-the-SYN >>> intermediate step (which must be acceptable, as that ACK may get lost in >>> the network), sending out only the cummulative ACK for SYN and data, >>> after having transitioned into ESTABLISHED. >> Hi, >> >> I really prefer the FreeBSD behaviour. A TCP stack should not need to send >> two segments at the same time when handling the event of a single segment reception. >> >> Best regards >> Michael, as an individual >>> >>> But strictly speaking, this behavior is a deviation from 793 / 793bis. >>> >>> Perhaps a "and should send it" would do, to allow this behavior, >>> conserving one pure ACK... >>> >>> Best regards, >>> Richard >>> >>> >>> >>> If the state is SYN-SENT then >>> >>> first check the ACK bit >>> >>> If the ACK bit is set >>> : >>> : >>> fourth check the SYN bit >>> >>> This step should be reached only if the ACK is ok, or there >>> is no ACK, and it the segment did not contain a RST. >>> >>> If the SYN bit is on and the security/compartment is >>>>>> acceptable then, RCV.NXT is set to SEG.SEQ+1, IRS is set to >>> SEG.SEQ. SND.UNA should be advanced to equal SEG.ACK (if >>> there is an ACK), and any segments on the retransmission >>> queue that are thereby acknowledged should be removed. >>> >>> If SND.UNA > ISS (our SYN has been ACKed), change the >>> connection state to ESTABLISHED, form an ACK segment >>> >>>>>> <SEQ=SND.NXT><ACK=RCV.NXT><CTL=ACK> >>> >>> and send it. Data or controls that were queued for >>> transmission may be included. If there are other controls >>> or text in the segment then continue processing at the sixth >>> step below where the URG bit is checked, otherwise return. >>> >>> _______________________________________________ >>> tcpm mailing list >>> tcpm@ietf.org >>> https://www.ietf.org/mailman/listinfo/tcpm >> >> _______________________________________________ >> tcpm mailing list >> tcpm@ietf.org >> https://www.ietf.org/mailman/listinfo/tcpm > > _______________________________________________ > tcpm mailing list > tcpm@ietf.org > https://www.ietf.org/mailman/listinfo/tcpm
- [tcpm] 793bis ready to go? Scharf, Michael
- Re: [tcpm] 793bis ready to go? Yuchung Cheng
- Re: [tcpm] 793bis ready to go? Praveen Balasubramanian
- Re: [tcpm] 793bis ready to go? Neal Cardwell
- Re: [tcpm] 793bis ready to go? Michael Tuexen
- Re: [tcpm] 793bis ready to go? Martin Duke
- [tcpm] meaning of "idle" for TCP Keep-Alives (was… Neal Cardwell
- Re: [tcpm] 793bis ready to go? Scharf, Michael
- Re: [tcpm] meaning of "idle" for TCP Keep-Alives … Scharf, Michael
- Re: [tcpm] 793bis ready to go? Jonathan Morton
- Re: [tcpm] meaning of "idle" for TCP Keep-Alives … Scheffenegger, Richard
- Re: [tcpm] 793bis ready to go? Markku Kojo
- Re: [tcpm] 793bis ready to go? Scheffenegger, Richard
- Re: [tcpm] 793bis ready to go? tuexen
- Re: [tcpm] 793bis ready to go? Joseph Touch
- Re: [tcpm] 793bis ready to go? Michael Tuexen
- Re: [tcpm] 793bis ready to go? Scheffenegger, Richard
- Re: [tcpm] 793bis ready to go? Michael Tuexen
- Re: [tcpm] 793bis ready to go? Joseph Touch
- Re: [tcpm] 793bis ready to go? Michael Tuexen
- Re: [tcpm] 793bis ready to go? Joe Touch
- Re: [tcpm] 793bis ready to go? Scheffenegger, Richard
- Re: [tcpm] 793bis ready to go? Wesley Eddy
- Re: [tcpm] 793bis ready to go? Wesley Eddy
- Re: [tcpm] 793bis ready to go? Wesley Eddy
- Re: [tcpm] 793bis ready to go? Wesley Eddy
- Re: [tcpm] 793bis ready to go? Wesley Eddy
- Re: [tcpm] 793bis ready to go? Yuchung Cheng