- Хаб (Direct Connect)
-
Direct Connect — это децентрализованная файлообменная (P2P) сеть, в основе работы которой лежит проприетарный протокол, разработанный фирмой NeoModus.
Содержание
История
NeoModus была основана Джонатаном Хессом (Jonathan Hess) в ноябре 1999 года как компания, зарабатывавшая на многодокументным (MDI), и появилась возможность использовать плагины для файлообменных протоколов (как в DC++ и др.
Клиенты
Оригинальный клиент назывался NeoModus Direct Connect (сокращённо NMDC). В настоящее время подавляющее большинство пользователей сети пользуется многочисленными клиентами на базе клиента DC++, являющегося продолжателем NMDC версии 1.0.
Название Описание OS Читы Поддержка клиентских скриптов Исходные коды Версия Сайт NeoModus Direct Connect (он же NMDC) Первый клиент DC. Использовал баннеры. Windows нет Нет Нет DC++ «отец» всех DC-клиентов Windows нет Да 0.75 — 6 марта 2009 ApexDC++ (ранее назывался PeerWeb DC++) — модификация StrongDC++, отличается изменённым интерфейсом, набором смайликов. Windows нет Да 1.2.0 — 11 апреля 2009 http://www.apexdc.net/ StrongDC++ наиболее популярный в России и динамично развивающийся из всех модов. Поддерживает многопотоковое скачивание, смайлики и множество полезных дополнительных настроек. Его (модификацию) используют на большинстве русских хабов. нет Да 2.22 - 12.2.2009 http://strongdc.sourceforge.net/ ApexDC++ speed mod модификация ApexDC++, позволяющая устанавливать лимит скорости скачивания для любого пользователя, банить пользователей, игнорировать личные сообщения, автоматически выпрашивать слоты, есть функция автобана по размеру расшаренных данных и количеству открытых на отдачу слотов ниже заданного минимума и т. д. В настоящий момент разработка замедлилась, последняя версия (устойчивая к эксплоиту-падению клиента и с отключенной проверкой версии апекса на сайте) — S16.4 от 12.06.2008. Многие наработки клиента были взяты за основу разработчиками GreyLink и FlyLink. Да s16.4 - 2008-06-12 http://sourceforge.net/projects/apexdcspeedmod/ AvaLinkDC++ модификация ApexDC++ speed mod, содержащая также ряд отсутствующих в других клиентах возможностей. По функциональности сравнима с PeLinkDC++. Клиент создан для хаба локальной сети avangard-dsl. Windows да Нет http://www.avangard-hub.ru/AvaLink.html GreyLinkDC++ клиент на базе ApexDC++ speed mod, содержащий как ряд отсутствующих в других клиентах возможностей (например, поддержка частичных списков файлов, анимированные смайлы), так и множество читов (fake share, ограничения скорости, симуляция других клиентов и т. п.). Запрещён к использованию на многих хабах. Из-за введения новой функции, эксплуатирующей баг в большинстве клиентов, приводящий к вылету программы, сайт программы временно закрыт, а разработчики ушли в подполье. Нарушая лицензию GPL, распространяется без исходных текстов. да Нет http://home.tula.net/greylink_dc/ PeLinkDC++ аналог GreyLinkDC++. Также распространяется без исходных кодов. да Нет http://pepelink.narod.ru/ LinkDC++ аналог GreyLinkDC++ для работы в сети oln. Также распространяется без исходных кодов. да Нет RayLinkDC++ аналог GreyLinkDC++. Распространяется без исходных кодов. да Нет FlyLinkDC++ (ранее DomolinkDC++) — основан на ApexDC++ speed mod, специализируется на работе в ADSL и LAN сетях. Windows Да r384 - май 2009 http://www.flylinkdc.ru/ RevConnect мод DC++, главным отличием является возможность многопоточного скачивания файлов с пользователей, что позволяет увеличить скорость в несколько раз. Использует свою модификацию сетевого протокола Windows Да 0.674p - 2006-09-17 http://www.revconnect.com/ BCDC++ один из самых старых модов, поддержка ограничений скорости, поддержка клиентских скриптов на языке Да, Да 0.750b http://utrum.dyndns.org:8000/ DCDM++ клиент на базе BCDC++, одна из основных функций которого — облегчить работу операторам хаба. Умеет выявлять нарушителей, использующих запрещённые типы клиентов. LinuxDC++ клиент для OC GNU/Linux. Да 1.0.3 - 2 февраля 2009 https://launchpad.net/linuxdcpp (ранее DCGUI, и dcgui-qt) открытый кросс-платформенный клиент на базе библиотеки Linux/MacOSX/Windows/OS/2 Да 0.3.23 (Qt3), 0.4.9 (Qt4) - февраль, 2009 wxdcgui.sourceforge.net MediaDC.Net++ Альтернативный клиент, НЕ клон DC++, из основных преимуществ — быстрый просмотр музыки/фильмов без скачки. http://mdc.505.ru/ Плагин DC++ в клиент для Windows/Unix/MacOSX/Solaris/MLDonkey Windows/Unix/MacOSX/Solaris/Да http://mldonkey.sourceforge.net/MLdonkeyPlugin directKonnect клиент для OC GNU/Linux, основан на Да 0.1.1 - 2008-12-21 http://sourceforge.net/projects/directkonnect/ MobileDC клиент DC для смартфонов на базе SymbianOS 7.0 UIQ SymbianOS http://mobiledc.sourceforge.net/ fulDC один из первых модов оригинального DC++. Разработка прекращена. Windows Да 6.78 - 2006-06-02 6.79 Beta 8 - 2007-04-01
http://www.fuldc.net/ DC-QT клиент для ОС MacOSX с раздельной архитектурой ядро-gui MacOSX Да 0.2.0-alpha - 2006-05-20 http://sourceforge.net/projects/dc-qt/ NanoDC DC-клиент с ncurse интерфейсом (Да alpha - 2007-09-19 http://sourceforge.net/projects/nanodc/ PHP DC++ написанный на AJAX DC-клиент Платформонезависимая Да http://sourceforge.net/projects/phpdccli/ AirDC++ реинкарнация клиента fulDC++ Windows Да 2.05 - 2009-01-18 http://sourceforge.net/projects/airdc/ QuantumDC DC-клиент с поддержкой протоколов NMDC, ADC и QSDC Windows Да 0.002 - 2008-04-21 http://sourceforge.net/projects/quantumdc/ SababaDC клиент, основанный на исходниках DC++, поддержка нескольких источников, интеграция с Windows Да s1.02 - 2007-11-03 http://sourceforge.net/projects/sababadc/ CuRZed DC++ клиент для Windows, lua/shell scripting), читов и спам-хаков Windows/да Да, http://sourceforge.net/projects/crzdc/ Shakespeer клиент для MacOSX, с поддержкой основных функций, разработка MacOSX Да http://code.google.com/p/shakespeer/ Хабы
Клиенты подключаются к одному или нескольким серверам, т. н. хабам для поиска файлов, которые обычно не связаны между собой (некоторые типы хабов можно частично или полностью связать в сеть, используя специализированные скрипты или программу Hub-Link) и служат для поиска файлов и источников для их скачивания. В качестве хаба чаще всего используются Verlihub, DB Hub.
Отличия от других P2P-систем
Отличия от некоторых P2P-систем, построенных на других протоколах (eDonkey, форка
- Развитый многопользовательский чат
- Сервер сети (хаб) может быть посвящён определённой теме (например музыке конкретного направления), что позволяет легко находить пользователей с требуемой тематикой файлов
- Присутствие привилегированных пользователей — операторов, обладающих расширенным набором возможностей управления хабом, в частности, следящих за соблюдением пользователями правил чата и файлообмена
- Просто зависящие от клиента
- Возможность скачивать целые директории
- Ограничения на минимальное количество расшаренного материала
- Поддержка скриптов с потенциально безграничными возможностями как на клиентской стороне, так и на стороне хаба (верно не для всяких хабов и клиентов)
- Возможность получить список файлов пользователя в виде древовидной структуры каталогов
Протокол ADC
Несмотря на все достоинства, протокол DirectConnect на практике имеет множество специфических проблем, в том числе мешающих эффективному файлообмену. Большое количество разработанных расширений протокола неспособно разрешить все недостатки Direct Connect. Разработчики клиента DC++ занимаются разработкой принципиально нового протокола, называемого Advanced Direct Connect (ADC), призванного повысить надёжность, эффективность и безопасность файлообменной сети и позволяющего также реализовывать принципиально новые расширения протокола. 2 декабря 2007 года вышла окончательная версия протокола ADC 1.0 [1]
В первую очередь он позволит:
- Разные шары на каждом хабе
- Реальная идентификация каждого пользователя
- Смена ника без переподсоединения
- Поиск напрямую между клиентами
- Большая вместимость Хаба (сейчас около 13000 пользователей на YnHub)
- Защищённая паролем передача(Tiger Hash)
Несмотря на выход в свет ADC 1.0, в этом протоколе остаётся много неясностей в реализации и потенциальных уязвимостей. Как правило они связаны с тем, что изначальный протокол DirectConnect не предполагал возможности отправки сообщения (или вообще какого-либо элемента протокола) ограниченной группе пользователей или одному пользователю, так как все сообщения посылались через сервер (главный чат и приваты). В ADC возможность посылать ограниченные сообщения есть, что приводит к появлению уязвимостей. Например — клиент может публично объявить, что находится в пассивном режиме, но при потребности скачать что-либо с другого пассивного пользователя тайно сообщить ему свой внешний IP-адрес и порт[2]. Также теоретически возможно посылать определённому клиенту приватное сообщение, которое будет проинтерпретировано как сообщение в общем чате и отображено соответствующим образом[3].
Примечания
Ссылки
- Описание протокола DC(англ.)
- Описание протокола ADC v1.0(англ.)
- Список российских DC++ хабов(рус.)
- Российское сообщество DC++(рус.)
- Русский форум DC++ на сайте Процентра(рус.)
- Direct Connect info(рус.)
- Adrium DC++ Forum(рус.)
- Российский форум DC++(рус.)
- DCzone(рус.)
Wikimedia Foundation. 2010.