Kubernetes Gateway API v1.6 Stabilizes TCP and UDP Routing — Databases and VoIP Enter the Standard Gateway
Gateway API v1.6, released on June 30, 2026, graduates TCPRoute and UDPRoute from experimental to Standard. Workloads speaking raw protocols — databases, DNS, VoIP, gaming — no longer need to bypass the Gateway with plain Kubernetes Services.
August 3, 2026. The Kubernetes blog officially announced this morning the graduation of TCPRoute and UDPRoute to Standard status in Gateway API v1.6.0. The release itself dates back to June 30, 2026, but today’s formal announcement marks the end of an eighteen-month stabilization process. The message is straightforward: workloads that don’t speak HTTP can now use the Gateway API just like the others, without resorting to workarounds or proprietary CRDs.
This is a major step toward Gateway API adoption as the single routing standard in Kubernetes — and a signal to gateway controllers (Istio, Envoy Gateway, Cilium, NGINX): L4 support must be complete and portable.
TCPRoute and UDPRoute: the missing link in standardized routing
Until Gateway API v1.5, the standard only covered HTTP and TLS traffic at L7. For protocols that operate below — databases, message queues, DNS, VoIP, IoT telemetry — teams had two options, neither satisfactory:
- Fall back to a plain Kubernetes Service of type
LoadBalancerorNodePort, losing all the benefits of the Gateway model (declarative routing, role separation, traffic policies). - Use a controller-specific CRD (e.g., Istio’s pre-standard TCPRoute), which doesn’t travel between controllers and locks the infrastructure to a single vendor.
TCPRoute and UDPRoute close this gap for good. A Kubernetes cluster can now expose a PostgreSQL database, a DNS server, an MQTT broker, or an RTSP stream through a single Gateway, with the same role-oriented design principles that made HTTPRoute successful.
The model is radically simple. A Gateway declares a TCP listener on a port:
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: database-gateway
spec:
gatewayClassName: envoy-gateway
listeners:
- name: postgres
protocol: TCP
port: 5432
allowedRoutes:
kinds:
- kind: TCPRoute A TCPRoute attaches to that listener and forwards traffic to a backend:
apiVersion: gateway.networking.k8s.io/v1
kind: TCPRoute
metadata:
name: postgres-route
spec:
parentRefs:
- name: database-gateway
sectionName: postgres
rules:
- backendRefs:
- name: postgres-primary
port: 5432 UDPRoute follows the exact same pattern — swap TCP for UDP in the listener and UDPRoute in the route. Traffic arriving on the Gateway’s port 5432 is proxied to the endpoints of the postgres-primary Service, with no L7 inspection, no TLS termination — exactly what a database expects.
Experimental API group separation
Gateway API v1.6 also introduces clean separation between stable and experimental APIs. Experimental resources move to a distinct API group: gateway.networking.x-k8s.io, with an explicit X prefix. Stable resources remain in gateway.networking.k8s.io.
This separation is technical debt repaid. In previous versions, a single resource could have both stable and experimental fields in the same object — creating confusion about which fields were guaranteed to survive version upgrades. Now, an administrator reading a manifest immediately knows whether the resource they’re deploying is stable (no X, no x-k8s.io) or experimental.
The corollary is that v1alpha2 is deprecated for TCPRoute and UDPRoute. Clusters still using the alpha version must migrate to v1 before removal in a future release. The migration is mechanical: the API is identical, only the group and version change.
What this changes for existing architectures
TCPRoute and UDPRoute reaching Standard status has three concrete implications for platform teams:
1. Entry point convergence. A single Gateway can now expose HTTP, HTTPS, TCP, and UDP simultaneously. No more separate LoadBalancers for the REST API and the database — everything flows through the same entry point with unified traffic policies.
2. Cross-controller portability. A TCPRoute written for Envoy Gateway works with Istio, Cilium, or NGINX Gateway Fabric without modification. That’s the Gateway API contract: infrastructure as code becomes portable, controllers become interchangeable.
3. The end of “catch-all” Services. Teams that used a single LoadBalancer Service with multiple ports to expose both their HTTP API and their database can now use a single Gateway with multiple listeners — a model that’s more readable, more auditable, and easier to secure.
Verdict
Gateway API v1.6 won’t make as much noise as a new controller release or a serverless feature, but it’s a maturity release. It closes the last major functional gap in the standard — L4 routing — and establishes clean boundaries between what’s stable and what isn’t.
If you deploy non-HTTP workloads on Kubernetes, your action plan is simple: test TCPRoute and UDPRoute on your current Gateway controller in a staging environment, and plan the migration of your v1alpha2 resources to v1 before the alpha version is removed. The Gateway API is now the complete standard the community has been promising since 2022.
References
- Kubernetes Blog, “Gateway API v1.6: TCPRoute and UDPRoute Graduate to Standard,” August 3, 2026.
- Gateway API Specification, GEP-2644 (TCPRoute) and GEP-2645 (UDPRoute).
- Kubernetes SIG Network, “Gateway API v1.6.0 Release,” June 30, 2026.