ERETEK
BİLGİ SİSTEMLERİ

NetFlow, sFlow ve IPFIX: Trafik Analizi İçin Hangisi Seçilmeli?

NetFlow, sFlow ve IPFIX farkı: akış önbelleği ve paket örnekleme, doğruluk, cihaz yükü, Flexible NetFlow örneği, collector boyutlandırma ve karar tablosu.

Bu makalede8 bölüm
Teknik özet
Teknoloji
NetFlow v5/v9, IPFIX, sFlow v5, Cisco Flexible NetFlow
Konu
Akış tabanlı trafik görünürlüğü teknolojilerinin karşılaştırması
Seviye
Orta–ileri
Ön koşullar
  • TCP/IP ve port kavramları
  • SNMP tabanlı izleme deneyimi

Uplink’in ne kadar dolu olduğunu SNMP söyler. O trafiği kimin, hangi hedefe, hangi portla ürettiğini ise akış verisi gösterir. NetFlow, IPFIX ve sFlow bu görünürlüğü sağlayan üç yaygın teknolojidir; çalışma prensipleri farklıdır ve yanlış seçim ya eksik veriyle ya da gereksiz cihaz yüküyle sonuçlanır. Aşağıda ağ ekibinin hangi soruya hangi teknolojiyle cevap alacağını seçebilmesi için üçünü teknik düzeyde karşılaştırıyoruz.

Akış verisi neyi gösterir, SNMP’den farkı nedir?

SNMP arayüz sayaçları toplamı verir: belirli bir aralıkta kaç bayt ve paket geçtiğini. Akış (flow) ise ortak özellikleri olan paketlerin oluşturduğu kayıttır. Klasik tanımda bir akış; kaynak IP, hedef IP, kaynak port, hedef port, protokol, ToS ve giriş arayüzü aynı olan paketlerden oluşur. Toplayıcıya (collector) giden her kayıt bu anahtar alanları, bayt/paket sayısını ve başlangıç–bitiş zamanını taşır.

Bu sayede şu sorulara cevap çıkar: Saat 10:00’daki tepeyi hangi sunucu yarattı? Şube hattını yedekleme trafiği mi dolduruyor, video konferans mı? Bir istemci gece boyunca dışarıda kimlerle konuştu? SNMP bu soruların hiçbirine cevap vermez. Tersi de geçerli: akış verisi arayüz hata ve discard sayaçlarını göstermez. İki kaynak birbirinin yerine geçmez. Birlikte çalışır. Güvenli SNMP kurulumu ayrıca SNMPv3 yapılandırma rehberi yazısında.

NetFlow v5/v9 ve IPFIX: şablon tabanlı akış kayıtları

NetFlow, Cisco’nun geliştirdiği önbellek tabanlı yaklaşımdır. Cihaz geçen paketleri akış önbelleğinde (flow cache) eşleştirir, sayaçları günceller; akış bittiğinde ya da zaman aşımına uğradığında kaydı dışa aktarır.

  • NetFlow v5: Sabit kayıt formatı. Yalnız IPv4 destekler; MPLS etiketi veya uygulama alanı taşıyamaz. Hâlâ yaygın desteklenir ama yeni kurulumda tercih edilmemeli.
  • NetFlow v9 (RFC 3954): Şablon (template) tabanlıdır. Cihaz önce hangi alanları göndereceğini anlatan şablonu yollar, ardından veri kayıtlarını bu şablona göre gönderir. IPv6, MPLS ve özel alanlar bu esneklikle gelir.
  • IPFIX (RFC 7011): NetFlow v9 temel alınarak IETF tarafından standartlaştırılan protokoldür. Bilgi öğeleri IANA kayıt defterinde tanımlıdır; değişken uzunluklu alanları ve SCTP/TCP taşımayı destekler. IANA’nın atadığı port 4739’dur; NetFlow için yaygın kullanılan 2055 gibi portlar standart değil, alışkanlıktır.

Önbellek tabanlı modelde asıl ayar zaman aşımlarıdır. Inactive timeout, belirli bir süre paket görmeyen akışı kapatır. Active timeout ise hâlâ süren uzun akışların (saatler süren bir yedekleme gibi) belirli aralıklarla raporlanmasını sağlar. Active timeout uzun tutulursa uzun akış grafikte tek bir ani sıçrama olarak görünür; 60 saniye civarı bir değer grafik çözünürlüğüyle uyumlu sonuç verir. Sahada sık görülen hata şudur: Cisco Flexible NetFlow’da varsayılan active timeout 1800 saniyedir ve değer açıkça yazılmadığında uzun akışlar 30 dakikalık bloklar halinde düşer. Grafik yanıltır.

sFlow: paket örnekleme ve sayaç toplama

