TON 트랜잭션에 대한 비용은 어떻게 책정됩니까?

Q2. TON 트랜잭션에 대한 비용은 어떻게 책정됩니까?

오픈 네트워크 위의 트랜잭션에 대한 가스비는 어떻게 책정됩니까?

A2:

가스비는 어떻게 측정될까요?

처음으로, 모든 TON 유저들은 수수료가 많은 요소에 의해 나온다는 것을 염두에 둬야 합니다. docs에 따르면 TON 수수료는 이 공식에 의해 책정됩니다.

transactionfee = storagefees + infwdfees + computationfees + actionfees + outfwdfees

storagefees는 블록체인에 스마트-컨트랙트를 저장하기 위해 지불하는 것입니다. 사실, 여러분은 블록체인에 스마트-컨트랙트가 저장되는 매 순간 비용을 지불하고 있습니다. 여러분의 TON 지갑 또한 스마트-컨트랙트이며 여러분이 트랜잭션을 받거나 보내는 매 순간 수수료를 부과합니다.

infwdfees는 블록체인 외부에서 메시지를 불러올 때 부과됩니다. 어떠한 메시지를 실행하기 전, 마지막 샤드체인의 벨리데이터들에게 전달이 되어야 합니다. 여러분이 트랜잭션을 생성할 때마다, 그것을 실행시킬 벨리데이터들에게 그것은 전달됩니다. 예를 들어, Tonkeeper와 같은 지갑 어플리케이션으로 생성하는 각각의 트랜잭션은 벨리데이터 노드들 중 누군가에게로 먼저 전달이 됩니다.

computationfees는 가상 머신에서 코드를 실행시킬 때 부과됩니다. 가상 머신은 전달된 메시지로부터 인풋 파라미터를 받아서 스마트-컨트랙트 코드를 실행시킵니다. 더 많은 코드가 실행될수록 더 많은 수수료는 부과될 것입니다. 예를 들어, 여러분들이 지갑을 이용해서 어떠한 트랜잭션(스마트 컨트랙트)을 보낼 때마다 지갑에 사용되는 스마트 컨트랙트 코드를 실행시킵니다.

actionfees는 스마트-컨트랙트 코드가 실행되고 난 이후 일어나는 일련의 과정들에 대한 비용입니다. 이 과정을 통해, 떠나가는 메시지들은 블록체인 위에서 눈에 보이는 과정이나 다른 스마트-컨트랙트로 보내집니다.

outfwdfees는 오프체인 서비스(예시: logs)와 외부 블록체인과 상호작용하기 위해 TON 블록체인 밖으로 메시지를 보낼 때 부과됩니다. 이 부과는 마지막 샤드체인들의 벨리데이터들에게 보내집니다. 구현되지 않았기 때문에 실행되지 않습니다.

모든 수수료는 정해져 있으며 특정 가스량에 고정되어 있지만, 가스비 그 자체는 고정되어 있지 않습니다(최근, 1 가스 유닛은 1000 nanoTONs임). TON의 많고 다른 파라미터 중 하나인 가스비는, 설정 가능하며 메인넷 상에서 진행하는 특별한 투표를 통해 바뀔 수 있습니다. 파라미터를 변경하려면 전체 벨리데이터 투표 수의 3분의 2를 획득해야 합니다.

그러면 하루 가스비가 1000배나 그 이상이 될 수도 있다는 의미인가요? 기술적으로 맞습니다. 하지만 사실은 아닙니다. 벨리데이터들은 트랜잭션을 진행할 때 수수료를 적게 받으며 높은 수수료를 받게 되면 트랜잭션 수가 줄어들고 벨리데이터를 함에 있어서 덜 효과적으로 만듭니다. 그래서 가스비를 인상할 이유가 없습니다.

TON의 수수료 크기는 트랜잭션 실행 시간, 계정 상태, 메시지 내용과 크기와 블록체인 네트워크 설정에 따라 측정되기 때문에 미리 계산하기 힘듭니다 - 그리고 또한 트랜잭션이 보내질 때까지 계산이 안되는 많은 변수들에 의해 측정됩니다. 그래서 NFT 마켓플레이스들이 만약에 대비해서 여분의 TON을 가져가고 나중에 돌려주는 이유입니다.

TON에 대해서는 여러분이 스마트-컨트랙트 실행과 스토리지(바이트*초) 사용에 대해 지불한다는 것을 알고 있는 것이 중요합니다. 이것은 여러분이 TON 지갑을 소유하는 것에 대해 수수료를 낸다는 것을 의미합니다(보통 매우 적습니다). 하지만, 만약 여러분이 충분한 시간만큼 TON 지갑을 사용하지 않았다면 보통보다 더 많은 수수료를 내야할 것입니다.

tonmon.xyz에 따르면 초당 평균 TON 트랜잭션 수는 현재 1.4입니다. 하지만 다른 블록체인들과 다르게 가스비는 트랜잭션 수가 엄청나게 증가해도 같을 것입니다. 공식 TON 웹사이트에 따르면, 블록체인은 수백만의 트랜잭션을 실행시킬 수 있고 필요하다면, 샤딩 덕분에 매 초 수천만 개의 트랜잭션을 처리할 수 있습니다.

오늘날, 모든 트랜잭션은 약 0.005 TON입니다. 심지어 TON의 가격이 50배 뛰었지만 트랜잭션은 다른 블록체인과 다르게 값이 쌉니다. 그리고 수수료가 비싸지는 것을 본 벨리데이터들이 이 값을 내릴 수 있다는 것 또한 잊으면 안됩니다.

이 질문에 대한 구독자에게 감사를 표합니다. 우리는 TON에 대한 종합적인 관점을 배우는데 흥미를 가집니다. 우리는 봇을 통해 구독자로부터 들어오는 질문들과 피드백을 환영합니다. 우리는 TON에 대한 어떠한 점이든 분석하고 깊게 파고드는 것을 좋아합니다.

가스비 측정

storage_fees storage_fees = ceil((account.bits * bit_price + account.cells * cell_price) * period / 2 ^ 16)

in_fwd_fees, out_fwd_fees msg_fwd_fees = (lump_price + ceil((bit_price * msg.bits + cell_price * msg.cells)/2^16))

ihr_fwd_fees = ceil((msg_fwd_fees * ihr_price_factor)/2^16)

// 메시지의 root cell 내의 bits는 msg.bits에 포함되지 않았습니다(lump_price가 지불함).

action_fees action_fees = sum(out_ext_msg_fwd_fee) + sum(int_msg_mine_fee)

Config 파일

모든 가격은 특정 가스량에 지정되어있고 변경될 수 있습니다: config 파일이 현재 가스비를 보여줍니다.

Config 파일로 가는 주소

storage_fees = p18

in_fwd_fees = p24, p25

computation_fees = p20, p21

action_fees = p24, p25

out_fwd_fees = p24, p25

originally appeared on @thedailyton

Last updated