|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (17)
просмотр истории страницыНовые и старые пользователи Carbon Reductor часто просят дать рекомендацию по подбору оборудования, причём довольно таки конкретную. |
Увы, тестированием большого количества разного железа в рамках компании мы заняться не можем, но хотя бы попробуем составить список уже используемого оборудования, которое ни разу не напрягало показывало себя с плохой стороны после соответствующих настроек. |
|
{toc} |
|
|
h1. Сетевые карты |
Многие сетевые карты не могут до конца закрыть свой потенциал из коробки и часто приходится их немного тюнить. Не стоит считать что если вы засунули классную и дорогую 10гбит/с карту в сервер, то потерь точно не будет. |
Большинство сетевых карт имеют неоптимальные настройки по умолчанию, что может приводить к пропускам. Carbon Reductor настраивает часть параметров автоматически при загрузке. |
|
Однако после грамотной настройки на многих сетевых картах можно добиться очень высокой производительности. |
Распределение прерываний (RSS) опасно настраивать автоматически: сетевая карта может "зависнуть", а для многопроцессорных систем сложно определить его оптимальную конфигурацию, поэтому мы настраиваем эту опцию только вручную. |
|
h2. Melanox |
При установке нового оборудования обращайтесь в техническую поддержку - мы поможем исключить потери пакетов и подтвердим, что оборудование справляется с текущей нагрузкой. || Вендор || Модель || Тип || Число \\ очередей \\ (макс.) || Размер \\ буфера \\ (макс.) || Макс. наблюдавшаяся \\ нагрузка {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* |
|
h3. Mellanox Technologies MT27520 Family \[ConnectX-3 Pro\] |
{color:#333333}Из коробки иногда не хватает значения rx_frag_size, из-за чего растёт счётчик dropped пакетов, но решается очень просто:{color} |
|
Одна из лучших сетевых карт, с которыми доводилось иметь дело. Имеет несколько очередей и большой rx-буфер. |
{code} |
[root@carbon2 carbon]# ethtool -l eth2 Channel parameters for eth2: Pre-set maximums: RX: 128 TX: 32 Other: 0 Combined: 0 Current hardware settings: RX: 8 TX: 12 Other: 0 Combined: 0 {code} Но есть небольшая особенность, доставляющая небольшие неудобства в системах с 6 ядрами на процессор: не удаётся задать число RX-очередей не кратное степени двойки. При задании, к примеру 6, работают только 4 очереди, а две не получают прерывания. На 4, 8 и 16 ядерных процессорах всё идеально. h2. Broadcom / Emulex h3. NetXtreme BCM5720 h3. Emulex Corporation OneConnect 10Gb NIC (be3) (rev 02) / Emulex Corporation Device e729 Максимальный RX-буфер: 1024 По умолчанию имеет 4 очереди. {code} [root@carbon ~]# ethtool -l eth0 Channel parameters for eth0: Pre-set maximums: RX: 0 TX: 0 Other: 0 Combined: 4 Current hardware settings: RX: 0 TX: 0 Other: 0 Combined: 3 [root@carbon ~]# ethtool -g eth0 Ring parameters for eth0: Pre-set maximums: RX: 1024 RX Mini: 0 RX Jumbo: 0 TX: 2048 Current hardware settings: RX: 1024 RX Mini: 0 RX Jumbo: 0 TX: 2048 {code} Из коробки иногда не хватает значения rx_frag_size, из-за чего растёт счётчик dropped пакетов, но решается очень просто: {code} |
echo options be2net rx_frag_size=4096 rx_frag_size=8192 > /etc/modprobe.d/be2net.conf |
reboot {code} |
h2. Intel Хоть они и хороши, если возникнут проблемы - [есть статья|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=65799130]. h3. I210 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03), Subsystem: Super Micro Computer Inc Device 1533 Максимальный RX-буфер: 4096 По умолчанию 4 rxtx очереди на 4 ядрах *Внимание*: Иногда имеет проблемы при работе на дефолтном модуле ядра. В одном случае с 2xVlan в зеркале это удалось победить [установкой последней версии драйвера, собранного с опцией IGB_NO_LRO.|reductor5:Сборка драйвера IGB без LRO] h3. I211 Ethernet controller: Intel Corporation I211 Gigabit Network Connection h3. I350 h3. 82576 h3. 82599ES Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP\+ Network Connection (rev 01) Максимальный RX-буфер: 4096 По умолчанию 4 rxtx очереди на 4 ядрах 2 порта под SFP h3. 82599EB h3. 82599EN 1 порт под SFP |