URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7784
[ Назад ]

Исходное сообщение
"ip_queue - длина очереди"

Отправлено d187 , 19-Дек-08 09:25 
Привет всем!

Использую iptable для фильрации пакетов в QUEUE очередь.
По умолчанию очередь в /proc/sys/net/ipv4/ip_queue_maxlen выставлена в 1024 пакета.

При тестировании отправляю 10000 UDP пакетов. Все они попадают под правило и отправляются в QUEUE очередь. Мое приложение, разгребающее очередь вылетает со след. ошибкой:
"passer: Failed to receive netlink message: No buffer space available"

похоже на то, что буфер переполняется. В документации к iptables написано, что при переполнения очереди, не поместившиеся пакеты будут отброшены. Но вместо этого вылетает мое приложение с ошибкой переполнения очереди. Почему так происходит?

Попробовал увеличить размер очереди до 10000 тысяч, результата никакого не принесло. Очередь все равно переполняется.

На каждый пакет мое приложение устанавливает вердикт: либо разрешает пакет, либо отбрасывает.

Надеюсь на вашу помощь!
Спасибо, всего доброго!


Содержание

Сообщения в этом обсуждении
"ip_queue - длина очереди"
Отправлено d187 , 19-Дек-08 12:42 
Тестирую в Ubuntu, которые запущены под VMWare на WindowsXP.
У меня есть мысль, что это не очередь переполняется, а приемный буфер сетевой карты или чего-то вроде этого.

При переполнении очереди, пакеты сверху будут просто отбрасываться, верно?
А здесь вылетает мое приложение с ошибкой.

Надеюсь на вашу помощь!
Спасибо, всего доброго!



"ip_queue - длина очереди"
Отправлено pavel_simple , 19-Дек-08 17:41 
дай ядру больше памяти под сетевой стёк