kamd Posted January 20, 2007 Posted January 20, 2007 Сеть всё расчёт и растёт. Нагрузка на внешние каналы тоже. Сейчас в инет смотрят три freebsd роутера. Построено на Athlon 64 3200+ # netstat -w1d input (Total) output packets errs bytes packets errs bytes colls 21478 0 11166800 21333 0 11036978 0 21026 0 10990733 20882 0 10950442 0 20308 0 10823056 20172 0 10693047 0 21116 0 10958770 20824 0 10753144 0 20891 0 10785104 20553 0 10482694 0 21618 0 10785343 21482 0 10802148 0 21989 0 11047078 21783 0 10872372 0 21403 0 11476308 21024 0 11219736 0 ^C #top 46 processes: 2 running, 44 sleeping CPU states: 13.1% user, 0.0% nice, 21.7% system, 52.8% interrupt, 12.4% idle Mem: 398M Active, 402M Inact, 142M Wired, 56K Cache, 207M Buf, 735M Free Swap: 1024M Total, 1024M Free # ipnat -s mapped in 4808863146 out 4873251405 added 214610693 expired 0 no memory 1668648 bad nat 53852853 inuse 150008 rules 1 wilds 0 Грядущие проблемы: 1. нехватка прерываний (проблему можно отдалить поставив 4х ядерный сервер на opteron'ах. и 2х-4х головые серверные сетевушки intel. 2. максимальное количество записей в ipnat во freebsd 180000. Стандартно вообще 30000. Получается, что дальше 180 000 не сделаешь. (проблему можно решить размножив freebsd роутеры. Вопрос, существуют ли какие-либо железки в природе, которые могут: 1. натить как минимум 400 000 записей ipS.portS--ipD.portD 2. шейпить с шагом в 1 килобит в секунду 3. обслуживать как минимум 10 000 пользователей 4. управление по snmp 5. гигабитные порты желательно, но пока не критично 6. ограничивать количество активных соединений на каждый натируемые ип. Вставить ник Quote
cmhungry Posted January 20, 2007 Posted January 20, 2007 Сеть всё расчёт и растёт. Нагрузка на внешние каналы тоже.Сейчас в инет смотрят три freebsd роутера. Построено на Athlon 64 3200+ 2. максимальное количество записей в ipnat во freebsd 180000. Стандартно вообще 30000. Получается, что дальше 180 000 не сделаешь. (проблему можно решить размножив freebsd роутеры. Лечится. Правим сорцы ручками, натит сколько скажешь. 1 файл в паре-тройке мест. Вставить ник Quote
kamd Posted January 21, 2007 Author Posted January 21, 2007 Есть ещё одна проблема. Чем больше загрузка, тем чаще скорость шейпированного канала реже достигает своего максимального канала. Пользователи начинают роптать. Что делать ума не приложу. Разве что на самом деле предоставлять канал большей ёмкости. Вставить ник Quote
jab Posted January 21, 2007 Posted January 21, 2007 Для начала следует пристрелить того, кто туда поставил атлоны. Вставить ник Quote
Giga-Byte Posted January 21, 2007 Posted January 21, 2007 Для начала следует пристрелить того, кто туда поставил атлоны. гхм. при всём уважении к Вам, не могли бы Вы пояснить в чём проблема? Вставить ник Quote
kamd Posted January 21, 2007 Author Posted January 21, 2007 Это болтология. Не обращай внимания. Манера не говорить по существу и при видимом участии в дискуссии не давать никакой реальной информации. Вставить ник Quote
Master239 Posted January 22, 2007 Posted January 22, 2007 насколько я понял человечество пока не придумало альтернативного способа натить кроме как до бесконечности ставить подпорки к умирающей фряхе... у меня тоже получилось около 20000 пакетов есть кто достиг большего ? ну либо 65 каталист с 4мя FW модулями ;) но это слишком дорого... Вставить ник Quote
jab Posted January 22, 2007 Posted January 22, 2007 гхм. при всём уважении к Вам, не могли бы Вы пояснить в чём проблема? L2 cache + chipset. CPU states: 0.0% user, 0.0% nice, 0.2% system, 9.1% interrupt, 90.7% idle pf nat ( optimization aggressive ) , polling em(4) Pentium D 925, i7230 ~= 25kpps, ~=120Mbit/s, 100k nat entries Вставить ник Quote
witch Posted January 22, 2007 Posted January 22, 2007 можно натить не адресом, а пулом адресов(внешних) Вставить ник Quote
Master239 Posted January 22, 2007 Posted January 22, 2007 CPU states: 0.0% user, 0.0% nice, 0.2% system, 9.1% interrupt, 90.7% idlepf nat ( optimization aggressive ) , polling em(4) Pentium D 925, i7230 ~= 25kpps, ~=120Mbit/s, 100k nat entries а немогли бы вы по подробнее описать как вы добились столь выдающихся результатов ?у меня при подобной производительности получается 30-40% интераптов... проц такой же или даже чуть быстрее чипсет правда 945/965 может быть дело в нём ? Вставить ник Quote
jab Posted January 23, 2007 Posted January 23, 2007 Ну-ка, ну-ка, какой там проц побыстрее ? Вставить ник Quote
desperado Posted January 23, 2007 Posted January 23, 2007 не знаю как там у вас в фряхе ну у нас на линухе единственное ограничение с которым я столкнулся и не смог обойти, так это 65535 натов на 1 внешний IP :) и опять же... какой таймаут стоит на эстабилишед? если РФЦшный 4 дня, то никаких натов не хватит! ну и к-во сессий на юзера надо ограничивать... 100, 1000, 10000, но ограничивать надо! иначе задосят рано или поздно. Вставить ник Quote
witch Posted January 23, 2007 Posted January 23, 2007 не знаю как там у вас в фряхе ну у нас на линухе единственное ограничение с которым я столкнулся и не смог обойти, так это 65535 натов на 1 внешний IP :)я вроде сказал достаточно ясно как обойти проблему:можно натить не адресом, а пулом адресов(внешних)этим ты обойдешь ограничение по кол-ву портов. Вставить ник Quote
Master239 Posted January 23, 2007 Posted January 23, 2007 http://www.intel.com/products/processor_nu...t/pentium_d.htm Вставить ник Quote
jab Posted January 23, 2007 Posted January 23, 2007 И на сколько он быстрее на реальных тестах ? nat + pf + forwarding ? Вставить ник Quote
witch Posted January 23, 2007 Posted January 23, 2007 CPU states: 0.0% user, 0.0% nice, 0.2% system, 9.1% interrupt, 90.7% idle pf nat ( optimization aggressive ) , polling em(4) Pentium D 925, i7230 ~= 25kpps, ~=120Mbit/s, 100k nat entries мне тоже интересно как добиться такихже результатов... у меня при 15 мегабитах на 1000 пользователеей CPU states: 68.5% user, 0.0% nice, 10.9% system, 20.6% interrupt, 0.0% idle Mem: 36M Active, 732M Inact, 115M Wired, 50M Cache, 111M Buf, 59M Free Swap: 1024M Total, 1024M Free или вот так если на децл меньше.... CPU states: 52.0% user, 0.0% nice, 9.8% system, 22.7% interrupt, 15.6% idle Mem: 36M Active, 732M Inact, 115M Wired, 50M Cache, 111M Buf, 59M Free Swap: 1024M Total, 1024M Free при этом у всех анлимщиков 16 TCP сессий Вставить ник Quote
jab Posted January 23, 2007 Posted January 23, 2007 Непонятно, откуда такая загрузка в userspace... Вставить ник Quote
kamd Posted January 23, 2007 Author Posted January 23, 2007 Правильно ли я понимаю pf - на каждый ип нужно создавать свою очередь, чтобы у него был персональный шейп? Вставить ник Quote
Master239 Posted January 23, 2007 Posted January 23, 2007 И на сколько он быстрее на реальных тестах ? nat + pf + forwarding ?я писал что почти на таком же железе у меня 30-40 % интераптов при 20 000 пакетах.и просил поделиться опытом по достижению ваших результатов. Вставить ник Quote
cmhungry Posted January 24, 2007 Posted January 24, 2007 И на сколько он быстрее на реальных тестах ? nat + pf + forwarding ?я писал что почти на таком же железе у меня 30-40 % интераптов при 20 000 пакетах.и просил поделиться опытом по достижению ваших результатов. Core2Duo E6300 CPU states: 12.0% user, 0.0% nice, 58.1% system, 9.8% interrupt, 20.1% idle Mem: 50M Active, 717M Inact, 179M Wired, 44M Cache, 111M Buf, 1652K Free cm@upload:~>netstat -I em0 -w 1 input (em0) output packets errs bytes packets errs bytes colls 13973 0 5934487 18340 0 27424551 0 14353 0 9384411 14652 0 21841774 0 15712 0 8051636 19157 0 28833962 0 12697 0 4133942 18055 0 27188596 0 Но это не НАТ, это фтп-раздатчик. насколько я понял человечество пока не придумало альтернативного способа натить кроме как до бесконечности ставить подпорки к умирающей фряхе... у меня тоже получилось около 20000 пакетов есть кто достиг большего ? ну либо 65 каталист с 4мя FW модулями ;) но это слишком дорого... Mikrotik/AMD 3500+/NAT 30kpps, 30-50% CPU Вставить ник Quote
jab Posted January 24, 2007 Posted January 24, 2007 И на сколько он быстрее на реальных тестах ? nat + pf + forwarding ?я писал что почти на таком же железе у меня 30-40 % интераптов при 20 000 пакетах.и просил поделиться опытом по достижению ваших результатов. polling и smp включать не пробовали ? Вставить ник Quote
desperado Posted January 24, 2007 Posted January 24, 2007 (edited) не знаю как там у вас в фряхе ну у нас на линухе единственное ограничение с которым я столкнулся и не смог обойти, так это 65535 натов на 1 внешний IP :)я вроде сказал достаточно ясно как обойти проблему:можно натить не адресом, а пулом адресов(внешних)этим ты обойдешь ограничение по кол-ву портов. да это понятно, что можно несколько адресов взять, я говорю, что на _один_ адрес не может быть больше сессий. и всё же, кто какой тайм-аут соединений использует? не ужели все на дефолтном сидят? к стати, а какой во фре дефолтный, а то лень лезть смотреть..... ???? или никого не парит что более 90% сессий мёртвые? Edited January 24, 2007 by desperado Вставить ник Quote
PommeFritz Posted January 24, 2007 Posted January 24, 2007 не знаю как там у вас в фряхе ну у нас на линухе единственное ограничение с которым я столкнулся и не смог обойти, так это 65535 натов на 1 внешний IP :)я вроде сказал достаточно ясно как обойти проблему:можно натить не адресом, а пулом адресов(внешних)этим ты обойдешь ограничение по кол-ву портов. да это понятно, что можно несколько адресов взять, я говорю, что на _один_ адрес не может быть больше сессий. и всё же, кто какой тайм-аут соединений использует? не ужели все на дефолтном сидят? к стати, а какой во фре дефолтный, а то лень лезть смотреть..... ???? или никого не парит что более 90% сессий мёртвые? ИМХО, утверждение справедливо для PAT и то не во всех случаях (например не в случае балансировки нагрузки средствами трансляции), для динамического NAT достаточно обеспечить условие уникальности ХОСТ_ИП1-протокол[-порт] <-НАТ_ИП2-> ХОСТ_ИП3-протокол[-порт] и с одним "внешним" ИП можно "натить" больше чем 65к "сессий". Зависит от реализации DNAT. Вставить ник Quote
desperado Posted January 24, 2007 Posted January 24, 2007 ИМХО, утверждение справедливо для PAT и то не во всех случаях (например не в случае балансировки нагрузки средствами трансляции), для динамического NAT достаточно обеспечить условие уникальности ХОСТ_ИП1-протокол[-порт] <-НАТ_ИП2-> ХОСТ_ИП3-протокол[-порт] и с одним "внешним" ИП можно "натить" больше чем 65к "сессий". Зависит от реализации DNAT. оно, конечно, так, но я бы не стал без острой необходимости использовать один src порт для нескольких соединений. Вставить ник 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.