One document matched: draft-ietf-tsvwg-iana-ports-01.txt

Differences from draft-ietf-tsvwg-iana-ports-00.txt


Transport Area Working Group                                  M. Cotton 
Internet Draft                                                    ICANN 
Updates: 2780, 4340 (if approved)                             L. Eggert 
Intended status: BCP                                              Nokia 
Expires: May 2009                                             A. Mankin 
                                                    Johns Hopkins Univ. 
                                                          M. Westerlund 
                                                               Ericsson 
                                                               J. Touch 
                                                                USC/ISI 
                                                       November 3, 2008 
                                    
 
                                      
       IANA Procedures for the Transport Protocol Port Number Space 
                    draft-ietf-tsvwg-iana-ports-01.txt 


Status of this Memo 

   By submitting this Internet-Draft, each author represents that       
   any applicable patent or other IPR claims of which he or she is       
   aware have been or will be disclosed, and any of which he or she       
   becomes aware will be disclosed, in accordance with Section 6 of       
   BCP 79. 

   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that 
   other groups may also distribute working documents as Internet-
   Drafts. 

   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." 

   The list of current Internet-Drafts can be accessed at 
   http://www.ietf.org/ietf/1id-abstracts.txt 

   The list of Internet-Draft Shadow Directories can be accessed at 
   http://www.ietf.org/shadow.html 

   This Internet-Draft will expire on May 3, 2009. 

Abstract 

   This document defines the IANA procedures for registering port number 
   values for use with the various IETF transport protocols, including    
 
 
 
Cotton, et al.           Expires May 3, 2009                   [Page 1] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   TCP, UDP, DCCP, and SCTP.  It provides clear procedures for the    
   management of the port number registry, which is important for its   
   long-term management.  It updates RFC2780 by obsoleting Sections 8 
   and 9.1 of that RFC, and it updates the IANA allocation procedures 
   for DCCP as defined in RFC4340. 

Table of Contents 

    
   1. Introduction...................................................2 
   2. Conventions used in this document..............................4 
   3. Port Number Types..............................................5 
      3.1. Assigned Port Numbers for Experimentation.................5 
   4. Principles for Port Number Space Management....................6 
      4.1. Basic Principles of Port Conservation.....................7 
      4.2. Principles Specific to Individual Port Number Ranges......8 
      4.3. New Principles............................................9 
   5. IANA Procedures for Managing the Port Number Space............10 
      5.1. Port Number Registration.................................10 
      5.2. Port Number De-Registration..............................12 
      5.3. Port Number Re-Use.......................................12 
      5.4. Port Number Revocation...................................12 
      5.5. Port Number Transfer.....................................13 
      5.6. Maintenance Issues.......................................13 
   6. Port Number Space Requests....................................13 
      6.1. Request Procedure........................................13 
   7. Security Considerations.......................................14 
   8. IANA Considerations...........................................14 
   9. Acknowledgments...............................................15 
   10. References...................................................16 
      10.1. Normative References....................................16 
      10.2. Informative References..................................16 
   APPENDIX A: Updates to DCCP Registries...........................19 
      A.1. DCCP Service Code Registry...............................19 
      A.1. DCCP Port Numbers Registry.....Error! Bookmark not defined. 
    
1. Introduction 

   The Transmission Control Protocol (TCP) [RFC0793] and the User 
   Datagram Protocol (UDP) [RFC0768] have enjoyed a remarkable success 
   over the decades as the two most widely used transport protocols on 
   the Internet.  They have introduced the concept of "ports" as logical 
   entities for Internet communication.  Ports serve two purposes: 
   first, they provide a demultiplexing identifier to differentiate 
   transport sessions between the same pair of endpoints, and second, 
   they also identify the application protocol and associated service to 
   which processes bind [I-D.touch-tsvwg-port-guidelines].  Newer 
 
 
