6 votes

Comment vérifier la saveur de l'algorithme de contrôle de congestion TCP dans Ubuntu

J'utilise Ubuntu 14.04 LTS avec le noyau Linux version 3.13.0-34.

Comment puis-je savoir quel est l'algorithme de contrôle de congestion TCP utilisé par défaut ou actuellement ?

Merci.

7voto

James Mertz Points 390

Il n'y a pas de variantes de TCP, mais des TCP. algorithmes de contrôle de la congestion :

sysctl net.ipv4.tcp_congestion_control

cat /proc/sys/net/ipv4/tcp_congestion_control

La valeur par défaut est généralement cubic o reno bien qu'il en existe beaucoup d'autres, et les programmes peuvent définir l'algorithme préféré de l'utilisateur. connexions individuelles (par exemple, la transmission permet lp si disponible).

(Le même bouton affecte à la fois IPv4 et IPv6, malgré son nom).

6voto

Guy Avraham Points 171

Ajouter à @grawity il est possible de vérifier tous les algorithmes de contrôle de congestion TCP disponibles avec la commande suivante :

sysctl net.ipv4.tcp_available_congestion_control

Voici une liste de quelques-uns des résultats possibles (c'est-à-dire des saveurs disponibles) :

reno : TCP traditionnel utilisé par presque tous les autres OS. (par défaut)

cubique : CUBIC-TCP

bic : BIC-TCP

htcp : Hamilton TCP

vegas : TCP Vegas

westwood : optimisé pour les réseaux à perte

YeAH : prise en compte des délais/états pour maintenir un tuyau à un niveau égal ou inférieur à un seuil donné

NOTE : Si cubique et/ou htcp ne sont pas répertoriés lorsque vous faites 'sysctl net.ipv4.tcp_available_congestion_control' Essayez les solutions suivantes, car la plupart des distributions les incluent en tant que modules noyau chargeables :

/sbin/modprobe tcp_htcp
/sbin/modprobe tcp_cubic

Pour plus de détails, vous pouvez consulter ce site :

Détails du réglage TCP

J'espère que cela vous aidera.

A la vôtre,

Guy.

2voto

Pierz Points 1579

Si vous souhaitez connaître l'algorithme de contrôle de congestion actuellement utilisé sur chaque connexion, vous pouvez utiliser la commande ss (qui fait partie de la iproute2 paquet/outils) :

ss -ti

Voici quelques exemples de résultats : Sous les détails de la connexion, le premier élément de la sortie des paramètres est l'algorithme de contrôle de la congestion - dans ce cas-ci cubic - qui est suivi de divers paramètres liés à la connexion TCP.

ESTAB      0      0      192.168.56.102:ssh           192.168.56.1:61795
 cubic wscale:6,7 rto:201 rtt:0.218/0.038 ato:40 mss:1448 rcvmss:1392
 advmss:1448 cwnd:10 bytes_acked:8753 bytes_received:3945 segs_out:40
 segs_in:63 send 531.4Mbps lastsnd:1 lastrcv:2 lastack:1
 pacing_rate 1059.1Mbps rcv_rtt:2 rcv_space:28960

Note : Il est possible pour les applications de choisir l'algorithme de contrôle de congestion qu'elles veulent utiliser en utilisant la fonction TCP_CONGESTION appel à setsockopt().

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X