dlaczego WinSCP jest tak wolny?


9

interfejs jest przydatny, ale szybkość przesyłania plików jest dziwnie wolna w porównaniu do pscp lub scp na mojej maszynie wirtualnej na tym samym komputerze z systemem Windows. Dostaję tylko około 17 kb / s, kiedy moja ogólna prędkość połączenia może wzrosnąć do około 1 Mb / s (czego nie widziałem, co mówi mi mój dostawca, że ​​mi dają) i jestem prawie pewien, że nawiązałem połączenie do tego samego komputera przy znacznie wyższych prędkościach wcześniej

Odpowiedzi:


8

Przydatne mogą być często zadawane pytania dotyczące prędkości przesyłania plików na stronie WinSCP, przedstawię podstawy:

Kod SSH WinSCP jest oparty na PuTTY, więc nie można oczekiwać, że przesyłanie plików przy użyciu protokołów SSH będzie szybsze niż PuTTY. Warto więc spróbować przesłać plik bezpośrednio za pomocą PuTTY, aby sprawdzić, czy jest on porównywalny.

Oprócz przepustowości sugerują, że istnieją dwa wspólne czynniki ograniczające ogólną szybkość połączenia dla WinSCP: procesor i opóźnienie połączenia .

procesor

Jest to ważne, ponieważ wszystko, co jest wysyłane, musi być zaszyfrowane na jednym końcu i odszyfrowane na drugim (i potencjalnie również skompresowane, jeśli jest to włączone). Jeśli którakolwiek maszyna działa wystarczająco wolno (lub zdarza się, że pracuje nad innymi rzeczami), ogólna prędkość połączenia będzie musiała zostać zmniejszona, aby procesor mógł nadążyć za procedurami szyfrowania / deszyfrowania / kompresji.

Sugeruje się tutaj użycie mniej intensywnej metody szyfrowania (sugerują, że użycie Blowfishjest zwykle szybsze niż AES), spróbuj wyłączyć kompresję i spróbuj przejść do SSH-1, jeśli używasz SSH-2.

Opóźnienie połączenia

Sugerują wypróbowanie SCP, protokołu zamiast SFTP, ponieważ SCP jest mniej podatny na opóźnienia (i sugerują włączenie kompresji w tym przypadku).


1
Właśnie zrobiłem test WinSCP vs. psftp (program sftp putty). Przesyłanie pliku 500 megabajtów przez moją domową sieć LAN zajęło <1 minutę za pomocą psftp. WinSCP zajęło około 4 minut.
Dan Pritts,

Oprócz podobnych zachowań jak @DanPritts (45 MiB / s przez łącze gigabitowe przez psftp vs 12-20 MiB / s przez WinSCP), jestem w stanie uzyskać wyższe prędkości z BitVise Tunnelier niż psftp lub WinSCP (52 MiB / s) pomimo tego, że używa algorytmów „wolniejszych” (aes256-ctr, hmac-sha2-256).
kbolino,

1

Sprawdź, czy masz twardy limit w „przeniesieniu”, w „preferencjach / innych preferencjach”. Może się to zdarzyć, jeśli ten komputer był używany / konfigurowany przez kogoś innego. Konfiguracja VM również może mieć wpływ. (Lub węzły pośrednie)


1

Dla zainteresowania zmieniliśmy z aes na blowfish i zmieniliśmy z 250kb / s na 2mb / s

nasz skrypt winscp.txt

# Automatically abort script on errors
option batch abort
# Disable overwrite confirmations that conflict with the previous
option confirm off
# Connect using a password
open sftp://user@pass@server -rawsettings Compression=1 AgentFwd=1 SshProt=1 Cipher=blowfish,aes,3des,WARN,arcfour,des
# Change remote directory
cd /x
# Change local directory
lcd /y
# Force binary mode transfer
option transfer binary
# synchronize
synchronize remote -criteria=size \x /y
#done
exit

z plikiem wsadowym

"c:\Program Files (x86)\Winscp\winscp" /script:script.txt %1 %2 %3 %4 %5 %6 %7 %8 %9

1

Najlepsze porady podane w FAQ - WINSCP SPEED , PLUS - zaktualizuj WINSCP do najnowszej wersji.

zacytować:

Podczas korzystania z SSH, transfery plików w WinSCP są szyfrowane, a procesor jest intensywny. Blowfish jest zwykle dużo szybszy niż AES (więc spróbuj BLOWFISH). Może to również pomóc, jeśli wyłączysz kompresję, jeśli włączyłeś ją wcześniej.

W przypadku ograniczenia prędkości przez opóźnienie połączenia pomocne może być użycie protokołu SCP zamiast SFTP. Opóźnienie ma mniejszy wpływ na SCP. W takim przypadku pomocne może być włączenie kompresji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.