Re: [tcpm] TARR - the two options for R
Carles Gomez Montenegro <carlesgo@entel.upc.edu> Thu, 07 July 2022 06:40 UTC
Return-Path: <carlesgo@entel.upc.edu>
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 73446C157B41 for <tcpm@ietfa.amsl.com>; Wed, 6 Jul 2022 23:40:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.928
X-Spam-Level:
X-Spam-Status: No, score=-1.928 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] 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 Ha-pAayUjIld for <tcpm@ietfa.amsl.com>; Wed, 6 Jul 2022 23:40:16 -0700 (PDT)
Received: from dash.upc.es (dash.upc.es [147.83.2.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 545EBC157B35 for <tcpm@ietf.org>; Wed, 6 Jul 2022 23:40:16 -0700 (PDT)
Received: from entelserver.upc.edu (entelserver.upc.es [147.83.40.4]) by dash.upc.es (8.14.4/8.14.4/Debian-4.1ubuntu1.1) with ESMTP id 2676e28i025902; Thu, 7 Jul 2022 08:40:04 +0200
Received: from webmail.entel.upc.edu (webmail.entel.upc.edu [147.83.40.6]) by entelserver.upc.edu (Postfix) with ESMTP id 2B5F01D53C1; Thu, 7 Jul 2022 08:38:55 +0200 (CEST)
Received: from 79.159.90.85 by webmail.entel.upc.edu with HTTP; Thu, 7 Jul 2022 08:40:14 +0200
Message-ID: <3bb19298cc8da559352db06f12a444fb.squirrel@webmail.entel.upc.edu>
In-Reply-To: <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> <EFAB0C18-A337-4A9F-97BA-7A92ADD9701E@fh-muenster.de>
Date: Thu, 07 Jul 2022 08:40:14 +0200
From: Carles Gomez Montenegro <carlesgo@entel.upc.edu>
To: tuexen@fh-muenster.de
Cc: tcpm IETF list <tcpm@ietf.org>, jon.crowcroft@cl.cam.ac.uk
User-Agent: SquirrelMail/1.4.21-1.fc14
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-Priority: 3 (Normal)
Importance: Normal
X-Virus-Scanned: clamav-milter 0.103.6 at dash
X-Virus-Status: Clean
X-Greylist: Delayed for 13:23:34 by milter-greylist-4.3.9 (dash.upc.es [147.83.2.50]); Thu, 07 Jul 2022 08:40:04 +0200 (CEST)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/ZyxGa14asuqOr59TpGVPXyhdMtQ>
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: Thu, 07 Jul 2022 06:40:22 -0000
Hi Michael, >>> 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. Perfect, thanks! >>> 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. Thanks for the detailed explanation. Sure, we will incorporate your comment in -05. >> 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? Yes! We plan to request a presentation slot, at least for the current version of the draft (-04), but most likely for -05, which we plan to submit before the cutoff date. Thanks, Carles > Best regards > Michael
- [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