Cotton, et al.           Expires May 3, 2009                   [Page 2] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   transport protocols, such as the Stream Control Transmission Protocol 
   (SCTP) [RFC4960] and the Datagram Congestion Control Protocol (DCCP) 
   [RFC4342] have adopted the concept of ports for their communication 
   sessions and use port numbers in the same way as TCP and UDP. 

   Port numbers are the original and most widely used means for 
   application and service identification on the Internet.  Ports are 
   16-bit numbers, and the combination of source and destination port 
   numbers together with the IP addresses of the communicating end 
   systems uniquely identifies a session of a given transport protocol.  
   Port numbers are also known by their corresponding service names such 
   as "telnet" for port number 23 and "http" for port number 80. 

   Hosts running services, hosts accessing services on other hosts, and 
   intermediate devices (such as firewalls and NATs) that restrict 
   services need to agree on which service corresponds to a particular 
   destination port.  Although this can be a local decision between the 
   endpoints of a connection, most Internet components use a single, 
   shared view of this association, provided by the Internet Assigned 
   Numbers Authority (IANA) through the port number registry [REGISTRY]. 

   Designers of applications and application-level protocols may apply 
   to IANA for a registered port number for a specific application, and 
   may - after successful registration - assume that no other 
   application will use that service port number for its communication 
   sessions. It is important to note that ownership of registered port 
   numbers remains with IANA.  For many years, the allocation and 
   registration of new port number values for use with TCP and UDP have 
   had less than clear guidelines.  Information about the registration 
   procedures for the port namespace existed in three locations: the 
   forms for requesting port number registrations on the IANA web site  
   [SYSFORM][USRFORM], an introductory text section in the file listing 
   the port number registrations themselves [REGISTRY], and two brief 
   sections of [RFC2780]. 

   This document aggregates this scattered information into a single 
   reference and at the same time clarifies the guidelines for the 
   management of the port number space.  It gives more detailed guidance 
   to prospective requesters of ports than the existing documentation, 
   and it streamlines the IANA procedures for the management of the port 
   number space, so that management requests can complete in a timely 
   manner.  A key factor of this streamlining is to establish identical 
   registration procedures for transport protocol ports, independent of 
   a specific transport protocol.  This document brings the IANA 
   procedures for TCP and UDP in line with those already in effect for 
   SCTP and DCCP, resulting in a single process that requesters and IANA 

 
 
Cotton, et al.           Expires May 3, 2009                   [Page 3] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   follow for all port number requests for all transport protocols, 
   including those not yet defined. 

   A second purpose of this document is to describe the principles that    
   guide the IETF and IANA in their role as the long-term joint stewards 
   of the port number space.  TCP and UDP have been a remarkable success 
   over the last decades.  Thousands of applications and application- 
   level protocols have registered ports for their use, and there is 
   every reason to believe that this trend will continue into the 
   future.  It is hence extremely important that management of the port 
   number space follow principles that ensure its long-term usefulness    
   as a shared resource.  Section 4 discusses these principles in 
   detail.  Guidelines for users seeking port numbers, as well as a    
   detailed history of the port number registry and alternate means for 
   coordinating host agreement on service-to-port-number mappings, is 
   provided in a companion document [I-D.touch-tsvwg-port-guidelines]. 

   In addition to detailing the IANA procedures for the initial    
   assignment of port numbers, this document also specifies post- 
   assignment procedures that until now have been handled in an ad hoc 
   manner.  These include procedures to de-register a port number that 
   is no longer in use, to re-use a port number allocated for one 
   application that is no longer in use for another application, and 
   procedure by which IANA can unilaterally revoke a prior port number    
   registration.  Section 5 discusses the specifics of these procedures. 

   This document also addresses two technical issues related to the    
   ports registry that are tangential to long-term stewardship.  First, 
   it clarifies that a method for the early allocation of port numbers 
   is available for IETF working groups, in line with [RFC4020].  
   Second, it discusses how the use of symbolic names for assigned ports 
   (the "keyword" field in [REGISTRY]) for Service Resource Records (SRV 
   RRs) in the Domain Name System (DNS) [RFC2782] relates to the use of 
   SRV RRs for applications without an assigned port. 

   This document updates [RFC2780] by obsoleting Sections 8 and 9.1 of 
   RFC.  Note that [RFC5237] updates a different subset of the IANA 
   allocation guidelines originally given in [RFC2780] (specifically, 
   the policies on the namespace of the IP protocol number and IPv6 next 
   header). 

2. Conventions used in this document 

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in RFC-2119 [RFC2119]. 

 
 
Cotton, et al.           Expires May 3, 2009                   [Page 4] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

3. Port Number Types 

   TCP, UDP (and UDP-Lite), SCTP and DCCP use 16-bit namespaces for 
   their port number registries.  The port registries for all these 
   transport protocols are subdivided into three ranges of numbers, and 
   Section 6 describes the IANA procedures for each range in detail: 

   o  the Well Known Ports, i.e., the System Ports, from 0-1023 
      (assigned by IANA) 

   o  the Registered Ports, i.e., the User Ports, from 1024-49151 
      (assigned by IANA) 

   o  the Dynamic Ports, i.e., the Private Ports, from 49152-65535 
      (never assigned) 

   Of the assignable port ranges (Well Known and Registered, i.e., port 
   numbers 0-49151), individual port numbers are in one of three states 
   at any given time: 

   1. Assigned: Assigned port numbers are currently allocated to the 
      service indicated in the registry. 

   2. Unassigned: Unassigned port numbers are currently available for 
      assignment upon request, as per the procedures outlined in this 
      document. 

   3. Reserved: Reserved port numbers are not available for regular 
      assignment; they are "assigned to IANA" for special purposes. 
      Reserved port numbers include values at the edges of each range, 
      e.g., 0, 1023, 1024, etc., which may be used to extend these 
      ranges or the overall port number space in the future. 

   When this document was written, approximately 76% of the TCP and UDP 
   Well Known Ports were assigned, as were a significant fraction of the 
   Registered Ports.  (As noted, Dynamic Ports are never assigned.) 

