Analýza datových toků se stává stále důležitějším aspektem monitorování sítí. Správci a manažeři díky ní získávají detailní vhled do síťového provozu, včetně jeho objemu a typu. Tato úroveň viditelnosti je klíčová pro odhalování úzkých míst, zpomalení a dalších síťových problémů. Stejně tak je nezbytná pro plánování budoucí kapacity sítě. V tomto článku se zaměříme na nejlepší bezplatné nástroje pro sběr a analýzu sFlow dat. SFlow, podobně jako Cisco NetFlow nebo otevřený standard IPFIX, ale s jistými rozdíly, poskytuje síťovým administrátorům podrobný přehled o dění v jejich sítích.
Existuje několik metod, jak získat přehled o síťovém provozu. Protokol SNMP (Simple Network Management Protocol) umožňuje čtení čítačů na síťových zařízeních a výpočet využití šířky pásma každého rozhraní. Pro menší sítě to může být dostačující. Nástroje jako ping, traceroute (nebo tracert), nmap a netstat pomáhají s diagnostikou základních problémů, avšak pro komplexní pohled je analýza datových toků nenahraditelná.
Nejprve si vysvětlíme, co je sFlow, jak funguje a jaký má přínos. Srovnáme ho také s NetFlow, který je jakýmsi vzdáleným příbuzným sFlow. Přestože se nástroje pro sběr a analýzu sFlow a NetFlow často překrývají, rozdíly mezi těmito protokoly jsou významné. Následně představíme pět nejlepších bezplatných nástrojů pro sběr a analýzu sFlow dat.
Co je sFlow?
Písmeno „s“ v sFlow značí „sampling“ neboli vzorkování. To je klíčové pro jeho fungování a odlišuje ho od ostatních systémů pro analýzu datových toků. Většina zpracování dat sFlow probíhá přímo na monitorovaných zařízeních. Proto sFlow funguje pouze na zařízeních, která ho podporují. Naštěstí je takových zařízení mnoho, zejména od významných výrobců síťových prvků.
Přestože standard sFlow nyní spravuje konsorcium sFlow.org, sFlow je dílem společnosti inMon, která stále dohlíží na jeho vývoj. Mnoho předních výrobců, jako jsou Alcatel-Lucent, Brocade, Aruba, Cisco, Dell, Hewlett Packard, IBM a další, implementovalo podporu sFlow do mnoha svých switchů a dalších síťových zařízení. Celkem více než 300 výrobců zahrnuje sFlow do svých produktů.
Hlavním cílem sFlow je monitorování vysokorychlostních sítí. Jedná se o bezstavový protokol pro vzorkování paketů. Označení „Flow“ v názvu protokolu může být zavádějící, protože sFlow ve skutečnosti nepracuje s agregací datových paketů do toků na vyšší úrovni. Místo toho pracuje na úrovni jednotlivých paketů.
Základní princip sFlow spočívá v obecném vzorkování paketů, které zahrnuje vrstvy až do sedmé. Exportér sFlow, který běží na síťovém zařízení, shromažďuje hlavičky z podmnožiny všech paketů procházejících rozhraním. Frekvence vzorkování umožňuje správcům nastavit, že se bude vzorkovat například jeden paket z každých N paketů. Exportér také náhodně vybírá a zahrnuje pakety. Následně exportér sestaví počáteční bajty každého vzorkovaného paketu spolu s čítači zařízení a odesílá je do sFlow kolektoru jako datagram sFlow pomocí protokolu UDP. Zařízení neukládá do mezipaměti žádná data ani vzorkované pakety, čímž se snižuje využití zdrojů a umožňuje škálování na vysokorychlostní sítě.
sFlow vs NetFlow, jaký je rozdíl?
Navzdory podobným názvům a tomu, že mnoho sběračů a analyzátorů dokáže pracovat s NetFlow i sFlow, se tyto dva protokoly zásadně liší, zejména ve způsobu, jakým plní svůj úkol.
Avi Freedman, spoluzakladatel a generální ředitel společnosti Kentik, uvádí analogii monitorování silničního provozu, která dobře shrnuje rozdíl mezi NetFlow a sFlow: „Zatímco NetFlow lze popsat jako sledování dopravních vzorců (‚Kolik autobusů jelo odtud tam?‘), sFlow jen pořizujete snímky všech aut nebo autobusů, které v tu chvíli projíždějí.“ I když je to výstižná analogie, může být zavádějící, protože může vést k domněnce, že NetFlow poskytuje více informací než sFlow a je tedy lepší.
I když je pravděpodobně pravda, že NetFlow poskytuje více informací než sFlow, neznamená to automaticky, že je to lepší protokol. V první řadě, využití zdrojů – paměti a CPU – je u NetFlow mnohem vyšší než u sFlow. Díky tomu je sFlow atraktivnější volbou pro méně výkonná zařízení. Dále je tu otázka, jestli je více informací vždy lepší. Ano, NetFlow může shromažďovat více dat, ale jsou skutečně potřeba? A dokáže je analyzátor vůbec zpracovat?
Zásadní otázka: Mám používat NetFlow nebo sFlow?
Je snadné položit otázku, ale těžší na ni odpovědět. Jak už bylo řečeno, mnoho kolektorů a analyzátorů zvládne zpracovat data NetFlow i sFlow. Navíc existuje velké množství síťových zařízení, která podporují oba protokoly. Proto je výběr mezi nimi o to těžší. Hlavním faktorem by pravděpodobně měla být podpora protokolu vašimi zařízeními.
Je však nutné si vybírat? NetFlow i sFlow jsou vynikající systémy. Proč tedy nevyužít oba protokoly s pomocí sběrače a analyzátoru, který je podporuje? Získáte tak detailní informace o tocích ze zařízení, která podporují sFlow, i ze zařízení, která podporují NetFlow.
A co zařízení, která mají vestavěnou podporu pro oba protokoly? Například mnoho zařízení Cisco může používat oba. V takových případech bych doporučil používat sFlow, protože má menší nároky na zdroje. Pokud ovšem nevyužijete dodatečné informace, které poskytuje NetFlow.
Nejlepší bezplatné sFlow kolektory a analyzátory
Prozkoumali jsme internet a vybrali nejlepší bezplatné kolektory a analyzátory sFlow. Mezi nimi jsou skutečně bezplatné produkty i komerční software, který nabízí bezplatnou zkušební verzi nebo ořezanou bezplatnou verzi. Některé z nich podporují pouze sFlow, zatímco jiné umí pracovat s oběma protokoly, sFlow i NetFlow. Každý z pěti vybraných nástrojů jsme otestovali a nyní vám představíme naše zjištění. Zde je seznam našich top 5 nástrojů.
Kolektor a analyzátor SolarWinds sFlow
inMon sFlowTrend
ManageEngine NetFlow Analyzer
ntopng a nProbe
Plixer Scrutinizer
1. Kolektor a analyzátor SolarWinds sFlow (ZKUŠEBNÍ VERZE ZDARMA)
SolarWinds je známé jméno v oblasti správy sítí. Společnost vyvíjí software, který pomáhá správcům sítí lépe porozumět dění v jejich infrastruktuře. Jejich hlavním produktem je Network Performance Monitor.
SolarWinds je také známý tím, že nabízí řadu bezplatných a užitečných nástrojů. Patří mezi ně kalkulačky IP adres pro začátečníky, které pomáhají s výpočtem podsítí a adres hostitelů, až po kompletní, i když omezené, monitorovací systémy. Jedním z takových produktů, SolarWinds Real-Time Netflow Analyzer, jsme se zabývali v předchozím článku. Doporučujeme vám si přečíst podrobnosti.
Dnes se však zaměřujeme spíše na sFlow než na NetFlow. A i když SolarWinds nemá bezplatný sFlow ekvivalent k jejich Real-Time NetFlow Analyzer, nabízí sFlow Collector a Analyzer jako funkci svého NetFlow Traffic Analyzer nebo NTA. Ten je modulem Network Performance Monitor nebo NPM. A i když NTA ani NPM nejsou bezplatné produkty, je k dispozici 30denní zkušební verze zdarma. SolarWinds totiž nabízí 30denní zkušební verzi většiny svých produktů. Můžete si je tak bez rizika vyzkoušet.
Odkaz ke stažení: https://www.solarwinds.com/netflow-traffic-analyzer
Navzdory zavádějícímu názvu, SolarWinds NetFlow Traffic Analyzer zpracovává data NetFlow i sFlow. Díky tomu je ideální volbou pro různorodá prostředí, kde některá zařízení podporují jeden protokol, zatímco jiná podporují jiný. NTA bude jako sFlow sběrač shromažďovat veškerá sFlow data ze zařízení, která monitoruje.
V kombinaci NPM a NTA nabízí působivou sadu funkcí, které pomohou každému správci při správě sítí různých výrobců. Získáte monitorování šířky pásma pomocí SNMP, analýzu provozu, analýzu výkonu, upozornění, hlášení, optimalizaci zásad a mnoho dalšího.
Ve výchozím nastavení bude souhrnná stránka NetFlow Traffic Analyzer zobrazovat několik sekcí, jako je 5 nejlepších aplikací, 5 nejlepších koncových bodů, 5 nejlepších konverzací nebo 10 nejlepších zdrojů podle procenta využití šířky pásma. Jako analyzátor toků dokáže identifikovat uživatele, aplikace a protokoly, které spotřebovávají nejvíce šířky pásma. Díky tomu mohou správci rychle najít zdroj případného přetížení. Zobrazené výsledky můžete třídit podle několika kritérií, jako je port, zdroj, cíl, protokol a další. Umožňuje také zobrazit vzorce provozu v minutách, dnech nebo měsících.
NTA i NPM jsou software podnikové úrovně, který je navržen pro škálování do velmi rozsáhlých sítí se stovkami, ne-li tisíci zařízeními. Proto budou spotřebovávat značné prostředky na vašem systému a měli byste je instalovat na dedikovaný hardware. Pokud však spravujete takovou síť s mnoha zařízeními podporujícími sFlow, stojí za to vyzkoušet sběr a analýzu sFlow pomocí NTA. Budete muset vynaložit určité úsilí na jeho implementaci, ale odměna za to bude značná.
2. inMon sFlowTrend
inMon, společnost stojící za sFlow, má svůj vlastní bezplatný monitorovací nástroj, sFlowTrend. Je to základní a mírně omezený, avšak velmi schopný nástroj. Bezplatná verze softwaru umožňuje shromažďovat data až z pěti switchů, routerů nebo hostitelů s povoleným sFlow a uchovává historická data v paměti RAM po dobu jedné hodiny. Pro většinu problémů se sítí by to mělo stačit. Pokud budete chtít vylepšit, můžete upgradovat na profesionální verzi – samozřejmě za poplatek – která odstraní limit počtu zařízení a ukládá data historie na disk.
Panel sFlowTrend Dashboard poskytuje rychlý přehled o aktuálním stavu monitorovaných zařízení a sítí, včetně prahů nejvyšší úrovně a rozhraní s potenciálními chybami. Po kliknutí na kartu Síť zobrazí sFlowTrend souhrnné statistiky výkonu a podrobný provoz na úrovni sítě nebo zařízení. Je možné definovat prahové hodnoty pro výstrahy. Můžete tak dostávat upozornění, pokud dojde k neobvyklému využití šířky pásma nebo k chybě v síti. K dispozici je také karta hlavní příčiny, kde můžete podrobněji prozkoumat příčinu problému, například překročení prahové hodnoty.
Na kartě Hostitelé naleznete podrobnější informace o každém zařízení. Poskytuje data o výkonu sítě, CPU, disku atd. pro servery podporující sFlow, včetně virtuálních. Na kartě Služby se zobrazují data o výkonu aplikací (včetně různých webových serverů), které exportují data sFlow. Na kartě Události najdete protokol událostí, jako jsou překročení prahových hodnot nebo zjištěné chyby. A nakonec karta Přehledy nabízí několik předdefinovaných sestav, ale také umožňuje vytvářet vlastní. Zde spustíte sestavy a zobrazíte jejich výsledky.
sFlowTrend je napsán v jazyce Java a dodává se s uživatelským rozhraním založeným na Javě nebo s webovým rozhraním. Je k dispozici pro Windows, Macintosh a Linux. K dispozici je také online nápověda, která vám pomůže s konfigurací a používáním nástroje. Je to skvělý nástroj, zejména pro menší organizace s vybavením podporujícím sFlow. A možnost upgradu na profesionální verzi z něj dělá stejně dobrou volbu i pro větší sítě.
3. ManageEngine NetFlow Analyzer
I když je ManageEngine NetFlow Analyzer primárně kolektorem a analyzátorem NetFlow, zpracuje také datagramy sFlow, které na něj odesílají vaše zařízení s povoleným sFlow. Je to další skvělý nástroj od společnosti, která je známá tím, že dodává vysoce kvalitní nástroje pro správu. Tento nástroj vám poskytuje přehled o provozu a šířce pásma podle aplikace, konverzace nebo protokolu. Můžete také nastavit upozornění na základě prahových hodnot provozu.
ManageEngine NetFlow Analyzer nabízí velké množství předdefinovaných reportů. Některé vám pomohou s řešením problémů, jiné s plánováním kapacity a další můžete použít pro účely fakturace pro organizace, které přeprodávají svou infrastrukturu. Samozřejmě nechybí ani možnost tvorby vlastních reportů.
Jednou z unikátních funkcí webového dashboardu je tepelná mapa, která na první pohled zobrazuje stav monitorovaných rozhraní. Dále jsou zde koláčové grafy v reálném čase, které ukazují nejlepší aplikace, protokoly a konverzace, poslední alarmy a další.
Bezplatná verze má svá omezení. Například umožňuje neomezené sledování po dobu 30 dnů, poté se vrátí ke sledování pouze dvou rozhraní. To není mnoho, ale mohlo by to stačit pro rychlou diagnostiku problémů, pokud přesně víte, kde hledat. Samozřejmě můžete upgradovat na placenou verzi a odstranit omezení dvou rozhraní. ManageEngine také nabízí několik souvisejících produktů, které spolupracují na rozšíření základní analýzy provozu na kompletní sadu pro správu sítí.
4. ntopng a nProbe
ntopng je open-source nástroj pro analýzu provozu. Pasivně monitoruje sítě na základě datových toků a zachycení paketů. ntopng je pouze analyzátor, pro shromažďování dat o tocích se spoléhá na nProbe. nProbe podporuje několik různých typů dat o tocích, včetně NetFlow a sFlow. Společně tvoří velmi silné duo pro monitorování a řešení problémů.
ntopng má webové uživatelské rozhraní, kde jsou informace prezentovány několika způsoby, například provoz (např. hlavní zdroje), toky, hostitelé, zařízení a rozhraní. Zobrazení toků je asi nejzajímavější, protože zobrazuje aplikační protokoly a latenci nebo jiné statistiky TCP, jako je ztráta paketů. Pomocí ntopng můžete také nastavit výstrahy na základě několika prahových hodnot a kritérií.
ntopng je k dispozici ve třech verzích: Community, Professional a Enterprise. Komunitní verze je zdarma. Professional a Enterprise nabízejí některé dodatečné funkce a jsou k dispozici ke koupi.
nProbe lze používat zdarma, ale má omezení na 25 000 exportovaných toků. I když se to může zdát hodně, je snadné toto číslo dosáhnout. Omezení samozřejmě můžete odstranit zakoupením licencí.
5. Plixer Scrutinizer
Scrutinizer od Plixer je velmi sofistikovaný „systém pro reakci na incidenty“, jak uvádí web společnosti Plixer. Nenechte se však zmást tímto pompézním názvem. Scrutinizer je v první řadě vynikající systém pro monitorování sítí. Je velmi důkladný a komplexní, a v kontextu tohoto článku je zajímavý tím, že umí pracovat s daty sFlow i NetFlow.
Scrutinizer nabízí jedno z nejškálovatelnějších řešení na trhu. Udává se, že má nejrychlejší reporting a poskytuje nejbohatší datový kontext. Má řízení přístupu na základě rolí, takže různé týmy vidí jen data, která potřebují. Je navržen pro vysoký výkon a škálovatelnost, od malých po velmi velká prostředí. Poskytuje širokou škálu analytických a reportovacích funkcí.
Scrutinizer lze nastavit několika způsoby. Můžete jej nainstalovat jako dedikované zařízení nebo jako virtuální server. Lze jej také provozovat jako software jako služba, kde běží v cloudu. V tomto režimu si můžete vybrat, zda budete používat veřejný cloud společnosti Plixer nebo soukromý. Jedná se o velký systém, který má vysoké nároky na zdroje. Musíte ho nastavit na výkonném serveru, například s 16 GB RAM.
Scrutinizer je k dispozici ve čtyřech licenčních úrovních. Existuje bezplatná verze (nejde o zkušební verzi, ale skutečnou bezplatnou verzi), která podporuje až 10 000 toků za sekundu, uchovává data o tocích po dobu 5 hodin a historické souhrny po dobu jednoho týdne. Poté jsou k dispozici tři placené verze, které se liší počtem toků za sekundu, které podporují, a historií, kterou uchovávají. Každá vyšší úroveň navíc přidává některé další funkce k již tak bohaté sadě funkcí.
Závěrem
Pokud vaše síť sestává především ze zařízení podporujících sFlow, máte k dispozici několik vynikajících nástrojů, které vám poskytnou neocenitelný přehled o chování vaší sítě. A pokud máte zařízení podporující sFlow i NetFlow, některé z těchto nástrojů podporují oba protokoly. Váš konečný výběr bude záviset především na velikosti vaší sítě, na tom, jaký protokol podporují vaše zařízení a na očekávaném růstu vaší sítě. Nastavení těchto nástrojů vyžaduje čas a je vhodné si hned od začátku vybrat ten správný. Může vás to ušetřit budoucích komplikací.