Re: I-D for a YANG data model to configure HTTP clients and servers

Mark Nottingham <mnot@mnot.net> Wed, 06 May 2020 05:10 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 43B3A3A0D61 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 5 May 2020 22:10:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.751
X-Spam-Level:
X-Spam-Status: No, score=-2.751 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=mnot.net header.b=c3WWKe40; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=nOoWxI7F
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 HdKc_1OOixEo for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 5 May 2020 22:10:51 -0700 (PDT)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF6933A0D58 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 5 May 2020 22:10:51 -0700 (PDT)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1jWCHO-0000JT-UM for ietf-http-wg-dist@listhub.w3.org; Wed, 06 May 2020 05:07:35 +0000
Resent-Date: Wed, 06 May 2020 05:07:34 +0000
Resent-Message-Id: <E1jWCHO-0000JT-UM@lyra.w3.org>
Received: from mimas.w3.org ([128.30.52.79]) by lyra.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <mnot@mnot.net>) id 1jWCHM-0000Ih-Uy for ietf-http-wg@listhub.w3.org; Wed, 06 May 2020 05:07:32 +0000
Received: from out4-smtp.messagingengine.com ([66.111.4.28]) by mimas.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <mnot@mnot.net>) id 1jWCHK-0006YS-R8 for ietf-http-wg@w3.org; Wed, 06 May 2020 05:07:32 +0000
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id B75255C03C7; Wed, 6 May 2020 01:07:16 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Wed, 06 May 2020 01:07:16 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mnot.net; h= content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; s=fm2; bh=B AXwzfBV8uKANPxQI+qQwJCLgWGy9gOee0qKcc/RrFE=; b=c3WWKe40HnYVbhpYu WcBfuycBIZFsP42+NfsqLLZGrSpmDQ1x0CFZpy8TRJhmh4XOlTZQ2iARuuvIr77n sSN1z/9bqS0cR86WGW58GMUWM7F2rVczZcrVDPz2L9KAjlcZ8vcwsx4oTTeq6FtB rEm4mO7Y7TWanZBAKXum0KO1DLdMS68Elo+7RL2ey0q7JNPjS4mH7o811BVOUxVF K0SNU/JhnGLDHm6XL4HnCwC2ae2M3k9uZ0DYPOOtKUuW8qzl3rO2ugePzmDEU6/9 rB5pu8Ew7sUACrMZSvzUE/VsAYieikQOScWmpPEa6VhgkgnRPDk9zd/k80NZgY6G ZGZPw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=BAXwzfBV8uKANPxQI+qQwJCLgWGy9gOee0qKcc/Rr FE=; b=nOoWxI7FVqBj4zMS81iBHimgnJRwmA5yY96Epw218kmi394XbIVPvQlME cmRmEmxGUEgpVBM2nGkp+Q/o5gWsS4jvAV+2jTWu9SgtTHjxLunyfW+u8ozizBu/ vX5M3TQ9G61OjynIq6N13ac6VN4MpgdrqzrsO3YVuG/PcJ51oKK/BvATisfSgn5U QSV1Dl/+O304x+Fgla46v2c7VgWerC9GeJCXWEkwLVXusO2vtjzSpletLPS8RBmE D4YIrKQ9sPf3PsVGQWK7thlELBISF5Sa9MLCZeSwcNPK6fCn+UiQHJ3wWtac6gBM +tI32dtHaRBor+0NHGa52U5GmibRw==
X-ME-Sender: <xms:A0ayXtzWWwKQTNN5gOnl08gXI9o5IacWisacq1goirnlSWcOngzGiQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrjeejgdduudeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpegtggfuhfgjfffgkfhfvffosehtqh hmtdhhtdejnecuhfhrohhmpeforghrkhcupfhothhtihhnghhhrghmuceomhhnohhtsehm nhhothdrnhgvtheqnecuggftrfgrthhtvghrnhepteefleffjeffhfehheeffeegudelgf eujedukeeigedvgeehffefvdehffeileeknecuffhomhgrihhnpehmnhhothdrnhgvthen ucfkphepudduledrudejrdduheekrddvhedunecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepmhhnohhtsehmnhhothdrnhgvth
X-ME-Proxy: <xmx:A0ayXg9lZVaOUByQqmPG5f3Onn3RziZbsV7uQF4FqzYincRmvt8pNw> <xmx:A0ayXhLcjlYlRf7as2_Er3UV2X_JSl2qQkPxNL_LsErm1GtF0mZiTw> <xmx:A0ayXmdPEZXkPQ2WaqsFfoIf1KJ_hIsMeKFUFkmwrMI3KOlnPbqpqg> <xmx:BEayXrDUlrJiri5piPyqbnZ4dWF29r_FW0B1NoiJydPmAkpHtWWIyg>
Received: from macbook-air.mnot.net (119-17-158-251.77119e.mel.static.aussiebb.net [119.17.158.251]) by mail.messagingengine.com (Postfix) with ESMTPA id 4F3723280063; Wed, 6 May 2020 01:07:14 -0400 (EDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\))
From: Mark Nottingham <mnot@mnot.net>
In-Reply-To: <01000171e5dd76ed-e0bb6d02-faa5-4672-93ab-74bc96ae9775-000000@email.amazonses.com>
Date: Wed, 06 May 2020 15:07:10 +1000
Cc: HTTP Working Group <ietf-http-wg@w3.org>, "netconf-chairs@ietf.org" <netconf-chairs@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <CC4173EC-67BB-4652-885E-4C50564CB05A@mnot.net>
References: <01000171e5dd76ed-e0bb6d02-faa5-4672-93ab-74bc96ae9775-000000@email.amazonses.com>
To: Kent Watsen <kent+ietf@watsen.net>
X-Mailer: Apple Mail (2.3608.80.23.2.2)
Received-SPF: pass client-ip=66.111.4.28; envelope-from=mnot@mnot.net; helo=out4-smtp.messagingengine.com
X-W3C-Hub-Spam-Status: No, score=-9.8
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1jWCHK-0006YS-R8 4874987b2a70674bf7c30896210177a3
X-Original-To: ietf-http-wg@w3.org
Subject: Re: I-D for a YANG data model to configure HTTP clients and servers
Archived-At: <https://www.w3.org/mid/CC4173EC-67BB-4652-885E-4C50564CB05A@mnot.net>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/37575
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hi Kent,

