IYSC Forum

News:

Welcome to the International Youth Scientific Congress Forum

P2P networks

P2P networks
« on: 25 July , 2019, 20:49:26 pm »
P2P technology

A P2P (Peer-to-Peer) network is one of the most important and popular ways of sharing all kinds of materials among Internet users, since there are neither clients nor servers, as the computers themselves function at the same time as clients and servers with respect to the other connected computers. This gives a flexibility that would be impossible to archive otherwise.

P2P networks allow the exchange of direct information, in any format, between interconnected computers as we can see in this image. https://ibb.co/bgpP84f

Another advantage of these networks is that they take benefit and optimize in the best possible way the use of the bandwidth of the other users of the network by means of the connectivity between them, obtaining much more performance in the connections and transfers, which translates into better file transfer speeds than with some conventional centralized methods.


Types of P2P networks

We can classify P2P networks according to their degree of centralization:
  • Centralized P2P: These are those that are based on a type of monolithic architecture, this means that all content shared on the network is indexed by the exchange of a single server. This has the function of a link point between all the computers or nodes that participate in the network. The biggest disadvantage of these networks is the little privacy it offers to users and has some errors due to the unique centralization, something that can also cause problems with bandwidth consumption
  • Pure P2P:These are networks whose operation is completely decentralized, which allows greater versatility and robustness. These networks use each of the nodes as a server, also using an amount of bandwidth of each of them, so it becomes a much more stable and configurable network, since all users interact directly with the rest of people in the network.
  • Hybrid P2P: As the name implies, they are characterized as a mixture of centralized and pure networks. They are semi-centralized networks because they are controlled through a central server that has the role of hub and is responsible for managing bandwidth, making it possible for the nodes to access the material without the need to store user information. An example of this type of networks is Torrent, in which the shared resources are managed by a group of servers that manage the operation of the network.
Here you can see how they look like. https://ibb.co/q97S8Z7


History of P2P networks

In 1996, Hotline Connet, the first application developed with P2P networks on Mac OS operating systems, was released. Basically it was a platform that allowed the distribution of content at university and business level.
However, a short time later this tool began to be used to share any type of material among its users, reaching a huge audience. With the passage of time and thanks to the decentralization and the appearance of a large number of applications created to use P2P networks in any type of operating system, the action of sharing files through a P2P network ended up becoming a daily act for a large part of Internet users.

Some of the most popular examples of peer-to-peer networks are eMule, Ares and BitTorrent.


If you have more information or any questions, do not hesitate to leave it and I will try to answer the maximum possible.


Hope to read you soon,

David Corral Pazos



Re: P2P networks
« Reply #1 on: 26 July , 2019, 17:40:38 pm »
Good afternoon everyone,

David has introduced a very interesting concept which we all have to remember so that we understand how do blockchains work and why are them so secure, centralization and decentralization.

He has talked about different types of P2P networks depending on their grade of decentralization, as we all know Blockchain is a P2P system which is normally decentralized, however we can also find different types of Blockchain. Depending on what can users see or how much can they participate in the network we can find public, private or hybrid blockchains. When explaining these different systems, we have to take in account how do they distribute authority and in consequence how decentralized are them.

David has talked about three types of P2P networks, I’ll talk about different types of Blockchain which, as you will see, are very related to what he has explained. I will also add some web pages where you will find more information and some examples of public, private and hybrid or federated blockchains.

Public Blockchain: they are based on consensus mechanisms such as Proof of Work or Proof of Stake among others, they are open source and "permisionless", anyone can participate in them. This means that any individual can download the code and execute it on their device and start functioning as a Blockchain node (validating transactions and participating in the consensus process). Being public allows anyone to read the transactions (which are always anonymous) in the block explorer.

  • Examples: Bitcoin, Ethereum, Dash, Litecoin...
