Furthermore, we analyze the correlation between the
fee paid from a transaction and its latency, or the time
it takes to become visible in the whole network. We
propose two different models to describe how appli-
cations should spend money to improve network per-
formance. Although the studies presented in this pa-
per are restricted to the Bitcoin system, we conjecture
that our observations are transferable to similar P2P
systems that rely on computational expensive proof-
of-work for consensus and fee-based incentives.
2 BACKGROUND
This paper considers blockchains as a communication
substrate, where a set of client or application pro-
cesses communicate by sending and receiving mes-
sages. In blockchain systems, a message is often re-
ferred to as a transaction, a notation we also adapt
in this paper. The blockchain substrate handles all
transactions in batches, known as blocks. Each block
B can be in one of two states: proposed or accepted,
and might contain zero or more transactions from zero
or more clients. The system in permissionless in that
there exist no central authority that coordinate or reg-
ulate participation or usage.
A blockchain has one or more miner processes
that act as the ingress points for transactions submit-
ted by the clients. The set of all miners collaborate
to decide on which transactions to admit and their or-
dering. Every miner has a mempool containing the
new and unapproved transactions. Applications are
free to submit transactions to any miner’s mempool,
and miners are free to choose which transactions to
include in their blocks. Most blockchain systems, in-
cluding Bitcoin, enforce a strict upper bound Q on
the block size, which also limits the number of trans-
actions each block can contain.
The blockchain data structure, often referred to
to as a ledger, is maintained by a P2P overlay net-
work where members cooperate to verify and dis-
tribute blocks such that each member process has a
full replica of the data structure in local storage. The
integrity of the data structure is dependent on con-
sensus among the set of correct member processes
on which blocks are in the blockchain and their to-
tal order. For this, existing blockchain systems, like
Bitcoin, use the Nakamoto consensus protocol. This
protocol relies on members solving computationally
complex cryptographic puzzles as proof-of-work for
admitting new blocks, commonly referred to as min-
ing. Once a miner has solved a puzzle, it broadcasts
the block along with a solution to the puzzle so that
all other nodes can check its correctness. The block is
then tentatively recorded in the blockchain.
In the early days of Bitcoin, it was possible to
mine productively with commodity desktop or laptop
computers. Nowadays, successful miners use highly
specialized hardware called Application Specific In-
tegrated Circuitss (ASICs) (Taylor, 2017), which typ-
ically offer up to 100 times improved performance
over commodity CPUs and GPUs.
The cost associated with mining was defined by
Rizun (2015) to be:
hCi = ηhT (1)
Here η is the cost per generated hash, h is the miner’s
individual hash rate and T is the block creation time.
Hence, the block creation time is directly proportional
to the hashing cost. The underlying assumption of
proof-of-work consensus is that the high η value, due
to the energy cost of mining, will discourage and limit
malicious behavior. At the same time, benign partici-
pation is promoted by means of incentives: the nodes
receive payment as a reward for solving puzzles.
As miners compete to solve the latest puzzle, it
may happen that two or more nodes succeed at ap-
proximately the same time. This may result in dif-
ferent blocks with different transactions being pro-
posed for the blockchain. Thus, proposing further
blocks may result in different chains, often referred
to as a fork. To break such ties, Bitcoin adopts
the simple rule that the longest consecutive chain of
blocks wins. Therefore, a tentative block of transac-
tions may be discarded, which is known as orphaning.
The recording of a block is only considered perma-
nently accepted after five additional blocks have been
added, approximately after 1 hour. Thus, eventually
the nodes reach consensus on the ordering of all the
blocks on the blockchain.
Given a transaction t from some client c
1
to some
other client c
2
, we have the following:
Definition 1. The commit latency of a transaction t
is the time from when c
1
first proposes a transaction t
to a mining pool, to when some block B including t is
first mined and permanently accepted.
Note that the total end-to-end latency of t also in-
cludes the time it takes for B to be delivered to c
2
.
However, as blockchain clients must pull the system
for updates, the last-hop delivery time will depend to
the application specific pull interval. For generality,
this paper will therefore only consider the commit la-
tency.
In existing blockchain systems, miners can freely
choose which transactions to include when propos-
ing a new block. A client must therefore negotiate
with miners to have its transactions included. To en-
tice miners, each transaction t can include a transac-
tion fee t
f
paid by the sender to be claimed by the
CLOSER 2018 - 8th International Conference on Cloud Computing and Services Science
644