Резюме
У нас есть FTP-сервер (работает в активном режиме). У нас есть FTP-клиент, который подключается к серверу, выполняет задачу, а затем закрывает соединение. FTP-клиент может выполнять эту операцию в нескольких потоках.
Проблема
У нас есть ситуация, когда клиенты время от времени испытывают сбои при выполнении операций через FTP-соединение. Фактическое соединение было выполнено с сервером, но когда сервер пытается вернуть данные через порт данных в случае неудачи.
Наблюдения
У нас есть простой тестовый FTP-клиент, который запускает два отдельных потока. Каждый поток выполняет рекурсивный список файлов из корневого каталога. Когда брандмауэр запущен на клиентском компьютере, зависание происходит в течение нескольких минут. Если на клиентском компьютере выключен брандмауэр, тестовое приложение работает правильно. Это указывает на потенциальную проблему с брандмауэром. Однако с включенным брандмауэром мы можем без проблем выводить список файлов на FTP-сервере нашей компании.
Если простой тестовый FTP-клиент запускает один поток, то проблем не возникает независимо от того, включен ли брандмауэр.
У нас есть еще один простой тестовый FTP-клиент, который запускал 4 потока (каждый из которых открывал новое FTP-соединение, делал список каталогов и закрывал FTP-соединение как можно быстрее) в течение ночи с отключенным брандмауэром. При включенном брандмауэре он быстро выходит из строя. Непонятно то, что если тестовый FTP-клиент и FTP-сервер запускаются на одном компьютере, сбой происходит даже при выключенном брандмауэре. Это означает, что проблема может быть не связана с брандмауэром.
Любая помощь с тем, что это может быть, будет очень признательна.
Спасибо, Ян
Вы используете свой FTP-сервер на XP? Если это так, вы можете подумать о следующем:
http://www.pcreview.co.uk/forums/thread-3690895.php
Он определяет некоторые «особенности» XP, которые делают его нежелательным для использования в любых ролях / приложениях сервера с высокой степенью загрузки.