How to change the instance's Linux bridge and tap interface MTU
Hi,
I use DevStack to deploy OpenStack with Linux Bridge instead of OVS in a multi-node set up.
I’m testing jumbo frames and want to set MTU to 9000.
At the Network node, the bridges and tap interfaces are created with MTU = 9000:
localadmin@qa4:~/devstack$ brctl show bridge name bridge id STP enabled interfaces brq09047ecb-1c 8000.7c69f62c4f2f no eth1 tapedbcd5b1-a6 brq319688ab-93 8000.3234d6ee3a18 no bond0.300 tap4e230a86-cb tapfddaf12e-85 virbr0 8000.000000000000 yes
localadmin@qa4:~/devstack$ ifconfig brq09047ecb-1c
brq09047ecb-1c Link encap:Ethernet HWaddr 7c:69:f6:2c:4f:2f
inet6 addr: fe80::3c79:c8ff:fe23:2fe7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:696 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:30617 (30.6 KB) TX bytes:648 (648.0 B)
localadmin@qa4:~/devstack$ ifconfig brq319688ab-93
brq319688ab-93 Link encap:Ethernet HWaddr 32:34:d6:ee:3a:18
inet6 addr: fe80::e0ec:3bff:fe09:4318/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:30 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:4236 (4.2 KB) TX bytes:648 (648.0 B)
localadmin@qa4:~/devstack$ ifconfig tapedbcd5b1-a6
tapedbcd5b1-a6 Link encap:Ethernet HWaddr ae:fb:64:53:f7:2d
inet6 addr: fe80::acfb:64ff:fe53:f72d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:65 errors:0 dropped:0 overruns:0 frame:0
TX packets:947 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10223 (10.2 KB) TX bytes:80510 (80.5 KB)
localadmin@qa4:~/devstack$ ifconfig tap4e230a86-cb
tap4e230a86-cb Link encap:Ethernet HWaddr 32:34:d6:ee:3a:18
inet6 addr: fe80::3034:d6ff:feee:3a18/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:2073 errors:0 dropped:0 overruns:0 frame:0
TX packets:2229 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8878139 (8.8 MB) TX bytes:8914532 (8.9 MB)
localadmin@qa4:~/devstack$ ifconfig tapfddaf12e-85
tapfddaf12e-85 Link encap:Ethernet HWaddr d2:33:29:9b:2c:e8
inet6 addr: fe80::d033:29ff:fe9b:2ce8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:152 errors:0 dropped:0 overruns:0 frame:0
TX packets:295 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15237 (15.2 KB) TX bytes:51849 (51.8 KB)
The instance launched at the Compute node has interface eth0 MTU = 9000:
ubuntu@qa5-vm2:~$ ifconfig
eth0 Link encap:Ethernet HWaddr fa:16:3e:05:36:58
inet addr:10.0.0.4 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::f816:3eff:fe05:3658/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:1169 errors:0 dropped ...
Just set the MTU of bond0 (and its slaves) to 9000.
bond0 and its slaves already have MTU set to 9000.
yeah, it seems libvirt creates the tap device with default 1500. Maybe nova needs a patch to use the value set by https://review.openstack.org/#/c/153733/ when linuxbridge used
bug open here https://bugs.launchpad.net/networking...