Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

Объединение браузеров в непотопляемый трекер. P2P браузер


веб на новый лад / Программное обеспечение

О том, что команда программистов BitTorrent трудится над созданием собственного P2P-браузера, стало известно еще в декабре минувшего года. Проект, получивший название Maelstrom, впитал в себя многолетний опыт компании в области пиринговых коммуникаций, подразумевающих размещение данных не на отдельных серверах, а в виде копий на миллионах компьютеров обычных пользователей. По мнению разработчиков, именно такой подход к организации распределенных информационных систем способен сохранить Всемирную паутину открытой, стать эффективным средством борьбы с цензурой в Интернете и существенно повысить надежность функционирования Сети при воздействии внешних факторов, например DDoS-атак. Плюсы очевидны, но так ли все замечательно в действительности? Для ответа на этот вопрос мы зашли на сайт проекта project-maelstrom.bittorrent.com и скачали бета-версию нового веб-обозревателя, доступного пока только для платформы Windows.

Что представляет собой Project Maelstrom? По сути — это всем известный Chromium сильно устаревшей и уже успевшей обрасти «дырами» 37-й версии c прикрученным к браузеру торрент-клиентом, скрывающимся в системе под именем chrome.native.torrent.exe. Именно он отвечает за обмен веб-контентом посредством протокола BitTorrent и сборку сайтов по кусочкам, запрашиваемым у других пользователей Project Maelstrom. Процесс этот, увы, небыстрый, и для скрашивания ожидания он сопровождается демонстрирующей поиск торрентов анимационной заставкой.

При первой загрузке Project Maelstrom отображает стартовую страницу со счетчиком участвующих в ее раздаче пользователей и набором ссылок на представленные в P2P-окружении ресурсы. URL последних имеют формат широко используемых для адресации в пиринговых сетях magnet-ссылок, которые при открытии сайтов трансформируются в вид bittorrent://хеш/путь.

Естественно, Project Maelstrom понимает и стандартные URL-адреса. В этом случае протокол BitTorrent не используется и все данные загружаются с веб-серверов.

Но вернемся к нативному, то есть «торрентоподобному», контенту для Project Maelstrom. Будучи рассеянным по множеству компьютеров в Сети, он лишен самого главного — интерактивной составляющей, которую при всем желании не так-то просто перенести в децентрализованное окружение. Иными словами, он статичен, так как быстро внести изменения в код хостящихся в распределенной среде сайтов не представляется возможным. В этом и заключается главный нюанс проекта Maelstrom, о котором скромно умалчивают его разработчики. Отсутствие возможности модификации веб-кода на лету и оперативного обмена данными между сайтом и конечным пользователем сводит на нет все перечисленные выше преимущества нового детища BitTorrent. И никакими рекламирующими проект громкими фразами вроде The future of the web is here («Будущее веба здесь») тут не поможешь. Это не будущее — это возврат в эпоху становления Всемирной сети, пусть и с применением перспективных технологий передачи данных.

Второй отличительной особенностью Project Maelstrom на данном этапе развития проекта является сложность публикации контента в распределенной сети. Чтобы выполнить эту задачу и сделать свой сайт доступным по ссылке для просмотра всем желающим, надо быть не робкого десятка. Первым делом нужно воспользоваться набором инструментов torrent-web-tools и написанным на языке Python скриптом generator.py, который предназначен для обработки статичных веб-страниц и создания torrent-файла с magnet-ссылкой.

Затем необходимо при помощи uTorrent или BitTorrent и сформированного торрент-файла организовать раздачу контента, а потом, спустя энное количество времени, дождаться, когда участвовать в обмене данными будут хотя бы несколько человек. Только после этого можно рассчитывать на появление сайта в сети Project Maelstrom. Ни о каком мгновенном переносе веб-площадок в децентрализованную среду в данном случае говорить не приходится, как, впрочем, и об удобстве пользования включенными в состав torrent-web-tools средствами публикации. Неудивительно, что в отображаемом при старте браузера каталоге P2P-ресурсов представлено мало сайтов, которые к тому же на поверку нередко оказываются неработоспособными.

Будучи привязанным к протоколу BitTorrent, браузер Project Maelstrom очень охоч до сетевых ресурсов. Владельцам компьютеров с лимитированным интернет-трафиком об этом нужно помнить и регулярно в диспетчере задач Windows «прибивать» процесс chrome.native.torrent.exe. Почему так сложно? Да потому, что загружаемый вместе с веб-обозревателем торрент-клиент не останавливается автоматически и продолжает функционировать даже после закрытия браузера, тихой сапой раздавая налево и направо гигабайты трафика. В прожорливости упомянутого процесса можно убедиться, заглянув в монитор ресурсов Windows, на вкладку с сетевой активностью работающих в системе приложений. На приведенном ниже скриншоте можно увидеть, с какой легкостью вычисляются IP-адреса участвующих в обмене данными пользователей. Никакой анонимности Project Maelstrom, в отличие от родственного проекта Freenet, не обеспечивает. А это еще один камень, точнее валун, в сторону новоявленной разработки BitTorrent.

Отчасти сократить аппетиты Project Maelstrom можно, открыв настройки встроенного торрент-клиента. В них предоставляется возможность управлять размером кеша, активностью раздачи файлов, скоростью и лимитом обмена данными, конфигурацией прокси-сервера, используемыми для соединения портами и прочими настройками. Во избежание чрезмерного расхода трафика рекомендуется сразу после установки Project Maelstrom проследовать в настройки программы и выставить параметры, исходя из скорости, доступных объемов передачи данных и прочих характеристик используемого интернет-соединения.

Что еще? Еще оставляет желать лучшего стабильность работы Project Maelstrom. Если скормить браузеру magnet-ссылку на несуществующий сайт, то веб-обозреватель будет бесконечно долго пытаться открыть ресурс, интенсивно используя при этом вычислительные ресурсы компьютера. В итоге система начинает вести себя неадекватно и «тормозить», в результате чего приходиться принудительно закрывать браузер и выгружать его из памяти ПК. Технологическая недоработка? Возможно. Но именно она вкупе с перечисленными выше недостатками Project Maelstrom заставляет усомниться в светлом будущем пока что откровенно сырого проекта.

В начале 2000-х годов Брэму Коэну, создателю пирингового протокола BitTorrent для обмена файлами в глобальной сети и основателю одноименной компании, удалось совершить переворот в IT-индустрии и видоизменить облик Интернета. С новым начинанием Project Maelstrom повторить былые достижения вряд ли удастся — уж слишком много спорных моментов в проекте. На одной чаше весов — интересная идея, возможность избавить Веб от привязки к серверам и сделать представленную в нем информацию доступной каждому. На другой — посредственная реализация, мудреная система URL-адресации, поддержка только статичных сайтов, отсутствие удобных средств публикации контента, высокая нагрузка на интернет-канал и прочие недоработки вроде «дырявого» и уязвимого для хакерских атак Chromium 37. Минусов больше, чем плюсов. Остается надеяться, что к финальному релизу продукт лишится хотя бы части перечисленных недоработок. Пока же Project Maelstrom — не более чем экспериментальный проект, и говорить о его практической применимости не приходится.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

3dnews.ru

Как BitTorrent браузер строила, или Прелести и гадости чистого P2P

Имя компании BitTorrent Inc. — той самой, что совершила революцию в файлообмене, разработав одноимённый протокол для передачи файлов — снова у всех на устах: объявлено о начале закрытого альфа-тестирования продукта под названием Project Maelstrom. Чем бы новинка ни оказалась, можно быть уверенным, что авторитет создателя обеспечит ей по крайней мере хороший старт. Однако в данном случае речь и в самом деле идёт о штуке оригинальной, если не уникальной. Да, BitTorrent снова собирается перевернуть компьютерный мир вверх тормашками, а точнее — переставить Веб на новые рельсы: децентрализованные.

Как работает Веб сегодня? Введя адрес сайта, пользователь заставляет браузер обратиться к серверу, на котором хранятся файлы, этот сайт составляющие. Такая схема имеет явно выделенный центр, вокруг которого всё крутится — а это далеко не всегда хорошо: например, если пользователей станет слишком много, сервер окажется перегружен запросами и откажется отвечать.

Можно ли обойтись без центрального узла? По крайней мере для обмена файлами — можно, и именно так работает протокол BitTorrent. Здесь файл собирается из кусков, которые скачиваются не только с сервера, но и с компьютеров других участников обмена (участники по-английски именуются «пирами», отсюда P2P — peer-to-peer). Так нельзя ли и Веб сделать децентрализованной? В BitTorrent Inc. считают, что можно: встречайте Maelstrom!

Официальных деталей пока крайне мало, но в их числе вот этот скриншот браузера, поддерживающего Maelstrom. Надпись гласит: «Эта страничка не размещена ни на каком сервере, её удерживают на плаву 397 человек и вы».Официальных деталей пока крайне мало, но в их числе вот этот скриншот браузера, поддерживающего Maelstrom. Надпись гласит: «Эта страничка не размещена ни на каком сервере, её удерживают на плаву 397 человек и вы».

Строго говоря, Maelstrom — это не программа, а набор правил (или протокол) для публикации веб-сайта в виде торрента. Когда протокол будет разработан, его поддержку (например, с помощью плагинов) можно будет добавить в браузеры и другие программы. Рядовой пользователь браузера, поддерживающего Maelstrom, разницы не заметит: он так же будет вводить URL в адресную строку и получать требуемое на экране. Разница обнаружится, если копнуть глубже: браузер (сейчас в BitTorrent экспериментируют с Chromium) теперь собирает веб-сайт по кусочкам, запрашиваемым не только у сервера, но и других сетян. Скачивает его, словно «торрент».

Понятное дело, тут возникает множество нюансов, которые необходимо проработать (например, как быстро внести изменения в код такого сайта?). Поэтому Maelstrom пока и находится в закрытом тестировании. Заявку на участие можно подать, но нет гарантий, что вас пригласят.

Однако существует замена, позволяющая начать экспериментировать с децентрализованной Веб прямо сейчас. Причём замена давно отлаженная, отшлифованная и универсальная. Короче говоря, то, чем Maelstrom однажды должен будет стать. Я говорю о Freenet: одном из старейших, интереснейших и самых успешных P2P-проектов. Едва ли многие из вас захотят продолжить работать с ним после первого знакомства, зато именно на его примере можно в полной степени оценить все прелести и гадости «чистого P2P». Потратьте полчаса на установку и изучение этой программы (она свободная, есть версии для всех популярных операционок), вы не пожалеете.

Кстати, сравнивая Freenet с другими инструментами анонимизации, стоит помнить, что этот проект вырос из дипломной работы ирландского студента Яна Кларка (на фото). АНБ и ЦРУ его не спонсировали и вообще отношения к проекту не имеют.Кстати, сравнивая Freenet с другими инструментами анонимизации, стоит помнить, что этот проект вырос из дипломной работы ирландского студента Яна Кларка (на фото). АНБ и ЦРУ его не спонсировали и вообще отношения к проекту не имеют.

Freenet — это децентрализация, возведенная в ранг догмы. Здесь все участники равны и равенство абсолютное, распространяющееся как на права, так и на обязанности. Каждый компьютер, на котором запущено программное обеспечение Freenet, становится клиентом и сервером одновременно. Компьютеры участников обязательно хранят какие-то данные, необходимые для функционирования всей сети — и каждый участник сети вправе что-нибудь опубликовать, то есть получить место на чужих дисках.

Документ, «заливаемый» во Freenet, не хранится на каком-то одном компьютере, а разбивается на тысячи небольших кусков, которые рассеиваются по жёстким дискам участников, редуплицируясь до такой степени, что отключение нескольких узлов не влияет на его сохранность. По той же причине ни один из участников не знает, что именно хранится на его собственном диске (куски, кроме прочего, шифруются). Чтобы скачать документ, нужно знать его «адрес» (ключ): если ключ дан, Freenet сама опрашивает узлы и собирает файл для пользователя. А уж что именно вы запросили, не имеет значения: это может быть текст, видеоролик, веб-сайт.

