Я сталкиваюсь с пакетом UDP, получают ошибки (в соответствии с Linux 'netstat - su' команда).
У меня есть 10 x процессов UDP, работающих на Машине-A (RHEL 5.2), и каждый из них отправляют 290-байтовый пакет в 50 раз в секунду к тому же адресу и тому же порту UDP. На конце получателя (Machine-B RHEL5.2) у меня есть процесс, который слушает этот порт UDP. Кроме того, в Machine-B я работаю 'netstat - su' для проверки на пакетные ошибки UDP.
Я считал, что должен настроить свою Машину-B Linux sysctl, и я сделал следующее для вышеупомянутого теста:
net.core.rmem_max = 33554432
net.core.netdev_max_backlog = 2000
Кроме того, я изменил свой размер MTU для обоих интерфейсов в Машине-A и Машине-B к 1380.
Со всем вышеупомянутым я все еще встретился, пакет UDP получают ошибочное увеличение (под netstat)
Каким образом? Что-либо еще я должен настроить?
Между прочим, я также попробовал сеть core.rmem_max = 131071, но все еще направление с пакетом получает ошибки :(
net.core.rmem_max
- максимальное значение, которое можно установить. Однако есть также значение по умолчанию, называемое net.core.rmem_default
- я бы тоже увеличил его.
Также вы должны настроить параметры буфера вашего приложения. Часто люди пытаются изменить настройки ядра, но не забывают настройки приложения.