PBL Ⅲ/BlockChain

[자료조사] 블록체인 성능평가 방법

myejinni 2022. 9. 25. 15:10

TPS(Transaction per sec)

: 거래 처리 속도를 부를 떄 표현하는 단위 (초 당 처리하는 트래픽 개수)

*TPS가 블록체인 성능을 가늠하는 중요 기준이나 절대지표는 아님

1. 최대 TPS = 트랜젝션이 과도하게 몰렸을 때 초당 몇 개나 처리되어 저장되는지

2. 현재 TPS = 최근 블록에 담긴 트랜젝션 수 / 블록 생성 시간 (평균적인 값을 구하려면 최근 n개 블록 표본 잡아 구하기)

 

* 비트코인 / 이더리움 = 이미 트랜젝션이 과도하게 발생하고 있기에 현재 TPS가 최대 TPS에 가까움

 

이더리움의 초당 처리 속도= 20TPS

ex. 1800개 디앱에서 1초에 하나의 거래가 일어난다 하더라도 이 중 20개밖에 처리하지 못함

 

 

블록체인 속도를 결정하는 3요소

= TPS, 블록생성시간, 확정(컨펌) 시간 

 

* 블록체인 속도

=내 행동이 블록체인에 저장되기까지의 시간

 

-> TPS가 높아도 블록 생성 시간이 길면 블록체인 처리 속도는 늦어짐

ex. 블록생성 시간=10분 , 트랜잭션 저장 시간=최소 5분

 

 

블록 생성 시간

: 트랜젝션이 처리되어 저자아되는데 걸리는 최소 대기시간

: 탈중앙화 자아점을 취하기 위해 지불하는 성능 비용

* 트랜젝션 자체가 많지 않은 상황에서는 TPS가 의미 없어 생성 시간이 더 중요함

 

확정 시간 = N(신뢰도) * 블록 생성 시간

 

: 내 트렌젝션이 메이저 포크에 들어 있다는 것을 확신하기까지의 대기 시간

-> 확정의 개념은 실존 X, 확률적으로 판단하는 것이므로 N도 매번 다름

 

 

=> 초당 얼마나 많은 트랜젝션을 처리하는 지 + 거래의 완결성 + 블록이 생성되는 주기

+ 블록 크기에 따른 처리량 변동 여부 + 탈중앙성을 보여주는 노드 수 + 합의 알고리즘의 효율성

+ 병렬 확장성이 포함되었는가

를 모두 고려해야 함

 

참고) 출처 한국블록체인학회(사)

블록체인핵심 기술 관점에서의 평가항목을 구분해 제시된 7개 핵심기술 핵심기술

‘분산합의’, ‘분산원장’, ‘고성능 트랜잭션’, ‘스마트 컨트랙트’, ‘네트워킹’, ‘보안성’, ‘암호’ 등으로 구성

+ 각 항목별로 각각 상/중/하로 구분할 수 있는 주요 내용을 제시

 

 

TPS 측정에 대한 4가지 방법

 

 

https://blog.naver.com/PostView.nhn?blogId=wisestone2007&logNo=222059486630