全部产品
Search
文档中心

:Parameter Kernel Jaringan Linux yang Umum dan FAQ

更新时间:Nov 09, 2025

Topik ini menjelaskan parameter kernel jaringan Linux umum dari instance Elastic Compute Service (ECS) serta memberikan jawaban atas pertanyaan yang sering diajukan terkait parameter tersebut.

Gunakan alat pemecahan masalah mandiri

Alibaba Cloud menyediakan alat pemecahan masalah mandiri untuk membantu Anda dengan cepat memeriksa konfigurasi parameter kernel dan mendapatkan laporan diagnostik yang jelas.

Klik untuk pergi ke halaman pemecahan masalah mandiri, dan beralihlah ke wilayah target.

Jika alat pemecahan masalah mandiri tidak dapat menemukan masalah, Anda dapat melakukan langkah-langkah berikut untuk pemecahan masalah manual.

Lihat dan modifikasi parameter kernel

Perhatian

Sebelum memodifikasi parameter kernel, perhatikan hal-hal berikut:

  • Modifikasi parameter kernel hanya dilakukan berdasarkan kebutuhan bisnis dan data terkait.

  • Pahami fungsi setiap parameter. Perhatikan bahwa parameter kernel mungkin berbeda berdasarkan jenis atau versi lingkungan. Untuk informasi lebih lanjut, lihat Parameter Kernel Linux Umum.

  • Cadangkan data penting pada instance ECS Anda. Untuk informasi lebih lanjut, lihat Buat Snapshot.

Modifikasi parameter

Anda dapat menggunakan /proc/sys/ dan /etc/sysctl.conf untuk memodifikasi parameter kernel saat instance sedang berjalan. Perbedaannya adalah sebagai berikut:

  • /proc/sys/ adalah sistem file virtual yang menyediakan metode untuk mengakses parameter kernel. Direktori net dalam sistem file ini menyimpan semua parameter kernel jaringan yang diaktifkan dalam sistem saat ini. Anda dapat memodifikasi parameter tersebut saat sistem sedang berjalan, tetapi modifikasi menjadi tidak valid setelah instance di-restart. Metode ini biasanya digunakan untuk sementara memverifikasi efek dari modifikasi.

  • /etc/sysctl.conf adalah file konfigurasi. Anda dapat memodifikasi nilai default parameter kernel dalam file /etc/sysctl.conf. Modifikasi tetap valid setelah instance di-restart.

File dalam direktori /proc/sys/ sesuai dengan nama parameter lengkap dalam file konfigurasi /etc/sysctl.conf. Sebagai contoh, file /proc/sys/net/ipv4/tcp_tw_recycle sesuai dengan parameter net.ipv4.tcp_tw_recycle. Isi file tersebut adalah nilai parameter.

Catatan

Linux menghapus konfigurasi `tcp_tw_recycle` mulai dari versi kernel 4.12. Ini berarti konfigurasi `net.ipv4.tcp_tw_recycle` dihapus dari `sysctl.conf`. Anda dapat menggunakan parameter net.ipv4.tcp_tw_recycle hanya jika kernel sistem Anda lebih awal dari versi 4.12.

Lihat dan modifikasi parameter kernel menggunakan file dalam direktori /proc/sys/

  1. Masuk ke instance ECS yang menjalankan sistem operasi Linux.

    Untuk informasi lebih lanjut, lihat Ikhtisar Metode Koneksi untuk Instance ECS.

  2. Jalankan perintah cat untuk melihat isi file yang sesuai.

    Sebagai contoh, jalankan perintah berikut untuk melihat nilai net.ipv4.tcp_tw_recycle.

    cat /proc/sys/net/ipv4/tcp_tw_recycle 
  3. Jalankan perintah echo untuk memodifikasi file yang sesuai dengan parameter kernel.

    Sebagai contoh, jalankan perintah berikut untuk mengubah nilai net.ipv4.tcp_tw_recycle menjadi 0.

    echo "0" > /proc/sys/net/ipv4/tcp_tw_recycle 

