Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Whitepaper] CNF Definition discussion #35

Open
taylor opened this issue Feb 14, 2020 · 2 comments
Open

[Whitepaper] CNF Definition discussion #35

taylor opened this issue Feb 14, 2020 · 2 comments

Comments

@taylor
Copy link
Collaborator

taylor commented Feb 14, 2020

Regarding the "1.4 Cloud Native Network Functions" section from the Cloud Native Thinking for Telecommunications whitepaper.

@taylor
Copy link
Collaborator Author

taylor commented Feb 14, 2020

The current definition is leaning into a CNF being a specific type of cloud native application which happens to be a network/telecom focused application. IMO, the principles, properties and benefits of a cloud native application should provide the base building block before adding anything specific for a CNF.

@ASawwaf
Copy link
Contributor

ASawwaf commented Feb 16, 2020

@taylor

I added some clauses in Principle in Chapter one and update the CNF definition

Principle :

Nevertheless, there are some principles should be taken in our consideration for Telco, it will be covered here in nutshell, One of the challenges that the long Certificate and release management process that VNF offered to be fully compatible with underneath provided infrastructure, so we need to bring the CI/CD in the picture as it considered one of important principle for Cloud-Native for Telco infrastructure, This is a Principle because it allows for rapid iteration, proper versioning, easier rollbacks, canary testing, and many other capabilities that are presently complex and often not possible in deploying VNFs, The provided infrastructure should be agnostics whatever the CNF running over, Microservices ( Each microservice can be developed, updated and scaled independently.), Resiliency, and stat-less CNF, its life cycle is managed by container orchestrator and exposed API is Cloud-native principle

A cloud-native network function (CNF):

Let’s start with a Network function definition, the typical network consists of Network Elements with well-defined external interfaces and functional behaviours.
Practically, Network Functions are mapped to Network Nodes and Physical Appliances,
Cloud-Native, it is an application or Network function with some characteristic. A cloud-native network function consists of one or more micro-services, that is container packaged and its lifecycle is managed by a container orchestration system, such as Kubernetes, and it subscribes to cloud-native orchestration paradigms and has been developed using Cloud Native Principles including immutable infrastructure, declarative APIs, a “repeatable deployment process” , all changes stored in a centralized Key-Value ( KV ) data store, communicates over a message bus.

An example of a simple CNF is a packet filter which implements a single piece of network functionality as a microservice. A firewall is an example of a CNF which may be composed of more than one microservice.
The CNFs themselves, by nature of following cloud-native principles, are also compassable and can implement and facilitate more complex network functionality if needed.
CNFs and cloud-native principles can be used when implementing applications and network infrastructure which needs to meet standards such as 3GPP. For example, an Evolved Packet Core's (EPC) Serving Gateway could be implemented as a cloud-native application and support all 3GPP requirements (eg. S1 protocol stack) allowing integration with other EPC services.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants