Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

8.5. Многоадресная рассылка

Если группа многоадресной рассылки прослушивается несколькими приложениями, соответствующий код ядра должен дублировать сетевые данные для каждого сокета. Дублирование происходит в рамках softirq и занимает продолжительное время.
Чем больше приложений прослушивают группу многоадресной рассылки, тем ниже скорость обслуживания, так как это требует создания дополнительной копии каждого поступающего пакета.
При интенсивной нагрузке это может привести к потере пакетов в сетевом буфере и очереди сокета. Увеличение времени обслуживания softirq снижает число обслуживаемых приложений в загруженных системах, поэтому с увеличением потери пакетов увеличивается число прослушивающих приложений.
Снизить вероятность потери пакетов можно за счет оптимизации очередей сокетов и сетевых буферов (см. Раздел 8.4.2, «Очередь сокета», Раздел 8.4.1, «Буфер сетевой карты»). Дополнительно можно оптимизировать использование сокетов приложениями и более эффективно распределять полученные данные между приложениями пространства пользователя.