Recommended equipment

    Вступление:

    Мы настоятельно рекомендуем использовать серверное оборудование для построения головной станции.

    И первый фактор - это конечно надежность. Серверные комплектующие разрабатываются для работы в режиме 24/7, проходят тестирование, и имеют гораздо большую наработку на отказ.

    Резервирование: cерверные системы как правило имеют несколько блоков питания, системы коррекции ошибок, (оперативная память с ECC, блоки питания с защитой от перенапряжения, многократно дублированная система охлаждения и т.д). К примеру - если для домашнего компьютера нормально при при повреждении данных в одном из модулей оперативной памяти "зависнуть" - то сервер просто отключит неисправный модуль и продолжит работу. Если же в одном из модулей возникает скрытый сбой - компьютер может работать непрдсказуемо: зависать, выводить разные ошибки и аварийно завершать работу программ. В случае сервера - и ECC оперативной памяти - данные будут восстановлены, а модуль помечен как неисправный. Это только один из десятков примеров, по которым мы рекомендуем использовать серверное оборудование. К тому - же, цены на сервера бывшие в употреблении - сейчас вполне демократичны:

    Image

    Network card:

    rx/tx buffer size

    Less than 1024 is not recommended
    2048-4096 - good
    8192 - excellent

    Number of queues

    Single-queue network cards are not recommended for use.
    (only one processor core will handle all interrupts)

    An example of a good network cards:

    INTEL 82599ES, 82599EB (2 порта)
    82599EN (1 порт)

    Mellanox MT27520

    SolarFlare SFN7122F


    Processors

    CPU frequency
    The optimal CPU frequency is 2.8 - 3GHz+, the higher - the better.

    Processors with a large number of cores, but low frequency - 1.8 - 2.2 GHz are not suitable for low-latency tasks. Low frequency results in slow data processing, and does not scale with the number of cores. In other words, the number of cores cannot overcome delays in packet processing. It is better not to buy such processors, they are designed for other tasks. (for example , databases, web servers, and other multithreaded applications)

    Processors without L3 cache
    Processors with L2-only cache may not be so bad, but in 99% it signals that the rest of the equipment (motherboard, RAM) is old and not suitable for use.

    An example of a good processor:

    Intel Xeon 10C E5-2680v2
    Xeon 8C E5-2670
    Intel Xeon 6C X5670
    Core i5-9600K


    RAM

    The frequency of RAM is also quite an important thing. Approximate figures for comparison:\

    DDR1 400 MHz - not suitable
    DDR2 600 MHz - suitable for small configurations (for example - receiving 10-15 channels and broadcasting them in udp)
    DDR3 1333-1600 MHz - suitable
    DDR4 2133-2800 MHz - suitable
    DDR4 2800-3400 Mhz - expensive and unnecessary
    

    The amount of RAM is important only for storing HLS chunks (segments).
    The average amount of RAM for 100 hls channels is 16Gb.


    Main reason:

    One queue per rx/tx, regardless of the number of processor cores available.
    The inability to set the size parameters of the ring buffers of the network card (small buffer leads to losses)

    Intel

    82541GI Gigabit Ethernet Controller (rev 05)
    82541PI Gigabit Ethernet Controller (rev 05)
    82574L Gigabit Network Connection
    82540EM Gigabit Ethernet Controller (rev 03)
    82545EM
    82579LM
    82571EB Gigabit Ethernet Controller (rev 06)
    82573L Gigabit Ethernet Controller
    82573E Gigabit Ethernet Controller (rev 03)
    82578DC Gigabit Network Connection (rev 06)
    82546EB Gigabit Ethernet Controller (rev 01)
    82546GB Gigabit Ethernet Controller (rev 03)
    I219-V (rev 31)
    I217
    Although we recommend Intel network cards, we do not recommend these models specifically.
    Only one queue and all data will be processed by only one processor core.

    Broadcom

    Broadcom Corporation NetXtreme BCM5701
    Broadcom Corporation NetXtreme BCM5704
    Broadcom Corporation NetXtreme BCM5715
    Broadcom Corporation NetXtreme BCM5719 - periodically appear dropped / missed at 256 mbit/s.
    Broadcom Corporation NetXtreme BCM5721
    Broadcom Corporation NetXtreme BCM5722
    Broadcom Corporation NetXtreme II BCM5708
    Broadcom Corporation NetXtreme II BCM5709 - although there are multiple queues, RSS can only start working on one of them, creating a high load on a single running kernel
    Broadcom Corporation NetXtreme II BCM5716 , supports allocation of interrupts to available cores, but still leaves the bulk of packets on the core 0

    Other network cards

    VIA Technologies, Inc. VT6105/VT6106S [Rhine-III] (rev 86)
    Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet
    Qualcomm Atheros AR8131 Gigabit Ethernet
    Qualcomm Atheros AR8132 Fast Ethernet
    Qualcomm Atheros AR8151 v2.0 Gigabit Ethernet (rev c0)
    3Com Corporation 3c905C-TX/TX-M [Tornado]
    Red Hat, Inc Virtio network device
    Marvell Technology Group Ltd. 88E8057 PCI-E Gigabit Ethernet Controller
    Marvell Technology Group Ltd. 88E8050 PCI-E ASF Gigabit Ethernet Controller
    QLogic Corp. cLOM8214 1/10GbE Controller (rev 54) - не работает изменение числа очередей, из коробки 3rx, 1rxtx.
    Network card NC326i

    NVIDIA

    Corporation MCP55 Ethernet (rev a3)
    Problems:

    only one queues.
    when specifying a range of cores, smp_affinity_list uses only the first kernel (bad driver)
    there is no possibility to specify the coalesce options.
    As a result, even with a small amount of traffic gives a very high load on the processor core, which is engaged in processing traffic from this network card, which leads to unacceptably slow packet processing.


    Digital Devices

    All the dvb cards from this company work well with the astra.
    DD Max S8 - 8 tuner S/S2 receiver + multiswitch
    DD Max A8i - 8 tuner DVB-C2/T2 ISDB-T receiver

    Дополнительное оборудование от DD

    DD RESI DVB-C FSM - DVB-C modulator
    DD Octopus Twin CI - 2 CI interfaces for channel decoding.

    TBS

    TBS6904 - 4 tuner S/S2 receiver
    TBS6909 - 8 tuner S/S2 receiver + multiswitch
    TBS6205 - 4 tuner DVB-T2/T/C receiver

    DVBSky

    T980CI - 1 tuner DVB-T/T2/C receiver with CI slot.
    S950CI - 1 tuner DVB-S/S2 receiver with CI slot.
    T9580 - 2 tuner S2/T2/T/C receiver with independent tuners.

    SkyStar 1 - old card, does not support a standard S2
    Mystique SaTiX-SX - old card, does not support a standard S2\
    USB tuner
    DD RESI SDR Modulator - the software is a closed development, and therefore there is no support for this modulator.