Прелести такой схемы не всегда очевидны, но всегда ценные. Возьмите хоть абсолютную анонимность: наблюдая за вашим компьютером со стороны, невозможно понять, какой контент вы скачивали, какой размещали, какой храните у себя. Отсюда — сетевая нейтральность, о которой сейчас так беспокоятся в развитых странах: во Freenet она соблюдается автоматически! Подумайте, ведь ни затормозить получение какого-то файла, ни ускорить этот процесс, отдельно взятый провайдер на сможет, потому что не знает, что именно вы в данный момент скачиваете.

Отсюда же — достоинство номер три: цензура здесь невозможна по определению. Нельзя уничтожить сервер с неугодным контентом, потому что и сервера как такового не существует: придётся уничтожать всю сеть! Размещай создатели Silk Road свои магазины во Freenet, они и сегодня гуляли бы на свободе. А The Pirate Bay продолжал бы работать.

Наконец, парадоксальный четвертый плюс состоит в необыкновенной реакции Freenet на нагрузку. Чем больше спрос на конкретный документ, тем легче и быстрее его можно получить: ведь он словно впитывается в сеть, оседает на большем количестве узлов. И, кстати, тем дольше он хранится (срок хранения файлов во Freenet не бесконечный; те, которые никому не нужны, со временем удаляются).

Ко всему прочему, маршруты следования запросов и ответов во Freenet специально усложнены. Их анализ не должен позволить выявить, кто, куда и за чем обращается.Ко всему прочему, маршруты следования запросов и ответов во Freenet специально усложнены. Их анализ не должен позволить выявить, кто, куда и за чем обращается.

Однако есть и минусы, увы — и вы быстро их обнаружите. Прежде всего это сравнительно низкая скорость передачи данных и сравнительно высокая нагрузка на интернет-канал. Сборка документов из кусков, естественно, требует совершения некоторой промежуточной работы и затрат времени. Популярные Freenet-сайты, впрочем, отображаются быстро, почти так же быстро, как и сайты обычной Веб. Но сборки менее популярных приходится порой ждать минутами, а редко скачиваемые крупные файлы (сотни мегабайт) могут потребовать нескольких суток. И кстати, сайты здесь статичны: интерактивность не так-то просто переставить на децентрализованные рельсы.

Потом, абсолютная свобода — отнюдь не всегда хорошо. Freenet задумывалась и развивается как инструмент, способный обеспечить маниакально высокую степень анонимности. К сожалению, вместе с диссидентами, например, это оценили и всевозможные мошенники, злоумышленники, извращенцы. Отправляясь во Freenet, стоит понимать, что значительная часть хранящегося в ней контента незаконна, а вероятность наткнуться на подобные материалы здесь куда выше, чем в обыкновенной Веб. Да, тут масса интересного и полезного, но буквально бок о бок с ним лежит детская порнография, высококачественные сканы банкнот, пособия для начинающих террористов…

Что ж, Freenet всегда был научным проектом, излишняя сложность которого и тяга к экспериментальной чистоте отпугивали простых пользователей. Новое детище BitTorrent может оказаться более практичным и простым — и совершить долгожданную революцию, избавив Веб от болезни централизации. Не стоит лишь забывать уроки Freenet: разработчикам и пользователям Maelstrom предстоит столкнуться с теми же болячками. Ребятам из BitTorrent не привыкать к косым взглядам: ведь и сами «торренты» долгое время считались «пиратским» инструментом. Вопрос в том, насколько в данном конкретном случае можно быть уверенным, что полезные качества децентрализации перевесят вредные побочные эффекты.

Для Freenet, за все пятнадцать лет её существования, такой уверенности не появилось.

www.computerra.ru

Обзор P2P-браузера Project Maelstrom

maelstrom-bittorrentBitTorrent совершила революцию в файлообмене, после чего загорелась идеей переноса собственных технологий в веб-окружение, а также децентрализации ресурсов интернета. В результате экспериментов, проведенных американской компанией, появился новый веб-обозреватель, который реализует такие же принципы работы, как и современные торрент-клиенты.

