web-dev-qa-db-fra.com

envoi d’un fichier volumineux avec SCP à un serveur donné stoppe à exactement 2112 ko

Il y a un certain serveur Ubuntu 10.04 sur lequel si je ssh un fichier dessus depuis n'importe quel serveur situé en dehors du bureau où se trouve ce serveur (ce qui signifie que toute utilisation de ce serveur via LAN à partir de ce serveur fonctionne toujours pour une raison quelconque) , puis scp-ing échoue pour tous les fichiers d’une taille supérieure à 2112 ko et est bloqué à 2112 ko .

scp -vvv /home/attila-szeremi/aszeremi.tar.gz  [email protected]:~/aszeremi.tar.gz

affiche quelque chose comme 1% 2112KB 909.2KB/s - stalled - dynamiquement à la fin, où le Ko/s devient de plus en plus bas.

Est-ce que quelqu'un sait ce qui peut être la cause et comment je peux le réparer?

Ce que j'ai essayé jusqu'à présent:

  • Limiter la vitesse avec scp -l 2000. L'envoi de fichier a été ralenti et à 2112 ko, il s'est de nouveau bloqué.
  • Activer la compression avec -C. Il était toujours bloqué à la même taille.
42
Attila Szeremi

Il me semblait avoir trouvé le correctif. Je devais régler le paramètre mtu de la carte LAN sur 1492 en:

# ifconfig eth0 mtu 1492
31
Attila Szeremi

Le seul moyen de résoudre ce problème est de en désactivant TCP SACK :

$ Sudo sysctl -w net.ipv4.tcp_sack=0
34
dav.garcia

Sur les systèmes Linux plus récents, la commande ifconfig peut avoir été remplacée par ip

La commande pour définir le mtu devient:

# ip link set dev eth0 mtu 1492
11
kriss

Je me suis retrouvé coincé avec la même chose sous Mac OS X et La réponse de @ dav.garcia l'a fait pour moi avec un petit changement

  $ Sudo sysctl -w net.inet.tcp.sack=0
2
vinitius

Je voyais ce même problème. Aucune des suggestions ci-dessus n'a fonctionné pour moi, mais elles m'ont permis de trouver le bon chemin. J'étais derrière un pare-feu avec le paramètre MTU défini sur 1300. La définition du MTU de ma carte LAN sur très faible (576, quelque peu aléatoire) a entraîné l'arrêt de la suppression de mes paquets.

$ Sudo ifconfig eno1 mtu 576

Je devais le faire sur chacun de mes clients Linux. Pour une raison quelconque, la machine Windows sur le même sous-réseau n'a pas eu de problème.

0
Ben Jensen