Lihat dan modifikasi parameter kernel dari file konfigurasi /etc/sysctl.conf

  1. Masuk ke instance ECS yang menjalankan sistem operasi Linux.

    Untuk informasi lebih lanjut, lihat Ikhtisar Metode Koneksi untuk Instance ECS.

  2. Jalankan perintah berikut untuk melihat semua parameter yang valid dalam sistem saat ini:

    sysctl -a

    Contoh keluaran perintah menunjukkan parameter kernel tertentu:

    net.ipv4.tcp_app_win = 31
    net.ipv4.tcp_adv_win_scale = 2
    net.ipv4.tcp_tw_reuse = 0
    net.ipv4.tcp_frto = 2
    net.ipv4.tcp_frto_response = 0
    net.ipv4.tcp_low_latency = 0
    net.ipv4.tcp_no_metrics_save = 0
    net.ipv4.tcp_moderate_rcvbuf = 1
    net.ipv4.tcp_tso_win_divisor = 3
    net.ipv4.tcp_congestion_control = cubic
    net.ipv4.tcp_abc = 0
    net.ipv4.tcp_mtu_probing = 0
    net.ipv4.tcp_base_mss = 512
    net.ipv4.tcp_workaround_signed_windows = 0
    net.ipv4.tcp_challenge_ack_limit = 1000
    net.ipv4.tcp_limit_output_bytes = 262144
    net.ipv4.tcp_dma_copybreak = 4096
    net.ipv4.tcp_slow_start_after_idle = 1
    net.ipv4.cipso_cache_enable = 1
    net.ipv4.cipso_cache_bucket_size = 10
    net.ipv4.cipso_rbm_optfmt = 0
    net.ipv4.cipso_rbm_strictvalid = 1
  3. Modifikasi parameter kernel.

    • Modifikasi Sementara

      /sbin/sysctl -w kernel.parameter="[$Example]"
      Catatan

      Ganti `kernel.parameter` dengan nama kernel dan `[$Example]` dengan nilai parameter. Sebagai contoh, jalankan perintah sysctl -w net.ipv4.tcp_tw_recycle="0" untuk mengubah nilai parameter kernel net.ipv4.tcp_tw_recycle menjadi 0.

    • Modifikasi ini bersifat permanen.

      1. Jalankan perintah berikut untuk membuka file konfigurasi /etc/sysctl.conf.

        vim /etc/sysctl.conf
      2. Tekan tombol i untuk masuk ke mode edit.

      3. Modifikasi parameter kernel sesuai kebutuhan.

        Berikut adalah formatnya.

        net.ipv6.conf.all.disable_ipv6 = 1
        net.ipv6.conf.default.disable_ipv6 = 1
        net.ipv6.conf.lo.disable_ipv6 = 1
      4. Tekan tombol Esc, masukkan :wq, dan tekan Enter untuk menyimpan file dan keluar.

      5. Jalankan perintah berikut agar konfigurasi diterapkan:

        /sbin/sysctl -p

FAQ tentang parameter kernel jaringan umum dari instance ECS Linux

Apa yang harus saya lakukan jika saya tidak dapat terhubung secara remote ke instance ECS Linux dan pesan kesalahan "nf_conntrack: table full, dropping packet" muncul di log /var/log/message?

Deskripsi masalah

Anda tidak dapat terhubung secara remote ke instance ECS. Saat Anda ping instance tujuan, paket hilang atau perintah ping gagal. Pesan kesalahan berikut sering muncul dalam log sistem /var/log/message.

Feb  6 16:05:07 i-*** kernel: nf_conntrack: table full, dropping packet.
Feb  6 16:05:07 i-*** kernel: nf_conntrack: table full, dropping packet.
Feb  6 16:05:07 i-*** kernel: nf_conntrack: table full, dropping packet.
Feb  6 16:05:07 i-*** kernel: nf_conntrack: table full, dropping packet.

Penyebab

`ip_conntrack` adalah modul Linux yang melacak entri koneksi untuk NAT. Modul `ip_conntrack` menggunakan tabel hash untuk mencatat entri koneksi TCP established connection. Ketika tabel hash ini penuh, paket koneksi baru di-drop, yang menyebabkan kesalahan nf_conntrack: table full, dropping packet.

Sistem Linux mengalokasikan ruang untuk mempertahankan setiap koneksi TCP. Ukuran ruang ini terkait dengan parameter nf_conntrack_buckets dan nf_conntrack_max. Nilai default `nf_conntrack_max` adalah empat kali nilai `nf_conntrack_buckets`. Oleh karena itu, kami sarankan Anda meningkatkan nilai parameter nf_conntrack_max.

