IPFIX Nedir ve Ağ Trafiği Kayıtlarını Nasıl Aktarır?

IPFIX (IP Flow Information Export), ağ cihazlarının oluşturduğu trafik ölçümlerini ortak bir biçimde toplayıcıya aktarmak için kullanılan standart bir protokoldür. Temel amaç, her paketin tamamını saklamak yerine belirli bir gözlem noktasından geçen trafiği kaynak ve hedef adresleri, portlar, protokol, sayaçlar ve zaman bilgileri gibi alanlardan oluşan flow records ile temsil etmektir.
IPFIX modelinde ölçüm, dışa aktarma ve toplama birbirinden ayrılır. Ölçüm süreci paketlerden akış kayıtları üretir; dışa aktarma süreci bu kayıtları şablonlarla tanımlar ve IPFIX mesajları halinde toplayıcıya gönderir; toplayıcı da şablona göre veri kayıtlarını çözümler.
Akış kayıtlarıyla hangi adresler arasında ne kadar trafik taşındığı gibi sorular yanıtlanabilir. Ancak elde edilecek ayrıntı, paketleri gruplamak için seçilen özelliklere, kayda dahil edilen alanlara ve örneklemeye bağlıdır. Tipik akış kayıtları, tüm paketlerin içeriğinin saklandığı bir paket yakalamanın yerine geçmez.
IPFIX'te Akışın Tanımı ve Akış Anahtarı
IPFIX açısından akış, belirli bir zaman aralığında bir gözlem noktasından geçen ve ortak özellikler taşıyan paket veya çerçeveler kümesidir. Hangi paketlerin aynı akışa ait sayılacağını belirleyen özellikler akış anahtarı olarak düşünülebilir.
Yaygın bir örnek, kaynak IP adresi, hedef IP adresi, kaynak portu, hedef portu ve taşıma protokolünden oluşan beşli anahtardır. Bu beş alan aynı olan paketler tek yönlü bir iletişim akışında gruplanabilir. IPFIX bu beş alanla sınırlı değildir; gözlem noktası, arayüz, paketin iletileceği sonraki yönlendiricinin adresi veya başka ölçülen özellikler de tasarıma göre akışın tanımında veya kaydında yer alabilir.
Bu ayrım önemlidir çünkü “bir akış” evrensel olarak sabit bir kayıt değildir. İki dışa aktarıcı farklı akış anahtarları veya zaman aşımı kuralları kullanıyorsa aynı ağ trafiği için farklı sayıda akış kaydı üretebilir.
IPFIX Ölçüm, Dışa Aktarma ve Toplama Bileşenleri
IPFIX, akış bilgisinin nerede üretildiğini ve nasıl gönderildiğini ayrı rollerle tanımlar. Ölçüm ve dışa aktarma aynı yönlendiricide çalışabilir; kayıtları alan toplayıcı ise ayrı bir sunucuda bulunabilir.
Gözlem Noktası ve Ölçüm Süreci
Gözlem noktası, trafiğin görüldüğü mantıksal veya fiziksel yerdir; örneğin bir yönlendirici arayüzü ya da bir arayüz grubu olabilir. Ölçüm süreci burada görülen paket başlıklarını ve diğer özellikleri kullanarak yeni akış kayıtları oluşturur, mevcut kayıtları günceller, sayaçları artırır ve gerektiğinde kaydın sona erdiğini belirler.
Dışa Aktarma Süreci
Dışa aktarma süreci, ölçüm sürecinden gelen akış kayıtlarını IPFIX mesajlarına yerleştirip bir veya daha fazla toplama sürecine gönderir. Mesaj başlığı sürüm, mesaj uzunluğu, dışa aktarma zamanı, sıra numarası ve Observation Domain ID (gözlem alanı kimliği) gibi protokol düzeyindeki bilgileri taşır. Gözlem alanı, bir ölçüm sürecinin trafik bilgilerini birlikte değerlendirebildiği gözlem noktalarını kapsar; örneğin bir yönlendirici kartındaki arayüzlerden oluşabilir.
Toplama Süreci
Toplayıcı, gelen IPFIX mesajlarındaki şablonları ve veri kümelerini ilişkilendirir. Daha sonra akış kayıtlarını arama, raporlama, kapasite incelemesi, olağan dışı trafik araştırması veya başka ağ yönetimi amaçları için işleyebilir ya da saklayabilir. IPFIX protokolü, toplayıcının veriyi hangi veritabanında ne kadar süre tutacağını zorunlu olarak belirlemez.
Şablonlar ve Veri Kayıtları Nasıl Eşleşir?
IPFIX'in ayırt edici özelliklerinden biri şablon tabanlı aktarım modelidir. Bir Template Record (şablon kaydı), sonraki veri kayıtlarında hangi bilgi alanlarının bulunacağını ve bu alanların uzunluklarını tanımlar. Veri kayıtları ise alan adlarını her seferinde yeniden taşımak yerine ilgili şablonun düzenine göre yalnız değerleri içerir.
Her şablon bir Template ID (şablon kimliği) ile tanımlanır. Aynı yapıdaki veri kayıtları bir Data Set (veri kümesi) içinde gruplanır. Bu kümenin Set ID alanı, kullanılacak şablonun kimliğini taşır; toplayıcı da veri değerlerini ancak o şablonun tanımını bildiğinde güvenilir biçimde çözebilir. Aynı Template ID her cihazda aynı şablonu göstermez; kimliğin anlamı taşıma oturumu ve gözlem alanı bağlamında değerlendirilmelidir.
Toplayıcıda ilgili şablon yoksa veri kayıtları doğru çözümlenemez. TCP ve SCTP oturumu sona erdiğinde o oturumdaki şablonlar da geçerliliğini yitirir; yeni oturumda yeniden gönderilmeleri gerekir. UDP üzerinde ise aktif şablonlar düzenli aralıklarla tekrar gönderilir. Toplayıcının UDP şablonlarını geçerli saydığı süre, bu gönderim aralığıyla uyumlu olmalıdır; aksi halde veri geldiği halde şablon süresi dolduğu için kayıtlar okunamayabilir.
Hangi Akış Bilgileri Dışa Aktarılabilir?
IPFIX bilgi modeli, ölçülen trafik verisini Information Element (bilgi öğesi) adı verilen alanlarla tanımlar. Sık kullanılan alanlar kaynak ve hedef IP adresleri, kaynak ve hedef taşıma portları, taşıma protokolü, paket sayısı, bayt sayısı, akış başlangıç ve bitiş zamanları, arayüz bilgileri ve paketin iletileceği sonraki yönlendiricinin adresi gibi değerlerdir. Standart bilgi öğelerinin tanımları IANA kaydında tutulur; protokol ayrıca üreticilerin kendi bilgi öğelerini tanımlamasına izin verir.
Bir dışa aktarıcı bu alanların tamamını göndermek zorunda değildir. Şablon, belirli analiz ihtiyacı için hangi alanların taşınacağını belirler. Bu nedenle yalnız “IPFIX açık” bilgisi, toplayıcının hangi soruları cevaplayabileceğini göstermez; hangi ölçümlerin alınabildiği, kullanılan şablonların içeriğiyle anlaşılır.
IPFIX'in akış kaydı yaklaşımı tam paket kopyasını gerektirmez; ancak protokolün paket içeriği taşıyamadığı da söylenemez. Örneğin ipPayloadPacketSection bilgi öğesi, örneklenen bir paketin IP başlığından sonraki içeriğinin bir bölümünü taşıyabilir. Bunun için dışa aktarıcının ilgili özelliği desteklemesi ve alanın şablona dahil edilmesi gerekir. Dolayısıyla kayıtlarda hassas uygulama verisi bulunmadığı varsayılmamalıdır.
IPFIX Mesajlarının Taşınması, Kayıp ve Güvenlik
RFC 7011, IPFIX mesajlarının SCTP, TCP veya UDP üzerinden taşınabilmesini tanımlar. TCP kayıp verileri yeniden göndererek sıralı teslim sağlar; UDP ise teslim garantisi vermez. SCTP varsayılan olarak güvenilir teslim sunar, ancak veri kayıtları için kısmi güvenilirlik seçeneğini de destekler. TCP veya güvenilir SCTP kullanılması, ölçülen tüm kayıtların mutlaka saklanacağı anlamına gelmez: dışa aktarıcının gönderim kuyruğu dolduğunda kayıtlar daha gönderilemeden silinebilir.
IPFIX mesaj başlığındaki sıra numarası mesajları değil, gönderilen veri kayıtlarını sayar; şablon kayıtları bu sayacı artırmaz. Toplayıcı bu sayede veri kayıtlarının kaybını, yinelenmesini veya sırasının değişmesini fark edebilir, ancak yalnız şablon taşıyan bir mesajın kaybı bu sayaçtan anlaşılamaz. Kayıp saptansa bile sıra numarası kaydın içeriğini geri getirmez. UDP, ancak bir miktar kayıt kaybının kabul edilebildiği ve aktarım kapasitesinin yeterli olduğu kurulumlarda kullanılmalıdır.
Akış kayıtları ağ yapısı ve iletişim ilişkileri hakkında hassas olabilecek bilgiler taşır. TCP, UDP veya SCTP kullanılması bu verileri kendiliğinden şifrelemez. IPFIX için TCP üzerinde TLS, UDP veya SCTP üzerinde DTLS ile şifreleme ve değiştirilmiş verileri saptama sağlanabilir. Bu güvenli aktarımda dışa aktarıcı ve toplayıcı birbirinin kimliğini doğrulamalıdır; yalnız toplayıcının ağ adresini bilmek yeterli değildir.
Örnekleme, Şablon ve Saklama Politikalarının Etkisi
Örnekleme kullanıldığında ölçüm süreci her paketi değil seçilen paketleri temel alabilir. Böyle bir kaydı tam trafikten üretilmiş sayaçlarla aynıymış gibi yorumlamak hatalı olabilir; analiz sırasında örnekleme yöntemi ve varsa örnekleme bilgisi hesaba katılmalıdır. Sayaçların yalnız seçilen paketleri mi saydığı, yoksa toplam trafik için tahmine mi dönüştürüldüğü de kontrol edilmelidir; önceden ölçeklenmiş bir değere yeniden örnekleme katsayısı uygulanmamalıdır.
Şablon seçimi hangi trafik ayrıntılarının görülebileceğini sınırlar. Örneğin yalnız adres ve bayt sayaçları dışa aktarılıyorsa port bazlı hizmet ayrımı yapılamaz; zaman alanları bulunmuyorsa akışın başlangıç ve bitiş davranışı ayrıntılı değerlendirilemez. Gereksiz alanları dışarıda bırakmak aktarım hacmini azaltabilir, ancak daha sonra ihtiyaç duyulacak bağlamın toplanmamış olması geri döndürülemez.
Toplayıcıdaki saklama süresi ise geçmişe ne kadar gidilebileceğini belirler. IPFIX aktarım protokolü ile depolama politikası aynı şey değildir: dışa aktarım eksiksiz çalışsa bile kısa saklama süresi eski olayların incelenmesini engelleyebilir. Kapasite, gizlilik ve geçmiş ağ olaylarını inceleme gereksinimleri birlikte değerlendirilmelidir.
IPFIX ile Paket Yakalama Arasındaki Farklar
IPFIX, ağ genelinde “hangi adresler arasında, ne zaman ve ne kadar veri taşındı?” gibi soruları tek tek paketleri saklamadan yanıtlamak için uygundur. Tam paket yakalama ise tek tek paketlerin başlıklarını ve gerektiğinde yük içeriğini ayrıntılı incelemeyi hedefler; bu nedenle iki yöntem aynı veri derinliğini sunmaz.
Bir akış kaydı belirli bir hedefe yoğun trafik olduğunu gösterebilir, ancak bir uygulamanın neden hata verdiğini her zaman açıklamaz. Tersine, yalnız belirli bir noktadaki paket yakalama da geniş bir ağdaki uzun süreli trafik eğilimlerini IPFIX akış kayıtları kadar pratik biçimde temsil etmeyebilir.







