Как увеличить скорость передачи данных через FTP?
Ситуация такая: есть NAS на котором запущен FTP-сервер, он подключён к сети 1Гбит Ethernet. В синтетических тестах (Lan Speed Test) и том же iperf скорость передачи близкая к теоретически максимальной (960Мбит/с). А вот при фактическом копировании/записи файлов скорость ограничена 10 МБ/с. В чём могут быть причины такой низкой скорости и как их устранить?
UPDATE: По поводу скорости диска: www.youtube.com/watch?v=BD5H1CjmgZY
Бенчмарки выдают 60 МБ/с. В других обзорах почти тоже самое.
UPDATE 2: Локальный тест скорости чтения выдал:
sudo hdparm -Tt /dev/sda /dev/sda: Timing cached reads: 488 MB in 2.00 seconds = 243.85 MB/sec Timing buffered disk reads: 258 MB in 3.00 seconds = 85.98 MB/sec
dd if=/dev/zero of=/tmp/output bs=8k count=10k; rm -f /tmp/output 10240+0 records in 10240+0 records out 83886080 bytes (84 MB) copied, 1.25412 s, 66.9 MB/s
Update 3: настройки FTP машинки.
ftpd_banner=Welcome to WD My Cloud listen=yes listen_port=21 accept_timeout=60 connect_timeout=60 data_connection_timeout=300 max_clients=0 max_per_ip=20 xferlog_enable=YES hide_ids=YES dirlist_enable=YES download_enable=YES use_localtime=YES write_enable=YES file_open_mode=0755 local_enable=YES local_umask=02 local_max_rate=0 anon_root=/nfs local_root=/nfs check_shell=NO chroot_local_user=YES userlist_enable=YES userlist_deny=NO userlist_file=/etc/user_list vsftpd_log_file=/var/log/vsftpd.log anonymous_enable=NO anon_mkdir_write_enable=NO anon_upload_enable=NO anon_other_write_enable=NO no_anon_password=YES anon_max_rate=0 anon_umask=077 #share_acl_enable=YES pasv_enable=YES pasv_promiscuous=YES pasv_min_port=5000 pasv_max_port=5099
Оценить 12 комментариев
960 Мбит/с и 10 Мбайт/c, или 960 Мбит/с и 10 Мбит/c ?
Скорость iperf и ftp соединения меряете на одном и том же клиенте?
ldv: 960Мбит, опечатался. Скорости измеряю на одном и том же клиенте, измерил на других — результаты те же.
ldv: 1 файл 400 мб, 1 файл 5гб, 1 папка с множеством мелких файлов, общим объёмом 1гб. Везде скорость одинаковая, 10-11 МБ/с.
dd if=/dev/zero of=/tmp/output bs=15k count=10k
scp root@localhost:/tmp/output /tmp/output2
ldv: по SMB и любым другим протоколам скорость либо такая же, либо чаще всего ниже. Плюс очень медленное открытие папок в отличие от FTP.
ldv: 102105088 bytes (102 MB) copied, 2.29218 s, 44.5 MB/s
output 100% 97MB 5.7MB/s 00:17
До конца не записалось, место закончилось.
Станислав: ну если по всем протоколам маленькая скорость, то настройки ftp не причем
странно, почему скорость копирования с localhost на localhost такая мальенькая
ldv: но ведь самое интересное что Lan Speed Test выдаёт скорость близкую к реальной если его прогнать через папку подключенную по SMB и 1ГБит если по FTP.
Станислав: кроме вас с NAS может еще кто-нибудь работает когда вы меряете? )
iftop’ом , iotop’ом посмотреть загрузку , например
ldv: дебиан сдулся после попыток поставить эти пакеты, через какое-то время переставлю систему на чистом дебиане без WD-шных приблуд, скорость должна быть выше.
Всё решилось очень просто: переустановкой ОС у NAS. Перешёл с ужасной заводской от WD на OMV и теперь всё летает.
есть NAS на котором запущен FTP-сервер, он подключён к сети 1Гбит Ethernet. В синтетических тестах (Lan Speed Test) и том же iperf скорость передачи близкая к теоретически максимальной (960МБ/с).
Вы где то сильно ошибаетесь. Такое невозможно ни физически, ни теоретически.
При подключении к сети 1Гбит Ethernet, максимально возможная скорость передачи файлов равна 1000/8=125МБ/с
Чтобы обеспечить скорость в 960МБ/с вам нужен линк на 10Гбит как минимум.
Фактическая скорость будет в основном ограничена скоростью дисков, так что вполне нормальная ожидаемая скорость для бюджетного NAS’а.
Если хотите повысить скорость — ставьте более быстрые диски, распределяйте нагрузку между дисками, и.т.д.
- Производительностью дисковой подсистемы. Для среднестатического диска это примерно 1-100МБ/с в зависимости от нагрузки
- Производительностью ОС файлового хранилища. Зависит от скорости работы процессора, наличия памяти и настроек.
Станислав: Перечитал пост — не вижу объяснений почему дело не в скорости диска.
Дело именно в скорости диска и производительности ОС.
iperf и Lan Speed Test измеряют исключительно пропускную способность сети. Скорость диска, да и вообще его наличие в системе никак на результаты не влияет.
А ftp работает именно с файлами на диске, и зависит в первую очередь от скорости диска. И уж в последнюю от скорости сети.
АртемЪ: Реальная скорость считывания с этого же диска у других людей в 6 раз выше (можно посмотреть в любом обзоре WD Mycloud), на клиенте стоят Mac Pro и пара iMac. У всех жёсткое ограничение в 10~11 МБ/с и при записи в точности такая же ситуация. Даже скорость копирования с внешнего диска по USB выше чем по гигабитному Ethernet.
Станислав: Для начала давайте определимся что такое реальная скорость считывания с диска-
Она зависит от модели диска и линейности чтения. Точную модель диска вы не указали.
Если идет исключительно линейное чтение, то среднестатический современный диск способен выдавать примерно 70-120Мб/с
Если идет случайное чтение, то в зависимости от размера блока и очереди оно будет колебаться в очень широких пределах.
На мелких файлах порядка 1Мб/с и меньше
На более крупных порядка 1-50Мб/с.
Это что касается диска.
Кроме этого скорость сильно ограничена процессором — если производительности процессора не хватает, скорость будет очень низкая. Ну и объем памяти для кэширования прилично влияет.
Какой процессор у вас стоит в NAS и чем он еще нагружен?
По поводу ссылки на обзор в вопросе — это не обзор, а скорее реклама.
Тестировать скорость без указания типа файлов невозможно, ибо на разных файлах она отличается на порядок.
К тому же там вроде не по FTP тестирование.
АртемЪ: сделал локальный тест на чтение, результаты в первом посту. Скорость явно выше 10 МБ/с.
Спецификации вот: mybookworld.wikidot.com/forum/t-768658/wd-my-cloud.
Станислав: Что значит локальный тест на чтение? На самом накопителе я так понимаю запускали?
И тестировали с помощью hdparm ?
И для чего этот тест вам?
Он показывает максимально возможную производительность жесткого диска в идеальных условиях.
А вам нужна реальная прозводительность, в реальных условиях. Это совсем другие цифры.
Т.е во первых реальная прозводительность диска на реальных файлах будет меньше.
Во вторых у вас данные будут передаваться по сети, т.е надо учитывать насколько будет хватать буфера, насколько будет хватать прозводительности процессора для передачи файлов.
Процессор там стоит очень дохлый, памяти очень мало.
ldv: да что то я путаю
а какой у вас фтп сервер, помнится толи всфтпд давал лучшие результаты то ли профтпд
Станислав: ну тогда увы, посмотрел только что на файлообменнике стоит у нас профтпд, видимо он был шустрее в плане скорости.
По самбе будет быстрее
10мегабайт/сек это чуть меньше 100мбит. Не путайте человека.
Проблема скорее не в физике компа а в физике протоколов. Кстати, какой пинг от клиента до сервера?.
ФТП работает в один поток, следовательно, пока предыдущий пакет не получен — следующий не передается. Справедливо для аплоада. Дла даунлоад — попробуйте запустить какой нибуть даунлоадменеджер, который может один файл загружать в несколько потоков. Есть подозрение, что в таком режиме получите почти потолок фашей «физики».
PING 192.168.0.200 (192.168.0.200): 56 data bytes
64 bytes from 192.168.0.200: icmp_seq=0 ttl=64 time=0.588 ms
64 bytes from 192.168.0.200: icmp_seq=1 ttl=64 time=0.594 ms
64 bytes from 192.168.0.200: icmp_seq=2 ttl=64 time=0.550 ms
64 bytes from 192.168.0.200: icmp_seq=3 ttl=64 time=0.601 ms
64 bytes from 192.168.0.200: icmp_seq=4 ttl=64 time=0.662 ms
64 bytes from 192.168.0.200: icmp_seq=5 ttl=64 time=0.563 ms
64 bytes from 192.168.0.200: icmp_seq=6 ttl=64 time=0.644 ms
64 bytes from 192.168.0.200: icmp_seq=7 ttl=64 time=1.710 ms
64 bytes from 192.168.0.200: icmp_seq=8 ttl=64 time=0.509 ms
64 bytes from 192.168.0.200: icmp_seq=9 ttl=64 time=0.565 ms
— 192.168.0.200 ping statistics —
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.509/0.699/1.710/0.340 ms
Это что-то дало?
Выше уже в комментариях отвечал что скорость ограничена 10 МБ/с по всем протоколам. NFS, FTP, SMB. Потоковая скорость не столь интересна, сколько скорость передачи файлов последовательно, особенно больших.
Станислав: пинг — дало то, что проблема не в задержках. Если вопрос решился — то и тему закрываем. Но для академического интереса — можно было бы посмотреть параметры драйвера сетевухи.
Низкая скорость передачи FileZilla, как увеличить скорость загрузки FTP.
Помощник Админа > Blog > Windows & Linux > Linux > Низкая скорость передачи FileZilla, как увеличить скорость загрузки FTP.
Как увеличить скорость загрузки FileZilla.
Несмотря на наличие у клиента Интернет-соединения со скоростью 100 Мбит/с и выделенного FTP-сервера со шириной канала в 500 Мбит/с , скорость скачки с FTP-сервера FileZilla в одном потоке не превышает 2,1 — 2,3 Мбит/с.
Первым делом пробежался по настройкам FileZilla Server Options где в настройках параметра Speed Limits имеются настройки Download Speed Limit и Upload Speed Limit. По умолчанию значения выставлены в положение No Limit в обоих параметрах, что говорит об отсутствии ограничений скорости со стороны сервера.
Тогда на сервере вместо FileZilla Server был поднят Serv-U FTP Server, который показал хорошую скорость загрузки со стороны клиента в 9,25 МБ/сек (74 Мбит/сек). Стало понятно, что со стороны FileZilla Server ограничения где-то есть.
В настройках FTP-сервера FileZilla переходим в раздел «Miscellaneous«, где находятся параметры «Internal transfer buffer size» и «Socket buffer size» со значениями по умолчанию default:32768 и 262144 соответственно, что равняется 32КБ и 256КБ. В описании указано, что слишком низкий или слишком высокий размер буфера может повлиять на скорость передачи данных FTP-сервера fileZilla.
Постепенно увеличивая значение по 32КБ и проверяя скорость загрузки клиента был найден оптимальный размер в 512 КБ.
Переход от 64 КБ (65536) к 128 КБ (131072) привел к тому, что скорость достигла примерно 46,4 Мбит/с (5,8 МБ/с).
Буфер 256 КБ (262144) позволил мне достичь 65,6 Мбит/с (8,2 МБ/с).
В FileZilla максимальный размер буфера 999 999 (976 КБ или почти 1 МБ).
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
скорость по ftp не разгоняется выше 20 Мбит/с, wifi роутер и телефон поддержуют n-стандарт до 150 Мбит/с
Для начала посмотри скорость подключения по Wi-Fi в свойствах адаптера. Потом эту скорость надо разделить на 2. Если сеть с шифрованием, то на 3. Так и получится скорость работы Wi-Fi при передаче файлов. Если видны соседские сети, то скорость будет ещё меньше. И не надо забывать, что на скорость копирования файлов влияет скорость винчестеров.
Вадим Высший разум (465520) Даже без шифрования при работе по Wi-Fi к пакетам с данными добавляется служебная информация. Она составляет половину от переданной. А если ещё и шифрование, то будет медленнее.
это как вы так делите на 2-3. сами придумали?
поделитесь научной литературой на эту тему
а если меня окружают 4-7 wifi сетей, то я получается модемом пользуюсь и мне ничего не скачать?
Вадим Высший разум (465520) http://dlink.ru/ru/faq/112/592.html Подробнее можно поискать в интернете принцип работы Wi-Fi.
wi-fi режет скорость сильно причем, мы асус взяли n10 так вт он по вафле выдавал вместо 90 всего 25 мегабит
А при чем здесь ТВОЕ оборудование, если ты по ФТП качаешь..))))
Моя машина может разгоняться до 350км/ч, но я не идиот, чтобы с такой скоростью ездить по российским дорогам.
Кто же тебе даст работать с такой скоростью. )))))))
Шум дождя Искусственный Интеллект (338245) А локалку не проще сделать. через ДЛНА или как-там-его. нафига ты ФТП туда приплетаешь. Если ты в Воронеже, то зачем ты сам себе файлы через Нью-Иорк отправляешь. )) Зачем тебе лишние посредники, которые тебе и скорость режут, и при большом желании могут получить доступ к твоим личным файлам.
скорость передачи данных на этом роутере 150 мб/с
вы понимаете, что общего в тарифе 80 мб/с и скоростью скачки 10 мб/с?
отсюда и ответ, что скорость 20ка-это максимум
какой тариф инет отключен (кабель отсоединен от роутера) и не МБ/с а Мбит/с это два разных измерения скорости
Александр Ого Мастер (1677) про тириф-это я как пример написал у вас 150 Мбит/сек-скорость передачи данных а качаете вы мбайтах разницу видишь? и не придирайся к буквам, я специально написал так