KVM guest interface MTU drops to 1500 and large TCP transfers stall after enabling 802.1Q VLAN tagging on host bridge
Environment
KVM host (Ubuntu 22.04) using libvirt-managed bridges (br0). Host NIC is 10 GbE with MTU 9000. After enabling VLAN trunking on br0 and adding VLAN subinterfaces (br0.100), multiple KVM guests with virtio-net interfaces report degraded large-transfer throughput and packet loss. Guests run Debian 11 with MTU 9000 configured.
Symptoms
Large file copies over the guest-to-guest and guest-to-storage TCP connections show severe throughput drop and stalled transfers; small packets remain responsive. Guests report occasional 'network is unreachable' on certain flows and Re-transmits spike. Host networking shows no full interface errors on br0 but br0.100 shows some dropped packets counters incrementing.
Observations
ip link show reports guest vnet interfaces with mtu 9000. tcpdump on host physical NIC shows VLAN-tagged frames with correct VLAN IDs but some large frames being fragmented or dropped (seen as incomplete frame sequences). ethtool -S on the physical NIC shows hardware offload counters for VLAN‑tagging and GRO/TSO enabled; when VLAN tagging is performed in software (on the host) large frames traverse without issue. syslog contains occasional kernel message: 'netdev: failed to send packet due to XDP/driver constraints' during high throughput. No errors at the switch port level; switch configured for trunking with MTU 9000.
Already attempted
Disabled guest offloads (ethtool -K on guest vnet0: tso off gso off gro off) and re-tested — throughput improved slightly but stalls still occur. Temporarily removed VLAN tagging on the host and saw traffic resume at expected rates. Upgraded host kernel to latest 5.15 LTS backport and libvirt to latest stable; problem persisted. Rebooted host and guests.
Question
What diagnostics can pinpoint whether the issue is (a) host NIC driver VLAN offload bug, (b) qemu/virtio interaction with VLAN-tagged bridges and offloading, or (c) switch / trunk MTU mismatch? Which reversible settings should I change first to isolate without disrupting production guests, and when is it appropriate to escalate to NIC vendor or upstream kernel bug tracker?
Verified community troubleshooting
No answers yet..
Incident analysis
Most likely causes
Summary
Suggested Fixes
Continue troubleshooting
Related troubles
Matched from the title, description and tags
- Virtualization29% match
KVM guests lose all network after host NIC firmware update under sustained I/O — MTU resets and guests show 1500-only traffic
Open0 answers - Linux25% match
Ubuntu 22.04 host suspend/resume breaks LXD container veth interfaces — containers lose external network
Open0 answers - Networking24% match
Managed switch drops 802.1Q tagged frames on trunk when MTU set above 1500 to ESXi host
Open0 answers - Networking23% match
Site-to-site IPsec tunnel stalls large TCP transfers after disabling MSS clamp on edge firewall
Open0 answers