Re: [tcpm] Question on draft-gomez-tcpm-ack-rate-request

Carles Gomez Montenegro <carlesgo@entel.upc.edu> Fri, 12 March 2021 10:00 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 151B23A1713; Fri, 12 Mar 2021 02:00:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.918
X-Spam-Level:
X-Spam-Status: No, score=-1.918 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_NONE=0.001] autolearn=ham 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 GrJvf2dm1oNY; Fri, 12 Mar 2021 02:00:23 -0800 (PST)
Received: from violet.upc.es (violet.upc.es [147.83.2.51]) (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 0CC9C3A1712; Fri, 12 Mar 2021 02:00:22 -0800 (PST)
Received: from entelserver.upc.edu (entelserver.upc.es [147.83.40.4]) by violet.upc.es (8.14.4/8.14.4/Debian-4.1ubuntu1) with ESMTP id 12CA0HuE032216; Fri, 12 Mar 2021 11:00:17 +0100
Received: from webmail.entel.upc.edu (webmail.entel.upc.edu [147.83.39.6]) by entelserver.upc.edu (Postfix) with ESMTP id 019591D53C1; Fri, 12 Mar 2021 11:00:16 +0100 (CET)
Received: from 83.53.211.205 by webmail.entel.upc.edu with HTTP; Fri, 12 Mar 2021 11:00:17 +0100
Message-ID: <494ffff907b21034b43f3ca8151f79d1.squirrel@webmail.entel.upc.edu>
In-Reply-To: <7af3375e51f849c1ad934a758c30279e@hs-esslingen.de>
References: <7af3375e51f849c1ad934a758c30279e@hs-esslingen.de>
Date: Fri, 12 Mar 2021 11:00:17 +0100
From: Carles Gomez Montenegro <carlesgo@entel.upc.edu>
To: "Scharf, Michael" <Michael.Scharf@hs-esslingen.de>
Cc: "draft-gomez-tcpm-ack-rate-request@ietf.org" <draft-gomez-tcpm-ack-rate-request@ietf.org>, tcpm IETF list <tcpm@ietf.org>
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.100.3 at violet
X-Virus-Status: Clean
X-Greylist: ACL matched, not delayed by milter-greylist-4.3.9 (violet.upc.es [147.83.2.51]); Fri, 12 Mar 2021 11:00:17 +0100 (CET)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/r9HFo3fd8OL_9sq_nVb405blO24>
Subject: Re: [tcpm] Question on draft-gomez-tcpm-ack-rate-request
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: Fri, 12 Mar 2021 10:00:25 -0000

Hi Michael,

Thanks for your message!

Please find below my inline responses:

> Hi Carles,
>
> I wonder if it is possible to save one byte of space in the option
> proposed in draft-gomez-tcpm-ack-rate-request-02.
>
> As far as I understand the proposal, the "N" field is only used if the "R"
> field is 0. So, no matter whether R is set to 0 or >0, almost one byte of
> the TCP option just consists of zero bits. If that was true, it might be
> inefficient to transfer a large number of zero bits in the TCP header. TCP
> option space is rather scarce and should not be wasted.
>
> Wouldn't be one byte less be sufficient?

Agreed, and while in -02 we started reducing the size of some fields,
there was probably more room as you show below.

> Example:
>
>       0                   1                   2                   3
>       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>      |     Kind      |     Length    |              ExID             |
>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>      |I|X|Value|
>      +-+-+-+-+-+-+
>
> The bit "X"=0 would be equivalent to "R"=0, i.e., immediately request
> ACKs. In that case, the 6 bit field "Value" could encode the value of "N"
> described in draft-gomez-tcpm-ack-rate-request-02.
>
> The bit "X"=1 would enable delayed ACKs ("R">0) and the 6 bit field
> "Value" would encode the number that "R" defined in
> draft-gomez-tcpm-ack-rate-request-02.
>
> The "I" bit would be defined as in draft-gomez-tcpm-ack-rate-request-02.
> (It may make sense to change the order and or naming of the fields, or
> other details of the encoding - this is just an example.)

Yes, your proposal above makes sense!

> As far as I can see, there *is* a difference between this encoding and the
> one in draft-gomez-tcpm-ack-rate-request-02: There is one bit less to
> encode the value of "R", and two bits less to encode the value of "N". But
> would that matter? Do we really expect values larger than 63 (or 63) for
> "R" and "N"?

Yes, that is a good question, and it would be great to hear what the WG
thinks about that. That is: are there use cases where R or N might need to
be greater than 63?

> (And, if significantly large values were needed for "R" and "N", one could
> use another encoding instead of a raw binary number, such as encoding an
> exponent - then 6 bit would be a lot).

Agreed!

> Or do I just miss something basic and need more coffee?

No, it seems you had a suitable amount of coffee. :-)

> Thanks

Thanks to you!

Carles

> Michael