3.1. Assigned Port Numbers for Experimentation 

   Of the Well-Known Ports, two TCP and UDP port numbers (1021 and 1022) 
   have been assigned for experimentation with new applications and 
   application-layer protocols that require a port number in the 
   assigned ports ranges [RFC4727]. [sctp-dccp-exp] 

   The experimental ports 1021 and 1022 SHOULD be used for local 
   experiments only in controlled environments, and they SHOULD NOT be 
   used on the global Internet.  Many new applications and application-
 
 
Cotton, et al.           Expires May 3, 2009                   [Page 5] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   layer protocols can be experimented with without requiring a port in 
   the Well-Known or Registered Ports range, and port numbers in the 
   Dynamic Ports range can be also used. 

   Unfortunately, it can be difficult to limit access to these ports. 
   Users SHOULD take measures to ensure that experimental ports are 
   connecting to the intended process.  For example, users of these 
   experimental ports might include a 64-bit nonce, once on each segment 
   of a message-oriented channel (e.g., UDP), or once at the beginning 
   of a byte-stream (e.g., TCP), which is used to confirm that the port 
   is being used as intended.  Such confirmation of intended use is 
   especially important when these ports are associated with privileged 
   (e.g., system or administrator) processes. 

4. Principles for Port Number Space Management 

   Management procedures for the port number space include allocation of 
   port numbers upon request, as well as coordination of information 
   about existing allocations.  The latter includes maintaining contact 
   and description information about assigned ports, revoking abandoned 
   ports, and redefining port allocations when needed.  Of these 
   procedures, port number allocation is most critical, because of the 
   limited number of remaining port numbers. 

   Before the publication of this document, the principles of port 
   number space allocation followed some simple, undocumented 
   guidelines: 

   o  TCP and UDP ports were simultaneously allocated when either was 
      requested 

   o  Port numbers were the primary allocation; service names were 
      informative only, and did not need to be unique 

   o  Port numbers were conserved informally, and sometimes 
      inconsistently (e.g., some services were allocated ranges of many 
      port numbers even where not strictly necessary) 

   o  SCTP and DCCP port number and service name spaces were managed 
      separately from the TCP/UDP spaces 

   This document attempts to update these guidelines to more 
   conservatively manage the limited remaining TCP and UDP port number 
   spaces, recognizes the potential use of service names in the absence 
   of corresponding port number allocations, such as in SCTP and DCCP. 


 
 
Cotton, et al.           Expires May 3, 2009                   [Page 6] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   The basic principle of port number registry management is to conserve 
   the space where possible.  Extensions to support larger port number 
   spaces would require changing many core protocols of the current 
   Internet in a way that would not be backward compatible and interfere 
   with both current and legacy applications. 

   Port numbers are intended to indicate a service and enable process 
   demultiplexing at an endpoint; uses beyond those basic requirements 
   should be avoided [I-D.touch-tsvwg-port-guidelines].  This document 
   also focuses on service names as a unique identifier, to increase the 
   space available (from 4 bytes to 14), and to enable their use in the 
   absence of corresponding port number assignments. 

4.1. Basic Principles of Port Conservation 

   This section summarizes the basic principles by which IANA attempts 
   to conserve the port number space.  This description is intended to 
   inform applicants requesting port numbers.  IANA decisions are not 
   required to be bound to these principles, however; other factors may 
   come into play, and exceptions may occur where deemed in the best 
   interest of the Internet. 

   Conservation of the port number space recognizes that because this 
   space is a limited resource, applications are expected to participate 
   in the demultiplexing process where feasible.  The port numbers are 
   expected to encode as little information as possible that will enable 
   an application to perform further multiplexing by itself.  In 
   particular, there should be: 

   o  only one port per service 

   o  one port for all versions of a service 

   o  the same port for different types of devices using the same 

         service 

   A given service is expected to further demultiplex messages where 
   possible.  For example, applications and protocols are expected to 
   include in-band version information, so that future versions of the 
   application or protocol can share the same allocated port. 

   Applications and protocols are also expected to be able to 
   efficiently use a single allocated port, either by demultiplexing 
   multiple streams within one port, or using the allocated port to 
   coordinate using dynamic ports for subsequent exchanges (e.g., in the 
   spirit of FTP [RFC0959]). 
 
 
