|
| 1 | +[id="optimizing-networking"] |
| 2 | += Optimizing networking |
| 3 | +include::modules/common-attributes.adoc[] |
| 4 | +:context: optimizing-networking |
| 5 | + |
| 6 | +toc::[] |
| 7 | + |
| 8 | +The xref:../networking/openshift_sdn/about-openshift-sdn.adoc#about-openshift-sdn[OpenShift SDN] uses OpenvSwitch, virtual extensible LAN (VXLAN) tunnels, OpenFlow rules, and iptables. This network can be tuned by using jumbo frames, network interface cards (NIC) offloads, multi-queue, and ethtool settings. |
| 9 | + |
| 10 | +xref:../networking/ovn_kubernetes_network_provider/about-ovn-kubernetes.adoc#about-ovn-kubernetes[OVN-Kubernetes] uses Geneve (Generic Network Virtualization Encapsulation) instead of VXLAN as the tunnel protocol. |
| 11 | + |
| 12 | +VXLAN provides benefits over VLANs, such as an increase in networks from 4096 to over 16 million, and layer 2 connectivity across physical networks. This allows for all pods behind a service to communicate with each other, even if they are running on different systems. |
| 13 | + |
| 14 | +VXLAN encapsulates all tunneled traffic in user datagram protocol (UDP) packets. However, this leads to increased CPU utilization. Both these outer- and |
| 15 | +inner-packets are subject to normal checksumming rules to guarantee data is not corrupted during transit. Depending on CPU performance, this additional |
| 16 | +processing overhead can cause a reduction in throughput and increased latency when compared to traditional, non-overlay networks. |
| 17 | + |
| 18 | +Cloud, VM, and bare metal CPU performance can be capable of handling much more than one Gbps network throughput. When using higher bandwidth links such as 10 or 40 Gbps, reduced performance can occur. This is a known issue in VXLAN-based environments and is not specific to containers or {product-title}. Any network that relies on VXLAN tunnels will perform similarly because of the VXLAN implementation. |
| 19 | + |
| 20 | +If you are looking to push beyond one Gbps, you can: |
| 21 | + |
| 22 | +* Evaluate network plug-ins that implement different routing techniques, such as border gateway protocol (BGP). |
| 23 | +* Use VXLAN-offload capable network adapters. VXLAN-offload moves the packet checksum calculation and associated CPU overhead off of the system CPU and onto dedicated hardware on the network adapter. This frees up CPU cycles for use by pods and applications, and allows users to utilize the full bandwidth of their network infrastructure. |
| 24 | + |
| 25 | +VXLAN-offload does not reduce latency. However, CPU utilization is reduced even in latency tests. |
| 26 | + |
| 27 | +include::modules/optimizing-mtu-networking.adoc[leveloffset=+1] |
| 28 | + |
| 29 | +include::modules/recommended-install-practices.adoc[leveloffset=+1] |
| 30 | + |
| 31 | +include::modules/ipsec-impact-networking.adoc[leveloffset=+1] |
| 32 | + |
| 33 | +.Additional resources |
| 34 | + |
| 35 | +* xref:../installing/installing_aws/installing-aws-network-customizations.adoc#modifying-nwoperator-config-startup_installing-aws-network-customizations[Modifying advanced network configuration parameters] |
| 36 | +* xref:../networking/cluster-network-operator.adoc#nw-operator-configuration-parameters-for-ovn-sdn_cluster-network-operator[Configuration parameters for the OVN-Kubernetes default CNI network provider] |
| 37 | +* xref:../networking/cluster-network-operator.adoc#nw-operator-configuration-parameters-for-openshift-sdn_cluster-network-operator[Configuration parameters for the OpenShift SDN default CNI network provider] |
0 commit comments