DNS

Directory Name Service

Core Network
Introduced in R99
DNS is a hierarchical, distributed naming system used within 3GPP networks to translate human-readable domain names into IP addresses and other resource records. It is fundamental for service discovery, network element location, and routing of signaling and user plane traffic across the evolved packet core and between operators.

Description

The Directory Name Service (DNS) in 3GPP is a critical infrastructure component based on the Internet Engineering Task Force (IETF) standards, specifically RFC 1034 and RFC 1035. It operates as a distributed database that resolves Fully Qualified Domain Names (FQDNs) into corresponding IP addresses and other resource records, such as NAPTR (Naming Authority Pointer) and SRV (Service) records. Within the 3GPP architecture, DNS is used extensively by core network functions for dynamic discovery and selection of peer network elements. For instance, during the establishment of a Packet Data Network (PDN) connection, the Packet Data Network Gateway (PGW) or Session Management Function (SMF) may be selected based on DNS queries that consider the Access Point Name (APN), subscriber's location, and network policies. The system employs a hierarchical structure with root servers, top-level domains, and authoritative name servers specific to the operator's network (e.g., epc.mnc<MNC>.mcc<MCC>.3gppnetwork.org). DNS queries are initiated by various network functions, including the Mobility Management Entity (MME), Serving GPRS Support Node (SGSN), Home Subscriber Server (HSS), and Policy and Charging Rules Function (PCRF), to locate services like the PGW/SMF, HSS/UDM, or application servers. The resolution process involves recursive and iterative queries, with caching mechanisms at resolvers to improve efficiency and reduce latency. DNS is also pivotal for inter-operator connectivity, enabling the resolution of FQDNs for roaming scenarios and interconnection between different Public Land Mobile Networks (PLMNs). In 5G systems, DNS remains essential for service-based architecture (SBA), where Network Function (NF) instances register their profiles and endpoints in the Network Repository Function (NRF), and consumer NFs use DNS-based service discovery to find appropriate producer NFs based on service names, NF types, and other selection criteria.

Purpose & Motivation

DNS was introduced to solve the problem of static, hard-coded network element addressing, which was inflexible and difficult to manage in large-scale, dynamic mobile networks. Prior to its adoption, network configurations required manual updates of IP addresses in network elements, leading to operational complexity, scalability issues, and increased risk of errors during network expansions or failures. The primary motivation was to enable automated, dynamic discovery and selection of network functions, which is essential for load balancing, redundancy, and efficient resource utilization. DNS provides a standardized, scalable mechanism for service and node discovery across the core network, supporting features like APN resolution, PGW/SMF selection, and inter-operator roaming. It abstracts the underlying network topology, allowing operators to deploy and relocate network functions without reconfiguring every dependent element. This flexibility is crucial for the evolution towards cloud-native, virtualized networks and 5G's service-based architecture, where network functions can be instantiated and scaled elastically. DNS also facilitates the implementation of advanced traffic steering policies, network slicing, and multi-vendor interoperability by providing a common resolution framework.

Key Features

  • Resolution of Fully Qualified Domain Names (FQDNs) to IP addresses for network elements and services
  • Support for multiple DNS record types including A, AAAA, NAPTR, and SRV for advanced service discovery
  • Dynamic selection of gateways (e.g., PGW, SMF) based on Access Point Name (APN), subscriber location, and network policies
  • Essential for inter-PLMN roaming and interconnection by resolving FQDNs across operator boundaries
  • Integration with 5G Service-Based Architecture (SBA) for Network Function (NF) discovery and selection
  • Caching mechanisms at DNS resolvers to reduce query latency and network load

Evolution Across Releases

Defining Specifications

SpecificationTitle
TS 21.905 3GPP TS 21.905
TS 22.975 3GPP TS 22.975
TS 23.060 3GPP TS 23.060
TS 23.140 3GPP TS 23.140
TS 23.228 3GPP TS 23.228
TS 23.234 3GPP TS 23.234
TS 23.236 3GPP TS 23.236
TS 23.271 3GPP TS 23.271
TS 23.327 3GPP TS 23.327
TS 23.722 3GPP TS 23.722
TS 23.758 3GPP TS 23.758
TS 23.976 3GPP TS 23.976
TS 23.981 3GPP TS 23.981
TS 24.228 3GPP TS 24.228
TS 24.229 3GPP TS 24.229
TS 24.234 3GPP TS 24.234
TS 24.302 3GPP TS 24.302
TS 24.501 3GPP TS 24.501
TS 24.502 3GPP TS 24.502
TS 24.525 3GPP TS 24.525
TS 24.543 3GPP TS 24.543
TS 24.554 3GPP TS 24.554
TS 24.802 3GPP TS 24.802
TS 26.247 3GPP TS 26.247
TS 26.512 3GPP TS 26.512
TS 26.802 3GPP TS 26.802
TS 26.803 3GPP TS 26.803
TS 26.804 3GPP TS 26.804
TS 26.805 3GPP TS 26.805
TS 26.891 3GPP TS 26.891
TS 26.928 3GPP TS 26.928
TS 26.944 3GPP TS 26.944
TS 27.060 3GPP TS 27.060
TS 28.314 3GPP TS 28.314
TS 29.061 3GPP TS 29.061
TS 29.161 3GPP TS 29.161
TS 29.201 3GPP TS 29.201
TS 29.303 3GPP TS 29.303
TS 29.333 3GPP TS 29.333
TS 29.368 3GPP TS 29.368
TS 29.819 3GPP TS 29.819
TS 32.101 3GPP TR 32.101
TS 32.158 3GPP TR 32.158
TS 32.300 3GPP TR 32.300
TS 32.501 3GPP TR 32.501
TS 32.502 3GPP TR 32.502
TS 32.583 3GPP TR 32.583
TS 32.593 3GPP TR 32.593
TS 32.833 3GPP TR 32.833
TS 33.222 3GPP TR 33.222
TS 33.320 3GPP TR 33.320
TS 33.739 3GPP TR 33.739
TS 33.823 3GPP TR 33.823
TS 43.318 3GPP TR 43.318
TS 43.902 3GPP TR 43.902
TS 44.318 3GPP TR 44.318