Це схоже на це , але дещо інакше.
Існує посилання WAN між двома сайтами компанії, і нам потрібно перенести один дуже великий файл (дамп Oracle, ~ 160 ГБ).
Ми отримали повну пропускну здатність 100 Мбіт / с (протестовано), але схоже, що одне TCP-з'єднання просто не може його досягти через те, як працює TCP (ACK та ін.). Ми перевірили зв'язок з iperf , і результати різко змінюються при збільшенні розміру вікна TCP: за базових налаштувань ми отримуємо пропускну здатність ~ 5 Мбіт / с, при великій WS ми можемо отримати до ~ 45 Мбіт / с, але не більше ніж це. Затримка в мережі становить близько 10 мс.
З цікавості ми запустили iperf, використовуючи більш ніж одне з'єднання, і ми виявили, що при запуску чотирьох з них вони дійсно досягають швидкості ~ 25 Мбіт / с кожен, заповнюючи всю наявну пропускну здатність; тому ключ виглядає у виконанні декількох одночасних передач.
З FTP все погіршується: навіть при оптимізованих налаштуваннях TCP (високий розмір вікна, максимум MTU тощо) ми не можемо отримати більше 20 Мбіт / с за одну передачу. Ми спробували FTPing кілька великих файлів одночасно, і дійсно все стало набагато краще, ніж при передачі одного; але тоді винуватим став введення / виведення диска, адже дуже скоро читати та записувати чотири великих файли з тих самих вузьких дисків; Крім того, ми, здається, не в змозі розділити цей один великий файл на більш дрібні, а потім об'єднати його, принаймні, не в прийнятні часи (очевидно, ми не можемо витратити сплайсування / злиття файлу часу, порівнянного з часом перенесення його).
Ідеальним рішенням тут був би багатопоточний інструмент, який міг би одночасно переносити різні фрагменти файлу; на зразок подібних однорангових програм, таких як eMule або BitTorrent, вже є, але з одного джерела до одного пункту призначення. В ідеалі, інструмент дозволив би нам вибрати, скільки паралельних з'єднань використовувати, і, звичайно, оптимізувати введення / виведення диска, щоб не переходити (занадто) шалено між різними розділами файлу.
Хтось знає про такий інструмент?
Або хтось може запропонувати краще рішення та / або щось, що ми вже не пробували?
PS Ми вже думали створити резервну копію на стрічку / диск і фізично відправити її до місця призначення; це було б нашим крайнім заходом, якби WAN просто не перерізав це, але, як сказав А.С. Таненбаум, "ніколи не занижуйте пропускну здатність вагона станції, повного стрічок, що хитаються вниз по шосе".