-
-
Notifications
You must be signed in to change notification settings - Fork 324
Development Guideline
Ali Güngör edited this page May 27, 2021
·
44 revisions
If you want to contribute to the UERANSIM. Here you can find some development guidelines.
- This UERANSIM-specific coding style guideline shall be used inside of the UERANSIM project.
- Do not use C language, and don't write C-style codes. Use modern and rich C++ features instead.
- Use Microsoft's C++ coding guidelines, with following exceptions:
- Use
AlwaysBreakTemplateDeclarations: Yes
(for clang tidy) - Use
camelCase
for instance methods,PascalCase
for static functions.
- Use
It is recommended to use Clion as an IDE.
- Start Clion C++ IDE
- Click
Open
- Select the root folder of UERANSIM and hit OK
- Clion will ask you if you want to import the project as
CMake
ormakefile
. Select CMake. - Click
Build/Build Project
from the top menu.
Build instructions written in Installation Wiki is not required for developers. You should be able to build normally inside of Clion C++ IDE. You can also build in Debug mode, and/or utilize the debugger.
If you add, remove or rename a source file, make sure that you click Reload CMake Project
from the menu, before building the project.
Here's the list of technical specifications often used by UERANSIM:
- TS 22.261 : Service requirements for next generation new services and markets
- TS 23.003 : Numbering, addressing and identification
- TS 23.122 : NAS functions related to MS in idle mode
- TS 23.501 : System architecture for the 5G System
- TS 23.502 : Procedures for the 5G System
- TS 24.007 : Mobile radio interface signalling layer 3; General Aspects
- TS 24.501 : Non-Access-Stratum (NAS) protocol for 5G System
- TS 31.101 : UICC-terminal interface; Physical and logical characteristics
- TS 31.102 : Characteristics of the USIM Application
- TS 31.111 : USIM Application Toolkit (USAT)
- TS 33.501 : Security architecture and procedures for 5G System
- TS 38.201 : NR; Physical layer; General description
- TS 38.202 : NR; Services provided by the physical layer
- TS 38.300 : NR and NG-RAN Overall description;
- TS 38.304 : NR; User Equipment (UE) procedures in idle mode and in RRC Inactive state
- TS 38.322 : NR; Radio Link Control (RLC) protocol specification
- TS 38.323 : NR; Packet Data Convergence Protocol (PDCP) specification
- TS 38.331 : NR; Radio Resource Control (RRC); Protocol specification
- TS 38.401 : NG-RAN; Architecture description
- TS 38.410 : NG-RAN; NG general aspects and principles
- TS 38.411 : NG-RAN; NG layer 1
- TS 38.412 : NG-RAN; NG signalling transport
- TS 38.413 : NG-RAN; NG Application Protocol (NGAP)
- TS 38.414 : NG-RAN; NG data transport
- TS 38.415 : NG-RAN; PDU session user plane protocol
We use release 15.6.0 for 3GPP specifications