Peer to Peer Network: A Lesson in P2P Networking Tech

Komodo PlatformDecember 19, 2019

A peer-to-peer network results when two or more computers establish a connection to communicate and share information without going through a central server. A peer to peer network can be small, as in the office of a small business, or it can be global, as with a major blockchain's network. In bypassing any central intermediary, P2P networks operate in a decentralized environment. 

With the advent and growth of blockchain technology over the past decade, awareness of P2P infrastructure continues to grow, especially when it comes to fintech and DeFi applications.

This article will explain how peer-to-peer networks work, why they’re so important, and some of the benefits that this emerging P2P network model can offer to existing systems and processes.

peer to peer network banner image

Client-Server Network Infrastructure

While peer-to-peer networks have become increasingly prominent in recent years, the vast majority of networks still utilize client-server infrastructure. These networks connect multiple clients to a single server. In most cases, this connection is established over the internet, but it may also be through a physical connection via Ethernet cables or other hardwiring setups.

Using this architecture, data is stored on the server-side only, centralizing network functionality. The server receives queries from other computers in the network, known as clients, and fulfills the requests. Clients in the network may be requesting data, such as a folder or file, or they may be requesting permission to perform some specific operation, like installing a program or application.

Client-server networks remain susceptible to hacks and technical glitches, as the model operates with a single point of failure. Once a hacker successfully gains access to the central server, they can take down the entire network or extracting enormous amounts of sensitive data.

Reflecting this reality, once perceivably secure networks continue to report significant security vulnerabilities. For instance, over 100 million Capital One customer accounts and credit card applications were accessed by hackers. This was possible because all customer data was stored in centralized servers, a consequence of the server-client architecture.

In another example, a vulnerability in the Equifax platform exposed the personal information of 143 million Americans over several months. Coupled with additional high-profile breaches at corporations like Target and Facebook, it's apparent that server-side data storage is far from air-tight. Further, the frequency of these events suggests companies are ill-equipped to store data securely, or simply have no incentive to do so.

In most cases, these massive security breaches generate few legal consequences. Other than bad publicity, companies pursue business-as-usual despite ongoing negligence. For many, this reality is problematic, and P2P networks offer a viable alternative.

Peer to Peer Network Infrastructure

In contrast to client-server networks, peer-to-peer networks do not rely upon a central server to share data. Instead, each computer in the network, known as a "node," connects directly with every other node in the network.

In this way, all nodes in a peer to peer network operate in a distributed manner. Every node acts as both a server and a client, providing data to other nodes when possible and requesting data from the network when needed. The responsibility of sharing data and performing operations is shared equally among all nodes in a peer to peer network.

Because peer to peer network infrastructure allows for the sharing of data in the absence of central oversight, they have greater network stability than a traditional server-client network. Peer to peer networks have no single point of failure, so disruption of one (or several) node(s) is of little consequence to the overall network. Unlike client-server networks, hundreds or even thousands of machines can step in to pick up the slack, virtually eliminating the risk of downtime. It would require a concerted effort from hackers to take down every P2P machine simultaneously— a much more challenging feat than attacking a single server.

Despite the relatively low profile of peer-to-peer networks today, they have been around for several decades and many continue to function today.

An Overview Of Early Peer to Peer Networks

Born in the earliest days of the internet, peer-to-peer networks have since given rise to a myriad of protocols and applications that have changed the way the world shares information. In this section, we'll take a look at some of the world's first peer to peer networks.

ARPANET 

The Advanced Research Projects Agency Network (ARPANET) was originally established in 1969 to connect the UCLA, Stanford Research Institute, UC Santa Barbara, and the University of Utah. Operating as a packet-switching network (think compressed files sent over a network and decompressed on the other side), the ARPANET was the first platform to implement the TCP/IP protocol suite. In 1990, the ARPANET was formally decommissioned in the wake of a commercialized world wide web— also known as the Internet.

ARPANET peer to peer network map

Source: The Daily Swig

Computer Network (CNET)

Emerging soon after LAN technology, CNET joined the interconnectivity movement in 1977. Although it was initially developed to connect groups of Datapoint 2200 terminals to a shared floppy disk system at Datapoint Corporation, it served as another building block for the entire ecosystem.

User Network (Usenet)

In 1979, Usenet emerged as a globally distributed discussion system built on Unix-to-Unix dial-up infrastructure. As a precursor to modern online forums, Usenet resembles a bulletin board system (BBS), where discussions are threaded. However, unlike web forums, Usenet did not have a central server and operated in the absence of a dedicated administrator. Today, the Usenet protocol is usually employed to transfer files, deviating from its initial use as a platform for exchanging news.

Napster 

Many consumers still recognize the Napster brand after it burst onto the P2P file-sharing scene in 1999. Using Napster, users shared digital audio files encoded in MP3 format. Despite the many copyright hurdles the company has seen since the platform continues to offer three music-focused online services. Bought out by Rhapsody in 2011, Napster became an online music store, but Apple had already accumulated significant market share.

For many, Napster was the first P2P music sharing platform, generating spin-off companies like AudioGalaxy, Kazaa, and Limewire, and promoting the next era of peer to peer network architecture.

Gnutella

Gnutella came to be in response to the limitations of the central indexing servers, often resulting in service interruptions. By allowing users to find and connect with each other remotely, Gnutella overcame this vulnerability, ushering in the next generation of file-sharing. By employing a query flooding model, the Gnutella protocol broadcast each search to a successively wider network of machines. Although less efficient than previous, more centralized P2P iterations, the Gnutella protocol was instrumental in shifting away from centralized architecture.

BitTorrent

