28.2. Préparation de RHEL à la prise en charge de MPTCP
Par défaut, la prise en charge de MPTCP est désactivée dans RHEL. Activez MPTCP pour que les applications qui prennent en charge cette fonctionnalité puissent l'utiliser. En outre, vous devez configurer les applications de l'espace utilisateur pour forcer l'utilisation des sockets MPTCP si ces applications ont des sockets TCP par défaut.
Conditions préalables
Les paquets suivants sont installés :
-
iperf3
-
mptcpd
-
systemtap
Procédure
Activer les sockets MPTCP dans le noyau :
# echo "net.mptcp.enabled=1" > /etc/sysctl.d/90-enable-MPTCP.conf # sysctl -p /etc/sysctl.d/90-enable-MPTCP.conf
Démarrez le serveur
iperf3
et forcez-le à créer des sockets MPTCP au lieu de sockets TCP :# mptcpize run iperf3 -s Server listening on 5201
Connecter le client au serveur et le forcer à créer des sockets MPTCP au lieu de sockets TCP :
# mptcpize iperf3 -c 127.0.0.1 -t 3
Une fois la connexion établie, vérifiez la sortie
ss
pour voir l'état spécifique du sous-flux :# ss -nti '( dport :5201 )' State Recv-Q Send-Q Local Address:Port Peer Address:Port Process ESTAB 0 0 127.0.0.1:41842 127.0.0.1:5201 cubic wscale:7,7 rto:205 rtt:4.455/8.878 ato:40 mss:21888 pmtu:65535 rcvmss:536 advmss:65483 cwnd:10 bytes_sent:141 bytes_acked:142 bytes_received:4 segs_out:8 segs_in:7 data_segs_out:3 data_segs_in:3 send 393050505bps lastsnd:2813 lastrcv:2772 lastack:2772 pacing_rate 785946640bps delivery_rate 10944000000bps delivered:4 busy:41ms rcv_space:43690 rcv_ssthresh:43690 minrtt:0.008 tcp-ulp-mptcp flags:Mmec token:0000(id:0)/2ff053ec(id:0) seq:3e2cbea12d7673d4 sfseq:3 ssnoff:ad3d00f4 maplen:2
Vérifier les compteurs MPTCP :
# nstat MPTcp* #kernel MPTcpExtMPCapableSYNRX 2 0.0 MPTcpExtMPCapableSYNTX 2 0.0 MPTcpExtMPCapableSYNACKRX 2 0.0 MPTcpExtMPCapableACKRX 2 0.0
Ressources supplémentaires
-
tcp(7)
page de manuel -
mptcpize(8)
page de manuel