[netconf] Re: Francesca Palombini's Discuss on draft-ietf-netconf-http-client-server-23: (with DISCUSS)

Mahesh Jethanandani <mjethanandani@gmail.com> Tue, 27 August 2024 00:54 UTC

Return-Path: <mjethanandani@gmail.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3923DC1D4A79; Mon, 26 Aug 2024 17:54:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.104
X-Spam-Level:
X-Spam-Status: No, score=-2.104 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 q6QLNsexNQ6U; Mon, 26 Aug 2024 17:54:27 -0700 (PDT)
Received: from mail-il1-x135.google.com (mail-il1-x135.google.com [IPv6:2607:f8b0:4864:20::135]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3F516C1CAE6C; Mon, 26 Aug 2024 17:54:27 -0700 (PDT)
Received: by mail-il1-x135.google.com with SMTP id e9e14a558f8ab-37636c3872bso17627375ab.3; Mon, 26 Aug 2024 17:54:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1724720066; x=1725324866; darn=ietf.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=WBP5vCgm4G3EM1bFtTC7KfrPRhsu6GOYCGUtJPQGx7g=; b=P4zDNMqK0ed1jtjleXOkZyYWWSeJWZLeg6X/TglHpgN8U/p94pUD+z1jbYgMCfQGeq 0WpqKsH9mNtwRT+m2qip0t4VrhkCdHLwXPKu5VZ3jW1vSSzkc4gG+Y2n1kMhS2zLBV1A BeOP+j2vWQ5EctehSkuZ0ybD1WOp1sDkzgD4troEOaUOC0WAzYThfCgPqM89c+8ZPeok E8bBUYp4gg6vG7fzD94orh5Hq0gYOEWZJ1VXiR9BACedaGs4jNqf17+0o4HgLQpfZKj1 zWgF+lIZz7Cg8Hv7TiKl69klRdLWGEQLTqOVG//sXcshBKwU8UzzVSjt4Ng3OS2jE4oD 4vNw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724720066; x=1725324866; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=WBP5vCgm4G3EM1bFtTC7KfrPRhsu6GOYCGUtJPQGx7g=; b=RY5gH+4If2M3iPMH9XU0ATCdMqNBlyZgAX+Zj/j2F+t/dhKoiPERCc9Qfu1Lw+kyTA 3HM1Ee6Un41ahVM+So6DM7p3xKDlR+0Ip8Dbji2u6EKABpUN/NQ/OxJxlEHdwHjSJ/zB 3b4RyJ2e6FkvJ8S/P/Eg3kHa0U71NViYtkZjGFDGKSWxKDM9HxsMQiWHpmW7+z3XsgeP R3sP++qXkyc11MGFmZetie9LwqBhDnAoXYmVCz5Gr2usnzPBKakzbR1+yxvfifxKnVMs wv8PVdJj5H3qix9X9f9Sm+IN2r8HwINOZjh5bNtFjhLKebgFz5uxyiEy1FmBeJdNgeZo x8rg==
X-Forwarded-Encrypted: i=1; AJvYcCVedK8x31bG2+CwUvXZzS8Ze+VWYaNW7Wyw/z/4oYKbHrqhGZ94WCOjXaBrBvILYrBi7yik+pxx/w==@ietf.org, AJvYcCVt0BKc0CPlEW69gKza/48QsCflJElTZeKo2XBmr31YJS0jh/qvd88XG1mnA0b/eLv+o51wbQ==@ietf.org, AJvYcCWbQkCgD2stvpTfV3nwREsKocDjT7J6vDYAwOty1L4/J6wTpTMHEK7hIf14IV79hle1OmWE/w4KtI7xYUIR/GM=@ietf.org, AJvYcCWodMgBj0hubaB0fIiEwZNvnQQldOT0fMn0pAhJrBrzQTdfE2EaSw6cgFvHtO/eVZjIQlAcP1y4HzQqmHj/uEzsl86ebgjWyILK7wOVExgak1xKAgY1@ietf.org
X-Gm-Message-State: AOJu0YybcTZOpBLq783NFuLaiJsU7MVFmx9+IvxUDCaXIfzvbVi0BKmt OWpRqmTtPstk3zyKfLFY6FoOkV+aJlNT3W2E8DxGsqvApjwiItgP
X-Google-Smtp-Source: AGHT+IHx0WBGFy+cB7M/DqhMOHseMbmuJk/e9Z4kcmDLIcTvhooLnwDRSuejs1kPnJqel2zc757B+A==
X-Received: by 2002:a92:cd8a:0:b0:397:a8a2:7c58 with SMTP id e9e14a558f8ab-39e3c976b78mr138316735ab.3.1724720065957; Mon, 26 Aug 2024 17:54:25 -0700 (PDT)
Received: from smtpclient.apple ([70.234.233.187]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-7cd9ad7d076sm8234377a12.88.2024.08.26.17.54.24 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 26 Aug 2024 17:54:25 -0700 (PDT)
From: Mahesh Jethanandani <mjethanandani@gmail.com>
Message-Id: <BBA38183-A666-4CCF-BB89-D552B7BC6B44@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_0CD543B3-4143-4E9E-B18E-83AA63B190F2"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Date: Mon, 26 Aug 2024 17:54:24 -0700
In-Reply-To: <010001917365fcca-e582458e-7aa7-4c46-bf31-fbcbccefb210-000000@email.amazonses.com>
To: Mark Nottingham <mnot@mnot.net>
References: <172416794310.2072814.8838102958915521258@dt-datatracker-6df4c9dcf5-t2x2k> <01000191716a91f5-134569c8-7097-4beb-a83c-1e533c72cb92-000000@email.amazonses.com> <B930CFB9-0827-4A04-B3DE-103253048DE1@mnot.net> <010001917276c9a9-61d073c7-2edc-4fb6-8397-6bf11b2cf243-000000@email.amazonses.com> <DC395793-7357-45E3-BF94-E99280A66C0C@mnot.net> <010001917365fcca-e582458e-7aa7-4c46-bf31-fbcbccefb210-000000@email.amazonses.com>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
Message-ID-Hash: G7UH3R5V3RKODNAW42VQKQRFPVRTQWJZ
X-Message-ID-Hash: G7UH3R5V3RKODNAW42VQKQRFPVRTQWJZ
X-MailFrom: mjethanandani@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-netconf.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Francesca Palombini <francesca.palombini@ericsson.com>, The IESG <iesg@ietf.org>, draft-ietf-netconf-http-client-server@ietf.org, NETCONF WG Chairs <netconf-chairs@ietf.org>, NETCONF WG <netconf@ietf.org>, Kent Watsen <kent+ietf@watsen.net>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [netconf] Re: Francesca Palombini's Discuss on draft-ietf-netconf-http-client-server-23: (with DISCUSS)
List-Id: NETCONF WG list <netconf.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/eytAcCelEl5T6mGllXD3PE3KcKQ>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Owner: <mailto:netconf-owner@ietf.org>
List-Post: <mailto:netconf@ietf.org>
List-Subscribe: <mailto:netconf-join@ietf.org>
List-Unsubscribe: <mailto:netconf-leave@ietf.org>

Hi Mark,

Francesca’s DISCUSS, which is a proxy for your HTTPDIR review was discussed in the telechat last Thursday. I am following up to find out if Kent’s reply below addresses your concerns or not. If my understanding is correct, the main sticking point is the client trying to specify a HTTP version it wants to use, and its possible impact on the HTTP ecosystem. 

Let us know. Thanks.

> On Aug 20, 2024, at 10:25 PM, Kent Watsen <kent+ietf@watsen.net> wrote:
> 
>>> Negotiating version at runtime (startup handshake) is common practice.   The way it usually goes is that the client has a list of what it allows, and the server has a list of what it supports, and the latest/newest common version is selected.  This is how it works in HTTP also, yes?
>> 
>> No. See:
>> 
>> https://httpwg.org/specs/rfc9112.html#http.version
>> https://httpwg.org/specs/rfc9113.html#starting
>> https://httpwg.org/specs/rfc9114.html#discovery
> 
> Fine, but your point is only made because HTTP keeps changing its transport  ;)
> 
> Assuming HTTP/4 stays with QUIC, then RFC 7301, Section 1 says:
> 
>    With ALPN, the client sends the list of supported application
>    protocols as part of the TLS ClientHello message.  The server
>    chooses a protocol and sends the selected protocol as part of
>    the TLS ServerHello message.
> 
> In such a case, the client’s ALPN list would be [h3, h4], and the server returns one or the other, depending on what it supports, which is effectively what I wrote. 
> 
> 
> I also note that RFC 9114 Section 3.1 says:
> 
>    A client MAY attempt access to a resource with an "https" URI by
>    resolving the host identifier to an IP address, establishing a
>    QUIC connection to that address on the indicated port (including
>    validation of the server certificate as described above), and
>    sending an HTTP/3 request message targeting the URI to the server
>    over that secured connection. 
> 
> This optimization is possible if the client knows it only wants QUIC-based HTTP.   This is faster than first establishing an HTTP/2 connection and switching after receiving the "alt-svc” header.  This is also faster than the client optimistically switching after receiving a "TCP RST”, assuming the server isn't listening on tcp/443.
> 
> 
>>> Let’s say there exists an HTTP-client that requires multiplexing, so it requires at least HTTP/2.  But it connects to a server that only supports HTTP/1.1.  IMO the negotiation should fail, letting the HTTP-client to try another server.  Isn’t this proper?
>> 
>> A "HTTP-client that requires multiplexing" (i.e., an application using HTTP that wants to multiplex) can use multiple HTTP/1 connections, or HTTP/2, or HTTP/3, or...
> 
> It was just an example.  The general point is that each HTTP version comes with a set of features (e.g., scalability, performance, security, etc.) and a client may require a specific feature-set.
> 
> 
>>> The configuration -23 regards setting the client’s "list of what it allows".  It can be a list of versions, or the special wildcard value “any”.   It is expected that this “list of versions" will feed into the negotiation.  IDK, maybe you thought that the draft was always setting the client to a single version?
>> 
>> No; I'm only attempting to make sure that your specification doesn't actively harm the HTTP ecosystem.
> 
> Good - and thank you!
> 
> 
>> Constraining the available versions is one way that can happen.
> 
> Can you provide a scenario where the client being configured to use specific versions harms the HTTP ecosystem?
> 
> 
>> I continue to be concerned that you're defining a configuration language for HTTP without a strong understanding of the protocol's core concepts or common implementation patterns. 
> 
> It could also be that you don’t appreciate that, by nature of this being “configuration”, it is not a "first contact” scenario.  That is, this is much more like a script using `curl` than a user using a browser.
> 
> 
> Thanks again!
> Kent
> 
> 


Mahesh Jethanandani
mjethanandani@gmail.com