Je peux manipuler une telle valeur avec:
ip route change ... initcwnd 10
puis avoir un retour avec:
ip route show
Mais qu'en est-il de la valeur par défaut avant toute modification? Existe-t-il un moyen d'interroger cette valeur à partir du système?
Sinon, pouvez-vous fournir une référence valide qui montre la valeur codée en dur par défaut pour chaque version du noyau?
Eh bien, je ne peux pas dire que je suis sûr à 100% que cela devrait être la réponse, buuut, comme cela arrive souvent,
ss
est le bon choix pour obtenir des informations révélées, par exemple:-n
est typique pour se débarrasser de la résolution DNS ennuyeuse,-l
est que nous nous en tenons uniquement aux sockets d'écoute et-i
(la clé) est "Afficher les informations TCP internes". Comme on peut le voir, l'algorithme de congestion et le cwnd par défaut sont affichés.la source
Si je vous ai bien compris, vous recherchez la valeur initiale du
snd_cwnd
jeu de paramètres lors de l'initialisation d'un socket TCP.Cela ressemble à partir du noyau linux
2.6.39
, une macroTCP_INIT_CWND
a été introduite dans linux / include / net / tcp.h qui remplit la valeur desnd_cwnd
lors de l'initialisation d'un socket TCP.Je sais où se trouve ce code dans le noyau
IPv4
et, malheureusement, il ne semble pas utiliser de macro pour remplir la valeur des noyaux plus anciens que2.6.39
Un code init similaire existe
IPv6
aussi bien pour latcp_v6_init_sock()
fonction interne denet/ipv6/tcp_ipv6.c
la source