OpenBSD: Boş ACK'lara öncelik vermek


0

PF ile ilgili ve boş ACK paketlerinin önceliklendirilmesi konusunda çılgınca kullanılmış bir örnek var, böylece yukarı akış asenkron bir bağlantının akış aşağısında tıkanması durumunda performansı kaybediyor.

Örnek çeşitli yerlerde bulunabilir, örneğin:

http://www.benzedrine.cx/ackpri.html

pass out on $ext_if proto tcp from $ext_if to any flags S/SA \
        keep state queue (q_def, q_pri)

pass in  on $ext_if proto tcp from any to $ext_if flags S/SA \
        keep state queue (q_def, q_pri)

Neden bu kuralın çalıştığını anlamıyorum:

İkinci sıra parametresi, boş ACK'ları öncelik sırasına yerleştirir. Bunu anladım. Ancak bayrak eşleştirme, yalnızca bağlantıdaki ilk paket ise eşleşir. Pf.conf man sayfasından:

Because flags S/SA is applied by default (unless no state is
specified), only the initial SYN packet of a TCP handshake will
create a state for a TCP connection.

Peki boş ACK'ları nasıl etkiler? Herkesin yanlış yaptığını iddia etmemek, sadece mekaniği anlamak istiyorum.

Yanıtlar:


0

PF'de, tutma durumunu ayarladığınızda, durum takibi için bir durum oluşturacaksınız, böylece daha sonra bu bağlantıyla ilgili diğer paketlere izin vermenize gerek kalmayacak.

Ayrıca, sırayı ayarladığınızda, bu bağlantıyla ilgili tüm paketlere uygulanacak, ikinci sıra parametresini ayarladığınızda, ToS düşük gecikmeli ayarlanmış tüm paketleri veya herhangi bir yük taşımayan ACK paketlerini ikincisiyle ilişkilendirecek sıra ve ilk değil.

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.