Hlavní navigace

Kam pakety, kam jdete aneb odposlech sítí

Ivo Rehberger 13. 2. 2002

O odposlechu síťové komunikace se lze často dočíst v kontextu s různými podvratnými aplikacemi, jenž mají za cíl zachycení uživatelských hesel apod. Metoda odposlechu síťové komunikace však slouží především k analýze a optimalizaci síťové infrastruktury a v neposlední řadě jako zdroj kvalitních dat pro clickstream analýzu.

Nejprve si uveďme, co si pod pojmem kvalitních clickstreamových dat můžeme představit. Základní vlastností, kterou požadujeme po clickstreamových datech je jejich přesnost, tj. aby přesně zachycovala uživatelský zážitek z návštěvy webového serveru. Přesnost vstupních dat je pro analýzu zásadní a ovlivňuje přímo úměrně správnost jejích výsledků. Další požadovanou vlastností clickstreamových dat je jejich informační obsah. Opět platí, že čím jsou data bohatší na informace, tím více se dovídáme z výsledných charakteristik clickstream analýzy. Metoda odposlechu síťové komunikace jako zdroj clickstreamových dat je na tom ve srovnání se souborem logů webového serveru mnohem lépe, v obou výše zmíněných vlastnostech. Za použití přesnějšího a informačně obsažnějšího zdroje dat však platíme náročnějším zpracováním v rámci ETL procesů a následné clickstream analýzy.

Principielně je metoda odposlechu síťové komunikace založena na zachytávání paketů síťového protokolu. Zjednodušeně řečeno je komunikace po síti koncipována do několika vrstev, přičemž vrstvou nejvyšší je v našem případě aplikační vrstva protokolu HTTP. Pokud bychom prováděli odposlech na této vrstvě, získali bychom informace pouze z protokolu HTTP a pro potřeby clickstream analýzy bychom setrvali na úrovni souboru logů webového serveru. Abychom získali více informací o vyšší přesnosti, musíme přesunout náš zájem z aplikační vrstvy o úroveň níže, na transportní vrstvu protokolu TCP. Při síťové komunikaci mezi uživatelským prohlížečem a webovým serverem jsou veškerá data na obou stranách HTTP komunikace předána nižší transportní vrstvě protokolu TCP, který je „zabalí“ do TCP paketů a postará se o jejich doručení. Jakmile jsou TCP pakety doručeny příjemci, je jejich obsah „rozbalen“ a předán vyšší aplikační vrstvě protokolu HTTP. Pro úplnost je nutno dodat, že pod transportní vrstvou protokolu TCP jsou ještě vrstvy další, jenž ve skutečnosti zajišťují přenos dat po síti, až po „fyzické“ doručení na konkrétní počítač. Pro naše potřeby však podrobná znalost jejich funkce není potřebná.

Při odposlechu síťové komunikace mezi prohlížečem a webovým serverem se využívá vlastností protokolu TCP. Ten je založen na tom, že každý úspěšně po síti přenesený TCP paket je příjemcem potvrzen a toto potvrzení je opět jako TCP paket doručeno zpět, odesílateli původních dat. Díky této vlastnosti jsme schopni odposlechem komunikace zjistit, jestli byla uživatelem požadovaná HTML stránka úspěšně doručena a zobrazena v jeho prohlížeči, či nikoliv. Tato informace je důležitá proto, že nám umožňuje identifikovat uživatelské připojení postižené chybami síťové komunikace, a tak zabránit např. tomu, aby bylo analyzováno společně s těmi, jenž proběhly bez chyb. Konkrétním příkladem může být situace, kdy provádíme analýzu opuštěných nákupních košíků a snažíme se zjistit důvody, proč nebyla nákupní transakce úspěšně dokončena. Znalost skutečnosti, že uživatel opustil plný nákupní košík z důvodu chyby síťové komunikace, tedy proto, že se mu nezobrazila odpovídající stránka, je pro nás důležitou informací.

Díky odposlechu na úrovni protokolu TCP získáváme celou řadu přesných časových údajů, popisujících komunikaci mezi uživatelským prohlížečem a webovým serverem. Známe přesný čas přenosu požadované stránky (včetně všech jejích objektů) ze serveru do prohlížeče uživatele a rovněž čas přenosu uživatelských požadavků v opačném směru. Díky tomu přesně určíme, kolik času strávil uživatel nad obsahem stránky a kolik čekáním na její zobrazení, a také víme, jakým internetovým připojením co do rychlosti přenosu disponuje. Ze znalosti přesných časových relací komunikace prohlížeč-server dále zjistíme, jak dlouho trvá webovému serveru vyřízení jednotlivých uživatelských požadavků. Tento údaj nám usnadní sledování jeho výkonu a upozorní nás na situaci, kdy průměrný čas vybavování uživatelských požadavků serverem překročí únosnou hranici, což bude zřejmě signál k posílení výkonu serveru, nechceme-li přijít o méně trpělivé návštěvníky.

