Системные требования

Skip to end of metadata
Go to start of metadata

Кратко

Для Carbon Reductor в сервере в основном важны три вещи: хорошие сетевые карты, хороший процессор и хорошая оперативная память.

Carbon Reductor должен использовать сервер исключительно один, несогласованное программное обеспечение устанавливать запрещено.

Для установки требуется минимум 50Гб свободного места на диске. Рекомендуемый объём диска - 500Гб и более.

Перед вводом сервера в эксплуатацию обязательно отключите все опции связанные с энергосбережением в BIOS/UEFI

Рекомендуемые конфигурации

Все представленные примеры подобраны с учётом "поставить и не беспокоиться ни за один потенциально потерянный пакет", то есть имеет место запас производительности. При появлении новых требований Роскомнадзора по фильтрации трафика продукт может изменяться и требования для надёжной работы будут изменяться соответственно. Данные указаны по суммарному объёму отправляемого для анализа зеркала трафика.

Нагрузка, до гбит/сек Ориентировочная цена Тип сервера Процессор Оперативная память Материнская плата, платформа Сетевые карты
1 42000₽ / $630 ATX 1 x Intel Core i3 8100 3.6GHz, 4 ядра 1 x 8Gb DDR4 2400MHz H310M или любая другая с LGA1151v2 сокетом 1 х Intel I350-T2, 1Гбит/сек, RJ45
1 108000₽ / $1600 1U 1 x Intel Xeon E3-1240v6, 3.7GHz, 4 ядра 2 x 4Gb DDR4 2133MHz, ECC SL1000/1U2G4 1 x Intel I350-T2, 1Гбит/сек, RJ45
2 45000₽ / $670 ATX 1 x Intel Core i3 8350k, 4GHz, 4 ядра 1 x 8Gb DDR4 2400MHz H310M или любая другая с LGA1151v2 сокетом 1 х Intel I350-T2, 1Гбит/сек, RJ45
2 123500₽ / $1840 1U 1 x Intel Xeon E3-1285v6, 4.1GHz, 4 ядра 2 x 4Gb DDR4 2133MHz, ECC SL1000/1U2G4 1 x Intel I350-T2, 1Гбит/сек, RJ45
3 55000₽ / $820 ATX 1 x Intel Core i5-9600k, 3.7GHz, 6 ядер 1 x 8Gb DDR4 2400MHz H310M или любая другая с LGA1151v2 сокетом 1 x Intel 82599en, single port, 10Гбит/сек, SFP+
3 260000₽ / $3900 1U 1 x Intel Xeon E5-1680v6, 3.4GHz, 8 ядер 1x8Gb DDR4 2400MHz, ECC SL1500/1U2G4 1 x Intel 82599, dual port, 10Гбит/сек, SFP+
4 70500₽ / $1050 ATX 1 x Intel Core i7 9700k, 3.6GHz, 8 ядер 1 x 8Gb DDR4 2400MHz H310M или любая другая с LGA1151v2 сокетом 1 x Mellanox ConnectX-3 MCX311A-XCCT, single-port, 10Гбит/сек
5 458000₽ / $6850 ATX 2 x Intel Xeon E5-2667 V4, 3.2GHz, 8 ядер 2 x 8Gb DDR4 2400MHz HP Proliant ML350 G9 SFF CTO 2 x Mellanox ConnectX-3 MCX311A-XCCT, single-port, 10Гбит/сек
5 568000₽ / $8500 2U 2 x Intel Xeon E5-2667V4, 3.2GHz, 8 ядер 2 x 8Gb DDR4 2666MHz ECC SL2500/2U8LG3 2 x Intel 82599, dual port, 10Гбит/сек, SFP+
6 186000₽ / $2800 ATX 1 x Intel Core i9-7960X, 2.8GHz, 16 ядер 1 x 8Gb DDR4 2666MHz MSI X299 SLI PLUS или любая другая с LGA2066 сокетом 1 x Mellanox ConnectX-3 MCX311A-XCCT, single-port, 10Гбит/сек
7 490000₽ / $7300 ATX 2 x Intel Xeon E5-2687W v4, 3GHz, 12 ядер 2 x 8Gb DDR4 2400MHz HP Proliant ML350 G9 SFF CTO 2 x Intel 82599, dual port, 10Гбит/сек, SFP+
10 710000₽ / $10600 1U 2 x Intel Xeon Gold 6154, 3GHz, 18 ядер 2 x 8Gb DDR4 2666MHz SuperServer 1029P-WT 2 x Mellanox ConnectX-3 MCX311A-XCCT, single-port, 10Гбит/сек
16 720000₽ / $10750 1U 2 x Intel Xeon Gold 6154, 3GHz, 18 ядер 2 x 8Gb DDR4 2666MHz SuperServer 1029P-WT 2 x Mellanox ConnectX-3 MCX312B-XCCT, dual-port, 10Гбит/сек

