Penalaan Kawalan Kesesakan TCP
Fahami dan tala algoritma kawalan kesesakan TCP Linux seperti CUBIC dan BBR untuk meningkatkan daya pemprosesan serta kependaman pada rangkaian dunia sebenar.
Penalaan Kawalan Kesesakan TCP ialah pelajaran Rangkaian Linux dan TCP/IP untuk Pembangun percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Rangkaian Linux dan TCP/IP untuk Pembangun, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Rangkaian Linux dan TCP/IP untuk Pembangun merangkumi sejumlah 4 pelajaran.
Fungsi Kawalan Kesesakan
Kawalan kesesakan TCP menentukan kelajuan penghantar boleh menghantar tanpa membebankan rangkaian.
Ia mengawal pertukaran antara daya pemprosesan dan kependaman, dan algoritma yang tepat boleh mengubah prestasi dengan ketara.
Tetingkap Kesesakan
Tetingkap kesesakan (cwnd) mengehadkan bilangan bait yang belum diakui dan sedang dalam perjalanan. Algoritma membesarkan dan mengecilkan cwnd sebagai tindak balas kepada ACK serta isyarat kehilangan.
Terlalu kecil membazirkan lebar jalur; terlalu besar menyebabkan kehilangan dan limpahan penimbal.
Berasaskan Kehilangan berbanding Berasaskan Kependaman
Terdapat dua keluarga:
- Berasaskan kehilangan (CUBIC, Reno) berkembang sehingga paket digugurkan
- Berasaskan kependaman/model (BBR) menganggarkan lebar jalur dan RTT untuk mengelakkan penimbal dipenuhi
BBR selalunya lebih baik pada pautan jarak jauh yang mengalami kehilangan.
Menyenaraikan Algoritma yang Tersedia
Lihat algoritma yang telah dimuatkan oleh kernel.
sysctl net.ipv4.tcp_available_congestion_controlMenyemak Algoritma Semasa
CUBIC ialah lalai Linux. Sahkan perkara yang sedang aktif.
sysctl net.ipv4.tcp_congestion_controlMendayakan BBR
Muatkan modul BBR, kemudian tetapkannya sebagai lalai. BBR paling sesuai digandingkan dengan disiplin baris gilir fq.
sudo modprobe tcp_bbr
sudo sysctl -w net.ipv4.tcp_congestion_control=bbr
sudo sysctl -w net.core.default_qdisc=fqMengekalkan Perubahan
Perubahan sysctl masa jalan hilang selepas but semula. Kekalkannya dalam /etc/sysctl.d/.
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbrMelaraskan Saiz Penimbal
Kawalan kesesakan hanya boleh memenuhi tetingkap mengikut kapasiti penimbal. Untuk laluan dengan hasil darab lebar jalur-kependaman yang tinggi, tingkatkan had maksimum pelarasan automatik.
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216Hasil Darab Lebar Jalur-Kependaman
Saiz tetingkap optimum = lebar jalur x masa pergi balik. Pautan 1 Gbps dengan RTT 100 ms memerlukan kira-kira 12.5 MB penimbal untuk kekal penuh.
Penimbal yang terlalu kecil mengehadkan daya pemprosesan tanpa mengira algoritma.
Memerhatikan Sambungan
Periksa keadaan soket langsung, cwnd dan RTT dengan ss untuk mengesahkan pelarasan berkuat kuasa.
ss -tinMengukur Kesan
Buat penanda aras sebelum dan selepas dengan alat seperti iperf3 merentasi laluan sebenar. Sentiasa ukur daya pemprosesan dan kependaman kerana pelarasan agresif boleh menukar satu dengan yang lain.
iperf3 -c remote-host -t 30Semakan Pantas
Uji pengetahuan anda tentang kawalan kesesakan.
Ulang Kaji
Anda kini boleh melaraskan kawalan kesesakan TCP:
- Memahami cwnd dan hasil darab lebar jalur-kependaman
- Membandingkan yang berasaskan kehilangan (CUBIC) dengan yang berasaskan model (BBR)
- Mendayakan BBR dengan qdisc
fqdan mengekalkannya - Menentukan saiz penimbal
tcp_rmem/tcp_wmemdengan betul - Mengesahkan dengan
ss -tindan membuat penanda aras denganiperf3
Ini melanjutkan pelajaran anda tentang parameter kernel dan penandaarasan.
Pelajari Rangkaian Linux dan TCP/IP untuk Pembangun dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Soalan Lazim
Adakah pelajaran “Penalaan Kawalan Kesesakan TCP” percuma?
Ya — teks penuh “Penalaan Kawalan Kesesakan TCP” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Rangkaian Linux dan TCP/IP untuk Pembangun, tingkat taraf kepada CoddyKit PRO. Kursus Rangkaian Linux dan TCP/IP untuk Pembangun merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Penalaan Kawalan Kesesakan TCP”?
Fahami dan tala algoritma kawalan kesesakan TCP Linux seperti CUBIC dan BBR untuk meningkatkan daya pemprosesan serta kependaman pada rangkaian dunia sebenar. Anda berlatih Rangkaian Linux dan TCP/IP untuk Pembangun menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Rangkaian Linux dan TCP/IP untuk Pembangun?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Rangkaian Linux dan TCP/IP untuk Pembangun di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.
Berapa lamakah pelajaran “Penalaan Kawalan Kesesakan TCP” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Rangkaian Linux dan TCP/IP untuk Pembangun ini?
Ya. Setiap pelajaran Rangkaian Linux dan TCP/IP untuk Pembangun menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Parameter Rangkaian Kernel
- Penalaan dan Pengoptimuman NIC
- Penanda Aras Daya Pemprosesan Rangkaian
- Penalaan Kawalan Kesesakan TCP