Перейти к содержимому
Калькуляторы

У кого-нибудь наблюдается утечка файловых дескрипторов? (для этого нужно (пару раз в день в течение 2-3 дней) посмотреть "ls -1 /proc/XXXX/fdinfo/ | wc -l" , где XXXX это номер процесса accel-ppp). Когда дескрипторов становится больше, чем максимально допустимое в системе, наступает segfault

Никто не проводил подобных наблюдений? Ни у кого accel-ppp не падает изредка в сегфолт?

Аптайм 2 месяца, никаких утечек не обнаружено. ~10 дескрипторов на 1 ipoe сессию как и месяц назад.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

[root@ipoe1 ~]# top
top - 15:36:54 up 48 days, 10:57,  2 users,  load average: 0.27, 0.18, 0.20
Tasks: 144 total,   1 running, 143 sleeping,   0 stopped,   0 zombie
...
 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
29985 root      20   0 1586m 1.4g 1676 S  0.0 17.5   0:08.41 accel-pppd

Видно потребление памяти в 1.4Гб, довольно не слабо. При этом сам accel говорит что использует всего 38мб.

[root@ipoe1 ~]# accel-cmd show stat
uptime: 33.12:53:02
cpu: 0%
mem(rss/virt): 38336/1069716 kB
core:
 mempool_allocated: 16068381
 mempool_available: 273429

Это утечки где-то или так и должно быть? Активно в данный момент 860 сессий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У кого-нибудь наблюдается утечка файловых дескрипторов? (для этого нужно (пару раз в день в течение 2-3 дней) посмотреть "ls -1 /proc/XXXX/fdinfo/ | wc -l" , где XXXX это номер процесса accel-ppp). Когда дескрипторов становится больше, чем максимально допустимое в системе, наступает segfault

Никто не проводил подобных наблюдений? Ни у кого accel-ppp не падает изредка в сегфолт?

Аптайм 2 месяца, никаких утечек не обнаружено. ~10 дескрипторов на 1 ipoe сессию как и месяц назад.

Это удалось воспроизвести и xeb пофиксил: http://sourceforge.net/p/accel-ppp/code/ci/03b2f3ab32112b85c8aacc7057f3e8da0f09c82d/tree/accel-pppd/shaper/limiter.c?diff=f0abb041cf94f620c22987bab1ab4a49645141af . Утечка возникала при использовании встроенного шейпера и time-range

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

to kayot

Подтверждаю насчет утечки - в последних билдах все ОК - утечек памяти нету.

Изменено пользователем nik247

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

nik247

Попробую обновить, хотя билд там почти свежий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброго времени суток,

Использую accel-ppp в качестве VPN-сервера на Centos 6.4

В конфиге accel-pppd указаны дефолтовые размеры mtu=1400, mss=1400.

Не открывается добрая половина сайтов, в т.ч. mail.ru, speedtest.net

Экспериментировал с разными значениями, при некоторых mail.ru работает, speedtest не удалось запустить ни в одном случае.

До этого работал VPN-сервер на базе pfsense, на тех же линиях wan, там я о размере mtu даже не задумывался.

Куда еще копать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно попробовать вот такое:

 

iptables -t mangle -I POSTROUTING -o ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1441:65535 -j TCPMSS --set-mss 1440

iptables -t mangle -I PREROUTING -i ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1411:65535 -j TCPMSS --set-mss 1440

 

значения цифр под свои mtu/mru подправьте

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Огромное спасибо, помогло!

Еще вот это нарыл:

iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Я, правда, так и не понял причину моего "плохого провайдерства" - правила для соответствующих типов ICMP в iptables существуют и разрешены...

Изменено пользователем AndyMat

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1к IPOE сессий, 1G/450М трафика.

[root@ipoe1 ~]# accel-cmd show stat
cpu: 0%
ipoe:
 active: 1042

[root@ipoe1 ~]# ifstat -i bond1 -b
Kbps in  Kbps out
450919.4  1.01e+06

Загрузка сервера на xeon L5639 такова:

