Avalanche (P2P)

Last updated

Avalanche is the name of a proposed peer-to-peer (P2P) network created by Pablo Rodriguez and Christos Gkantsidis at Microsoft, which claims to offer improved scalability and bandwidth efficiency compared to existing P2P systems.

The proposed system works in a similar way to BitTorrent, but aims to improve some of its shortfalls. Like BitTorrent, Avalanche splits the file to be distributed into small blocks. However, rather than peers simply transmitting the blocks, they transmit random linear combinations of the blocks along with the random coefficients of this linear combination - a technique known as 'network coding'. This technique removes the need for each peer to have complex knowledge of block distribution across the network (an aspect of BitTorrent-like protocols which the paper [1] claims does not scale very well).

Bram Cohen, the creator of BitTorrent, criticized the proposed Avalanche system in a post to his blog. [2] He mentions inaccuracies in the paper's analysis of the BitTorrent protocol (some of it being based on a 4-years-out-of-date version of the protocol which used an algorithm that "sucks") and describes the paper as "garbage."

Related Research Articles

Peer-to-peer Type of decentralized and distributed network architecture

Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the application. They are said to form a peer-to-peer network of nodes.

Distributed hash table Decentralized distributed system with lookup service

A distributed hash table (DHT) is a distributed system that provides a lookup service similar to a hash table: key-value pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key. The main advantage of a DHT is that nodes can be added or removed with minimum work around re-distributing keys. Keys are unique identifiers which map to particular values, which in turn can be anything from addresses, to documents, to arbitrary data. Responsibility for maintaining the mapping from keys to values is distributed among the nodes, in such a way that a change in the set of participants causes a minimal amount of disruption. This allows a DHT to scale to extremely large numbers of nodes and to handle continual node arrivals, departures, and failures.

BitTorrent is a communication protocol for peer-to-peer file sharing (P2P), which enables users to distribute data and electronic files over the Internet in a decentralized manner.

Bram Cohen American programmer and author of the BitTorrent protocol

Bram Cohen is an American computer programmer, best known as the author of the peer-to-peer (P2P) BitTorrent protocol in 2001, as well as the first file sharing program to use the protocol, also known as BitTorrent. He is also the co-founder of CodeCon and organizer of the San Francisco Bay Area P2P-hackers meeting, was the co-author of Codeville and creator of the Chia cryptocurrency which implements the proof of space-time consensus algorithm.

Mnet is software to run a distributed peer-to-peer distributed data store for file sharing purpose.

A distributed data store is a computer network where information is stored on more than one node, often in a replicated fashion. It is usually specifically used to refer to either a distributed database where users store information on a number of nodes, or a computer network in which users store information on a number of peer network nodes.

BitComet

BitComet is a cross-protocol BitTorrent, HTTP and FTP client written in C++ for Microsoft Windows and available in 52 different languages. Its first public release was version 0.28. The current BitComet logo has been used since version 0.50.

BitTorrent is an ad-supported BitTorrent client developed by Bram Cohen and Rainberry, Inc. used for uploading and downloading files via the BitTorrent protocol. BitTorrent was the first client written for the protocol. It is often nicknamed Mainline by developers denoting its official origins. Since version 6.0 the BitTorrent client has been a rebranded version of μTorrent. As a result, it is no longer open source. It is currently available for Microsoft Windows, Mac, Linux, iOS and Android.

A BitTorrent tracker is a special type of server that assists in the communication between peers using the BitTorrent protocol.

This is a timeline of events in the history of networked file sharing.

Network coding is a field of research founded in a series of papers from the late 1990s to the early 2000s. However, the concept of network coding, in particular linear network coding, appeared much earlier. In a 1978 paper, a scheme for improving the throughput of a two-way communication through a satellite was proposed. In this scheme, two users trying to communicate with each other transmit their data streams to a satellite, which combines the two streams by summing them modulo 2 and then broadcasts the combined stream. Each of the two users, upon receiving the broadcast stream, can decode the other stream by using the information of their own stream.

Protocol encryption (PE), message stream encryption (MSE) or protocol header encrypt (PHE) are related features of some peer-to-peer file-sharing clients, including BitTorrent clients. They attempt to enhance privacy and confidentiality. In addition, they attempt to make traffic harder to identify by third parties including internet service providers (ISPs). However, encryption will not protect one from DMCA notices from sharing not legal content, as one is still uploading material and the monitoring firms can merely connect to the swarm.

Rainberry, Inc., formerly known as BitTorrent, Inc., is an American company that is responsible for the ongoing development of the BitTorrent peer-to-peer protocol, as well as the ongoing development of μTorrent and BitTorrent Mainline, two clients for that protocol. Files transferred using the BitTorrent protocol constitute a significant slice of all Internet traffic. At its peak, 170 million people used the protocol every month, according to the company's website. The company was founded on September 22, 2004 by Bram Cohen and Ashwin Navin. In 2018, the company was acquired by cryptocurrency startup TRON, and Bram Cohen left the company.

The following is a general comparison of BitTorrent clients, which are computer programs designed for peer-to-peer file sharing using the BitTorrent protocol.

This is a glossary of jargon related to peer-to-peer file sharing via the BitTorrent protocol.

libtorrent

libtorrent is an open-source implementation of the BitTorrent protocol. It is written in and has its main library interface in C++. Its most notable features are support for Mainline DHT, IPv6, HTTP seeds and μTorrent's peer exchange. libtorrent uses Boost, specifically Boost.Asio to gain its platform independence. It is known to build on Windows and most Unix-like operating systems.

Torrent poisoning is intentionally sharing corrupt data or data with misleading file names using the BitTorrent protocol. This practice of uploading fake torrents is sometimes carried out by anti-infringement organisations as an attempt to prevent the peer-to-peer (P2P) sharing of copyrighted content, and to gather the IP addresses of downloaders.

Pablo Rodriguez (computer scientist)

Pablo Rodriguez is a Spanish computer scientist and researcher, who is best known for his research in the mid-2000s on peer-to-peer file sharing and user-generated content. After working for technology and communications companies AT&T and Microsoft Research, Rodriguez returned to Spain in 2006 to become the research director for telecommunications provider Telefónica. In 2010 took a position as an adjunct professor at Columbia University in New York.

μTorrent Proprietary adware BitTorrent client

μTorrent, or uTorrent is a proprietary adware BitTorrent client owned and developed by Rainberry, Inc. With over 150 million users. It is the most widely used BitTorrent client outside China; globally only behind Xunlei. The "μ" in its name comes from the SI prefix "micro-", referring to the program's small memory footprint: the program was designed to use minimal computer resources while offering functionality comparable to larger BitTorrent clients such as Vuze or BitComet. μTorrent became controversial in 2015 when many users unknowingly accepted a default option during installation which also installed a cryptocurrency miner. The miner was removed in later versions, but had already done irreversible damage to μTorrent's reputation.

Tron (cryptocurrency) Open-source blockchain computing platform

TRON is a decentralized, open-source blockchain-based operating system with smart contract functionality, proof-of-stake principles as its consensus algorithm and a cryptocurrency native to the system, known as Tronix (TRX). It was established in March 2014 by Justin Sun and since 2017 has been overseen and supervised by the TRON Foundation, a non-profit organization in Singapore, established in the same year. It is originally an Ethereum-based ERC-20 token, which switched its protocol to its own blockchain in 2018.

References

  1. Avalanche: Peer-Assisted Content Distribution. Pablo Rodriguez, Microsoft Research
  2. Cohen, Bram (20 June 2005). "bramcohen: Avalanche". Bram Cohen's Journal. Archived from the original on 16 December 2012. Retrieved 2012-10-24.