В декабре прошлого года стало известно, что команда программистов BitTorrent начала трудиться над созданием своего P2P-браузера. Проект получил название Maelstrom. Он вместил в себя многолетний опыт компании, работающей в области пиринговых коммуникаций, которые предусматривали размещение данных в форме копий на миллионах компьютерах обыкновенных пользователей, а не на отдельных серверах. Как утверждают сами разработчики, данный подход к формированию распределенных информационных систем может сохранить интернет открытым, стать надежным средством борьбы с цензурой в Глобальной сети, а также значительно повысить эффективность работы Сети под влиянием внешних факторов. К примеру, DDoS-атак. Преимущества этого очевидны, однако так ли все прекрасно на самом деле? Чтобы ответить на этот вопрос, можно посетить сайт проекта project-maelstrom.bittorrent.com и скачть бета-версию нового интернет-обозревателя, который пока доступен только для платформы Windows.

Что представляет собой Project Maelstrom?

Стоит отметить, что популярный Chromium достаточно устарел и уже успел обрасти «дырами» 37-й версии, у которой прикручен к браузеру торрент-клиент, скрывающийся в системе под названием chrome.native.torrent.exe. Он ответственен за обмен веб-контента при использовании протокола BitTorrent, а также сборку сайтов по кусочкам. Он запрашивается у других пользователей Project Maelstrom. Правда, данный процесс достаточно длительный. Таким образом, с целью скрашивания ожидания он сопровождается анимационной заставкой, отображающей поиск торрентов.Запуск браузера

С первой загрузкой Project Maelstrom показывает стартовую страницу, имеющую счетчик пользователей, принимающих участие в ее раздаче, а также набор ссылок на представленные в P2P-окружении ресурсы. Что касается URL последних, они имеют формат, который широко используется с целью адресации в пиринговых сетях magnet-ссылок. Они способны трансформироваться в вид bittorrent://хеш/путь при открытии сайтов. Конечно, Project Maelstrom распознает и стандартные URL-адреса. В данном случае протокол BitTorrent не применяется, а все данные загружаются с интернет-серверов.Контент

Если рассматривать контент для Project Maelstrom, стоит отметить, что он лишен главного — интерактивной составляющей. Ее не так уж и легко перенести в децентрализованное окружение, даже если захотеть. Другими словами, быстро внести определенные изменения в код сайтов, хостящихся в распределенной среде, невозможно. Именно в этом и состоит основная суть проекта Maelstrom. Правда, его разработчики решили скрыть данную особенность. Все преимущества нового продукта BitTorrent, которые перечислены выше, в результате сводятся на нет в связи с отсутствием возможности изменения веб-кода на лету и быстрого обмена данными между конечным пользователем и ресурсом. В данном случае не помогут даже громкие фразы, которые делают рекламу проекту.

К еще одной отличительной особенности Project Maelstrom можно отнести сложности оформления контента в распределенной сети. Для выполнения такой задачи и создания собственного сайта, который будет доступен по ссылке для просмотра всем желающим, необходимо иметь определенный опыт. Сначала потребуется использовать набор инструментов torrent-web-tools и скрипт generator.py, написанный на языке Python. Он нужен для обработки статичных интернет-страниц и создания torrent-файла с magnet-ссылкой. Далее следует с помощью uTorrent или BitTorrent, а также сформированного торрент-файла сформировать раздачу контента. Потом стоит подождать определенное время, пока участие в обмене данными не будут принимать хотя бы несколько человек. Только тогда можно рассчитывать на появление ресурса в сети Project Maelstrom.

Что касается мгновенного переноса веб-площадок в децентрализованную среду, об этом говорить не приходится. Таким образом, нет ничего удивительного, что в каталоге P2P-ресурсов, который отображается при запуске браузера, представлено небольшое количество сайтов. Мало того, зачастую на поверку они оказываются неработоспособными.

Еще несколько особенностей