top - 21:28:15 up 2 days, 12:51,  2 users,  load average: 0.91, 0.69, 0.58
Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu0  :  1.6%us,  0.0%sy,  0.0%ni, 73.7%id,  0.0%wa,  0.0%hi, 24.7%si,  0.0%st
Cpu1  :  0.5%us,  3.7%sy,  0.0%ni, 61.4%id,  0.0%wa,  0.0%hi, 34.4%si,  0.0%st
Cpu2  :  1.6%us,  1.6%sy,  0.0%ni, 62.8%id,  0.0%wa,  0.0%hi, 34.0%si,  0.0%st
Cpu3  :  0.0%us,  2.6%sy,  0.0%ni, 66.1%id,  0.0%wa,  0.0%hi, 31.2%si,  0.0%st
Cpu4  :  2.6%us,  2.1%sy,  0.0%ni, 74.6%id,  0.0%wa,  0.5%hi, 20.1%si,  0.0%st
Cpu5  :  1.1%us,  2.1%sy,  0.0%ni, 69.0%id,  0.0%wa,  0.0%hi, 27.8%si,  0.0%st

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
17927 root      20   0 1372m  30m 1924 S 22.4  0.5 490:10.76 accel-pppd
20655 named     20   0  904m 736m 2824 S  6.5 12.3  44:48.58 named
  11 root      20   0     0    0    0 S  1.0  0.0   5:56.61 ksoftirqd/1
  15 root      20   0     0    0    0 S  1.0  0.0   6:44.20 ksoftirqd/2
   3 root      20   0     0    0    0 S  0.5  0.0   6:24.53 ksoftirqd/0
  19 root      20   0     0    0    0 S  0.5  0.0   5:40.41 ksoftirqd/3
  23 root      20   0     0    0    0 S  0.5  0.0   5:38.17 ksoftirqd/4
  27 root      20   0     0    0    0 S  0.5  0.0   5:30.26 ksoftirqd/5
5533 nagios    20   0 40992 1216  840 S  0.5  0.0   0:11.90 nrpe
27597 quagga    20   0 34492 3168  852 S  0.5  0.1   0:09.88 ripd

В принципе нормально, 2-3Гбит сервер сможет жевать с огромным числом сессий(особенно если второй CPU поставить).

Хотя вообще загрузка высоковата, iptables состоит из десятка строк, NATa нет, conntrack выпилен.

Что делает сам accel, потребляя 25-30% CPU? И почему в show stat всегда светится гордое 0%?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это же прерывания, разве нет?..

Что делает accel - можно посмотреть strace-ом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Перестал работать accel-ppp после обновления с CentOS 6.4 до CentOS 6.5 (ядро обновилось с 2.6.32-358.14.1.el6.x86_64 до kernel-2.6.32-431.el6.x86_64)

В логах при попытках подключиться по PPTP пишет protocol not supported. Модуль pptp.ko в новое ядро при обновлении подсосался автоматом из старого ядра и лёг в weak-updates, поскольку kernel ABI вроде бы остаётся стабильным в рамках мажорного выпуска.

На всякий случай я пересобрал драйвер под новое ядро и загрузил его, результат тот же - protocol not supported. Обновил даже сам accel-ppp до текущего из гита и пересобрал его. Опять никаких результатов.

Попробовал установить из elrepo ядро kernel-ml (3.12.3), в котором pptp уже есть по дефолту. С ним почему-то accel вообще не стал запускаться. В логах пустота. Процесс вылетает сразу после запуска. Впрочем, тут могут быть проблемы с драйвером bond, который тоже начал ругаться.

В итоге я откатился на последнее ядро из поставки CentOS 6.4 и всё взлетело как надо.

С чем это может быть связано? Обновлялся ли кто-нибудь уже до 6.5?

Изменено пользователем Victor Safronov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Господа, может кто в курсе - как заставить accel при ipoe отправлять в RADIUS Access-Request атрибуты из DHCP-запроса? Интересует хостнейм, версия DHCP-клиента (некоторые же передают?) и прочее. Реально нужно - техподдержка молится на возможность более-менее увидеть, что у клиента за оборудование.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Господа, может кто в курсе - как заставить accel при ipoe отправлять в RADIUS Access-Request атрибуты из DHCP-запроса? Интересует хостнейм, версия DHCP-клиента (некоторые же передают?) и прочее. Реально нужно - техподдержка молится на возможность более-менее увидеть, что у клиента за оборудование.

Насколько знаю, пока можно только передать "username" RADIUS Access-Request, который можно сформировать из DHCP-запроса через lua.

lua-file=/etc/accel-ppp.lua
username=lua:username

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем привет.

