Il y a un truc qui m’énerve vraiment avec macOS, c’est la lenteur des accès au réseau. Plus exactement, la lenteur pour afficher la liste des fichiers et des dossiers sur un partage. Et j’ai une solution.
macOS est franchement lent avec les accès au réseau, que ce soit en AFP (qui va disparaître) ou en SMB. J’avais déjà fait un truc sur le sujet, notamment pour accélérer les débits en SMB, mais si les débits suivent plus ou moins – c’est très visible en 10 Gb/s -, l’affichage des dossiers reste toujours aussi lents. Dans certains cas, sur des dossiers contenant beaucoup de sous-dossiers ou de fichiers, ça peut prendre plusieurs dizaines de secondes.
Je ne suis visiblement pas le seul à avoir le problème, et ce long sujet, qui expérimente pas mal de choses, m’a donné une solution (presque) valable. Visiblement, macOS (et depuis pas mal d’années) a une gestion de l’ACK en TCP qui pose des soucis de performances (et de délai). Et la solution consiste soit à passer dans un mode de compatibilité, soit à désactiver complètement la fonction delayed ack
. Je vous recommande la première solution, qui a fonctionné pour moi. Petit bonus, d’ailleurs, ça permet aussi d’accélérer pas mal les transferts vers les machines sous Windows.
Pour tester, il suffit d’utiliser la commande suivante et de vous déconnecter/reconnecter d’un partage. La valeur à la fin indique le mode : 2
pour la compatibilité, 0
pour désactiver. Attention, la commande ne fonctionne plus après un redémarrage.
sudo sysctl -w net.inet.tcp.delayed_ack=2
Si vous remarquez une différence (comme moi), vous pouvez modifier les réglages pour que ce soit permanent. La première ligne ouvre le fichier qui contient les réglages de macOS. Il faut inscrire la seconde ligne dedans (si elle n’existe pas) ou la modifier avec la bonne valeur, si elle existe (a priori peu probable). Ensuite, il suffit de redémarrer et ça devrait suffire.
sudo nano /etc/sysctl.conf
net.inet.tcp.delayed_ack=2
Chez moi, ça m’a changé la vie pour accéder à mes partages réseau, sur lesquels je stocke les archives du blog et tous les logiciels et programmes utilisés.
Typo dans l’article : « la fonction deleyed ack. »
De mon côté, mes partages sont en NFS et je les mappe automatiquement avec autofs. C’est très rapide.
Je garde le SMB uniquement pour les machines Windows….
merci bcp !! ça me change la vie !!!
Fidèle lecteur. Encore MERCI : ça change la vie.
Un grand merci !!
Personnellement, je ne vois aucune différence avec l’une ou l’autre des deux méthodes, en accédant à mes partages SMB sur mon NAS Synology…
Intéressant. Mais la désactivation n’entraîne pas de risque de paquets foireux, donc de perte d’intégrité des données ? (je vois sur wiki que ACK sert à confirmer que le paquet reçu est bien le bon, mais je ne m’y connais pas du tout)
Bonjour,
interessant, j’aimerai bien l’utiliser, mais quand je lance la commande je n’ai rien dans la fenêtre.
Donc le fichier sysctl.conf n’a pas l’air d’exister sur ma machine ???
Je suis en 10.14.6 (beta).