Я пытаюсь проверить пропускную способность между двумя компьютерами, подключенными напрямую через 1 GbE, и тестирую с помощью iperf. Я получаю пропускную способность около 980 Мбит / с, когда MTU находится между 5000 и 5050, однако она резко падает до 680 Мбит / с, что выше MTU = 5050. Я проверил различные размеры окна, но с тем же результатом. Увеличение MTU должно уменьшить накладные расходы и, следовательно, должно увеличить пропускную способность или, по крайней мере, не должно падать. Я не могу понять это странное поведение. Кстати тестирование пропускной способности TCP. Любая помощь ! и спасибо, ребята. Это мой пост когда-либо на любом форуме :) Обычно я нахожу ответы ....

Дополнительная информация! Две сентиментальные системы, одна из них - хост Xen 4.2 (но это не должно быть проблемой). Проверено с различными размерами буфера в /pro /sys /net /ipv4, но результата нет. Задержка составляет 0,2 мс.

1 ответ1

0

Это почти наверняка является узким местом производительности конкретной реализации где-то. Вы правы в том, что при прочих равных условиях увеличение MTU приведет к снижению издержек и, следовательно, к повышению производительности. Но другие вещи редко бывают равными ... здесь некоторая часть кода пересылки / перемещения пакетов, вероятно, имеет базовый размер буфера 5 КБ или что-то в этом роде, поэтому, когда вы пересекаете этот барьер, вы внезапно спрашиваете систему сделать вдвое больше работы.

Один из способов поддержать эту теорию - еще больше увеличить MTU. Если вы видите большое падение на 5 КБ, но после этого ваша производительность улучшается, вы почти наверняка достигнете некоторого порога размера буфера где-нибудь в пути кода.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .