Re: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt

Jody Kolker <jkolker@godaddy.com> Fri, 28 April 2017 19:42 UTC

Return-Path: <jkolker@godaddy.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 C896F1294AF for <regext@ietfa.amsl.com>; Fri, 28 Apr 2017 12:42:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.911
X-Spam-Level:
X-Spam-Status: No, score=-1.911 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=secureservernet.onmicrosoft.com
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 1p63jz8jD8yM for <regext@ietfa.amsl.com>; Fri, 28 Apr 2017 12:42:29 -0700 (PDT)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0101.outbound.protection.outlook.com [104.47.32.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E4C6C129AB6 for <regext@ietf.org>; Fri, 28 Apr 2017 12:41:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=secureservernet.onmicrosoft.com; s=selector1-godaddy-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=/QCteAA9fntAxI0nWODMKtygMOmX18AIGKHz/WuLXks=; b=lw6UiLil8n7Kdv+KU8UvpoOScI10Y9wUUruxsVocugaCZpGikGzflukEHAYdKhv5mBSGPcbm8BXcN5+V1lFjPIfgn/VC1GJL3O5AFhJ7Lyzj3oA+L7as4avd+HlCGy6xjvQQ7t3pUbr266pQ5QBYCvHOnUa/ky5JXx4b2Ko18iM=
Received: from BLUPR02MB034.namprd02.prod.outlook.com (10.242.191.17) by BLUPR02MB034.namprd02.prod.outlook.com (10.242.191.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Fri, 28 Apr 2017 19:41:34 +0000
Received: from BLUPR02MB034.namprd02.prod.outlook.com ([169.254.15.215]) by BLUPR02MB034.namprd02.prod.outlook.com ([169.254.15.215]) with mapi id 15.01.1061.013; Fri, 28 Apr 2017 19:41:34 +0000
From: Jody Kolker <jkolker@godaddy.com>
To: "regext@ietf.org" <regext@ietf.org>
Thread-Topic: Re: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt
Thread-Index: AQHSv5BHq1rOm6mzH0uXOn92zbF9wqHbHayQ
Date: Fri, 28 Apr 2017 19:41:34 +0000
Message-ID: <BLUPR02MB034683B7941973694922ACABF130@BLUPR02MB034.namprd02.prod.outlook.com>
References: <DE665530-4360-4E1B-B95B-551C284EABD3@verisign.com>
In-Reply-To: <DE665530-4360-4E1B-B95B-551C284EABD3@verisign.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
authentication-results: ietf.org; dkim=none (message not signed) header.d=none;ietf.org; dmarc=none action=none header.from=godaddy.com;
x-originating-ip: [64.202.161.57]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BLUPR02MB034; 7:bBIIrPfbMDtKeRLeqDikYZUeqV5feYg6w1T0nTdO9YP3jnACmMxFd/zoW7CFJASi2r+7m0UF1UIul/+LcqUxG4fVVMZHiLDVt5bYEbVl16VWGk06yhLvq8iBjioHxO4QshMYd7IX0JMT2/naZq4qVzPI7AlhjLGGNuJx4v4QU5tbvLeFXA0313EUVTmq5nmGdlF6y+OF65/P0qwhwD7gfm/Mdxx4e5VP9mwtXhfiI5sZN+ODPnCZHXZ8mB9s4r5nBN9zNi0p+O3UIBXyCTAHkhdSe1MPRuJPKpkQrGMJwWmz9kPU/1B7Vj6f2KPENIzbIe9A6t4qQK5xyPYtw35XIQ==
x-ms-office365-filtering-correlation-id: 74cc61a0-6073-45de-96d0-08d48e6e93cc
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081)(201702281549075); SRVR:BLUPR02MB034;
x-microsoft-antispam-prvs: <BLUPR02MB034BEA91510DE789153E694BF130@BLUPR02MB034.namprd02.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(120809045254105)(131327999870524)(246761809553906)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(102415395)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123558100)(20161123562025)(6072148); SRVR:BLUPR02MB034; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB034;
x-forefront-prvs: 029174C036
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39400400002)(39860400002)(39450400003)(39840400002)(39410400002)(39850400002)(13464003)(377424004)(377454003)(86362001)(122556002)(81166006)(102836003)(6116002)(6506006)(790700001)(110136004)(1730700003)(38730400002)(6436002)(33656002)(66066001)(6246003)(8676002)(53946003)(5640700003)(230783001)(55016002)(3846002)(9686003)(733005)(606005)(2351001)(54896002)(54556002)(53936002)(99286003)(189998001)(236005)(6306002)(3660700001)(5660300001)(25786009)(53546009)(2900100001)(8936002)(53376002)(50986999)(74316002)(54356999)(6916009)(229853002)(5630700001)(7906003)(7736002)(2906002)(99936001)(76176999)(2501003)(2950100002)(3280700002)(7696004); DIR:OUT; SFP:1102; SCL:1; SRVR:BLUPR02MB034; H:BLUPR02MB034.namprd02.prod.outlook.com; FPR:; SPF:None; MLV:ovrnspm; PTR:InfoNoRecords; LANG:en;
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/related; boundary="_004_BLUPR02MB034683B7941973694922ACABF130BLUPR02MB034namprd_"; type="multipart/alternative"
MIME-Version: 1.0
X-OriginatorOrg: godaddy.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2017 19:41:34.1104 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: d5f1622b-14a3-45a6-b069-003f8dc4851f
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR02MB034
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/ZjdIH73hrI6elTEPBV6s9eoh_l4>
Subject: Re: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.22
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: Fri, 28 Apr 2017 19:42:34 -0000

