Percubaan pertama kernel Linux untuk menyokong QUIC, protokol internet moden yang menggerakkan sebahagian besar trafik web hari ini, telah mencetuskan perdebatan sengit dalam komuniti mengenai pertukaran prestasi dan potensi masa depan. Walaupun QUIC menjanjikan sambungan yang lebih pantas dan pengalaman mudah alih yang lebih baik, keputusan penanda aras awal mendedahkan jurang prestasi yang ketara yang membuatkan pembangun mempersoalkan sama ada faedahnya dapat mewajarkan kosnya.
Pemeriksaan Realiti Prestasi Menimbulkan Kebimbangan
Pelaksanaan kernel awal menunjukkan angka prestasi yang membimbangkan yang telah menarik perhatian komuniti. Dalam perbandingan langsung, pelaksanaan QUIC baharu hanya memberikan kira-kira satu per empat daripada daya pemprosesan TCP tradisional dalam beberapa ujian, dengan TLS dalam kernel mencapai prestasi hampir tiga kali ganda lebih baik. Lebih membimbangkan lagi, apabila penyulitan dilumpuhkan sepenuhnya, TCP biasa masih mengatasi QUIC lebih daripada empat kali ganda dalam senario tertentu.
Keputusan ini telah mencetuskan perbincangan hangat mengenai sama ada kelebihan QUIC - seperti masa persediaan sambungan yang berkurangan dan pengendalian rangkaian mudah alih yang lebih baik - dapat mewajarkan penalti prestasi yang begitu ketara. Komuniti menunjukkan beberapa sebab teknikal untuk prestasi yang lemah, termasuk kekurangan sokongan pecutan perkakasan, penyalinan data tambahan semasa penghantaran, dan overhed penyulitan header QUIC.
Keputusan Perbandingan Prestasi:
- In-kernel TLS berbanding QUIC: ~3x prestasi yang lebih baik untuk TLS
- Plain TCP berbanding QUIC (penyulitan dilumpuhkan): >4x prestasi yang lebih baik untuk TCP
- Pelaksanaan QUIC semasa: ~3-5 Gbps
- Linux kernel TCP: ~4.5 Gbps (paket biasa), ~24 Gbps (dengan large segmentation offload)
- QUIC userspace terbaik (msquic): ~7 Gbps
Rangkaian Mudah Alih Mendorong Penggunaan QUIC Walaupun Kos Pelayan Tinggi
Perdebatan prestasi menjadi lebih bernuansa apabila mempertimbangkan corak penggunaan dunia sebenar. Ahli komuniti menekankan bahawa QUIC tidak direka bentuk terutamanya untuk aplikasi pelayan daya pemprosesan tinggi, sebaliknya untuk menyelesaikan masalah yang melanda pengguna mudah alih pada rangkaian yang tidak boleh dipercayai. Apabila pengguna bertukar antara sambungan WiFi dan selular, sambungan TCP tradisional terputus sepenuhnya, manakala QUIC dapat mengekalkan sesi dengan lancar.
QUIC akan berfungsi dengan baik, tetapi tidak benar-benar mempunyai banyak kelebihan untuk trafik mesin-ke-mesin. Mesin-ke-mesin anda cenderung mempunyai sambungan yang tahan lama melalui rangkaian yang agak baik.
Falsafah reka bentuk mengutamakan mudah alih ini menjelaskan mengapa syarikat seperti Google sanggup menerima kos pelayan yang lebih tinggi - dilaporkan 2x hingga 3x dalam beberapa kes - untuk memberikan pengalaman pengguna yang lebih baik bagi pengguna telefon pintar. Keupayaan protokol untuk mengelakkan penyekatan head-of-line dan mengendalikan kehilangan paket dengan lebih anggun menjadikannya sangat berharga bagi pengguna di negara membangun yang bergantung terutamanya pada akses internet mudah alih.
Statistik Penggunaan Semasa:
- QUIC mengendalikan majoriti sambungan ke pelayan Google
- 40% trafik pelayar Chrome menggunakan QUIC
- Berkembang kira-kira 5% setiap dua tahun
- Disokong oleh semua pelayar web utama
- Digunakan untuk pelaksanaan protokol HTTP/3
Pecutan Perkakasan Memegang Kunci Kepada Prestasi Masa Depan
Komuniti kekal optimistik mengenai prospek jangka panjang QUIC, sebahagian besarnya bergantung pada sokongan perkakasan masa depan untuk menutup jurang prestasi. Vendor kad antara muka rangkaian menunjukkan minat untuk menyediakan ciri pecutan khusus QUIC, serupa dengan bagaimana TCP mendapat manfaat daripada pengoptimuman perkakasan selama beberapa dekad. Pelaksanaan kernel mewakili langkah pertama yang penting ke arah membolehkan sokongan perkakasan sedemikian, walaupun prestasi perisian semasa ketinggalan daripada jangkaan.
Pembangun juga menunjukkan penambahbaikan teknikal khusus yang boleh meningkatkan prestasi secara dramatik. Ini termasuk menambah sokongan offload segmentasi, menghapuskan salinan data yang tidak perlu, dan mengoptimumkan saluran paip penyulitan. Konsensus menunjukkan bahawa walaupun prestasi semasa mengecewakan, seni bina asas membenarkan penambahbaikan masa depan yang ketara.
Spesifikasi Teknikal QUIC:
- Standard protokol: RFC 9000 (dengan kemaskini dalam RFC 9369)
- Dibina di atas protokol UDP
- Jenis soket baharu: IPPROTO_QUIC
- Menyokong berbilang aliran data serentak
- Sentiasa menggunakan penyulitan hujung ke hujung
- Termasuk ID sambungan untuk kegigihan sesi merentasi perubahan IP
Kesimpulan
Pelaksanaan QUIC kernel Linux mewakili pencapaian penting dalam evolusi protokol internet, walaupun terdapat batasan prestasi semasa. Walaupun angka penanda aras melukiskan gambaran yang membimbangkan untuk aplikasi daya pemprosesan tinggi, kelebihan reka bentuk protokol untuk pengguna mudah alih dan rangkaian yang tidak boleh dipercayai terus mendorong penggunaan. Ujian sebenar ialah sama ada pecutan perkakasan dan pengoptimuman perisian dapat menutup jurang prestasi dengan cukup pantas untuk menjadikan QUIC sebagai pengganti yang berdaya maju untuk TCP dalam persekitaran pelayan. Buat masa ini, internet nampaknya ditakdirkan untuk berjalan pada pendekatan hibrid, dengan QUIC melayani pengguna mudah alih dan TCP mengendalikan kerja berat di pusat data.
Rujukan: QUIC for the kernel