В настоящее время у меня есть дата-центр, подключенный к двум удаленным точкам через MPLS - 2M и 6M соответственно. Соединение 2M (в Азию из США) имеет задержку около 300 мс, и при передаче между клиентами (XP, 2003 Server) и сервером (2003 Server) один поток не превышает 0,65 Мбит / с.
Я могу получить очень хорошее соединение через FTP, которое заполняет почти все 2 Мбит / с с однопоточным FTP-соединением, но CIFS или что-то еще на основе TCP, похоже, ужасно затруднено.
Было высказано предположение, что это проблема размера окна TCP, но при обращении к этот чтобы изменить размер окна на 64 КБ (или больше, я пробовал диапазон размеров окон), это вообще не меняет мою скорость передачи. Я заглянул в сетевой монитор, чтобы увидеть, какие размеры окон я обсуждаю, и он сообщает, что если я установил его на 64 КБ, он действительно согласовал 64 КБ и так далее.
На самом деле у меня нет большого опыта в этом безумии, поэтому я надеялся, что кто-то сможет понять, что мне не хватает, или что-то, что нужно учесть.
IMHO, низкоуровневые хаки, такие как изменение размера окна, - не первое место, с которого нужно начинать. Задержка 300 мс ужасна. Вы смотрели потерю пакетов? FTP имеет меньше накладных расходов, чем копирование файлов Windows, поэтому обычно он работает быстрее.
У нас та же проблема, что и у вас, единственный способ решить проблему доступа к CIFS через канал MPLS - это ускорить его с помощью ускорителя CIFS, такого как устройства Riverbed или устройства F5 Networks. Будет хуже, если вы используете совместное использование файлов Windows и без локального контроллера домена из-за болтливого протокола от MS. За исключением Vista и выше из-за SMBv2.
Мы получаем около 250 мс до постоянного тока США из Азиатско-Тихоокеанского региона и 220 мс до нашего европейского постоянного тока.