sFlow (sflow.org tarafından yayımlanan sFlow v5 spesifikasyonu) başka bir modeldir: Cihaz akış önbelleği tutmaz. İki tür veri gönderir:

  1. Akış örnekleri: Her N pakette rastgele bir paket seçilir, başlığının ilk baytları (genellikle 128 bayt) collector’a gönderilir. Analiz collector’da yapılır.
  2. Sayaç örnekleri: Arayüz sayaçları belirli aralıklarla (ör. 20–30 saniye) push edilir; SNMP yoklamasına benzer bir veri sağlar.

Örnekleme switch ASIC’inde donanımsal yapıldığı için yüksek hızlı portlarda bile CPU etkisi düşük kalır. Paket başlığının tamamı gittiği için L2 bilgisi (MAC, VLAN etiketi) ve IP dışı protokoller de görülür. Bedeli doğruluktur. Örnekleme istatistiksel bir tahmin üretir; kısa ve küçük akışlar hiç örneklenmeyebilir.

Doğruluk, CPU yükü ve örnekleme oranı karşılaştırması

Ölçüt NetFlow v9 / IPFIX sFlow
Çalışma modeli Akış önbelleği, kayıt dışa aktarımı 1/N paket örnekleme + sayaç
Örneklemesiz doğruluk Her akış sayılır Her zaman örnekleme vardır
Cihaz yükü Önbellek boyutu ve akış sayısına bağlı Düşük, ASIC tabanlı
Görünen katman L3/L4 (şablona bağlı ek alanlar) Paket başlığı: L2–L4
Tipik platform Router, firewall, L3 çekirdek Çok sayıda switch üreticisi
Gecikme Timeout kadar (ör. 60 sn) Neredeyse anlık

Örneklenmiş verinin hata payı örnek sayısına bağlıdır. sFlow dokümantasyonundaki yaklaşık formüle göre, bir trafik sınıfı için toplanan örnek sayısı c ise %95 güven düzeyinde göreli hata en fazla yaklaşık 1,96 × √(1/c) olur. Örnek hesap: Bir uygulamaya ait 10.000 örnek toplandıysa hata payı yaklaşık 0,0196, yani %2 civarındadır; yalnız 100 örnek varsa pay %20’ye çıkar. Pratik karşılığı açık: En çok konuşan 10 sunucu gibi büyük trafik sınıfları örneklemeyle güvenilir ölçülür. Tek bir kısa bağlantının varlığını ise örneklemeyle kanıtlayamazsınız.

Örnekleme oranı port hızına göre seçilir. Üretici önerileri farklıdır; genel mantık, yüksek hızlı portta oranı büyütüp (ör. 1:4096) örnek akışını collector’ın kaldırabileceği seviyede tutmak, erişim portlarında daha sık örneklemektir. NetFlow da örneklemeli çalıştırılabilir (sampled NetFlow). O zaman doğruluk avantajı sFlow seviyesine iner.

Flexible NetFlow örnek yapılandırması

Cisco IOS XE’de Flexible NetFlow (FNF) üç nesneyle kurulur: record (hangi alanlar), exporter (nereye, hangi protokolle) ve monitor (önbellek ve bağlama). Aşağıdaki örnek bir şube router’ının WAN arayüzünden IPFIX formatında dışa aktarım yapar.

flow record FR-IPV4
 match ipv4 tos
 match ipv4 protocol
 match ipv4 source address
 match ipv4 destination address
 match transport source-port
 match transport destination-port
 match interface input
 collect interface output
 collect counter bytes long
 collect counter packets long
 collect timestamp sys-uptime first
 collect timestamp sys-uptime last
!
flow exporter FE-COLLECTOR
 destination 10.10.99.20
 source Loopback0
 transport udp 4739
 export-protocol ipfix
 template data timeout 60
!
flow monitor FM-IPV4
 exporter FE-COLLECTOR
 record FR-IPV4
 cache timeout active 60
 cache timeout inactive 15
!
interface GigabitEthernet0/0/0
 ip flow monitor FM-IPV4 input
 ip flow monitor FM-IPV4 output

Kontrol sırası: show flow monitor FM-IPV4 cache ile önbellekte akış oluşuyor mu, show flow exporter statistics ile paket ve şablon gönderiliyor mu. Collector şablonu almadan veri kayıtlarını çözemez. Collector yeniden başladığında “veri geliyor ama boş görünüyor” şikayetinin sebebi genellikle budur; template data timeout şablonun ne kadar sürede yeniden öğrenileceğini belirler. Yüksek trafikli arayüzde örnekleme gerekiyorsa sampler SMP-100 altında mode random 1 out-of 100 tanımlanır ve ip flow monitor FM-IPV4 sampler SMP-100 input ile bağlanır.

Collector seçimi ve veri saklama boyutlandırması

