Internet DRAFT - draft-mcsweeney-drop-scheme

draft-mcsweeney-drop-scheme



Internet Engineering Task Force (IETF)                       T.McSweeney
Internet-Draft                               	        [1]Parameter One
Intended status: Informational                            August 15,2022                    
Expires: February 16,2023                                


                     draft-mcsweeney-drop-scheme-05
                     Defined Resource Operator (drop)     
                     The 'drop' URI Scheme
                     

Abstract

   This document describes the 'drop' Uniform Resource
   Identifier (URI) scheme.   


Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."


Copyright Notice

   Copyright (c) 2023 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.
	
   This document may not be modified, and derivative works of it may not
be created, except to format it for publication as an RFC or to
translate it into languages other than English.
 
Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . .  2
   2.  Scheme Definitions . . . . . . . . . . . . . . . . . . . . .  2
     2.1.  Demonstrable, New, Long-Lived Utility  . . . . . . . . .  2  
     2.2.  Syntactic Compatibility . . . . . . . . . . . . . . . . . 2  
     2.3.  Definitions and Operations  . . . . .  . . . . . . . . . .3
     2.4.  Internationalization and Character Encoding . . . . . . . 4  
     2.5.  Interoperability Considerations . . . . . . . . . . . . . 4  
   3.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
   4.  Security Considerations . . . . . . . . . . . . . . . . . . . 5
   5.  Normative References  . . . . . . . . . . . . . . . . . . . . 5  
   6.  Informative References. . . . . . . . . . . . . . . . . . . . 5  
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . . 6 


1.  Introduction

   This document is provided to inform the internet community of the
'drop' URI scheme and to meet the required guidelines of a permanent
URI scheme. This scheme shortens the path to further unifying
communications by using public mechanisms of continuity for the pre-
resolution of private and public service integration.


2.  Scheme definitions and syntax

2.1.  Demonstrable, New, Long-Lived Utility

   Phone numbers and physical addresses are antiquated but still very
useful. But what is to say that they both can not be represented by the
same character string?  For any given person or business, it is simpler
to enter a single string into one's phone than what is currently an ever
growing list of communication method identifiers.  When an owner is able
to update contact information it requires no changes by another user's
contact list or database.  People, businesses, and machines generally
have a wide variety of, and specific uses for, different modes of
communication.  Where those modes of communication overlap, there should
also be consolidation.  The 'drop' scheme was created in a way to be
able to reuse current infrastructure making it easy to use and quick to
deploy.

2.2.  Syntactic Compatibility
 
   "While it is common for schemes to further delegate their
   substructure to the URI's owner, publishing independent standards
   that mandate particular forms of URI substructure is inappropriate,
   because that essentially usurps ownership.  [RFC7320] abstract

nonetheless....

   "The URI syntax defines a grammar that is a superset of all
   valid URIs, allowing an implementation to parse the common components
   of a URI reference without knowing the scheme-specific requirements
   of every possible identifier.  [RFC3986  abstract]
   
Section 3 of [RFC3986] defines the overall syntax for URIs and offers a
couple examples showing the component parts (1-5).  The scheme and path
components are required, though the path may be empty (no characters).


         foo://example.com:8042/over/there?name=ferret#nose
         \_/   \______________/\_________/ \_________/ \__/
          |           |            |          |          |
URI=  scheme(1)  authority(2)    path(3)    query(4)   fragment(5)
          |   _____________________|__
         / \ /                        \
         urn:example:animal:ferret:nose


The 'drop' URI does not use all 5 of the parse-able components 
available to it.  Instead, it uses only the required scheme(1) and 
path(3) components.  Previously registered URIs such as the 'tel' 
[RFC3966] and 'geo' [RFC5870] schemes also use a limited number of 
components.  But unlike these other schemes the 'drop' scheme uses the
number sign '#' as a general delimiter where typically a colon ":" is
found. The ":" and the "#" are two of the seven charcters catagorized as
general delimiters (gen-delims) in the "reserved" set.  The general 
delimiters (gen-delims), described in Section 2.2 [RFC3986], can be used
to seperate generic URI components(1-5).  The "#" is defined as a
delimiter by the implementation-specific syntax of the 'drop' URI's 
dereferencing algorithm.  The 'drop' scheme syntax is as follows: 

drop-uri = drop "#" character string


            drop   #    fg34htx
            \__/  \_/   \_____/
             |     |       |
         <scheme>  |  <scheme-specific-part>
               <gen-delim>  


Characters of the scheme-specific-part have not been limited.
The following are some examples of 'drop' URIs:

         drop#sd54g54  |  drop#34.56  |  drop#fgte8g-234.45

After the first step of resolution, the scheme-specific part of a 'drop'
URI becomes the subdomain portion of a FQDN where the resource(s) can be
located or further processing continued. It would look similar to
'sd54g54.dropexample.com'.  There will be only one second level domain
for http use. This subdomain characteristic gives it a global 
uniqueness which adds value and prevents ambiguity. 

Compared against other URI schemes, the 'drop' scheme's use of a number 
sign makes the scheme in its entirety unique, including the
scheme-specific-part.  More so,  the scheme-specific-part can be user 
generated to add an extra layer of uniquess.  Sending a fax to the same
digits as a phone call has been for around a long time proving that 
being unique and being common can coexist.  The 'drop' scheme can extend
that commonality to the web and beyond.