Браузер Project Maelstrom очень привязан к протоколу BitTorrent, поэтому он охоч до сетевых ресурсов. Пользователи, которые являются владельцами компьютеров с лимитированным интернет-трафиком, следует знать об этом. Им потребуется регулярно «прибивать» процесс chrome.native.torrent.exe, что осуществляется в диспетчере задач операционной системы Windows. Ведь загружаемый вместе с интернет-обозревателем торрент-клиент не останавливается самостоятельно и продолжает свою работу даже после закрытия браузера. В результате происходит раздача гигабайтов трафика. Чтобы убедиться в прожорливости данного процесса, достаточно можно заглянуть в монитор ресурсов Windows, а именно, на вкладку с сетевой активностью приложений, функционирующих в системе.

Стоит отметить, что уменьшить аппетиты Project Maelstrom можно. Для этого понадобится открыть настройки встроенного торрент-клиента. Здесь предлагаются следующие возможности управления:• размером кеша;• активностью раздачи файлов;• скоростью и лимитом обмена информацией;• конфигурацией прокси-сервера, который используется для соединения портами и другими настройками.

Чтобы избежать лишнего расхода трафика, желательно сразу после установки Project Maelstrom перейти в настройки программы и установить параметры, учитывая скорость, доступные объемы передачи данных и другие характеристики задействованного интернет-соединения.

Работу Project Maelstrom трудно назвать стабильной, так как она оставляет желать лучшего. При введении в браузер magnet-ссылки на несуществующий сайт веб-обозреватель долго пытается открыть его. При этом используются вычислительные ресурсы компьютера. Как результат, система ведет себя не совсем неадекватно и «тормозит». Таким образом, приходится принудительно закрывать браузер и осуществлять выгрузку его из памяти компьютера.

Если в начале 2000-х годов Брэм Коэн, который является создателем пирингового протокола BitTorrent и основателем одноименной компании, смог совершить переворот в IT-индустрии, изменив облик интернета, то с новым начинанием Project Maelstrom такие достижения вряд ли получатся. В представленном проекте очень много недочетов и сомнительных моментов. Проанализировав информацию, представленную выше, нетрудно догадаться, что недостатков больше, чем преимуществ. Остается только надеяться, что к последнему релизу продукт будет избавлен от основных недоработок. На сегодняшний день Project Maelstrom представляет собой лишь экспериментальный проект.

bezwindowsa.ru

Объединение браузеров в непотопляемый трекер / Хабр

vseisk-p2p Одноранговые сети стали мощнейшей силой в современном интернете. Клиентские программы p2p-сетей объединяют компьютеры в гигантские сетевые «организмы», причем создают, поддерживают и контролируют эти сети сами конечные пользователи. Сегодня на каждом компьютере практически всегда открыт браузер. Объединяя браузеры в p2p-сеть получаем распределенную систему, которая всегда под рукой и которая может быть полезна для решения многих насущных задач.

Недавно я рассказывал о расширении Firefox, которое объединяет браузеры в p2p-поисковую сеть Всеиск. Теперь эта сеть освоила дополнительные функции: публикация/поиск торрентов и трекер для BitTorrent. Прежде чем перейти к подробному описанию, я в двух словах поясню постановку задачи.

Важнейшими узлами p2p-сети BitTorrent являются торрент-сайты. Через них пользователи находят раздачи, через них осуществляется координация текущих раздач. Однако торрент-сайты оказываются не только важнейшими, но и самыми слабыми точками BitTorrent. Уязвимость заключается прежде всего в том, что соответствующий сервер можно заблокировать, запретить, отобрать и т.п.

Если распределить диспетчерские функции по принципу p2p-сети, то это разом сделает координационный сервис неподвластным ни техническим, ни административным угрозам. Я решил сделать p2p-сервис, который будет реализовывать обычные функции торрент-сайта (поиск торрентов и диспетчер раздач), причем, при взаимодействии с клиентской программой, сервис будет выглядеть как обыкновенный трекер.

В этой статье я сначала коротко расскажу уважаемому собранию как все это работает технически, затем более развернуто покажу на картинках как пользоваться сервисом.

Как это устроено
раздел технический, можно пропустить В случае классического торрент-трекера раздача организовывается следующим образом: при создании торрент-файла в него добавляется один или несколько URL-адресов трекеров. Например пусть это будет адрес http ://mytracker.com/announce. Затем пользователь получает торрент-файл и открывает его в клиентской программе, которая обращается по указанному адресу 'http ://mytracker.com/announce' чтобы объявить об участии в раздаче и получить от трекера список других участников.