Типы серверов

Тип сервера Описание Плюсы Минусы
ATX Самостоятельно собранный или заказанный сервер из десктопных компонентов
Такие сервера имеют высокую производительность за низкую цену.
С их помощью очень легко масштабироваться в ширину.
Компоненты легко приобрести.
Менее надёжны.
Не получится поставить в стандартную серверную стойку.
1U, 2U Одноюнитовые и двухюнитовые сервера для установки в стойку.
Верхний сегмент таких серверов позволяет проводить вертикальное масштабирование, то есть обрабатывать больший объём трафика в рамках одного сервера.
Высокая надёжность.
Чем меньше серверов - тем проще их администрировать.
Высокая цена.
На некоторые модели сложно найти поставщика.

Процессоры

  • гипертрединг - нужно отключать. число ядер (cores) у процессоров ниже указано с учётом отключенного гипертрединга.
  • 4+ ядра - хорошо
  • Intel - хорошо, с AMD могут быть проблемы
  • Чем больше L3 кэш, тем лучше.
  • 3GHz+ частота - хорошо
  • очень много ядер, но с маленькой частотой - не хорошо.
  • несколько socket'ов (физических процессоров):
    • если используется несколько сетевых карт для зеркала - хорошо
    • если одна - имеет мало смысла и в некоторых случаях может быть хуже, чем на одном сокете.
    • если у материнской платы один PCI слот или оба привязаны к одному процессору - плохо.
Трафик Однопроцессорное решение
Многопроцессорное решение
16 Гбит/сек +
Здесь не получится обойтись одним процессором. Можно масштабироваться
по числу серверов: на каждую точку съёма зеркала трафика установить
отдельный недорогой сервер. Это окажется дешевле при покупке, но, возможно, усложнит эксплуатацию (все сервера нужно администрировать).
  • Intel® Xeon® Gold 6154 Processor, 3,00GHz, 4 sockets, 18 cores, 25M L3 cache
  • Intel® Xeon® Gold 6144 Processor, 3.50 GHz, 4 sockets, 8 cores, 25M L3 cache
  • Intel® Xeon® E5-2687W v4 @ 3.00GHz, 2 sockets, 12 cores, 30M L3 cache
  • Intel® Xeon® E5-2689 v4 @3.10GHz, 2 sockets, 10 cores/socket, 25M L3 cache
  • Intel® Xeon® E5-2690 @ 2.90GHz, 2 sockets, 8 cores/socket, 20M L3 cache
до 6 Гбит/сек
  • Intel(R) Xeon(R) CPU W-2145 @ 3.70GHz, 8 cores, 11M L3 cache
  • Intel(R) Xeon(R) CPU E5-1680 v4 @ 3.40GHz, 8 cores, 20M L3 cache
  • Intel(R) Xeon(R) E5-2667 V4 @ 3.20GHz, 8 cores, 25M L3 cache
  • Intel(R) Xeon(R) CPU E5-1660 v2 @ 3.30GHz, 6 cores, 16M L3 cache
  • Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz, 4 cores, 8M L3 cache
  • Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz, 4 cores, 8M L3 cache
  • Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1246 v3 @ 3.50GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1270 v3 @ 3.50GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1230 v5 @ 3.40GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1240 v3 @ 3.40GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1270 @ 3.40GHz, 4 cores, 8M L3 cache
  • Intel(R) Core(TM) i5-3570 CPU @ 3.40GHz, 4 cores, 6M L3 cache
  • Intel(R) Xeon(R) CPU E3-1240 @ 3.30GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1230 v3 @ 3.30GHz, 4 cores, 8M L3 cache
  • Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz, 4 cores, 6M L3 cache
  • Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz, 4 cores, 6M L3 cache
  • Intel(R) Xeon(R) CPU E3-1220 V2 @ 3.10GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E3-1220 v3 @ 3.10GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU X3440 @ 2.53GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz, 2 sockets, 6 cores/socket, 16M L3 cache
  • Intel(R) Xeon(R) CPU X5650 @ 2.67GHz, 2 sockets, 6 cores/socket, 12M L3 cache
  • Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz, 2 sockets, 6 cores/socket, 16M L3 cache
  • Intel(R) Xeon(R) CPU E5-2609 v2 @ 2.50GHz, 2 sockets, 4 cores/socket, 10M L3 cache
  • Intel(R) Xeon(R) CPU X5570 @ 2.93GHz, 2 sockets, 4 cores/socket, 8M L3 cache
  • Intel(R) Xeon(R) CPU E5645 @ 2.40GHz, 2 sockets, 6 cores/socket, 12M L3 cache
  • Intel(R) Xeon(R) CPU E5530 @ 2.40GHz, 2 sockets, 4 cores/socket, 8M L3 cache
