From: "Pavel S. Khmelinsky" <hmepas@yauza.ru>
To: community@altlinux.ru
Subject: [Comm] kernel: Neighbour table overflow.
Date: Mon, 27 Oct 2003 01:58:37 +0300
Message-ID: <3F9C519D.5060104@yauza.ru> (raw)
Тут недавно после подключения к серверу еще одного интерфейса с
кучей пользователей в логи начало сыпаться примерно следующие:
kernel: Neighbour table overflow.
Клиентов порядка 400 все они статически и жестко привязываются к
своим макам командой:
ip nei replace to $ip lladdr $mac dev eth2 nud permanent
Причем делает это скрипт, который периодически перезапускается.
Причем чем чаще его перезапускать тем быстрее с момента загрузки
начинает сыпаться эта дрянь.
Пробовал вопросить в kernel-devel -- не вышло. Сложилось ощущение
что ответ знают почти все, но в воспитательных целях молчат %)
Возился и так и сяк, прочитал все что нашел про настройки /proc
которые могли бы повлиять на размер арп таблицы.... Кароче пошел
на крайнюю меру -- полез в ядро и вот до чего довело мое
небольшое расследование:
Есть такая структура:
net/ipv4/arp.c:
struct neigh_table arp_tbl = {
family: AF_INET,
entry_size: sizeof(struct neighbour) + 4,
....
gc_thresh3: 1024,
};
Дошел я до нее по цепочке:
net/ipv4/route.c:rt_intern_hash ->
net/ipv4/arp.c:arp_bind_neighbour ->
include/net/neighbour.h:__neigh_lookup_errno ->
net/core/neighbour.c:neigh_create ->
net/core/neighbour.c:neigh_alloc там есть код сравнения
gc_thresh3 и entries, дальше глянул где задается это значение.
При создании новой записи (neigh_create ф-ия) вызывается ф-ия
neigh_alloc в которой есть проверка tbl->entries >
tbl->gc_thresh3 т.е. сравнивается кол-во существующих записей с
этим самым числом. Хотя есть и другие проверки и кандитаты в
возможные причины появления сообщения kernel: Neighbour table
overflow. мне почему-то кажется что срабатывает именно эта
проверка......
И что? Да ничего
gc_thresh3: 1024
и все. Константа.... Ни тебе выхода в #define ни в /proc ....
1024 роста на растоянии прямой видимости (имеется ввиду в одном
физическом эзернет сегменте) это чего предел что-ли?!
Вобщем гуру, развейте мои сомнения скажите что я где-то чего-то
недоконфигурил или еще чего-то. Следующим шагом будет пересборка
ядра, а делать мне это на боевых серверах ой как не охота а нигде
более это дело у меня не проявляется.
P.S.: Интересно... А у бзди такие проблемы есть?
next reply other threads:[~2003-10-26 22:58 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-26 22:58 Pavel S. Khmelinsky [this message]
2003-10-26 23:30 ` Dmitry Lebkov
2003-10-27 0:06 ` Pavel S. Khmelinsky
2003-10-27 8:11 ` Shawkat Nizamov
2003-10-27 8:23 ` Shawkat Nizamov
2003-10-27 8:33 ` Pavel S. Khmelinsky
2003-10-27 8:39 ` Shawkat Nizamov
2003-10-27 8:27 ` Pavel S. Khmelinsky
2003-10-27 8:48 ` Shawkat Nizamov
2003-10-27 8:56 ` Pavel S. Khmelinsky
2003-10-27 9:02 ` Shawkat Nizamov
2003-10-27 9:06 ` [Comm] kernel: Neighbour table overflow. [JT] Pavel S. Khmelinsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3F9C519D.5060104@yauza.ru \
--to=hmepas@yauza.ru \
--cc=community@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git