Catatan

Mempertahankan koneksi sistem mengonsumsi sejumlah besar memori. Tingkatkan nilai parameter nf_conntrack_max ketika sistem sedang idle dan memiliki memori yang cukup.

Solusi

  1. Gunakan Virtual Network Computing (VNC) untuk terhubung ke instance.

    Untuk informasi lebih lanjut, lihat Masuk ke Instance Linux menggunakan Otentikasi Kata Sandi.

  2. Ubah nilai parameter nf_conntrack_max.

    1. Jalankan perintah berikut untuk membuka file /etc/sysctl.conf.

      vi /etc/sysctl.conf
    2. Tekan tombol i untuk masuk ke mode edit.

    3. Ubah nilai parameter nf_conntrack_max.

      Sebagai contoh, ubah jumlah maksimum entri tabel hash menjadi 655350.

      net.netfilter.nf_conntrack_max = 655350
    4. Tekan tombol Esc, masukkan :wq, dan tekan Enter untuk menyimpan file dan keluar.

  3. Ubah nilai parameter nf_conntrack_tcp_timeout_established.

    Nilai default: 432000. Unit: detik. Contoh: 1200.

    net.netfilter.nf_conntrack_tcp_timeout_established = 1200
  4. Jalankan perintah berikut agar konfigurasi diterapkan:

    sysctl -p

Mengapa pesan kesalahan "Time wait bucket table overflow" muncul di log /var/log/messages?

Deskripsi masalah

Pesan kesalahan "kernel: TCP: time-wait bucket table overflow" sering muncul di log /var/log/messages dari instance ECS Linux.

Feb 18 12:28:38 i-*** kernel: TCP: time wait bucket table overflow
Feb 18 12:28:44 i-*** kernel: printk: 227 messages suppressed.
Feb 18 12:28:44 i-*** kernel: TCP: time wait bucket table overflow
Feb 18 12:28:52 i-*** kernel: printk: 121 messages suppressed.
Feb 18 12:28:52 i-*** kernel: TCP: time wait bucket table overflow
Feb 18 12:28:53 i-*** kernel: printk: 351 messages suppressed.
Feb 18 12:28:53 i-*** kernel: TCP: time wait bucket table overflow
Feb 18 12:28:59 i-*** kernel: printk: 319 messages suppressed.

Penyebab

Parameter net.ipv4.tcp_max_tw_buckets mengontrol jumlah koneksi dalam status TIME_WAIT yang dapat dikelola oleh kernel. Jika jumlah koneksi dalam status TIME_WAIT pada instance ECS melebihi nilai net.ipv4.tcp_max_tw_buckets, pesan kesalahan "kernel: TCP: time-wait bucket table overflow" muncul di log /var/log/messages. Kernel sistem kemudian menutup koneksi TCP yang berlebih.

Solusi

Anda dapat meningkatkan nilai parameter net.ipv4.tcp_max_tw_buckets sesuai kebutuhan. Kami juga menyarankan Anda mengoptimalkan koneksi TCP di tingkat aplikasi. Bagian ini menjelaskan cara memodifikasi nilai parameter net.ipv4.tcp_max_tw_buckets.

  1. Gunakan VNC untuk terhubung ke instance.

    Untuk informasi lebih lanjut, lihat Masuk ke Instance Linux menggunakan Otentikasi Kata Sandi.

  2. Jalankan perintah berikut untuk menanyakan jumlah koneksi TCP yang ada:

    netstat -antp | awk 'NR>2 {print $6}' | sort | uniq -c

    Keluaran perintah berikut menunjukkan bahwa 6.300 koneksi berada dalam status TIME_WAIT:

    6300 TIME_WAIT
     40 LISTEN
     20 ESTABLISHED
     20 CONNECTED
  3. Anda dapat menjalankan perintah berikut untuk melihat nilai parameter net.ipv4.tcp_max_tw_buckets.

    cat /etc/sysctl.conf | grep net.ipv4.tcp_max_tw_buckets

    Keluaran berikut menunjukkan bahwa parameter net.ipv4.tcp_max_tw_buckets adalah 20000.

    2023-04-02_11-03-24

  4. Ubah nilai parameter net.ipv4.tcp_max_tw_buckets.

    1. Jalankan perintah berikut untuk membuka file /etc/sysctl.conf.

      vi /etc/sysctl.conf
    2. Tekan tombol i untuk masuk ke mode edit.

    3. Ubah nilai parameter net.ipv4.tcp_max_tw_buckets.

      Sebagai contoh, ubah nilai parameter net.ipv4.tcp_max_tw_buckets menjadi 65535.

      net.ipv4.tcp_max_tw_buckets = 65535
    4. Tekan tombol Esc, masukkan :wq, dan tekan Enter untuk menyimpan file dan keluar.

  5. Jalankan perintah berikut agar konfigurasi diterapkan:

    sysctl -p