Thanks James.

Comments in line below.


From: regext [mailto:regext-bounces@ietf.org] On Behalf Of Gould, James
Sent: Thursday, April 27, 2017 2:56 PM
To: Roger D Carney <rcarney@godaddy.com>; regext@ietf.org
Subject: Re: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt

Roger,

Thanks for posting the updated draft and the draft looks very close to what was discussed in Chicago.  Below is my feedback to the latest version:


1.      Section 3.1 “Client Commands”

a.       It may be useful to include an enumerated list of commands that is extensible like what was done in draft-ietf-regext-change-poll, which includes an enumerated list of operations with one of the values being “custom” and with an optional “op” attribute to define the custom operation name.  This way the XML parser will validate the command names prior to hitting the business logic, except for the “custom” command that would need to be manually validated.

This section appears to be enumerated already but does need to have the “custom” command added.  Can you be provide an example of the enumeration?


2.      Section 5.1.1 “EPP <check> Command”

a.       The OPTOINAL <fee:period> element should be fully defined.  For example, what happens if the <fee:period> is not provided?  I assume that if the <fee:period> is not provided that the default period would be used.  The default period may be dependent on the command itself.  For example, a restore does not have a period and therefore there is no default.  Should the default period be defined by command in the protocol, or should it be up to server policy?  My thought is to leave it up to server policy, since that is what was done in EPP RFC 5732.

The <fee:period> is defined in 3.3 – should that text also be added to 5.1.1?
From the document:
The <fee:period> element is OPTIONAL in <check> commands: if omitted,the server MUST determine the fee(s) using a validity period of 1 year.  The <fee:period> element MUST be present in <check> responses.



b.      The OPTIONAL <fee:class> element should be fully defined.  What does providing the <fee:class> mean.  Is the <fee:class> a filter to indicate whether the domain name matches the specified classification?  If the <fee:class> does not match, is the fee returned as unavailable due to something like “mismatching class”?  Since classification is handled at the object level and not the command level, does it make sense to set it at the object level in the XML, like placing it at the level of the <fee:currency> and the <fee:command> elements instead of placing it under the <fee:command> element?  The same holds true for the check response extension.

I believe the <fee:class> should be removed from the check command request as it does not seem to have a purpose.  It should only be included in the response.


c.       I would not directly refer to the <domain:name> or the <domain:check> except as an example, since the fee extension could be applied to other billable EPP objects (e.g., email forwarding, defensive registration).  My recommendation is to be generic in stating something like “and a <fee:cd> for each element referenced in the check command, like for each <domain:name> element in RFC 5731 [RFC5731]”.  Similarly, I would change “A <fee:objID> element, which MUST match an element name from the client command, like the <domain:name> element in RFC 5731 [RFC5731]”.

Will review with Roger.


d.      I would update the text for the <fee:period> returned in the check response extension.  I would keep the text generic to return the period that was requested in the command extension, the default period if there is one for the command, or no period if the command is not associated with a period like with the “restore” command in RFC 3915 [RFC3915].  Since we can create new verbs in EPP like what was done with the “restore” command in RFC 3915, I recommend keeping the language in the extension as generic as possible to cover the full set of options for any type of command.

Will review with Roger.


e.       I recommend describing the <fee:fee>, <fee:credit>, <fee:class>, and <fee:reason> elements either directly with the element or via a reference to somewhere else within the draft.

Will review with Roger.


f.       The <check> response example is missing the “avail” attribute in the <fee:cd> elements when avail=”1”.  I realize that the default is “1” in the XML schema, so I would specify that there is a default value of “1” in the text and I would include examples of explicitly including the avail=”1” for clarity.

Agree.


g.      You may need to support the “lang” attribute for the <fee:reason> to be consistent with the other EPP RFCs.