BitTorrent is a communication protocol built using a distributed hash table (DHT) functionality. This networking layer facilitates P2P file sharing, enabling the distribution of data and electronic files over the internet. This was one of the first steps toward building a decentralized internet.

The BitTorrent protocol is unique in that it enables the distribution of shared files across any user that has previously downloaded a file, or is in the process of doing so. Because the BitTorrent protocol breaks up and distributes files in hundreds of smaller pieces, network users can start sharing a file even before the download is complete.

Similar in function to BitTorrent, Komodo’s Market Maker 2 is a peer to peer networking layer that uses a DHT. Market Maker 2 implements the libtorrent DHT. It provides the underlying protocol upon which AtomicDEX, Komodo’s third-generation decentralized exchange, is built. 

Blockchain Technology (Bitcoin)

One of the most recent iterations of P2P networking comes in the form of blockchain technology. These decentralized networks operate in the absence of a central authority, relying instead on consensus mechanisms like Proof of Work (PoW). These consensus mechanisms enable trustless oversight on distributed networks, completely removing intermediaries.

Decentralized Storage Networks (DSNs)

As momentum builds behind blockchain technology, Decentralized Storage Networks (DSNs) have come to represent the latest iteration of distributed architecture. In challenging incumbents like DropBox, OneDrive, and Amazon, DSNs aim to give users control over their data by decoupling it from large, centralized services.

In doing so, users maintain data sovereignty, further protecting against the use and resale of their personal information across vulnerable platforms. As the rise of decentralized cloud storage services continues, the complete elimination of data breaches is within reach.

Although DSNs like Sia, Storj, and Filecoin each take a unique approach to decentralized data storage, the underlying principles remain the same: to effectively build a decentralized internet. Only then can user data be deployed through cohesive, user-centric network architecture.

As peer to peer solutions continue to evolve, it's apparent that many believe in their transformative potential. But what are the primary benefits driving this interest? In general, operational efficiency and cost savings dominate the narrative. Let's take a closer look.

The Benefits of Peer to Peer Networks

Recall that P2P and client-server networks operate under decentralized and centralized conditions, respectively. Because of this, peer to peer platforms offer unique benefits in comparison to their more conventional and centralized counterparts.

Scalability

As mentioned, on P2P networks, all resources and content are shared by each participant or node. To clarify, this means that peer to peer networks do not utilize a dedicated server computer. As such, each computer on the network can act as both a server and a user workstation, meaning that scalability is virtually unlimited.

This arrangement is unlike client-server architecture, where a central server deploys all resources to independent clients or users. As such, the network can’t be scaled unless this overseer decides to expand the number of machines on the server-side of the model. One centralized server can only host so many clients before bottlenecks greatly decrease performance.

Cost Savings

When setting up central server computers, the hardware and software costs are understandably high. One party is responsible for establishing the infrastructure necessary to operate the entire network. In contrast, a P2P system can leverage the power of every computer on the network, spreading the costs out over more users.

Reliability

Recall that client-server networks rely on a single source of information. As such, if the central server goes down, the whole system is naturally affected. In contrast, P2P networks operate under a distributed model, making them more resilient in the face of node failures or connectivity issues. If one attached node goes down, several others can pick up the slack. As such, the network continues to operate, eliminating downtime.

Security

Recall the high-profile security breaches that continue to plague centralized client-server networks. Because companies collect vast amounts of user data, these events are likely to continue. P2P networks can be employed to combat this trend, circumventing the need for a central server.

The Challenges of Peer to Peer Networks

Although peer-to-peer networks offer several benefits over client-server alternatives, there are also downsides to employing this distributed network structure.

Compatibility

On centralized client-server networks, interoperability between nodes isn't a requirement given the reliance on only one server. Because P2P networks operate through every computer on the system, they are typically heterogeneous in terms of memory, disk space, processor speed bandwidth, uptime, and idle time.

As such, P2P networks must enact functions that enable the seamless integration of these diverse nodes. As broadband speeds continue to improve, more users are relying on P2P protocols to share large files, including multimedia, applications, and other data-heavy items. As a result, maintaining interoperability is more important than ever.

User Adoption

Peer to peer networks rely on continuing user adoption to function. A critical mass of network peers is necessary to overcome this problem: users only engage with a service if it's popular, but it only becomes popular if people are using it.

Further, a P2P network requires that at least one node holds requested data, and that node requires a connection to the requesting user. As such, less popular files may not be easily accessible on P2P networks, while more popular content is readily available.

Peer to Peer Networks and Blockchain Technology

Blockchain technology is a protocol layer that builds on peer to peer network infrastructure. Through the use of cryptographic hash functions, blockchain networks enhance the functionality of legacy P2P platforms. As a decentralized solution, blockchain technology protocols require all nodes to keep a copy of network transactions, otherwise known as the ledger.

Because each node is responsible for validating network transactions, a consensus mechanism secures the network. Transactions can only occur once consensus is reached, which occurs through the process known as cryptocurrency mining for Proof of Work blockchains or the process of staking for Proof of Stake blockchains. Miners and stakers are responsible for broadcasting information to the network and recording these instances to the blockchain.

With Komodo's Antara Framework, a toolkit for custom blockchain development, developers can launch an independent Smart Chain that operates with its own peer to peer network. Every Smart Chain launched with Komodo's technology has its own network and consensus rules. The consensus rules are also customizable. Developers can choose between Proof of Work (PoW), Proof of Stake (PoS), or any combination of the two.

To learn more about Komodo's custom blockchain solutions, join the Komodo community on Discord and sign up for the monthly newsletter to get all the latest updates about Komodo's development.