Avatar of drezzzz
drezzzz asked on

Manually setting MTU larger than 1500 failed

I am trying to set a larger MTU on my network card in Ubuntu and it always fail :
#> ifconfig eth0 mtu 9000
SIOCSIFMTU: Invalid argument

My network card is a VmWare (AMD 79c970).

It seems like a restriction somewhere ?

Avatar of undefined
Last Comment

8/22/2022 - Mon

For ethernet, the max MTU is 1500

Please see the following doc regarding jumbo frames:

For the record, I already set my feeding server mtu (e1000/inetl Pro 1000 PT on Ubuntu 8.1) to 9000 without problem. The testing client, the vmware one, still refuse to let me increase the MTU.

The MTU increase of the vSwitch was already done.

Is it possible that there was some kernel/module parameter that restrict it. The module used is PCnet32 LANCE.
Experts Exchange has (a) saved my job multiple times, (b) saved me hours, days, and even weeks of work, and often (c) makes me look like a superhero! This place is MAGIC!
Walt Forbes

Install VMware tools to it will use a proper networking driver.

The Spec says 1500 is the max MTU allowed. Just because the software on one side let you do it doesnt mean its allowable. The other end is actually catching this fact and giving you an error.

Media                             Max MTU
Ethernet (RFC 1191)       1500

What is the purpose of increasing MTU ?
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.

First, I setup a SAN with ietd. All performance howto recommand to increase the MTU to help iscsi perform faster. Seems good to me !

Second, all this MTU things point me all the error I got in the vmware-tools install was very bad for performmance. Since I'm using a kernel 2.6.24, I encountered a bug with the vmware-tool. I am in the process of installing the open-tool following this howto http://diamondsw.dyndns.org/Home/Et_Cetera/Entries/2008/4/25_Linux_2.6.24_and_VMWare.html. I will be back with the result.

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
See how we're fighting big data
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question

I finnaly get it !
I needed to make vmware supplie my guest with a "vmxnet enhanced" device instead of the default "flexible" type. This is done in the .vmx file of the guest. Then make sure ubuntu detect the device and use the vmxnet driver. And then, just set the mtu with the standard command.

It seems that effectively, some device or driver just don't support a mtu higher than 1500.

Result :
I get from 62MB/s to 93MB/s ! exx-ellent Smithers !

You don't need to edit the .vmx file manually. If it needs to be changed, it's done automaticly when the VMware Tools are installed. When you install VMware Tools the vmxnet driver will be installed and you will get a paravirtualized nic in your guest providing better performance.

This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.

My experience wasn't that smooth. When I installed the vmware-tool, linux keep the PCnet32 driver. I got no possibility to change the "flexible" mode of the adapter. That's why I change it in the file. And manually activate the "jumbo frame" with ethernet[n].features = "15". It worked well.