Cotton, et al.           Expires May 3, 2009                   [Page 7] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   These principles of port conservation are explained in [I-D.touch-
   tsvwg-port-guidelines].  That document explains in further detail how 
   ports are used in various ways, notably: 

   o  Endpoint process identifier 

   o  Application protocol identifier 

   o  Firewall filtering 

   The process and protocol identifier use suggests that anything a 
   single process can demultiplex, or that can be encoded into a single 
   protocol, should be.  The firewall filtering use suggests that some 
   uses that could be de-multiplexed or encoded must be separated to 
   allow for firewall management.  Note that this latter use is much 
   less sound, because port numbers have meaning only for the two 
   endpoints of a connection (again, as discussed in detail in [I-
   D.touch-tsvwg-port-guidelines]). 

4.2. Principles Specific to Individual Port Number Ranges 

   It is important to note that different IANA procedures apply to 
   different ranges of the port number registry.  Section 6 discusses 
   the details of these procedures; this section outlines the rationale 
   for these differences: 

   o  Ports in the Dynamic Ports range (49152-65535) have been 
      specifically set aside for local and dynamic use and cannot be 
      registered through IANA.  Applications may simply use them for 
      communication without any sort of registration.  On the other 
      hand, applications MUST NOT assume that a specific port number in  
      the Dynamic Ports range will always be available for communication 
      at all times, and a port number in that range hence MUST NOT be 
      used as a service identifier. 

   o  Ports in the Registered Ports range (1024-49151) are available for 
      registration through IANA, and MAY be used as service identifiers 
      upon successful registration.  Because registering a port number 
      for a specific application consumes a fraction of the shared 
      resource that is the port number registry, IANA will require the 
      requester to document the intended use of the port number, and 
      have a technical expert review this documentation to determine 
      whether to grant the registration request.  This documentation 
      MUST explain why a port number in the Dynamic Ports range is 
      unsuitable for the given application. 


 
 
Cotton, et al.           Expires May 3, 2009                   [Page 8] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   o  Ports in the Well Known Ports range (0-1023) are also available 
      for registration through IANA.  Because the Well Known Ports range 
      is both the smallest and the most densely allocated one, the bar 
      for new allocations is higher than that for the Registered Ports 
      range (1024-49551).  A request for a Well Known port number MUST 
      document why a port number in the Registered Ports or Dynamic 
      Ports ranges is unsuitable. 

4.3. New Principles 

   Several new practices stem from the conservation principle that 
   guides management of the port numbers registry, and will take effect 
   with the approval of this document: 

   o  IANA will allocate port numbers only to the transport protocols 
      requested 

   o  IANA will recover unused port numbers, via the new procedures of 
      de-registration, revocation, and transfer 

   IANA will begin assigning protocol numbers only for those transport 
   protocols explicitly included in a registration request.  This ends 
   the long-standing practice of automatically assigning a port number 
   to an application for both TCP and a UDP, even if the request is only   
   for one of these transport protocols.  The new allocation procedure 
   conserves resources by only allocating a port number to an 
   application for those transport protocols (TCP, UDP, SCTP and/or 
   DCCP) it actually uses.  The port number will be marked as reserved - 
   instead of assigned - in the port number registries of the other 
   transport protocols.  When applications start supporting the use of 
   some of those additional transport protocols, they must request IANA 
   to convert the reservation into an assignment.  An application MUST 
   NOT assume that it can use a port number assigned to it for use with 
   one transport protocol with another transport protocol without 
   another registration with IANA.  The reason for this procedure is to 
   allow allocation of reserved port numbers on the day the range has no 
   more unassigend values. [port-reserv] 

   Conservation for the port numbers registry is improved by procedures 
   that allow previously allocated port numbers to become unassigned, 
   either through de-registration or through revocation, and by a 
   procedure that lets application designers transfer an allocated but 
   unused port number to a new application.  Section 5 describes these 
   procedures, which so far were undocumented. 



 
 
Cotton, et al.           Expires May 3, 2009                   [Page 9] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

5. IANA Procedures for Managing the Port Number Space 

   IANA supports various procedures to manage the port number space that 
   enable ports to be registered, de-registered, reused, and revoked. 
   This section explains these procedures, as well as other related 
   issues. 