Mengapa instance ECS Linux memiliki banyak koneksi TCP dalam status FIN_WAIT2?

Deskripsi masalah

Banyak koneksi TCP pada instance ECS Linux berada dalam status FIN_WAIT2.

Penyebab

Masalah ini dapat terjadi karena alasan berikut:

  • Dalam layanan HTTP, server secara proaktif mengakhiri koneksi karena alasan tertentu. Sebagai contoh, jika respons terhadap pesan keepalive habis waktu, server mengakhiri koneksi, dan koneksi memasuki status FIN_WAIT2.

  • Protokol TCP/IP mendukung koneksi setengah terbuka. Berbeda dengan status TIME_WAIT, status FIN_WAIT2 tidak berarti bahwa koneksi habis waktu. Jika klien tidak mengakhiri koneksi, koneksi tetap berada dalam status FIN_WAIT2 hingga sistem di-restart. Jumlah koneksi yang meningkat dalam status FIN_WAIT2 menyebabkan kernel crash.

Solusi

Anda dapat mengurangi nilai parameter net.ipv4.tcp_fin_timeout untuk mempercepat penutupan koneksi TCP dalam status FIN_WAIT2.

  1. Gunakan VNC untuk terhubung ke instance.

    Untuk informasi lebih lanjut, lihat Masuk ke Instance Linux menggunakan Otentikasi Kata Sandi.

  2. Ubah nilai parameter net.ipv4.tcp_fin_timeout.

    1. Jalankan perintah berikut untuk membuka file /etc/sysctl.conf.

      vi /etc/sysctl.conf
    2. Tekan tombol i untuk masuk ke mode edit.

    3. Ubah nilai parameter net.ipv4.tcp_fin_timeout.

      Sebagai contoh, ubah nilai parameter net.ipv4.tcp_fin_timeout menjadi 10.

      net.ipv4.tcp_fin_timeout = 10
    4. Tekan tombol Esc, masukkan :wq, dan tekan Enter untuk menyimpan file dan keluar.

  3. Jalankan perintah berikut agar konfigurasi diterapkan:

    sysctl -p

Mengapa instance ECS Linux memiliki banyak koneksi TCP dalam status CLOSE_WAIT?

Deskripsi masalah

Banyak koneksi TCP pada instance ECS Linux berada dalam status CLOSE_WAIT.

Penyebab

Masalah ini dapat terjadi karena jumlah koneksi TCP dalam status CLOSE_WAIT di luar batas.

TCP menggunakan jabat tangan empat arah untuk mengakhiri koneksi. Kedua ujung koneksi TCP dapat memulai permintaan untuk mengakhiri koneksi. Jika peer mengakhiri koneksi tetapi ujung lokal tidak, koneksi memasuki status CLOSE_WAIT. Ujung lokal tidak dapat berkomunikasi dengan peer melalui koneksi setengah terbuka ini dan perlu mengakhiri koneksi sesegera mungkin.

Solusi

Kami sarankan Anda memverifikasi bahwa koneksi diakhiri oleh peer dalam program.

  1. Terhubung ke instance ECS.

    Untuk informasi lebih lanjut, lihat Ikhtisar Metode Koneksi.

  2. Periksa dan akhiri koneksi TCP dalam status CLOSE_WAIT dalam program.

    Fungsi read dan write dalam bahasa pemrograman dapat digunakan untuk memantau koneksi TCP dalam status CLOSE_WAIT. Anda dapat menggunakan salah satu metode berikut untuk mengakhiri koneksi dalam bahasa Java atau C:

    • Bahasa Java

      1. Gunakan metode read untuk memeriksa I/O. Saat metode `read` mengembalikan nilai -1, itu menunjukkan bahwa akhir dari aliran telah tercapai.

      2. Gunakan metode close untuk menutup koneksi.

    • Bahasa C

      Periksa nilai pengembalian fungsi read.

      • Jika nilai balik adalah 0, akhiri koneksi.

      • Jika nilai balik kurang dari 0, lihat pesan kesalahan. Jika AGAIN tidak ditampilkan, akhiri koneksi.

