MTU setting per MAC address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I noticed it is possible in Linux to define the MTU setting on a per
route basis at the IP layer. This is really useful, and can be used to
build a table mapping IP addresses to MTUs.

Is it possible to do this at the link layer, to map hardware MAC
addresses to MTUs?

This would allow a mixture of MTU sizes on a network, based on the
capability of individual devices.

Reason for asking: 
On this network Jumbo frames are used between devices that support them,
while more compatible frame sizes are used for everything else. This has
been achieved by increasing the interface MTU on the machines supporting
Jumbo frames, then making the local network route for that interface use
a compatible MTU (1500). Then for each host on the network that supports
Jumbo frames, a new route is added, with host IP address and the correct
MTU defined.

This configuration works very reliably, however a complication arises
because the network bridged.
The Linux bridge code currently prevents the bridge interface MTU from
being increased beyond the minimum MTU of the interfaces that form the
bridge. This was not the desired behaviour. Since the routing tables
here take care of the MTU on a per IP basis, I removed this MTU limit
from the linux bridge source code. Doing this has then enabled the MTU
of the bridge interface to be increased, allowing Jumbo frames to be
sent to the devices/routes that support them.

A further complication here is that portable devices have both wireless
and wired ethernet interfaces. These devices connect to the bridged
network using the linux bonding driver, which allows them to seamlessly
transfer from their wireless connection to a high speed wired ethernet
connection and vice-versa. This is where problems can arise, because the
same IP address is effectively mapped to both the wireless and the wired
interfaces, which have two different MTU requirements. Since the MTUs
are mapped at IP level, there is no way of choosing what MTU to use.
Ideally rather than using the IP routing table to map IP addresses to
MTUs, I would be useful to define a list of MAC addresses with their
associated MTU.

Regards,

Craig

PS: While re-reading this email, I realised that even if this were
possible, the bonding driver would also need to support the transition
from one MTU to another. Something that I imagine would require a lot
more magic.
Regardless of this, having a special option on the Linux bridge driver
to bypass the maximum MTU limit would be useful. Instead of limiting to
the minimum MTU of the interfaces that the bridge is formed from, the
special option would increase the maximum MTU to the maximum MTU of the
interfaces that the bridge is formed form. Just an idea.


Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux