G.Y.S. Posted March 23, 2006 Posted March 23, 2006 ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1 ${ipfw} pipe 1 config mask dst-ip 0xffffffff bw 1Mbit/s ${ipfw} add 20 pipe 2 ip from table1 to any out via vlan1 ${ipfw} pipe 2 config mask src-ip 0xffffffff bw 1Mbit/s по данным правилам пакеты попадаеющие под правила 10 и 20 dummynet будет генерить pipes (если они имееют разные dst-ip и src-ip соответственно) 1. параметр pipe - net.inet.ip.dummynet.hash_size - как написано в мане обозначет размер хэш таблицы (1а. что это?) (по умолчанию) 64 (1б. чего?) И как видно, макс. кол-во pipes которые генерит каждый pipe config mask ______ 0xffffffff как раз равно 64. Если pipe config mask ______ 0xffffffff задан параметр buckets, то размер хэш таблицы будет браться оттуда (1в. верно?) 1г. - dynamic pipe, которые мы видим в ipfw show pipe, имееют ли какое нибудь время жизни? (скажем по pipe-у, который был создан каким нить src-ip уже не ходит трафик, сколько времени он будет жить) 1д. - очередной ip влетая в ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1 хочет создать pipe. А у нас уже все 64 pipe созданы при этом по всем идет трафик, что будет? как настраивается? 1е. - очередной ip влетая в ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1 хочет создать pipe. А у нас уже все 64 pipe созданы при этом НЕКОТОРЫМ dynamic pipe ТРАФИК НЕ ХОДИТ, что будет?как настраивается? 2. sysctl net.inet.ip.dummynet.max_chain_len: 16 Target value for the maximum number of pipes/queues in a hash bucket. (2а. не понял я как раз вижу что maximum number of pipes/queues in a hash bucket задается предыдущим параметром (1) The product max_chain_len*hash_size is used to determine the threshold over which empty pipes/queues will be expired even when net.inet.ip.dummynet.expire=0. 2б. а как этот threshold может быть достигнут если количество dynamic pipe не может быть больше чем значение hash_size (задаваемое net.inet.ip.dummynet.hash_size ) 3. net.inet.ip.fw.dyn_buckets: 256 The number of buckets in the hash table for dynamic rules. Must be a power of 2, up to 65536. It only takes effect when all dynamic rules have expired, so you are advised to use a flush command to make sure that the hash table is resized. разьясните что значит 4. dynamic pipe - в концепции ipfw - это dynamic rules ? Спасибо. Вставить ник Quote
G.Y.S. Posted March 29, 2006 Author Posted March 29, 2006 up, обращаясь к коллетивному разуму)), неужели никто не сталкивался... Вставить ник Quote
stalex Posted January 11, 2007 Posted January 11, 2007 (edited) ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1${ipfw} pipe 1 config mask dst-ip 0xffffffff bw 1Mbit/s ${ipfw} add 20 pipe 2 ip from table1 to any out via vlan1 ${ipfw} pipe 2 config mask src-ip 0xffffffff bw 1Mbit/s по данным правилам пакеты попадаеющие под правила 10 и 20 dummynet будет генерить pipes (если они имееют разные dst-ip и src-ip соответственно) 1. параметр pipe - net.inet.ip.dummynet.hash_size - как написано в мане обозначет размер хэш таблицы (1а. что это?) (по умолчанию) 64 (1б. чего?) И как видно, макс. кол-во pipes которые генерит каждый pipe config mask ______ 0xffffffff как раз равно 64. Если pipe config mask ______ 0xffffffff задан параметр buckets, то размер хэш таблицы будет браться оттуда (1в. верно?) 1a элемент хеш таблицы - один поток данных попадающих под маску. 1в верно 1г. - dynamic pipe, которые мы видим в ipfw show pipe, имееют ли какое нибудь время жизни?(скажем по pipe-у, который был создан каким нить src-ip уже не ходит трафик, сколько времени он будет жить) зависит от того, выставлен ли параметр: net.inet.ip.dummynet.expire=1если 0 - то правила удаляются если превышен порог: net.inet.ip.dummynet.max_chain_len: 16 Target value for the maximum number of pipes/queues in a hash bucket. The product max_chain_len*hash_size is used to determine the threshold over which empty pipes/queues will be expired even when net.inet.ip.dummynet.expire=0. если 1 = ""Lazily delete dynamic pipes/queue <b>once</b> they have no pending traf- fic." 1д. - очередной ip влетая в ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1 хочет создать pipe. А у нас уже все 64 pipe созданы при этом по всем идет трафик, что будет? как настраивается?создается pipы скажем c номерами(bucket'a) 3,3,3,3. в норм ситуаци они были бы 1,2,3,4ну и трафик по ним ходит в соответствии с bw отдельного pipa. те полностью раздельные bw остаются 1е. - очередной ip влетая в ${ipfw} add 10 pipe 1 ip from any to table1 in via vlan1 хочет создать pipe. А у нас уже все 64 pipe созданы при этом НЕКОТОРЫМ dynamic pipe ТРАФИК НЕ ХОДИТ, что будет?как настраивается?опять таки зависит от: net.inet.ip.dummynet.expireв норме если не ходит траффика, то и pip'ы нету. особено в случае с icmp пакетами, для которых ни SYN ни ACK нету. на практике - pipe для icmp живет меньше секунды. 2. sysctl net.inet.ip.dummynet.max_chain_len: 16Target value for the maximum number of pipes/queues in a hash bucket. (2а. не понял я как раз вижу что maximum number of pipes/queues in a hash bucket задается предыдущим параметром (1) The product max_chain_len*hash_size is used to determine the threshold over which empty pipes/queues will be expired even when net.inet.ip.dummynet.expire=0. 2б. а как этот threshold может быть достигнут если количество dynamic pipe не может быть больше чем значение hash_size (задаваемое net.inet.ip.dummynet.hash_size ) как показали тесты на freebsd6.1, вполене может быть больше bucket's чем задано. в тестовом вариантедоходило до 80-90 при ограниченни в 64. и при превышеннии buckets 64 вроде бы более аггресивно удалялись динамические pip'ы 3. net.inet.ip.fw.dyn_buckets: 256 The number of buckets in the hash table for dynamic rules. Must be a power of 2, up to 65536. It only takes effect when all dynamic rules have expired, so you are advised to use a flush command to make sure that the hash table is resized. разьясните что значит см ниже4. dynamic pipe - в концепции ipfw - это dynamic rules ?dynamic rules относятся к конструкция keep-state ...насколько я понимаю Edited January 11, 2007 by stalex Вставить ник Quote
-=DOmen=- Posted December 26, 2008 Posted December 26, 2008 (edited) Спасибо парни. то что я искал Edited December 26, 2008 by -=DOmen=- Вставить ник Quote
lanc Posted September 8, 2009 Posted September 8, 2009 G.Y.S. какие параметры дали наилучший результат? Вставить ник 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.