NCI

Native Code Identifier

Other →
Introduced in Rel-8

NCI is a unique identifier for a specific piece of native code or software component within a network node, used for software management, version control, and fault reporting in 3GPP systems.

Category
Other
Introduced
Rel-8
Where
Core Network › Legacy Core
Specifications
4 specs
NCI Description Purpose Related Classification Detected Changes Specifications

Description

The Native Code Identifier (NCI) is a concept defined in 3GPP specifications, primarily within the management and operation domain (e.g., TS 32.260). It serves as a unique label for a discrete module or component of native software code running within a network element. Unlike identifiers for physical resources like cells or subscribers, the NCI pertains to the software architecture of network nodes, such as base stations (gNB, eNB), core network functions (AMF, SMF), or management systems.

In terms of how it works, the NCI is typically assigned by the equipment vendor or software developer during the build and integration process. It is embedded within the software component itself and can be exposed to the network's Operation, Administration, and Maintenance (OAM) systems through management interfaces. When a network element reports its status, performance metrics, or fault alarms, it can include the NCI of the relevant software module involved. This allows network operators to pinpoint not just that a fault occurred, but which specific software component generated the fault or is experiencing issues.

The architecture involves the managed network element (the NE) and the managing system (the OAM system). The NE contains various software processes, libraries, or firmware modules, each potentially associated with an NCI. These identifiers are structured to be unique within the scope of that NE or possibly within a vendor's software suite. They are communicated via standardized management protocols like SNMP or based on 3GPP-defined information models in interfaces such as the Itf-N. The OAM system uses these NCIs to correlate events, track software versions across deployments, and manage software updates or patches targeted at specific components.

Its role in the network is supportive of robust software lifecycle management. In large, distributed telecom networks running complex software from multiple vendors, identifying which exact code module is responsible for a behavior is crucial for troubleshooting and maintenance. The NCI provides this granularity. It also facilitates software version control and compatibility checks. When a network element is upgraded, the OAM system can verify the NCIs and associated versions of all components to ensure consistency and avoid conflicts. Furthermore, in scenarios of virtualized network functions (VNFs), where software is decoupled from hardware, identifiers like the NCI become even more important for tracking component instances across cloud infrastructures.

Purpose & Motivation

The NCI was created to address the growing complexity of software within telecom network equipment. As networks evolved from relatively monolithic hardware-centric systems in 2G/3G to software-defined and virtualized systems in 4G and 5G, the need for fine-grained software management increased. Operators required tools to identify, version, and manage individual software components inside a node for efficient operation, maintenance, and troubleshooting.

The problem it solves is the ambiguity in fault reporting and software updates. Without a unique identifier for code modules, a fault alarm might only indicate a high-level failure in a network element, leaving engineers to manually diagnose which software process crashed or misbehaved. This slows down resolution. Similarly, when applying a software patch, without component-level identifiers, an update might be applied to an entire node image, potentially affecting unrelated stable components. The NCI allows for targeted management.

Its motivation stems from the industry's shift towards more software-driven networks and the associated requirements for automation in OAM. Standards like 3GPP TS 32.260 (Fault Management) and TS 32.274 (Performance Management) detail the information models needed for management interfaces. The inclusion of NCI provides a standardized field for vendors to report software-specific information, enabling multi-vendor interoperability in management systems. It helps operators manage hybrid networks containing equipment from different suppliers, each with its own internal software architecture, by providing a common reference point for software components.

Classification

Specific typesNCGI
Related approachesVNF

Detected Changes Across Releases

from 3GPP Change Requests

Specific changes extracted from the „Change history“ tables of 3GPP specifications (26 CRs across 5 releases). Complements the general historical overview above with the evidence-based evolution of this function.

Studied in Rel-8, normative work from Rel-15.

Rel-15 7 changes