5.1. Port Number Registration 

   Registration refers to the allocation of port numbers to applicants. 
   All such registrations are made from port numbers that are Unassigned 
   or Reserved at the time of the allocation.  Unassigned numbers are 
   allocated as needed, and without further explanation.  Reserved 
   numbers are assigned only after review by IANA and the IETF, and are 
   accompanied by a statement explaining the reason a reserved number is 
   appropriate for this action. 

   When a registration for one or more (but not all) transport protocols 
   is approved, the port number for the non-requested transport 
   protocol(s) will remain unassigned but is marked as reserved. 
   However, IANA SHOULD NOT assign that port number to any other 
   application or service until no port numbers remain unassigned in the 
   request range.  The current registration owner of a port number MAY 
   register the same port number for other transport protocols when  
   needed. 

   A port number registration consists of the following tuple: 

   o  Registration Technical Contact:  Name and email address of the 
      technical contact person for the registration.  This is REQUIRED.  
      Additional address information MAY be provided.  For registrations 
      done through IETF-published RFCs, one or more technical contact 
      persons SHALL be provided.   

   o  Registration Owner: Name and email address of the owner of the 
      registration. This is REQUIRED. For individuals, this is the same 
      as the registration technical contact; for organizations, this is 
      a point of contact at that organization. For registrations done 
      through IETF-published RFCs, the registration ownership will 
      belong to the IETF and not the technical contact persons. 

   o  Transport Protocol:  The transport protocol(s) for which the port 
      allocation is requested, currently limited to one or more of TCP, 
      UDP, SCTP, and DCCP. 



 
 
Cotton, et al.           Expires May 3, 2009                  [Page 10] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   o  Port Number:  The currently unassigned port number(s) the 
      requester suggests for allocation.  If specified and when 
      possible, IANA is encouraged to allocate the suggested number.  If 
      not specified, IANA will choose a suitable number from the 
      Registered Ports range. Note that the applicant MUST NOT use the 
      suggested ports prior to the completion of registration. 

   o  Broadcast, Multicast or Anycast:  Indicates whether the protocol 
      supports either broadcast, multicast, or anycast network layer 
      addresses. 

   o  Port Name:  The long name (description) of the port.  It should 
      avoid all but the most well known acronyms. 

   o  Service Name:  This short name for the port number, used in 
      various service selection and discovery mechanisms, currently 
      including TCPMUX [RFC1078] and DNS SRV resource records [RFC2782].  
      This name is limited to 14 bytes, case-insensitive US-ASCII 
      letters, digits, and dashes.  It MUST NOT conflict with already 
      allocated names in the service name registry [serv-nam-reg]. 

   o  Reference:  A reference document describing the protocol or 
      application using this port.  For registration requests for 
      Registered Ports, this documentation MUST explain why a port 
      number in the Dynamic Ports range is unsuitable for the given 
      application.  For registration requests for Well Known Ports, this 
      documentation MUST explain why a port number in the Registered 
      Ports or Dynamic Ports ranges is unsuitable. 

   The following rules apply to the port number registry database 
   maintained by IANA: [database-rules] 

   o  Service Names MUST be unique. 

   o  Service Name MUST exist for all transport protocols. 

   o  Port Number MUST exist for TCP and UDP; it MAY exist for SCTP and 
      DCCP. 

   o  Transport Protocol MUST exist for all entries. 

   o  Service Code MUST NOT occur for TCP, UDP or SCTP, and MUST occur 
      for DCCP. 

   o  Port Name MUST exist for all entries. 


 
 
Cotton, et al.           Expires May 3, 2009                  [Page 11] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   o  Currently valid Registration Contact SHOULD exist for all entries; 
      it MUST exist for all new entries. 

   o  Reference SHOULD exist for all entries. 

5.2. Port Number De-Registration 

   The original requesters of a granted port number assignment can 
   return the port number to IANA at any time if they no longer have a 
   need for it.  The port number will be de-registered and will be 
   marked as reserved [res-vs-unass]. IANA should not re-assign port 
   numbers that have been de-registered until all other available port 
   numbers in the specific range have been assigned. 

   Before proceeding with a de-registration, IANA needs to reasonably 
   establish that the port number is no longer in use. 

5.3. Port Number Re-Use 

   If the original requesters of a granted port number assignment no 
   longer have a need for the registered number, but would like to re-
   use it for a different application, they can submit a request to IANA 
   to do so. 

   Logically, port number re-use is to be thought of as a de-
   registration followed by an immediate re-registration of the same 
   port number for a new application.  Consequently, the information 
   that needs to be provided about the proposed new use of the port 
   number is identical to what would need to be provided for a new port 
   number allocation for the specific ports range. 

   IANA needs to carefully review such requests before approving them. 
   In some instances, the Expert Reviewer will determine that the 
   application that the port number was assigned to has found usage 
   beyond the original requester, or that there is a concern that it may 
   have such users.  This determination MUST be made quickly.  A 
   community call concerning revocation of a port number (see below) MAY 
   be considered, if a broader use of the port number is suspected. 

