Next Article in Journal
Weighted Constraint Iterative Algorithm for Phase Hologram Generation
Next Article in Special Issue
Hash-Chain-Based Cross-Regional Safety Authentication for Space-Air-Ground Integrated VANETs
Previous Article in Journal
Design of Railway Track Model with Three-Dimensional Alignment Based on Extended Industry Foundation Classes
Previous Article in Special Issue
Analysis of Vulnerabilities That Can Occur When Generating One-Time Password
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Real-Time Chain and Variable Bulk Arrival and Variable Bulk Service (VBAVBS) Model with λF

1
Computer Science, Oklahoma State University, Stillwater, OK 74078, USA
2
School of Games, Hongik University, Jochiwon-eup, Chungcheongnam-do 339-701, Korea
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(10), 3651; https://doi.org/10.3390/app10103651
Submission received: 3 April 2020 / Revised: 16 May 2020 / Accepted: 22 May 2020 / Published: 25 May 2020

Abstract

:
This paper proposes a real-time chain and a novel embedded Markovian queueing model with variable bulk arrival (VBA) and variable bulk service (VBS) in order to establish and assure a theoretical foundation to design a blockchain-based real-time system with particular interest in Ethereum. Based on the proposed model, various performances are simulated in a numerical manner in order to validate the efficacy of the model by checking good agreements with the results against intuitive and typical expectations as a baseline. A demo of the proposed real-time chain is developed in this work by modifying the open source of Ethereum Geth 1.9.11. The work in this paper will provide both a theoretical foundation to design and optimize the performances of the proposed real-time chain, and ultimately address and resolve the performance bottleneck due to the conventional block-synchrony by employing an asynchrony by the real-time deadline to some extent.

1. Introduction

Blockchain technology [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20] is a new internet protocol to address the longtime-awaited solution for internet trust. Blockchain is a distributed ledger [4,5,7] of all the transactions that have been executed. Blockchains are distributed databases that a group of individuals controls and that store and share information. There are many different types of blockchains: Public, permissioned, private. Irrespective of the type of the blockchain, cryptography is used to allow each participant on any given network to manage the ledger in a secure way without the need for a central authority to enforce the results. The blocks are appended successfully to the blockchain, and more importantly, a block once appended cannot be removed from the blockchain. This makes the blockchain able to create trust in digital data. Blockchains basically eliminate the need for a third-party intermediary. When data is permanent and reliable in a digital format, one can transact business online in ways that, in the past, were only possible offline or would take a lot of time to process online.
The motivation and objective of this paper is to develop a real-time chain model in a theoretical manner, and to propose a novel embedded Markovian queueing model [19] of the M 1 , n / M 1 , n / 1 type in order to establish a theoretical foundation to design a blockchain-based real-time system with particular interest in Ethereum, since there has been no adequate model to fulfill the above-mentioned objectives. The model assumes variable bulk arrivals of transactions in Poisson distribution, i.e., M 1 , n , where n is the number of slots across all the mined transactions, and variable bulk service of transactions in exponential time, i.e., M 1 , n , for posting in the current block, namely, variable bulk arrival and variable bulk service (VBAVBS) model with λ F , where λ F is a random variable employed specifically to address the stringent real-time deadline requirement. The primary performance measurements of interest are the average number of slots no matter how many transactions are mined under the assumption of maximum number of slots per block as specified by n ; the average waiting time per slot; and the throughput in terms of the average number of slots to be processed per time. The variable bulk arrival rate is assumed to be linearly proportional to the size of the transactions in a multiple of λ per slot, with success to arrive within the deadline, or some of the transactions with λ F to fail to meet the real-time deadline. The variable bulk service is assumed to take place when the number of slots in the mined transactions reaches at every possible number i , where 0   i n , i.e., a bulk processing of multiple transactions in multiple slots between 0 and n , inclusive, for posting in a block. Note that the real-time deadline requirement is considered under the underlying assumption that the size of each block is adaptive, in other words, varying block by block, and the proposed VBAVBS model with λ F normalizes the probability for each size of the block throughout.
The paper is organized as follows. In the following section, preliminaries and design-variables for the proposed real-time chain and its performance modeling and analysis are reviewed, and some related works on blockchain dependability [9,11] modeling and analysis are introduced; then, the proposed real-time chain and its analytical model are derived and captured in the context of a queueing system; a section follows in order to demonstrate numerical simulations versus various blockchain-related parameters [10], and results are shown; finally, conclusions are drawn and a discussion completes the last section.

