To support the high-performance networking demands of communication service providers (CoSPs), Cloud-Native Network Functions (CNFs) requires three primary networking components: SR-IOV, OVN-Kubernetes, and BGP. The sections below offer a high-level overview of each component, helping to visualize how they integrate together in the container platform:
SR-IOV uses Physical Functions (PFs) to segment compliant PCIe devices into multiple Virtual Functions (VFs). VFs are then injected into containers during deployment, enabling direct access to network interfaces. SR-IOV VFs are first defined in the OpenShift networking configuration, and then referenced using CNFs Helm overrides. The sections below offer a bit more detail on these configuration objects:
The OpenShift network node policies and network attachment definitions must be defined and installed first, providing SR-IOV virtual functions (VFs) to the cluster nodes and Pods.
In this example, bare metal interfaces are referenced in the network node policies, and the network attachment definitions reference node policies by Resource Name:
The CNFs Controller installation requires the following Helm
tmm parameters to reference the OpenShift network node policies and network node attachments:
cniNetworks- References SR-IOV network node attachments, and orders the f5-tmm container interface list.
OPENSHIFT_VFIO_RESOURCE- References SR-IOV network node policies, and must be in the same order as the network node attachments.
Once the Controller is installed, TMM’s external and internal interfaces are configured using the F5BigNetVlan Custom Resource (CR).
In this example, the SR-IOV VFs are referenced and ordered using Helm values, and configured as interfaces using the F5BigNetVlan CR:
Provide feedback to improve this document by emailing email@example.com.