U
U
Uno2016-08-14 01:29:23
Software design
Uno, 2016-08-14 01:29:23

What is the architecture of P2P applications?

How is the architecture of P2P applications arranged? I have superficial knowledge, like that they do not have a central server, etc.
Interested in this:
Having created such an application, I will distribute it over the network. Naturally, not every second for a million computers, gradually. Each client will need to know the addresses of other clients. How can they get each other's up-to-date list? If the application is truly decentralized, it shouldn't have any peer that will always know the list is more up-to-date than others, right?
Or all the same, there must be some dominant peers in the network? Then if they somehow fall at once, the whole system should choose other dominants by itself?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
N
nirvimel, 2016-08-14
@Noizefan

How is the architecture of P2P applications arranged?

The idea on which most P2P networks are built is called DHT (Distributed hash table) ( rus ), the reference implementation of this idea is Kademlia ( rus ).
There is no general list that would list all the peers in the network. It is impossible to instantly (in one request) get information about the peer of interest (does it exist at all? is it active? what is its real IP for connection), but this information can be obtained from the network in several queries: Who knows X? Who knows someone who might know X? Who knows someone who might know someone who might know X? etc.
Exactly.
Not dominant, but rather "original", whose addresses are hardcoded in each instance of the client software. They provide a so-called bootstrap for new peers when they first enter the network. Later, while in the network, the peer keeps in memory the necessary set of routes (a very small fraction of the entire network) to maintain contact with the network and no longer needs the presence and functioning of the "original" ones.
Their fall will not affect the functioning of the network and the peers already connected to it. But new peers "cold" will not be able to connect in any way if none of the "original" peers is available.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question