Re: DNSSEC EPP Extension (RFC 4310) Usability Question

James Gould <[email protected]>
Newsgroups gmane.ietf.provreg
Message-ID <C5669512.2FBFD%[email protected]>
Patrick,

I disagree with your following paragraph:

For me, no mix at all would be the simpler case, both on registry
side and registrar side: that way there is nothing to think about
what will happen if we do add+rem at the same type for the same info
(otherwise it depends on registry policies and in some case it will
be a noop as add+rem will be seen as opposite, where sometimes in
other registries or other cases it will be a removal since it comes
last), and registrars still have all power to do what they want, they
just, if really needed, do multiple domain:update calls one after the
following and each one with either an add, a rem or a chg. And this
can be encapsulated on their side as a global operation in an higher
API.

It boils down to a transactional consistency issue.  An individual EPP
command is one unit of work and is typically executed as a single database
transaction on the Registry side, so when a Registrar either manages the DS
data for the Registrant or provides a UI for the Registrant to update the DS
data, having to manage the updates in separate commands and subsequently
separate transactions is more complex and will cause transactional
inconsistency.  The only way to keep transactional consistency with the
desire of a Registrant that uses a Registrar¹s UI to manage DS data is to
have the UI only allow either an add, remove, or change, but not a
combination.  I personally have never seen a UI that manages a list in this
manor. 

There is also the issue of transfers.  What happens when a signed domain is
transferred to another Registrar?  Does the DS data transfer along with it
or does it get cleared.  I¹m assuming that it would be transferred along in
a similar model as the name servers.  It is up to the gaining Registrar to
update the name servers and DS data assuming that the hosting is changing
along with the transfer.  In this case, the gaining Registrar would have a
need to remove the existing name servers, add the new name servers, and do
the same with the DS data.  Having this done in separate commands /
transactions would result in DNS getting incremental changes based on the
add and remove order chosen by the Registrar.  It is much cleaner to simply
be able to remove and add in a single command and single transaction, which
will result in one unit of work for DNS updates.

I don¹t believe managing a list with delta adds, removes, and changes is
overly complicated.  The RFC could include text that describes some of the
basic rules to ensure there is consistency.  That assumes that all
Registries fully follow the RFC, which based on your ³EPP : An implementor
experience and recommendations² is doesn¹t look like that is the case.   In
either event, changing the choice to a sequence is backward compatible, so
it should not break current client implementations.  The protocol should
address the most common use cases and ensure transactional consistency.

-- 


JG 

-------------------------------------------------------
James F. Gould
Principal Software Engineer
VeriSign Naming Services
[email protected]
Direct: 703.948.3271
Mobile: 703.628.7063

 
21345 Ridgetop Circle
LS2-2-1
Dulles, VA 20166

Notice to Recipient:  This e-mail contains confidential, proprietary and/or
Registry  Sensitive information intended solely for the recipient and, thus
may not be  retransmitted, reproduced or disclosed without the prior written
consent of  VeriSign Naming and Directory Services.  If you have received
this e-mail message in error, please notify the sender immediately by
telephone or reply e-mail and destroy the original message without making a
copy.  Thank you.



From: Patrick Mevzek <[email protected]>
Organization: Dot And Co
Date: Tue, 9 Dec 2008 20:16:41 -0500
To: EPP Provreg <[email protected]>
Subject: Re: [ietf-provreg] DNSSEC EPP Extension (RFC 4310) Usability
Question

James Gould <[email protected]> 2008-12-09 18:29
> In reviewing the DNSSEC EPP Extension (RFC 4310) I noticed one usability
> issue that I would like to get feedback from the existing implementations of
> the extension. 
>
> The specification allows adding (<secDNS:add>), removing (<secDNS:rem>), and
> changing (<secDNS:chg>) DS data, but according to the XML schema they can¹t
> be done at the same time.  Below is from the RFC 4210 XML schema for the
> <secDNS:update>:

As others have said I think the whole "issue" is the same for all
update operations on various objects, not only DNSkey materials.

I think that by allowing more flexibility with all operations
possible at the same time, it only create confusion with no big
benefit at the end.

Specifically, I think the most frequent use case for DNS material
would be to add *OR* remove a key, and not at the same time if we are
after smooth transitions.
Change of a key detail may be useful but should not happen too often
in practice.

So having only either one add or one chg or one rem block in a
domain:update for DNSkey material seem fine to me, and I would not be
in favor of mixing.

I also observe (without hard numbers) that use cases depend on object
types.
I would say that for status values it seems more logical to have
mainly add and rem operations (and again probably very few with add
and rem together in a single call), where for nameservers the chg
operation may be more frequent (even if not possible by core EPP
RFCs, it is done by some registries).
As for contact, I would say that it derives a lot from the fact that
very few registries seem to allow really multiple contacts of the
same type, and if they do I think very few registrars use that
feature. Hence in that case add or rem operations are probably the
more logical one for contacts during domain update.

For me, no mix at all would be the simpler case, both on registry
side and registrar side: that way there is nothing to think about
what will happen if we do add+rem at the same type for the same info
(otherwise it depends on registry policies and in some case it will
be a noop as add+rem will be seen as opposite, where sometimes in
other registries or other cases it will be a removal since it comes
last), and registrars still have all power to do what they want, they
just, if really needed, do multiple domain:update calls one after the
following and each one with either an add, a rem or a chg. And this
can be encapsulated on their side as a global operation in an higher
API.

I also observe that, for the same object types, some registries allow
*only* chg, others allow *only* add and/or rem and some allow all
3 ... which create even more confusion.

--
Patrick Mevzek
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.