Netsukuku
Encyclopedia
Netsukuku is the name of an experimental peer-to-peer
routing system, developed by the FreakNet MediaLab in 2006, created to build up a distributed network, anonymous and censorship-free, fully independent but not necessarily separated from the Internet
, without the support of any server
, ISP
and no central authority. It does not rely on a backbone router, or on any routing equipment other than normal network interface cards.
and memory resources. This mesh network can be built using existing network infrastructure components such as Wi-Fi
.
Netsukuku routing protocol builds the appropriate routes that connects all the computer on the mesh, replacing the level 3
of the OSI model
with another routing protocol called QSPN (Quantum Shortest Path Netsukuku).
Also, the domain name system
(DNS) is replaced by a decentralised and distributed system called ANDNA (A Netsukuku Domain Name Architecture).
Netsukuku was born from the idea to create a pure net that takes advantage of being distributed for creating and maintaining itself autonomously. The network itself can survive node loss without interrupting the service in the network. Note that for a completely dynamic network, it would require a constant update to the routes and this goes against the scalability and stability requirements of Netsukuku.
Since Netsukuku is not a P2P network built upon the Internet it handles routes differently. It is a physical network and it is a dynamic routing system designed to handle 2128 nodes without any servers or central systems.
When a node joins the mesh network, Netsukuku automatically suits and all other nodes come to know the fastest and most efficient routes to communicate with the newcomer. The nodes have no more privileges or restrictions than other nodes; they are all part of the network and contribute to its expansion and efficiency, being all equal.
Whenever the number of its nodes grows, the network changes its shape and the routes keep on improving, automatically removing unnecessary links using disjoint routes. Redundant routes are removed in order to free memory for non-redundant ones. Keeping redundant routes in the kernel routing table isn't optimal, because if one of the routes fail there is a high probability that all the other redundant routes will fail too.
The usual protocols and algorithms for the dynamic routing are usually used to create small and medium networks, like OSPF
, RIP
or BGP
, and use different algorithms to find the best way to reach a node in a network. These protocols require a relevant CPU and memory consumption, and it is for this reason that the Internet routers are often specially dedicated computers. It would be impossible to adopt one of these protocols to create and maintain a very big mesh network.
For this reason, is necessary to structure the network in a convenient topology. Netsukuku adopts a hierarchical structure. 256 nodes are grouped inside a gnode (group node), 256 gnodes are grouped in a single ggnode (group of group nodes), 256 ggnodes are grouped in a single gggnode, and so on.
Advantages on hierarchical topology are described in the main documentation of the Netsukuku theory.
QSPN assumes two things:
The routing algorithm must be capable of finding the routes without overloading the network of the resources of the node. But since QSPN alone wouldn't be capable of handling the whole network because it would still require too much memory, it is necessary to structure the network in a convenient topology.
Since in each level there is a maximum of 256 (g)nodes, QSPN will always operate on a maximum of 256 (g)nodes. We just need to be sure that the algorithm works as expected on every case of a graph composed by less or equal to 256 nodes.
does. The ANDNA database is included in the Netsukuku system, so each node includes such database that, at worst scenario may occupy 355 kilobytes of memory.
Simplifying, ANDNA works as follows:
To resolve a symbolic name the host applies a function Hash
on behalf. The Hash function returns an address that the host contacts asking for the resolution generated by the hash. The contacted node receives a request, searches in its ANDNA database for the address associated with the name and returns to the applicant host. Recording is in a similar way. For example, let's suppose that the node X should record the address FreakNet.andna, X calculates the hash name and obtains the address 11.22.33.44 associated with node Y. The node X contacts Y requiring registration for 11.22.33.44 hash as its own. Y stores the request in its database and any request for resolution of 11.22.33.44 hash, will answer with the X address.
The protocol is obviously more complex as the system provides a public/private key
to authenticate the hosts and prevent unauthorized changes to ANDNA database. Furthermore, the protocol provides redundancy database to make the protocol resistant to any failures and also provides for the migration of the database if the network topology changes. The protocol does not provide for the possibility of revoking a symbolic name, this after a certain period of inactivity (currently 3 days) is simply deleted from the database. The protocol also prevents a single host to record an excessive number of symbolic names (at present 256 names) in order to prevent spammers to store a high number of terms commonly used or to perform actions of cybersquatting
.
Use
The goal of Netsukuku network is the realization of an infrastructure that not having to rely on the usual Internet infrastructure is more economical and independent, allowing access to network users unable to pay a regular fee to ISPs. The designers of the network think they can achieve this parallel network relying heavily on wireless networks
that have a range of several kilometers.
Another possible use of the Netsukuku network would be the realization of cellular networks without the input of telephone operators. This application starts from the consideration that the network algorithms require reduced resources and therefore can easily run on existing phones, though for real applications in this regard are at present only theoretical.
Related items
External links
Peer-to-peer
Peer-to-peer computing or networking is a distributed application architecture that partitions tasks or workloads among peers. Peers are equally privileged, equipotent participants in the application...
routing system, developed by the FreakNet MediaLab in 2006, created to build up a distributed network, anonymous and censorship-free, fully independent but not necessarily separated from the Internet
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...
, without the support of any server
Server (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...
, ISP
Internet service provider
An Internet service provider is a company that provides access to the Internet. Access ISPs directly connect customers to the Internet using copper wires, wireless or fiber-optic connections. Hosting ISPs lease server space for smaller businesses and host other people servers...
and no central authority. It does not rely on a backbone router, or on any routing equipment other than normal network interface cards.
Basic idea
Netsukuku aims to build a fully distributed network that does not rely on single points of failure as the actual Internet. The main idea is to build a system that can be built and be maintained autonomously. It is designed to handle a very large number of nodes with minimal CPUCentral processing unit
The central processing unit is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system. The CPU plays a role somewhat analogous to the brain in the computer. The term has been in...
and memory resources. This mesh network can be built using existing network infrastructure components such as Wi-Fi
Wi-Fi
Wi-Fi or Wifi, is a mechanism for wirelessly connecting electronic devices. A device enabled with Wi-Fi, such as a personal computer, video game console, smartphone, or digital audio player, can connect to the Internet via a wireless network access point. An access point has a range of about 20...
.
Netsukuku routing protocol builds the appropriate routes that connects all the computer on the mesh, replacing the level 3
Network Layer
The network layer is layer 3 of the seven-layer OSI model of computer networking.The network layer is responsible for packet forwarding including routing through intermediate routers, whereas the data link layer is responsible for media access control, flow control and error checking.The network...
of the OSI model
OSI model
The Open Systems Interconnection model is a product of the Open Systems Interconnection effort at the International Organization for Standardization. It is a prescription of characterizing and standardizing the functions of a communications system in terms of abstraction layers. Similar...
with another routing protocol called QSPN (Quantum Shortest Path Netsukuku).
Also, the domain name system
Domain name system
The Domain Name System is a hierarchical distributed naming system for computers, services, or any resource connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities...
(DNS) is replaced by a decentralised and distributed system called ANDNA (A Netsukuku Domain Name Architecture).
Netsukuku was born from the idea to create a pure net that takes advantage of being distributed for creating and maintaining itself autonomously. The network itself can survive node loss without interrupting the service in the network. Note that for a completely dynamic network, it would require a constant update to the routes and this goes against the scalability and stability requirements of Netsukuku.
Since Netsukuku is not a P2P network built upon the Internet it handles routes differently. It is a physical network and it is a dynamic routing system designed to handle 2128 nodes without any servers or central systems.
How it works
Netsukuku is aimed to be able to run with minimal effort and resources, so instead of solving heavy computational problems with routing calculation and yet be scalable up to 2128 nodes (using IPv6) it uses a routing protocol called QSPN.When a node joins the mesh network, Netsukuku automatically suits and all other nodes come to know the fastest and most efficient routes to communicate with the newcomer. The nodes have no more privileges or restrictions than other nodes; they are all part of the network and contribute to its expansion and efficiency, being all equal.
Whenever the number of its nodes grows, the network changes its shape and the routes keep on improving, automatically removing unnecessary links using disjoint routes. Redundant routes are removed in order to free memory for non-redundant ones. Keeping redundant routes in the kernel routing table isn't optimal, because if one of the routes fail there is a high probability that all the other redundant routes will fail too.
The usual protocols and algorithms for the dynamic routing are usually used to create small and medium networks, like OSPF
Open Shortest Path First
Open Shortest Path First is an adaptive routing protocol for Internet Protocol networks. It uses a link state routing algorithm and falls into the group of interior routing protocols, operating within a single autonomous system . It is defined as OSPF Version 2 in RFC 2328 for IPv4...
, RIP
Routing Information Protocol
The Routing Information Protocol is a distance-vector routing protocol, which employs the hop count as a routing metric. RIP prevents routing loops by implementing a limit on the number of hops allowed in a path from the source to a destination. The maximum number of hops allowed for RIP is 15....
or BGP
Border Gateway Protocol
The Border Gateway Protocol is the protocol backing the core routing decisions on the Internet. It maintains a table of IP networks or 'prefixes' which designate network reachability among autonomous systems . It is described as a path vector protocol...
, and use different algorithms to find the best way to reach a node in a network. These protocols require a relevant CPU and memory consumption, and it is for this reason that the Internet routers are often specially dedicated computers. It would be impossible to adopt one of these protocols to create and maintain a very big mesh network.
Hierarchical topology
Routing tables tend to grow big on huge networks. Even if we store just one route to reach one node and even if this route costs one byte, we would need 1GB of memory for a network composed by 10^9 nodes, the current Internet.For this reason, is necessary to structure the network in a convenient topology. Netsukuku adopts a hierarchical structure. 256 nodes are grouped inside a gnode (group node), 256 gnodes are grouped in a single ggnode (group of group nodes), 256 ggnodes are grouped in a single gggnode, and so on.
Advantages on hierarchical topology are described in the main documentation of the Netsukuku theory.
QSPN
The current version of the protocol is QSPNv2.QSPN assumes two things:
- Mobile nodes aren't supported by the current theory. This is based on the fact that WiFi mesh routers don't change their location very often. This is a valid assumption however; usually the routes are plugged to external antennas or mounted on the roofs.
- The network isn't updated quickly. Several minutes may be required before all the nodes become aware of a change in the network, such as new joined nodes, more efficient routes have become available. However, when a node joins the network it can reach all the other nodes from the very first instant using the routes of his neighbours.
The routing algorithm must be capable of finding the routes without overloading the network of the resources of the node. But since QSPN alone wouldn't be capable of handling the whole network because it would still require too much memory, it is necessary to structure the network in a convenient topology.
Since in each level there is a maximum of 256 (g)nodes, QSPN will always operate on a maximum of 256 (g)nodes. We just need to be sure that the algorithm works as expected on every case of a graph composed by less or equal to 256 nodes.
A Netsukuku Domain Name Architecture
The A Netsukuku Domain Name Architecture (ANDNA) is a distributed system of naming and management of names, that plays the same role the DNSDomain name system
The Domain Name System is a hierarchical distributed naming system for computers, services, or any resource connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities...
does. The ANDNA database is included in the Netsukuku system, so each node includes such database that, at worst scenario may occupy 355 kilobytes of memory.
Simplifying, ANDNA works as follows:
To resolve a symbolic name the host applies a function Hash
Hash
Hash may refer to:* Hash symbol, the glyph #* Hash mark , one of various symbols* Hash , a coarse mixture of ingredients* Hash chain, a method of producing many one-time keys from a single key or password...
on behalf. The Hash function returns an address that the host contacts asking for the resolution generated by the hash. The contacted node receives a request, searches in its ANDNA database for the address associated with the name and returns to the applicant host. Recording is in a similar way. For example, let's suppose that the node X should record the address FreakNet.andna, X calculates the hash name and obtains the address 11.22.33.44 associated with node Y. The node X contacts Y requiring registration for 11.22.33.44 hash as its own. Y stores the request in its database and any request for resolution of 11.22.33.44 hash, will answer with the X address.
Node X
ip: 123.123.123.123
hash(hostname: "FreakNet.andna" ) 11.22.33.44
||
||
Node Y
ip: 11.22.33.44
{ [FreakNet.andna in the database of node Y] }
{hash_11.22.33.44---> 123.123.123.123}
The protocol is obviously more complex as the system provides a public/private key
Public-key cryptography
Public-key cryptography refers to a cryptographic system requiring two separate keys, one to lock or encrypt the plaintext, and one to unlock or decrypt the cyphertext. Neither key will do both functions. One of these keys is published or public and the other is kept private...
to authenticate the hosts and prevent unauthorized changes to ANDNA database. Furthermore, the protocol provides redundancy database to make the protocol resistant to any failures and also provides for the migration of the database if the network topology changes. The protocol does not provide for the possibility of revoking a symbolic name, this after a certain period of inactivity (currently 3 days) is simply deleted from the database. The protocol also prevents a single host to record an excessive number of symbolic names (at present 256 names) in order to prevent spammers to store a high number of terms commonly used or to perform actions of cybersquatting
Cybersquatting
Cybersquatting , according to the United States federal law known as the Anticybersquatting Consumer Protection Act, is registering, trafficking in, or using a domain name with bad faith intent to profit from the goodwill of a trademark belonging to someone else...
.
Use
The goal of Netsukuku network is the realization of an infrastructure that not having to rely on the usual Internet infrastructure is more economical and independent, allowing access to network users unable to pay a regular fee to ISPs. The designers of the network think they can achieve this parallel network relying heavily on wireless networks
Wireless
Wireless telecommunications is the transfer of information between two or more points that are not physically connected. Distances can be short, such as a few meters for television remote control, or as far as thousands or even millions of kilometers for deep-space radio communications...
that have a range of several kilometers.
Another possible use of the Netsukuku network would be the realization of cellular networks without the input of telephone operators. This application starts from the consideration that the network algorithms require reduced resources and therefore can easily run on existing phones, though for real applications in this regard are at present only theoretical.
Related items
- Anonymous P2PAnonymous P2PAn anonymous P2P communication system is a peer-to-peer distributed application in which the nodes or participants are anonymous or pseudonymous...
- B.A.T.M.A.N.B.A.T.M.A.N.The Better Approach To Mobile Adhoc Networking, or B.A.T.M.A.N., is a routing protocol which is currently under development by the “Freifunk”-Community and intended to replace OLSR....
- Crypto-anarchismCrypto-anarchismCrypto-anarchism expounds the use of strong public-key cryptography to bring about privacy and freedom. It was described by Vernor Vinge as a cyberspatial realization of anarchism. Crypto-anarchists aim to create cryptographic software that can be used to evade prosecution and harassment while...
- CypherpunkCypherpunkA cypherpunk is an activist advocating widespread use of strong cryptography as a route to social and political change.Originally communicating through the Cypherpunks electronic mailing list, informal groups aimed to achieve privacy and security through proactive use of cryptography...
- Digital divideDigital divideThe Digital Divide refers to inequalities between individuals, households, business, and geographic areas at different socioeconomic levels in access to information and communication technologies and Internet connectivity and in the knowledge and skills needed to effectively use the information...
- Free Haven Project
- FreenetFreenetFreenet is a decentralized, censorship-resistant distributed data store originally designed by Ian Clarke. According to Clarke, Freenet aims to provide freedom of speech through a peer-to-peer network with strong protection of anonymity; as part of supporting its users' freedom, Freenet is free and...
- I2P - The Anonymous NetworkI2PI2P is a mixed-license, free and open source project building an anonymous network .The network is a simple layer that applications can use to anonymously and securely send...
- Mesh Network
- Tor (anonymity network)Tor (anonymity network)Tor is a system intended to enable online anonymity. Tor client software routes Internet traffic through a worldwide volunteer network of servers in order to conceal a user's location or usage from someone conducting network surveillance or traffic analysis...
- Tor-ramdiskTor-ramdiskTor-ramdisk is an i686 uClibc-based micro Linux distribution whose only purpose is to host a Tor server in an environment that maximizes security and privacy. Tor is a network of virtual tunnels that allows people and groups to improve their privacy and security on the Internet...
- Wireless community networkWireless community networkWireless community networks or wireless community projects are the organizations that attempt to take a grassroots approach to providing a viable alternative to municipal wireless networks for consumers....
External links
Anonymous P2P
An anonymous P2P communication system is a peer-to-peer distributed application in which the nodes or participants are anonymous or pseudonymous...
B.A.T.M.A.N.
The Better Approach To Mobile Adhoc Networking, or B.A.T.M.A.N., is a routing protocol which is currently under development by the “Freifunk”-Community and intended to replace OLSR....
Crypto-anarchism
Crypto-anarchism expounds the use of strong public-key cryptography to bring about privacy and freedom. It was described by Vernor Vinge as a cyberspatial realization of anarchism. Crypto-anarchists aim to create cryptographic software that can be used to evade prosecution and harassment while...
Cypherpunk
A cypherpunk is an activist advocating widespread use of strong cryptography as a route to social and political change.Originally communicating through the Cypherpunks electronic mailing list, informal groups aimed to achieve privacy and security through proactive use of cryptography...
Digital divide
The Digital Divide refers to inequalities between individuals, households, business, and geographic areas at different socioeconomic levels in access to information and communication technologies and Internet connectivity and in the knowledge and skills needed to effectively use the information...
Freenet
Freenet is a decentralized, censorship-resistant distributed data store originally designed by Ian Clarke. According to Clarke, Freenet aims to provide freedom of speech through a peer-to-peer network with strong protection of anonymity; as part of supporting its users' freedom, Freenet is free and...
I2P
I2P is a mixed-license, free and open source project building an anonymous network .The network is a simple layer that applications can use to anonymously and securely send...
Tor (anonymity network)
Tor is a system intended to enable online anonymity. Tor client software routes Internet traffic through a worldwide volunteer network of servers in order to conceal a user's location or usage from someone conducting network surveillance or traffic analysis...
Tor-ramdisk
Tor-ramdisk is an i686 uClibc-based micro Linux distribution whose only purpose is to host a Tor server in an environment that maximizes security and privacy. Tor is a network of virtual tunnels that allows people and groups to improve their privacy and security on the Internet...
Wireless community network
Wireless community networks or wireless community projects are the organizations that attempt to take a grassroots approach to providing a viable alternative to municipal wireless networks for consumers....
- official website
- FreakNet MediaLab
- Netsukuku the Anarchical Parallel Internet
- Draw your katanas, Netsukuku is out there (the Internet is obsolete)
- NTSKK - codice segreto rivoluzione February 2010 Italian Wired Magazine story on Netsukuku
- ANDNA: the distributed hostname management system of Netsukuku
- International Telecommunications Union in the context of "World Summit on the Information Society" (WSIS), which aims to stimulate new projects and partnerships to reduce the digital divide, Netsukuku is taken into account by the ITU, as an initiative concerning the informational infrastructure and communication
- Phantom a project with similar goals