Saya dapat memanipulasi nilai tersebut dengan:
ip route change ... initcwnd 10
dan kemudian beri umpan balik dengan:
ip route show
Tetapi bagaimana dengan nilai default sebelum modifikasi? Apakah ada cara untuk menanyakan nilai itu dari sistem?
Atau, dapatkah Anda memberikan referensi yang valid yang menunjukkan nilai hardcoded default untuk setiap versi kernel?
Yah, saya tidak bisa mengatakan saya 100% yakin ini harus menjadi jawabannya, tetapi, seperti yang sering terjadi,
ss
adalah pilihan yang baik untuk mendapatkan beberapa info terungkap, misalnya:-n
adalah tipikal untuk menghilangkan penyelesaian DNS yang menyebalkan,-l
apakah kita tetap hanya mendengarkan soket dan-i
(kuncinya) adalah "Tampilkan informasi TCP internal". Seperti dapat dilihat, kedua algoritma kemacetan dan cwnd default ditampilkan.sumber
Jika saya mengerti Anda dengan benar, Anda sedang mencari nilai awal dari
snd_cwnd
set parameter ketika sebuah soket TCP diinisialisasi.Sepertinya dimulai dengan kernel linux
2.6.39
, sebuah makroTCP_INIT_CWND
telah diperkenalkan di linux / include / net / tcp.h yang mengisi nilaisnd_cwnd
ketika menginisialisasi soket TCP.Saya tahu di mana kode ini berada di kernel untuk
IPv4
, dan sayangnya sepertinya tidak menggunakan makro untuk mengisi nilai untuk kernel yang lebih tua dari2.6.39
Kode init serupa juga ada untuk fungsi di
IPv6
dalamnyatcp_v6_init_sock()
net/ipv6/tcp_ipv6.c
sumber