IPTable'lar çok çekirdekli işlemcilerden yararlanıyor mu?


10

Her paket farklı bir çekirdek tarafından işleniyor mu? Yoksa tek iş parçacıklı bir süreç mi?


2
Chopper3'ün bu soruyu neden kapattığından emin değilim. Ama cevaplamak için: Iptables gerçekten netfilter olan linux güvenlik duvarı için kullanıcı alanı ön uç. Netfilter gerçekten paket işleme çevresindeki çekirdekteki bir kanca sistemidir. Her paket bir interupt tetikleyerek çekirdek tarafından işlenir. Çekirdeğinizin birden fazla CPU'da kesintileri dengelemesinin, kaç yaşında olduğuna bağlıdır. Bu konu hakkında StackOverflow üzerinde bu konuya bakın. stackoverflow.com/questions/7467688/…
JakePaulus

+1, çünkü bence bu gerçek bir soru.
Sachin Divekar

@JakePaulus Bu IRQ-balacing bir kesmeye asla birden fazla çekirdek atamaz. Yani tek bir hatta her paket için bir çekirdek anahtarı asla gerçekleşmeyecek mi?
Nils

CPU bellek önbelleği açısından, tek bir bağlantı için çekirdek değiştirme anahtarları çok mantıklı değildir - bu çekirdekler aynı önbelleği paylaşmazsa işleri yavaşlatır. Ama neden bu soruyu soruyorsun?
Nils

@Nils Bir arayüz tarafından oluşturulan kesintiler, daha az meşgul olan başka bir CPU'ya yeniden yönlendirilebilir. Ayrıca, çoklu arayüzler yükü yaymak için kesintilerini farklı CPU'lara gönderebilir. Tek bir arabirimden gelen trafiğin, paket başına CPU'lar arasında dengelenmemesi konusunda haklı olduğunu düşünüyorum.
JakePaulus

Yanıtlar:


6

Iptables gerçekten sadece netfilter olan linux güvenlik duvarı için kullanıcı alanı ön uçtur. Netfilter gerçekten paket işleme çevresindeki çekirdekteki bir kanca sistemidir. Her paket bir interupt tetikleyerek çekirdek tarafından işlenir. Çekirdeğinizin birden fazla CPU'da kesintileri dengelemesinin, kaç yaşında olduğuna bağlıdır. Bu konu hakkında StackOverflow üzerinde bu konuya bakın. /programming/7467688/netfilter-hooks-on-multi-core-system

Nils'in belirttiği gibi, bu kesintiler paket başına dengelenmeyecektir. IRQ (arabirim başına) başına dengelenecek veya çok meşgul olduğunda muhtemelen farklı CPU'ya taşınacaklardır.


alternatif olarak kesintilerinizi kısabilir veya farklı çekirdeklere bağlayabilirsiniz. Bazı durumlarda gördüm, tüm ağ kesintilerini en az paket yeniden siparişi sağlamak ve çekirdekler arasında geçişi sağlamak için birkaç çekirdeğe yaklaştırıyorlar.
chandank
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.