LINUX.ORG.RU

sendto обработка ошибки ENOBUFS


0

2

Пусть есть 1757 целей, на которые посылаю udp пакеты размером 16 байт. Посылки идут непрерывно.
На 1515 sendto получаю ошибку ENOBUFS, обрабатываю задержкой, но она повторяется постоянно.
Если целей меньше 1515, то все работает хорошо.
первая ошибка: «sendto error -1 16 105 [1515 24240]»
код отправки: http://pastebin.com/2FZrFPf1
некоторые параметры системы: http://pastebin.com/niMAe5Yp

★★★★★

Ответ на: комментарий от Skolotovich

хотя я неправ

ENOBUFS The output queue for a network interface was full. This generally indicates that the interface has stopped sending, but may be caused by transient congestion. (Normally, this does not occur in Linux. Packets are just silently dropped when a device queue overflows.)

Skolotovich ★★★
()
Ответ на: комментарий от Skolotovich

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

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

это, да ? троллинг в man ? хм ... )

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

Skolotovich ★★★
()

разобрался - оказалось, случалось переполнении arp таблицы (в лог забыл посмотреть сразу)
увеличил arp кеш - заработало

x905 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.