added design section and deployment for cloud native smf amf
Change-Id: I8daa75db0ceb8de3e26f203837c38c6abd1ba9b9
diff --git a/_static/images/CN-AMF.png b/_static/images/CN-AMF.png
new file mode 100644
index 0000000..e9df726
--- /dev/null
+++ b/_static/images/CN-AMF.png
Binary files differ
diff --git a/_static/images/CN-SMF.png b/_static/images/CN-SMF.png
new file mode 100644
index 0000000..a597de0
--- /dev/null
+++ b/_static/images/CN-SMF.png
Binary files differ
diff --git a/deployment/deployment5G.rst b/deployment/deployment5G.rst
index e6b8023..5ebd995 100644
--- a/deployment/deployment5G.rst
+++ b/deployment/deployment5G.rst
@@ -56,7 +56,12 @@
* - MongoDB
- 2 CPU Cores
- 4Gi
-
+ * - UPF-Adapter
+ - 1 CPU Cores
+ - 1Gi
+ * - SCTP Load Balancer
+ - 1 CPU Cores
+ - 1Gi
.. note::
SD-Core deployment is tested on Intel/AMD hardware. There is WIP to run SD-Core
@@ -105,26 +110,31 @@
.. code-block::
helm -n sdcore-5g ls
- ajayonf@node:~$ helm -n sdcore-5g ls
+ xxxx@node:~$ helm -n sdcore-5g ls
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
sdcore-5g sdcore-5g 1 2022-03-05 16:25:32.338495035 -0700 MST deployed sd-core-0.10.9
- ajayonf@node:~$
+ xxxx@node:~$
- ajayonf@node:~$ kubectl get pods -n sdcore-5g
- NAME READY STATUS RESTARTS AGE
- amf-66bf99c879-5x4ms 1/1 Running 0 3m23s
- ausf-65dc454b79-jp2cb 1/1 Running 0 3m23s
- mongodb-6df94d8dd9-h8p4w 1/1 Running 0 3m23s
- nrf-65bcfbb496-xvt6t 1/1 Running 0 3m23s
- nssf-6f58859d67-552l2 1/1 Running 0 3m23s
- pcf-5b4c75f57d-sl5rh 1/1 Running 0 3m23s
- simapp-d8994999d-98k6v 1/1 Running 0 3m23s
- smf-77c89ccc6d-4d8g2 1/1 Running 0 3m23s
- udm-6dcdc457c6-gwmfk 1/1 Running 0 3m23s
- udr-84678ff6dc-zkj52 1/1 Running 0 3m23s
- upf-0 0/5 Pending 0 3m23s
- webui-66b4df44b-9clwf 1/1 Running 0 3m23s
- ajayonf@node:~$
+ xxxx@node:~$ kubectl get pods -n sdcore-5g
+ NAME READY STATUS RESTARTS AGE
+ amf-6cddb6ff5-g5kwp 1/1 Running 0 8d
+ ausf-64fb5c5df5-g9xps 1/1 Running 0 8d
+ gnbsim-0 1/1 Running 0 8d
+ mongodb-0 1/1 Running 0 8d
+ mongodb-1 1/1 Running 0 8d
+ mongodb-arbiter-0 1/1 Running 0 8d
+ nrf-69794885b-pgl8f 1/1 Running 0 8d
+ nssf-fc9c48c89-dxqn7 1/1 Running 0 8d
+ pcf-5c7d7767c9-wv6dl 1/1 Running 0 8d
+ simapp-669b99db9d-lbbm4 1/1 Running 0 8d
+ smf-b87fc6f8f-4jdqr 1/1 Running 0 8d
+ smf-b87fc6f8f-xt2n2 1/1 Running 0 8d
+ udm-f948b57dc-n5b4h 1/1 Running 0 8d
+ udr-698445bd87-8ptpm 1/1 Running 0 8d
+ upf-0 5/5 Running 0 8d
+ upf-adapter-c4844b7fb-wqbvw 1/1 Running 0 8d
+ webui-8cfb9659c-hqfp9 1/1 Running 0 8d
+ xxxx@node:~$
To uninstall:
@@ -133,4 +143,64 @@
helm -n sdcore-5g uninstall sdcore-5g
kubectl delete namespace sdcore-5g # also remove the sdcore-5g if needed
+Cloud Native Configuration - 5G
+""""""""""""""""""""""""""""""""
+Following configuration need to be enabled in 5G helm values override file
+
+Enable AMF Sctp Load Balancer
+'''''''''''''''''''''''''''''
+Edit sd-core-5g-values.yaml as following
+
+.. code-block::
+
+ sctplb:
+ deploy: true
+
+Enable SMF DB Store
+'''''''''''''''''''
+Edit sd-core-5g-values.yaml as following
+
+.. code-block::
+
+ smf:
+ cfgFiles:
+ smfcfg.conf:
+ configuration:
+ enableDBStore: true
+
+Enable UPF-Adapter
+''''''''''''''''''
+Edit sd-core-5g-values.yaml as following
+
+.. code-block::
+
+ upfadapter:
+ deploy: true
+
+Enable NRF Keep-Alive
+''''''''''''''''''''''
+Edit sd-core-5g-values.yaml as following
+
+.. code-block::
+
+ nrf:
+ cfgFiles:
+ nrfcfg.conf:
+ configuration:
+ mongoDBStreamEnable: false
+ nfProfileExpiryEnable: true
+ nfKeepAliveTime: 60
+
+Enable UE IP-Address allocation by UPF
+''''''''''''''''''''''''''''''''''''''
+This is optional feature to allocate UE IP-Address via UPF rather than locally via SMF.
+Edit sd-core-5g-values.yaml as following
+
+.. code-block::
+
+ cpiface:
+ dnn: "internet"
+ hostname: "upf"
+ enable_ue_ip_alloc: true
+ ue_ip_pool: "172.250.0.0/16"
diff --git a/design/design-amf.rst b/design/design-amf.rst
new file mode 100644
index 0000000..8359abc
--- /dev/null
+++ b/design/design-amf.rst
@@ -0,0 +1,26 @@
+..
+ SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+ SPDX-License-Identifier: Apache-2.0
+
+.. _design_amf:
+
+AMF Design Overview
+===================
+
+.. image:: ../_static/images/CN-AMF.png
+ :width: 500px
+
+SctpLb (SctpLoadbalancer)
+-------------------------
+
+ * Accept and manage gnb or sctp connections
+
+ * GRPC communication between SctpLb and Amf Service
+
+ * Handles Amf Instance Down/Up Notifications
+
+ * Backend NF manages AMF instances
+
+ * Round-Robin Distribution of Sctp Messages over grpc channel to Backend NF
+
+ * Redirect Support for forwarding to a particular Amf Instance
diff --git a/design/design-smf.rst b/design/design-smf.rst
new file mode 100644
index 0000000..2b93438
--- /dev/null
+++ b/design/design-smf.rst
@@ -0,0 +1,26 @@
+..
+ SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+ SPDX-License-Identifier: Apache-2.0
+
+.. _design_smf:
+
+SMF Design Overview
+===================
+
+.. image:: ../_static/images/CN-SMF.png
+ :width: 500px
+
+UPF-Adapter
+-----------
+
+As UPF may not support connections from multiple SMF instances with same Node-Id,
+UPF-Adapter layer has been introduced.
+
+* UPF-Adapter acts like Mux-Demux for PFCP messages between multiple SMF instances and UPF.
+
+* SMF sends custom PFCP msg to UPF-Adapter if UPF-Adapter is deployed.
+
+* The UPF-Adapter intercepts and modifies certain fields before sending PFCP msg to actual UPF.
+
+* Similar handling is done for the response from UPF towards SMF.
+
diff --git a/dict.txt b/dict.txt
index 0dff146..31ecfa8 100644
--- a/dict.txt
+++ b/dict.txt
@@ -7,7 +7,10 @@
AiaB
Analytics
Auth
+Backend
+Balancer
De
+Demux
Deregister
Deregistration
Dockerfile
@@ -30,6 +33,7 @@
Makefile
Mbps
Minikube
+Mux
NRF
NSSF
Namf
@@ -136,6 +140,7 @@
minikube
mme
mnc
+msg
mtu
multus
myvalues
@@ -176,6 +181,7 @@
runtime
scalability
scalable
+sctp
sd
sdcore
simapp
diff --git a/index.rst b/index.rst
index f72e63a..f8825b0 100644
--- a/index.rst
+++ b/index.rst
@@ -83,6 +83,15 @@
deployment/deploymentupf.rst
.. toctree::
+ :maxdepth: 2
+ :caption: Design
+ :hidden:
+ :glob:
+
+ design/design-smf.rst
+ design/design-amf.rst
+
+.. toctree::
:maxdepth: 3
:caption: Test Automation
:hidden: