Объединение двух сетевых карт: iperf показывает 200 МБ / с загрузок, но только 100 МБ / с
Я имею:
- Один клиент с двумя сетевыми картами 1000 Мбит / с, объединенных с использованием метода циклического перебора
- Один мастер с сетевой картой 10 Гбит / с
Они связаны с коммутатором Huawei 10G (S5700).
Потом я побежал iperf -s
на мастера и iperf -c MASTER.IP
, он сообщает о пропускной способности 215MB/s
, как я и предполагал.
Но когда я пытался iperf -s
на клиенте и iperf -c CLIENT.IP
на мастере, он сообщает о пропускной способности только 120MB/s
Похоже, используется только один сетевой интерфейс.
Обе машины работают под управлением CentOS 7, и вот моя командная конфигурация:
ifcfg-team0:
DEVICE="team0"
DEVICETYPE="Team"
ONBOOT="yes"
BOOTPROTO="none"
NETMASK=255.255.255.0
IPADDR=192.168.42.1
TEAM_CONFIG='{"runner": {"name": "roundrobin"}}'
ifcfg-enp2s0f0:
DEVICE="enp2s0f0"
DEVICETYPE="TeamPort"
ONBOOT="yes"
BOOTPROTO="none"
TEAM_MASTER="team0"
(а также ifcfg-enp2s0f1
который почти идентичен ifcfg-enp2s0f0
)
Есть идеи? Большое спасибо.
1 ответ
С точки зрения связанной системы:
- Передача выходит двумя рабами
- Получать приходит в один раб
Несмотря на то, что это протокол TCP, и он, вероятно, очень не в порядке из-за циклического соединения, ваша передача достигает 1,8 Гбит / с по двум интерфейсам 1 Гбит / с.
Тем не менее, коммутатор не имеет никакой конфигурации для балансировки нагрузки обратно в систему, поэтому вы ограничены скоростью, с которой один ведомый возвращается обратно в другую сторону.