В отличие от классического варианта, в моем решении клиентская программа обращается не к централизованному трекеру, а к локальному узлу сети Всеиск. Для этого при создании торрент-файла в него добавляется URL http ://localhost:7583/anns. Для BitTorrent-клиента все выглядит как в классическом случае — есть URL с которым ведется диалог по стандартному протоколу, просто обращение к трекеру направляется на локальный порт 7583. Этот порт слушает расширение Всеиск.

Далее происходит следующее: 1) BitTorrent-клиент послал запрос на порт 7583 2) узел Всеиск получил запрос и нашел в p2p сети узел(группу узлов) ответственных за конкретную раздачу 3) узел Всеиск запросил у ответственного узла список участников раздачи 4) узел Всеиск вернул BitTorrent-клиенту список участников раздачи

В результате клиентская программа получила необходимую информацию не с конкретного сайта, а из p2p сети. Получается распределенный p2p-трекер, который работает с любыми клиентскими программами.

vseisk-schema

Сразу нужно пояснить, что сейчас есть немало распределенных трекеров. По сути если вы встречаете аббревиатуру DHT в контексте какой-то клиентской BitTorrent-программы или когда говорят о «безтрекерной раздаче», то речь идет в том числе и о распределенном трекере. Однако существующие трекеры являются внутренними модулями каждой клиентской программы по отдельности, а значит в общем случае не работают для любых клиентских программ, а только для конкретной программы. Предложенное мной решение никак не зависит от клиентской программы, так что позволяет координировать раздачи между любыми клиентами глобально.

Следующий важный момент: другие распределенные решения реализуют только функцию диспетчера, поиска по названию там нет. В большинстве клиентов возможность поиска сводится к обращению на внешние поисковые сайты. В предлагаемом решении поиск торрента производится в той же самой p2p сети Всеиск, при этом опубликование торрент-файла сводится к копированию файла в выбранную пользователем папку.

Таким образом, построенная система фактически работает как стандартный торрент-сайт (поиск+трекер), но при этом лишена некоторых недостатков таких сайтов, например, распределенную p2p-систему невозможно закрыть/заблокировать/выключить. Никаких ограничений на публикуемые материалы нет, но будут предусмотрены меры по ограничению распространения криминальных материалов. В такой самоорганизующейся системе сами пользователи должны иметь возможность ограничивать распространение всякой гадости.

Как торренты попадают во Всеиск
Вариант первый: создаем торрент-файл самостоятельно Предположим пользователь снял небольшой фильм «Бодрость в зимний день» и решает поделиться соответствующим файлом со всеми желающими. Для этого нужно создать торрент файл с помощью любого BitTorent-клиента. На картинках видно как это сделать в клиентах uTorrent и Vuze. Обратите внимание на комментарий — это поле должно быть заполнено чтобы данный торрент-файл можно было найти во Всеиск по соответствующей фразе. Важно чтобы в этом поле было точное название произведения, без лишней информации. Порядок слов при этом не важен. Второй существенный момент — адрес трекера. Как видно этот адрес указывает на localhost, причем номер порта может быть и другим если вы изменили соответствующий параметр настройки расширения Всеиск (страница 'настройки').vseisk-create-torrent

Итак, создан торрент-файл для распределенного трекера, теперь можно опубликовать файл в сети Всеиск. Для этого пользователь просто помещает торрент-файл в специальную папку (настроить папку для публикации можно на странице 'настройки' в поле 'Папка с торрентами'). Далее уже само расширение Всеиск проанализирует и опубликует данные о торренте. На этом шаге другие пользователи уже могут найти и получить торрент-файл, теперь нужно начать раздачу с помощью BitTorrent-клиента. Для этого нужно просто открыть торрент-файл в клиентской программе и при этом указать место где находится исходный файл с фильмом.

Вариант второй: изменяем имеющийся торрент-файл Рассмотрим ситуацию, когда у нас уже есть торрент-файл, но он создан для работы с другим трекером. Копируем торрент-файл в упомянутую папку и открываем страницу 'торренты'.

