In LTE, UEs get connected to one or more Packet Data Network (PDN), such as the Internet. The PDN Gateway (P-GW) interconnects LTE to the external PDN. Therefore, as part of the PDN Connectivity process, the UE may request an Access Point Name (APN), or the MME might select a default APN. The MME uses the APN to identify the P-GW that will be selected for connectivity to the PDN of interest.
How is the APN Name structured?
Section 9 of TS 29.303 defines the APN structure. An APN may be presented in the form APN-FQDN (Fully Qualified Domain Name) and is case insensitive. APNs have two main components. APN Network Identifier (APN-NI) which is a mandatory field; while the other component is optional and is called the APN Operator Identifier (APN-OI).
Later, a discussion is provided to show how an APN-FQDN can be formed from an APN. An APN-FQDN consists of one or more labels per IETF requirements, according RFC 1123 as stated in clause 220.127.116.11 of TS 23003. Labels are separated by a ‘.’ Dot. A label can start and end with an alphanumeric case insensitive letters limited to ‘A-Z’, ‘a-z’, ’0-9’, and ‘-‘.
Clause 9.1.1 TS 23.003 states that, an APN-NI may have one or more label. The maximum length of the APN-NI is 63 octets. The APN-NI at minimum defines the external network. Additionally, the second part (to the right) if present, indicates the service that is being requested by the UE.
The APN-NI with more than 3 labels is treated as an Internet Domain Name which might be a registered one. For example, awardsolutions.com is a registered Internet domain name. Therefore, by having a registered Internet domain name as part of the APN-NI, uniqueness can be ensured when exchanging APNs between networks or within a network.
There are several APN-NI restrictions:
- Must have a minimum of one label
- Cannot start with some specific strings:
Some examples of an APN-NI are:
- Internet-v4.corpx.com (this would be unique if the corpx.com is a registered Internet domain name)
Despite it being an optional field, when present it normally consists of three labels. TS 23.003 states that:”the APN-OI will contain three labels when being sent to other network entities as part of a full APN”. Labels are separated by a ‘.’ (Dot).
An APN-OI can be written as:
- MNC = Mobile Network Code, which identifies the specific operator
- MCC = Mobile Country Code, which identifies the country
- The most right label is the string “gprs”
MNC and MCC must have a length of 3 digits, and will be prefixed with a leading zero (to the left side) if their length is 2 digits.
Given an APN name:
APN-NI = Internet-v4
APN-OI = “mnc111.mcc222.gprs”
APN = Internet-v4.mnc111.mcc222.gprs
An APN-FQDN can be derived from the above APN as follows:
APN FQDN = Internet-v4.apn.epc.mnc111.mcc222.3gppnetwork.org
Note that “apn.epc” is inserted after the APN-NI and before the APN-OI. The string “gprs” in the APN-OI was replaced with “3gppnetwork.org”.
If the MME uses an APN-FQDN for DNS queries, a terminating zero length label is added to the end of the APN-FQDN. RFC 4702 states that when performing a DNS query with a FQDN, “the domain name field is set to the DNS-encoded domain name including a terminating zero-length label”.
For example, given :
It will be converted to “friends.awarsolutions.com.”
Using the APN-FQDN above:
What would be sent within a DNS after adding the terminating zero-length label is:
If the APN-OI-Replacement field Attribute Value Pair (AVP) is present in the subscriber profile that is returned by the HSS to the MME in the Update Location Answer (ULA), then the APN-OI field will be replaced by the one provided in the subscriber profile, as indicated in TS 23.401, TS 23.060, and TS 29.272. This is referred to as the UE level APN-OI.
This replacement would only be done in the case “of non-roaming case and the home routed roaming case” as stated in clause 7.3.32 of TS 29.272. An example of the APN-OI replacement:
APN-OI replacement field: north.mnc111.mcc222.grps
The following will be performed while deriving the APN-FQDN:
The resulting APN-FQDN:
The APN field may contain a wild card APN. The MME may get a wild card APN. Clause 9.2.1 of TS 23.003 states that “The wild card APN is coded as an APN with "*" as its single label, (i.e. a length octet with value one, followed by the ASCII code for the asterisk)”.