Sharing data peer to peer without a central server
Posted by johann | Filed under Cognitive Science, Science, Software
Recently a friend informed me of a new bittorrent client, Tribler, that does not require the typical central tracker server as is normal for Bittorrent networks. I have not tried the software yet, but it got me thinking how they would achieve this and then I found a research project that explained some of the same concepts researched by the military to have a truly decentralized volatile network which shares information.
Neuroplasticity – augmented brain function recovery
We see that people with brain injurues are able to recover in certain circumstances. Age of the person, the severity and local of the injury often determine how well the brain functions when an area is damaged and thus it’s information for that matter is lost. Neuroplasticity is the ability of the human brain to change as a result of experiences, thus the brain is ‘plastic’ and ‘malleable’ and not a immutable structure after childhood development, thus the brain is able to adapt and make up for lost information by being able to change it’s connections.
See also Treatment of learning difficulties using brain exercises to help with the language and learning deficits of dyslexia.
Recover data from a failing hard drive
In Computer engineering RAID, an acronym for Redundant Array of Independent Disk, provides a failsafe for data loss. Not all RAID configurations lend itself to this, but it is an architecture with faul tolerances build in.
Decentralized volatile network redundancy
So getting to a network, being it a network of computers on the internet or devices in a village in Afganistan, loss of one of the nodes in the network should not result in a loss of information. How can once accomplish this without a central server?
RAMBO – Reconfigurable Atomic Memory for Basic Objects
The full research paper can be found here: [PDF format]Reconfigurable Atomic Memory for Basic Objects
It presents an algorithm that can be used to implement atomic read/write shared memory in a dynamic network setting, in which participants may join or fail during the course of computation.
For example, suppose soldiers in Afghanistan are trying to secure a small village in hostile territory. Various teams with different focus and application will visit the village over a span of weeks collecting information and constantly updating the situation and status. Now there is no central server like in a normal network to connect to, so in order to share information RAMBO multiple copies of the information is transmitted to other devices on the network, but not all the devices, just a simple majority of them.
This is what makes Twitter a very useful tool during political upheaval as we saw in recent events during the Iranian elections. The power of the “retweet” gave a distributed network where just one tween had to get a message through and it could be spread throughout the world by other more redundant sources.
The age of decentralized networks is still in it’s infancy and research such as RAMBO and the power of Social Media have come to expose it’s power.