h.      In the example, I don’t believe any <fee:cd> elements other than <fee:objID> and <fee:reason> would be returned when avail=”0”.  I recommend removing the <fee:period> from the example when avail=”0”.

Could this be left to server preference?


i.        I believe it is important to include text describing how a compliant server should handle non-standard fee objects in the check command when the fee extension is not passed.  It is best to return the non-standard fee object as unavailable in the check response.  If the client does not know the fee, then the create will fail downstream, so it’s best to address it upfront.

Agree – If the fee extension is not passed in the check command for a domain that is non standard pricing, the check command should return unavailable for backwards compatibility for registrars that will not be selling premium domains.  To these registrars these domains are not available to be registered.

3.      Section 5.1.1.1 “Server Handling of Elements”

a.       I believe the first element on the tiers of classes, it looks like it assumes that the avail flag is at the level of the <fee:command> element, but it is now at the level of <fee:cd>.  My recommendation is to define the <fee:class> at the object level, and if the <fee:class> does not match, return avail=”0” at the <fee:cd> level with a <fee:reason> “fee class mismatch”.

If the <fee:class> is removed from the request, this would not be an issue.  I recommend removing <fee:class> from the check request.


b.      The second element also assumes that the avail flag is at the <fee:command> level.  This element is not clear to me.  I believe in general if the <fee:class> is passed it must be validated as a supported classification and compared with the classification assigned to the object, and if the classification is invalid or there is a mismatch the fee should be returned as unavailable (avail=”0”) for the fee object with a reason.

Let’s remove <fee:class> from the check request.


c.       I’m not sure that it’s good for the server to ignore an element passed by the client.  If the client passes an invalid element, then it should return as unavailable with a reason.




—

JG

[cid:image001.png@01D2C02A.B40595B0]

James Gould
Distinguished Engineer
jgould@Verisign.com

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

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

From: regext <regext-bounces@ietf.org<mailto:regext-bounces@ietf.org>> on behalf of Roger Carney <rcarney@godaddy.com<mailto:rcarney@godaddy.com>>
Date: Tuesday, April 25, 2017 at 5:40 PM
To: "regext@ietf.org<mailto:regext@ietf.org>" <regext@ietf.org<mailto:regext@ietf.org>>
Subject: [EXTERNAL] Re: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt


Good Afternoon,



Here is the update draft document. This should include all of the agreed upon changes from the Chicago meeting (biggest change was the simplification of the <check> call).



One topic that was discussed in Chicago (and not resolved) was on the concept of “premium names” and what is returned from the server if no fee extension was passed into the <check>. Many thought to be more “backwards compatible”/”user friendly”, especially for those registrars that do not and may not be participating in the allocation of “premium names”, that the server should respond as unavailable. Others expressed that if it is available then the server should respond available. Please share your thoughts on the list on this topic and if this draft should even try to account for this concept.



Please let me know if you have any questions.





Thanks

Roger





-----Original Message-----
From: regext [mailto:regext-bounces@ietf.org] On Behalf Of internet-drafts@ietf.org<mailto:internet-drafts@ietf.org>
Sent: Tuesday, April 25, 2017 4:31 PM
To: i-d-announce@ietf.org<mailto:i-d-announce@ietf.org>
Cc: regext@ietf.org<mailto:regext@ietf.org>
Subject: [regext] I-D Action: draft-ietf-regext-epp-fees-03.txt





A New Internet-Draft is available from the on-line Internet-Drafts directories.

This draft is a work item of the Registration Protocols Extensions of the IETF.



        Title           : Registry Fee Extension for the Extensible Provisioning Protocol (EPP)

        Authors         : Roger Carney

                          Gavin Brown

                          Jothan Frakes

                Filename        : draft-ietf-regext-epp-fees-03.txt

                Pages           : 33

                Date            : 2017-04-25



Abstract:

   This document describes an Extensible Provisioning Protocol (EPP)

   extension mapping for registry fees.





The IETF datatracker status page for this draft is:

https://datatracker.ietf.org/doc/draft-ietf-regext-epp-fees/



There are also htmlized versions available at:

https://tools.ietf.org/html/draft-ietf-regext-epp-fees-03

https://datatracker.ietf.org/doc/html/draft-ietf-regext-epp-fees-03



A diff from the previous version is available at:

https://www.ietf.org/rfcdiff?url2=draft-ietf-regext-epp-fees-03





Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org.



Internet-Drafts are also available by anonymous FTP at:

ftp://ftp.ietf.org/internet-drafts/



_______________________________________________

regext mailing list

regext@ietf.org<mailto:regext@ietf.org>

https://www.ietf.org/mailman/listinfo/regext