Commit 2fb9c9fd authored by Tien-Thinh Nguyen's avatar Tien-Thinh Nguyen
Browse files


parent 866b6f9e
An implementation of the 5G Core network by the OpenAirInterface community.
OPENAIR-CN-5G is an implementation of the 3GPP specifications for the 5G Core Network.
At the moment, it contains the following network elements:
* Access and Mobility Management Function (**AMF**)
* Session Management Function (**SMF**)
* User Plane Function (**UPF**)
* Network Repository Function (**NRF**)
Each has its own repository: this repository (`oai-cn5g-nrf`) is meant for NRF.
# Licence info
It is distributed under `OAI Public License V1.1`.
See [OAI Website for more details](
The text for `OAI Public License V1.1` is also available under [LICENSE](LICENSE)
file at the root of this repository.
# Where to start
The Openair-CN-5G NRF code is written, executed, and tested on UBUNTU server bionic version.
Other Linux distributions support will be added later on.
More details on the supported feature set is available on this [page](docs/
# Collaborative work
This source code is managed through a GITLAB server, a collaborative development platform:
* URL: [](
Process is explained in [CONTRIBUTING]( file.
# Contribution requests
In a general way, anybody who is willing can contribute on any part of the
code in any network component.
Contributions can be simple bugfixes, advices and remarks on the design,
architecture, coding/implementation.
# Release Notes
They are available on the [CHANGELOG]( file.
# Repository Structure:
The OpenAirInterface CN NRF software is composed of the following parts:
├── 3gpp-specs: Directory containing 3GPP specification files (YAML) used to implement NRF network function.
├── build: Build directory, contains targets and object files generated by compilation of network functions.
├── log: Directory containing build log files.
├── scripts: Directory containing scripts for building network functions.
└── nrf: Directory containing CMakefile.txt and object files generated by compilation of NRF network function.
├── ci-scripts: Directory containing the script files for CI framework.
├── docs: Directory containing the documentation files.
├── etc: Directory containing the configuration file to be deployed for NRF.
└── src: Source files of NRF.
├── api-server: NRF services APIs.
├── common: Common header files
│   └── utils: Common utilities.
├── oai_nrf: NRF main directory, contains the "main" CMakeLists.txt file.
├── nrf_app: NRF network functions procedures and contexts.
└── test: Directory containing some example profiles for e.g., AMF, SMF.
......@@ -19,8 +19,8 @@
#ifndef FILE_3GPP_29_500_SMF_SEEN
#define FILE_3GPP_29_500_SMF_SEEN
#ifndef FILE_3GPP_29_500_SEEN
#define FILE_3GPP_29_500_SEEN
enum http_status_code_e {
......@@ -86,5 +86,5 @@ static const std::vector<std::string> protocol_application_error_e2str {
#endif //FILE_3GPP_29_500_SEEN
......@@ -462,4 +462,4 @@ class nrf_app {
} // namespace oai
#include "nrf_config.hpp"
#endif /* FILE_SMF_APP_HPP_SEEN */
#endif /* FILE_NRF_APP_HPP_SEEN */
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment