LINUX.ORG.RU

Проект Netsukuku переписан на Vala

 , , ,


4

7

Netsukuku — проект по созданию отказоустойчивой, распределенной, самоорганизующейся сети с независимыми от интернета каналами передачи данных.

Главные особенности проекта — фрактальные алгоритмы построения карты сети и маршрутизации, и система доменных имен ANDNA (Abnormal Domain Name Anarchy). Допускается построение меш сети с динамической маршрутизацией размером до 2128 узлов. В отличие от Freenet, Netsukuku не зависит от Интернета, работает на 3-ем уровне модели OSI и подразумевает построение независимой физической сети передачи данных.

С момента своего рождения в 2006 году, проект пережил переписывание c языка C на Python, после чего скончался в 2009 из-за отсутствия мейнтейнеров. Через два года разработчик по имени Luca Dionisi начал переписывать проект на Vala. В 2014 году портирование было завершено.

Код распространяется под лицензией GPLv3 и доступен на странице проекта. Из репозитория можно загрузить всё необходимое для сборки пакетов под OpenWRT.

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

>>> Подробности

anonymous

Проверено: fallout4all ()

Ответ на: комментарий от blueboar3

Это значит что не используются стандартные инетовские IP/TCP/HTTP, а все свое поверх Ethernet.

Они вконец одурели? Хотят весь интернет на ethernet сетях построить? А как шлюзы строить? Кто из провайдеров весь этот мусор пропустит?

AVL2 ★★★★★ ()
Ответ на: комментарий от AVL2

Хотят весь интернет на ethernet сетях построить?

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

Siado ★★★★★ ()
Ответ на: комментарий от GblGbl

freenet

Ви так говорите, как будто оно живое.

i2p

Изначально это порт чего? Правильно, freenet'а. Жава версия актуальна ровно до того момента как допилят порт на c++.

anonymous ()
Ответ на: комментарий от Lefan

А я и не спорил. Но, с другой стороны, такое ПО должно быть кроссплатформенно.

IPR ★★★★★ ()
Ответ на: комментарий от Siado

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

Боюсь тебя разочаровать, но ethernet заканчивается на первом же роутере без proxyarp, то есть, на первом же роутере...

AVL2 ★★★★★ ()

Что уж - пусть сразу на java переписывают. А то запарили: сначала на python, потом на C, теперь на vala. И в итоге стабильной версии, которая могла бы стать стандартной для установки, как не было, так и нет. И проблема не столько в коде, сколько в отсутствии внятной спецификации, по которой каждый делал бы совместимые реализации.

Quasar ★★★★★ ()
Ответ на: комментарий от macrohard

Вот выпустить мобильный гаджет в духе Cybiko действительно не помешало бы.

Quasar ★★★★★ ()

ставлю 10 рублей на перерождение проекта на джаваскрипте.

(а вы что думали, после питона и валы - уже больше некуда?)

Denjs ()
Ответ на: комментарий от teamfighter

ну не надо так резко))

у джавы, согласен, имеются свои дибилизмы, но их меньше чем скажем в питоне, и они все четко задокументированы и для всех случаев можно найти описание того, «как оно должно работать»)

потому уж простите, конкурентов такой промышленной технологии вы, боюсь, не увилите ещё лет 10)

закопайте лучше решетки ибо отвлекают молодь и создают информационный шум.

Denjs ()
Ответ на: комментарий от Denjs

у джавы, согласен, имеются свои дибилизмы,

Вам не кажется что этих дебилизмов гораздо больше чем чистого профита? А если так, то нужен ли вообще этот ЯП?

teamfighter ()
Ответ на: комментарий от teamfighter

>> у джавы, согласен, имеются свои дибилизмы,

Вам не кажется что этих дебилизмов гораздо больше чем чистого профита? А если так, то нужен ли вообще этот ЯП?

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

По моему личному впечатлению - 80-90% «дебизизмов» связаны с необходимостью поддержки старых версий и работоспособности старого кода. Увы, но это «требовнаие бизнеса».

И профита, _с_практической_точки_зрения_ - таки больше. Особенно если сравнивать с другими языками.

А как ЯП - мне, конечно, С/С++ в диалекте Qt4+ нравится гораздо больше)))

Denjs ()
Ответ на: комментарий от teamfighter

да закопайте уже java наконец.

Чем она не угодила?

Legioner ★★★★★ ()

В эитой штуке можно будет торрент-трекер запускать, чтобы бесплатный SolidWorks и AutoCad выкладывать? А то эти поборники свои *рских прав уже заколебали. Раз пристрелить их нельзя, значит - надо украсть у них по максимуму, чтоб их чёрная икра чёрной жабой обернулась.

DRVTiny ★★★★★ ()
Ответ на: комментарий от Legioner

Чем она не угодила?

Тем, что printf('Hello, world!\n') если и компилируется, то в кусок машинного говнокода объёмом больше KolibriOS при том, что делает не больше куска кода в 20 байт весом, который делает ровно то же самое?

DRVTiny ★★★★★ ()
Ответ на: комментарий от DRVTiny

Тем, что printf('Hello, world!\n') если и компилируется, то в кусок машинного говнокода объёмом больше KolibriOS при том, что делает не больше куска кода в 20 байт весом, который делает ровно то же самое?

А какое отношение имеет printf('Hello world!\n') к реальным задачам?

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

А какое отношение имеет printf('Hello world!\n') к реальным задачам?

Вы, видимо, не уловили суть драмы.
man говнокодинг.

teamfighter ()
Ответ на: комментарий от teamfighter

Вы, видимо, не уловили суть драмы.

Не уловил. уже лет 10 пишу на джаве, а сколько там байтов машинного кода будет в вызове метода на джаве не знаю. И не знаю, о чём это может говорить.

man говнокодинг.

В этом не специалист.

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

уже лет 10 пишу на джаве, а сколько там байтов машинного кода будет в вызове метода на джаве не знаю.
В этом не специалист.

Видимо, как раз специалист

teamfighter ()
Ответ на: комментарий от Legioner

10 пишу на джаве, а сколько там байтов машинного кода будет в вызове метода на джаве не знаю.

Нашел чем хвалится :)

goingUp ★★★★★ ()
Ответ на: комментарий от Legioner

Джава очень отличается тем, что элементарные вещи здесь делаются по индусскому принципу разделения труда на грани распыления, когда на вычисление 2+2 вызывается стэк модулей глубиной минимум в 10 штук, в хитросплетениях объектной реализации которых человеку со стороны разобраться будет крайне затруднительно. Ну и да, таскание за собой рантайма в качестве «бесплатного приложения» к байт-коду, как и включение его весомых ошмётков в код бинарный ака машинный - не красит Яву совсем.

DRVTiny ★★★★★ ()
Ответ на: комментарий от DRVTiny

Джава очень отличается тем, что элементарные вещи здесь делаются по индусскому принципу разделения труда на грани распыления

Элементарные вещи делаются элементарно. Если кто-то их делает по-индусски, это его личные проблемы.

когда на вычисление 2+2 вызывается стэк модулей глубиной минимум в 10 штук

Вычисление 2+2 делается одной машинной командой, точно так же, как и в случае с С, без всяких модулей.

в хитросплетениях объектной реализации которых человеку со стороны разобраться будет крайне затруднительно

Человеку со стороны в программирование лучше вообще не лезть.

Ну и да, таскание за собой рантайма в качестве «бесплатного приложения» к байт-коду, как и включение его весомых ошмётков в код бинарный ака машинный - не красит Яву совсем.

С-шный рантайм тебя тоже смущает? Пишешь на ассемблере с вызовами ядрёных функций через прерывания?

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

С-шный рантайм тебя тоже смущает?

Он настолько крохотный, что я его просто не замечаю :)

DRVTiny ★★★★★ ()
Ответ на: комментарий от Legioner