5.4. Port Number Revocation 

   Sometimes, it will be clear that a specific port number is no longer 
   in use and that IANA can de-register it and mark it as reserved [res-
   vs-unass2]. At other times, it may be unclear whether a given 
   assigned port number is still in use somewhere in the Internet.  In 
   those cases, despite the requester's wish to de-register, IANA must 
   consider the consequences that de-registering the port number. 
 
 
Cotton, et al.           Expires May 3, 2009                  [Page 12] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   With the help of their IESG-appointed Expert Reviewer, IANA SHALL 
   formulate a request to the IESG to issue a four-week community call 
   concerning the pending port number revocation.  The IESG and IANA, 
   with the Expert Reviewer's support, SHALL determine promptly after 
   the end of the community call whether revocation should proceed and 
   then communicate their decision to the community.  This procedure 
   typically involves similar steps to de-registration except that it is 
   initiated by IANA. 

5.5. Port Number Transfer 

   The value of port numbers is defined by their careful management as a 
   shared Internet resource, whereas enabling transfer allows the 
   potential for associated monetary exchanges to motivate this 
   management.  As a result, current IANA procedures do not permit port 
   number assignments to be transferred between parties, even when they 
   are mutually consenting.  The appropriate alternate procedure is for 
   the new party to request its own port number registration and for the 
   previous party to release its registration via the de-registration 
   procedure outlined above. 

5.6. Maintenance Issues 

   The previous procedures help IANA manage defining properties of the 
   port name space.  There are additional procedures which are 
   administrative, and help IANA maintain non-defining information in a 
   registration.  This includes changes to the Port Name (i.e., 
   description), and changes to contact information.  These changes are 
   coordinated by IANA in an informal manner, and may be initiated by 
   either the registrant or by IANA, e.g., the latter when requesting an 
   update to current contact information. 

6. Port Number Space Requests 

   This section describes the process for requests associated with 
   IANA's management of the the port number space.  Such requests 
   include initial registration, de-registration, re-use, changes to the 
   service name, as well as updates to the contact information or port 
   name (description).  Revocation is initiated by IANA. 

6.1. Request Procedure 

All registration requests for a TCP, SCTP, DCCP and/or UDP ports must 
contain the following pieces of information: 



 
 
Cotton, et al.           Expires May 3, 2009                  [Page 13] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   o  Port number tuple:  A port number tuple, as described in Section 
      5.1. The port number would typically be omitted; when provided, it 
      indicates a preference for requesting a currently unassigned 
      value. 

   o  Port Range:  Indicates the port range desired (i.e., Well Known 
      Ports or Registered Ports). 

   o  Requested Action:  One of REGISTER, DEREGISTER, REUSE, 
      SVC_NAME_CHANGE, or UPDATE_INFO (port name, registration contact). 

   The Well Known Ports are assigned by IANA and cover the range 0-1023. 
   On many systems, they can only be used by system (or root) processes 
   or by programs executed by privileged users.  Registration requests 
   for a Well Known port number MUST follow the "IETF Review" policy of 
   [RFC5226].  Registrations for a port number in this range MUST 
   document why a port number in the Registered Ports range will not 
   fulfill the application needs. 

   The Registered Ports are assigned by IANA and on most systems can be 
   used by ordinary user processes or programs executed by ordinary 
   users.  The Registered Ports are in the range 1024-49151. 
   Registration requests for a Registered Port number MUST follow the 
   "Expert Review" policy of [RFC5226]. 

7. Security Considerations 

   The IANA guidelines described in this document do not change the 
   security properties of either TCP, SCTP, DCCP or UDP. 

   Assignment of a port number does not in any way imply an endorsement 
   of an application or product, and the fact that network traffic is 
   flowing to or from a registered port number does not mean that it is 
   "good" traffic, or even that it is used by the assigned service. 
   Firewall and system administrators should choose how to configure 
   their systems based on their knowledge of the traffic in question, 
   not whether there is a port number registered or not. 

8. IANA Considerations 

   This document obsoletes Sections 8 and 9.1 of [RFC2780].  Upon 
   approval of this document, IANA is requested to adopt the procedures 
   described herein.  

   IANA should take immediate actions to resolve inconsistencies raised 
   by requirements of this document. 

 
 
Cotton, et al.           Expires May 3, 2009                  [Page 14] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

9. Acknowledgments 

   The text in Appendix A is based on a suggestion by Tom Phelan. 

   Lars Eggert is partly funded by [TRILOGY], a research project 
   supported by the European Commission under its Seventh Framework 
   Program. 

   This document was prepared using 2-Word-v2.0.template.dot. 






































 
 
Cotton, et al.           Expires May 3, 2009                  [Page 15] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

10. References 

