Зробимо бітторрент краще

Останнім часом серед користувачів файлообмінних мереж все частіше звучать заклики до переходу в підпростір: анонімні мережі типу i2p tor і т.п.

Несомненнно у цієї ідеї є маса позитивних сторін, однак, по суті це означає зламати усталені системи обміну трафіком, деякі з яких формувалися більше 10 років і почати будувати по-новому, нехай з урахуванням старих помилок, але і докласти зусиль і не наробити нових. На даний момент мережа бітторрент - це десятки, а напевно навіть сотні мільйонів усталених зв'язків "розірвавши" які вкрай складно буде відновити все в повному обсязі.

Давайте все ж подивимося на нашого дідуся, і поміркуємо, чи настільки все погано, і чи можна виправити ті недоліки, які у нього є.

Перша причина за яку зазвичай критикують бітторрент - це його централізованість у вигляді трекера, який, як правило і є вразливим місцем для нападок копірастов, ДДоСеров і влади всіх мастей. (Вибачте за каламбур).

Сюди ж можна приплюсувати наявність самого торрент-файлу, який є ініціатором роздачі, і який відповідальні особи часто плутають з самим вмістом роздачі, з усіма наслідками, що випливають звідси наслідками.

Однак бітторрент вже має рішення цих проблем, які ефективно працюють. Це DHT і peer-exchange як замінники трекерів, і операції з хеш-сумами - як замінники торрент- і магнет- посилань

Про DHT і PE я нижче зупинюся трохи докладніше, а поки поговоримо про хеш суми.
Насправді це основна і необхідна складова магнет -Посилання і її необхідно і практично ніколи не бракує для отримання описуваної їй роздачі.

(Поки що) законодавство не забороняє вважати хеш-суми і публікувати їх в інтернеті. Точно також як не забороняє вважати опричників в масовці або кількість кадрів в головній еротичній сцені фільму, які, до речі, завжди унікальні і можуть служити його однозначним ідентифікатором.

З точки зору вашого клієнта - йому майже без різниці, торрент ви йому підсунули, чи Magnet-посилання або хеш - суму. "Майже" - в тому випадку якщо він володіє початковим хмарою бенкетів, яке дозволить йому опитати їх на предмет наявності відповідного хеш-сумі контенту.

З цього випливають простий висновок - чим більше ви качаєте / роздаєте - тим більше ваше хмара бенкетів, і тим швидше ваш клієнт зможе по хеш сумі знайти ті бенкети, які віддадуть вам її вміст. Так що багато роздач в клієнті - це не тільки приємно, але ще й корисно.

Агенти можуть (насправді - повинні!) Навчиться розпізнавати хеш-суми, підсвічувати їх на зразок посилань, відкриваючи їх по кліку в бітторрент клієнта.

Ну і як модифікація технології - алгоритм, позволяюща робити довільну кількість цифрових "алиасов" хешу. Це помітно розважить копірастов і цензорів, багаторазово розширивши і ускладнивши обьем пошуку і контролю за поширенням хешів, в тому випадку, якщо полювання за ними розгорнеться в повному масштабі.

Останнє в цьому пункті - все вищенаписане повністю сумісний з тією технологією що ми маємо зараз, і є її розширенням або, що вірніше, логічним продовженням.


Друга біда файлообмінних систем, та й взагалі всього інтернету - це проблема збереження даних беруть участь в файлообмене. Файлообмінник може закрити ФБР або Роскомнадзор, дані при цьому безповоротно ізчезнут, з трекером може трапиться те ж саме, але дані при цьому залишаться, хоча і зруйнуються хмари роздач (розвіємо, хмари же!), А їх відновлення якщо і станеться, то з великими втратами .

Є ще один спосіб боротьби з файлообміном: як слід налякати користувачів. Тоді вони як зомбі стирають все зі своїх дисків і роблять телевізор голосніше.

Але все ж головна причина втрати інформації в пірінгових мережах - самі користувачі ... Вони просто йдуть з роздач, і роздачі таким "вмирають" (або видаляються з файлообмінників за непотрібністю). Якщо ви завантажили торрент, а на роздачі немає сідерів, максимум скільки ви прождет - місяць, іноді два. Потім ви припиніть чекати, значить роздача померла, і винен тут тільки людський фактор: один з останніх сідерів пролив на ноутбук кави, інший втопив переносний диск в унітазі. А третій одружився, і фільми Ларса Фон Трієра його більше не цікавлять.

Кількість загиблого з цієї причини контенту дуже велике, і значно перевищує всі зусилля копірастов на цьому терені. Можна звичайно сперечатися, що зникла інформація має набагато меншу цінність ніж та яка підтримується користувачами, і вже тим більше ніж та, яка закривається правовласниками, але суті справи це не змінює, по-перше, тому що поняття "цінності" інформації - відносне, а у друге, вирішивши одного разу проблему "неудаляемості" ми заодно вирішимо і інші.


  • Ми можемо прийти до ситуації, коли будь-яка інформація викладена в p2p-мережу, залишиться в ній назавжди. Можливо вона буде мати обмежену доступність у вигляді малої кількості джерел, зважаючи на малу затребуваності, проте вона буде доступна і видалити її з мережі не буде ніякої можливості ...

