J'ai donc récemment eu besoin de tirer un gros fichier sur Internet depuis l'un de nos bureaux à l'étranger. Les deux bureaux ont des liaisons par fibre optique de 50 Mbits dans les deux sens, mais le temps d'aller-retour est horrible et varie de peut-être 450 ms par bonne journée et 750 ms par merde.
À l'origine, j'ai essayé de tirer le fichier sur une connexion VPN, mais après quelques transferts infructueux (smb aspire vraiment les liaisons lentes) et la vitesse maximale à environ 128 Ko, un rapide google a montré que je rencontrais des problèmes de mise à l'échelle de la fenêtre TCP de Windows.
Depuis, j'ai poussé le fichier à travers un service commercial de type cloud privé qui a obtenu le fichier ici plus rapidement, donc ce qui suit est plus par curiosité qu'autre chose.
Ajouté au plaisir, c'est que l'accès à Internet aux deux extrémités se fait via un proxy http. J'ai cependant des droits d'administrateur sur les machines aux deux extrémités.
Comment feriez-vous pour obtenir une meilleure vitesse?
Ce que j'ai essayé:
1) SFTP ordinaire entre deux machines virtuelles Linux, en utilisant un tire-bouchon pour perforer le proxy http et un troisième intermédiaire pour connecter les deux extrémités ensemble. Vitesse atteinte: environ 600kBps.
2) SFTP mais en utilisant OpenSSH patché avec HPN-SSH. Tire-bouchon et configuration intermédiaire identiques à 1). Peu ou pas d'amélioration de la vitesse.
3) Selon 2 mais en utilisant LFTP avec pget -c -n 10
pour briser le transfert en morceaux. C'est le meilleur jusqu'à présent, avec 3,5 Mo / s ...
Toutes les améliorations sont les bienvenues.