Thanks for that. 

To help people understand what they're looking at, do you have any pointers to documents explaining what RESTCONF is, at a high level? Also, some context on what the model is intended to be used for would be really helpful.

Cheers,


> On 6 May 2020, at 3:23 am, Kent Watsen <kent+ietf@watsen.net> wrote:
> 
> Hi Folks,
> 
> This I-D should be of interest to you: draft-ietf-netconf-http-client-server.   It would be great to get some feedback from the HTTP group!
> 
> Mark had asked me to present this work to the HTTP WG @ IETF 107, but I never saw a call for presentations for that meeting.  Upon seeing the recent HTTP virtual interim announcement, I again reached out to Mark, but noting that the VI agenda is packed, he asked me to send an email to the list, which is what this message is about.
> 
> Please note that the I-D is being run out the NETCONF WG because it is part of a suite of drafts that have been in progress to configure NETCONF and RESTCONF clients and servers…and HTTP is a base protocol for RESTCONF.  
> 
> The NETCONF WG’s goal is for this I-D to be minimally viable.  A previous version had more things in it (e.g., all HTTP authentication schemes), but has since been stripped down to the core.  Its current scope is minimally sufficient for the NETCONF WG's goal…there is no desire to increase its scope on our side.
> 
> To get a feel for how the configuration model defined in this draft ties in with the suite of a drafts mentioned above, please see the simplified YANG tree diagrams (RFC 8340) below, pulled from the draft-ietf-netconf-restconf-client-server draft.   [Pro tip: the ‘u’ in the diagram stands for “uses”, i.e., where a YANG model pulls in a definition from a grouping.]
> 
> FWIW, RESTCONF MUST be layered on top of TLS, as depicted in the “restconf-client” model below but, as a RESTCONF server MAY be fronted by a TLS-terminator (i.e., a load balancer), the “restconf-server” model supports both cases with and 
> without the "tls-server-grouping” grouping mixed in.  Important: the ability to mix-in protocol layers as needed is a key aspect of the general approach taken by the NETCONF WG.
> 
> 
>    grouping restconf-client
>      +-- (transport)
>         +--:(https)
>            +-- https
>               +-- tcp-client-parameters
>               |  +---u tcpc:tcp-client-grouping
>               +-- tls-client-parameters
>               |  +---u tlsc:tls-client-grouping
>               +-- http-client-parameters
>               |  +---u httpc:http-client-grouping   <-- defined by this I-D
>               +-- restconf-client-parameters
>                  +---u rcs:restconf-client-grouping
> 
> 
>    grouping restconf-server
>      +-- (transport)
>         +--:(http)
>         |  +-- http
>         |     +-- external-endpoint!
>         |     |  +-- address    inet:ip-address
>         |     |  +-- port?      inet:port-number
>         |     +-- tcp-server-parameters
>         |     |  +---u tcps:tcp-server-grouping
>         |     +-- http-server-parameters
>         |     |  +---u https:http-server-grouping   <-- defined by this I-D
>         |     +-- restconf-server-parameters
>         |        +---u rcs:restconf-server-grouping
>         +--:(https)
>            +-- https
>               +-- tcp-server-parameters
>               |  +---u tcps:tcp-server-grouping
>               +-- tls-server-parameters
>               |  +---u tlss:tls-server-grouping
>               +-- http-server-parameters
>               |  +---u https:http-server-grouping   <-- defined by this I-D
>               +-- restconf-server-parameters
>                  +---u rcs:restconf-server-grouping
> 
> 
> PS:  I’ve CC-ed the NETCONF chairs for visibility, rather than CC the NETCONF list.  If needed, I’ll be the liaison between the two WGs if needed, or we can cross-post if that is deemed better...
> 
> Kent (the author of the I-D)

--
Mark Nottingham   https://www.mnot.net/