Linux
03 Oct 2026
5 min read
SO_BUSY_POLL Menukar Waktu CPU dengan Pemrosesan Receive Socket Linux yang Lebih Awal
Operasi receive yang blocking di Linux biasanya tidur saat belum ada data yang siap, lalu berjalan kembali setelah jalur networking menyediakan data. Dengan SO_BUSY_POLL, jalur receive dapat memakai interval terbatas untuk aktif melakukan polling pada konteks NAPI yang relevan. Interval ini menukar waktu CPU dengan peluang memproses paket sebelum jalur normal berbasis interrupt membangunkan task. Opsi ini tidak mengubah socket menjadi endpoint yang terus-menerus melakukan polling. Nilainya menentukan budget busy poll dalam mikrodetik, sedangkan mekanismenya tetap bergantung pada riwayat receive dan dukungan perangkat jaringan.