2. Preliminaries and Literature Review

A few key concepts and components of blockchain are listed as follows [4,5,7]. Public Key: Every node/user in the blockchain is assigned a public/private key. A transaction to be made on the blockchain has to be signed by a private key, while the public key is always visible to everyone on the blockchain; transaction: A transaction contains the details of the both the public keys (in case of smart contract [16]—contract address), a hash of the previous block, the current block number and the amount of crypto currency being transferred to, along with the gas needed to execute the transaction; block is a list of transactions recorded into the distributed ledger over time. The transactions are grouped together and put in the block which are then mined to be added to the blockchain. The immutability of the blockchain assures that the transaction once recorded in a block cannot be deleted or undone; chain: All the blocks have a unique block number. The block number is incremented by 1 for every block that is added to the chain. The hash in blockchain is created from the data that was in the previous block. The previous block hash will also be added to the current block details. Thereby, any change in the previous block completely alters the entre hash which would invalidate the blockchain; crypto currency: Ether is the crypto currency in Ethereum blockchain. Any transaction to be posted on the blockchain utilizes the respective crypto currency of the blockchain; gas: The amount of ether needed to post a transaction in Ethereum blockchain. The current blockchain is coded in such a way that the transaction with highest gas fees are given higher priority to be included in the block. This proposed real-time details out different algorithms that can be used to order transactions differently in the block; miner: Nodes that participate in creating a new block are called miners. Miners are responsible for adding blocks to the blockchain. The blocks are created based on the number of transactions present in the txnpool and other characteristics like gas fee, block size, arrival time; transaction pool: Transaction pool is an array datatype of transactions containing the pointers to the transactions that are not yet posted to the block. Pending transactions are the transactions that are not yet posted to the blockchain and these pending transactions reside in the transaction pool [8]. The different ordering of the transaction pool creates different mining [14,15] algorithms [13]; mining: The central process of blockchain-based computing to establish a trust among the nodes in the network connected in a P2P manner. Miners compete for the next new hash code which requires a computationally intensive process and is highly costly. In this context, there have been efforts made extensively to mitigate or eliminate the mining process.
There have been reports on various, yet critical, performance and dependability problems in [17,18,19,20], where extensive research has been conducted on theoretical designs of a few blockchain-based solutions in order to establish a theoretical yet substantial foundation. As the ultimate quality of crypto computing will be determined by its likelihood to be performed as commanded or desired— referred to as the dependability—those theoretical models emphasized and are centered around the dependability of each of those crypto solutions to accommodate such capabilities as the on/off-balanced crypto computing [12,21], the real-time computing [20], the slim-computing [17] and the hybrid computing [18]. A theoretical study on performance is of ultimate interest to identify a theoretical intersection versus the dependability, which is the ultimate objective of the proposed variable bulk arrival and variable bulk service (VBAVBS) model with λ F in the context of the proposed real-time chain.

3. Proposed Variable Bulk Arrival and Variable Bulk Service (VBAVBS) Model with λ F for Real-Time Chain

In the proposed real-time chain model, an embedded Markovian single-server exponential queueing system (i.e., M 1 , n / M 1 , n /1) is considered without loss of generality, and the server (the server is the equivalent of the group of miners to select the transactions to be posted) serves the entire batch of customers (the customers are the equivalent of the transactions to be posted in the block) in the queue (a queue is the equivalent of a block to be mined and posted) all at once, at the same time. Whenever the server completes a service (a service is the equivalent of a process of posting a block), it then purges the queue (i.e., the equivalence of posting a block) and then serves the influx of new incoming customers. Note that it is assumed that the service takes place within a certain amount of time, yet no transaction is assumed to arrive in the meantime. However, note that it is not unlikely to have new customer arrive if a significant amount of service time is assumed, from a practical point of consideration. It is assumed that the service time is exponential at 1 μ   when the server is serving the entire queue of any size between 0 and n , inclusively and equivalently, posting and purging the entire queue. Without loss of generality, it is assumed that customers arrive at an exponential rate of λ successfully within the deadline yet, at the rate of λ F , the customers are assumed to fail to arrive within a specific deadline to meet the real-time requirement. The underlying queueing process is assumed to take place with variable-sized slots and the status of the queue is determined by the number of slots of any size in the current block.
Based on the assumptions above, the proposed VBAVBS model with λ F also employs an embedded Markovian queueing model like the VBASBS (Variable Bulk Arrival And Static Bulk Service) in [19], and it defines the states as expressed in terms of the number of slots assigned to a block, and it traces the normalized number of slots allocated for the transactions in steady state rather than the number of transactions whose size varies in the number of slots.
  • P 0 : The state in which no transaction (i.e., no slot) has arrived in the queue as of yet for the posting in the block, currently [19].
  • P n : The state in which there are n number of slots (i.e., the capacity of the queue, equivalently, the maximum number of slots set and voted by the miners or voters) arrived in the queue for the posting in the block, currently [19].
  • P i : The state in which there are i number of slots (where 0   <   i   <   n ) arrived in the queue for the posting in the block, currently [19].
