В прошлом номере газеты мы уже печатали небольшой обзор всяческих файлообменных систем. И, как всегда бывает, за бортом осталось не меньше программ, чем было описано. Про одну из них я и решил написать, так сказать, вдогонку. Называется сие чудо eDonkey2000 (www.edonkey2000.com), то бишь, "электронный осел 2000", причем лозунг разработчиков звучит так: "Запрягите 2000 электронных ослов". Хмм, наверное, это они о пользователях.
Как и в любой файлообменной системе последнего поколения, в eDonkey учтены ошибки предшественников - Napster'а и прочих "гнутелл". Система децентрализована, однако не полностью, то есть имеется некоторое количество серверов, предназначенных для подключения пользователей. Подключившись к серверу, вы сообщаете ему информацию об имеющихся у вас файлах (точнее, той их части, которая предназначена для обмена). На сервере лежит список всего того, что есть у подключенных к нему пользователей. Кроме того, серверы периодически обмениваются друг с другом данными о себе, любимых, так что при подключении вы получаете адреса всех активных серверов, о которых известно вашему. В общем, серверы носят чисто информационно-посредническую функцию.
Теперь о файлах. Файлы лежат у пользователей edonkey, то бишь, у клиентов. Идентифицируется файл по уникальной контрольной сумме, так что все возможные проблемы с переименованием отпадают. Далее, сервер всегда знает, сколько подключенных пользователей имеют полную копию файла (параметр availability). Чем выше это число, тем выше шансы быстро и целиком скачать файл. Однако даже присутствие полной копии необязательно. Тут мы обратимся к особенностям обмена в eDonkey. Каждый файл условно разбивается на небольшие блоки. После того, как вы запросите нужный файл, сервер сообщает вам адреса пользователей, у которых он есть, после чего вы подключаетесь к каждому из них и узнаете (все это, естественно, автоматически), какие блоки у них в наличии. После чего "осел" (будем называть вещи своими именами) начинает тащить отсутствующие у вас блоки (в первую очередь, наиболее редко встречающиеся). Причем, запрашивает сразу всех доступных пользователей (если пользователь уже отдает файл кому-то другому, вы становитесь в очередь). В целом, получается многопоточная система закачки, причем если даже ни у одного из клиентов нет полной версии файла, но у всех вместе есть полный набор блоков - каждый сможет собрать полный файл.
Еще один плюс такой организации - каждый участник обмена одновременно скачивает файл и отдает его другим. Для борьбы с "пиявками" (то бишь, несознательными элементами, которые забирают файлы и ничего не отдают взамен) предусмотрено следующее: файл, который вы закачиваете, всегда доступен для скачивания (расшарен), а входящий трафик жестко связан с выходящим (отношение 4:1). В общем, по-моему, в eDonkey реализована самая грамотная на сегодня схема обмена. Да, чуть не забыл: поскольку eDonkey может тащить сразу несколько блоков из разных мест файла, то он сразу же при запуске файла на загрузку забивает под него место на диске. Так сказать, создает форму, а потом заполняет ее содержимым.
Следующий вопрос - что, собственно, можно найти в этой сети. В общем-то, все, что угодно. Книги, софт, фильмы, музыку. Однако ориентирован eDonkey больше всего именно на фильмы (да и вообще, его идеология направлена на работу с большими файлами). Понятно, что на dial-up'е кино особо не потягаешь. Но для счастливых обладателей выделенной линии или спутникового соединения вполне реально вытащить фильм за пару дней. Найти же нужный файл можно двумя способами - либо на одном из сайтов, где публикуются ссылки в формате eDonkey (скажем, www.sharereactor.com или www.nnm.ru), либо через внутренний поисковик (ищет файл на сервере, к которому вы подключены, и позволяет передать запрос на все известные серверы).
Теперь перейдем к техническим деталям. Клиент можно скачать по уже указанному адресу www.edonkey2000.com. В комплекте идет база данных серверов, но большинство из них уже умерло (в интернете вообще все течет и изменяется чрезвычайно быстро). Списки работающих серверов есть по адресам www.edonkey2000.com/servers.html и home.cogeco.ca/~omaurice/serverlist/serverlist.html. Подключаться имеет смысл к серверам, на которых больше всего пользователей, либо к серверам, на которых большая availability искомого файла. Далее, как я уже говорил, места на винчестере надо много, ибо осел забивает под файл сразу полный объем. Обязательно укажите в Options величины Max upload и Download speed с учетом ширины вашего канала. Там же поставьте параметр Max connections где-то порядка 200-300. Причем счастливым обладателям Windows 95/98 надо добавить в реестре string value под названием MaxConnections в разделе HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP\ и загнать туда величину на 50-100 больше, чем аналогичный параметр в "осле". Да, еще один момент, поскольку eDonkey использует нестандартные порты (4661 - 4664 для TCP/IP; 4665 - для TCP/IP и UDP), то он не очень дружит с файерволлами и прокси. По возможности, эти порты надо открыть. А введя в окне состояния (внизу справа) команду g, можно получить такой важный параметр, как идентификатор клиента (Client ID). В идеале эта цифра должна быть семизначной или больше (в скобках должно быть написано open). Если же цифра маленькая, а комментарий к ней - firewalled, значит, либо вы сидите за файерволлом, либо связь с сервером неустойчивая, и он считает, что вы таки сидите за файерволлом. Попробуйте выйти и подключиться заново. Вот, пожалуй, и все, а более подробную информацию по eDonkey можно найти на все том же www.nnm.ru в разделе moviez. Да и вообще, NoNaMe - очень правильный сайт.
Константин АФАНАСЬЕВ
Горячие темы