Simplifying cloud-native network functions deployments with native Kubernetes networking and Network Function Optimizer
Outbound Product Manager
Group Product Manager
Try Google Cloud
Start building on Google Cloud with $300 in free credits and 20+ always free products.Free trial
Communication Service Providers (CSPs) are modernizing their networks, leveraging cloud operating models and software components delivered as cloud-native network functions (CNFs). The move towards cloud-native principles in the telecommunications industry is firmly anchored in mobile industry 5G standards, authored by the The Mobile Broadband Standard Partnership Project (called 3GPP), which mandate cloud-native principles. As the most widely used container orchestration system, Kubernetes has become the de-facto platform for creating software using cloud-native principles, and the telecommunication industry is embracing it for cloud-native network functions development, distribution and management — a testament to the benefits of the technology.
Initially, the Kubernetes community took a developer-first approach by providing Kubernetes-native objects like Ingress, enabling API-driven external access to the services in the cluster. These concepts are fantastic for enterprise use, but fall short of meeting the requirements of network-intensive workloads. The telecommunications industry had to look for outside open-source projects associated with Kubernetes to address its feature gaps.
Today, for network functions vendors to meet strict networking requirements and CNF performance, they need to leverage an external networking solution to Kubernetes, usually a secondary, non-native Kubernetes plugin that supports the additional Pod interfaces, as well as plugins and kernel enhancements to support protocols or device-specific drivers.
This approach leads to a few challenges when operationalizing cloud-native network functions: First, the use of a chain of plugins means that network and security policies can not be applied or are applied in a static manner specific to the network interfaces. Second, the need for device-specific drivers or kernel modules degrades the security of the workloads and creates a tight coupling between the hardware and the software, tying the workloads to specific hardware-based acceleration platforms that are hard or costly to migrate.
As we engaged with CSPs across the telecommunications industry and collaborated with network functions suppliers, we saw a clear need for Kubernetes Pods with multiple networking interfaces to add strict traffic separation and performance and latency controls. The more we engaged with our partners the more such requirements arose. We asked ourselves if it wasn’t time for Kubernetes to support a more holistic approach to networking?
We believe that the answer to this question is a resounding YES, and we are serious about making it a reality using our multi-network contribution to the Cloud Native Computing Foundation (CNCF) Kubernetes Networking Special Interest Group (SIG). But we are not done.
Enter Network Function Optimizer. Originally announced at Google Cloud Next ‘22, Network Function Optimizer is a new network service available to Google Distributed Cloud Edge and Google Kubernetes Engine (GKE) that provides multi-network support and a high-performance Kubernetes-native dataplane. Today at Mobile World Congress 2023 Barcelona, we announced that Network Function Optimizer is now in Private Preview for GKE.
Network Function Optimizer on GKE offers three main capabilities:
Modernize cloud networking with a Kubernetes-native multi-network - Network Function Optimizer brings a Kubernetes-native multi-network approach through standardization of common APIs to define a catalog of networks for Kubernetes clusters, allowing a Pod to attach to one or several networks for a given interface type depending on connectivity or performance needs. This capability makes networking a first-class citizen of Kubernetes.
High-performance software-based data-plane acceleration - We wanted to remove any tight integration between the network function Pods and Network Interface Cards (NICs), to allow network functions to be deployed wherever they are needed. As part of Network Function Optimizer, we will provide CNFs with native Linux data-plane acceleration that have comparable hardware performance to hardware-based acceleration technology, but with the abstraction, flexibility and portability inherent to software. With this, CNFs can be scheduled on any specific Pod, removing the dependency between the network functions and the underlying NIC hardware. This also means that CNFs will be able to migrate freely between edge locations and cloud regions.
Traffic steering capabilities - Network Function Optimizer simplifies traffic classification and provides the capability to define a group of Pods as nexthops. This means that network functions, typically constructed by splitting functionality across many Pods, can define the network path that they can take directly in Kubernetes.
Rallying behind Network Function Optimizer
Our partners say that Network Function Optimizer is a welcome enhancement to Kubernetes networking.
“Casa Systems’ cloud-native network solutions are built to deliver on all fronts — high performance with blistering throughput, high efficiency with our small footprint and low energy consumption, and the ability to rapidly scale to meet the constantly changing network needs of our customers,” said Gibson Ang, Vice President of Technology. “Working together with Google Cloud, we continue to raise the bar accelerating the ability for CSPs to deploy new features and provide an agile on-demand business model with improved network quality.”
“Ericsson welcomes Google Cloud’s vision for Network Function Optimizer as it aligns with our hybrid cloud vision. Ericsson and Google Cloud have been working closely with lead customers on 5G Core and Google GDC Edge, and we look forward to continuing the collaboration in the next phase of CSPs’ network evolution,” said Monica Zethzon, Head of Solution Area Core Networks at Ericsson. “Ericsson shares Google Cloud’s view of the importance of enhancing networking capabilities in a cloud native manner while delivering telco-grade characteristics and the highest possible security posture.”
“The transition to a fully containerized, cloud-native communications network requires a Kubernetes engine that supports the networking, performance and latency requirements inherent to CSP workloads,” said Jane Shen, Vice President of Technology Strategy, Mavenir. “With Google Distributed Edge Cloud and the Anthos cloud container platform, Mavenir's 5G products can now be quickly deployed in a Kubernetes upstream-compatible environment. The flexible kernel and network configuration of GDC Edge allows for standardized deployment of Mavenir's OpenRAN DU/CU products across different clouds, aligned well with our ‘one network, any cloud’ strategy.”
“Leveraging public clouds as a deployment model for ng-voice’s cloud-native IMS core is an excellent option as it offers on-demand and cost-effective dynamic scaling. However, maintaining different releases for various cloud providers can be financially and operationally daunting,” said Quirin Maderspacher, Chief Operating Officer, ng-voice. Therefore, Google’s initiative to make networking in Kubernetes a top-class citizen, is a highly appreciated approach, as it enables us and other vendors who have adopted a microservices approach to build their network functions, to host them in the public cloud without incurring significant costs. Based on our recent experience with Tier1 operators across the globe we can confirm that other CSPs will also benefit from Google’s contribution.”
”For 5G, service providers need more from cloud. Cloud must be re-architected to meet telco needs in a cloud-native way, so that they can get breakthrough business agility in rapidly onboarding new applications and network functions and deploying and operating new services,” said Marcelo Madruga, Head of Technology and Platforms for Core Networks, Nokia. “Our partnership with Google Cloud is focused on evolving and delivering our 5G Core to meet the needs of mutual production customers whether they start their network cloud modernization journey on Google Distributed Cloud Edge and, over time, Google Cloud regions.”
Towards cloud-native CNFs
We think that our CSP customers will appreciate having a Kubernetes-native approach to networking that is also easily incorporated into their policies, IPAM, scheduling and even high availability scenarios. As CSPs start to adopt Network Function Optimizer, we look forward to enabling more network functions for GKE and GDC Edge, for use cases such as mobile roaming access, emergency calling, capacity bursting, or upgrades and disaster recovery. Network Function Optimizer brings new levels of freedom and simplification to both CSPs and CNFs, and we are excited about the use cases you will come up with next!
Want to get involved? We are big believers in collaboration and would love your support for the Multi-Network Kubernetes Enhancement Proposal through the Kubernetes community. You can learn more about the Network Special Interest Group and upcoming meetings on github.
Special thanks to Mahesh Narayanan , Senior Product Manager in Kubernetes/GKE Networking and Gaetano Borgione, Software Engineering Manager, Google Cloud Networking for contributing to this post.