Jump to content

Recommended Posts

Posted

очередной топик из серии "вай-вай, тормозит нат" ))

ситуация - стоит FreeBSD 10.3/amd64, двухпортовая ix, поднято несколько натов, каждый в свой белый ip. примерно так (только натов там около 20):

add 10020 skipto 20000 tag 20 all from 192.168.10.0/24 to any via ix1 keep-state
nat 20 config ip my-ip-1 log deny_in same_ports reset
add 20020 nat 20 all from 192.168.10.0/24 to any out xmit ix0 tagged 20
add 20021 nat 20 all from any to my-ip-1 in recv ix0

в loader.conf сделано alias_pptp_load="YES"

 

4 ядра, прерывания по ядрам разбегаются равномерно, средняя загрузка каждого ядра - порядка 20% в чнн.

но... в последние дни наступает не чнн, а какой-то "час жэ", и в какой-то момент сначала прерывания сжирают все ядра, а потом те же ядра начинает отъедать процесс system (пока не дошли до 100% по прерываниям - system имеет 0%).

через netstat -I ix1 1 углядел сильные колебания pps при 100% загрузке, поставил FastNetMon из соседнего топика, однако... похоже, эти колебания являлись следствием загрузки, а не причиной. ну то есть ни одного клиента с pps выше 15к не поймано.

посмотрел show nat, и удивился.

на одном из натов имеем такое:

# ipfw nat 50 show
nat 50: icmp=72, udp=5976, tcp=33956, sctp=0, pptp=108102, proto=0, frag_id=6 frag_ptr=0 / tot=148112

на остальных экземплярах - не больше 20.

прибил экземпляр ната, создал заново - тормоза как рукой сняло. однако, pptp=88 уже за полчаса. повесил tcpdump, буду смотреть.

есть стойкое подозрение, что это по какой-то причине зависшие в нате сессии от какого-то "хорошего" клиента (у меня рисуется общий график количества сессий, и он плавно растет в течение двух месяцев после последней перезагрузки. раньше тоже рос).

как лечить, кроме как nat delete / nat config?

Posted

уже месяц или больше ждем сервера нового (с нага, кстати), как приедет - так да. вот обещали 3 ноября. сегодня уже не третье ))

а вообще читал чейнджлоги - ничего про nat/libalias не увидел ни в 10.4, ни в 11.х.

Posted

Обычно исходники читают.
Для производительности ipfw NAT, нужно править исходники libalias...
Или переходите на многопоточный PF NAT...

Posted
3 часа назад, nixx сказал:

уже месяц или больше ждем сервера нового (с нага, кстати), как приедет - так да. вот обещали 3 ноября. сегодня уже не третье ))

а вообще читал чейнджлоги - ничего про nat/libalias не увидел ни в 10.4, ни в 11.х.

А что мешает взять ещё один диск, склонировать туда систему (я обычно ручками разметку делаю, пишу загрузчики, форматирую и rsync для закидывания файлов), потом вставить его в любой комп, обновить, потом переткнуть диск при ребуте.

Если что то пойдёт не так - оригинальный диск не тронут, один ребут и всё как было.

 

 

1 час назад, vlad11 сказал:

Или переходите на многопоточный PF NAT...

Там же нет хелперов вроде как до сих пор.

Posted
5 часов назад, Ivan_83 сказал:

А что мешает взять ещё один диск, склонировать туда систему (я обычно ручками разметку делаю, пишу загрузчики, форматирую и rsync для закидывания файлов), потом вставить его в любой комп, обновить, потом переткнуть диск при ребуте.

Если что то пойдёт не так - оригинальный диск не тронут, один ребут и всё как было.

у нас есть очень привередливые клиенты. даже в 4 ночи. даже если заранее предупреждать. даже с серыми ip-шниками )) поэтому количество простоев, тем более ~10 и более -минутных - стараемся сводить к минимуму.

пока (вроде как) причину нашел, зло понятно и известно, надо следить за конкретным числом. попутно пытаюсь подампить/посчитать число pptp-коннектов, чтобы отловить-таки злодея.

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

тут эти тормоза с натом уже шума в колл-центре наделали. тормозить он начинал за последние четыре дня раз шесть-семь, каждый раз посреди дня, минут по 10. потом его отпускало. у клиентов в это время начинались лаги эдак по 200мс и вообще дропы. ругались...
 

7 часов назад, vlad11 сказал:

Для производительности ipfw NAT, нужно править исходники libalias...
Или переходите на многопоточный PF NAT...

дык дело не производительности ната. точнее, проблемы с производительностью (оговорюсь - смотря насколько правильно я поймал зависимость) вылезают как следствие странного глюка с pptp-сессиями.

вот сейчас (прямщас) у него счетчик pptp сессий по тому же экземпляру ната - 1588. откуда они там в 4 ночи? реально максимум там их штук 20-30 висит от всяких банкоматов-магазинов. остальное - происки вредителей.

 

а pf... не помню, насколько многопоточным он был раньше, когда мы им пользовались (года три-четыре назад), но вот то, что для "правильного" ната pptp приходилось использовать помесь бобика со свиньей (pf nat + ipfw nat чисто для pptp) - это точно помню ))

у него это полечили сейчас?

Posted

 pf nat там емнип никто и недопилит до многопоточности. ipfw nat хорош, но неконфигурябелен до слёз. Пришлось пингвина ставить натом :( А так - Фри - рулит без ната. Даже пайпы нарезает, почти честно, за исключением udp.

Posted
4 часа назад, Ivan_83 сказал:

Вылезай из комы, ещё в 10 сделали.

 Хм, надо попробовать, на офисной машинке. Правда там нагрузить не особо чем. Ну и как - по ощущениям - не подтупливает ?

Posted

Я же не провайдер, у меня нет ощущений :)

Про многопоток ещё в 2013-14 годах на конференции по BSD в яндексе доклад был, как раз когда Тео приезжал, они ещё потролили тем что они у себя пф переписали и теперь надо весь фрёвый по хорошему опять переписывать...

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.