Введение

Что такое Netsukuku

Netsukuku - это P2P сеть с ячеистой топологией которая создаётся и поддерживается самостоятельно. Она способна поддерживать неограниченное количество узлов с минимальными затратами ресурсов процессора и памяти. Благодаря этому она может быть основой для создания глобальной распределённой, анонимной и анархической сети, не связанной с Интернетом, без серверов, провайдеров или контроля властей. Надо учитывать что Netsukuku – это физическая сеть, не надстройка над какой-либо существующей сетью, узлы в ней должны быть физически связаны между собой когда Netsukuku создаётся таблицу маршрутизации. Другими словами Netsukuku замещает 3-й уровень сетевой модели ISO/OSI (Сетевой уровень) своим протоколом маршрутизации.
(Читать: "2.4 So, WTF is it?" http://netsukuku.freaknet.org/?p=Documentation)

Почему выбрано имя Netsukuku?

Networked Electronic Technician Skilled in Ultimate Killing, Utility and Kamikaze Uplinking – Сетевой Электронный Технически Образованный в Абсолютном Уничтожении, Обслуживании и Спутниковой связи Камикадзе.
Есть так же другая версия. Мы изучали Катакана играя в «slimeforest» игру под GNU/Linux. К сожалению когда мы столкнулись со словом «Network» написанным по японски мы не знали подходящих символов, так что единственные знаки Катакана которые нам удалось прочитать в нём были: Ne tsu ku ku. Кстати вы вполне можете придумать свои объяснения имени и скрытый в нём тайный смысл.

Что значит «использует хаотичность и фракталы»?

Протокол Netsukuku (Npv7) структурирует всю сеть как фрактал и для вычисления маршрутов необходимых узлу для взаимодействия с сетью использует алгоритм Квантового Кратчайшего Пути Netsukuku (QSPN). Здесь под фракталом понимается граф с высокой степенью повторяемости структуры.
(Читать: 5.3 The truly Gnode^n for n<=INFINITE" http://netsukuku.freaknet.org/?p=Documentation)
С другой стороны QPSN – мета-алгоритм когда он применяется в условиях реальной сети (или симуляции). Для его «исполнения» узлы должны послать QPSN pkt(пакет). Поэтому не всегда верно что определяющий пакет будет послан перед любым другим. Это позволяет вычислять лучшие пути без сложных вычислений.
(Читать: "5.1 QSPN: Quantum Shortest Path Netsukuku" http://netsukuku.freaknet.org/?p=Documentation)

Для чего ещё одна p2p сеть?
Netsukuku не p2p построенная поверх Интернета. Это физическая сеть и её схема динамической маршрутизации спроектирована для сети с 2^128 узлов без серверов или централизованной системы, таким образом возможно построить независимую от Интернета сеть. Кстати, прочитайте «Что такое Netsukuku»
Эй! Да вы спятили. Эта фигня не будет работать!

Эй, сейчас это не пытается быть окончательным решением Основного Вопроса Жизни, Вселенной и Всего Остального. Почему бы не привнести чего-нибудь в проект и не поделиться своими несомненно глубочайшими познаниями? Если хочешь помочь в разработке изучи код и свяжись с нами ;)

Где есть сети Netsukuku и как к ним присоединиться?
Мы не просто знаем, да и не можем знать, но на основе сайта проекта создаётся портал, который облегчит координацию.
Как я могу помочь развитию Netsukuku? Как в внести вклад в её рост?

Загляни сюда: http://lab.dyne.org/Ntk_Grow_Netsukuku

Техническая часть

Как Netsukuku масштабируется в сети с БОЛЬШИМ количеством узлов?
Простые и не совсем точные причины масштабируемости Netsukuku (до тех пор пока не будет написана тех. документация с математическим обоснованием):
  • Размер карты фиксирован, около 4Кб для int_map и 16Кб для ext_map.
  • Не все узлы посылают широковещательный запрос для обнаружения соседних узлов (broadcast discovery)
  • Широковещательный запрос осуществляется многопоточно.
  • В момент получения широковещательного пакета узел получает необходимые пути без каких-либо вычислений
  • Запросы синхронизированы, все узлы начинают широковещание одновременно.

    Набросок объяснения возможностей масштабируемости Netsukuku доступен по адресу: http://lab.dyne.org/Netsukuku_scalability

  • Как предполагается решить проблему совпадения IP для различных узлов?

    Проблема уже решена: http://lab.dyne.org/Ntk_gnodes_contiguity

    Так это действительно работает?

    :)

    Netsukuku независима от Интернета. Как? Кто-то строит совершенно новою инфраструктуру? Кто за всё это платит?
    Вовсе нет, платить не надо. Лучший способ физически связать два узла – беспроводные технологии (Wi-Fi). Сейчас существуют множество беспроводных технологий позволяющих свяывать между собой узлы на расстоянии в километры. В городах не должно быть каких-либо проблем, достаточно Wi-Fi узла на район/квартал для полного покрытия.
    Как присоединиться к Netsukuku?
    Необходима Wi-Fi антенна, далее запустите Netsukuku демон на соответствующем сетевом интерфейсе. Ждите, и не забудьте сказать друзьям сделать тоже самое ^_-
    Как новый узел обнаруживает другие в сети?
    «Радар» Netsukuku посылает эхо пакеты каждые 10 секунд, если кто-нибудь отвечает, устанавливает связь.
    Будут-ли предоставлены «Netsukuku – Интернет» туннели?

    Да, для соединения между городами. Более подробно тут: http://lab.dyne.org/Ntk_Internet_tunnels

    Кроме развлечения что я могу делать в сети Netsukuku?
    Тоже самое что можно делать в Интернете. Демон Netsukuku всего-лишь прописывает маршруты в таблице маршрутизации ядра.
    Можно-ли будет хостировать сайты?
    Можно уже сейчас.
    Сможет-ли glibc преобразовывать имена из ANDNAv?

    В ANDNA есть обертка DNS так что она прозрачна для всех программ использующих glibc.
    (Читать "man andna": http://netsukuku.freaknet.org/doc/manuals/html/andna.html )

    Какова производительность Netsukuku? Есть ли преимущества при аудио- или видеочате?

    Что подразумевается под «производительностью»?
    Сетевая производительность: Зависит от от качества связи. Если узлы связаны 100Мб/с кабелем не будет заметных отличий от большой LAN. Расстояние между узлами также имеет значение. Напомним что демон Netsukuku выбирает наилучший маршрут до других узлов, но не может улучшить их.
    Программная производительность: Об этом не стоит вообще беспокоиться:

    {{{ PID USER PRI NI SIZE RSS SHARE %CPU %MEM TIME CPU COMMAND 18521 root 15 0 17708 1552 1164 0.0 0.3 0:00 0 netsukuku_d }}}

    Программная часть

    На какие операционные системы портирована Netsukuku?

    Пока только GNU/Linux, несложно портировать на любую ОС. Если есть желание этим заняться дайте нам знать ;)

    Будет-ли Netsukuku для Windows?

    Короткий ответ: если ты сделаешь, то да.
    Ответ: Для этого нам необходимы кодеры, есть длинный список того что необходимо ещё сделать и порт на Windows не настолько важен.

    Будет-ли Netsukuku портирован на PSP / Nintendo DS / Wi-Fi мобильники / Linux КПК и так далее?
    Сейчас мы работаем над Netsukuku для беспроводных точек доступа (например Linksys).
    Для пользования Wi-Fi мне нужна точка доступа?

    Необходима Wi-Fi сетевая карта. Переведите её в состояние готовности (ad-hoc) используя «netsukuku» как essid
    (man netsukuku_wifi: http://netsukuku.freaknet.org/doc/manuals/html/netsukuku_wifi.html)

    Почему вы не пишете на Java?
    Это шутка такая?
    Моего вопроса тут нет!

    Вам сюда: http://netsukuku.freaknet.org/

    Netsukuku_FAQ_(ru) (last edited 2008-06-26 09:50:01 by anonymous)