Jump to content

Recommended Posts

Posted

Какое ядро и патчи посоветуете выбрать для PPPoЕ сервера на машине quad core xeon 2.3 ?

2Г ОЗУ

3 сетевых адаптера.

1 смотрит в мир

2 в PPPoE

 

Трафик - 300-800 мгб/с суммарно.

800-900 абонентов онлайн.

TBF

ipset

 

Сейчас использую 2.6.29 работает более-менее стабильно (зависает раз в несколько месяцев)

Но последние месяцы с ростом абонентской базы и скоростей стали рости задержки при форвардинге пакетов.

Есть мнение, что замена ядра должна помочь.

На какое менять ?

 

Posted (edited)

У меня 2.6.27 на одном стоит, на другом 2.6.31, на обоих загрузка примерно такая же, ничего не тормозит. На одном один Ксеон 5405 (с ядром 2.6.31 и загрузкой поменьше), на другом два 5450 (с ядром 2.6.27 и загрузкой побольше). На обоих Gentoo. Ни ipset ни tbf нету, режу скорость так - в инет по тарифу с помощью htb, а если маршрут приходит из пиринга, то отмечаю это при помощи realm и вообще не режу. Правда, еще на обоих серверах ДНС стоят.

Edited by vadimus
Posted
У меня 2.6.27 на одном стоит, на другом 2.6.31, на обоих загрузка примерно такая же, ничего не тормозит. На одном один Ксеон 5405 (с ядром 2.6.31 и загрузкой поменьше), на другом два 5450 (с ядром 2.6.27 и загрузкой побольше). На обоих Gentoo. Ни ipset ни tbf нету, режу скорость так - в инет по тарифу с помощью htb, а если маршрут приходит из пиринга, то отмечаю это при помощи realm и вообще не режу. Правда, еще на обоих серверах ДНС стоят.
И сколько чего при этом 5450 прожевывает?.

 

p.s. Заменил 2.6.27 на 2.6.31 на всех bras-ах, три месяца назад. - Полет нормальный.

 

Posted (edited)

>а если маршрут приходит из пиринга, то отмечаю это при помощи realm

Пример можно ?

 

>2.6.31

 

Патчи ?

 

Какие опции при сборке ядра советуете ?

 

 

Edited by Ivan Rostovikov
Posted
> 2.6.31

 

Патчи ?

 

Какие опции при сборке ядра советуете ?

Стандартное ядро ALT Linux p5.

Из дополнительных модулей ipset и ipt-netflow.

Делает NAT и Netflow, на прикладном уровне Quagga BGP без full view.

При переходе с 2.6.27 загрузка процессора снизилась почти вдвое, предположительно из-за новых драйверов для сетевых карт broadcom.

Работает непрерывно с момента установки около 80 суток.

Нагрузка CPU до 60%, трафик до 500+250 mbps и 80+80 kpps.

Posted
И еще, каки е посоветуете настройки TCP стека и CONNTRACK для такой нагрузки ?
/bin/echo 196608 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
/bin/echo 20 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close
/bin/echo 21600 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
/bin/echo 60 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_fin_wait
/bin/echo 15 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_last_ack
/bin/echo 30 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_recv
/bin/echo 60 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_sent
/bin/echo 60 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_time_wait
/bin/echo 131072 > /sys/module/nf_conntrack_ipv4/parameters/hashsize

 

Posted

net.ipv4.netfilter.ip_conntrack_max = 1048576

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1800

net.netfilter.nf_conntrack_tcp_be_liberal=1

 

То есть таблица увеличена, таймаут уменьшен.

Без этого были переполнения.

Posted
А нужно ли вообще трассировать (contrack) соединения на простом роутере ? NAT не делается.

Может ненадо и вовсе ?

Если нет НАТа, то ПМСМ незачем.
Posted
Jugernault
/bin/echo 196608 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
Интересно, как было получено число 196608? Вообще правило простое - ip_conntrack_max должен быть равен hashsize.

Ну вообще то по дефолту отношение ip_conntrack_max к hashsize - 8 к 1...

А доводить его до 1 к 1 - это не догма...

 

Posted
/bin/echo 196608 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max

/bin/echo 131072 > /sys/module/nf_conntrack_ipv4/parameters/hashsize

На один элемент массива максимум в среднем полтора конекшена? А в чём смысл? Ладно бы два. Оптимальнее 1:1. Нет?
Posted
Jugernault, а почему не 16 к 1? Здесь я так понимаю дело в экономии RAM. Просто при раскладе отличном от 1 к 1 увеличивается количество элементов в линейных списках (которые является элементами хеша). А поскольку внутри таких списков происходит линейный поиск - это определенная потеря производительности.
Posted (edited)

+ перевести jhash.h на использование функции lookup3, хеш-функции Дженкинса активно используется в nf_conntrack и sfq

+ route-кеш перевести на trie

Edited by DemYaN
Posted
+ route-кеш перевести на trie
FIB_TRIE/FIB_HASH это не роутинговый кеш, это способ хранения таблицы маршрутизации. Если кеш работает эффективно (мало miss-ов), то разницы между FIB_TRIE/FIB_HASH не чувствуется.

 

хеш-функции Дженкинса активно используется в nf_conntrack и sfq
Еще в dst cache очень активно.

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 и с Политикой конфиденциальности.