..
   SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
   SPDX-License-Identifier: Apache-2.0

FAQs
====

    * **Does SD-Core support for roaming architecture?**

      *SD-Core is primarily focused for private 5G  & private LTE use cases and*
      *hence roaming aspects of architecture are not supported.*

    * **Does SD-Core support charging functionality or CHF (charging network function)?**

        *SD-Core is primarily focussed for private 5G & private LTE use cases and*
        *hence charging related aspects are not supported.*

    * **Is SD-Core/5G-Core cloud native?**

        *SD-Core is not cloud native, but it runs in K8s environment.*
        *As per road map AMF, SMF will be cloud native by the mid of 2022. This is WIP.*

    * **What are the changes omec 5G has on top of free5gc?**

        * Please refer this - document for details of the changes.*

    * **Network Performance Testing of SD-Core**

        *No performance results available. Limited scale testing is performed to check*
        *the control plane subscriber capacity and  transaction rate. But still its not*
        *formal enough to share with wider community. Watch out for release notes and testing
        *section to get current performance results*

