Saturday, 20th April 2024

Comment posted Boost local network performance (Increase network thoroughput) by enabling Jumbo Frames on GNU / Linux by .

Recent comments by

Share this on:

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

No Responses to “…”

  1. Rodrigo says:
    Google Chrome 34.0.1847.132 Google Chrome 34.0.1847.132 GNU/Linux x64 GNU/Linux x64
    Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.132 Safari/537.36

    Thank you for your article. I just have a few questions.

    I ran ifconfig and got the following:

    ~$ ifconfig
    enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.0.105  netmask 255.255.255.0  broadcast 192.168.0.255
            inet6 fe80::21b:d3ff:fede:14b0  prefixlen 64  scopeid 0x20<link>
            ether 00:1b:d3:de:14:00  txqueuelen 1000  (Ethernet)
            RX packets 16836848  bytes 20570410594 (19.1 GiB)
            RX errors 46  dropped 0  overruns 0  frame 46
            TX packets 9551682  bytes 1480264646 (1.3 GiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
            device interrupt 20  memory 0xf4a00000-f4a20000  

    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 0  (Local Loopback)
            RX packets 739  bytes 54099 (52.8 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 739  bytes 54099 (52.8 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

    I run this command to check if my device can hold the 9000 MTU and as you said above, and as shown below it should be able to deal with it.

    $ /sbin/ethtool enp0s25|grep -i 1000BaseT
    Cannot get wake-on-lan settings: Operation not permitted
                                1000baseT/Full 
                                1000baseT/Full 

    But when I try to change the MTU I get the following:

    $ sudo ifconfig enp0s25 mtu 9000
    SIOCSIFMTU: Invalid argument

     

    Nonetheless I tried to change it to a higher value greater than 1500, and 4000 was the top value accepted, more than 4000 gives me and invalid argument error.

    Why can't I change the value to 9000? 

    If I change the value to the local loop 'lo' to MTU 9000 is it going to make any improvements? I did change it, but I don't notice any change on speed with the samba server my router provides.

    I also changed the MTU value of 'enp0s25' to 4000 which is the highest accepted, will it help somehow too?

    Thanks in advance!

    Mu current ifconfig looks like this:

    ~$ ifconfig
    enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 4000
            inet 192.168.0.105  netmask 255.255.255.0  broadcast 192.168.0.255
            inet6 fe80::21b:d3ff:fede:14b0  prefixlen 64  scopeid 0x20<link>
            ether 00:1b:d3:de:14:b0  txqueuelen 1000  (Ethernet)
            RX packets 20219625  bytes 25418439567 (23.6 GiB)
            RX errors 46  dropped 0  overruns 0  frame 46
            TX packets 10013520  bytes 1575719035 (1.4 GiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
            device interrupt 20  memory 0xf4a00000-f4a20000  

    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 9000
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 0  (Local Loopback)
            RX packets 1095  bytes 79847 (77.9 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 1095  bytes 79847 (77.9 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

    View CommentView Comment
    • admin says:
      Firefox 29.0 Firefox 29.0 Windows 7 x64 Edition Windows 7 x64 Edition
      Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0

      Hello Rodrigo,

      Perhaps you get the SIOCSIFMTU: Invalid argument error because  your device / router / Linux is not supporting an MTU of 9000, try to set lower MTU’s decrementing with 1000, i.e. try MTU of 8000, 7000 and see with which one yours will work, then check out if there is improvement in performance. I can’t tell you whether performance improvement will be drastical you have to do some benchmarking and see how this changes things.

      Hope my answer helps somehow.

      View CommentView Comment
  2. Anti-CMOS says:
    Firefox 38.0 Firefox 38.0 Windows 7 x64 Edition Windows 7 x64 Edition
    Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0

    This info is somewhat misleading. Increasing your MTU will _NOT_ give you any more bandwidth, 1Gbit is 1Gbit no matter what way you slice it. What it does do is decrease the packet traffic on your Network as you can now fit 9KB of data in a packet instead of 1.5KB of data, so less packets for the same amount of throughput. You only need to do “Jumbo Framing” (Anything over 1500 MTU) if your on a very chatty network and want to knock down packet traffic, you will not increase bandwidth in anyway, again 1Gbit is 1Gbit (or 10Mbit, 100Mbit, etc.).

    View CommentView Comment