Mengapa saya tidak dapat mengakses instance ECS atau instance ApsaraDB RDS setelah saya mengonfigurasi NAT untuk klien saya?

Deskripsi masalah

Setelah NAT dikonfigurasi, klien tidak dapat mengakses instance ECS atau RDS di sisi server, termasuk instance ECS dalam VPC dengan source NAT (SNAT) diaktifkan.

Penyebab

Masalah ini dapat terjadi jika parameter net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps pada server keduanya disetel ke 1.

Saat kedua parameter kernel net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps pada server diaktifkan (disetel ke 1), server memeriksa cap waktu setiap paket koneksi TCP. Jika cap waktu tidak dalam urutan naik, server akan menjatuhkan paket tersebut.

Solusi

Anda dapat memilih solusi yang sesuai untuk kegagalan koneksi berdasarkan produk cloud yang diterapkan di sisi server.

  • Jika server jarak jauh merupakan instance Elastic Compute Service (ECS), atur kedua parameter net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps menjadi 0.

  • Jika server jarak jauh adalah instance ApsaraDB RDS, Anda tidak dapat langsung memodifikasi parameter kernelnya. Sebagai alternatif, atur kedua parameter net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps menjadi 0 di klien.

  1. Gunakan VNC untuk terhubung ke instance.

    Untuk informasi lebih lanjut, lihat Masuk ke Instance Linux menggunakan Otentikasi Kata Sandi.

  2. Ubah nilai parameter net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps menjadi 0.

    1. Jalankan perintah berikut untuk membuka file /etc/sysctl.conf.

      vi /etc/sysctl.conf
    2. Tekan tombol i untuk masuk ke mode edit.

    3. Ubah nilai parameter net.ipv4.tcp_tw_recycle dan net.ipv4.tcp_timestamps menjadi 0.

      net.ipv4.tcp_tw_recycle=0
      net.ipv4.tcp_timestamps=0
    4. Tekan tombol Esc, masukkan :wq, dan tekan Enter untuk menyimpan file dan keluar.

  3. Jalankan perintah berikut agar konfigurasi diterapkan:

    sysctl -p 

Parameter kernel Linux umum

Parameter

Deskripsi

net.core.rmem_default

Ukuran default jendela penerima socket. Unit: byte.

net.core.rmem_max

Ukuran maksimum jendela penerima socket. Unit: byte.

net.core.wmem_default

Ukuran default jendela pengirim socket. Unit: byte.

net.core.wmem_max

Ukuran maksimum jendela pengirim socket. Unit: byte.

net.core.netdev_max_backlog

Saat kecepatan pemrosesan kernel lebih lambat daripada kecepatan penerimaan Network Interface Controller (NIC), paket yang berlebih disimpan dalam antrian penerimaan NIC.

Parameter ini menentukan jumlah maksimum paket yang diizinkan dikirim ke antrian dalam skenario sebelumnya.

net.core.somaxconn

Parameter global ini menentukan panjang maksimum antrian pendengaran setiap port.

Ini terkait dengan net.ipv4.tcp_max_syn_backlog, yang menentukan batas untuk koneksi setengah terbuka dalam jabat tangan tiga arah. Namun, parameter ini menentukan batas untuk koneksi dalam status ESTABLISHED. Jika instance Anda memiliki beban kerja tinggi, Anda mungkin perlu meningkatkan parameter ini. Parameter backlog dalam fungsi listen(2) juga menentukan batas untuk koneksi dalam status ESTABLISHED pada port pendengaran. Jika nilai backlog lebih besar dari net.core.somaxconn, nilai net.core.somaxconn digunakan.

net.core.optmem_max

Ukuran buffer maksimum setiap socket.

net.ipv4.tcp_mem

