[pve-devel] [PATCH V2 pve-common 0/1] network: tap_plug: fix mtu bugs

Alexandre Derumier aderumier at odiso.com
Mon Mar 21 08:05:26 CET 2022


changelog v2:
- rebase on last git


a forum user have reported strange bug with ovs + mtu9000 when
switching between 2 ovs bridge with different mtu. (1500 vs 9000)
https://forum.proxmox.com/threads/ovs-problem-with-mtu-9000-on-vms-assigned-to-vmbr0.105172/
(user confirmed that this patch fix the problem)

I have found 2 bugs:

1) ovsint port mtu need to be set with ""ovs-vsctl set mtu-request"

(ip link set mtu 9000 don't seem to do nothing on ovs-int port, maybe this have change with last ovs version.)


fresh start of a vm 100 + firewall on ovs with mtu 9000:

153: tap100i0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast master fwbr100i0 state UNKNOWN group default qlen 1000
    link/ether 62:42:32:cc:a2:24 brd ff:ff:ff:ff:ff:ff
154: fwbr100i0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 46:f6:b7:95:23:86 brd ff:ff:ff:ff:ff:ff
155: fwln100o0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master fwbr100i0 state UNKNOWN group default qlen 1000


2) when switching between 2 bridges or ovs with differents mtu, mtu are not updated on existing interfaces (veth,tap, fwbr, fwnl)


vm start : vmbr0 mtu=1500 + firewall
-----------------------------
200: tap100i0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master fwbr100i0 state UNKNOWN group default qlen 1000
    link/ether 62:42:32:cc:a2:24 brd ff:ff:ff:ff:ff:ff
206: fwbr100i0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 46:f6:b7:95:23:86 brd ff:ff:ff:ff:ff:ff
207: fwpr100p0 at fwln100i0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master vmbr0 state UP group default qlen 1000
    link/ether 0a:2e:f5:f4:22:e3 brd ff:ff:ff:ff:ff:ff
208: fwln100i0 at fwpr100p0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master fwbr100i0 state UP group default qlen 1000
    link/ether 96:0e:94:11:c1:45 brd ff:ff:ff:ff:ff:ff


switch to vmbr1 mtu=9000 + firewall
--------------------------------------

200: tap100i0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master fwbr100i0 state UNKNOWN group default qlen 1000
    link/ether 62:42:32:cc:a2:24 brd ff:ff:ff:ff:ff:ff
209: fwbr100i0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 46:f6:b7:95:23:86 brd ff:ff:ff:ff:ff:ff
210: fwpr100p0 at fwln100i0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue master vmbr3 state UP group default qlen 1000
    link/ether 0a:2e:f5:f4:22:e3 brd ff:ff:ff:ff:ff:ff
211: fwln100i0 at fwpr100p0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue master fwbr100i0 state UP group default qlen 1000
    link/ether 96:0e:94:11:c1:45 brd ff:ff:ff:ff:ff:ff


Alexandre Derumier (1):
  network: tap_plug: fix mtu

 src/PVE/Network.pm | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

-- 
2.30.2





More information about the pve-devel mailing list