I2P Статистика производительности

Я проверил i2p ...

Содержимое страницы

Оно работает, но производительность, анонимность и надежность вызывают сомнения…

i2p+ desktop

TL;DR

Кратко говоря

  • Провел тестирование 3 типов развертываний для оценки их работы в качестве прокси-серверов (очень похожие)
  • Провел тестирование 3 типов развертываний скрытых сервисов (i2p+ оказался лучшим)
  • Участие в флооде не влияет на производительность сети i2p, но увеличивает потребление ресурсов.

I2P медленный. Один пинг занимает 5-10 секунд. И не гарантировано, что он не завершится с ошибкой, даже если у вас хорошее соединение.

Кратко о том, что это такое

I2P — это протокол сети, работающий поверх IP, он использует и TCP, и UDP, а также IPv6 и IPv4.

Основная идея похожа на TOR — передавать пакеты сети, шифруя их на лету, так что

  • узел, передающий пакет, не знает, что внутри
  • узел, получивший пакет, не знает оригинального отправителя.

У I2P нет стандартного способа просматривать “большой интернет” (clearnet), есть outproxies, но, ну… TOR гораздо лучше с этим справляется. У i2p есть “скрытые сервисы”. Теоретически эти сервисы не знают, кто их вызывает, а пользователи не знают, на каком узле расположен каждый сервис.

Сервисы могут быть любыми стандартными интернет-программами — сервер IRC, веб-сервер с чем угодно, REST API, XMPP или почтовый сервер.

Их там не так много. Примерно 200 сайтов? Или 300?

Цель, способ, моральные и юридические аспекты.

Я вижу две мотивации для размещения скрытых сервисов

  • Обеспечить (увериться) в своей анонимности и приватности
  • Избежать прямого взгляда “Большого брата” — не все живут в демократических странах, в некоторых тиранических правительства подавляют и репрессируют кого угодно. Но в этот “ящик” (“избежание”) я бы положил любую незаконную деятельность. Это просто мотив.

Моральные и юридические аспекты сложны. Мое мнение (я не юрист, поэтому не принимайте это как совет):

У людей есть [моральное] право на приватность. У них есть [моральное] право сказать “F.U. Это не ваше дело”. У них есть [моральное] право быть … ну, допустим … несчастливыми, когда некоторые программы или мобильные телефоны публикуют их местоположение, спутники снимают фото их заднего двора и публикуют их на Google Street View, а правительства игнорируют эту активность и несчастливость. В то же время, насколько я знаю, у правительства есть [юридическое] право вторгаться в приватность людей, при определенных условиях, иногда. Например, в Австралии полицейский инспектор может потребовать от вас разблокировать свой мобильный телефон, что имеет огромные моральные последствия. См. историю Monica Smith, которая каким-то образом была вынуждена разблокировать свой телефон, чтобы полиция получила контакты сторонников свободы. (Это были времена карантина в Мельбурне, самых жестких в мире). Полиция отступила, но Моника затем рисковала получить тюремное наказание за неповиновение.

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

Производительность

Хорошо. Начнем.

Я измерял, сколько времени требуется для завершения пинга. (HEAD {site}.i2p)

Ниже показано распределение задержки ответа.

i2p ping times spread

Это графическое изображение распределения показывает, что ожидаемая продолжительность вызова составляет около 5 секунд.

Я установил тайм-аут на 90 секунд, и, как вы видите, некоторые запросы вообще не завершились. 30 секунд и 60 секунд, наверное, являются тайм-аутами на стороне сервиса или маршрутизатора.

i2p overall ping delays spread

Основные сайты — это хорошо известные сайты http://idk.i2p/, http://zzz.i2p/, http://identiguy.i2p/, http://333.i2p/, http://i2pforum.i2p и подобные, всего 25 таких. Дополнительная группа — набор из более чем 100 сайтов.

Я предположил, что владельцы основных сайтов знают, что делают, и действительно их производительность лучше, чем у дополнительной группы. Но разница не такая большая — всего на 1 секунду (~5 секунд против ~6 секунд медианное время вызова). И! основные сайты все еще время от времени завершались с ошибкой, как вы видите на первом графике (распределение времени вызова).

Ниже показан график удобства использования прокси.

i2p proxy type usability

Измеренные продолжительности пинга сайтов из основной группы с использованием разных прокси. I2P+ на одном и I2Pd на двух разных развертываниях показывают довольно похожие результаты.

Теперь удобство размещения сервисов.

i2p service hosting usability

Толстая красная линия здесь — это I2P+.

Анонимность

Было онлайн от 4000 до 10 000 маршрутизаторов, их публичные IP-адреса хорошо видны. Поэтому мы не можем говорить о большой анонимности здесь.

Потребление ресурсов

В моих экспериментах I2Pd потреблял ~130 МБ ОЗУ + ~7% процессора.

Великолепно!

I2P+ потреблял ~350+ МБ ОЗУ + ~70+% процессора.

В настройках I2P+ я немного увеличил объем ОЗУ, надеясь, что это улучшит производительность. Итак, вот мы и оказались.

Участие в флооде в моих экспериментах не влияло на производительность сети i2p, но увеличило нагрузку на процессор примерно на +20%.

Поэтому, если вы планируете размещение I2Pd — 1vCPU+512MB будет достаточно, я думаю. А для I2P+ — минимум 2vCPU+1GB.

Ощущение

Это похоже на Fido, BBS и старые добрые времена. Когда сеть настолько мала, что все знают друг друга по никам.

Это медленно. И пусто.

Но ощущение так аналоговое.