blob: 82edf2cff27537c2e159ee8675d46b41b22499cb [file] [log] [blame]
ajayb3f40982021-12-08 14:26:11 -08001..
2 SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
3 SPDX-License-Identifier: Apache-2.0
4
Ajay Lotan Thakurd0573072022-05-04 19:16:52 -07005SD-Core 1.0 Release
6===================
7
81.0.0 Release Details
9---------------------
Zack Williamsccaa38a2021-11-16 15:36:05 -070010
ajayce0380c2021-12-14 21:51:00 -080011SD-Core supports 4G & 5G network functions. SD-Core provides APIs for configuration, telemetry, policy
12management. Access network can connected to AMF or MME depending on type of access used. Below is the
13summary of the features delivered in SD-Core.
ajayd19711c2021-12-07 12:07:04 -080014
Zack Williamsccaa38a2021-11-16 15:36:05 -070015Highlights
16----------
17
ajayce0380c2021-12-14 21:51:00 -080018**Support of REST APIs to configure SD-Core:** Configuring multiple network functions to enable/disable a
19service in a network is complex. Single entry point for REST api based configuration is easy to use
20and less error prone. Our main motivation behind this work item was to hide the complexity of the network
21and make APIs more intuitive for the operator. These APIs work well for both 4G & 5G network functions.
ajayd19711c2021-12-07 12:07:04 -080022
ajayce0380c2021-12-14 21:51:00 -080023**Subscriber Management Interface**: 3gpp requires user security keys to be configured in the network function.
24We have provided two interfaces to configure subscribers in SD-Core. One of the way to configure subscribers
25is through REST api calls to SD-Core. The other way is to add/delete/modify subscription through helm charts.
26APIs are extensible and can be easily integrated with 3rd party sim provision solution. Also while operator
ajayf5b4f602021-12-14 22:55:47 -080027is updating the subscriptions, there is no need to restart any of the SD-Core components. This interface
ajayce0380c2021-12-14 21:51:00 -080028to SD-Core is access agnostic and same interface works for 4G as well as 5G access.
ajayd19711c2021-12-07 12:07:04 -080029
ajayce0380c2021-12-14 21:51:00 -080030**3gpp defined procedures validation and hardening for error scenarios:** SD-Core has been deployed in Aether
ajayf5b4f602021-12-14 22:55:47 -080031Network for more than 2 years now and in the year 2021 we added 5G support in the SD-Core. SD-Core is used in
32couple of operator trials. Also multiple Aether sites using different access networks to connect to
33centralized SD-Core control plane.
ajayce0380c2021-12-14 21:51:00 -080034This exercise has helped 4G/5G 3gpp procedures validations with multiple access networks, tools and user equipments.
35Some of the widely used procedures are UE Registration/De-registration, UE PDU Establishment/modification/Deletion,
36Xn handover, UE Context Release & Service request etc. This activity also includes handling of retransmission of
37messages, retrying the messages when packet loss is observed over the network, handling no response from the peer
38network functions,handling of network function failures or handling of reject responses from peer network functions.
ajayd19711c2021-12-07 12:07:04 -080039
ajayd19711c2021-12-07 12:07:04 -080040
ajayce0380c2021-12-14 21:51:00 -080041**Operations support to manage multiple PLMN within Core Network:** SD-Core supports configuration
42of multiple slices with different PLMN. This helps in sharing the same core network among multiple
43operator networks. Each SD-Core network function is capable of handling multiple PLMN in the network.
ajayd19711c2021-12-07 12:07:04 -080044
ajayce0380c2021-12-14 21:51:00 -080045**Multiple User plane support using APN (4G) and Slice Id (5G) using CUPS call flows:** SD-Core
46supports connections from multiple user planes. Even multiple user planes from the same edge can
47connect to same control plane. Control plane uses APN or Slice ID to identify user plane.
ajayd19711c2021-12-07 12:07:04 -080048
ajayce0380c2021-12-14 21:51:00 -080049**Metrics exposure to get visibility of radio network connections and UE connections:** SD-core
50uses prometheus to export metrics. These metrics are useful to get the status of various
51gNodeB/eNodeB connected to Core Network. Also SD-Core gives the metrics to share current user
52connectivity status.
ajayd19711c2021-12-07 12:07:04 -080053
ajay558fcc82021-12-15 09:18:14 -080054**SD-Core Scale support:** SD-Core 5G solution is build on top of free5gc open source code.
55Numerous enhancements done on the base code to get the production quality stability. One of
56the important goal we achieved was getting 5000 subscribers with 10 subscribers attach per
57second with single instance. We will be pushing for higher limits in upcoming changes.
58To achieve this limit, AMF & SMF has seen numerous architecture level changes. SD-Core 4G is
59built on top of OMEC project. 4G is tested for 16000 calls at the rate of 100 calls per second.
60All these results are achieved with distributed user plane. Vertical scaling can be done easily
61to achieve higher call setup rates.
ajayd19711c2021-12-07 12:07:04 -080062
ajayf5b4f602021-12-14 22:55:47 -080063**Application Filtering Support:** Network slice really becomes
ajayce0380c2021-12-14 21:51:00 -080064useful when operator has the capability to apply access control. Operator can deploy multiple
65applications at the edge or internet and can restrict the users from accessing it based on the
66slice user belongs to. This adds extra layer of security in the edge app deployment.
ajayd19711c2021-12-07 12:07:04 -080067
ajayd9952a52021-12-15 14:09:06 -080068**Policy framework to support QoS at multiple levels:** SD-Core makes use of policy network
ajayce0380c2021-12-14 21:51:00 -080069function (PCF/PCRF) to enforce qos decisions on the subscriber session. Policies are configured
ajayf5b4f602021-12-14 22:55:47 -080070per network slice using configuration interface. PCF/PCRF binds those policies to the subscribers.
ajayce0380c2021-12-14 21:51:00 -080071APIs gives the flexibility to Operator to assign UE level QoS, per application QoS and also slice level QoS.
Zack Williamsccaa38a2021-11-16 15:36:05 -070072
ajayd9952a52021-12-15 14:09:06 -080073**5G gNB simulator:** gNB simulator simulates 5G UE & 5G gNodeB. gNBSim is capable of supporting
Vini Gajjare43a47f2021-12-16 13:47:04 +053074multiple UEs and multiple gNodeBs. The tool is also capable of doing data tests. This assists quick
ajayd9952a52021-12-15 14:09:06 -080075development of the features. This tool can be used to run automated tests for the 5G core network.
Vini Gajjare43a47f2021-12-16 13:47:04 +053076Please refer :ref:`gNB-Simulator` documentation for more details.
ajayd9952a52021-12-15 14:09:06 -080077
Zack Williamsccaa38a2021-11-16 15:36:05 -070078Testing
79-------
ajayce0380c2021-12-14 21:51:00 -080080For various testing related details refer (see :ref:`sdcore-testing`)
ajayd19711c2021-12-07 12:07:04 -080081
Zack Williamsccaa38a2021-11-16 15:36:05 -070082Documentation
83-------------
84
ajayd19711c2021-12-07 12:07:04 -080085SD-Core documentation is available at `docs.sd-core.opennetworking.org
Zack Williamsccaa38a2021-11-16 15:36:05 -070086<https://docs.sd-core.opennetworking.org>`_
87
88
89Known Issues and Limitations
90----------------------------
91
ajayce0380c2021-12-14 21:51:00 -080092 - Same IMSI can not part of multiple device groups
ajay07514982021-12-07 22:24:32 -080093 - Only 5 application filtering rules can be added per Slice
ajayce0380c2021-12-14 21:51:00 -080094 - Application filtering should be configured with only /32 endpoint address. Subnet is not supported
95 - Application filtering does not work if port ranges are used in filter configuration
96 - Each device group should have unique DNN configuration
97
98.. note::
ajayf5b4f602021-12-14 22:55:47 -080099 For any 3gpp release compliance refer - (:ref:`4g-compliance`) and (:ref:`5g-compliance`)
ajayd19711c2021-12-07 12:07:04 -0800100
Zack Williamsccaa38a2021-11-16 15:36:05 -0700101Component Versions in the 1.0 Release
102-------------------------------------
103
104Helm Chart Versions and their component charts and containers:
105
ajay4433aeb2021-12-16 16:03:27 -0800106* sdcore-helm-chart: ``0.9.17``
ajayce0380c2021-12-14 21:51:00 -0800107 * omec-control-plane: ``0.9.15``
ajay07514982021-12-07 22:24:32 -0800108 * hssdb: ``registry.aetherproject.org/proxy/omecproject/c3po-hssdb:master-771c0c3``
109 * hss : ``registry.aetherproject.org/proxy/omecproject/c3po-hss:master-771c0c3``
110 * pcrf : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
111 * pcrfdb : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
ajayce0380c2021-12-14 21:51:00 -0800112 * config4g : ``registry.aetherproject.org/omecproject/5gc-webui:onf-release3.0.5-e29f159``
113 * spgwc : ``registry.aetherproject.org/omecproject/spgw:master-144bd86``
114 * mme : ``registry.aetherproject.org/proxy/omecproject/nucleus:master-ccdbf69``
ajay07514982021-12-07 22:24:32 -0800115 * omec-sub-provision: ``0.3.2``
116 * simapp: ``registry.aetherproject.org/omecproject/simapp:main-329c82d``
117 * 5g-control-plane: ``0.5.5``
118 * amf: ``registry.aetherproject.org/omecproject/5gc-amf:onf-release3.0.5-9683d5c``
119 * smf: ``registry.aetherproject.org/omecproject/5gc-smf:onf-release3.0.5-46dfe2d``
120 * nrf: ``registry.aetherproject.org/omecproject/5gc-nrf:onf-release3.0.5-13304e8``
121 * nssf: ``registry.aetherproject.org/omecproject/5gc-nssf:onf-release3.0.5-aa3a60b``
122 * pcf: ``registry.aetherproject.org/omecproject/5gc-pcf:onf-release3.0.5-9f7734b``
123 * udm: ``registry.aetherproject.org/omecproject/5gc-udm:onf-release3.0.5-c28433a``
124 * udr: ``registry.aetherproject.org/omecproject/5gc-udr:onf-release3.0.5-deef506``
125 * ausf: ``registry.aetherproject.org/omecproject/5gc-ausf:onf-release3.0.5-be7d4ac``
ajay4433aeb2021-12-16 16:03:27 -0800126 * User Plane ``0.5.4``
127 * bess: ``"registry.aetherproject.org/proxy/omecproject/upf-epc-bess:master-103b198"``
128 * pfcpiface: ``"registry.aetherproject.org/proxy/omecproject/upf-epc-pfcpiface:master-103b198"``
ajayd9952a52021-12-15 14:09:06 -0800129 * 5g-ran-sim ``0.3.2``
130 * gnbsim: ``registry.aetherproject.org/omecproject/5gc-gnbsim:dev-new-gnbsim-025ae2b``
ajay156b0262022-01-21 12:55:22 -0800131
Ajay Lotan Thakurd0573072022-05-04 19:16:52 -07001321.0.1 Release Details
Zack Williams7d058a92022-03-08 14:50:08 -0700133---------------------
ajay156b0262022-01-21 12:55:22 -0800134
135Minor release with bug fixes on top of release 1.0.0. Below is the list of defects fixed,
136
137* MME crash due to OOM kill.
138* MME fails to send PCO to SPGW - MME had NAS decoding issue which was causing MME to not send
139 PCO IE towards SPGW.
140* SPGW main thread blocks on DNS query - Improved SPGW code to raise DNS request in separate thread. Also
141 added support for DNS query timeout.
142* SMF changes to fix FAR action flags
143* SMF changes to support session report message to handle Downlink Data Notification from UPF.
144
145Helm Chart Versions and their component charts and containers:
146
147* sdcore-helm-chart: ``0.9.19``
148 * omec-control-plane: ``0.9.17``
149 * hssdb: ``registry.aetherproject.org/proxy/omecproject/c3po-hssdb:master-771c0c3``
150 * hss : ``registry.aetherproject.org/proxy/omecproject/c3po-hss:master-771c0c3``
151 * pcrf : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
152 * pcrfdb : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
153 * config4g : ``registry.aetherproject.org/omecproject/5gc-webui:onf-release3.0.5-e29f159``
154 * spgwc : ``registry.aetherproject.org/omecproject/spgw:master-4fce2e6``
155 * mme : ``registry.aetherproject.org/proxy/omecproject/nucleus:master-a503ae3``
156 * omec-sub-provision: ``0.3.2``
157 * simapp: ``registry.aetherproject.org/omecproject/simapp:main-329c82d``
158 * 5g-control-plane: ``0.5.6``
159 * amf: ``registry.aetherproject.org/omecproject/5gc-amf:onf-release3.0.5-9683d5c``
160 * smf: ``registry.aetherproject.org/omecproject/5gc-smf:onf-release3.0.5-3c91931``
161 * nrf: ``registry.aetherproject.org/omecproject/5gc-nrf:onf-release3.0.5-13304e8``
162 * nssf: ``registry.aetherproject.org/omecproject/5gc-nssf:onf-release3.0.5-aa3a60b``
163 * pcf: ``registry.aetherproject.org/omecproject/5gc-pcf:onf-release3.0.5-9f7734b``
164 * udm: ``registry.aetherproject.org/omecproject/5gc-udm:onf-release3.0.5-c28433a``
165 * udr: ``registry.aetherproject.org/omecproject/5gc-udr:onf-release3.0.5-deef506``
166 * ausf: ``registry.aetherproject.org/omecproject/5gc-ausf:onf-release3.0.5-be7d4ac``
167 * User Plane ``0.5.4``
168 * bess: ``"registry.aetherproject.org/proxy/omecproject/upf-epc-bess:master-103b198"``
169 * pfcpiface: ``"registry.aetherproject.org/proxy/omecproject/upf-epc-pfcpiface:master-103b198"``
170 * 5g-ran-sim ``0.3.2``
171 * gnbsim: ``registry.aetherproject.org/omecproject/5gc-gnbsim:dev-new-gnbsim-025ae2b``