Novým druhem informací, jenž nejsou dostupné v souboru logů webového serveru jsou uživatelem vyvolaná přerušení komunikace se serverem. Typicky jde o stisknutí tlačítka Stop prohlížeče v průběhu stahování obsahu, stisknutí tlačítka pro obnovu (aktualizaci) obsahu v průběhu stahování obsahu, opuštění webového serveru či přechod na server jiný nebo definitivní uzavření okna uživatelova prohlížeče a ukončení komunikace. Těchto informací je využíváno k přesnému vymezení online návštěvy uživatele, zejména okamžiku jejího ukončení. V případě přerušení downloadu uživatelem máme k dispozici kompletní informaci o tom, po jakém čase uživatel stahování přerušil a jaká část obsahu proto nebyla stažena na jeho počítač. Těchto informací využijeme k optimalizaci internetové prezentace a kupříkladu k rozdělení objemných souborů – určených ke stažení – na několik menších částí. Rovněž nově získáváme možnost shromažďování parametrů odesílaných prohlížečem na webový server metodou POST, jenž nejsou dostupné v logovém souboru.

Technicky je odposlech síťové komunikace řešen tak, že se na straně serveru připojí do stejného segmentu počítačové sítě nezávislé zařízení. Pracuje v pasivním režimu, kdy zachytává všechny pakety procházející daným segmentem a provádí vyčtení clickstreamových informací z jejich záhlaví a datové části. Zařízení označované jako network collector (případně packet sniffer), v pasivním režimu nijak nezatěžuje internetové připojení webového serveru. Je-li v segmentu sítě více serverů, je network collector schopen zachytávat pakety od všech těchto serverů, i když nás to nezbavuje nutnosti provést jejich časovou synchronizaci, mají-li být analyzovány společně. Použijeme-li network collector v takovémto hromadném modu, můžeme si dovolit vypnout logování u jednotlivých serverů a tak jim ulehčit vybavování uživatelských požadavků, zejména v provozních špičkách.

Oproti zpracování souborů s logy, má odposlech síťové komunikace přínos v tom, že probíhá v reálném čase. Náročnější systémy a řešení pro clickstream analýzu, jenž provádějí odposlech síťové komunikace, toho využívají k online sledování různých ukazatelů, pomocí nichž provádějí úpravy internetové prezentace v reálném čase. Například detekují aktuální rychlost internetového připojení uživatele, a dle její hodnoty zvolí variantu prezentace méně náročnou na objem přenášených dat tak, aby doba jejího stahování na uživatelův počítač zůstala v přijatelných mezích. Jiným příkladem může být sledování ukazatelů obchodních transakcí, které umožňují v reálném čase upravovat ceny prodávaných produktů a sledovat tím určitou obchodní strategii.

Dle průzkumu provedeného autorem dnes převládají na trhu produkty a řešení pro clickstream analýzu na bázi analýzy souboru logů webového serveru. Přesto některé z předních společností v oblasti clickstream analýzy již objevily možnosti odposlechu síťové komunikace a předpokládá se, že je to jeden z vývojových trendů v tomto odvětví.

V dalším článku se podíváme na konkrétní možnosti realizace clickstream analýzy a přehled dostupných řešení.

Anketa

Používáte u svého serveru network collector (resp. packet sniffer)?

Našli jste v článku chybu?

17. 2. 2002 22:43

MK (neregistrovaný)
to musi byt rychlost :-)

17. 2. 2002 18:48

Martin Kalenda (neregistrovaný)
jo az ted mi tvo cvaklo :) me samozrejme taky ...jo me to chodi na pager a pak mi to nedojde na co je to reakce :) jo moje taky a mam to rano v mailu v polozce

CodeRed 237
CedeRed II 92

v reportem vedle portscanu neuspesnych pokudu dostat se pres Fw resp kdyz nekdo nahodou trefi sit ze ktere je pristupny SSH.




Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Podnikatel.cz: EET zvládneme, budou horší zákony

EET zvládneme, budou horší zákony

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Vitalia.cz: Manželka je bio, ale na sex moc není

Manželka je bio, ale na sex moc není

Lupa.cz: Babiš: E-shopů se EET možná nebude týkat

Babiš: E-shopů se EET možná nebude týkat

Podnikatel.cz: Prodává přes internet. Kdy platí zdravotko?

Prodává přes internet. Kdy platí zdravotko?

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Podnikatel.cz: Změny v daních z příjmů u zaměstnávání

Změny v daních z příjmů u zaměstnávání

Root.cz: Telegram spustil anonymní blog Telegraph

Telegram spustil anonymní blog Telegraph

Měšec.cz: Vklad na cizí účet je draze zpoplatněn (přehled)

Vklad na cizí účet je draze zpoplatněn (přehled)

Vitalia.cz: Pravda o přibírání na zimu

Pravda o přibírání na zimu

Vitalia.cz: Chtějí si léčit kvasinky. Lék je jen v Německu

Chtějí si léčit kvasinky. Lék je jen v Německu

Podnikatel.cz: Pozor, pojišťovny mění čísla účtů

Pozor, pojišťovny mění čísla účtů

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!

Lupa.cz: UX přestává pro firmy být magie

UX přestává pro firmy být magie

Vitalia.cz: Naučí vás péct kváskový chléb bez lepku i s lepkem

Naučí vás péct kváskový chléb bez lepku i s lepkem