close the world
ʇxǝu ǝɥʇ uǝdo

 

 

The Netsukuku Wired

Netsukuku aims to be a mesh network or a peer to peer protocol that generates and sustains itself autonomously. It is designed to handle an unlimited number of nodes with minimal CPU and memory resources. Thanks to this feature it can be easily used to build a worldwide distributed, anonymous and uncontrolled network, separated from the Internet, without the support of any servers, ISPs or authority controls.

Such a net is composed by computers linked physically each other, therefore it isn’t build upon any existing network. Netsukuku builds only the routes which connects all the computers of the net. In other words, Netsukuku replaces the level 3 of the ISO/OSI model with another routing protocol.

Being Netsukuku a distributed and decentralised net, it is possible to implement real distributed systems on it, e.g. the Abnormal Netsukuku Domain Name Anarchy (ANDNA) which replaces the actual hierarchic and centralized system of DNS.

The Old Wired

The Internet is a hierarchic network managed by multinational companies and organizations supported by governments. Each bit of Internet traffic passes through proprietary backbones and routers. The Internet Service Providers give the connectivity to all the users, who are in the lowest rank of this hierarchic pyramid. There is no way to share the ownership of Internet and people can join the Net only in accordance with conditions and terms imposed by the Majors. The Internet represents, today, the means to access information, knowledge and communication. About 1 billion of people can connect to this great proprietary network, but the remaining 5 billion of people, which don’t have enough economic resource, are still waiting the multinationals to supply a service with in their reach.

The Internet was born with the intent of warranting a secure and unattackable communication between the various nodes of the network, but now, paradoxally, when an ISP decide to stop to provide its service, entire nations are immediately cut out of the Internet.

Beside that, Internet is not anonymous: the ISP and the multinationals can trace back and analyse the traffic of data going through their servers, without any limits.

The centralised and hierarchical structure of Internet creates, as a consequence, other identical systems, based on it, i.e. the DNS. The servers of the Domain Name System are managed by different ISPs, as well and the domains are literally sold through a similar centralised system. This kind of structures allows, in a very simple and efficient way, to physically localise any computers, which are connected to the Internet, in a very short time and without any particular efforts.

As long as all the efforts to bring more freedom, privacy and accessibility in the Internet face aversions, fears, contrary interests of governments and private companies, the very alternative solution to this problem is to let the users migrate toward a distributed, decentralised and fully efficient net, in which all the users interact at the same level, with no privilege and no conditioning means, as authentic citizens of a free world wide community.

Features in Netsukuku

Gandhi

Netsukuku is self-managed. It generates itself and can stand alone. As a node hooks to Netsukuku, the net automatically rewrites itself and all the other nodes known which are the fastest and more efficient routes to communicate with the new arrived. The nodes don’t have privileges or limitations, when compared with other nodes, they are part of the net and give their contribution to its expansion and efficiency. The more they increase in number the more the net grows and becomes efficient. In Netsukuku there isn’t any differences among private and public nets and talking about “local networks” becomes meaningless.

It can be neither controlled nor destroyed because it is totally decentralised and distributed. The only way to control or demolish Netsukuku is knocking physically down each single node which is part of it.

No name, no identity

Inside Netsukuku everyone, in any place, at any moment, can hook immediately to the net without coming trough any bureaucratic or legal compliance. Moreover, every elements of the net is extremely dynamic and it’s never the same. The ip address which identify a computer is chosen randomly, therefore it’s impossible to associate it to a particular physical place, and the routes themselves, been composed by a huge number of node, show the tendence to have such a high complexity and density to make the trace of a node a titanic task.

Since there isn’t any contract with any organisations, the speed of the data transfer is uniquely limited by the actual tecnology of the network cards.

So, WTF is it?

Netsukuku is an open mathematical problem whose solution consists in finding a scheme of dynamic compact routing.

