Re: [tcpm] Fwd: comment about draft-nishida-tcpm-maxwin-02

Yoshifumi Nishida <nishida@sfc.wide.ad.jp> Fri, 20 January 2017 21:15 UTC

Return-Path: <nishida@sfc.wide.ad.jp>
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 C3EFD129495 for <tcpm@ietfa.amsl.com>; Fri, 20 Jan 2017 13:15:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.599
X-Spam-Level:
X-Spam-Status: No, score=-4.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_SORBS_SPAM=0.5, RP_MATCHES_RCVD=-3.199, SPF_PASS=-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 1g9npxXfuTeR for <tcpm@ietfa.amsl.com>; Fri, 20 Jan 2017 13:14:59 -0800 (PST)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [IPv6:2001:200:0:8803::53]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 469AC129494 for <tcpm@ietf.org>; Fri, 20 Jan 2017 13:14:58 -0800 (PST)
Received: from mail-ua0-f177.google.com (mail-ua0-f177.google.com [209.85.217.177]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 69AA42786B5 for <tcpm@ietf.org>; Sat, 21 Jan 2017 06:14:47 +0900 (JST)
Received: by mail-ua0-f177.google.com with SMTP id 96so72254698uaq.3 for <tcpm@ietf.org>; Fri, 20 Jan 2017 13:14:47 -0800 (PST)
X-Gm-Message-State: AIkVDXL2UQdx2naOR4+GrBlv0mBfrbLiRTgjCw8kz/xBodgIgZUQE16kwCml3sdSJ8ZCvNqxw3JBijf0sLuvvQ==
X-Received: by 10.159.36.165 with SMTP id 34mr9372156uar.48.1484946886004; Fri, 20 Jan 2017 13:14:46 -0800 (PST)
MIME-Version: 1.0
Received: by 10.159.52.145 with HTTP; Fri, 20 Jan 2017 13:14:45 -0800 (PST)
In-Reply-To: <a3d9acc5-f7e3-d0e9-ac8c-c5d65d481c1f@it.uc3m.es>
References: <7df22790-f177-e61f-47a7-10c246f52535@it.uc3m.es> <CAO249yeWXDbpzifzr=7XinO7BYctkVG_F9MEK7SwsUKq_rNw3Q@mail.gmail.com> <CAO249ydbdho0_SfDApjWp7g+AFgSW7gnXAxZS9=tCC8e=m6G-Q@mail.gmail.com> <44c23acf-a271-71e4-3e8d-f1169f2a2f6f@it.uc3m.es> <CAO249yfw_Bs4-d2muYOhhqv1ZS+5RmK5tUXNa6csUmXQ8mW35Q@mail.gmail.com> <a3d9acc5-f7e3-d0e9-ac8c-c5d65d481c1f@it.uc3m.es>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Fri, 20 Jan 2017 13:14:45 -0800
X-Gmail-Original-Message-ID: <CAO249ycK-FLkUoVgc-+D_gg_Hq1eV64henHLrxOCPzV1rWQhOw@mail.gmail.com>
Message-ID: <CAO249ycK-FLkUoVgc-+D_gg_Hq1eV64henHLrxOCPzV1rWQhOw@mail.gmail.com>
To: marcelo bagnulo braun <marcelo@it.uc3m.es>
Content-Type: multipart/alternative; boundary="001a113cf800a6b68f05468d23c5"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/7iob1bg_6Z8xrTdbQXTHrC8rl1c>
Cc: "tcpm@ietf.org" <tcpm@ietf.org>
Subject: Re: [tcpm] Fwd: comment about draft-nishida-tcpm-maxwin-02
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.17
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, 20 Jan 2017 21:15:02 -0000

Hi Marcelo,

On Fri, Jan 20, 2017 at 12:28 PM, marcelo bagnulo braun <marcelo@it.uc3m.es>
wrote:

> below...
>
> El 20/01/17 a las 20:32, Yoshifumi Nishida escribió:
>
>
>>     What about this:
>>     The shift count is expressed in a byte, but only the values
>>     between 1 and 14 are acceptable as per RFC 7323.
>>     With this draft, the 15 shift count value would become acceptable,
>>     but it seems we will never need more than 16 values in the shift
>>     count (unless we increase the TCP seq number).
>>     So, this means that we have 4 bits to play with in the shift count
>>     field.
>>     One way of using it would be the following:
>>     We divide the shift count filed in two fields of 4 bits. The first
>>     4 bits are used to express the shift count for legacy (RFC7323)
>>     endpoints.
>>     The last 4 bits are used to express the shift count for endpoints
>>     that support this specification.
>>
>>     So, this would result in the following combinations:
>>     - updated client talks to updated server: it expresses its own
>>     shift count using the last 4 bits, the server replies expressing
>>     its own shift count in the last 4 bits. Both endpoints understand
>>     that they are talking to updated endpoints, so they use the new
>>     values.
>>     - updated client talks to legacy server. It expresses its own
>>     shift count using the last bits. The legacy server receives the
>>     option, checks that the value is larger than 14 and then uses 14
>>     as shift count for this client. The server replies with its own
>>     shift count encoded in the first 4 bits. The client understands
>>     that the server is legacy and uses a 14 shift count for its own
>>     shift count.
>>     - legacy client talking to legacy or updated server, behaves as
>>     described in RFC7323
>>
>>     If we do this, then when both endpoints are updated, one of the
>>     endpoints can use a smaller shift count even if the other endpoint
>>     uses a 15 shift count. This doesnt help in the situation where the
>>     server is legacy, but at least in the long run if this extension
>>     is widely deployed, the behaviour is the desired one.
>>
>>     what do you think?
>>
>>
>> I've thought about it and I think it's a pretty good idea. It's more
>> explicit than the current scheme, but doesn't consume extra option space.
>> In this scheme, when an updated endpoint talks to a non-updated endpoint,
>> the shift count will automatically 14. But, I guess this cannot be solved
>> without adding extra negotiation scheme. So, I think it's acceptable.
>> One question I have is if we need to use 4bits for this. It might be ok
>> to use just one bit in the last 4 bits to indicate it supports new version.
>>
>
> agree.
> So, the shift count field in the WSO could then look like this:
>
> +----------+
> |SSSS|L|RRR|
> +----------+
>
> With SSSS being 4 bits used to express the shift count, L, being the bit
> to express the Large window support and RRR 3 reserved bits.
>
> Makes sense?
>

Yes, make sense to me. Thanks!
--
Yoshi