Direct Connect: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Строка 3: | Строка 3: | ||
== История == |
== История == |
||
[[NeoModus]] была основана [[Джонатан Хесс|Джонатаном Хессом]] (Jonathan Hess) в ноябре 1999 г. как компания, зарабатывавшая на [[adware|adware-программе]] «Direct Connect». Первым сторонним клиентом стал «DClite», который никогда полностью не поддерживал протокол. Новая версия Direct Connect уже требовала простой ключ шифрования для инициализации подключения, этим он надеялся блокировать сторонние клиенты. Ключ был взломан и автор DClite выпустил новую версию своей |
[[NeoModus]] была основана [[Джонатан Хесс|Джонатаном Хессом]] (Jonathan Hess) в ноябре 1999 г. как компания, зарабатывавшая на [[adware|adware-программе]] «Direct Connect». Первым сторонним клиентом стал «DClite», который никогда полностью не поддерживал протокол. Новая версия Direct Connect уже требовала простой ключ шифрования для инициализации подключения, этим он надеялся блокировать сторонние клиенты. Ключ был взломан и автор DClite выпустил новую версию своей программы, совместимой с новым программным обеспечением от NeoModus. Вскоре, код DClite был переписан, и программа стала называться как Open Direct Connect. Кроме всего прочего, ее пользовательский интерфейс стал [[MDI|многодокументным]] (MDI), и появилсась возможность использовать плагины для файлообменных протоколов (как в [[MLDonkey]]). У Open Direct Connect также не было полной поддержкой протокола, но появился под Java. Немногим позже, начали появляться и другие клиенты: DCTC (Direct Connect Text Client), DC++ и др. |
||
== Клиенты == |
== Клиенты == |
Версия от 15:33, 10 июня 2008
Direct Connect — это децентрализованная файлообменная (P2P) сеть, в основе работы которой лежит проприетарный протокол, разработанный фирмой NeoModus.
История
NeoModus была основана Джонатаном Хессом (Jonathan Hess) в ноябре 1999 г. как компания, зарабатывавшая на adware-программе «Direct Connect». Первым сторонним клиентом стал «DClite», который никогда полностью не поддерживал протокол. Новая версия Direct Connect уже требовала простой ключ шифрования для инициализации подключения, этим он надеялся блокировать сторонние клиенты. Ключ был взломан и автор DClite выпустил новую версию своей программы, совместимой с новым программным обеспечением от NeoModus. Вскоре, код DClite был переписан, и программа стала называться как Open Direct Connect. Кроме всего прочего, ее пользовательский интерфейс стал многодокументным (MDI), и появилсась возможность использовать плагины для файлообменных протоколов (как в MLDonkey). У Open Direct Connect также не было полной поддержкой протокола, но появился под Java. Немногим позже, начали появляться и другие клиенты: DCTC (Direct Connect Text Client), DC++ и др.
Клиенты
Оригинальный клиент назывался NeoModus Direct Connect (сокращённо NMDC). В настоящее время подавляющее большинство пользователей сети пользуется многочисленными клиентами на базе клиента DC++, являющегося продолжателем NMDC версии 1.0.
NeoModus Direct Connect
NeoModus Direct Connect (сокр. NMDC) — оригинальный клиент протокола. Первая версия был написана на Visual Basic, выпущена в ноябре 1999 г. и запускалась только под управлением Windows. Вторая версия была написана на C++ и C# и поддерживала уже Mac OS X.
DC++
DC++ — альтернативная программа с открытыми исходными текстами, написанная на C++. Главным образом, предназначена для работы под управлением Windows, но существуют кроссплатформенные ответвления (такие, как LinuxDC++).
Хабы
Клиенты подключаются к одному или нескольким серверам, т. н. хабам для поиска файлов, которые обычно не связаны между собой (некоторые типы хабов можно частично или полностью связать в сеть, используя специализированные скрипты или программу Hub-Link) и служат для поиска файлов и источников для их скачивания. В качестве хаба чаще всего используются PtokaX, Verlihub, YnHub, Aquila, DB Hub.
Отличия от других P2P-систем
Отличия от некоторых P2P-систем, построенных на других протоколах (EDonkey, Gnutella и её форка Gnutella2):
- Обусловленные структурой сети
- Развитый многопользовательский чат
- Сервер сети (хаб) может быть посвящён определённой теме (например музыке конкретного направления), что позволяет легко находить пользователей с требуемой тематикой файлов
- Присутствие привилегированных пользователей — операторов, обладающих расширенным набором возможностей управления хабом, в частности, следящих за соблюдением пользователями правил чата и файлообмена
- Просто зависящие от клиента
- Возможность скачивать целые директории
- Ограничения на минимальное количество расшаренного материала
- Поддержка скриптов с потенциально безграничными возможностями как на клиентской стороне, так и на стороне хаба (верно не для всяких хабов и клиентов)
- Возможность получить список файлов пользователя в виде древовидной структуры каталогов
Протокол ADC
Несмотря на все достоинства, протокол DirectConnect на практике имеет множество специфических проблем, в том числе мешающих эффективному файлообмену. Большое количество разработанных расширений протокола неспособно разрешить все недостатки Direct Connect. Разработчики клиента DC++ занимаются разработкой принципиально нового протокола, называемого ADC, призванного повысить надёжность, эффективность и безопасность файлообменной сети и позволяющего также реализовывать принципиально новые расширения протокола. 2 декабря 2007 года вышла окончательная версия протокола ADC 1.0 [1]
В первую очередь он позволит:
- Разные шары на каждом хабе
- Реальная идентификация каждого пользователя
- Смена ника без переподсоединения
- Поиск напрямую между клиентами
- Большая вместимость Хаба (сейчас около 13000 пользователей на YnHub)
- Защищённая паролем передача(Tiger Hash)
Не смотря на выход в свет ADC 1.0, в этом протоколе остаётся много неясностей в реализации и потенциальных уязвимостей. Как правило они связаны с тем, что изначальный протокол DirectConnect не предполагал возможности отправки сообщения (или вообще какого-либо элемента протокола) ограниченной группе пользователей или одному пользователю, так как все сообщения посылались через сервер (главный чат и приваты). В ADC возможность посылать ограниченные сообщения есть, что приводит к появлению уязвимостей. Например — клиент может публично объявить, что находится в пассивном режиме, но при потребности скачать что-либо с другого пассивного пользователя тайно сообщить ему свой внешний IP-адрес и порт[2]. Также теоретически возможно посылать определённому клиенту приватное сообщение, которое будет проинтерпретировано как сообщение в общем чате и отображено соответствующим образом[3].
Клиенты
- DC++
- ApexDC++ (ранее назывался PeerWeb DC++) — модификация StrongDC++, отличается изменённым интерфейсом, набором смайликов.
- ApexDC++ speed mod — модификация ApexDC++, позволяющая устанавливать лимит скорости скачивания для любого пользователя, банить пользователей, игнорировать личные сообщения, выпрашивать слоты, автобанить по маленькой шаре и малому количеству слотов и т. д. В настоящий момент разработка замедлилась, последняя версия — S16.2 от 23.12.2007. Многие наработки переданы в greylink
- StrongDC++ — наиболее популярный в России и динамично развивающийся из всех модов. Поддерживает многопотоковое скачивание, смайлики и множество полезных дополнительных настроек. Её (модификацию) используют на большинстве русских хабов.
- GreyLinkDC++ — клиент на базе ApexDC++, содержащий как ряд отсутствующих в других клиентах возможностей (например, поддержка частичных списков файлов), так и множество читов и с анимационными смайлами (fake share, ограничения скорости, симуляция других клиентов и т. п.). Запрещён к использованию на многих хабах. В нарушение лицензии GPL распространяется без исходных текстов.
- PeLinkDC++ — аналог GreyLinkDC++ без читов. Также распространяется без исходных кодов.
- LinkDC++ — аналог GreyLinkDC++ без читов для работы в сет oln. Также распространяется без исходных кодов.
- FlyLinkDC++ — основан на ApexDC++ 0.4.0, специализируется на работе в ADSL и LAN сетях.
- RevConnect — мод DC++, главным отличаем является возможность многопоточного скачивания файлов с пользователей, что позволяет увеличить скорость в несколько раз. Использует свою модификацию сетевого протокола Kademlia.
- BDDC++ — один из самых старых модов, поддержка ограничений скорости, поддержка клиентских скриптов на языке lua.
- DCDM++ — клиент, одна из основных функций которого — облегчить работу операторам хаба. Умеет выявлять нарушителей, использующих запрещённые типы клиентов.
- fulDC — на втором месте по популярности[источник?] после оригинального dc++. Разрешён на большинстве хабов, так как не содержит слишком явных отличий в работе с протоколом.[4]
- LinuxDC++ — клиент для OC GNU/Linux.
- Valknut — клиент для OC GNU/Linux.
- directKonnect — клиент для OC GNU/Linux, основан на Qt3
Примечания
Ссылки
- Наиболее полное FAQ на английском
- Российский форум DC++
- Российское сообщество DC++
- Список российских DC++ хабов
- Русский форум DC++
- Direct Connect info (ru)
- Описание протокола DC v1.4.1 (en)
- Описание протокола ADC v0.12 (en)
Это заготовка статьи об информационных технологиях и вычислительной технике. Помогите Википедии, дополнив её. |