2.3.  Definitions and Operations

Primarily functioning as a locator there are three ways to get to a
'drop' URI resource; http, SRV records, and private resolution.  Private
resolution is only used if the resource(s) can not be found using the 
previous two methods.  This resource retrieval process utilizes the 
Dynamic Delegation Discovery System [RFC3401].  Invoking the 'drop' URI 
will cause a lookup for matching application information starting with 
an A record [RFC1035], then on to Service Records [RFC2782], and then on
to other available records that may offer a new rule set for resolution.
As an example use case, when the 'drop' scheme is typed into the address
bar of a browser, the dns returns a FQDN to where the browser may then 
go and retrieve a HTML document.  Similarly, the same scheme-specific 
part can be used in a messaging address, or mapping location 
application.  Reusability of a scheme-specific-part that has an output 
of a hierarchical structure representing an administrative delegation 
that translates into a domain name makes this scheme a perfect fit for 
domain name system [RFC6950] section 3.3.  Users and owners define what 
operations are available.  One user may have sip services enabled while
another may only let you go to a company's webpage. 

Permanency of what is identified by the scheme-specific-part is not 
guaranteed and is user specific.  Permanency of a specific 
scheme-specific-part is not guaranteed to exist or that it will re-exist
after it had once existed. There may be a future need where the 'drop' 
URI scheme will want to be used as a strict identifier so it would not 
be fair to constrain the definition of this scheme in this document at 
this time. Other future uses beyond what is commonly known of unique 
subdomain creation should be anticipated for this 'drop' scheme.


2.4.  Internationalization and Character Encoding

The 'drop' scheme name follows the syntax of Section 3.1 of [RFC3986]
which only allows for a limited number of characters (US-ASCII).  
The scheme name is also sufficiently short and distinguishable to 
avoid problems.  The 'drop' scheme name does not identify any 
particular application and does not have any correspondence with a 
particular service name.  Queries that come in non-ASCII encoding 
must be allowed to go forward so that private resolution can continue 
if A and SRV record lookups fail.

2.5.  Interoperability Considerations

The scheme creator is not aware of any details regarding the scheme 
that may impact interoperability.

3.  IANA Considerations

IANA will update the registration record for the "drop" URI scheme to 
list its status as "permanent" and to refer to this document, as
described below.

   Scheme name: drop

   Status:  permanent

   Applications/protocols that use this scheme name:  
   http, sip, email

   Contact:  
   Registering party:  Tim McSweeney <tim@dropnumber.com>	
   Scheme creator: Parameter One
   
   Change controller: 
   Either the registering party or someone who is verified to represent 
   the scheme creator. 

   References: Section 5 of this document

   
4.  Security Considerations

Security is partly dependent on the resource being located
and the application being used for the locating.  Generally, security 
concerns for this URI would come from the use of the URI and not 
necessarily from the URI itself as [RFC3986] section 7 describes. 
Examples are, domain spoofing, malicious redirection, domain hijacking,
and phishing attacks.


5.  Normative References

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66,
              RFC 3986, DOI 10.17487/RFC3986, January 2005,
              <http://www.rfc-editor.org/info/rfc3986>.

   [RFC7320] Nottingham, M., "URI Design and Ownership", BCP 190 RFC
              7320, DOI 10.17487/RFC7320, July 2014,
              <https://www.rfc-editor.org/info/rfc7320>. 

   [RFC2782]  Gulbrandsen, A., Vivie, P., and L. Esibov, "ADNS RR for
              specifying the location of services (DNS SRV)", RFC 2782,
              DOI 10.17487/RFC2782, February 2000, 
              <https://www.rfc-editor.org/info/rfc2782>.

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              Specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
              November 1987, <https://www.rfc-editor.org/info/rfc1035>.

   [RFC3966]  Schulzrinne, H., "The tel URI for Telephone Numbers", RFC
              3966, DOI 10.17487/RFC3966, December 2004,
              <https://www.rfc-editor.org/info/rfc3966>.
   
   [RFC3401]  Mealling, M., "Dynamic Delegation Discovery System (DDDS)
              Part One: The Comprehensive DDDS", RFC 3401, DOI.17487/
              RFC3401, October 2002, 
              <https://www.rfc-editor.org/info/rfc3401>.
   
   [RFC6950]  Peterson, J., Kolkman, O., Tschofenig, H., and B. Aboba,
              "Architectural Considerations, on Application Features in
              the DNS", RFC 6950, DOI 10.17487/RFC6950, October 2013,
              <https://www.rfc-editor.org/info/rfc6950>.

   [RFC5870]  Mayrhofer, A. and C. Spanring, "A Uniform Resource 
              Identifier for Geographic Locations ('geo' URI)", RFC 
              5870, DOI 10.17487/RFC5870, June 2010, 
              <https://www.rfc-editor.org/info/rfc5870>. 


6.  Informative References 
  

Authors' Addressess
   
   Tim McSweeney
   Parameter One
   950a Union Rd Suite #432
   West Seneca, NY 14224
   United States
   Email: tim@dropnumber.com