Почему проводник Windows намного медленнее, чем FileZilla, при передаче по FTP?


15

Я создал подключенный FTP-диск в Windows 7 «Добавить сетевое расположение». Работает нормально, за исключением одной проблемы. Скорость передачи файлов намного ниже, чем FileZilla. Та же локальная машина, тот же удаленный сервер, 45 МБ занимает 5 минут с Win7 Network Place и 1:20 с FileZilla. Я повторил тест 5 раз за пару часов, чтобы исключить изменения в сети. Каждый тест должен был быть передан с помощью Network Location, а затем сразу после передачи с помощью FileZilla. Каждый раз разница была огромной, и времена были примерно одинаковыми для каждой тестовой пары.

Кто-нибудь знает, почему это так (кроме «Microsoft глупа» или что-то в этом роде)? Я имею в виду, есть ли что-то, что мне нужно сделать с моей системой, чтобы получить производительность, которую я должен получить? Это 64-разрядная версия Windows 7 Professional, 4-ядерная Xeon 2,53 ГГц, 6 ГБ ОЗУ, исходящая чистая скорость 8 Мбит / с (измеряется с помощью SpeedTest.net).


2
Помимо всего прочего, чтобы провести действительно научный тест, вам нужно изменить порядок, в котором вы делаете переводы: иногда сначала используйте Windows, иногда сначала FileZilla.
Джоэл Коухорн

Из моего опыта: наш хостинг-провайдер использует WinServer 2003 и сервер MS FTP, он ужасно медленный и выдает ошибки тайм-аута, но когда я пробую другой ftp-сервер, размещенный в Red Hat Linux, я получаю возможность быстрой загрузки в Explorer. Я создал дамп с Wireshark, но в этом нет ничего необычного.
ZippyV

Ответы:


19

Вы не можете сделать это, это связано с очень маленьким размером буфера, который вы не можете изменить.

Internet Explorer и Windows Explorer имеют статический размер буфера 4096 байт, который нельзя изменить, по сравнению с тем, что Filezilla имеет размер буфера 256 КБ . Таким образом, размер буфера в Filezilla в 64 раза выше, чем в Windows Explorer, и это объясняет, почему он способен выполнять гораздо более быстрые передачи.

Когда этот буфер заполняется, который идет очень быстро для 4096 байт, он начинает задерживать загрузку дополнительных данных. Таким образом, вместо загрузки полных 256 КБ и отправки, он загружает только до 4 КБ. Это снижает скорость загрузки, так как вводится некоторая задержка.

Вы можете изменить тысячи настроек сети и ввода / вывода, но это, скорее всего, не окажет большого влияния. FTP-программы имеют лучшую поддержку, а также такие функции, как одновременная передача и возобновление неудачной передачи, что делает Windows Explorer неподходящим инструментом для использования в этом случае. Таким образом, Windows Explorer на самом деле не предназначен для передачи по FTP. С другой стороны, можно предположить, что широко используемый файловый менеджер способен выполнять FTP-передачи, но они не смогли реализовать лучшее поведение ...

Не совсем законно, можно перепроектировать и попытаться исправить стоимость! Но почему, если у кого-то есть Filezilla? :)


2
Это верно. Так что немногие пользователи используют FTP в Windows, я был бы раздражен, если бы Microsoft решила потратить время на это. Лучше тратить время на вещи, которые помогают всей пользовательской базе, такие как интеграция с Skydrive. 25 ГБ свободно и я застрял с помощью WebDAV?
Surfasb

2

Некоторые идеи :

  1. Отключить IPv6
  2. Отключить дистанционное дифференциальное сжатие
  3. Отключить настройки разгрузки задач и несколько других возможных настроек

Эта статья Microsoft рекомендует:

  1. Включите управление потоком в направлениях передачи (Tx) и приема (Rx):
    в Свойствах вашего сетевого адаптера на вкладке «Дополнительно» и включите управление потоком в направлениях Tx и Rx (выберите параметр «Включено Rx & Tx», если он доступен). ,
  2. Измените скорость соединения на 100 Мбит / с в полнодуплексном режиме:
    То же, что и выше, для настройки 100 Мбит / с в полнодуплексном режиме.

Тем не менее, я должен признаться, что я избегаю Windows Explorer, как чума в сети. Интересно знать , если один может управлять , чтобы ускорить его.
Harrymc

0

это может быть так: http://support.microsoft.com/kb/555564, чтобы быть уверенным, что этот пост немного устарел,
но это не исправляет его, просто знайте, что вы не единственный ... они не имеют пока не разобрались: http://social.technet.microsoft.com/Forums/en/winserverPN/thread/bb8ac7dd-e19c-4325-8f45-cd366c4da53f

Кроме того, я искренне сожалею о вашем положении, но если MS хочет, чтобы я исправил коммерческий продукт, они могут А предложить вознаграждение или В нанять меня.


Первый, кажется, о (древних) серверах, которые используют IDENTD. Это древнее, потому что обратный DNS - это шутка. Я сомневаюсь, что я один, потому что это почти новая установка в чистой / надежной системе и сети. Арендатор, если у кого-то есть идеи. Благодарю.
Боб Денни

0

как для FTP, так и для «веб-клиента», который использует sharepoint, мы заметили ОГРОМНОЕ увеличение скорости, перейдя к параметрам обозревателя Интернета, вкладке подключений, настройкам локальной сети и сняв флажок «Автоматически определять настройки». Он постоянно искал прокси-сервер (которого у нас нет) и действительно замедлял работу. Я не знаю, ускорит ли это, как только передача начнется, но может ускорить просмотр папок.

Кроме того, IE выполняет передачу текста, а Mozilla - двоичный файл? Его легко узнать с помощью такого инструмента, как wireshark .

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.