Назад | Перейти на главную страницу

Настройка MTU CentOS 7 не работает

Я использую CentOS 7 для проверки производительности сети.

The interface setting is normal like that : 

saberin@localhost ~]$ ifconfig
enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.40.196.150  netmask 255.255.255.0  broadcast 10.40.196.255
        ether 00:21:cc:70:ec:c9  txqueuelen 1000  (Ethernet)
        RX packets 65474511  bytes 67755018554 (63.1 GiB)
        RX errors 0  dropped 7864  overruns 0  frame 0
        TX packets 49148000  bytes 63929988549 (59.5 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf3900000-f3920000

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 7436  bytes 2079869 (1.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7436  bytes 2079869 (1.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Однако, когда я проверял захваченный трафик, я обнаружил:

No.     Time      Source           Destination  Pro Length Info
...
15369   7.068528 10.40.196.150 -> 10.40.198.104 TCP 14548 51745 > commplex-link [ACK] Seq=48889881 Ack=1 Win=29312 Len=14480 TSval=1208291043 TSecr=1298215864
15370   7.068650 10.40.196.150 -> 10.40.198.104 TCP 14548 51745 > commplex-link [ACK] Seq=48904361 Ack=1 Win=29312 Len=14480 TSval=1208291043 TSecr=1298215864
15371   7.068772 10.40.196.150 -> 10.40.198.104 TCP 14548 51745 > commplex-link [ACK] Seq=48918841 Ack=1 Win=29312 Len=14480 TSval=1208291043 TSecr=1298215864
15372   7.068892 10.40.196.150 -> 10.40.198.104 TCP 14548 51745 > commplex-link [ACK] Seq=48933321 Ack=1 Win=29312 Len=14480 TSval=1208291043 TSecr=1298215864
...

длина кадра 14548 байт! намного больше, чем MTU интерфейса.

Может кто-нибудь дать мне подсказку?

Получил ответ. Используемая мною сетевая карта имеет функцию tso, которая объединяет полученные кадры. Чтобы включить / отключить его:

ethtool -K enp0s25 tso off/on

В моем случае просто нужно отключить.