Появилась проблема. Падает ACCEL раз в пару дней. При етом совсем рендомно. Сборка из гита месячной давности. шейпер встроений tbf. Debian 7. В логе системи токи одно.

kernel: [626251.530908] perl[16829]: segfault at 7f7af26664dd ip 00007f7af254e2e1 sp 00007fffda6a3d90 error 4 in ld-2.13.so[7f7af2545000+20000]

А сам аццель просто останавливается. И Всьо. Запускаю и снова не определьонное время.

Изменено пользователем Drzlo007

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Drzlo007

Судя по тому, что у вас падает perl(а не accel-pppd) и останавливается accel, скорее всего битая память. Прогоните memtest несколько раз по полной программе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Drzlo007

Судя по тому, что у вас падает perl(а не accel-pppd) и останавливается accel, скорее всего битая память. Прогоните memtest несколько раз по полной программе.

Врятли. Ето 2 нових сервера. Падать начало когда включил шейпер. Я не думаю что 2 новиз сервера с битой памятю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Drzlo007

Судя по тому, что у вас падает perl(а не accel-pppd) и останавливается accel, скорее всего битая память. Прогоните memtest несколько раз по полной программе.

Врятли. Ето 2 нових сервера. Падать начало когда включил шейпер. Я не думаю что 2 новиз сервера с битой памятю.

 

Да запросто. Сам встречался с партией компов(офисных), в которых во всех битая память.

 

У вас pppd-compat и скрипты шейпинга на перле?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Шейпер стандартний аццеля. pppd-compa не использую.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да запросто. Сам встречался с партией компов(офисных), в которых во всех битая память.

 

+1

Я на днях столкнулся, после копания - китайцы перебили тайминги памяти на более быстрые, сбоило далеко не сразу, хочу заметить - memtest проблем не видит.

У себя воспроизвел только на игрушках, которые грузят память.

Поставил правильные тайминги (посмотрел по чипу) - все ок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

memtest проблем не видит.

 

На той партии компов, memtest иногда видел, а иногда хоть целый день гоняй - не показывает ошибку. В винде это выражается синим экраном, в linux - произвольным segfault-ом приложений и странными зависаниями

Вообщем, автору совет поменять память на другую, все признаки на лицо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У себя воспроизвел только на игрушках, которые грузят память.

occt порой неплохо нестабильность выявляет...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Prime95 отлично память тестит. Если проходит memtest и prime - память можно считать гарантированно рабочей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Prime95 проблем не видел. Occt выглядит интересно, как будет время попробую.

Впрочем я себе от греха подальше взял Ripjaws Z Series - Memory - 4 x 8 GB для компа, с SSD+i7 4770 сборка софта будет сказкой :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо за советы. Буду пробивать.

Правда ищьо есть вот такие строчки в core.log

[2013-12-15 18:42:07.270]timer:timerfd_settime: Invalid argument

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие-то плохие чудеса начинаются у меня после ~1200 IPOE сессий онлайн.

Юзеры жалуются на обрывы, вплоть "красного крестика"(как я понимаю, IP не выдается).

В логе акцеля куча сообщений вида

[2013-12-16 21:23:58]:  warn: bond1.2027.1106: radius: server(1) not responding
[2013-12-16 21:23:58]:  warn: radius: server(1) not responding
[2013-12-16 21:23:59]:  warn: bond1.2051.1215: radius: server(1) not responding
[2013-12-16 21:23:59]:  warn: radius: server(1) not responding
[2013-12-16 21:24:02]: error: bond1.2027.1124: radius:write: Invalid argument

В логе квагги пачки похожих ошибок

2013/12/16 20:09:16 RIP: can't send packet : Invalid argument

В dmesg тишина и тонны записей вида

net_ratelimit: 44 callbacks suppressed

Наконец в messages

Dec 16 21:23:45 ipoe1 kernel: net_ratelimit: 83 callbacks suppressed
Dec 16 21:23:45 ipoe1 named[13497]: socket.c:1890: unexpected error:
Dec 16 21:23:45 ipoe1 named[13497]: internal_send: xx.xx.xx.xx#45295: Invalid argument
Dec 16 21:23:45 ipoe1 named[13497]: client xx.xx.xx.xx#45295: error sending response: invalid file

 

Пока не придумал ничего умнее чем увеличить nofile и nproc лимиты(стояло дефолтные 1024) и net.ipv4.neigh.default.gc_thresh поднять на всякий случай. Может что еще нужно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.