vseisk-torrent-list

В общем списке торрентов сразу видны помеченные восклицательным знаком файлы, которые Всеиск не может принять. Если навести мышку на треугольный значок в начале строки, появится пояснение в чем проблема с этим файлом. Чтобы редактировать файл просто щелкаем на название и открываем форму редактирования.

vseisk-torrent-edit

Заполняем поле «Заголовок» и сохраняем файл. Теперь осталось только открыть его в клиентской программе.Замечание: торрент-файлы, помеченные как «частная раздача» редактировать нельзя, но можно сделать копию, добавив имя нового файла в поле «имя файла».

Вариант третий: раздача без публикации Если пользователь хочет раздавать файл только своим друзьям/знакомым и не публиковать данные о файле в поисковой сети, то достаточно просто не помещать торрент-файл в папку для публикации. В остальном раздача будет работать как обычно, даже если торрент файл не зарегистрирован. Конечно в таком варианте пользователь сам должен позаботиться о передаче торрент-файла получателям.

Поиск и получение торрент-файла
Чтобы начать поиск, выбираем тип поиска «торренты» и пишем запрос:vseisk-torrent-search

Получаем список доступных торрентов:

vseisk-torrent-found

Выбираем какой-то файл и начинаем получение. Теперь расширение попытается скачать торрент-файл у других пользователей.

vseisk-torrent-get

Когда торрент-файл получен и вы снова зайдете на страницу «торренты», файл появится в общем списке торрентов. Отсюда щелчком мыши можно открыть его в клиентской программе чтобы подключиться к раздаче.

vseisk-torrent-open
Настройки, ограничения
В настоящее время для работы с распределенным трекером необходимо открыть внешний доступ на порт расширения Всеиск. Это требование не столько техническое, сколько организационное. Мне кажется логичным если пользователь что-то хочет получить, то нужно что-то дать взамен. Если порт открыт, то другие узлы сети смогут обращаться напрямую друг к другу для сохранения информации и поиска. В этом случае нагрузка на сеть будет действительно равномерной. Если же открыты только некоторые узлы, то на них нагрузка будет, очевидно, больше.

Кроме этого соображения есть и техническая причина. К сожалению, пока Firefox не поддерживает UDP сокет, так что простые технологии прохода NAT применить не удается. А более сложные технологии для TCP просто недоступны на уровне сетевых функций высокого уровня, имеющихся в Firefox.

Конечно для многих пользователей это ограничение будет отпугивающим, и я сам не могу сказать что мне это решение очень нравится. Поэтому продолжу искать другие пути. Но пока — так.

Задать сетевой порт для расширения можно на странице «Настройки». Я не стану подробно рассказывать как открыть порт на машине для доступа извне, поскольку на эту тему написано много ( пример ), да и читатели этого сайта наверняка знают как это сделать.Пояснение: для того, чтобы пользоваться только поиском в интернете, открывать порт не обязательно, это ограничение касается только функции трекера.

Изменения, дополнения
Хочу поблагодарить участников обсуждения первой статьи за конструктивную критику и интересные идеи. Сразу же я сделал возможность добавлять ссылки во Всеиск не делая закладку (это было предложение от rednaxi), теперь на странице редактирования закладки есть соответствующая галочка. Начал вносить изменения для автоматического анализа открываемых страниц а также статистики посещения страниц с прицелом на (полу?)автоматическое добавление интересных страниц в сеть Всеиск.
Заключение
На первом этапе сеть Всеиск умела сохранять ссылки на страницы в интернете и искать эти ссылки по соответствующим ключевым словам. Теперь сеть освоила дополнительные функции: публикация/поиск торрентов и трекер сети BitTorrent. Фактически сеть Всеиск в этом случае выступает диспетчерским сервисом для другой p2p сети — BitTorrent.

Сейчас выпущена версия 0.8-бета. Скачать можно тут. Если вас заинтересовал этот проект, буду очень признателен читателям, которые попробуют пользоваться расширением и поделятся своими замечаниями, соображениями, найденными ошибками.

habrahabr.ru


Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..