The random variables employed to express the state transition rates are specified as follows.
  • λ : The rate for a slot of a transaction to arrive successfully within the real-time deadline requirement, and the rate for a transaction to arrive is determined by the number of slots allocated for the transaction in a prorated manner such that a transaction with a size of j number of slots arrives at the rate of j λ , without loss of generality and practicality as well.
  • λ F : The rate for a slot of a transaction to arrive unsuccessfully past the real-time deadline requirement, and at the rate, the state will self-loop without making any state transition. This rate is the unique one to distinguish VBAVBS from VBASBS in which there was no real-time deadline requirement taken into consideration.
  • μ : The rate for the slots of the transactions in the entire queue to be posted and purged. Notice that this is a single and unique state transition 1, 2 and 3.
The balance equations for VBAVBS with λ F are shown in the following Equations.
( λ + 2 λ + 3 λ   + +   n λ + λ F ) P 0 = μ n P 1 + μ n 1 P 2 + μ n 2 P 3 +   μ n ( n 2 ) P n 1 + μ P n
( λ ( n ) ( n 1 ) 2 + λ F ) P 0 = μ ( 1 n P 1 + 1 n 1 P 2 + 1 n 2 P 3 +   1 n ( n 2 ) P n 1 + P n )
and
P 0 + P 1 + P 2 + + P n = 1
Appendix A shows the detailed solving of balance equations. Equations (4) and (5 describe the generalized value of P i .
P i =   q i 1 P 0 [ j = 1 i j [ k = 1 i 1 [ l = 1 k 1 q l 1 ] ] k ]
where,
q i 1 = ( λ ( n i ) ( n i + 1 ) 2 + λ F + μ n i + 1 ) 1
In the following, a few baseline performance measurements of primary interests in VBAVBS with λ F are shown.
  • L Q : The average number of customers (i.e., equivalently the average number of transactions) in the queue (i.e., the block currently being mined) [19] with the new P i
    L Q = i = 0 n i P i
  • W Q : The average amount of time a customer (i.e., equivalently, a transaction) in the queue (i.e., the block currently being mined) [19].
    W Q = L Q λ
  • W : The average amount of time a customer (i.e., equivalently, a transaction) in the system (i.e., the transaction pool in the blockchain) [19].
    W = W Q + 1 μ
  • L : The average number of customers (i.e., equivalently, the average number of transactions) in the system (i.e., the transaction pool in the blockchain) [19].
    L = λ W

4. Numerical Analysis

The efficacy of the proposed VBAVBS model with λ F is tested and verified through numerical analysis for the L Q ,   W Q , W and L versus n (i.e., size of a block), λ (i.e., successful transaction arrival rate or speed),   λ F (i.e., unsuccessful transaction arrival rate or speed) and 1 μ (i.e., block posting time). Note that fitting the model against real data is not within the scope of the work, instead, various and extensive numerical simulations are conducted as a baseline validation.
Figure 1 plots the average number of customers in system ( L ) versus the number if slots ( n ), for various λ and a μ (at 1/15).
L versus n , for various λ and a μ , are plotted in Figure 1. It is observed that L picks up as n increases, as expected, yet in a near linear manner. Also, it is observed that L picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
Likewise, Figure 2 shows the average number of customers in system ( L ) plotted against the rate of slots ( μ ) for various λ and an n (at 10).
It is observed that L declines as μ increases, as expected. Also, it is observed that L picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
The following graph plots L Q versus n , for various λ and a μ (at 1/15).
It is observed in Figure 3 that L Q picks up as n increases, as expected, yet in a near linear manner. Also, it is observed that L Q picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
Average number of customers in queue ( L Q ) versus rate of slots ( μ ) is plotted in Figure 4, for various λ , and an n (at 10).
It is observed that L Q declines as μ increases, as expected. Also, it is observed that L Q picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
The following graph plots W versus n , for various λ and a μ (at 1/15).
In Figure 5, it is observed that W picks up as n increases, as expected, yet in a near linear manner. Also, it is observed that W picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
The following graph plots W versus μ , for various λ , and an n (at 10).
In Figure 6, it is observed that W declines as μ increases, as expected. Also, it is observed that W picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
Figure 7 plots W Q versus n , for various λ and a μ (at 1/15).
It is observed that W Q picks up as n increases, as expected, yet in a near linear manner. Also, it is observed that W Q picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
The following graph plots W Q versus μ , for various λ , and an n (at 10).
In Figure 8, it is observed that W Q declines as μ increases, as expected. Also, it is observed that W Q picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
Equation (10) shows the throughput per block in the presented model.
γ =   μ P n = μ   λ μ n ( n + 1 ) 2 P 0 =   λ n ( n + 1 ) 2 P 0
The following graph plots γ versus n , for various λ and a μ (at 1/15). Note that γ is plotted versus full range of potential n values so that the γ at an n represents the normalized γ value in the full range up to n .
Figure 9 and Figure 10 plot the throughput per block. It is observed that γ stays constant throughout, and P n barely changes throughout.
The following graph plots γ versus μ , for various λ , a μ (at 1/15) and a λ F (at 0.001).
It is observed that γ picks up as μ increases, as expected. Also, it is observed that γ picks up as λ increases, as expected. Notice that the intervals in between the plots are quite proportionally spaced.
The following graph plots L versus λ F , for various λ , a μ (at 1/15), and n (at 10).
It is was observed, in Figure 11, that L declines as λ F increases such that as more numbers of transactions (or slots) fail to arrive within the required real-time deadline, less numbers of transactions will be accommodated. Also, it is observed that L picks up as λ increases, as expected. Notice that the intervals in between the plots are spaced narrower at higher λ , as expected.
The following graph plots L Q versus λ F , for various λ , a μ (at 1/15), and n (at 10) in Figure 12.
It is observed that L Q declines as λ F increases, and as a greater number of transactions (or slots) fail to arrive within the required real-time deadline, a smaller number of transactions will be accommodated. Also, it is observed that L Q picks up as λ increases, as expected. Notice that the intervals in between the plots are spaced narrower at higher λ , as expected.
The following graph plots W versus λ F , for various λ , a μ (at 1/15), and n (at 10).
Figure 13 and Figure 14 plot the average amount of time in the system/queue with respect to rate of unsuccessful arrivals. It is observed that W declines as λ F increases as a greater number of transactions (or slots) fail to arrive within the required real-time deadline, and the amount of time on average that each transaction (or slot) will be waiting in the block prior to posting is reduced. Also, it is observed that W picks up as λ increases, as expected. Notice that the intervals in between the plots are spaced narrower at higher λ , as expected.
The following graph plots W Q versus λ F , for various λ , a μ (at 1/15), and n (at 10).
It is observed, in Figure 14, that W Q declines as λ F increases as a greater number of transactions (or slots) fail to arrive within the required real-time deadline, and the time on average is reduced in which each transaction (or slot) will be waiting in the block prior to posting. Also, it is observed that W picks up as λ increases, as expected. Notice that the intervals in between the plots are spaced narrower at higher λ , as expected.

5. A Demo: Real-time Chain

Implementation of real-time is shown in this section. Table A1 in Appendix B shows a detailed list of components used and the version numbers which were modified to create this demo. With deadline time taken into consideration, four transactions are posted at the same time but with random deadline times to simulate the priority to the deadline variable. In the standard Ethereum model, the transactions are sorted based on the price and nonce. The four transactions, if posted in the standard Ethereum model, would be included in blocks in a decreasing order based on price and nonce. In the modified real-time model, the transactions with deadline time closest to the current block are given higher priority. Figures mentioned in this section present an idea of the deadline times and block posting of the four respective transactions.
Figure 15, Figure 16, Figure 17 and Figure 18 show transactions that are posted with random deadline times: 35, 36, 50 and 58. Figure 15 details a transaction that posted with deadline time variable set to 35. The transaction with a gas limit of 3,000,000 is posted in 25th block. Figure 16 shows another transaction with lower gas limit than the one shown in Figure 15. The gas limit of the transaction is 2,000,000, and the deadline time is set to 36. The contract hash and the block number details are shown below, with the transactions being posted in the 26th block.
A transaction with a gas limit higher than 2,000,000 would be given higher priority in the standard Ethereum model. Such a transaction is posted here to highlight the difference in the priorities given to the transactions even though the transactions have a lesser gas limit. Figure 17 shows a transaction that was posted with a gas limit of 4,500,000 and a deadline time of 50. Since the deadline time was higher than both the previous transactions, this transaction is posted in block 37.
Figure 18 shows another such scenario where the gas limit is higher and the deadline time is farther than the current block, which gives the transaction lesser priority. The transaction is posted with a gas limit of 4,000,000 and the deadline time set to 58. The block number that the transaction got posted is the 39th block of the chain.

6. Conclusions and Discussion

This paper has proposed an analytical approach how to design and realize a real-time chain (Ethereum blockchain-based) under a stringent real-time deadline requirement. A new and novel analytical model has been proposed to estimate the performance of the real-time chain in a quantitative manner, referred to as the variable bulk arrival and variable bulk service with λ F where λ F is a random variable employed specifically to address the stringent real-time deadline requirement. The variable bulk arrival rate is assumed to vary linearly, proportional to the size of the transactions in a multiple of λ per slot with success to arrive within deadline, and some of the transactions in λ F to fail to meet the real-time deadline, and the variable bulk service is assumed to take place when the number of slots in the mined transactions reaches at every possible number i , where 0   i n , i.e., a bulk processing of multiple transactions in multiple slots between 0 and n , inclusive, for posting in a block. Note that the real-time deadline requirement is considered under the underlying assumption that the size of each block is adaptive, in other words, varying block by block, and the proposed VBAVBS model with λ F normalizes the probability for each size of the block throughout. Numerical simulations are conducted on Matlab to verify and demonstrate the efficacy of the model and reveal a good agreement with what was expected intuitively as a baseline validation. The primary performance measurements to be taken are L ,   L Q ,   W Q , W and γ versus n (i.e., size of a block), λ (i.e., successful transaction arrival rate or speed),   λ F (i.e., unsuccessful transaction arrival rate or speed) and 1 μ (i.e., block posting time). The simulation results demonstrate the efficacy and validity of the proposed real-time chain in a quantitative manner with respect to the proposed VBAVBS model with λ F as far as it is concerned about L ,   L Q ,   W Q , W and γ versus various   n ,   λ ,   λ F ,   μ . It is noteworthy that λ F , as a real-time-specific random variable, exhibits quite a significant impact on L ,   L Q ,   W Q ,   W . A demo has been developed to demonstrate a real-time chain with modification on the Ethereum open source Geth 1.9.11.

Author Contributions

N.P.: overall supervision of the research and the manuscript. A.K.: a supervisee of the research and main contributor to the simulations, the demo and the manuscript. H.-Y.K.: overall supervision of the research, the manuscript and the publication cost. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Korean Government (MSIT) (No. 2019R1A2C1008533).

Acknowledgments

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korean Government (MSIT) (No. 2019R1A2C1008533). This work was also supported by the 2020 Hongik University Research Fund.

Conflicts of Interest

Authors declare no conflict of interest.

Appendix A

Solution for the balance equations shown in Section 3 are provided here. Equation (A1) represents the steady state probability for P 1 .
( λ + 2 λ + 3 λ +   + ( n 1 ) λ + λ F + μ n 0 ) P 1 = λ P 0
Equations (A2)–(A5) process the simplification.
( λ ( n 1 ) ( n 2 ) 2 + λ F + μ n 0 ) P 1 = λ P 0
( λ ( n 1 ) ( n 2 ) 2 + λ F + μ n 0 ) P 1 = λ P 0
P 1 = λ ( λ ( n 1 ) ( n 2 ) 2 + λ F + μ n 0 ) 1 P 0
P 1 = λ q 1 P 0
Similarly, P 2 can be expressed as follows:
( λ + 2 λ + 3 λ +   + ( n 2 ) λ + λ F + μ n 1 ) P 2 = λ P 1 + 2 λ P 0
( λ ( n 2 ) ( n 3 ) 2 + λ F + μ n 1 ) P 2 = λ ( P 1 + 2 P 0 )
P 2 = λ ( λ ( n 2 ) ( n 3 ) 2 + λ F + μ n 1 ) 1 ( Q 1 P 0 + 2 P 0 )
P 2 = λ q 2 ( Q 1 P 0 + 2 P 0 )
P 2 = λ q 2 ( Q 1 + 2 ) P 0
P 2 = Q 2 P 0
P 3 can be expressed as follows, and simplified in Equations (A12) and (A13).
( λ + 2 λ + 3 λ +   + ( n 3 ) λ + λ F + μ n 2 ) P 3 = λ P 2 + 2 λ P 1 + 3 λ P 0
( λ ( n 3 ) ( n 4 ) 2 + λ F + μ n 2 ) P 3 = λ ( P 2 + 2 P 1 + 3 P 0 )
Similarly, P i , 0 < i < n can be expressed as follows:
( λ + 2 λ + 3 λ +   + ( n i ) λ + λ F + μ n i + 1 ) P i = λ P i 1 + 2 λ P i 2 + + i λ P 0
( λ ( n i ) ( n i + 1 ) 2 + λ F + μ n i + 1 ) P i = λ ( P i 1 + 2 P i 2 + + i P 0 )
Lastly, P n can be expressed as follows:
( λ F + μ ) P n = λ P n 1 + 2 λ P n 2 + + n λ P 0
( λ F + μ ) P n = λ ( P n 1 + 2 P n 2 + + n P 0 )
P 0 can be solved by substituting Equation (4) into Equation (3):
P 0 + P 1 + P 2 + + P n = 1
P 0 + q 1 1 P 0 [ j = 1 1 j [ k = 1 0 [ l = 1 k 1 q l 1 ] ] k ] + q 2 1 P 0 [ j = 1 2 j [ k = 1 1 [ l = 1 k 1 q l 1 ] ] k ] + + P n = 1
As, P 0 is a term that is common in all the terms in Equation (A19):
P 0 [ 1 + q 1 1 [ j = 1 1 j [ k = 1 0 [ l = 1 k 1 q l 1 ] ] k ] + q 2 1 [ j = 1 2 j [ k = 1 1 [ l = 1 k 1 q l 1 ] ] k ] + ] = 1
Once the value of P 0 is known, the other steady state probabilities of the Markovian model can be obtained by using Equation (4) consecutively. Given that all the steady state probabilities are known, the values of L , L Q , W and W Q are calculated.

Appendix B

The configuration settings for the components used in the real-time demo model described in Section 5 are shown in Table A1.
Table A1. Configuration settings of Ethereum and other components.
Table A1. Configuration settings of Ethereum and other components.
ComponentVersion
Geth/Ethereum1.9.11
Architectureamd64
Go versiongo1.14
Operating systemdarwin
Nodejsv12.14.1
web31.2.7

References

  1. Rouhani, S.; Deters, R. Performance Analysis of Ethereum Transactions in private blockchain. In Proceedings of the 2017 8th IEEE International Conference on Software Engineering and Service Science (ICSESS), Beijing, China, 24–26 November 2017. [Google Scholar]
  2. Chauhan, A.; Malviya, O.P.; Verma, M.; Mor, T.S. Blockchain and Scalability. In Proceedings of the 2018 IEEE International Conference on Software Quality, Reliability and Security Companion, Lisbon, Portugal, 16–20 July 2018. [Google Scholar]
  3. Kuzuno, H.; Karam, C. Blockchain explorer: An analytical process and investigation environment for bitcoin. In Proceedings of the 2017 APWG Symposium on Electronic Crime Research (eCrime), Scottsdale, AZ, USA, 25–27 April 2017. [Google Scholar]
  4. Nakamoto, S.; Bitcoin, A. A Peer-to-Peer Electronic Cash System. 2008. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 19 March 2019).
  5. Ethereum: A Super Decentralized Generalized Transaction Ledger. Available online: http://gavwood.com/paper.pdf (accessed on 19 March 2019).
  6. Weber, I.; Gramoli, V.; Ponomarev, A.; Staples, M.; Holz, R.; Tran, A.B.; Rimba, P. On Availability for Blockchain-Based Systems. In Proceedings of the 2017 IEEE 36th Symposium on Reliable Distributed Systems (SRDS), Hong Kong, China, 26–29 September 2017. [Google Scholar]
  7. Peck, M.E. Blockchains: How They Work and Why They’ll Change the World. IEEE Spectr. 2017, 54, 26–35. [Google Scholar] [CrossRef]
  8. Qin, R.; Yuan, Y.; Wang, F.Y. Research on the Selection Strategies of Blockchain Mining Pools. IEEE Trans. Comput. Soc. Syst. 2018, 5, 748–757. [Google Scholar] [CrossRef]
  9. Cinque, M.; Esposito, C. How to Assess the Dependability of Applications on Top of the Blockchain: Novel Research Challenges. In Proceedings of the 2018 14th European Dependable Computing Conference (EDCC), Iasi, Romania, 10–14 September 2018. [Google Scholar]
  10. Lombardi, F.; Aniello, L.; de Angelis, S.; Margheri, A.; Sassone, V. A Blockchain-Based Infrastructure for Reliable and Cost-Effective Iot-Aided Smart Grids; IET: London, UK, 2018. [Google Scholar]
  11. Zhang, Q.; Novotny, P.; Baset, S.; Dillenberger, D.; Barger, A.; Manevich, Y. LedgerGuard: Improving Blockchain Ledger Dependability. Available online: https://www.researchgate.net/publication/324939637_LedgerGuard_Improving_Blockchain_Ledger_Dependability (accessed on 15 April 2019).
  12. Seol, J.; Kancharla, A.; Park, N.; Park, N.; Park, I. The Dependability of Crypto Linked Off-chain File Systems in Backend Blockchain Analytics Engine. Int. J. Netw. Distrib. Comput. 2018, 6, 210–215. [Google Scholar] [CrossRef] [Green Version]
  13. How to Check the Reliability of a Blockchain Project. Available online: https://coinjournal.net/sponsored-story-how-to-check-the-reliability-of-a-blockchain-project/ (accessed on 19 March 2019).
  14. Worstall, T. Fascinating Number: Bitcoin Mining Uses $15 Million’s Worth of Electricity Every Day.” Forbes, 3 December 2013. Available online: http://www.forbes.com/sites/timworstall/2013/12/03/fascinating-number-bitcoin-mining-uses-15-millions-worth-ofelectricity-every-day/ (accessed on 19 March 2019).
  15. Chadha, G.K.; Singh, A. Bitcoin Block-Chain Mining. In Proceedings of the 2019 9th International Conference on Cloud Computing, Data Science & Engineering (Confluence), Noida, India, 29–31 May 2019; pp. 152–157. [Google Scholar]
  16. Lee, W.-M. Beginning Ethereum Smart Contracts Programming; With Examples in Python, Solidity and JavaScript; Apress: New York, NY, USA, 2019. [Google Scholar]
  17. Kancharla, A.; Jongho, S.; Park, N.; Kim, H. Slim Chain and Dependability. In Proceedings of the 2nd ACM International Symposium on Blockchain and Secure Critical Infrastructure (BSCI 2020), Taipei, Taiwan, 1–5 June 2020. [Google Scholar]
  18. Kancharla, A.; Park, N.; Ke, Z.; Kim, H. Hybrid Chain and Dependability. In Proceedings of the 2nd ACM International Symposium on Blockchain and Secure Critical Infrastructure (BSCI 2020), Taipei, Taiwan, 1–5 June 2020. [Google Scholar]
  19. Jongho, S.; Kancharla, A.; Park, N.; Kim, H. A Variable Bulk Arrival and Static Bulk Service Queueing Model for Blockchain. In Proceedings of the 2nd ACM International Symposium on Blockchain and Secure Critical Infrastructure (BSCI 2020), Taipei, Taiwan, 1–5 June 2020. [Google Scholar]
  20. Kancharla, A.; Park, N. A Realtime Crypto Computing and Block-Dependability. In Proceedings of the 9th IEEE International Symposium on Cloud and Service Computing, Kaohsiung, Taiwan, 18–21 November 2019. [Google Scholar]
  21. Kancharla, A.; Park, N. Dependable Industrial Crypto Computing. In Proceedings of the 28th International Symposium on Industrial Electronics (IEEE-ISIE 2019), Vancouver, BC, Canada, 11–14 June 2019. [Google Scholar]
