Re: [regext] OK, What Next? (was RDAP Extensions Approach Analysis v2)

"Gould, James" <jgould@verisign.com> Mon, 18 July 2022 18:11 UTC

Return-Path: <jgould@verisign.com>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5B3C9C14F748 for <regext@ietfa.amsl.com>; Mon, 18 Jul 2022 11:11:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.11
X-Spam-Level:
X-Spam-Status: No, score=-7.11 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, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=verisign.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 yTWao7iQcIMS for <regext@ietfa.amsl.com>; Mon, 18 Jul 2022 11:11:24 -0700 (PDT)
Received: from mail3.verisign.com (mail3.verisign.com [72.13.63.32]) (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 C46DAC1595E6 for <regext@ietf.org>; Mon, 18 Jul 2022 11:11:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=verisign.com; l=7928; q=dns/txt; s=VRSN; t=1658167884; h=from:to:cc:subject:date:message-id:content-id: content-transfer-encoding:mime-version; bh=NW898GIGYhLPs6CJN34/hKzR8ymJVHA392Du9pJgpkk=; b=bF0kwgSdnr2ckJ79QtqAwODU5GVo0oa9PWqYmz06egA1g9TPF9adphyK nwtYfwvxiGueDbsEyy5HPNG/qzWMJJHkd46VBt2y6jl5bekjGh96zmPt3 +H522Ut+JA8a1OSv4vwADYkLLrp2n4mRXvaWIYcdcCl2ZQKU+1AGzWHZD VK2JRPcBklaoCCC+iSCs1OiFihloYrH8xctsVfvjGc3j6YgxvSsTFp/Qz v+Rb75OSFUgGVsMfwJ75vaE901L6zPBiDiXhzHQXqmHSl0r/+jXOjRoTq twOODuAVVoGLRCygOKZIFD3RkxMqCsKKHOaVbPedHFp63QncOonUmb38a w==;
IronPort-Data: A9a23:hHVPcaivimNhE4LSlg/r1igmX161GxEKZh0ujC45NGQN5FlHY01je htvDGCOb/mDNmv8KIt1bN/i9UgH6pDRz9JhSFNrriA1QnkW8JqUDtmndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wqz6V5NfsYkidfyc9IMsaoU8lyrRRbrJA24DjWVvS4 IOq+qUzBXf+s9JKGjNMg068gE431BjCkGtwUosWPK0jUPf2zhH5PbpHTU2DByKQrrp8R4ZWc 93+IISRpQs1yT92U4/4zeyrGqE9auW60QCm0hK6UoD82kQS/nRaPqwTbJLwYm8P49mFckwYJ HygevVcRC9wVpAgltjxXDFFTwJdZr0e3ISeYliQs+K/3Q7YNHrFlqAG4EEeZeX0+85dO0cXy to1GGhXKA6IgPiuhru3DPd2ncJlJ87uVG8dkig4i2iGVrB/HMuFH/SiCdxwhV/cguhMEvHDY 8Yxdzd1bQ/BbBsJMVASYH47tL723SCkKW0BwL6Tjbgm6TKI9lxj7Ib0OfX/RvyGZOkKjFnN8 woq+Ey8WHn2Lue30jqC9nahgOXCliCuBNoMGae57f9lhhuYwWk7BBgfT1D9oPSlhAi5Qd03A 0kd4Csp66w1+kKxQ9X6dxy5vDiPuARaWsY4O+Q85BClyrrOpRuCbkAeQzFMeMAOtcIqS3otz FDhoj/yLTZ1tuSKT3+Nru3Rti2ofy0UNioIYmkOVw1cpcf5u4d1hRXKJjp+LJOIYhTOMWmY6 1i3QOIW3d3/UeZjO32HwG36
IronPort-HdrOrdr: A9a23:51KMRq7tS5mlB/kI2wPXwBXXdLJyesId70hD6qkXc20xTiX4rb HNoB1173/JYVoqNk3I+uruBEDoexq1yXcf2/hzAV7NZmjbkVrtAo1k4ZDr3jHsXwbvn9Qw6Y 5QN4xzEsf5A1Q/r8rriTPTL/8QhP2K6rqhi+ub9WpqVg0CUcxdxh10ERmWCXd7QwR6BZ40fa D22vZ6
X-IronPort-AV: E=Sophos;i="5.92,281,1650931200"; d="scan'208";a="16313281"
Received: from BRN1WNEX01.vcorp.ad.vrsn.com (10.173.153.48) by BRN1WNEX02.vcorp.ad.vrsn.com (10.173.153.49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.28; Mon, 18 Jul 2022 14:11:22 -0400
Received: from BRN1WNEX01.vcorp.ad.vrsn.com ([10.173.153.48]) by BRN1WNEX01.vcorp.ad.vrsn.com ([10.173.153.48]) with mapi id 15.01.2375.028; Mon, 18 Jul 2022 14:11:21 -0400
From: "Gould, James" <jgould@verisign.com>
To: "shollenbeck=40verisign.com@dmarc.ietf.org" <shollenbeck=40verisign.com@dmarc.ietf.org>, "mario.loffredo@iit.cnr.it" <mario.loffredo@iit.cnr.it>, "andy@hxr.us" <andy@hxr.us>
CC: "regext@ietf.org" <regext@ietf.org>
Thread-Topic: RE: RE: RE: Re: [regext] OK, What Next? (was RDAP Extensions Approach Analysis v2)
Thread-Index: AQHYmtHINkX9nw1cG0a4wkltJ20OVQ==
Date: Mon, 18 Jul 2022 18:11:21 +0000
Message-ID: <DEAB137F-912F-4433-9274-102AA5D23270@verisign.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.62.22061100
x-originating-ip: [10.170.148.18]
Content-Type: text/plain; charset="utf-8"
Content-ID: <3D5AD38ABE76E84BB300BC6894AD88CD@verisign.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/SHfd--viItcP71fFnET3_sF7LOA>
Subject: Re: [regext] OK, What Next? (was RDAP Extensions Approach Analysis v2)
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>, <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>, <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Jul 2022 18:11:28 -0000

Scott,

My feedback is embedded below.

-- 
 
JG



James Gould
Fellow Engineer
jgould@Verisign.com <applewebdata://13890C55-AAE8-4BF3-A6CE-B4BA42740803/jgould@Verisign.com>

703-948-3271
12061 Bluemont Way
Reston, VA 20190

Verisign.com <http://verisigninc.com/>

On 7/18/22, 1:49 PM, "Hollenbeck, Scott" <shollenbeck=40verisign.com@dmarc.ietf.org> wrote:



    > -----Original Message-----
    > From: Gould, James <jgould=40verisign.com@dmarc.ietf.org>
    > Sent: Monday, July 18, 2022 1:06 PM
    > To: Hollenbeck, Scott <shollenbeck@verisign.com>; mario.loffredo@iit.cnr.it;
    > andy@hxr.us
    > Cc: regext@ietf.org
    > Subject: [EXTERNAL] Re: RE: RE: Re: [regext] OK, What Next? (was RDAP
    > Extensions Approach Analysis v2)
    >
    > Caution: This email originated from outside the organization. Do not click 
    > links
    > or open attachments unless you recognize the sender and know the content
    > is safe.
    >
    > Scott,
    >
    > >    You can't give drafts, and the content they contain, implementation
    > status
    > >    that they don't have. I get the value of implementation experience, but
    > that
    > >    doesn't mean that we can add something to IETF processes that doesn't
    > exist.

    > I'm not stating that a draft has the implementation status, but by 
    > supporting
    > pointed versioning and minimal client / server impact to draft updates, it 
    > will
    > encourage implementations and contribute to the implementation status
    > section.  We found the pointed versioning to be very useful with the EPP
    > extensions, which should be reused for RDAP extensions.

    [SAH] You're putting content into a document that has no formal status with 
    the expectation that implementations will do something with version 
    information that changes over time. It might be useful, but you really 
    shouldn't be doing it.

JG - Do you mean the IANA registrations that are used for the elements of the extension, including the RDAP conformance?  We’ve done this for the EPP extensions (e.g., pointed versioned namespace URIs) for many years and it is needed for those that choose to implement to a draft version.  Encouraging support for implementing a draft is important to contribute to the Implementation Status section of the draft; otherwise, the draft is purely theoretical.  Versioning can change and the signaling of it is material.  The RDAP conformance values in RDAP should have had explicit support for versioning.  The "rdap_level_0" implied versioning, but there is no mention of versioning in the RFCs.  If versioning is included, the RDAP conformance is the natural place for it.  

    > > [SAH] As I mentioned in my response to Mario, part of the answer may
    > > lie in the server NOT removing support for older versions of an
    > > extension if it wishes to provide backward compatibility.
    >
    > Eventually the support for the old version can and will go away on the 
    > server-
    > side, where embedding the version into all the extension elements can
    > create interoperability issues without the prior knowledge of the server.
    > There is no version negotiation in RDAP, so once the old version support is
    > removed, a client implementation can be broken.  Using just the RDAP
    > conformance for hinting / signaling the support of the versioned
    > extension(s), can be adjusted by the server with little to no impact to the
    > clients.

    [SAH] "There is no version negotiation in RDAP"? It's not done the same way 
    it's done in EPP, but it certainly is possible. Look at Section 3.1.6 of RFC 
    9082:

    "The help path segment can be used to request helpful information (command 
    syntax, terms of service, privacy policy, rate-limiting policy, supported 
    authentication methods, supported extensions, technical support contact, etc.) 
    from an RDAP server."

    A client can submit a "help" query to an RDAP server to request information 
    before doing anything else. If the server publishes information describing 
    supported extensions, versions of supported extensions, etc., the client can 
    then choose which features it wishes to use based on the information received 
    in the "help" response, which contains an rdapConformance data structure along 
    with everything else the server returns. The server will know which versions 
    of extensions are being requested by the client based on the prefix the client 
    prepends to the extension elements sent in subsequent requests.

JG - The help does not support client version signaling and the help response doesn't use any formal information for client software discovery.  If the intent of the "help" query was to provide for formal client software discovery, it would require much more formality.  The "help" query could help the developer develop the extension in the client software, but not by software discovery.  Some extensions don't include path segment or query parameter extensions, such as the redacted extension (draft-ietf-regext-rdap-redacted), so there is no method of client extension version signaling.  If RDAP does need to provide client version signaling, then there would be the need for a new extension for that purpose.  

JG - I'm going to go back to Approach B, where there is a unique common prefix registered ("e.g., "foo") used by all extension elements and the extension's RDAP conformance values ("foo_level_0" or even pointed versions "foo_level_0_1").  You get the extension signaling and content consistency and the versioning is isolated to the RDAP conformance.  What is the issue with this approach?      

    Scott