Jump to content

Recommended Posts

Posted

И опять 25..........

discard frame w/o packet header

 

Очень странная ситуация. На серверах с 55-ой серией Ксеонов, проблем нет.

На предыдущих модификациях ксеонов - возникает проблема, причем только в связке с яндекс драверами и ng_car.

На серверах где нет ng_car - все прекрасно.

Может кто-то уже разобрался в проблеме?

  • Replies 296
  • Created
  • Last Reply

Top Posters In This Topic

Posted (edited)

Хм...

Спасибо jab.

Но все равно мне не понятно, почему новые ксеоны держат до 3К пользователей и не падают, а старые затыкаются....

 

И что посоветуете в качестве шейпера/полисера? Ведь dummynet тоже живет на одно ядре, или я не прав?

Edited by McLaut
Posted

ну при длинных очередях, и недостаточно быстрых тарифах, почему нет. Ели очереди длинные и забиты массово, то грузить будет сильно.

 

У меня думминет узким местом, на данном этапе не является.

Posted
Но все равно мне не понятно, почему новые ксеоны держат до 3К пользователей и не падают, а старые затыкаются....

И что посоветуете в качестве шейпера/полисера? Ведь dummynet тоже живет на одно ядре, или я не прав?

Либо потому что на новых ксеонах нетграф еще помещается в кеш а в старых - уже нет. Либо потому, что ng_car ведет себя совершенно непредсказуемо даже на одинаковых конфигурациях, о чем куча

воплей в разделе "Программное обеспечение".

 

Для dummynet 3k пользователей - это очень немного... При правильной настройке. :-) Да и параллелится он при желании.

 

PS: Кроме того, я не использую xeon'ы. Наверное поэтому у меня все работает.

Posted
Для dummynet 3k пользователей - это очень немного... При правильной настройке. :-) Да и параллелится он при желании.

Таблицы? Если не сложно - ткните носом как параллелить dummynet?

 

Posted
Таблицы? Если не сложно - ткните носом как параллелить dummynet?

Таблицы либо ветвление skipto.

 

53 root        1 -68    -     0K    16K -       2 467.9H  0.34% dummynet

# netstat -I em0 -w1
            input      (em0)           output
   packets  errs      bytes    packets  errs      bytes colls
    118309     0   65587915     117224     0   64673476     0
    116044     0   65736022     115517     0   65359883     0
    119704     0   69752279     118822     0   69043806     0
    121959     0   70453399     121114     0   69762342     0
    118736     0   67251919     117953     0   66644452     0
    118932     0   64328855     118219     0   63889771     0

 

И зачем тут что-то параллелить ? Непонятно... Мы про один и тот же dummynet говорим ?

Posted
jab, покажи плиз sysctl -a | grep dummynet, и ipfw pipe list | grep buckets

buckets везде 512, hash_size 512, max_chain_len 16

 

PS: в данном случае - это бридж

Posted

Не получается. У меня пул на каждом сервере свой и радиус не знает какие у кого айпи выдаются. Соответственно схему можно реализовать только через АП и ДАУН скрипты... Или может есть механизм которого я не знаю?

  • 6 months later...
Posted

колеги, изучил всю тему но так и не пришел к общему знаменателю, какие параметры надо "крутить", и на сколько для pppoe сервера на em при использовании freebsd 7.2 и mpd5 с резалкой ng_car и тип доступа pppoe, если не сложно подскажите!!

И все таки архитектура i386 amd64?

  • 4 months later...
Posted

В 7.4. не собираются яндексовые драйвера:

 

make -V CFILES -V SYSTEM_CFILES -V GEN_CFILES | MKDEP_CPP="cc -E" CC="cc" xargs mkdep -a -f .newdep -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter -I/usr/src/sys/contrib/pf -I/usr/src/sys/dev/ath -I/usr/src/sys/dev/ath/ath_hal -I/usr/src/sys/contrib/ngatm -I/usr/src/sys/dev/twa -I/usr/src/sys/gnu/fs/xfs/FreeBSD -I/usr/src/sys/gnu/fs/xfs/FreeBSD/support -I/usr/src/sys/gnu/fs/xfs -I/usr/src/sys/contrib/opensolaris/compat -I/usr/src/sys/dev/cxgb -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding

cc: /usr/src/sys/dev/e1000/e1000_vf.c: No such file or directory

cc: /usr/src/sys/dev/e1000/e1000_mbx.c: No such file or directory

mkdep: compile failed

*** Error code 1

Stop in /usr/obj/usr/src/sys/GENERIC.

*** Error code 1

Stop in /usr/src.

*** Error code 1

Stop in /usr/src.

 

Погуглив нашел информацию, что в 7.4 партировали из 8 версии. Но драйвера ya и от 8 версии не собираются.

Очень жаль - хорошие были. Кто как решает?

 

Posted
PS:

Что ни кто не пользуется яндекс драйверами

1) Сложилось впечатление (пока неокончательное), что у яндекс-драйверов довольно узкая область применения:

- ОС только FreeBSD,

- карты только Intel,

- чипы только без MSI-X и не старше 82574,

- процессоры только такие, в которых ядер больше, чем сетевых карт,

- оптимизация не для маршрутизатора, а для сервера (например, отказ от tx-прерываний и перенос кода в rx).

 

В остальных случаях использовать эти драйверы либо нельзя, либо бессмысленно.

Впрочем, буду рад, если кто-то с цифрами в руках продемонстрирует обратное.

 

или своевременно не обновляют сырцы ?
"работает - не трогай!" © :)))

Обновление портов через portaudit и обновление мира+ядра внутри релиза - это одно.

Перескакивания с релиза на релиз - это другое. Для этого должны быть неотразимые аргументы.

Posted

Сложилось впечатление, что

- оптимизация не для маршрутизатора, а для сервера (например, отказ от tx-прерываний и перенос кода в rx).
таки не совсем так. уандекс драйвера для маршрутизатора в варианте 2 карты-4 ядра преимущества некоторые дает. Не в 2 раза конечно, но упор в 1 ядра в 100% решает. Но цифр не делал, просто были проблемы с пропуском трафика, при этом проц - 100% - проблем не стало. трафика меньше не стало, даже стало больше.

 

зы, кстати на текущей 8 серии драйвера собираются.

Posted (edited)
Сложилось впечатление, что
- оптимизация не для маршрутизатора, а для сервера (например, отказ от tx-прерываний и перенос кода в rx).
таки не совсем так. уандекс драйвера для маршрутизатора в варианте 2 карты-4 ядра преимущества некоторые дает.

Вы прочтите внимательнее не один пункт, а всё сообщение целиком :)

 

Если на маршрутизаторе используется FreeBSD и карты Intel на чипе не старше 82574 без поддержки MSI-X,

ядер процессора больше чем карт, то драйверы от Яндекса способны дать прирост быстродействия

за счёт того, что обработчик аппаратных прерываний в них многопоточный.

 

Но такое сочетание факторов IRL встречается слишком редко.

Edited by Ilya Evseev

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...