Private Blockchains: they are centralized and are ruled by a central authority or organization. These are "permissioned", the permission to write code or read the Blockchain is decided by a company. Unlike public, these are not controlled by consensus algorithms, however, they use voting systems or other mechanisms (allowing more speed and agility in the process). However, the decentralization feature disappears, leading to a series of security problems.

  • Examples: Multichain, MONAX...
Federated Blokcchians: federated or consortium blockchains have similar characteristics as private ones, unlike these are run by multiple organizations so that these companies function like nodes, reading and writing in the blockchain. They are normally used by banks.

  • Examples: R3 (banks), EWF...
Difference between private and public Blockchain: https://www.ibm.com/blogs/blockchain/2017/05/the-difference-between-public-and-private-blockchain/ (IBM)

Consortium Blockchains: https://openledger.info/insights/consortium-blockchains/ (Openledger)

Analysis of the different types of Blockchain: https://dragonchain.com/blog/differences-between-public-private-blockchains (dragonchain)

I hope you find this information interesting and with David’s and mine you can get to know Blockchain technology perfectly well. As my partner said, if you have any doubt just ask and someone will answer. Hope to read you soon!

Best regards,
Manuel Cortés (Spain)

Re: P2P networks
« Reply #2 on: 27 July , 2019, 21:43:35 pm »
Good afternoon everyone,

I just want to add a little more information about the characteristics of private and public blockchain.

PRIVATE BLOCKCHAIN


Currently there is no publicly known private blockchain, so we cannot explain exactly what they are, but that does not mean they cannot exist.

Private block chains also known as closed chains, are those that are owned by a person or institution, it is for this reason that it is not allowed for any person to enter the community and add blocks to the chain. In fact, to be able to enter one of these networks, it is necessary to receive an invitation from the developers of the chain.

Today, most Blockchain technology specialists agree that private blockchains are those in which the consensus and / or participation process is limited by the chain's own creators. In addition, the reading of the information recorded in the blockchain may also be limited to certain people, thus being, as I have said before, a private chain in which only some people have access to it. The consequence of this is that it is not a decentralized system, since there is a certain level of centralization of power, although that level of centralization is given by selecting the participants in the network.

PUBLIC BLOCKCHAIN

Public blockchains are those in which there are no restrictions to participate, both in reading and writing your information.

You can easily enter and leave them, they are transparent and carefully constructed to work in an environment of limited trust.

They have the potential to replace many of the functions of financial institutions, changing the way the financial system works.

Public chain protocols are based on Open Source consensus algorithms and without permissions, so:
• Anyone can download the code and start running a public node on their device, validating transactions on the network, thus participating in the consensus process and adding new blocks to the chain.
• Sending transactions through the network is free.
• The reading of the transactions is open and free for everyone, the transactions are transparent but anonymous.
• There is no need to maintain servers or system administrators and this reduces maintenance costs of decentralized applications (dApps).

The main disadvantage of public blockchain is that it takes a lot of computational process to reach a consensus, and ensure that all nodes are synchronized.
One of the best known examples of public blockchains are Bitcoin, Ethereum, Monero and Litecoin.

I really hope you can use this information in your work!

Kinds regards,
David Corral Pazos

Re: P2P networks
« Reply #3 on: 29 July , 2019, 12:20:10 pm »
Good morning,

David has explained really well and with lots of details what are public and private blockchains and how do they work. In my previous message I already introduced the concepts of public and private systems, but I also mentioned one last kind of network which has different names: I am talking about FEDERATED Blockchains, also known as consortium networks. I will explain what this system is and show its advantages and disadvantages, trying to develop a detailed analysis and arrive to a conclusion about the implementation of this type of Blockchain.

David and me have explained what public and private Blockchains are, you might be wondering where federated Blockchain falls in this situation. Well, these new systems work with the best of both worlds, a combination of the advantages and properties of the previous networks.
If we want to understand these systems easily, we have to think of a private Blockchain and then add a significant difference. Federated Blockchains will be capable of removing the sole organization influence in the network, this means that multiple entities will be using the Blockchain and provide decentralization. Imagine a network where several organizations could exchange information and work at the same time, that is what consortium systems will allow us to do.

