Re: [PATCH] virtio_net: set default mtu to 1500 when 'Device maximum MTU' bigger than 1500

Stephen Hemminger
2023-05-08T16:25:56Z

On Mon, 8 May 2023 06:30:07 -0400
"Michael S. Tsirkin" <mst@redhat.com> wrote:

> > > > I don't know, in any scenario, when the hardware supports a large mtu, but we do
> > > > not want the user to use it by default.
> > >
> > > When other devices on the same LAN have mtu set to 1500 and
> > > won't accept bigger packets.
> >
> > So, that depends on pmtu/tcp-probe-mtu.
> >
> > If the os without pmtu/tcp-probe-mtu has a bigger mtu, then it's big packet
> > will lost.
> >
> > Thanks.
> >
>
> pmtu is designed for routing. LAN is supposed to be configured with
> a consistent MTU.

Virtio is often used with bridging or macvlan which can't support PMTU.
PMTU only works when forwarding at layer 3 (ie routing) where there is
a IP address to send the ICMP response. If doing L2 forwarding, the
only thin the bridge can do is drop the packet.

TCP cab recover but detecting an MTU blackhole requires retransmissions.