This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

omap-l137 MTU increase

Other Parts Discussed in Thread: OMAP-L137

I am developing an acquisition system based on OMAP-L137 EVM.
It is configured as a TCP/IP server on eth0 @ 100 Mbit.
Once it is enabled by the client application running on a PC,
the server continuously and autonomously delivers sampled data packets  @ 64 Hz
to the client application.
Increasing the number of sampled channels and their sampling rate, will increas data packet size,
up to more than 16 Kbytes.
I note that when the packet size is approaching 16K, the time required for the packet transmission,
(1460 mtu MTU frames and their ACK) is more than 16 ms....
so that the acquisition will come to an halt for overrun on server data transmit buffer.

I believe that increasing MTU size will solve my problem.
At present, I could reduce MTU:
#ifconfig eth0 192.168.1.72 mtu 1000 up
actually leads to

# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr EA:7A:F8:5D:43:78
          inet addr:192.168.1.72  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1000  Metric:1
          RX packets:1215659 errors:0 dropped:134 overruns:0 frame:0
          TX packets:3188019 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:75042597 (71.5 MiB)  TX bytes:61069138 (58.2 MiB)
          Interrupt:33

Data collection works, and I can see by means of wireshark that server mtu is actually reduced to 960

I would like to increase MTU...

# ifconfig eth0 192.168.1.72 mtu 5000 up
# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr EA:7A:F8:5D:43:78
          inet addr:192.168.1.72  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:5000  Metric:1
          RX packets:1215737 errors:0 dropped:134 overruns:0 frame:0
          TX packets:3188019 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:75049773 (71.5 MiB)  TX bytes:61069138 (58.2 MiB)
          Interrupt:33

It seems to work, but even if the client PC ETH card has "jumbo frame support enabled", increasing the server MTU to more that 1500
actually prevents any data packets to be delivered.

I cannot figure out if a kernel patch/update is required in order to increase MTU.

I am using Linux arago 2.6.37
1)Is Gbit support strictly required ?
2)Some patch/update is required ?

Thank you for your attention.

 

 


 

 

 

  • I missed to stress that on my target OMAP-L137 EMAC is tied to Micrel KSz8893 100 MBit two port switch,
    exactly as in EVM....it can be programmed through I2C.
    Micrel KSz8893 works ONLY @ 100 Mbit, so my first question is solved...
    Moreover I found that Micrel KSz8893  can be enabled to rise MTU up to .. 1913 bytes....sigh ! 
    I believe that some modifications must be made anyway to the kernel.

    Thank you for any help about TCP/IP tuning for max transfer rate.