Ivan Rostovikov Опубликовано 23 марта, 2010 · Жалоба Какое ядро и патчи посоветуете выбрать для PPPoЕ сервера на машине quad core xeon 2.3 ? 2Г ОЗУ 3 сетевых адаптера. 1 смотрит в мир 2 в PPPoE Трафик - 300-800 мгб/с суммарно. 800-900 абонентов онлайн. TBF ipset Сейчас использую 2.6.29 работает более-менее стабильно (зависает раз в несколько месяцев) Но последние месяцы с ростом абонентской базы и скоростей стали рости задержки при форвардинге пакетов. Есть мнение, что замена ядра должна помочь. На какое менять ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 23 марта, 2010 · Жалоба 2.6.31 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vadimus Опубликовано 23 марта, 2010 (изменено) · Жалоба У меня 2.6.27 на одном стоит, на другом 2.6.31, на обоих загрузка примерно такая же, ничего не тормозит. На одном один Ксеон 5405 (с ядром 2.6.31 и загрузкой поменьше), на другом два 5450 (с ядром 2.6.27 и загрузкой побольше). На обоих Gentoo. Ни ipset ни tbf нету, режу скорость так - в инет по тарифу с помощью htb, а если маршрут приходит из пиринга, то отмечаю это при помощи realm и вообще не режу. Правда, еще на обоих серверах ДНС стоят. Изменено 23 марта, 2010 пользователем vadimus Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 23 марта, 2010 · Жалоба 2.6.31 - варит poptop + pppoe (kernel-mode). 2.6.32 - варит бордюр :). Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jugernault Опубликовано 24 марта, 2010 · Жалоба У меня 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-ах, три месяца назад. - Полет нормальный. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan Rostovikov Опубликовано 24 марта, 2010 (изменено) · Жалоба >а если маршрут приходит из пиринга, то отмечаю это при помощи realm Пример можно ? >2.6.31 Патчи ? Какие опции при сборке ядра советуете ? Изменено 24 марта, 2010 пользователем Ivan Rostovikov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 24 марта, 2010 · Жалоба > 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. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan Rostovikov Опубликовано 25 марта, 2010 · Жалоба И еще, каки е посоветуете настройки TCP стека и CONNTRACK для такой нагрузки ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jugernault Опубликовано 25 марта, 2010 · Жалоба И еще, каки е посоветуете настройки 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 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 25 марта, 2010 · Жалоба net.ipv4.netfilter.ip_conntrack_max = 1048576 net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1800 net.netfilter.nf_conntrack_tcp_be_liberal=1 То есть таблица увеличена, таймаут уменьшен. Без этого были переполнения. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan Rostovikov Опубликовано 26 марта, 2010 · Жалоба А нужно ли вообще трассировать (contrack) соединения на простом роутере ? NAT не делается. Может ненадо и вовсе ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
EvilShadow Опубликовано 26 марта, 2010 · Жалоба А нужно ли вообще трассировать (contrack) соединения на простом роутере ? NAT не делается.Может ненадо и вовсе ? Если нет НАТа, то ПМСМ незачем. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Умник Опубликовано 26 марта, 2010 · Жалоба Jugernault /bin/echo 196608 > /proc/sys/net/ipv4/netfilter/ip_conntrack_maxИнтересно, как было получено число 196608? Вообще правило простое - ip_conntrack_max должен быть равен hashsize. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jugernault Опубликовано 27 марта, 2010 · Жалоба 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 - это не догма... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
XLighter Опубликовано 27 марта, 2010 · Жалоба /bin/echo 196608 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max/bin/echo 131072 > /sys/module/nf_conntrack_ipv4/parameters/hashsize На один элемент массива максимум в среднем полтора конекшена? А в чём смысл? Ладно бы два. Оптимальнее 1:1. Нет? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Умник Опубликовано 27 марта, 2010 · Жалоба Jugernault, а почему не 16 к 1? Здесь я так понимаю дело в экономии RAM. Просто при раскладе отличном от 1 к 1 увеличивается количество элементов в линейных списках (которые является элементами хеша). А поскольку внутри таких списков происходит линейный поиск - это определенная потеря производительности. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
DemYaN Опубликовано 27 марта, 2010 (изменено) · Жалоба + перевести jhash.h на использование функции lookup3, хеш-функции Дженкинса активно используется в nf_conntrack и sfq + route-кеш перевести на trie Изменено 27 марта, 2010 пользователем DemYaN Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Умник Опубликовано 27 марта, 2010 · Жалоба + route-кеш перевести на trieFIB_TRIE/FIB_HASH это не роутинговый кеш, это способ хранения таблицы маршрутизации. Если кеш работает эффективно (мало miss-ов), то разницы между FIB_TRIE/FIB_HASH не чувствуется. хеш-функции Дженкинса активно используется в nf_conntrack и sfqЕще в dst cache очень активно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...