From Kubernetes objects to network packet pipelines (and back)
Ales Musil, Dumitru Ceara
This talk aims to be a deep dive into how some of the OpenShift networking
is implemented under the hood. Since OpenShift 4.12, the default certified
Container Network Interface (CNI) has been ovn-kubernetes (OVN-K8s). OVN-K8s
provides a Kubernetes networking solution by using the open source
Open Virtual Networking (OVN) and Open vSwitch (OVS) projects at its core.
While we plan to briefly describe how OVN-K8s configures the OVN logical
network topology, this talk will not focus on that. Instead, the goal of
this talk is to describe how individual packets are processed in the kernel
OVS datapath and to provide a bottom-up way of mapping the processing
steps to the upper layers, in this order:
- OVS kernel datapath flows
- OVS OpenFlow rules
- OVN logical flows
- OVN logical network constructs (e.g., switches, routers)
- Kubernetes objects
Cloud, Hybrid Cloud, and Hyperscale Infrastructure
D105 (capacity 300)