Re: [tcpm] TARR - the two options for R
tuexen@fh-muenster.de Wed, 06 July 2022 17:56 UTC
Return-Path: <tuexen@fh-muenster.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 6139AC157B5B for <tcpm@ietfa.amsl.com>; Wed, 6 Jul 2022 10:56:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.242
X-Spam-Level:
X-Spam-Status: No, score=-6.242 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_SOFTFAIL=0.665, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
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 rVtlI-QGwshc for <tcpm@ietfa.amsl.com>; Wed, 6 Jul 2022 10:56:01 -0700 (PDT)
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 18C27C157B39 for <tcpm@ietf.org>; Wed, 6 Jul 2022 10:55:59 -0700 (PDT)
Received: from smtpclient.apple (unknown [IPv6:2a02:8109:1140:c3d:2537:a596:442:bed]) (Authenticated sender: macmic) by drew.franken.de (Postfix) with ESMTPSA id 828F2759A03BF; Wed, 6 Jul 2022 19:55:56 +0200 (CEST)
Content-Type: multipart/signed; boundary="Apple-Mail=_35B1CF04-8A8A-4162-99D4-B4C06F7B5B0C"; protocol="application/pkcs7-signature"; micalg="sha-256"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.100.31\))
From: tuexen@fh-muenster.de
X-Priority: 3 (Normal)
In-Reply-To: <948423e4970471425cd1b73cfb54542d.squirrel@webmail.entel.upc.edu>
Date: Wed, 06 Jul 2022 19:55:54 +0200
Cc: tcpm IETF list <tcpm@ietf.org>, jon.crowcroft@cl.cam.ac.uk
Content-Transfer-Encoding: quoted-printable
Message-Id: <EFAB0C18-A337-4A9F-97BA-7A92ADD9701E@fh-muenster.de>
References: <8D68AD5E-F8F1-47D9-900C-B15C539D6C25@gmail.com> <CACS3ZpBtoqQ0tetcRamp5TmAZMAXn01dqF79X90u_CO4nCA_kw@mail.gmail.com> <cb162890d51d191b4e40ad407020e8bb.squirrel@webmail.entel.upc.edu> <E6A836D4-5590-4AA8-ACCA-EAB6D2DC11F4@fh-muenster.de> <948423e4970471425cd1b73cfb54542d.squirrel@webmail.entel.upc.edu>
To: Carles Gomez Montenegro <carlesgo@entel.upc.edu>
X-Mailer: Apple Mail (2.3696.100.31)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/Ua4dhCVw-WWg2vDG_M51JpcN0Bw>
Subject: Re: [tcpm] TARR - the two options for R
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: Wed, 06 Jul 2022 17:56:04 -0000
> On 6. Jul 2022, at 19:16, Carles Gomez Montenegro <carlesgo@entel.upc.edu> wrote: > > Hi Michael, > > Many thanks for your response! > > Please find below my inline comments: > > <snip> > >>> Are there other opinions? > >> Hi Carles, >> >> I would like to give some feedback as an individual. >> >> This feedback is based on using your draft in one of my courses >> at university resulting in a prototype implementation for FreeBSD >> and packetdrill. > > This is great news! > Your implementation-based feedback is highly appreciated. > >> Here are some points: >> >> 1. You might want to say which kind (253 or 254) is used on the >> sender side and on the receiver side. The prototype accepts >> both on the receiver side and uses only one on the sender side. >> Which one is used on the sender side is compiled into the code. > > Yes, there is a TBD currently in the draft (-04). For -05, our current > proposal is to use 254. Great, thanks for the information. > >> 2. Regarding the encoding of R: I prefer option 1. >> This allows to use the value of 0 to be used to signal that >> an ACK for this segment should be sent immediately, but no >> persistent change of the ACK ratio should be performed. > > I see. In this case, R=0 would be a special case (i.e., an exception), > since by default the ACK rate would be the one requested with values of R > different from zero. Yes, two semantics: If R=0, just send an ACK immediately, don't change the rate. If R>0, change the rate. For SCTP we have a feature to request an immediate ACK: RFC 7053, now incorporated into RFC 9260, which is the current specification of the base protocol. > >> 3. If the range 1 - 127 is considered too small, one might consider >> using two bytes for the option value. Currently, the length of >> the option is odd, and therefore TCP implementations might add >> some padding (NOP) anyway, since other options used after the >> connection establishment like the timestamp or the sack option >> have an even length. > > If some padding would typically be added by implementations to produce an > even option length, then we can use your suggestion and define a two-byte > field for R (perhaps keeping some reserved bit(s)). > > With this approach -let's call it OPTION 3-, we could use a simple binary > encoding for R. Probably, one detail to figure out (and, probably, > discuss) then would be which would be the maximum value for R... Yepp. > > Any further thoughts? > >> 4. If SYN cookies are used and one is not willing to not spend another >> bit for representing TARR support, you might want to specify that the >> client sends the TARR option on the ACK of the three way handshake. >> That way a server willing to support the TARR option can "learn" >> from the client that it is OK to send the TARR option by observing >> that the client sends it. It can also be learned later... > > If I recall correctly, Bob suggested this same idea. In IETF 113, Martin > asked if sending the TARR option in this way (on the ACK), and thus not > reliably, could be a concern. > > If there is lack of SYN space, perhaps one approach could be to learn it > later as you suggest, and/or to allow sending the TARR option on the ACK > but explaining the mentioned caveat... Clarification: This is not about the option space in the SYN segments. It is a about a server not allocating any state when receiving the initial SYN segment. The server puts all information it needs in the ISS. See https://cgit.freebsd.org/src/tree/sys/netinet/tcp_syncache.c#n2162 how the encoding works. If you want to encode TARR supported/no supported you would need 1 more bit, which means using a 23 bit MAC. Assuming that the client is initially in slow start, you want a rate of one in slow start, the client might send a TARR option with R=1 with the ACK anyway. Just noting that a server might need to wait until it received a TARR option before sending one might be worth noting. > > Once again, many thanks for your input and for the prototype > implementation work! Do you want to present the current state at the next meeting? Best regards Michael > > Cheers, > > Carles > > >> Best regards >> Michael > > > _______________________________________________ > tcpm mailing list > tcpm@ietf.org > https://www.ietf.org/mailman/listinfo/tcpm
- [tcpm] TARR - the two options for R Jonathan Morton
- Re: [tcpm] TARR - the two options for R Juhamatti Kuusisaari
- Re: [tcpm] TARR - the two options for R Carles Gomez Montenegro
- Re: [tcpm] TARR - the two options for R tuexen
- Re: [tcpm] TARR - the two options for R Carles Gomez Montenegro
- Re: [tcpm] TARR - the two options for R tuexen
- Re: [tcpm] TARR - the two options for R Carles Gomez Montenegro