На первый взгляд вопрос похож на вот этот.
Я столкнулся со странным поведением при попытке скопировать определенный файл из общего сетевого ресурса Windows Server 2008 R2 в клиент Windows XP Professional через VPN. VPN был настроен с использованием RRAS на сервере. Я постараюсь предоставить как можно больше информации, чтобы прояснить проблему.
При попытке скопировать сжатый файл размером ~ 2,5 МБ (через проводник или CMD, не имеет значения) процесс останавливается примерно через 20%, выдавая сообщение об ошибке через несколько секунд:
Не удается скопировать имя файла: Указанное сетевое имя больше не доступно.
Если я запустил команду ping -t 192.168.2.1
(где указанный IP-адрес принадлежит серверу) рядом с командой копирования, я ясно вижу, что время ожидания команды ping истекает на несколько секунд, поскольку процесс копирования останавливается. Когда это происходит, вся сетевая активность останавливается. Через несколько секунд сеть восстанавливается, ping продолжает работать в обычном режиме, однако процесс копирования останавливается, прежде чем отобразится вышеуказанное сообщение об ошибке.
Копирование других файлов (я пробовал 4-5 файлов), некоторые из которых больше, а некоторые меньше, удается. Мне кажется, что я могу копировать все несжатые файлы. Как только я пытаюсь скопировать архив, процесс зависает. Невозможно скопировать даже большой архив размером 707 КБ.
Я могу воспроизвести это поведение только на двух машинах: как Windows XP Professional, одна с SP2, а другая - с SP3. У других клиентов XP нет этой проблемы, как и у клиентов Windows 7.
Если я подключаюсь к серверу с помощью подключения к удаленному рабочему столу без использования VPN с любой из этих двух машин (используя одну и ту же учетную запись пользователя), я могу скопировать все, что захочу, даже эти «проблемные» файлы.
Кто-нибудь знает, что может происходить?
Передача файлов Windows по сети очень подвержена этому типу ошибок для больших файлов.
Я бы рекомендовал использовать robocopy с параметром / Z (копирование в перезапускаемом режиме). Это позволит клиенту автоматически возобновить работу с того момента, на котором он остановился, вместо того, чтобы постоянно начинать заново.
Состояние может быть вызвано загрузкой сети, сервером, клиентом или несколькими другими причинами. Однако, если это всегда один конкретный файл, я бы подумал о дефрагментации сервера и запуске на нем chkdsk, если это возможно. Вы также можете проверить загрузку диска; вам может потребоваться принять меры для повышения производительности за счет добавления дополнительных файловых серверов, изменения типа RAID и контроллера или использования физически более быстрых дисков.
Многие системы VPN сжимают данные, а также шифруют их (это часто повышает безопасность и определенно улучшает использование полосы пропускания), но это добавляет накладные расходы, которые могут способствовать задержке. В частности, сжатый файл, вероятно, не может быть сжат в большей степени, поэтому при передаче этого файла сети нужно сделать гораздо больше, чем при передаче того же размера файла несжатых данных.