NetFlow v9 Templates
 

Do 9 wersji eksportu danych NetFlow rekordy miały stałą budowę, stąd kolektor zawsze wiedział jak interpretować otrzymane informacje. Elastyczność w wyborze eksportowanych danych i budowie rekordów NetFlow v9 skomplikowała nieco sytuację. Rekordy mogą składać się nie tylko z wybranej części dobrze znany pól, ale też istnieje możliwość definiowania nowych.

Aby kolektor radził sobie z przesyłanymi do niego rekordami, musi wcześniej otrzymać instrukcję ich czytania. Są nią szablony rekordów, które zawierają listę pól składających się na rekord oraz ich typ i wielkość. Jako, że do kolektora możemy wysyłać różne rekordy, z różnymi polami, to każdy z takich szablonów identyfikowany jest numerem ID. Numer ten zawiera też każdy zbiór rekordów danych (FlowSet). Dzięki temu istnieje możliwość powiązania tych informacji ze sobą. Podobna sytuacja ma miejsce podczas eksportu opcji.

Tak więc w NetFlow v9 mamy szablony rekordów i rekordy oraz szablony opcji i opcje. Szablony są niczym innym, jak instrukcjami, mówiącymi kolektorowi, jak czytać otrzymane informacje. 

Jak powiedzieliśmy sobie we wcześniejszym artykule, SCTP wysyła szablony w oddzielnym strumieniu w sposób niezawodny, dzięki czemu mamy pewność iż kolektor prawidłowo zinterpretuje dane. W przypadku UDP informacje te przesyłane są okresowo, ze względu na zawodny sposób transmisj. Domyślnie co 20 pakietów lub co 30 minut.
 
Warto dodać, że TNF (Tradictional NetFlow) wykorzystuje predefiniowane przez producenta szablony, do których możemy dodać zaledwie kilka pól. FNF (Flexible NetFlow) umożliwia samodzielne budowanie szablonów od podstaw.

My zaczęliśmy od TNF, jako że jest o wiele prostszy w konfiguracji i łatwiej skupić się na tym co na ten moment istotne, czyli sposobie działania i idei NetFlow. Ta część się jakby nie zmienia. Inna rzecz, że TNF będzie dało się uruchomić nawet na dość starych platformach, co dla niektórych może być kluczowe.

Zainteresowanych zbieraniem danych o ruchu oraz jego analizą zachęcamy do zapoznania się z Cisco Stealthwatch.


Na podobny problem można natrafić podczas korzystania z analizatora pakietów. Dopóki nie otrzyma on szablonu dla danych NetFlow v9, nie wie jak powinny być one interpretowowane.
 

 


Rekordy, opcje, szablony rekordów i szablony opcji mogą być przesyłane w tym samym pakiecie. Jako, że możemy eksportować wiele różnych rekordów i opcji, to szablonów tych także może być wiele. Są one identyfikowane przez ID, które określa urządzenie wysyłające.


Poniżej możemy zobaczyć pakiet, zawierający jeden szablon opcji i dwa szablony rekordów. Dodatkowo w pakiecie tym znajdują się zbiory rekordów (FlowSet) z przepływami/rekordami (flows), które identyfikowane są tym samym numerem ID, co odpowiadający im szablon. W każdym zbiorze rekordów zawarta jest informacja na temat ich ilości.

 


Szablon zawiera informacje na temat ilości pól oraz ich typu i wielkości. Poniżej widać szablon opcji, który zawiera informacje o wysłanej do kolektora ilości pakietów i przepływów (szablon ten aktywowany jest poleceniem ip flow-export template options export-stats).


Dane odpowiadające temu szablonowi widać poniżej. Warto zwrócić uwagę na ten sam ID (Template ID i FlowSet ID).


Wysyłane przez R4 rekordy przepływów oparte są o dwa szablony. Jeden dla ruchu nie-MPLS, który widać poniżej.
 


I drugi szablon dla rekordów MPLS.


Odpowiadające tym szablonom dane/rekordy można zobaczyć poniżej. Pierwszy dotyczy ruchu nie-MPLS.


A drugi ruchu MPLS.
 


Podobna sytuacja ma miejsce dla danych eksportowanych z Aggregation Caches przy użyciu NetFlow v9. W taki sam sposób wysyłane są do kolektora odpowiednie szablony rekordów i rekordy.


Zapraszamy do kontaktu drogą mailową This email address is being protected from spambots. You need JavaScript enabled to view it. lub telefonicznie +48 797 004 932.