(Тут я свідомо опущу дісскуссію про інші наслідки "неудаляемості" інформації, оскільки абсолютно очевидно що є контент, який не повинен розповсюджуватися по мережі навіть з точки зору The PirateBay.)

Як не дивно, реалізувати цей механізм це не так вже й складно.
Треба лише зробити надбудову над обговорюваним тут протоколом, що дозволяє будь-якому клієнту віддавати частину свого трафіку і дискового простору під кешування, зберігання і поширення випадкових блоків випадкових роздач.

Чи не складаючи єдиного цілого, такі блоки даних не матимуть ніякої прикладної цінності для того комп'ютера на якому вони кешуються.

Кешіруемая роздача ніколи не буде завантажена повністю на цьому ком'ютера і користувач ніколи не дізнається що кеш його комп'ютер.

При поточної швидкості доступу в інтернет і вартості дискового простору немає ніяких незручностей пожертвувати декількома гігабайтами на гвинті і кількома відсотками ширини каналу в інтернет, тим більше що windows update робить це без попиту.

В результаті цього, будь-яка роздача крім своїх безпосередніх сідерів-пірів, ініційованих користувачами, буде по блоках завантажена і лунати випадковими вузлами, ймовірність її "смерті" зменшиться. Надскладним завданням стане знайти і вичистити її частини з тих місць де вона закеширувалася, якщо така потреба виникне.

При наявності алгоритму оцінки поширеності того чи іншого контенту в мережі клієнт може кешувати лише рідкісні роздачі, тому що штучна підтримка популярних роздач правило не потрібно. Як тільки "індекс поширеності" роздачі падає - включається механізм самоподержкі, і клієнти кешируєтся її частини. За тим же принципом в кеші будуть замещатся блоки зі зростаючою популярністю, блоками роздачі популярність якої падає.

Побічним ефектом цього нововведення буде і додатковий захист релизеров - зробивши роздачу можна буде дождатся поки вона розійдеться по хмарі бенкетів, перед тим як публікувати хеш-суму в людному місці. Встановити першоджерело релізу після цього практично нереально. (Послідовники Ассанжа і Сноудена напевно оцінять).

Цю надбудову також нескладно зробити зворотно сумісною з існуючою технологією, як додаткову фукцией в будь-якому бітторрент клієнта (впоследcтвіі, бажано, не відключається :)

Якщо ми хочемо децентралізувати і таким чином захистити мережу - нам потрібно від трекерів переходити до мереж DHT і Peer-Exchange як основного способу обміну бенкетами серед бітторрент-клієнтів, використовуючи трекери тільки для ініціалізації роздач, а можливо і просто для видачі початкового списку бенкетів DHT мережі , безвідносно конкретної роздачі.

Ні, я нічого не маю проти закритих спільнот зі своїми правилами і внутрішніми правилами спілкування, але який сенс створювати такі штучні резервації для роботів, тобто бітторрент-клієнтів?

Тут мова йде не тільки про приватних ключах в торрентах, але і правил по "перепакування" релізів для конкретного трекера (зі святом марнославства у вигляді свого файлу * .nfo в роздачі), через якого змінюється хеш роздачі, і в результаті з'являється клон по змісту але з відмінною хеш-сумою, який "не сумісний" по бенкетів з джерелом.

Якщо трохи узагальнити, то напевно варто говорити про введення такого кодексу піратської честі для трекерів, склепіння стандартних правил, серед яких буде заборона приватних торрентів і ключів, заборона на "заборону DHT" в торрент-файлах, заборона на "перепакування" релізів під потреби або правила конкретного трекера або реліз групи.

В якості висновку хочу зауважити що незважаючи на гучні заяви, поки не існує технологій для фільтрації бітторрент трафіку. Деякі провайдери, використовуючи DPI вміють тільки обмежувати швидкість або забороняти його цілком.

На відміну від системи з блокування сайтів за URL де фільтрація вже йде повним ходом.

Зробимо бітторрент краще

Зробимо бітторрент краще

Зробимо бітторрент краще

9-кілобайтний скрипт перетворить будь-який браузер з WebRTC в вузол розподіленої.
Трохи більше двох років тому я написав статтю-дослідження "Темна матерія інтернету". Основна ідея тієї статті - використовувати ресурси мільйонів звичайних користувачів інтернету для того, щоб зняти велику частину навантаження з веб-сайтів, подібно до того, як в мережах BitTorrent учасники допомагають один одному качати файли. Це могло б багаторазово знизити

Популярно про Amazon Web Services: CloudFront [продовження]
Всім доброго дня! У своїй попередній статті на тему AWS я розповідав в загальних рисах про всіх сервісах, з якими я працював. Сьогодні я вирішив доповнити розповідь статтею про CloudFront, тому що є що розповісти. Amazon CloudFront Опис CloudFront - CDN (Content Delivery Network - Мережа Доставки Контенту) від Amazon, заснований на сервісі S3 або

Схожі статті