A mining pool is a space that allows miners to work cooperatively in order to mine cryptocurrency blocks. They were created in order to greatly facilitate the work of mining and to deal more effectively with the increasing difficulty of mining Bitcoins and other cryptocurrencies.
Las mining pools They are a group of miners that cooperate with the objective of mining blocks from a blockchain. The purpose of this group is to facilitate the work of mining is. and obtain equitable benefits for everyone within the group.
The creation of these groupings responds to the need to be able to satisfactorily solve the puzzles of a blockchain as the power of your network increases and the mining difficulty. A job that individually would be very difficult for each miner to complete.
The first Bitcoin mining pool
The first mining pool that was created is called SlushPool. It was presented in the forum Bitcointalk on November 27, 2010 by the user slush. This user was CEO and co-founder of Trezor. SlushPool was implemented in Europe, specifically in Poland, the country of origin of Slush itself. The intention of its creator was to unite the forces of the underpowered miners. This in order to face the growing practice of GPU mining that was born in Bitcoin. The result of this interesting insight was surprising in allowing these miners to make better group profits than solo.
How does a mining pool work?
The operation of the mining pools depends on three clear actors, responsible for cooperativity between all the mining units that are members of said pool.
Cooperative work protocol
The operation of mining pools would not be possible if the Bitcoin protocol did not allow this function. First of all, the one responsible for this is a function that is built into the Bitcoin base client. This functionality was known at the time as get work. This allowed a dispersed mining group to have a target block to mine cooperatively. In this way, mining power is concentrated on a specific objective instead of individual ones. Therefore it serves to optimize the global mining process.
What Getwork was actually doing was communicating to a group of miners so that together they mined the same block. Each miner working on unique solutions until one of them could solve it satisfactorily. In this way, the block would be mined more quickly and network delays are avoided due to the increase in difficulty that was coming. Back then Bitcoin was growing rapidly, from mining for CPU it happened at GPUs, while FPGA's and ASICs they were looming at the doors.
However, Getwork had some weaknesses that were later overcome thanks to the function getblocktemplate. This new function allows to overcome the weaknesses of the old systems allowing a better scalability and security.
Cooperative Mining Service (Server)
In order to allow multiple miners to pool their computing power at one point, it is necessary to have a server to serve as a link. It may sound ironic that a decentralized technology like blockchain relies on a centralized service. But there are good reasons for this: keep pace with block production and allow profits for the little ones.
The most common cooperative mining server software is Bitcoin's own official service, the bitcoins. Other fairly common softwares are BFG Miner, p2pool, ecoinpool o stratum. In any of these cases the operation is basically the same.
First, the service software to be used is installed, for example, bitcoind. This service is configured in such a way that you can listen to the connections that come from the Internet to your server. In this way, a communication channel can be opened between the miners and the cooperative mining server. At this point, each miner must have a registered account so that the server can give him access to the service. But not only that, the registry also serves to distribute the profits from mining among those who are part of the pool.
The server job is simple:
- Receive network transactions.
- Communicate the information to the miners.
- Control and monitor the work.
- Send correctly resolved blocks to the network.
- Carry out the accounting of solved blocks and the work contributed by the miners.
- Finally, send the corresponding profit to the miners in the pool.
Mining software (Client)
Each mining software has different features and supports. Miners must correctly choose the mining software that fits the characteristics of the mining pool they will join. The work of a mining software is simple. This will connect to the cooperative or pool mining server, receive the information and begin to solve the puzzle of the given block. Once it finds the answer to the block, it sends it and continues with its work helping to solve the next block.
In addition to this work, the mining software manages the authentication and the corresponding payment to the miner for his work. To do this, mining software usually points a username, password and steer axle truck for the payment. All this directed to the IP address and port that the server keeps active to carry out its work.
Still, the usage software depends in part on the control part of the mining hardware itself. In the Bitcoin network for example, the software most commonly used by miners in recent years has been cgminer. The cgminer software was developed by an Australian anesthetist. At Bit2Me Academy we have an article dedicated to this creator called With Kolivas, well known on the Bitcointalk forum as "-ck».
In conclusion, the combination of these three elements is what enables a mining pool to perform its liaison role for communication and task management in a cooperative manner.
Large mining pools today
Since the appearance of the first mining pool, these spaces have expanded. New mining pools appeared and at the same time diversified their options. At first, pools were dedicated to Bitcoin only, but then other cryptocurrency pools began to appear. Currently, practically all major cryptocurrencies have mining pools. The reason behind this is very simple: they facilitate mining and ensure the proper functioning of the network in general.
But of all mining pool services, some stand out for many reasons. Among them the most important are:
AntPool
AntPool is the largest Bitcoin mining pool in terms of potency of hash rate. Its base of operations is in China. This mining pool is controlled by the ASIC miner manufacturer BitMain, company with the largest distribution of miners in the world in the last five years. The use of the mining pool service is open and free. It has a high level of security and the commissions charged by the service are not very high.
AntPool offers mining pools for cryptocurrencies Bitcoin (BTC), Bitcoin Cash (BCH), Litecoin (LTC), Ethereum (ETH), Ethereum Classic (ETC), Zcash (ZEC), Dash (DASH), Siacoin (SIA), Monero Classic (XMC) and Bitom (BTM).
Nanopool
Nanopool It is one of the largest mining pools on the Ethereum network and a good alternative for mining popular altcoins. Its servers are distributed worldwide, making it more fault tolerant. Nanopool's commission collection does not exceed 2% for its group of supported cryptocurrencies among which are, Ethereum, Ethereum Classic, Zcash, Monero, SiaCoin, Grin, Raven, Electroneum and Pascal. Its security level is on par with that of AntPool, with options to withstand attacks DDOS to your infrastructure.
F2Pool
F2Pool It is another of the most relevant Bitcoin mining pools located in China with many more altcoin mining options, launched in 2013. In the mining community it is also known as “Discus Fish mining pool«. The site has an interface available in Spanish and is simple and easy to understand. The commissions of this pool are a little higher but do not exceed 4%. Among the supported cryptocurrencies are: Bitcoin (BTC), Ether (ETH), Litecoin (LTC), Zcash (ZEC), Ethereum Classic (ETC), Siacoin (SC), Dash (DASH), Monero (XMR), Monero Classic (XMC), Decred (DCR), Zcoin (XZC) and Verge (XVG).
Advantages and disadvantages of a mining pool
The main advantage of a mining pool is the fact of facilitating the mining work for those who participate in said pool. This allows participants to make a profit that, individually, would cost them much more time to achieve. Another of its advantages is that the system maintains the scalability of mining. Thanks to the concentration of mining power, it is guaranteed that the network can find the necessary resolution of each block in the agreed time. In this way, the generation of empty blocks on the blockchain is minimized. In addition, all the miners who participate in the pool receive profits according to the mining power they have. None of them is left without receiving their profit however small it may be.
On the downside, there's relying on a centralized organization. The pool administrators can modify the action of the pool and keep the mining rewards In its whole. A situation that has been repeated at various times with pools quite known at the time as 50BTC y BTC Guild.