Mailinglist Archive: opensuse (2224 mails)

< Previous Next >
[opensuse] Network PMTU -- optimizing performance...
  • From: Linda Walsh <suse@xxxxxxxxx>
  • Date: Fri, 02 Feb 2007 00:09:42 -0800
  • Message-id: <45C2F1C6.2060105@xxxxxxxxx>
I have a few different computers on my house network. Several have
been upgraded to 1Gb ethernet. Doing benchmarkings, I find that
a significant part of the speed seems to be related to
"per-packet" delays -- I found I could get 2-3 times the performance
if I could set two machines to talk to each other with a larger MTU.
Having them use a 6000 byte MTU vs. the old max of 1500, made a
big difference.

However (there has to be a catch, of course), most of the computers
in the house don't support jumbo packets. I think some may still
be at 100Mb. Fortunately, different speed (10Mb,100Mb,1Gb)
cards can all share the same network with 1Gb-1Gb conenctions
running fast, but 10Mb-1Gb connections still working -- though
significantly slower. :-)

I'm having a problem doing the same with the different cards
that support different PMTU's. One card supports up to 9000 byte
MTU's (I think that's the current max "jumbo" size). I'd
__like__ to set each card to it's maximum so each machine pair
would use the most efficient MTU possible.
Theoretically, TCP/IP does PMTU discovery and was designed to
work over different network types using different MTU's. I
don't have the kernel param "ip_no_pmtu_disc" enabled, but...
it seems the opposite of "no" may not be "yes". ;-(

A small PMTU machine ("smallpack") can be logged into a
large PMTU machine ("bigpack") and they talk fine (using
small packets), but trying to send a file (>MTU), or using
a ping packet size > PMTU (like 3000) and the communication is
dropped. If both machines are set to use the same PMTU, then
all is fine and large ping packets are automatically fragmented.

Forcing all cards in the house (including housemate computers)
to upgrade to some "same" brand that supports the same jumbo
PMTU size isn't really an option.
Why isn't PMTU discovery working? Am I missing something obvious?
Why does it appear that the MTU's have to be equal on all machines?
What part of "discovery" am I not understanding?

Even using the ping "-M want" ("do PMTU discovery") does NOT work.
Am I missing something obvious?


To unsubscribe, e-mail: opensuse+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse+help@xxxxxxxxxxxx

< Previous Next >
This Thread
  • No further messages