한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Buku Putih Lag Game › L8 Socket dan protokol

Laju kirim anjlok akibat congestion control Congestion control backoff

ID penyebab sk-congestion · Penanggung jawab utama Infrastruktur server (Tim Infrastruktur) · Turut terlibat Pengembangan server (Tim Pengembang Game)

Buka kartu interaktif dengan gambar dan simulasi →

TCP menganggap packet loss sebagai tanda kongesti dan menurunkan kecepatan kirim 30–50%. TCP bereaksi sama terhadap packet loss di Wi-Fi.

Mengapa Saat data yang dikirim banyak, terjadi sedikit packet loss di Wi-Fi atau di jalur koneksi → Akibatnya TCP menurunkan kecepatan kirim secara drastis lalu pulih perlahan (CUBIC, default di Linux dan Windows, menurunkannya 30%) → Di layar Di tempat ramai, update tertunda sehingga terjadi fast forward atau input lag

Gejala
Fast forward, Input lag
Faktor
Latensi, Stall
Siapa yang mengalami
Hanya saya
Kapan
Saat banyak pemain berkumpul
Penanggung jawab
Penanggung jawab utama Infrastruktur server (Tim Infrastruktur) · Turut terlibat Pengembangan server (Tim Pengembang Game)
Tugas Tim Pengembang Game
Kurangi data yang dikirim (area of interest, hanya bagian yang berubah), kirim terbagi agar tidak menumpuk sekaligus.
Tugas Tim Infrastruktur
Ganti ke congestion control seperti BBR (tcp_congestion_control).
Di grafik
Naik perlahan lalu anjlok · Congestion window (cwnd) dan laju kirim per koneksi
Yang diperiksa
Ambil ss -ti beberapa kali untuk koneksi pemain yang update-nya tertunda, lalu periksa perubahan cwnd dan ssthresh, nama congestion control (cubic, bbr), dan apakah Send-Q menumpuk
Cocok jika
Setelah packet loss, cwnd turun drastis lalu naik perlahan secara berulang, dan selama cwnd kecil Send-Q menumpuk, bertepatan dengan waktu laporan fast forward atau input lag
Tidak cocok jika
cwnd cukup besar tetapi tetap tertunda: lebih mungkin window di sisi penerima (“Zero window (jeda yang terlihat seperti retransmisi)”) atau sisi kirim server
Sarana pemeriksaan
Tools infrastruktur (tanpa perlu kode game)

Sumber

  1. RFC 9438: CUBIC for Fast and Long-Distance Networks IETF
    Saat packet loss, CUBIC mengecilkan window menjadi 0,7 kali (turun 30%), Reno 0,5 kali; CUBIC adalah default di Linux, Windows, dan Apple
  2. TCP BBR congestion control comes to GCP – your Internet just got faster Google Cloud
    Congestion control berbasis packet loss menurunkan laju kirim secara drastis bahkan untuk packet loss yang tidak disebabkan kongesti; BBR menilai dari laju pengiriman (delivery rate) dan RTT
  3. IP Sysctl Linux kernel
    Memilih algoritma congestion control untuk koneksi baru dengan tcp_congestion_control
  4. ss(8) — Linux manual page iproute2
    cwnd, ssthresh, dan nama algoritma congestion control pada -i
  5. net/ipv4/tcp_diag.c (Linux v6.12) Linux kernel
    Nilai Recv-Q dan Send-Q di ss: pada socket listen berarti jumlah koneksi yang menunggu accept dan batas backlog; pada socket yang terhubung berarti byte yang belum dibaca aplikasi dan byte terkirim yang belum mendapat ACK

Lihat juga

Lapisan yang sama: L8 Socket dan protokol

Penyebab di lapisan lain dengan gejala yang sama (Fast forward)

Lihat kartu interaktif dengan gambar dan simulasi