Life of a Packet [I]
summary
Explains how Kubernetes enforces an IP-per-pod model with veth pairs, bridges and per-node CIDRs so pods get routable IPs; shows a GKE deployment using flannel overlay for encapsulation and where MTU and latency tradeoffs matter; details service implementation via kube-proxy using iptables and conntrack, why endpoints objects exist, and the load‑balancer double‑hop vs externalTrafficPolicy=Local tradeoff; covers egress NAT/masquerade and namespaced network policy with default‑deny (beta in 1.6, GA targeted 1.7).
AI-written summary · about
chapters (26)
- 0:00Intro
- 0:48Kubernetes is about clusters
- 1:21Every pod has a real IP address
- 2:19Network namespaces
- 4:18Life of a packet: pod to pod, same node
- 5:02Flat network space
- 5:35Life of a packet: podto pod, across nodes
- 6:34Overlay networks
- 7:57Overlay example: Flannel (vxlan)
- 10:00Dealing with change
- 10:34The service abstraction
- 11:39Endpoints
- 12:46Life of a packet: pod-to-service
- 14:26A bit more on iptables
- 17:56Sending external traffic
- 18:13Leaving the GCP project
- 18:27Life of a packet: Node to internet
- 19:31What went wrong?
- 20:04Life of a packet: pod-to-internet
- 20:22Receiving external traffic
- 21:44Balancing to Nodes
- 22:40Life of a packet: external-to-service
- 23:57Explain the complexity
- 24:33Opt-in to the imbalance problem
- 26:03Network Policy
- 32:31Open implementation
related talks
20mKubernetes Networking 101
51mHow Kubernetes Networking Really Works: A Packet’s Journey Across Pods and Nodes
22mNavigating the Kubernetes Networking Maze
49mLife of a packet in Amazon EKS
26mFrom veth Pairs to Services: The Secret Life of Container Packets
40mCloud, Kubernetes, and Service Networking - Taming the Turtles
51mKubernetes SIG-Network: Intro and Deep-Dive
40mKubernetes Networking Panel: Collaborate on the Spec, Compete on Execution