Parameter ini mencerminkan penggunaan memori stack TCP. Satuannya adalah halaman memori yang biasanya 4 KB.

  • Nilai pertama adalah batas bawah penggunaan memori.

  • Nilai kedua adalah tekanan maksimum yang dapat ditangani buffer saat Anda melakukan uji stres.

  • Nilai ketiga adalah batas atas penggunaan memori. Jika penggunaan memori melebihi batas atas, sistem membuang paket untuk mengurangi penggunaan memori. Anda dapat meningkatkan nilai untuk jaringan dengan produk bandwidth-delay besar (BDP). Satuannya adalah halaman memori, bukan byte.

net.ipv4.tcp_rmem

Ukuran buffer penerima. Parameter ini menentukan ukuran memori yang digunakan oleh socket untuk konfigurasi otomatis.

  • Nilai pertama adalah ukuran minimum buffer penerima socket. Unit: byte.

  • Nilai kedua adalah nilai default, yang dapat menimpa nilai rmem_default. Anda dapat menggunakan nilai default saat beban bisnis sistem ringan. Unit: byte.

  • Nilai ketiga adalah ukuran maksimum buffer penerima socket, yang dapat menimpa nilai rmem_max. Unit: byte.

net.ipv4.tcp_wmem

Ukuran buffer pengirim. Parameter ini menentukan ukuran memori yang digunakan oleh socket untuk konfigurasi otomatis.

  • Nilai pertama adalah ukuran minimum buffer pengirim socket. Unit: byte.

  • Nilai kedua adalah nilai default, yang dapat menimpa nilai wmem_default. Anda dapat menggunakan nilai default saat beban bisnis sistem ringan. Unit: byte.

  • Nilai ketiga adalah ukuran maksimum buffer pengiriman dalam byte. Nilai ini tidak menimpa wmem_max.

net.ipv4.tcp_keepalive_time

Interval TCP mengirim pesan keepalive untuk memeriksa apakah koneksi TCP valid. Unit: detik.

net.ipv4.tcp_keepalive_intvl

Interval TCP mengirim ulang pesan keepalive jika tidak ada respons yang diterima. Unit: detik.

net.ipv4.tcp_keepalive_probes

Jumlah maksimum pesan keepalive yang dapat dikirim sebelum koneksi TCP dianggap tidak valid.

net.ipv4.tcp_sack

Parameter ini menentukan apakah TCP selective acknowledgment (SACK) diaktifkan. Nilai 1 menunjukkan bahwa fitur TCP SACK diaktifkan. Fitur TCP SACK memungkinkan server hanya mengirim paket yang hilang, yang meningkatkan performa. Kami sarankan Anda mengaktifkan fitur ini untuk komunikasi wide area network (WAN). Perhatikan bahwa fitur ini menyebabkan pemanfaatan CPU meningkat.

net.ipv4.tcp_timestamps

Timestamp TCP, yang berukuran 12 byte dan dibawa dalam header TCP. Timestamp digunakan untuk memicu perhitungan round-trip time (RTT) secara lebih akurat daripada metode timeout retransmisi (RFC 1323). Untuk meningkatkan performa, kami sarankan Anda mengaktifkan opsi ini.

net.ipv4.tcp_window_scaling

Parameter ini menentukan apakah penskalaan jendela yang didefinisikan dalam RFC 1323 diaktifkan. Untuk memungkinkan sistem menggunakan jendela TCP lebih besar dari 64 KB, atur nilai menjadi 1 untuk mengaktifkan penskalaan jendela. Ukuran maksimum jendela TCP adalah 1 GB. Parameter ini hanya berlaku jika penskalaan jendela diaktifkan untuk kedua ujung koneksi TCP.

net.ipv4.tcp_syncookies

Parameter ini menunjukkan apakah fitur cookie SYN TCP diaktifkan (SYN_COOKIES). Kernel harus memiliki CONFIG_SYN_COOKIES diaktifkan dan dikompilasi. SYN_COOKIES dapat mencegah socket kelebihan beban oleh terlalu banyak upaya koneksi.

  • Nilai default adalah 0, menunjukkan bahwa fitur TCP SYN cookie dinonaktifkan.

  • Saat parameter ini disetel ke 1 dan antrian SYN_RECV penuh, kernel memodifikasi responsnya terhadap paket SYN. Dalam paket respons SYN+ACK, nomor seri awal adalah nilai yang cermat dihitung dari lima parameter: IP sumber, port sumber, IP tujuan, port tujuan, dan cap waktu. Karena nomor urutan yang dikonfirmasi dalam paket ACK bukanlah nilai yang sebelumnya dihitung, penyerang jahat tidak dapat merespons atau mungkin merespons secara salah, sedangkan pemohon sah akan merespons dengan benar terhadap paket SYN+ACK yang diterima. Saat net.ipv4.tcp_syncookies diaktifkan, net.ipv4.tcp_max_syn_backlog diabaikan.