But, why should organizations use this type of Blockchains instead of public systems?
Public Blockchains have a good level of security but they lack speed and efficiency when too many users join the network. On the other hand, Private Blockchains offer a more scalable and faster solution, but they are not fully decentralized.
Let's see what benefits can we get with this type of consortium:

  • Faster speed: Something that has been stopping Public Blockchain's development is the slow speed of transactions, when there are too many users connected the network slows down. In the federated Blockchains not everyone can transact or validate a block at the same time. So, when a selected group does it the transaction becomes too fast. In this network a transaction would only take 100x msec to be authorized.
  • Scalability: The number of nodes needed for validation is always controlled, the network will decide which members are joining the network and when can they start validating transactions.
  • Low transaction costs: As transaction speeds and difficulty in the process decrease then the overall price will be reduced considerably.
  • Low energy consumption: While public Blockchains run on energy consuming consensus algorithms, federated systems only use a selected group of nodes to validate. This way, the complexity issue is lower and the typical consensus algorithms are not needed, it is used a voting system to validate nodes. This doesn't require much computational power and saves a lot of energy.
  • No risk of 51% attack: federated Blockchains won't allow random strangers in the network, this way integrity in the system is maintained and attacks are less probable.
When should we use federated Blockchains?

  • Insurance claims: People have to deal with lots of papers and information when claiming an insurance and the process takes too much time, this could cause more issues. Federated Blockchains could solve this problem by accelerating the process and connecting any organization that had to exchange information.
  • Financial services: A federated blockchain would provide "no double spending" and "zero forgeries" which are the two basic rules of a financial system and it would also provide the privacy level for important information.
  • Supply chain management: the problem with supply chain management occurs in the transferring process when products can be altered at some point, federated blockchains could solve the issue of confidentiality which a typical blockchain platform can't handle.
I hope you find this information useful and interesting, let me know if you have any doubt :)

Best regards,
Manuel Cortés (Spain)

Re: P2P networks
« Reply #4 on: 29 July , 2019, 12:55:08 pm »
Good afternoon everyone,

I just want to add a little more information, focusing on the differences between a public and a public blockchain:

The main difference between a public and a private blockchain lies in the way powers are distributed.

A public blockchain has a better result with the principles of decentralization, while in a private blockchain this term is quite limited. In this one, there is one or several parts responsible for managing the network; so that the presence of intermediaries for the validation of the information gives it the characteristic of centralized.

In an open blockchain all members of the network have access to the information of the blocks and can add more. However, in a private blockchain it is the administrator who chooses who can join and participate in the chain, allowing only authorized people to exchange information.
Another very significant difference is that to enter a public blockchain you only need an internet connection, while to join a private blockchain you need an invitation from the administrator or owner of the network.

In a public blockchain there is not a single person who is responsible for the administration of the network, it is maintained by all members, using consensus mechanisms to improve security and decentralization. On the other hand, in a private blockchain, these consensus mechanisms also exist, but they are managed by a person in charge of assigning mining rights to certain users. This makes it easier for a public blockchain to carry out the mining process to verify transactions and add them to the blockchain, since anyone since anyone who has the necessary computing conditions can carry out this process. While in a private blockchain this is much more complex, because, as I said before, it is the administrator who decides who can carry out the mining process.

Do not forget to visit the page that Manuel has talked (IBM’s website). In addition, I leave here other pages in case you want to find more information.

https://www.bmc.com/blogs/public-vs-private-blockchain/
https://blog.liquid.com/whats-the-difference-between-public-and-private-blockchains
https://www.youtube.com/watch?v=pjlcHhaUFVk

Kinds regards,
David Corral Pazos