Collector tarafında seçenekler açık kaynak komut satırı araçlarından (nfdump/nfcapd, pmacct) web arayüzlü analiz platformlarına (ntopng, ElastiFlow gibi) ve ticari NPM ürünlerine kadar uzanır. Seçerken dört soruya bakın: IPFIX ve sFlow’u birlikte alabiliyor mu? Örnekleme oranını hesaba katıp değerleri ölçekliyor mu? Arayüz adlarını SNMP’den çözebiliyor mu? Ham kaydı ne kadar süre, hangi çözünürlükte saklıyor?

Saklama boyutu akış sayısından hesaplanır. Örnek hesap (varsayımlar açık): Ortalama 2.000 akış/saniye üreten bir ağda günde 2.000 × 86.400 = 172,8 milyon kayıt oluşur. Kayıt başına diskte 50 bayt varsayılırsa günlük ham veri yaklaşık 8,6 GB, 30 günlük ham saklama yaklaşık 260 GB eder. Gerçek değer collector’ın sıkıştırmasına ve kayıt alanlarına göre değişir; boyutlandırmayı birkaç günlük pilot ölçümle doğrulayın. Pratikte ham veri kısa süre tutulur, saatlik ve günlük toplulaştırılmış veriler uzun süre saklanır.

Hangi senaryoda hangisi: karar tablosu

Soru / senaryo Uygun veri Not
WAN hattını hangi uygulama dolduruyor? NetFlow/IPFIX Router’da örneklemesiz
Veri merkezi switch’lerinde en çok konuşanlar sFlow Yüksek hızda düşük yük
Belirli bir bağlantının varlığını kanıtlamak Örneklemesiz IPFIX Örneklenmiş veri yetmez
Port kullanım trendi ve hata SNMP Akış verisi gerekmez
Paket içeriği, retransmission analizi Paket yakalama Akış verisi yüzeysel kalır
Çok üreticili kampüs sFlow + IPFIX Collector ikisini de almalı

Çoğu zaman seçimi cihazınız yapar. Birçok kampüs switch’i yalnız sFlow sunar; router ve firewall’lar genellikle NetFlow/IPFIX sunar. Karma yapıda hedef, iki formatı aynı collector’da toplayıp arayüz adlarını ve örnekleme oranlarını doğru normalize etmektir. Akış verisinin işaret ettiği sorunlu bir bağlantıyı paket düzeyinde açmak gerektiğinde sıradaki adım Wireshark ile paket analizi; akış verisinden aylık kapasite raporu üretmek için ağ kapasite raporlaması yazısına bakın.

Akış görünürlüğünü performans sorunlarının teşhisinde kullanmak için network performans analizi ve sorun giderme, sürekli izleme altyapısına bağlamak için ağ bakım ve izleme sayfalarını inceleyebilirsiniz.

Sık sorulan sorular

NetFlow ile IPFIX arasındaki fark nedir?

NetFlow v9 Cisco’nun şablon tabanlı formatıdır; IPFIX bunun üzerine IETF tarafından standartlaştırılmış protokoldür. IPFIX bilgi öğelerini IANA kayıt defterinde tanımlar, değişken uzunluklu alanları destekler ve üreticiden bağımsızdır.

sFlow neden NetFlow’dan daha az kaynak tüketir?

sFlow akış önbelleği tutmaz. Örneklemeyi switch ASIC’i yapar, cihazdaki sFlow ajanı seçilen paket başlıklarını datagramlar halinde collector’a gönderir. Analiz cihazda değil collector’da yapıldığı için yüksek hızlı portlarda bile CPU ve bellek etkisi düşüktür.

Örnekleme oranı ne olmalı?

Tek bir doğru değer yoktur; oran port hızına ve collector kapasitesine göre seçilir. Yüksek hızlı portlarda oran büyütülür, düşük hızlı portlarda daha sık örneklenir. Oranın üreticinin önerdiği aralıkta olduğunu ve collector’ın değerleri ölçeklediğini doğrulayın.

Akış verisi SNMP izlemesinin yerini tutar mı?

Tutmaz. Akış verisi trafiğin kimden kime ve hangi uygulamayla aktığını gösterir; arayüz hata, discard ve durum bilgisi SNMP’den gelir. Kapasite ve arıza analizi için ikisi birlikte kullanılır.

Teknik özet
Teknoloji
NetFlow v5/v9, IPFIX, sFlow v5, Cisco Flexible NetFlow
Konu
Akış tabanlı trafik görünürlüğü teknolojilerinin karşılaştırması
Seviye
Orta–ileri
Ön koşullar
  • TCP/IP ve port kavramları
  • SNMP tabanlı izleme deneyimi
Eretek uzman desteği

Bu konuyu kendi altyapınızda birlikte ele alalım.

Önce mevcut yapıyı inceliyoruz; ardından riskleri ve uygulanabilir adımları içeren yazılı bir plan çıkarıyoruz.