blob: c8098ac1eee0aaa1dae4a32b27b0b65beaf74394 [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
Zack Williamsccaa38a2021-11-16 15:36:05 -07005SD-Core 1.0 Release
6===================
7
ajayce0380c2021-12-14 21:51:00 -08008SD-Core supports 4G & 5G network functions. SD-Core provides APIs for configuration, telemetry, policy
9management. Access network can connected to AMF or MME depending on type of access used. Below is the
10summary of the features delivered in SD-Core.
ajayd19711c2021-12-07 12:07:04 -080011
Zack Williamsccaa38a2021-11-16 15:36:05 -070012Highlights
13----------
14
ajayce0380c2021-12-14 21:51:00 -080015**Support of REST APIs to configure SD-Core:** Configuring multiple network functions to enable/disable a
16service in a network is complex. Single entry point for REST api based configuration is easy to use
17and less error prone. Our main motivation behind this work item was to hide the complexity of the network
18and make APIs more intuitive for the operator. These APIs work well for both 4G & 5G network functions.
ajayd19711c2021-12-07 12:07:04 -080019
ajayce0380c2021-12-14 21:51:00 -080020**Subscriber Management Interface**: 3gpp requires user security keys to be configured in the network function.
21We have provided two interfaces to configure subscribers in SD-Core. One of the way to configure subscribers
22is through REST api calls to SD-Core. The other way is to add/delete/modify subscription through helm charts.
23APIs are extensible and can be easily integrated with 3rd party sim provision solution. Also while operator
24is updating the subscriptions, there is not need to restart any of the SD-Core components. This interface
25to SD-Core is access agnostic and same interface works for 4G as well as 5G access.
ajayd19711c2021-12-07 12:07:04 -080026
ajayce0380c2021-12-14 21:51:00 -080027**3gpp defined procedures validation and hardening for error scenarios:** SD-Core has been deployed in Aether
28Network for more than 2 year now and in the year 2021 we added 5G support in the SD-Core. SD-Core is used in couple of
29trials. Also multiple Aether sites using different access networks to connect to centralized SD-Core control plane.
30This exercise has helped 4G/5G 3gpp procedures validations with multiple access networks, tools and user equipments.
31Some of the widely used procedures are UE Registration/De-registration, UE PDU Establishment/modification/Deletion,
32Xn handover, UE Context Release & Service request etc. This activity also includes handling of retransmission of
33messages, retrying the messages when packet loss is observed over the network, handling no response from the peer
34network functions,handling of network function failures or handling of reject responses from peer network functions.
ajayd19711c2021-12-07 12:07:04 -080035
ajayd19711c2021-12-07 12:07:04 -080036
ajayce0380c2021-12-14 21:51:00 -080037**Operations support to manage multiple PLMN within Core Network:** SD-Core supports configuration
38of multiple slices with different PLMN. This helps in sharing the same core network among multiple
39operator networks. Each SD-Core network function is capable of handling multiple PLMN in the network.
ajayd19711c2021-12-07 12:07:04 -080040
ajayce0380c2021-12-14 21:51:00 -080041**Multiple User plane support using APN (4G) and Slice Id (5G) using CUPS call flows:** SD-Core
42supports connections from multiple user planes. Even multiple user planes from the same edge can
43connect to same control plane. Control plane uses APN or Slice ID to identify user plane.
ajayd19711c2021-12-07 12:07:04 -080044
ajayce0380c2021-12-14 21:51:00 -080045**Metrics exposure to get visibility of radio network connections and UE connections:** SD-core
46uses prometheus to export metrics. These metrics are useful to get the status of various
47gNodeB/eNodeB connected to Core Network. Also SD-Core gives the metrics to share current user
48connectivity status.
ajayd19711c2021-12-07 12:07:04 -080049
ajayce0380c2021-12-14 21:51:00 -080050**SD-Core support 5000 calls at the rate of 10 calls per second per instance:** SD-Core 5G
51solution is build on top of free5gc open source code. Numerous enhancements done on the base
52code to get the production quality stability. One of the important goal we achieved was getting
535000 subscribers with 10 subscribers attach per second. We will be pushing for higher limits in
54upcoming changes. To achieve this limit, AMF & SMF has seen numerous architecture level
55changes.
ajayd19711c2021-12-07 12:07:04 -080056
ajayce0380c2021-12-14 21:51:00 -080057**Slice Application Access Control using policy configuration:** Network slice really becomes
58useful when operator has the capability to apply access control. Operator can deploy multiple
59applications at the edge or internet and can restrict the users from accessing it based on the
60slice user belongs to. This adds extra layer of security in the edge app deployment.
ajayd19711c2021-12-07 12:07:04 -080061
ajayd19711c2021-12-07 12:07:04 -080062
ajayce0380c2021-12-14 21:51:00 -080063**Policy framework to support QoS at multiple levels** SD-Core makes use of policy network
64function (PCF/PCRF) to enforce qos decisions on the subscriber session. Policies are configured
65per network slices using configuration interface. PCF/PCRF binds those policies to the subscribers.
66APIs 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 -070067
68Testing
69-------
ajayce0380c2021-12-14 21:51:00 -080070For various testing related details refer (see :ref:`sdcore-testing`)
ajayd19711c2021-12-07 12:07:04 -080071
Zack Williamsccaa38a2021-11-16 15:36:05 -070072Documentation
73-------------
74
ajayd19711c2021-12-07 12:07:04 -080075SD-Core documentation is available at `docs.sd-core.opennetworking.org
Zack Williamsccaa38a2021-11-16 15:36:05 -070076<https://docs.sd-core.opennetworking.org>`_
77
78
79Known Issues and Limitations
80----------------------------
81
ajayce0380c2021-12-14 21:51:00 -080082 - Same IMSI can not part of multiple device groups
ajay07514982021-12-07 22:24:32 -080083 - Only 5 application filtering rules can be added per Slice
ajayce0380c2021-12-14 21:51:00 -080084 - Application filtering should be configured with only /32 endpoint address. Subnet is not supported
85 - Application filtering does not work if port ranges are used in filter configuration
86 - Each device group should have unique DNN configuration
87
88.. note::
89 For any 3gpp release compliance refer - (see :ref:`4g-compliance`) and (see :ref:`5g-compliance`)
ajayd19711c2021-12-07 12:07:04 -080090
Zack Williamsccaa38a2021-11-16 15:36:05 -070091Component Versions in the 1.0 Release
92-------------------------------------
93
94Helm Chart Versions and their component charts and containers:
95
ajay07514982021-12-07 22:24:32 -080096* sdcore-helm-chart: ``0.9.14``
ajayce0380c2021-12-14 21:51:00 -080097 * omec-control-plane: ``0.9.15``
ajay07514982021-12-07 22:24:32 -080098 * hssdb: ``registry.aetherproject.org/proxy/omecproject/c3po-hssdb:master-771c0c3``
99 * hss : ``registry.aetherproject.org/proxy/omecproject/c3po-hss:master-771c0c3``
100 * pcrf : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
101 * pcrfdb : ``registry.aetherproject.org/proxy/omecproject/c3po-pcrf:pcrf-a6bdc3d``
ajayce0380c2021-12-14 21:51:00 -0800102 * config4g : ``registry.aetherproject.org/omecproject/5gc-webui:onf-release3.0.5-e29f159``
103 * spgwc : ``registry.aetherproject.org/omecproject/spgw:master-144bd86``
104 * mme : ``registry.aetherproject.org/proxy/omecproject/nucleus:master-ccdbf69``
ajay07514982021-12-07 22:24:32 -0800105 * omec-sub-provision: ``0.3.2``
106 * simapp: ``registry.aetherproject.org/omecproject/simapp:main-329c82d``
107 * 5g-control-plane: ``0.5.5``
108 * amf: ``registry.aetherproject.org/omecproject/5gc-amf:onf-release3.0.5-9683d5c``
109 * smf: ``registry.aetherproject.org/omecproject/5gc-smf:onf-release3.0.5-46dfe2d``
110 * nrf: ``registry.aetherproject.org/omecproject/5gc-nrf:onf-release3.0.5-13304e8``
111 * nssf: ``registry.aetherproject.org/omecproject/5gc-nssf:onf-release3.0.5-aa3a60b``
112 * pcf: ``registry.aetherproject.org/omecproject/5gc-pcf:onf-release3.0.5-9f7734b``
113 * udm: ``registry.aetherproject.org/omecproject/5gc-udm:onf-release3.0.5-c28433a``
114 * udr: ``registry.aetherproject.org/omecproject/5gc-udr:onf-release3.0.5-deef506``
115 * ausf: ``registry.aetherproject.org/omecproject/5gc-ausf:onf-release3.0.5-be7d4ac``