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 | ec9bb9d | 2021-12-08 00:03:36 -0800 | [diff] [blame] | 61 | - This step is used to configure IMSI in the SD-Core |
| 62 | - This procedure is used to configure security keys for a subscriber |
| 63 | - Subscribers can be created during system startup or later |
| 64 | |
| 65 | - Step2 : Device Group Configuration |
| 66 | |
| 67 | - Group multiple devices under device group |
| 68 | - Configure QoS for the device group |
| 69 | - Configure IP domain configuration for the device group e.g. MTU, IP Pool, DNS server |
| 70 | |
| 71 | |
| 72 | - Step3: Network Slice Configuration |
| 73 | |
| 74 | - Configuration to create a Network Slice |
| 75 | - Add device Group into Network Slice |
| 76 | - Slice contains the Slice level QoS configuration |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 77 | - Site configuration including UPF, eNBs/gNBs assigned to the slice |
ajay | 8794529 | 2021-12-08 00:52:00 -0800 | [diff] [blame] | 78 | - Applications allowed to be accessed by this slice (see :ref:`application-filtering`) |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 79 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 80 | 4G, 5G Configuration Differences |
| 81 | -------------------------------- |
| 82 | One of the most important difference in 4G & 5G configuration is around network slice. 5G has |
| 83 | network slice Ids sent in protocol messages whereas 4G does not have any slice Id in messages. |
| 84 | We implement slicing in 4G using APNs. Let's go over these difference in detail below, |
Vijaya Rani | 59a1783 | 2021-12-03 19:27:41 +0530 | [diff] [blame] | 85 | |
ajay | 154b1a0 | 2022-03-07 14:54:22 -0800 | [diff] [blame] | 86 | - **Slice Id** : Since 4G does not have slice Id in any protocol messages, configured slice Ids |
| 87 | are ignored in 4G components. So it also means that even if configured slice Ids are |
| 88 | duplicate it will not have any impact. But its still a good practice to have unique Slice |
| 89 | Id per slice. |
| 90 | |
| 91 | - **APN/DNN configuration**: In case of 4G each slice should have separate APN. This is required |
| 92 | because APN is used as slice identifier internally in the 4G modules. This is not true in |
| 93 | case of 5G because 5G has slice Id along with APN/DNN. So in general its good practice to |
| 94 | keep APN/DNN in the slice unique so same slice can work for 4G & 5G configuration. |
| 95 | |
| 96 | |
| 97 | - **UE Address Allocation**: In the Slice API you will see that we provide UE IP pool configuration. |
| 98 | Its important to know how UE IP address allocation is supported in SD-Core 4G & 5G components. |
| 99 | |
| 100 | In case of 4G, Control Plane supports UE address allocation from UPF. So it also means that even |
| 101 | if you have specified UE address pool in the slice config, you still need to add the address pool |
| 102 | configuration in the UPF deployment. |
| 103 | |
| 104 | In case of 5G, control plane has the capability to manage multiple IP pools so SMF uses the UE |
| 105 | address pool configuration received in the network slice APIs |
| 106 | and use them to appropriately assign UE address. But remember SD-Core 5G does not support UE IP |
| 107 | address allocation from UPF. So in case of 5G UPF configuration, even if you don't configure address |
| 108 | pool configuration it is still fine. We plan to add support of UPF UE address allocation in next |
| 109 | release. |
| 110 | |
| 111 | - **DNN/APN in Initial Attach/Register Message** : In case of 4G, if UE has set any random APN then |
| 112 | MME overrides the APN based on the user profile in HSS. So its important to note that even if APN |
| 113 | is not matching with configured APN we are still good. In case of 5G, apn name & Slice ID coming |
| 114 | from UE is used to select SMF, so its important to have UE configured with correct APN/DNN name. |
| 115 | Core network passed allowed slice IDs to UE in the registration accept message. |