net.ipv4.tcp_tw_reuse

Parameter ini menentukan apakah socket TIME-WAIT (port TIME-WAIT) dapat digunakan untuk membentuk koneksi TCP.

net.ipv4.tcp_tw_recycle

Parameter ini menentukan apakah sistem mendaur ulang socket TIME-WAIT pada kesempatan pertama.

net.ipv4.tcp_fin_timeout

Periode waktu di mana koneksi TCP tetap berada dalam status FIN-WAIT-2 setelah ujung lokal memutuskan koneksi socket. Unit: detik. Selama periode ini, peer mungkin terputus, tidak pernah mengakhiri koneksi, atau mengalami terminasi proses yang tidak terduga.

net.ipv4.ip_local_port_range

Nomor port protokol TCP/UDP lokal.

net.ipv4.tcp_max_syn_backlog

Parameter ini menentukan jumlah koneksi TCP dalam status SYN_RECV dalam sistem.

Status SYN_RECV adalah tahap di mana sistem telah menerima paket SYN, merespons dengan paket SYN+ACK, dan sedang menunggu ACK final dari peer dalam jabat tangan tiga arah. Ini adalah jumlah maksimum permintaan koneksi yang belum diakui oleh peer yang dapat disimpan dalam antrian. Jika server sering kelebihan beban, cobalah tingkatkan angka ini. Nilai default dipengaruhi oleh memori instance, dengan maksimum default 2048.

net.ipv4.tcp_westwood

Parameter ini mengaktifkan algoritma pengendalian kemacetan di klien. Algoritma pengendalian kemacetan mempertahankan evaluasi throughput dan mencoba mengoptimalkan penggunaan bandwidth keseluruhan. Kami sarankan Anda mengaktifkan algoritma sebelumnya untuk komunikasi WAN.

net.ipv4.tcp_bic

Parameter ini menentukan apakah kontrol kemacetan peningkatan biner diaktifkan untuk jaringan jarak jauh untuk lebih memanfaatkan koneksi gigabit. Kami sarankan Anda mengaktifkan fitur ini untuk komunikasi WAN.

net.ipv4.tcp_max_tw_buckets

Jumlah maksimum koneksi yang diizinkan dalam status TIME_WAIT. Jika jumlah koneksi dalam status TIME_WAIT lebih besar dari nilai default, koneksi segera diakhiri. Nilai default bervariasi berdasarkan ukuran memori instance. Nilai default maksimum adalah 262144.

net.ipv4.tcp_synack_retries

Jumlah kali paket SYN-ACK dikirim ulang saat koneksi berada dalam status SYN_RECV.

net.ipv4.tcp_abort_on_overflow

Nilai 1 mengaktifkan sistem untuk mengirim paket RST untuk mengakhiri koneksi jika sistem menerima banyak permintaan dalam waktu singkat dan aplikasi terkait gagal memproses permintaan. Kami sarankan Anda meningkatkan kemampuan pemrosesan dengan mengoptimalkan efisiensi pemrosesan aplikasi. Nilai default: 0.

net.ipv4.route.max_size

Jumlah maksimum rute yang diizinkan oleh kernel.

net.ipv4.ip_forward

Penerusan pesan antar antarmuka.

net.ipv4.ip_default_ttl

Jumlah maksimum hop yang dapat dilewati paket.

net.netfilter.nf_conntrack_tcp_timeout_established

Jika tidak ada paket yang dikirim melalui koneksi yang telah dibentuk dalam periode waktu tertentu, sistem menggunakan iptables untuk mengakhiri koneksi.

net.netfilter.nf_conntrack_max

Nilai hash maksimum yang menentukan jumlah koneksi yang dapat dilacak.

Referensi