до 200 Мбит/сек
  • Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz, 6 cores, 16M L3 cache
  • Intel(R) Xeon(R) CPU E5504 @ 2.00GHz, 4 cores, 4M L3 cache
  • Intel(R) Xeon(R) CPU E5607 @ 2.27GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E5620 @ 2.40GHz, 4 cores, 12M L3 cache
  • Intel(R) Xeon(R) CPU L5335 @ 2.00GHz, 4 cores, no L3 cache
  • Intel(R) Xeon(R) CPU X3220 @ 2.40GHz, 4 cores, no L3 cache
  • Intel(R) Xeon(R) CPU E3-1240L v3 @ 2.00GHz, 4 cores, 8M L3 cache
  • Intel(R) Xeon(R) CPU E5-2603 v3 @ 1.60GHz, 6 cores, 16M L3 cache
  • Intel(R) Xeon(R) CPU E5410 @ 2.33GHz, 4 cores/socket, no L3 cache
  • Intel(R) Xeon(R) CPU 5130 @ 2.00GHz, 2 sockets, 2cores/socket, no L3 cache
  • Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz, 2 socket, 6 cores/socket 16M L3 cache.
  • Intel(R) Xeon(R) CPU E5-2640 v2 @ 2.00GHz, 2 sockets, 8 cores/socket, 20M L3 cache
  • Intel(R) Xeon(R) CPU E5345 @ 2.33GHz, 2 sockets, 4 cores/socket, no L3 cache
  • Intel(R) Xeon(R) CPU E5405 @ 2.00GHz, 2 sockets, 4 cores/socket, no L3 cache
  • Intel(R) Xeon(R) CPU E5430 @ 2.66GHz, 2 socket, 4 core/socket, no L3 cache
  • Intel(R) Xeon(R) CPU L5520 @ 2.27GHz, 2 sockets, 4 cores/socket, 8M L3 cache
    Примечание: как правило эти процессоры либо устаревшие, либо не предназначены
    для low-latency задач, таких как фильтрация трафика. Лучше использовать однопроцессорные решения.

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

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

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

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

Рекомендованные

Вендор Модель Тип Число
очередей
(макс.)
Размер
буфера
(макс.)
Макс. наблюдавшаяся
нагрузка на 1 порт с
отсутствием потерь и
др. проблем
Проблемы
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 82599ES, 82599EB (2 порта)
82599EN (1 порт)
(ixgbe driver)
10 Гбит/сек combined=63 rx=4096
tx=4096
3.5 гбит/сек Нужно отключать опции LRO и GRO.
В остальном хороши, популярны, легко купить
замену при  необходимости
Intel X710 (i40e driver) 10 Гбит/сек combined=64 rx=4096 4.5 Гбит/сек Скорее всего способна обрабатывать и больший
объём трафика.
Intel I210, I211, I350
(igb driver)
82576, 82575EB
1 Гбит/сек combined=8
(иногда rx и
tx очереди
раздельны)
rx=4096
tx=4096
800 мбит/сек В некоторых ситуациях требует
пересборки драйвера без поддержки
LRO, в противных случаях зависает.

Проблемные, не рекомендуется использовать в продакшне

Наша компания давно работает с операторами связи. Несмотря на то что мы пишем софт, нам часто приходится помогать своим клиентам решать проблемы с оборудованием.

И пришли к выводу: категорически запрещено использовать D-Link / Realtek  и другие дешёвые сетевые карты, для чего-то кроме рабочих станций.

