Let’s study the concept of P2P&Hole-punching!

GBT
Grabity
Published in
5 min readAug 2, 2019

Hello. Communities.

In advance, I am thankful for you all to visit our blog to study Blockchain.

To start

I guess it was a bit hard time for us to see some graph and equations from last posting.

If you did not see last post yet, you can check on the link below. But Don’t worry today post is noting related to last one.

This time I tried to use rather more pictures than equation.

Then let’s start!

P2P

P2P refers to peer-to-peer network. It is still difficult to understand the dictionary definition. So let’s organize the contents step by step.

P2P is the abbreviation of Peer to Peer Network which means Peer is considered as a network to another Peer.

Then what is the meaning of Peer? We could see Peer as each participants of networks with same position.

Of course, networks which is mentioned here refers to network devices like computer, laptop, mobile.

Based on the content above, devices which access to network is network itself to other devices which also access to network.

It is still not enough to explain. Let’s talk about the concept of client&server.

client&server

Traditionally, when it comes to composition of network, there is two components, client(user) and server(provider).

These two have different functions.
Participant who has alot of information could function as a server and Participant who send an inquiry of information could function as a client.

Server with high capacity would bring good services to many users.

And this system is broadly adapted till now.

Client <=> Server

But what happen if other users will exchange their own information?

A server needs to send information to a server and B server has to send an inquiry to the server to get information from server A.

However this process is slow and inefficient.

Client A <=> Server <=> Client B

Therefore, there was necessity of technology to send information between users directly and it was developed as the format of technology that each user act as server and client at the same time.

Again P2P

As you can see above, P2P means the network that peers who compose each network act as a server and a client simultaneously.

Types of P2p

There are two basic type of P2P

Hybrid

Literally, Hybrid P2p is hybrid with traditional way of network with P2P.

Usually, Index server(who has information of node=peer) send the information to node who can access network at current moment. Through this, other nodes could communicate. It is usually used by private blockchains.

Pure

Unlike Hybrid, Pure P2P is only consisted of nodes, no index server.

P2P in Blockchain

Blockchain is consisted of tremendous amount of nodes.

These blockchain nodes access network for authorization and synchronization

of the data.

So, in blockchain, basically nodes need to know each other nodes and able to communicate with.

For that reason, Blockchain is based on P2P technology to avoid centralized servers.

Hole-punching

Hole punch most commonly refers to an office tool that is used to create holes in sheets of paper. But of course this definition is not what we are talking about.

Before we study about hole-punch, we need to go over NAT network.

NAT (Network Address Translation)

The usual format of network address looks like xxx.xxx.xxx.xxx. also referred as IP.

The possible combination of xxx is from 0 to 254 , so the total is 255 which is consisted of 2 to the power of 8.

Every devices which can assess internet in the world is allocated IP and communicate, it is inevitable to face the shortage of IP.

So, we invented the way of distribution to allocate lack fo IPs via router.

We call this technology as NAT that routers create artificial addresses and provide them.

There are different types of IP, public IP and private IP.

Public IP is the official address that everyone who connets to internet could see. It means that everyone can approach to the user who has allocated this address if they know this IP address.

Then what is private IP?

Private IP is artificial address created by router because of shortage of public IP.

The usual format of private IP is likely 192.168…. Etc which is familiar to you.

Unlike private IP, it is not possible to approach to the server even you know private IP.

Because the address is artificially made by router.

NAT and P2P

P2P has a requirement that both can be approachable. It means that in network, each users need to know each other’s addresses.

However, it is almost impossible that every node can use public IP (Public IP is always in shortage)

Logically some nodes are allocated public IP, and some are allocated private IP. If some node are approachable and some are not, then we can not say that we organize P2P network.

If so, what should we do to connect the gap between private IP and public IP, or between two different private IP?

Here is the moment we can talk about hole-punch. Hole-punch refers to penetrate routers which allocate private IP. With the hole on router, the information can be shared!

Today, we study about blockchain technology words.

I hope you could understand the concept of P2P and Hole-punch with this posting.

I will be back with another topic!

Thanks a lot! Have a great weekends

If you are curious about GBT Protocol, please follow us and have a look on our renewal homepage!

homepage : https://gbtprotocol.com/

--

--