Wygląda na związany z tym , ale jest nieco inny.
Istnieje łącze WAN między dwiema witrynami firmy i musimy przenieść pojedynczy bardzo duży plik (zrzut Oracle, ~ 160 GB).
Mamy pełną przepustowość 100 Mb / s (przetestowane), ale wygląda na to, że pojedyncze połączenie TCP po prostu nie może tego zwiększyć ze względu na to, jak działa TCP (ACK itp.). Przetestowaliśmy łącze z iperf , a wyniki zmieniają się dramatycznie podczas zwiększania rozmiaru okna TCP: przy ustawieniach podstawowych uzyskujemy przepustowość ~ 5 Mb / s, przy większym WS możemy uzyskać do ~ 45 Mb / s, ale nie więcej. Opóźnienie sieci wynosi około 10 ms.
Z ciekawości uruchomiliśmy iperf, używając więcej niż jednego połączenia, i stwierdziliśmy, że kiedy uruchomimy cztery z nich, rzeczywiście osiągną prędkość ~ 25 Mb / s, wypełniając całą dostępną przepustowość; więc kluczem jest uruchomienie wielu jednoczesnych przelewów.
W przypadku FTP sytuacja się pogarsza: nawet przy zoptymalizowanych ustawieniach TCP (wysoki rozmiar okna, maks. MTU itp.) Nie możemy uzyskać więcej niż 20 Mb / s na jednym transferze. Próbowaliśmy jednocześnie przesłać trochę dużych plików na serwer FTP i rzeczywiście stało się o wiele lepiej niż przy przesyłaniu jednego; ale potem sprawca stał się dyskowym We / Wy, ponieważ bardzo szybko odczytuje i zapisuje cztery duże pliki z tych samych wąskich gardeł dysku; ponadto nie wydaje się, abyśmy mogli podzielić ten pojedynczy duży plik na mniejsze, a następnie scalić go z powrotem, przynajmniej w nieodpowiednich czasach (oczywiście nie możemy spędzić na składaniu / scalaniu pliku w czasie porównywalnym z czasem przenoszenie).
Idealnym rozwiązaniem byłoby tu narzędzie wielowątkowe, które mogłoby przenosić różne fragmenty pliku w tym samym czasie; coś w rodzaju programów typu peer-to-peer, takich jak eMule lub BitTorrent, ale już z jednego źródła do jednego miejsca docelowego. Idealnie, narzędzie to pozwoliłoby nam wybrać liczbę równoległych połączeń do użycia i oczywiście zoptymalizować dyskowe operacje wejścia / wyjścia, aby nie przeskakiwały (zbyt) szalenie między różnymi sekcjami pliku.
Czy ktoś wie o takim narzędziu?
A może ktoś może zaproponować lepsze rozwiązanie i / lub coś, czego jeszcze nie próbowaliśmy?
PS Już myśleliśmy o utworzeniu kopii zapasowej na taśmie / dysku i fizycznym wysłaniu jej do miejsca docelowego; byłby to nasz ekstremalny środek, gdyby WAN po prostu tego nie przerwał, ale, jak powiedział AS Tanenbaum: „Nigdy nie lekceważ przepustowości wozu kombi pełnego taśm pędzących po autostradzie”.