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

Buku Putih Lag Game › L5 Perangkat jaringan data center

Idle timeout load balancer Load balancer idle timeout

ID penyebab dc-lb-idle · Penanggung jawab utama Infrastruktur jaringan (Tim Infrastruktur) · Turut terlibat Pengembangan klien (Tim Pengembang Game), Pengembangan server (Tim Pengembang Game)

Buka kartu interaktif dengan gambar dan simulasi →

Load balancer menghapus koneksi idle setelah waktu tertentu. Game masih menganggap koneksinya tersambung, lalu pemain disconnect.

Mengapa Pemain tidak mengirim paket apa pun selama beberapa waktu (membuka jendela dialog, AFK) → Akibatnya Load balancer membersihkan koneksi idle (nilai default umum 60–350 detik) → Di layar Disconnect tepat saat pemain mulai bergerak lagi

Gejala
Disconnect
Faktor
Packet loss
Siapa yang mengalami
Hanya saya, Seluruh server
Kapan
Setelah lama diam
Penanggung jawab
Penanggung jawab utama Infrastruktur jaringan (Tim Infrastruktur) · Turut terlibat Pengembangan klien (Tim Pengembang Game), Pengembangan server (Tim Pengembang Game)
Tugas Tim Pengembang Game
Klien: kirim heartbeat dengan interval maksimal setengah dari idle timeout terpendek (jika ALB 60 detik, maksimal 30 detik), reconnect otomatis jika terputus. Server: balas heartbeat, bersihkan koneksi lebih dulu jika tidak menerima heartbeat dalam waktu tertentu, lanjutkan sesi lewat token sesi.
Tugas Tim Infrastruktur
Periksa nilai idle timeout load balancer di sepanjang rute lalu bagikan ke Tim Pengembang Game, dan perpanjang jika perlu.
Kisaran angka
Nilai default AWS ALB 60 detik, NLB 350 detik untuk TCP dan 120 detik untuk UDP, dan Azure Load Balancer 4 menit untuk TCP. Nilai TCP pada ALB dan NLB bisa diubah, tetapi nilai UDP 120 detik pada NLB tidak bisa diubah. Saat waktunya habis, ALB juga menutup koneksi ke server, sedangkan NLB menghapusnya diam-diam sehingga server sering tidak tahu.
Di grafik
Koneksi putus serentak · Jumlah disconnect, waktu idle sebelum terputus
Yang diperiksa
Periksa nilai konfigurasi idle timeout load balancer di sepanjang rute, lalu kumpulkan waktu dari paket terakhir sampai terputus untuk setiap koneksi yang terputus. Untuk AWS NLB, periksa juga TCP_ELB_Reset_Count (jumlah RST yang dikirim load balancer) di CloudWatch
Cocok jika
Waktu idle koneksi yang terputus terkumpul tepat setelah nilai konfigurasi (ALB 60 detik, NLB TCP 350 detik, dan sebagainya), dan masalah muncul lagi jika pemain diam lebih lama dari itu lalu bergerak. Pada NLB, TCP_ELB_Reset_Count naik pada saat itu
Tidak cocok jika
Terputus tanpa kaitan dengan waktu idle: bukan penyebab ini. Terkumpul di sekitar 350 detik pada server yang tersambung langsung tanpa load balancer: lebih mungkin “Connection tracking di security group cloud kedaluwarsa”. Terjadi di router rumah pemain: lebih mungkin “Mapping NAT kedaluwarsa”
Sarana pemeriksaan
Tools infrastruktur (tanpa perlu kode game)

Sumber

  1. Edit attributes for your Application Load Balancer AWS
    Idle timeout ALB default 60 detik (1–4.000 detik); jika koneksi klien dan target diam selama waktu ini, load balancer menutup koneksi
  2. Network Load Balancers AWS
    Idle TCP NLB default 350 detik (60–6.000 detik); setelah lewat, NLB hanya berhenti melacak, dan data yang datang sesudahnya dibalas RST; flow UDP 120 detik tidak bisa diubah
  3. Configure load balancer TCP reset and idle timeout Microsoft Azure
    Idle timeout Azure Load Balancer default 4 menit (4–100 menit); jika terlampaui, sesi tidak dijamin tetap ada; TCP reset adalah pengaturan opsional
  4. CloudWatch metrics for your Network Load Balancer AWS
    TCP_ELB_Reset_Count: jumlah paket RST yang dibuat dan dikirim load balancer

Lihat juga

Lapisan yang sama: L5 Perangkat jaringan data center

Penyebab di lapisan lain dengan gejala yang sama (Disconnect)

Lihat kartu interaktif dengan gambar dan simulasi