IPFW count a shaping

Dan Lukes dan at obluda.cz
Sun Aug 27 13:14:32 CEST 2006


Milan Cizek napsal/wrote, On 08/27/06 13:03:
> rad bych se zeptal na pocitani traficu přes count v IPFW. Pokud porovnam
> realne stazena data na PC a hodnotu z count, count je vetsinou minimalne 2x
> tolik. Jiste chapu, ze TCP/IP ma také nejakou rezii at., ale nechce se mi
> uverit, ze by to bylo o 150% vice. Mam k tomuto 2 konkretni otazky:
> 
> 1) pouzivam:
> sysctl net.inet.ip.fw.one_pass=0
> 
> 04950      0        0 count ip from not 10.0.0.0/8 to 10.0.7.20
> 04950      0        0 count ip from 10.0.7.20 to not 10.0.0.0/8
> 
> - nemuze toto byt pricina? Ze by paket kazdym countem prosel vicekrat? Pokud
> ano, jak zaridim, aby prosel jen 1x? (pokud to nelze, tak si vysledek muzu
> pripadne podelit - /2?)

	;-)

	Ano, paket kazdym countem prochazi dvakrtat. Ale "toto" neni pricina 
(at uz se "totem" mysli cokoliv z toho, co bylo uvedeno). Ani hodnota 
one_pass ne - ta ve skutecnosti nema zadny vliv na pocet pruchodu paketu 
jednim pravidlem.

	Vtim je v tom, ze kazdy paket prochazi firewallem nekolikrat - typicky 
dvakrat, za urcitych konfiguraci az ctyrikrat.

	A pokud pravidlo nerika, ktery pruchod ma pocitat, pak pocita vsechny. 
"Meri mi to dvojnasobek" je, abych tak rekl, tradicni chyba ... ;-).

	Doporucuju pridat neco jako "in recv <interface>" nebo "out xmit 
<interface>"

> 2) pokud je danemu klientu delan shaping, predpokladam, ze se do countu
> zapocitaji i data, která se treba zahodi. Zkousel jsem count pravidlo
> umistit az za allow, ale hodnota je stejna. Jak pocitat data před a za
> shapingem? Diky
> 
> 04950      0        0 pipe 720 ip from not 10.0.0.0/8 to 10.0.7.20
> 04950      0        0 allow ip from any to 10.0.7.20 in via ste0

	Zaprve - takhle napsany shaping bude uzivateli dovolovat ve skutecnosti 
polovicni hodnotu toku, nez je nakonfigurovano - ze stejneho duvodu, 
proc count shora meri dvojnasobek. I toto je "tradicni" problem ;-)


	A az vyresis tenhle a tak pujde vyresit i ten druhy - kdyz budes 
shaping delat na vstupnim interface a pocitat na vystupnim, pak budou 
hodnoty zcela jasne. Nicmene, pocitat lze i na stejnem interface, pak 
zalezi na poradi.

					Dan



-- 
Dan Lukes                                   SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz,dan at kolej.mff.cuni.cz





More information about the Users-l mailing list