가볍게 머리를 식혀가는 의미에서
이더리움의 가스비를 계산하는 방법을 소개해 보겠습니다.
흔히 이더리움의 트랜잭션 수수료를 가스(Gas) 라고 부르고 있죠.
이는 말그대로 트랜잭션의 연료의 개념 으로 사용되기 때문입니다.
여기서 가스의 단위는 기위(GWei) 를 사용하고 있죠.
기위는 원래 Wei 가 기본 단위인데 이건 너~~~무 낮은 단위라 중간 쯤인 기가(Giga) Wei 를 사용하기로 암묵적으로 정해졌습니다. 그래서 줄여 기위(GWei) 라고 부릅니다.
자~ 여기까진 어렵지 않죠~
그럼 실제로 가스비를 계산해 볼께요.
가스비는 가스한도 * 가스가격 입니다.
가스 한도는 트랜잭션 수행 과정에서 소비될 수 있는 최대 가스 양으로 트랜잭션에 가스가 최대 이만큼 소모됩니다. 라는 의미입니다. 여기에 가스 가격이 변하면서 곱해지게 되죠. 가스 한도는 체인마다 거의 정해 놓고 쓰기 때문에 수정할 일은 거의 없습니다.
그렇다면 변화되는 건 가스 가격인데 이건 거의 체인 내에서 발생되는 트랜잭션의 수에 따라 거의 실시간으로 변화 됩니다.
블록체인에서 제일 맘에 안드는 것이 돈 많이 내는 놈은 빨리 처리해주고 적게 내는 놈은 저~ 뒷전으로 밀리는 것 인데요.
전형적인 부익부 빈익빈의 모습입니다.
위의 그림에서 보는 것처럼 가스 가격은 Low, Average, High 등으로 나뉘게 됩니다. 물론 저 등급은 편하라고 나눈 것이고 설정이 가능하지만 큰 의미는 없겠죠.
High 요금을 지불하면 내 트랜잭션의 우선 순위가 올라가서 빠르게 처리되고, Low 요금을 지불하면 우선 순위가 낮아져 비싼 요금을 지불한 트랜잭션을 먼저 처리하고 이후에 처리하게 됩니다.
아~ 맘에 안들어~
보통 거래소나 중앙화 지갑들에서 수수료가 높은 이유는 트랜잭션 처리를 빠르고 안정적으로 하기 위해서 가스가격을 높게 책정후 트랜잭션을 발생 시키기 때문입니다. 물론 여기에 플랫폼 수수료도 떼어먹겠죠.
자. 이제 실제 계산을 위해 이더리움 가스 한도를 보면 일반적으로 21,000 을 사용 합니다.
가스한도 * 가스가격 = 21,000 * 28 GWei = 588,000 Gwei
1 Gwei 는 1/10억 Eth 니까
588,000 / 1,000,000,000 = 0.000588 Eth 가 되겠네요.
여기에 이더리움이 현재 약 $3,521 정도 되니까.
$3,521 * 0.000588 = $2.070348
오~ 많이 싸졌다.
마지막으로 정리하자면,
- 가스비를 너무 낮게 책정하면
: 우선 순위가 계속 밀리게 되어 무한 펜딩에 빠질 수 있음
- 수수료 반환 없음
: 무한 펜딩 취소를 위한 수수료 발생
: 다시 트랜잭션을 수행하기위한 수수료 발생
- 가스비가 부족하게 되면
: 가스한도를 초과하는 연산을 수행하게 되면 트랜잭션이 취소
- 수수료 반환 없음
해당 시점에 발생되는 네트워크 트랜잭션 상황을 잘~ 보고 설정해야 하는데요.
요즘엔 지갑에서 적정한 값을 추천하므로 그냥 따라가면 거의 실패가 없긴 합니다.
라떼는 말이야~
다~ 계산 해서 넣었다고…!!!
이더리움의 네트워크 상태 및 가스비 현황은 아래 사이트에서 확인 가능합니다.
Heatmap 을 통해서 트랜잭션이 몰리는 시간대를 가늠해 볼 수 있어 해당 시점은 피할 수가 있습니다.
그리고 날짜별 가스비 추이를 볼 수 있어서 좀 더 기다릴지 바로 수행할지 판단에 도움이 되기도 합니다.
이상 쉬어가는 코너였습니다.