Questions tagged [p2p]

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.

Peers make a portion of their resources, such as processing power, disk storage or network bandwidth, directly available to other network participants, without the need for central coordination by servers or stable hosts. Peers are both suppliers and consumers of resources, in contrast to the traditional client–server model where only servers supply, and clients consume.

The peer-to-peer (P2P) application structure was popularized by file sharing systems like Napster. The peer-to-peer computing paradigm has inspired new structures and philosophies in other areas of human interaction. In such social contexts, peer-to-peer as a meme refers to the egalitarian social networking that is currently emerging throughout society, enabled by Internet technologies in general.

What is it?

This is a special kind of network type ('network topology' is the fancy description). It describes computers that are networked to each other without a central server being in-between.

Why was it developed?

Peer-to-peer networks are very popular with people who want to share files directly with one another. The files do not have to be stored on a central server.

Software has been developed that can even put together a file from bits of the file stored across several 'peers' on the network. For example, BitTorrent can do this. The advantage is that no single computer needs to be over-loaded when a very popular / very large file is requested.

Why is it important?

It is an important development, because it will affect the way the Internet is used in the future.

Many companies want to provide 'video on demand' services, but the problem has been how to provide the vast bandwidth needed when thousands of people are asking for the same video file, e.g., the latest episode of Lost or 24.

Peer-to-peer is an ideal solution to the problem, because hundreds of computers can hold parts of the video and so share the load.

Some companies are calling the peer-to-peer connections they are building 'The Grid' which is a trendier name for the same thing.

What about the future?

In the near future, high definition television programs may be delivered through the Internet and so peer-to-peer may be used.

References

1970 questions
22
votes
4 answers

What's the technology behind live stream sites?

It's amazing to notice that live stream sites like doitlive.tv can deliver videos on very low bandwidth (as low as 25kbps) home connection. Could someone explain me the technology behind such sites and how they managed to deliver under such low…
user372993
  • 358
  • 2
  • 10
22
votes
6 answers

Fully Decentralized P2P?

I’m looking at creating a P2P system. During initial research, I’m reading from Peer-to-Peer – Harnessing the Power of Disruptive Technologies. That book states “a fully decentralized approach to instant messaging would not work on today's…
BrownFox97
  • 393
  • 1
  • 3
  • 9
21
votes
8 answers

Browser to browser communication without a server?

Is there any possible way to have browsers communicating to each other over lan/wan without the use of a server (direct peer-to-peer)?
21
votes
4 answers

Why can't torrent traffic be encrypted?

The goal of this question is that I am just trying to better understand the nature of P2P and networking and security / encryption. I am a front-end web developer and my knowledge of the networking stack is not great if we go lower than HTTP…
21
votes
6 answers

Fast Cross Platform Inter Process Communication in C++

I'm looking for a way to get two programs to efficiently transmit a large amount of data to each other, which needs to work on Linux and Windows, in C++. The context here is a P2P network program that acts as a node on the network and runs…
Stephen Cross
  • 1,003
  • 1
  • 8
  • 19
19
votes
3 answers

Self organizing applications

I have the following requirements for an application that many people will be using in the office - no Server component. All instances of client apps should somehow negotiate between themselves to decide which client will take on the server role. …
AngryHacker
  • 59,598
  • 102
  • 325
  • 594
19
votes
1 answer

what is the difference between orbitdb (based on IPFS) and gun ?

I'm looking for a decentralized database for my Dapp. I found two helpful solutions orbitdb and gun but I couldn't realize the main difference and which one is more suitable for a social-media-like application that use ethereum smart contract.
maroodb
  • 1,026
  • 2
  • 16
  • 28
19
votes
4 answers

Why has JXTA been abandoned? Any alternatives out there?

P2p/Grid Computing seem like a promising concepts. JXTA looks like the only all in one framework for it. Is there a reason this field is so sparsely pursued?
Stephen K
  • 317
  • 3
  • 8
18
votes
2 answers

Automatic authentication for Android WiFi Direct

In Android ICS, Wireless P2P (WiFi Direct) API is provided. I tried to develop an Application which can connect 2 phones via Wireless P2P automatically if the MAC address match. From SDK documentation, I have to following steps: Turn on WiFi Direct…
Calvin
  • 3,302
  • 2
  • 32
  • 41
18
votes
3 answers

Why a STUN Server Needs Two Different Public IP addresses

I have took a look to STUN Server settings in openfire, and this statement from there: "In order to act as a STUN server, two different public IP addresses on the same machine are required, as well as two different port numbers for each IP." I have…
metdos
  • 13,411
  • 17
  • 77
  • 120
18
votes
3 answers

Android, NSD/DNS-SD: NsdManager unreliable discovery and IP resolution

In the course of the last weeks, Android's NSD implementation is making me go mad: From a user's point of view, the following problems arise: Devices discover each other in a completely non-deterministic fashion. If I launch my NsdManager-based…
Newtron
  • 416
  • 3
  • 12
18
votes
4 answers

The easiest DHT to implement

Which Distributed Hash Table (DHT) is easiest to implement in Python? Any good example that is not bloated? I not am looking for a definition of DHT because I am more oriented and focused on design and implementation of such.
mtasic85
  • 3,905
  • 2
  • 19
  • 28
17
votes
1 answer

Is there any way to run a server or peer-to-peer from a browser?

The title basically says it all. I'm aware this can't be done using traditional means. I'm not aware of any way to do it using Web Sockets, though I've never built anything more than toy apps with them. It is fine if the solution is…
Alex Churchill
  • 4,887
  • 5
  • 30
  • 42
17
votes
2 answers

What techniques are available to do P2P in the browser?

What options does a web developer currently have for implementing client-side peer-to-peer systems in the web browser? Some hypothetical examples might be a file-sharing service that bypasses the web-server after clients find eachother, or a chat…
jberryman
  • 16,334
  • 5
  • 42
  • 83
15
votes
3 answers

Where can I find a list of bittorent dht bootstrap nodes?

Using my google-fu I was able to find only a few nodes: router.bitcomet.com, router.utorrent.com, router.bittorrent.com Is there somewhere a list of all bootstap nodes which I'm not aware of? Where do the torrent client developers get addresses of…