Возможно как железо они не так уж и плохи, но дело в их драйвере:

  1. Одна очередь на rxtx, вне зависимости от числа доступных ядер процессора.
  2. Отсутствие возможности задать параметры размеров ring-буферов сетевой карты (маленький буфер приводит к потерям)
  3. Отсутствие возможности задания coalesce-параметров, нам важен rx-usecs, за счёт его уменьшения можно снизить нагрузку с сетевой карты, увеличив нагрузку на процессор.
  4. Отсутствие поддержки NAPI драйвером.
Вендор Модель Тип Число
очередей
(макс.)
Размер
буфера
(макс.)
Макс. наблюдавшаяся
нагрузка на 1 порт с
отсутствием потерь и
др. проблем
Проблемы
Intel 80003ES2LAN, 82541GI
82541PI, 82574L, 82540EM
82545EM, 82579LM, 82578DM
82571EB, 82573L, 82573E
82578DC, 82546EB, 82546GB
I219-V, I217
1 Гбит/сек other=1 rx=4096 ? Хоть мы и рекомендуем Intel, но конкретно эти модели брать
не советуем. Только одна очередь, в итоге всем будет заниматься только одно ядро процессора. Автоматическая настройка RPS
сглаживает это, но как правило проблемы сохраняются.

Для рабочей станции эти сетевые карты подходят,
но для сервера фильтрации - не очень.
VMware VMXNET3 1 Гбит/сек combined=? rx=4096 0 мбит/сек Виртуальные машины не способны предоставлять
гарантированную скорость реакции. Тем не менее
это один из лучших драйверов для виртуальных
сетевых карт.
VMware VMXNET 1 Гбит/сек other=1 ?   Лучше выберите VMXNET3.
Red Hat, Inc Virtio ? ? ? ? ?
Broadcom
Emulex
NetXtreme BCM5720 1 Гбит/сек rx=4 (?) rx=2047 ?  
Broadcom NetXtreme: BCM5701, BCM5704
BCM5714, BCM5715, BCM5719 (?)
1 Гбит/сек other=1 rx=511 ? 1 очередь, малый буфер
Не распределяют нагрузку между ядрами, если поступает
 тегированный (VLAN, QinQ) или VPN трафик.
Broadcom NetXtreme BCM5708S 1 Гбит/сек other=1 rx=2040 ? 1 очередь
Broadcom NetXtreme II: BCM5708, BCM5709
BCM5716, BCM5721, BCM5722
1 Гбит/сек combined=8
?
rx=2040 ? Возможно нормальная, а проблема была
в распределении прерываний при наличии
VPN / VLAN / QinQ в трафике, вся нагрузка
падала на первую очередь.
NVIDIA MCP55 1 Гбит/сек   rx=16384 ? Несмотря на огромный буфер плохо
справляется с нагрузкой, 1 очередь
Via Technologies
D-Link, Realtek,
Qualcomm Atheros
3Com, Marvell,
QLogic, NC326i,
TP-Link
           
Chelsio (cxgb3) n320e
10 Гбит/сек 4 rx=1024
(потенциально
rx=16384)
900мбит/сек Не получается увеличить размер буфера до максимально возможного, любые действия направленные
на изменение размера буферов с помощью ethtool всегда возвращают ошибку Device is busy.
При превышении нагрузки в 1.2Гбит/сек при задействовании 4 ядер 3.5GHz возникают time squeeze. 
Нагрузка на CPU при этом довольно высокая, ≈180000 пакетов/сек приводят к ≈55000 прерываний/сек. 
В top нагрузка от обработки прерываний (%si) отображается пиками, 3-10% поднимаются до 30-45%. 
В теории решение проблемы с увеличением буфера до максимума должно помочь. 
Игнорирует параметры ethtool -C eth0 rx-usecs.

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

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

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

Оперативная память

Рекомендуем использовать от 8 до 16 Гб DDR4 или DDR3 памяти.

При высокой нагрузке рекомендуется использование DDR4 с высокой частотой. При использовании многопроцессорных систем обычно нужно устанавливать для каждого процессора собственную планку оперативной памяти в связанный с ним канал.

Не рекомендуем использовать DDR1 или DDR2 из-за малой частоты.

Жёсткий диск

Рекомендуем для использовать накопители ёмкостью 128Гб и более.

Для Carbon Reductor необходимо 50Гб для выполнения процесса установки, в противном случае установка не выполянется.

Материнские платы

  • Supermicro X11DDW-L – в плате расширения один слот привязан к CPU1, другой к CPU2, это может быть неочевидно. В случае если все сетевые карты привязаны к одному процессору - воспользуйтесь вторым PCI-E слотом.

Метки

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.