mirror of
https://github.com/nginx/nginx.git
synced 2026-10-25 15:10:05 -05:00
The SO_COOKIE dependency is removed. QUIC BPF dispatching now uses separate sockets for new and established connections: listener sockets handle new connections, while per-worker sockets handle established ones. Server connection IDs encode a random worker key, which BPF uses to route established packets directly to the correct worker socket. New connections are routed through listen keys using a dual slot scheme that enables both reload and binary upgrade. On reload, new workers register new sockets and keys while old workers continue receiving established connections through their encoded keys. On binary upgrade, the new master uses the opposite slot, and exiting masters clear their entries so traffic shifts to the surviving instance. Co-authored-by: Roman Arutyunyan <arut@nginx.com>