![]() |
Скачивание файлов по LAN при сбоях в сети
Суть в чем: ищу программку для скачивания файлов по сети. Принцип работы программы, как я вижу, должен быть следующим: "Считываем с источника блок информации, пишем его куда сказали. Записав, сверяем результат с источником... если все 1-в-1, то берем следующий блок и так до конца. Если же в ходе проверки хоть один бит информации имеет расхождение, то перекачиваем битый блок заново (или его неверную часть)" Программы, типа KillCopy, LanLoad с этой задачей не справляются, стандартные методы копирования (через эксплорер или тотал коммандером) -- тоже.
Зачем это нужно? Ну, пример: качаем *.iso-шку любимой игрушки или софтины/ОС чтобы потом записать на болванку/двд или подключить к виртуальному приводу... качаем, пишем на болванку/монтируем в виртуалку, не зная что скачан файлик с ошибкой (даже если с расхождением от оригинала в 1 байт или даже бит). Начинаем инсталлировать - фик, где-то в процессе инсталляции вам любезно говорят, мол "ошибка в CRC". Если вместе с архивом лежит файлик с контрольной суммой, то после скачивания еще можно свериться.. но файл-то все равно может битым прийти. Кто что может посоветовать из софта? Пробовал в ТС делать "Сравнение по содержимому", но для массивных архивов он орет что "Памяти не хватает, поиск завершен. Файлы различаются" (для мелких архивов, конечно, функция полезная)... Так вот и вопрос, если ли вообще подобная утилита? P.S. Я ищу решения ам... следствий проблемы, а не саму проблему В чем причина, почему у меня большие архивы передаются через локалку (да и в инете тоже) с ошибками - я не знаю.. допускаю, что проблемы и в моем железе и в "шуме" самой локалки, да в чем угодно... |
SMB, по которому идёт передача данных через виндовые шары, не обеспечивает защиты от сбоев данных при передаче.
Наиболее приемлемый выход - качать по ftp либо p-2-p (torrent, eMule). Причём, пиринговые сети обеспечивают более строгое сравнение источника с оригиналом (имеется печальный личный опыт, когда по ftp в локальной сети скачивался битый файл); в p-2-p-сетях скачивание происходит поблочно, причём для каждого блока проверяется контрольная сумма и при несовпадении блок перекачивается целиком. Ещё раз повторюсь - через виндовый шаринг гарантировать качественное скачивание в сети со сбоями невозможно в принципе, ибо в отсутствие контрольных сумм со стороны сервера вероятность ошибки при вычислении контрольной суммы не меньше, чем вероятность передачи сбойного блока... Т.е., для проверки качества скачивания файла его необходимо скачать, как минимум, ещё один раз, причём никаких гарантий, что он скачался более правильно, нежели в предыдущий раз - ровно никаких. Если же качать возможно только по локалке - лучше всего (при наличии сбоев) скачивать нарезку мелкими кусками с наличием контрольных сумм на каджый кусок и перекачивать каждый сбойный кусок заново. P.S. Тема переименована. |
Согласен с Borland. Но имхо, поднимать p2p в локальной сети удобнее централизованно, трекер ставить на сервер локалки. На уровне разовых закачек комп-комп может стоит поднять на одной машине http-сервер, на базе того же самого апача, а сливать через какой нибудь download-клиент, который показал неплохие результаты в инете. Именно в нете, там, где связь зачастую хуже (увы, российские реалии) чем в пределах локальной сети?.В данном случае мне кажется будет оптимальным соотношение простота/надежность. ИМХО.
|
Я для этого использую бесплатную качалку для LAN
http://www.kilievich.com/rus/dplus/index.htm |
| Часовой пояс GMT +4, время: 19:04. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.