10.1. Normative References 

   [RFC0768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, 
             August 1980. 

   [RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC 
             793, September 1981. 

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 
             Requirement Levels", BCP 14, RFC 2119, March 1997. 

   [RFC2780] Bradner, S. and V. Paxson, "IANA Allocation Guidelines For 
             Values In the Internet Protocol and Related Headers", BCP 
             37, RFC 2780, March 2000. 

   [RFC4020] Kompella, K. and A. Zinin, "Early IANA Allocation of 
             Standards Track Code Points", BCP 100, RFC 4020, February 
             2005. 

   [RFC4340] Kohler, E., Handley, M., and S. Floyd, "Datagram Congestion 
             Control Protocol (DCCP)", RFC 4340, March 2006. 

   [RFC4727] Fenner, B., "Experimental Values In IPv4, IPv6, ICMPv4, 
             ICMPv6, UDP, and TCP Headers", RFC 4727, November 2006. 

   [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 
             IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 
             2008. 

10.2. Informative References 

   [I-D.touch-tsvwg-port-guidelines] Touch, J., "Guidelines for 
             Transport Port Use", Work in Progress, Nov. 2008. 

   [REGISTRY] Internet Assigned Numbers Authority (IANA), "Port 
             Numbers", http://www.iana.org/assignments/port-numbers. 

   [RFC0959] Postel, J. and J. Reynolds, "File Transfer Protocol", STD 
             9, RFC 959, October 1985. 

   [RFC1078] Lottor, M., "TCP port service Multiplexer (TCPMUX)", RFC 
             1078, November 1988. 



 
 
Cotton, et al.           Expires May 3, 2009                  [Page 16] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   [RFC2782] Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for 
             specifying the location of services (DNS SRV)", RFC 2782, 
             February 2000. 

   [RFC4342] Floyd, S., Kohler, E., and J. Padhye, "Profile for Datagram 
             Congestion Control Protocol (DCCP) Congestion Control ID 3: 
             TCP-Friendly Rate Control (TFRC)", RFC 4342, March 2006. 

   [RFC4960] Stewart, R., "Stream Control Transmission Protocol", RFC 
             4960, September 2007. 

   [RFC5237] Arkko, J. and S. Bradner, "IANA Allocation Guidelines for 
             the Protocol Field", BCP 37, RFC 5237, February 2008. 

   [SYSFORM] Internet Assigned Numbers Authority (IANA), "Application 
             for System (Well Known) Port Number", 
             http://www.iana.org/cgi-bin/sys-port-number.pl. 

   [TRILOGY] "Trilogy Project",http://www.trilogy-project.org/. 

   [USRFORM] Internet Assigned Numbers Authority (IANA), "Application 
             for User (Registered) Port Number", 
             http://www.iana.org/cgi-bin/usr-port-number.pl. 

Editorial Comments 

   [database-rules] Lars: Some of these rules below allow entries that 
   aren't in full alignment with the procedures in this document. I 
   assume that is, because the rules attempt to describe the state of 
   the IANA database including all existing entries? If so, we should 
   make that clearer. 

   [port-reserv] Magnus: The usage of for the above reason reserved port 
   numbers should probably not have the same rules as the other reserved 
   ports. Needs discussion if we should separate this properly. I think 
   the IETF consultation part will make it difficult the day one 
   registry runs out of unassigned ones. 

   [res-vs-unass]    Lars: This used to say "unassigned" instead of 
   "reserved". I suggest "reserved", so that IANA has an indication in 
   their list that they need to be careful when re-assigning a 
   previously de-registered port. 

   [res-vs-unass2]   Lars: See [res-vs-unass]. 



 
 
Cotton, et al.           Expires May 3, 2009                  [Page 17] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   [sctp-dccp-exp]   Lars: This document should register ports 1021 and 
   1022 for DCCP and SCTP. Joe: and potentially for all new protocols, 
   as suggested by Alfred? 

   [serv-nam-reg]    Lars: Add citation to the service name registry 
   draft, when it exists 

 







































 
 
Cotton, et al.           Expires May 3, 2009                  [Page 18] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

APPENDIX A: Updates to DCCP Registries 

   This document updates the IANA allocation procedures for the DCCP 
   Port Number and DCCP Service Codes Registries as defined in 
   [RFC4340]. 

A.1. DCCP Service Code Registry 

   Service Codes are allocated first-come-first-served according to 
   Section 19.8 of [RFC4340].  This document updates Section 19.8 of 
   [RFC4340] by extending the guidelines given there in the following 
   ways: 

   o  IANA MAY assign new Service Codes without seeking Expert Review 
      using their discretion, but SHOULD seek expert review when a 
      request seeks an appreciable number of Service Codes (e.g., more 
      than five). 

   o  IANA should feel free to contact the DCCP Expert Reviewer with 
      questions on any registry, regardless of the registry policy, for 
      clarification or if there is a problem with a request [RFC4340]. 

A.2. DCCP Port Numbers Registry 

   The DCCP ports registry is defined by [RFC4340] in Section 19.9. 
   Allocations in this registry require prior allocation of a Service 
   Code.  Not all Service Codes require IANA-registered ports.  This 
   document updates Section 19.9 of [RFC4340] by extending the 
   guidelines given there in the following way: 

   o  IANA should normally assign a value in the range 1024-49151 to a 
      DCCP server port.  IANA allocation requests to allocate port 
      numbers in the Well Known Ports range (0 through 1023), require 
      IETF action prior to allocation by IANA [RFC4340]. Such action 
      typically requires confirmation that the protocol indicated is in 
      the standards track of the IETF. 

   Section 19.9 of [RFC4340] requires each DCCP server port assignment 
   to be associated with at least one Service Code value.  This document 
   updates [RFC4340] in the following way: 

   o  IANA MUST NOT allocate a single Service Code value to more than 
      one DCCP server port. 

   o  The set of Service Code values associated with a DCCP server port 
      should be recorded in the ports registry. 

 
 
Cotton, et al.           Expires May 3, 2009                  [Page 19] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   o  A request for additional Service Codes to be associated with an 
      already allocated Port Number requires Expert Review.  These 
      requests will normally be accepted when they originate from the 
      contact associated with the port registration.  In other cases, 
      these applications will be expected to use an unallocated port, 
      when this is available. 

   RFC4340] notes that a short port name MUST be associated with each 
   DCCP server port that has been registered.  This document requires 
   that this name MUST be unique. 

    



































 
 
Cotton, et al.           Expires May 3, 2009                  [Page 20] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

Authors' Addresses 

   Michelle Cotton 
   Internet Corporation for Assigned Names and Numbers 
   4676 Admiralty Way, Suite 330 
   Marina del Rey, CA  90292 
   USA 
    
   Phone: +1 310 823 9358 
   Email: michelle.cotton@icann.org 
   URI:   http://www.iana.org/ 
    
    
   Lars Eggert 
   Nokia Research Center 
   P.O. Box 407 
   Nokia Group  00045 
   Finland 
    
   Phone: +358 50 48 24461 
   Email: lars.eggert@nokia.com 
   URI:   http://research.nokia.com/people/lars_eggert/ 
    
    
   Allison Mankin 
   Johns Hopkins Univ. 
   USA 
    
   Phone: +1 301 728 7199 
   Email: mankin@psg.com 
   URI:   http://www.psg.com/~mankin/ 
    
    
   Magnus Westerlund 
   Ericsson 
   Torshamsgatan 23 
   Stockholm  164 80 
   Sweden 
    
   Phone: +46 8 719 0000 
   Email: magnus.westerlund@ericsson.com 
    
    
   Joe Touch 
   USC/ISI 
   4676 Admiralty Way 
   Marina del Rey, CA  90292 
 
 
Cotton, et al.           Expires May 3, 2009                  [Page 21] 

Internet-Draft    IANA Port Number Space Procedures                                                                       November 2008 
    

   USA 
    
   Phone: +1 310 448 9151 
   Email: touch@isi.edu 
   URI:   http://www.isi.edu/touch 
    
    

Full Copyright Statement 

   Copyright (C) The IETF Trust (2008). 

   This document is subject to the rights, licenses and restrictions 
   contained in BCP 78, and except as set forth therein, the authors 
   retain all their rights. 

   This document and the information contained herein are provided on an 
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 

Intellectual Property Statement 

   The IETF takes no position regarding the validity or scope of any 
   Intellectual Property Rights or other rights that might be claimed to 
   pertain to the implementation or use of the technology described in 
   this document or the extent to which any license under such rights 
   might or might not be available; nor does it represent that it has 
   made any independent effort to identify any such rights.  Information 
   on the procedures with respect to rights in RFC documents can be 
   found in BCP 78 and BCP 79. 

   Copies of IPR disclosures made to the IETF Secretariat and any 
   assurances of licenses to be made available, or the result of an 
   attempt made to obtain a general license or permission for the use of 
   such proprietary rights by implementers or users of this 
   specification can be obtained from the IETF on-line IPR repository at 
   http://www.ietf.org/ipr. 

   The IETF invites any interested party to bring to its attention any 
   copyrights, patents or patent applications, or other proprietary 
   rights that may cover technology that may be required to implement 
   this standard.  Please address the information to the IETF at 
   ietf-ipr@ietf.org. 
 
 
Cotton, et al.           Expires May 3, 2009                  [Page 22] 


PAFTECH AB 2003-20262026-04-23 16:14:21