IANA maintains the list of the assigned port numbers, which are allocated for specific applications, like the well-known ports from the System Port number range [0-1023], or from the User Port number range [1024-49151] for the private networks such as 3GPP. Dynamic/Private Port number range [49152 - 65535] is not restricted by IANA and may be used by applications without any restrictions. For the IANA port number range definitions see Section 6 of IETF RFC 6335
3GPP interface applications typically also utilize fixed port numbers at which they are expecting to receive (are listening to) the application specific traffic. Therefore, when necessary 3GPP requests IANA to assign a port number and allocate it to a specific interface application, e.g. GTP. 3GPP specific port numbers are assigned from the User Port number range [1024-49151]. 3GPP interface applications are required to use the allocated ports only for the given interface traffic.
Recently however IANA became reluctant to assign new port numbers for protocols only used for network internal services, i.e. when the protocol is only used in a single network with no interconnection with other networks or the public Internet, and this applies to some of the protocols newly defined by 3GPP. As a consequence, 3GPP was forced to find a temporary solution (e.g. for S17 interface) to utilize port number allocation from the Dynamic/Private Port number range [49152 - 65535], where it became operator responsibility to configure network elements and avoid port clashes. Annex A
provides more information on IANA port allocation policy.
The purpose of this study is to find a long lasting and forward compatible solution for the future protocols for 3GPP interfaces. This study will analyse alternative solutions and provide guidelines on the port numbers allocation method, which will not require IANA action every time a need arises for a new port number allocation.
The present document studies alternative proposals for the port number allocations to the new 3GPP interfaces and applications. The study will focus on, but is not limited to following three alternatives:
3GPP allocating port numbers from the Dynamic/Private Port number range [49152 - 65535]. See clause 6 in IETF RFC 6335 ;
Operators allocating port numbers from either the User Port number range [1024-49151] or the Dynamic/Private Port number range [49152 - 65535]. See clause 6 in IETF RFC 6335 ;
DNS based solution, where port numbers are allocated from the User Port number range [1024-49151] or the Dynamic/Private Port number range [49152 - 65535]. See clause 6 in IETF RFC 6335 .
The primary focus of this study is on protocols only used for network internal services, i.e. when the protocol is only used in a single network with no interconnection with other networks or the public Internet. The solutions proposed in the study however could also be used in scenarios in which the protocol is used across multiple networks, e.g. in roaming case or between the RAN and the core network supported by different operator networks.
The following documents contain provisions which, through reference in this text, constitute provisions of the present document.
References are either specific (identified by date of publication, edition number, version number, etc.) or non-specific.
For a specific reference, subsequent revisions do not apply.
For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same Release as the present document.
: "Vocabulary for 3GPP Specifications".
"Internet Assigned Numbers Authority (IANA) Procedures for the Management of the Service Name and Transport Protocol Port Number Registry".
"Recommendations on Using Assigned Transport Port Numbers".
"Stream Control Transmission Protocol".
ORAN-WG3.E2GAP, "O-RAN Working Group 3 Near-Real-time RAN Intelligent Controller Architecture & E2 General Aspects and Principles".
"A DNS RR for specifying the location of services (DNS SRV)".
"Guidelines for Writing an IANA Considerations Clause in RFCs".
"TCP Port Service Multiplexer (TCPMUX)"
: "Guidelines on Port Allocation for New 3GPP Interfaces".
"Moving Outdated TCP Extensions and TCP-Related Documents to Historic or Informational Status".
"Transmission Control Protocol".
"Guidelines for Writing an IANA Considerations clause in RFCs".
"Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension".
"The Transport Layer Security (TLS) Protocol Version 1.3".
"Datagram Transport Layer Security Version 1.2".
"Transport Layer Security (TLS) Extensions: Extension Definitions".
"Domain Names - Implementation and specification".
For the purposes of the present document, the terms given in TR 21.905
and the following apply. A term defined in the present document takes precedence over the definition of the same term, if any, in TR 21.905
Port allocation mechanisms:
There are two main port allocation mechanisms, static and dynamic. With static allocation, server port number is known to the clients and can be used during the implantation phase. With dynamic allocation, server port number is allocated runtime and therefore the clients need to discover the server port number by one of the well-defined procedures.
Server port number:
A number of a transport layer port (UDP, TCP, SCTP, DCCP), which is allocated to an application server. Server listens to certain port, which means clients can send messages to this port. Ports may be either statically or dynamically assigned to certain 3GPP interface applications.
Server port number assignment methods:
This TR refers to the following two methods.
Fixed: this port allocation method implies there is no need for a client to discover a server port number. That is, the server port number is well-known (not to be confused with IANA well-known ports from the System Port number range [0-1023]).
Unassigned: this port allocation method implies a client must discover a server port number. The server port number may be pre-configured or may be dynamically assigned at runtime.
For the purposes of the present document, the abbreviations given in TR 21.905
and the following apply. An abbreviation defined in the present document takes precedence over the definition of the same abbreviation, if any, in TR 21.905
Internet Assigned Numbers Authority
Internet Engineering Steering Group
Internet Engineering Task Force
Operation And Maintenance
Radio Access Network
Request For Comments