1

У меня проблемы с получением ожидаемой пропускной способности 10-гигабитного Intel 82599EB с двумя портами. Я перепробовал много вещей и хочу знать, могу ли я попробовать что-то, что я пропустил.

Моя аппаратная конфигурация

Два сервера с OpenSUSE и двойным портом Intel 82599EB 10GbE на каждом. Они вручную настроены на статические IP-адреса, и каждый порт на одном компьютере подключен к порту на втором.

lspci -vv

Тест пропускной способности

Я использую iperf для тестирования. Карты везут по ixgbe.

На стороне получателя я бегу

iperf -s

На стороне передатчика:

iperf -c 192.168.1.10 -t 20 -B 192.168.1.20
iperf -c 192.168.1.11 -t 20 -B 192.168.1.21

И теперь я получаю около 4.x Гб на интерфейс. Если я запускаю только один интерфейс, я получаю 9.x Гб.

Попытки конфигурации

Я просмотрел сайты SE и много других статей. Вот три полезных, которые я нашел.

  1. Подключение к сети - настройка пропускной способности сетевого адаптера Intel®
  2. https://www.kernel.org/doc/Documentation/networking/ixgbe.txt
  3. http://www.redhat.com/promo/summit/2008/downloads/pdf/Thursday/Mark_Wagner.pdf (PDF)

Две вещи, которые действительно помогли:

  1. Использование гигантских кадров, установив MTU на 9000.
  2. Увеличение настроек rmem в /etc/sysctl.conf

Тем не менее, я все еще работаю на 9.5Gbe вместе для обоих каналов. Я думаю, что я должен получить 9Gbe или больше за канал.

Вещи, которые я пробовал без особого успеха:

  • Использовал ethtool -c для изменения объединения прерываний
  • Использовал ethtool для отключения / включения управления потоком

Редактирует согласно комментариям

Для проверки загрузки процессора я использую mpstat -P ALL 5 . На передающем сервере я вижу 61% загрузки.

01:12:59 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
...
01:12:59 PM    4    0.00    0.00   61.33    0.00    0.00    9.38    0.00    0.00   29.29

Это должно быть хорошо, верно? На ресивере вижу макс 30%.

Используя lspci, я получил следующее. Я могу опубликовать полные результаты при необходимости, но думаю, что это показывает необходимую информацию о pcie:

Отправитель:

1: LnkCap: Port #16, Speed 5GT/s, Width x8, ASPM L0s, Latency L0 <2us, L1 <32us
                        ClockPM- Surprise- LLActRep- BwNot-
   LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk-
                    ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
   LnkSta: Speed 5GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
   DevCap2: Completion Timeout: Range ABCD, TimeoutDis+
   DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
   LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                     Compliance De-emphasis: -6dB
2: LnkCap: Port #16, Speed 5GT/s, Width x8, ASPM L0s, Latency L0 <2us, L1 <32us
                        ClockPM- Surprise- LLActRep- BwNot-
   LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk-
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
   LnkSta: Speed 5GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
   DevCap2: Completion Timeout: Range ABCD, TimeoutDis+
   DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
   LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
   Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                         Compliance De-emphasis: -6dB

Получатель:

 1: LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Latency L0 <1us, L1 <8us
                        ClockPM- Surprise- LLActRep- BwNot-
    LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
    LnkSta: Speed 5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
    DevCap2: Completion Timeout: Range ABCD, TimeoutDis+
    DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
    LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                             Compliance De-emphasis: -6dB
2: LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Latency L0 <1us, L1 <8us
                        ClockPM- Surprise- LLActRep- BwNot-
   LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
   LnkSta: Speed 5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
   DevCap2: Completion Timeout: Range ABCD, TimeoutDis+
   DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
   LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB
   Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                         Compliance De-emphasis: -6dB

5 G/T на x8 должно быть много, верно?

0