In Release 15, the Native Code Identifier (NCI) function was newly defined alongside the NCGI (NR Cell Global Identifier) to provide specific identifiers for 5G radio access network elements. This introduction was part of a broader set of changes to identifiers in the 5G System, which also included modifications to the length and mapping of 5GS Temporary Identifiers like the 5G-TMSI and 5G-S-TMSI. These updates established a foundational identification framework for the new 5G radio network architecture.

  • Solve Editor's Note on Access Network charging Identifier TS 32.260CR0394
  • External Identifier on Sh TS 23.003CR0468
  • Definition of NCI and NCGI TS 23.003CR0494
  • External identifier in 5G TS 23.003CR0498
  • Changed length and mapping of 5GS Temporary Identifiers TS 23.003CR0503
  • Internal-Group Identifier TS 23.003CR0520

+ 1 more changes

Rel-16 5 changes

In Release 16, the NCI function was expanded to support new identifier types and use cases, including the introduction of the Global Line Identifier (GLI) as a new SUPI type for fixed-network integration. Furthermore, enhancements were made for Standalone Non-Public Network (SNPN) operation by defining specific UE and network identifiers. The release also provided clarifications on SUCI construction, specifically regarding the possible values for the Home Network Public Key Identifier.

  • Network Identifier for SNPN TS 23.003CR0539
  • Clarification of possible values for Home Network Public Key Identifier of SUCI TS 23.003CR0549
  • Definition of Global Line Identifier TS 23.003CR0550
  • UE identifier for SNPN TS 23.003CR0572
  • DNS identifiers for UCMF TS 23.003CR0574
Rel-17 2 changes

In Release 17, the NCI (Native Code Identifier) function was enhanced to support a **Group Identifier for Network Selection**, providing a new mechanism for network identification and access prioritization. Furthermore, the capability was extended to include a **DNN Operator Identifier in SNPN** contexts, allowing for more granular network and data service identification within standalone non-public networks. These additions introduced new structured identifier types to the system's framework for routing and service selection.

  • Group Identifier for Network Selection TS 23.003CR0636
  • DNN Operator Identifier in SNPN TS 23.003CR0639
Rel-18 6 changes

In Release 18, the NCI function was expanded to include new specific identifier types, such as an MPQUIC-specific identifier and LCS-specific identifiers. It also introduced the definition for an NSI (Network Specific Identifier) type within the SUPI framework. Furthermore, the release removed Network Identifiers (NID) from the realm portion for IMSI-based SUCI construction.

  • SNPN Identifier based N3IWF FQDN TS 23.003CR0687
  • NSI Identifier definition TS 23.003CR0678
  • NSAC Service Area Identifier TS 23.003CR0677
  • Adding LCS specific identifiers TS 23.003CR0701
  • Adding MPQUIC specific identifier TS 23.003CR0702
  • Removal of Network Identifiers (NID) from the realm for IMSI based SUCI. TS 23.003CR0669
Rel-19 6 changes

In Release 19, the NCI function was enhanced with new identifiers for specific service domains, including a defined LCS-UP Connection Identifier for secured user-plane connections in Location Services and corrections to the definitions for Ambient IoT identifiers. The release also introduced definitions for new permanent identifiers like the AIoT Device Permanent Identifier. Furthermore, it included cleanup and correction activities for existing identifiers such as the LCS User Plane Binding Identifier to ensure clarity and consistency.

  • Non-3GPP Device Identifier TS 23.003CR0708
  • Definition of AIoT Device Permanent Identifier TS 23.003CR0713
  • LCS identifiers TS 23.003CR0715
  • Correction of LCS User Plane Binding Identifier Definition and Reference TS 23.003CR0728
  • Define LCS-UP Connection Identifier for identifying secured user-plane connections between UE and LMF TS 23.003CR0729
  • Correction and Cleanup on Ambient IoT Identifiers TS 23.003CR0738

Explore further

Broader topics and technologies where NCI plays a role.

Defining Specifications

3GPP specifications that define or reference NCI, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TS 23.003 vj50 Numbering, addressing and identification in 3GPP Rel-19
TS 31.113 v1800 USAT Interpreter Byte Code Specification Rel-8
TS 32.260 vj10 IMS Charging Management Rel-19
TS 38.401 vj10 NG-RAN Architecture Specification Rel-19