ajay | b3f4098 | 2021-12-08 14:26:11 -0800 | [diff] [blame] | 1 | .. |
| 2 | SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org> |
| 3 | SPDX-License-Identifier: Apache-2.0 |
| 4 | |
ajay | d19711c | 2021-12-07 12:07:04 -0800 | [diff] [blame] | 5 | Configuration Overview |
| 6 | ====================== |
ajay | 60fd69f | 2021-11-23 22:38:10 -0800 | [diff] [blame] | 7 | |
ajay | b5ad6db | 2021-12-09 15:23:24 -0800 | [diff] [blame] | 8 | SD-Core has been developed with a cloud-based deployment and consumption model as |
| 9 | its foundation. It has a rich and extensible set of APIs to allow for runtime configurability of |
| 10 | subscriber management, access management, session management, and network slice |
| 11 | management. This configuration may be conducted via ONF’s Runtime Operational Control |
| 12 | (ROC) platform directly for consumption as a cloud-managed service, or the APIs can be |
| 13 | used by third-party automation and management platforms. |
| 14 | |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 15 | Reference helm chart |
| 16 | -------------------- |
ajay | 60fd69f | 2021-11-23 22:38:10 -0800 | [diff] [blame] | 17 | |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 18 | - `SD-Core Helm Chart Repository <https://gerrit.opencord.org/admin/repos/sdcore-helm-charts>`_ |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 19 | - Sub components in sdcore-helm-charts |
| 20 | |
| 21 | - omec-control-plane: 4G Network functions helm charts |
| 22 | - 5g-control-plane: 5G Network functions helm charts |
| 23 | - omec-sub-provision: Simapp helm charts |
| 24 | - 5g-ran-sim : gNBSim helm charts |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 25 | |
| 26 | Configuration Methods |
| 27 | --------------------- |
| 28 | SD-Core supports 2 ways to configure network functions and micro services. |
| 29 | |
| 30 | - Helm Chart |
| 31 | |
| 32 | - Each individual network function and microservice has its own helm chart. |
| 33 | - User needs to provide override values and deploy the network functions as per their need. |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 34 | - Use above helm charts appropriately and provide override values and install 4G/5G NFs. |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 35 | |
| 36 | - REST Config Interface |
| 37 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 38 | - Basic static configuration is still passed through helm chart ( logging level, image,...) |
ajay | cbd1706 | 2022-03-06 11:12:58 -0800 | [diff] [blame] | 39 | - Dynamic *Network Slice* management APIs are provided through REST interface. |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 40 | - REST APIs are defined to create/modify/delete network slice. |
| 41 | - REST APIs are also provided to provision subscribers and grouping the subscribers under device Group. |
| 42 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 43 | .. note:: |
| 44 | - Simapp is the example of REST interface based configuration to provision subscribers in SD-Core |
| 45 | - Simapp is also used to provision Network Slices in SD-Core in the absence of Portal |
| 46 | - Aether ROC Portal used REST interface to configure Network Slices in SD-Core |
| 47 | |
ajay | cbd1706 | 2022-03-06 11:12:58 -0800 | [diff] [blame] | 48 | .. image:: ../_static/images/config_slice.png |
| 49 | :width: 500px |
| 50 | :align: center |
| 51 | |
| 52 | |
| 53 | |
ajay | ec9bb9d | 2021-12-08 00:03:36 -0800 | [diff] [blame] | 54 | Configuration Steps |
| 55 | ------------------- |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 56 | This Configuration describes what to configure at high level from RoC/SIMAPP. ConfigPod stores this configuration |
ajay | ec9bb9d | 2021-12-08 00:03:36 -0800 | [diff] [blame] | 57 | and publish to respective clients over REST/grpc. |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 58 | |
ajay | ec9bb9d | 2021-12-08 00:03:36 -0800 | [diff] [blame] | 59 | - Step1 : Provision subscriber in 4G/5G subsystem |
ajay | 2c0f6f4 | 2021-12-02 22:45:19 -0800 | [diff] [blame] | 60 | |
Ajay Lotan Thakur | 651722d | 2022-05-21 10:57:57 -0700 | [diff] [blame] | 61 | - *Can be done only thorugh SIMAPP* |
ajay | ec9bb9d | 2021-12-08 00:03:36 -0800 | [diff] [blame] | 62 | - This step is used to configure IMSI in the SD-Core |
| 63 | - This procedure is used to configure security keys for a subscriber |
| 64 | - Subscribers can be created during system startup or later |
| 65 | |
| 66 | - Step2 : Device Group Configuration |
| 67 | |
| 68 | - Group multiple devices under device group |
| 69 | - Configure QoS for the device group |
| 70 | - Configure IP domain configuration for the device group e.g. MTU, IP Pool, DNS server |
| 71 | |
| 72 | |
| 73 | - Step3: Network Slice Configuration |
| 74 | |
| 75 | - Configuration to create a Network Slice |
| 76 | - Add device Group into Network Slice |
| 77 | - Slice contains the Slice level QoS configuration |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 78 | - Site configuration including UPF, eNBs/gNBs assigned to the slice |
ajay | 8794529 | 2021-12-08 00:52:00 -0800 | [diff] [blame] | 79 | - Applications allowed to be accessed by this slice (see :ref:`application-filtering`) |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 80 | |
Ajay Lotan Thakur | 651722d | 2022-05-21 10:57:57 -0700 | [diff] [blame] | 81 | .. note:: |
| 82 | - Step1 can only be done through Simapp. Look for simapp override values. |
| 83 | - Step2 & Step3 can be done through Simapp or ROC. Simapp has option to create network slice. Look for configuration *provision-network-slice: false* in simapp configuration |
| 84 | |
Ajay Lotan Thakur | e1dfc22 | 2022-10-06 17:58:34 -0700 | [diff] [blame^] | 85 | .. note:: |
| 86 | If UPF is used to allocate UE address allocation then even if you have specified UE |
| 87 | address pool in the slice config, you still need to add the address pool |
| 88 | configuration in the UPF deployment. |
| 89 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 90 | 4G, 5G Configuration Differences |
| 91 | -------------------------------- |
| 92 | One of the most important difference in 4G & 5G configuration is around network slice. 5G has |
Ajay Lotan Thakur | e1dfc22 | 2022-10-06 17:58:34 -0700 | [diff] [blame^] | 93 | network slice Ids sent on 3gpp defined protocol messages whereas 4G does not have any slice Id in |
| 94 | 3gpp defined protocol messages. We implement slicing in 4G using APNs. Let's go over these |
| 95 | difference in detail below, |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 96 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 97 | - **Slice Id** : Since 4G does not have slice Id in any protocol messages, configured slice Ids |
| 98 | are ignored in 4G components. So it also means that even if configured slice Ids are |
| 99 | duplicate it will not have any impact. But its still a good practice to have unique Slice |
| 100 | Id per slice. |
| 101 | |
| 102 | - **APN/DNN configuration**: In case of 4G each slice should have separate APN. This is required |
| 103 | because APN is used as slice identifier internally in the 4G modules. This is not true in |
| 104 | case of 5G because 5G has slice Id along with APN/DNN. So in general its good practice to |
| 105 | keep APN/DNN in the slice unique so same slice can work for 4G & 5G configuration. |
| 106 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 107 | - **DNN/APN in Initial Attach/Register Message** : In case of 4G, if UE has set any random APN then |
| 108 | MME overrides the APN based on the user profile in HSS. So its important to note that even if APN |
| 109 | is not matching with configured APN we are still good. In case of 5G, apn name & Slice ID coming |
| 110 | from UE is used to select SMF, so its important to have UE configured with correct APN/DNN name. |
| 111 | Core network passed allowed slice IDs to UE in the registration accept message. |