Просмотр Исходного

Новые и старые пользователи Carbon Reductor часто просят дать рекомендацию по подбору оборудования, причём довольно таки конкретную.

Увы, тестированием большого количества разного железа в рамках компании мы заняться не можем, но хотя бы попробуем составить список уже используемого оборудования, которое ни разу не показывало себя с плохой стороны после соответствующих настроек.


h1. Сетевые карты

Большинство сетевых карт имеют неоптимальные настройки по умолчанию, что может приводить к пропускам. Carbon Reductor настраивает часть параметров автоматически при загрузке.

Распределение прерываний (RSS) опасно настраивать автоматически: сетевая карта может "зависнуть", а для многопроцессорных систем сложно определить его оптимальную конфигурацию, поэтому мы настраиваем эту опцию только вручную.

При установке нового оборудования обращайтесь в техническую поддержку - мы поможем исключить потери пакетов и подтвердим, что оборудование справляется с текущей нагрузкой.
|| Вендор || Модель || Тип || Число \\
очередей \\
(макс.) || Размер \\
буфера \\
(макс.) || Макс. наблюдавшаяся \\
нагрузка {color:#000000}{*}на 1 порт *{color}с \\
отсутствием потерь и \\
др. проблем || Проблемы ||
| Mellanox | MT27520 Family \\
\[ConnectX-3 Pro\] | 10 Гбит/сек | rx=128 | rx=8192 | 6.5 Гбит/сек | Число очередей может быть равным  \\
только степени двойки, неоптимально \\
на 6-ядерных процессорах |
| Broadcom \\
Emulex | OneConnect 10Gb NIC (be3) \\
Device e729 | 10 Гбит/сек | combined=4 | rx=1024 \\
tx=2048 | 1 Гбит/сек | Малое максимальное число \\
очередей, малый размер rx-буфера. \\
Подойдёт для 800-900мбит/сек. \\
Нужно увеличивать параметр модуля \\
rx_frag_size *\** |
| Intel | X710 (i40e driver) | 10 Гбит/сек | combined=64 | rx=4096 | 4.5 Гбит/сек | Скорее всего способна обрабатывать и больший \\
объём трафика. |
| Intel | 82599ES, 82599EB (2 порта) \\
82599EN (1 порт) \\
(ixgbe driver) | 10 Гбит/сек | combined=63 | rx=4096 \\
tx=4096 | 3.5 гбит/сек | Нужно [отключать опции LRO и GRO|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=65799130]. \\
В остальном хороши, популярны, легко купить \\
замену при  необходимости |
| Intel | I210, I211, I350 \\
(igb driver) \\
82576, 82575EB \\ | 1 Гбит/сек | combined=8 \\
(иногда rx и \\
tx очереди \\
раздельны) | rx=4096 \\
tx=4096 | 800 мбит/сек | В некоторых ситуациях требует \\
пересборки драйвера без поддержки \\
LRO, в противных случаях зависает. |
| *НЕ* | *РЕКОМЕНДОВАННЫЕ* | *СЕТЕВЫЕ* | *КАРТЫ* | *ДЛЯ* | *ИСПОЛЬЗОВАНИЯ* | *В ПРОДАКШНЕ* |
| Intel | 80003ES2LAN, \\
I217-LM, I219-V \\
82578DM, \\
82571EB, \\
82541PI, \\
82540EM | 1 Гбит/сек | other=1 | rx=4096 | ? | 1 очередь. Автоматическая настройка \\
RPS несколько сглаживает это, но для \\
высокой нагрузки это не подходит. |
| VMware | VMXNET3 | 1 Гбит/сек | combined=? | rx=4096 | 0 мбит/сек | Виртуальные машины не способны предоставлять \\
гарантированную скорость реакции. Тем не менее \\
это один из лучших драйверов для виртуальных \\
сетевых карт. |
| VMware | VMXNET | 1 Гбит/сек | other=1 | ? | | Лучше выберите VMXNET3. |
| Red Hat, Inc | Virtio | ? | ? | ? | ? | ? |
| Intel | 82574L | 1 Гбит/сек | rx=1, tx=1 | rx=4096 | ? | 1 rx-очередь |
| Broadcom \\
Emulex | NetXtreme BCM5720 | 1 Гбит/сек | rx=4 \(?) | rx=2047 | ? | |
| Broadcom | NetXtreme BCM5701 \\
NetXtreme BCM5704 \\
NetXtreme BCM5714 \\
NetXtreme BCM5715 \\ | 1 Гбит/сек | other=1 | rx=511 | ? | 1 очередь, малый буфер |
| Broadcom | NetXtreme BCM5708S | 1 Гбит/сек | other=1 | rx=2040 | ? | 1 очередь |
| Broadcom | NetXtreme II BCM5708 \\
NetXtreme II BCM5709 \\
NetXtreme II BCM5716 | 1 Гбит/сек | combined=8 \\
? | rx=2040 | ? | Возможно нормальная, а проблема была \\
в распределении прерываний при наличии \\
VPN / VLAN / QinQ в трафике, вся нагрузка \\
падала на первую очередь. |
| NVIDIA | MCP55 | 1 Гбит/сек | | rx=16384 | ? | Несмотря на огромный буфер плохо \\
справляется с нагрузкой, 1 очередь |
| Via Technologies \\
D-Link \\
Realtek \\ | | | | | | |

*\* увеличение rx_frag_size для Emulex*


{color:#333333}Из коробки иногда не хватает значения rx_frag_size, из-за чего растёт счётчик dropped пакетов, но решается очень просто:{color}

{code}
echo options be2net rx_frag_size=8192 > /etc/modprobe.d/be2net.conf
reboot
{code}