Ваше право.
Но про оптимизацию, на мой взгляд, забывать не стоит

teamfighter ()
Ответ на: комментарий от teamfighter

Но про оптимизацию, на мой взгляд, забывать не стоит

Давайте говорить предметно.

Оптимизация по какому именно параметру в контексте Java вас интересует?

Я могу сказать проблему Java. Это достаточно большой размер кушаемой памяти после запуска. Он может составлять несколько мегабайтов на hello world. Но я не считаю эту проблему существенной для большинства приложений. В Java 9 её рантайм будет распилен на множество мелких модулей и эта проблема вероятно ещё более уменьшится.

Других ограничений джавы, мешающих оптимизации по какому-либо параметру я не знаю. Скорость выполнения у Java ненамного меньше, чем на С и уж точно не хуже, чем либой другой managed язык. Потребление памяти в Java достаточно небольшое. GC очень шустрый и параллельный.

Legioner ★★★★★ ()
Ответ на: комментарий от DRVTiny

Он настолько крохотный, что я его просто не замечаю :)

Ну а я джавовский не замечаю. Чего его замечать то: скачал один раз, поставил и забыл.

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

А если в жаве все так хорошо - то почему все без исключения знаменитые десктопные приложения конкретно тормозят, по сравнению с аналогами, написанными на C/C++ ?

Siado ★★★★★ ()
Ответ на: комментарий от Siado

А если в жаве все так хорошо - то почему все без исключения знаменитые десктопные приложения конкретно тормозят, по сравнению с аналогами, написанными на C/C++ ?

Я не знаю, о каких знаменитых десктопных приложениях идёт речь и не сидел с профайлером, чтобы выяснить причину тормозов. Могу только заметить, что Idea очень реактивна, и это единственная десктопная Java программа, которой я активно пользуюсь.

Есть предположение, что тормозить может из-за некачественных графических библиотек. К Java эта проблема имеет опосредованное отношение. Можно написать хорошие биндинги к GTK, например, и ничего тормозить не будет.

Legioner ★★★★★ ()
Ответ на: комментарий от AVL2

Боюсь тебя разочаровать, но ethernet заканчивается на первом же роутере без proxyarp, то есть, на первом же роутере...

Тут народу больше тактику нравится пообсасывать - на каком языке лучше сабж писать.
А вот о стратегии - на каких таких «независимых от интернета каналами передачи данных» этот сабж будет работать - вообще не задумываются.

anonymous ()

Когда коту делать нечего он яйца лижет. Чем хоть обосновывали?

DNA_Seq ★★☆☆☆ ()
Ответ на: комментарий от DNA_Seq

Чем хоть обосновывали?

Ну, на питоне эта штука только для связи через модемы v42bis пригодна...

AVL2 ★★★★★ ()
Ответ на: комментарий от Legioner

Человеку со стороны в программирование лучше вообще не лезть.

А вот за такой подход надо сразу макать в унитаз. Проще обучить специалиста в нужной теме программированию чем программиста чему-нибудь учить.

DNA_Seq ★★☆☆☆ ()
Ответ на: комментарий от AVL2

Это проблема кривых рук разработчиков а не проблема питона. Люди с прямыми руками и числодробилки без проблем на питоне пишут.

DNA_Seq ★★☆☆☆ ()
Ответ на: комментарий от AVL2

И что в этом плохого? Ну кроме задетого снобизма сишников?

DNA_Seq ★★☆☆☆ ()
Ответ на: комментарий от Synthez

казалось бы, ну кому не нужен практически бесплатный и независимый интернет? однако, проект дохнет/воскрешается/дохнет/

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

Alsvartr ★★★★★ ()
Ответ на: комментарий от DNA_Seq

И что в этом плохого? Ну кроме задетого снобизма сишников?

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

AVL2 ★★★★★ ()
Ответ на: комментарий от AVL2

Первое, с таким подходом и файрфокс написан на жабаскрипте c xml, а все тяжелые игрушки на луа.

Какая разница что на чем написано? Главное чтобы причину почему в том же фф не работают русские хоткеи не искали годами.

Нужно, чтобы на целевой платформе были еще и все либы и биндинги к ним.

Неприятно (особенно для сетевого софта) но не смертельно.

DNA_Seq ★★☆☆☆ ()
Ответ на: комментарий от DNA_Seq

А вот за такой подход надо сразу макать в унитаз. Проще обучить специалиста в нужной теме программированию чем программиста чему-нибудь учить.

Программированию надо учить лет десять, если речь не идёт научном «программировании». Проще научить специалиста в нужной теме общаться с программистом.

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

Программированию надо учить лет десять,

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

Проще научить специалиста в нужной теме общаться с программистом.

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

DNA_Seq ★★☆☆☆ ()
Последнее исправление: DNA_Seq (всего исправлений: 1)
Ответ на: комментарий от Alsvartr

о каком говне разговоры? wi-fi не изобрели? приёмо-передающих станций нет?

Synthez ()
Ответ на: комментарий от Synthez

Ну ясно все. Построй интернет на вай-фае. После того, как попробуешь связать два города - поговорим.

Alsvartr ★★★★★ ()
Ответ на: комментарий от Alsvartr

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

Synthez ()
Ответ на: комментарий от Alsvartr

а почему 2 города? других населённых пунктов нет? в том-то и дело - «тюрьма в голове».

Synthez ()
Ответ на: комментарий от DNA_Seq

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

anonymous ()
Ответ на: комментарий от Legioner

Элементарные вещи делаются элементарно. Если кто-то их делает по-индусски, это его личные проблемы.

это perl

Вычисление 2+2 делается одной машинной командой, точно так же, как и в случае с С, без всяких модулей.

до вычисления 2+2 еще надо сделать множество вызовов вглубь виртуальной машины ровн как и после получения результата

Человеку со стороны в программирование лучше вообще не лезть.

такое ощущение что вы не видели в своей жизни «объемный» проект на java

Я не знаю, о каких знаменитых десктопных приложениях идёт речь и не сидел с профайлером, чтобы выяснить причину тормозов. Могу только заметить, что Idea очень реактивна, и это единственная десктопная Java программа, которой я активно пользуюсь.

А вот и не правильно, Idea очень тормозная, хотя это не замечается если у вас компьютер сильно мощный (но вот запаса мощности чтобы тянуть нормально несколько виртуалок под нагрузкой из-за Idea у компьютера уже не останется). Знаю по делу, так как мы (команда) занимались поддержкой крупного java-проекта (код был «правильным» и очень высокого качества). Я попутно занимался нагрузочным тестированием разрабатываемой системы (на железе заказчика). Кстати, заказчику под этот java-проект пришлось докупать очень серьезное железо, что ему сильно влетело в копеечку.

Есть предположение, что тормозить может из-за некачественных графических библиотек. К Java эта проблема имеет опосредованное отношение. Можно написать хорошие биндинги к GTK, например, и ничего тормозить не будет.

Диванный теоретик? А тормозить будет из-за ЧРЕЗМЕРНО БОЛЬШОГО ОВЕРХЕДА вызовов - это следствие объектной модели. А про джавовый GC (garbage collector) который эпизодически убивает всю производительность системы вообще лучше умолчать :) Биндинги к Java - это еще тот отстой.

Но самая главная проблема Java-проектов в ее неповоротливости (если вы не понимаете в чем проблема, то это значит что вы не видели ни одного серьезного проекта на java).

anonymous ()
Ответ на: комментарий от DNA_Seq

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

Вы пишете про быдлокодинг. Чтобы нормально научиться программировать - надо учиться целенаправленно и долго.

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

Это быдлокодеры - народ крайне тупой и необучаемый. Еще и обидчивый и с самомнением. Похоже что вы не встречали никогда ни настоящего программиста, ни настоящего админа, из-за этого у вас такие приземленные оценочные суждения на уровне быдлокодера.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.