Currently there is wide number of protocols and algorithms for dynamic routing, but they differ from Netsukuku because they are solely utilized to create small and medium nets. The routers of Internet are also managed by different protocols as the OSPF, the RIP, or the BGP, based on different classical algorithms, able to find out the best path to reach a node in the net.

These protocols require a very high waste of cpu and memory, this is the reason why the Internet routers are computers specifically dedicated to this purpose. It would be impossible to implement one these protocols in order to create and maintain such a net as Netsukuku is, where every each node is a router by itself, because the map of all the routes would require a space, on each pc connected to the net, of about 10GB.

Netsukuku structures the entire net as a fractal and, in order to calculate all the needed routes which are necessary to connect a node to all the other nodes, it makes use of a particular algorithm called Quantum Shortest Path Netsukuku (QSPN).

A fractal is a mathematical structure which can be compressed up to the infinite, because inside it, every part itself is composed by the same fractal. Thus there is a high compression of a structure which can be infinitely expanded. This means that we need just a few Kb to keep the whole Netsukuku map.

The map structure of Netsukuku can be also defined more precisely by calling it a highly clusterised graph of nodes for which is not always true that a determinated pkt will be sent before another one.

The history of Netsukuku

Netsukuku was born at the beginning of the millennium and its history is rather complex.

In one of the possible worlds and dimensions, the digital, a tribe of south Italian hackers met.

Year 2000, during an on-air session of radio Cybernet at the Hackmeeting in Rome: the idea of Ipv7 nocoder nocrypt came to life. It was a transmission full of absurd geek jokes about IP protocols, intelligent compilers and cryptographic algorithms.

Later in 2003 a crew of young mad scientists in the Freaknet Medialab inspired by the visions of Crash continued to expand the concepts of Ipv7, remembering the fun they had. This time the imaginific jokes followed describing a network in which all the packets are sent to broadcast and compressed with “zlib7”: an algorithm which could compress all the existent Internet into just 32 byte. Today, Some people still call him Crash.

In Ipv7 the nodes were devoid of an ip address, it was an extremely decentralised and totally free net. Those people were really happy after the first draft of such a crazy RFC.

After this episode the project has been resting in the infinite folds of time and possible codes to be written. Yet some years later someone punched a lot of code and documentation on his keyboard. Alpt, who had participated to these visionary sessions, developed and researched algorithms, wrote the RFCs and the first Netsukuku implementation in C.

Alpt called it the implementation of a pure network. Month by month this idea of a network became refined, and the project became something concrete.

«It has also to support a sort of anti-flood and anti-spoofing!»

«Yep! And the main target is to make the routes always different from each other.»

«Yea, yea, and why don’t we abolish all the central servers?»

Three febrile months passed by and after many mystical meditations, the theoretical kernel was ready. The algorithms were defined and the programmers started to write code, tormented by delirant visions inducted by the act of creation of a protocol for pure networks. Purity is a fool’s mirage! In spite of all, exactly after one year and after fourteen thousand lines of code, the first C implementation of Netsukuku was ready and immediately presented at the Hackmeeting 2005 in Naples.

On the wave of enthusiasm the code grew to more than forty thousand lines of code as more people have joined to develop Netsukuku and much has been going on. Eriol, jnz, Lukisi (who is now writing the Vala implementation), Efphe, Entropika and others contributed.

The C code got to a good shape. But the sad thing about programmers is: they want to rewrite everything in another language. Its really their perversion :^) the Netsukuku rewrite in Python was never really finished.

However in May 2006 the ANDNA protocol was implemented in C and documented in a RFC.

In October that year the first public version of Netsukuku was released and was included ready to use inside the Dyne:bolic GNU/Linux distribution, a liveCD that was distributed on computer and game magazines around the world.

After many years, in 2010, Lukisi started reimplementing Netsukuku, while Alpt decided to continue into the direction of a deeper mathematical research on the principles behind the realization of a truly decentralized dynamic compact routing algorithm.

((( …. to be continued … )))

List of contributors to Netsukuku