John_obn Posted November 23, 2011 Posted November 23, 2011 Добрый день. Планируется приобретение сервера под BRAS. Посоветуйте, пожалуйста, версию FreeBSD (7 или 8) и какую внешнюю сетевую ставить, em (82571) или igb (82576). Соответственно при той или иной комбинации какие драйверы ставить для сетевой карты? Абоненты подключаются по схеме IPoE, для шейпинга планируем dummynet, фильтр либо pf либо ipfw (зависит от версии фри, в 8-й вроде как он параллелится уже из коробки), NAT скорее всего на pf (возможен переход на ipfw nat). Сейчас используем FreeBSD 7.х + em (дрова от wawa). Вставить ник Quote
Dyr Posted November 23, 2011 Posted November 23, 2011 82576 для многоядерного процессора, FreeBSD 8. PF в топку, он будет узким местом. Вставить ник Quote
AntonS Posted November 23, 2011 Posted November 23, 2011 только igb которое работает через опу Вставить ник Quote
John_obn Posted November 23, 2011 Author Posted November 23, 2011 82576 для многоядерного процессора, FreeBSD 8. PF в топку, он будет узким местом. Какие драйверы для сетевой ставить? net.isr.numthreads устанавливать = кол-ву ядер? net.isr.direct=0 ? net.isr.direct_force=0 ? Сравнивали с em на 7-й FreeBSD такую схему? AntonS, не понял ваш ответ. Вставить ник Quote
jab Posted November 23, 2011 Posted November 23, 2011 Какой поток Вы хотите пропускать через сервер ? Вставить ник Quote
John_obn Posted November 24, 2011 Author Posted November 24, 2011 До 700-850 Мбит в каждую сторону. Изначально будет 300 Мбит. Вставить ник Quote
jab Posted November 24, 2011 Posted November 24, 2011 До 700-850 Мбит в каждую сторону. Изначально будет 300 Мбит. Тогда вообще пофиг что брать, десктопные только не берите. Вставить ник Quote
John_obn Posted November 24, 2011 Author Posted November 24, 2011 ОК. Если будем брать на вырост эту 4-х портовую 82571 или эту 82576. Десктопное не берем в расчет даже. Хотелось бы заранее настроиться на на конфигурацию с бОльшим запасом по производительности. И все же, больше интересует мнение/опыт по наиболее оптимальным сочетаниям софта и железа. В первом посте описал вопрос, интересует оптимальное сочетание версии FreeBSD + сетевая карта + какие дрова использовать. Можете посоветовать по этому вопросу, jab? Вставить ник Quote
ip0203 Posted November 25, 2011 Posted November 25, 2011 Апну тему, народ а что скажете насчет вот такой 4х головой карточки на чипсете Intel® 82571EB(http://www.supermicro.com/products/accessories/addon/AOC-UG-i4.cfm). Как я понял это обьедененные инженерами Supermicro в одну железку 2 штуки Intel <EXPI9402PT> PRO/1000 PT Dual Port(http://www.nix.ru/autocatalog/networking_intel/Intel_EXPI9402PT_1000_PT_Dual_PCIE_x4_1000Mbps_51176.html). Или я ошибаюсь? Может кто сталкивался с подобным девайсом? Вставить ник Quote
John_obn Posted November 25, 2011 Author Posted November 25, 2011 Если верить сайту intel.com, то в EXPI9402 стоит все таки чип 82571GB (на nix.ru пишут что 82571EB), как и в 9404. Вставить ник Quote
ip0203 Posted November 25, 2011 Posted November 25, 2011 точно, доверился никсу :(, вопрос тем более актуален - что за зверь такой Intel® 82571EB, поиск приводит на опеннет и наг где пишут что это инженерный образец и заводится на фре только с помощью патча, стоит ли связыватся? Вставить ник Quote
John_obn Posted November 25, 2011 Author Posted November 25, 2011 Он должен завестись на фре обычным em драйвером, ну или яндексовским. В man em не говорится о разделениях на EB или GB. Так что все должно быть ок. Кстати, копия вашего вопроса, там же в конце есть ссылка на pdf от intel, в котором говорится, что функционал одинаковый, только маркировка GB используется в картах непосредственно от Intel, а EB в картах от других производителей. Кто-нибудь может ответить на 8-й пост в этом треде? jab, посоветуйте, пожалуйста. Вставить ник Quote
Dyr Posted November 25, 2011 Posted November 25, 2011 Уже ответил Не вижу ни одной причины для выбора 7 ветки или для выбора 82571 (кроме копеечной экономии). Вставить ник Quote
John_obn Posted November 25, 2011 Author Posted November 25, 2011 В 8-ке использовать родные фряшные дрова для 82576? Использовать net.isr.direct=0 , net.isr.numthreads=кол-ву ядер? Сравнивали загрузку процессора при такой конфигурации с вариантом с 7-й фрей? Вставить ник Quote
Dyr Posted November 25, 2011 Posted November 25, 2011 По net.isr ничего не подскажу, я сам по прежнему не понимаю и не видел в них практического смысла (ни по сообщениям на форуме, ни у меня самого не было видно изменений при включении/изменении этих параметров). А загрузка что седьмой, что восьмой фри на 800 Мбитах у меня была в общем-то, одинаковая. Вставить ник Quote
jab Posted November 25, 2011 Posted November 25, 2011 ОК. Если будем брать на вырост эту 4-х портовую 82571 или эту 82576. Десктопное не берем в расчет даже. Хотелось бы заранее настроиться на на конфигурацию с бОльшим запасом по производительности. И все же, больше интересует мнение/опыт по наиболее оптимальным сочетаниям софта и железа. В первом посте описал вопрос, интересует оптимальное сочетание версии FreeBSD + сетевая карта + какие дрова использовать. Можете посоветовать по этому вопросу, jab? В подавляющем большинстве приложений, Вы не заметите разницы между ET и PT. Берите то, что проще и дешевле найти. Вставить ник Quote
John_obn Posted November 25, 2011 Author Posted November 25, 2011 Dyr, благодарю. jab, по дровам что посоветуете? А также по версии фри (8 или 7) хотел бы Ваше мнение услышать. Вставить ник Quote
jab Posted November 26, 2011 Posted November 26, 2011 Dyr, благодарю. jab, по дровам что посоветуете? А также по версии фри (8 или 7) хотел бы Ваше мнение услышать. Ну у меня восьмерка стояла под такие задачи, со стандартными драйверами, и igb(4) и em(4). Хотя до этого и семерка справлялась. Тут все зависит от проца, и чем Вы его нагружать будете. Потому как в pf и dummynet всякого понаворотить можно. Вставить ник Quote
John_obn Posted November 26, 2011 Author Posted November 26, 2011 Проц i5 или i7, либо xeon, если совсем серверную конфигурацию будем брать. Нагружать, как уже описал, фильтрация ipfw, dummynet, все в таблицах. PF только под nat, впоследствии переведем на ipfw nat, т.к. тут уже высказывали советы уходить от pf даже на 8-й фре. nat в пул, NAPT. Вставить ник Quote
jab Posted November 27, 2011 Posted November 27, 2011 Ну телепаты, чтобы угадывать количество таблиц, фильтров и трансляций, в отпуске у нас. Но вообще правильно настроенной современной тачки на гигабит дуплекса хватает. Советы уходить с pf дают те, кто накупил многоядерных тачек, а загрузить их не может. Я-то все на десктопном говне, штатно разогнанном на 20% делал. Вставить ник Quote
John_obn Posted November 28, 2011 Author Posted November 28, 2011 Таблиц ipfw порядка 23. Правила следующего вида: 00500 pipe tablearg ip from table(1) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 00600 pipe tablearg ip from any to table(2) out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 01240 skipto 3300 ip from any to any in 01270 allow ip from table(50) to any out xmit em0 01900 allow ip from table(52) to any out 02000 allow ip from any to table(52) out 02050 allow udp from any 68 to any dst-port 67 out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 02100 deny ip from any to table(53) out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 02300 allow ip from me to any out 02400 deny ip from any to not table(54) out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 02500 allow icmp from any to any out 02600 allow ip from table(55) to table(50) out 02700 allow ip from table(50) to table(55) out 02800 allow ip from table(50) to table(50) out 02900 deny ip from any to table(57) out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 03000 allow ip from any to table(56) out { xmit vlan0 or xmit vlan3 or xmit vlan4 } 03200 allow ip from any to table(50) out 03300 deny ip from any to any out 03310 skipto 3700 ip from any to table(50) in recv em0 03700 allow tcp from table(50) to me dst-port 22 in recv em0 03800 deny tcp from any to me dst-port 22 in recv em0 03900 allow ip from any to table(50) in recv em0 04000 allow ip from table(53) to table(52) in { recv vlan0 or recv vlan3 or recv vlan4 } 04100 deny ip from table(53) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04205 skipto 4300 udp from any to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04210 skipto 5000 icmp from any to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04220 skipto 5500 tcp from any to any dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } 04230 skipto 5990 ip from any to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04300 deny udp from any to any dst-port 135-139,445 { recv vlan0 or recv vlan3 or recv vlan4 } 04400 deny udp from any to any dst-port 1434 in { recv vlan0 or recv vlan3 or recv vlan4 } 04500 deny udp from table(58) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04600 allow udp from table(50) to table(50) in { recv vlan0 or recv vlan3 or recv vlan4 } 04700 deny udp from table(59) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 04800 allow udp from any to any dst-port 67,68 in { recv vlan0 or recv vlan3 or recv vlan4 } 04900 allow udp from table(50) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 05000 deny icmp from any to any frag in { recv vlan0 or recv vlan3 or recv vlan4 } 05100 deny icmp from table(60) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 05200 allow icmp from table(50) to table(50) in { recv vlan0 or recv vlan3 or recv vlan4 } 05300 deny icmp from table(61) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 05400 allow icmp from table(50) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 05500 allow tcp from table(62) to any dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } 05600 deny tcp from table(64) to any dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } 05700 allow tcp from table(50) to table(63) dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } limit src-addr 25 05800 deny tcp from table(65) to any dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } 05900 allow tcp from table(50) to any dst-port 25,587 in { recv vlan0 or recv vlan3 or recv vlan4 } limit src-addr 25 05990 deny tcp from any to any dst-port 135-139,445 { recv vlan0 or recv vlan3 or recv vlan4 } 06000 allow ip from table(50) to any in { recv vlan0 or recv vlan3 or recv vlan4 } 06100 deny ip from any to any in { recv vlan0 or recv vlan3 or recv vlan4 } 65535 allow ip from any to any pf (только NAT) в ЧНН на одной машине: порядка 90к states . pfctl -sn: no nat on em0 from any to <local_networks> nat on em0 inet from <unlim_ips> to any -> x.y.z.128/27 source-hash 0x49470e90ee8080934fa0f2d89418323c sticky-address rdr pass on vlan0 inet proto tcp from <blocked_clients> to ! <servers> port = http -> a.b.c.d port 8000 rdr pass on vlan3 inet proto tcp from <blocked_clients> to ! <servers> port = http -> a.b.c.d port 8000 rdr pass on vlan4 inet proto tcp from <blocked_clients> to ! <servers> port = http -> a.b.c.d port 8000 Вставить ник Quote
Dyr Posted November 28, 2011 Posted November 28, 2011 Советы уходить с pf дают те, кто накупил многоядерных тачек, а загрузить их не может. Я-то все на десктопном говне, штатно разогнанном на 20% делал. Если намёк в мою сторону, то pf у меня как раз на десктопном говне - Core2Duo и Core2Quad был :) И как раз на 700-800 Мбит с одним только PF NAT загрузка была под 100 процентов на каждом из ядер (процессами emX taskq, если правильно помню) Вставить ник Quote
jab Posted November 28, 2011 Posted November 28, 2011 Если намёк в мою сторону, то pf у меня как раз на десктопном говне - Core2Duo и Core2Quad был :) И как раз на 700-800 Мбит с одним только PF NAT загрузка была под 100 процентов на каждом из ядер (процессами emX taskq, если правильно помню) Под десктопным говном я понимаю что-то типа Core i5-2300 SandyBridge. Вставить ник Quote
jab Posted November 28, 2011 Posted November 28, 2011 Буржуй :D Там разница на общей стоимости системы будет 200$. Следует ли мне напоминать, сколько стоит тот гигабит NAT'а который оно будет молотить ? По отпускным ценам для юзеров. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.