Figure 1. Average number of customers in system ( L ) vs number of slots ( n ).
Figure 1. Average number of customers in system ( L ) vs number of slots ( n ).
Applsci 10 03651 g001
Figure 2. Average number of customers in the system ( L ) vs rate of slots ( μ ).
Figure 2. Average number of customers in the system ( L ) vs rate of slots ( μ ).
Applsci 10 03651 g002
Figure 3. Average number of customers in the queue ( L Q ) vs number of slots ( n ).
Figure 3. Average number of customers in the queue ( L Q ) vs number of slots ( n ).
Applsci 10 03651 g003
Figure 4. Average number of customers in the queue ( L Q ) vs rate of slots ( μ ).
Figure 4. Average number of customers in the queue ( L Q ) vs rate of slots ( μ ).
Applsci 10 03651 g004
Figure 5. Average amount of time in system ( W ) vs number of slots ( n ).
Figure 5. Average amount of time in system ( W ) vs number of slots ( n ).
Applsci 10 03651 g005
Figure 6. Average amount of time in system ( W ) vs rate of slots ( μ ).
Figure 6. Average amount of time in system ( W ) vs rate of slots ( μ ).
Applsci 10 03651 g006
Figure 7. Average amount of time in queue ( W Q ) vs number of slots ( n ).
Figure 7. Average amount of time in queue ( W Q ) vs number of slots ( n ).
Applsci 10 03651 g007
Figure 8. Average amount of time in queue ( W Q ) vs rate of slots ( μ ).
Figure 8. Average amount of time in queue ( W Q ) vs rate of slots ( μ ).
Applsci 10 03651 g008
Figure 9. Throughput per block ( γ ) vs number of slots ( n ).
Figure 9. Throughput per block ( γ ) vs number of slots ( n ).
Applsci 10 03651 g009
Figure 10. Throughput per block ( γ ) vs rate of slots ( μ ).
Figure 10. Throughput per block ( γ ) vs rate of slots ( μ ).
Applsci 10 03651 g010
Figure 11. Average number of customers in system ( L ) vs rate of unsuccessful arrival ( λ F ).
Figure 11. Average number of customers in system ( L ) vs rate of unsuccessful arrival ( λ F ).
Applsci 10 03651 g011
Figure 12. Average number of customers in queue ( L Q ) vs rate of unsuccessful arrival ( λ F ).
Figure 12. Average number of customers in queue ( L Q ) vs rate of unsuccessful arrival ( λ F ).
Applsci 10 03651 g012
Figure 13. Average amount of time in system ( W ) vs rate of unsuccessful arrival ( λ F ).
Figure 13. Average amount of time in system ( W ) vs rate of unsuccessful arrival ( λ F ).
Applsci 10 03651 g013
Figure 14. Average amount of time in queue ( W Q ) vs rate of unsuccessful arrival ( λ F ).
Figure 14. Average amount of time in queue ( W Q ) vs rate of unsuccessful arrival ( λ F ).
Applsci 10 03651 g014
Figure 15. (a) Transaction with deadline time of 35, (b) full hash of the transaction, (c) gas limit 3,000,000 of the same hash.
Figure 15. (a) Transaction with deadline time of 35, (b) full hash of the transaction, (c) gas limit 3,000,000 of the same hash.
Applsci 10 03651 g015
Figure 16. (a) Transaction with deadline time of 36, (b) full hash of the transaction, (c) gas limit 2,000,000 of the same hash.
Figure 16. (a) Transaction with deadline time of 36, (b) full hash of the transaction, (c) gas limit 2,000,000 of the same hash.
Applsci 10 03651 g016
Figure 17. (a) Transaction with deadline time of 50, (b) full hash of the transaction, (c) gas limit 4,500,000 of the same hash.
Figure 17. (a) Transaction with deadline time of 50, (b) full hash of the transaction, (c) gas limit 4,500,000 of the same hash.
Applsci 10 03651 g017aApplsci 10 03651 g017b
Figure 18. (a) Transaction with deadline time of 58, (b) full hash of the transaction, (c) gas limit 4,000,000 of the same hash.
Figure 18. (a) Transaction with deadline time of 58, (b) full hash of the transaction, (c) gas limit 4,000,000 of the same hash.
Applsci 10 03651 g018

Share and Cite

MDPI and ACS Style

Park, N.; Kancharla, A.; Kim, H.-Y. A Real-Time Chain and Variable Bulk Arrival and Variable Bulk Service (VBAVBS) Model with λF. Appl. Sci. 2020, 10, 3651. https://doi.org/10.3390/app10103651

AMA Style

Park N, Kancharla A, Kim H-Y. A Real-Time Chain and Variable Bulk Arrival and Variable Bulk Service (VBAVBS) Model with λF. Applied Sciences. 2020; 10(10):3651. https://doi.org/10.3390/app10103651

Chicago/Turabian Style

Park, Nohpill, Abhilash Kancharla, and Hye-Young Kim. 2020. "A Real-Time Chain and Variable Bulk Arrival and Variable Bulk Service (VBAVBS) Model with λF" Applied Sciences 10, no. 10: 3651. https://doi.org/10.3390/app10103651

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop