다섯 가지 측면에서 ETH의 거래 비용 구성을 살펴보십시오.
W3.Hitchhiker
2022-07-26 12:00
本文约11761字,阅读全文需要约47分钟
이더리움에서 체인의 가장 가치 있는 자원은 가스인데, ETH 거래 비용은 무엇으로 구성되어 있습니까?

원작자: Xiang

원래 개정: 에블린

우리 모두 알다시피 이더리움에는 자체 가상 머신이 있습니다.

그게 무슨 뜻이야?

Bitcoin의 거래는 다음과 같습니다.

"샤오밍의 서명 확인이 통과되면 샤오밍은 10위안을 샤오홍의 주소로 송금합니다."

Ethereum의 트랜잭션은 다음과 같습니다.

"샤오밍의 서명이 확인되고 blablablabla 조건을 충족하면 샤오밍의 계좌에 있는 10위안을 샤오홍의 계좌로 이체하십시오."

blablablabla 조건은 실제로 Ethereum이 지원하는 조건부 판단 및 루프가 있을 수 있는 모든 논리 또는 프로그램이 될 수 있습니다. 그러나 여기에 문제가 있습니다. 불친절한 광부가 무한 루프를 포장하여 블록에 넣으면 모든 Ethereum 노드가 충돌하지 않습니까?

이런 일이 발생하지 않도록 이더리움에서는 각 블록의 Gas 상한선과 각 계산 단계에서 소모해야 하는 Gas의 양이 정해져 있습니다.

우리는 가스를 휘발유로 간단하고 대략적으로 이해할 수 있습니다. 예를 들어, 조건부 판단에는 10가스, 서명 확인에는 100가스, 상태 읽기 및 쓰기에는 10가스 등이 필요합니다. 그런 다음 각 트랜잭션은 이 트랜잭션에 필요한 가스를 표시해야 합니다. 지불하다). 예를 들어 특정 트랜잭션 이후에 "running 1000 gas"라고 표시하면 Ethereum의 노드가 이 트랜잭션을 실행하지만 계산이 1000 gas 이상을 소비해야 하는 경우 트랜잭션 단계의 실행 여부에 관계없이 중지됩니다. 마지막에.

예를 들어 무한루프를 작성했는데 각 루프가 10가스를 태울 것이고 블록의 가스 한도가 10,000이므로 이 프로그램에 대해 최대 10,000가스를 구매하면, 모든 노드는 1000개의 루프를 실행하고 사용자가 제공한 가스가 소진될 때까지 중지하며 무한 루프를 수행하지 않습니다.

그리고 이번에는 Ethereum과 Bitcoin의 또 다른 차이점으로 이어집니다.

비트코인에서 체인의 가장 소중한 자원은 공간입니다. 블록의 크기가 1M이고 블록을 생성하는 데 평균 10분이 걸리기 때문입니다.

이더리움에서 체인에서 가장 가치 있는 자원은 가스입니다. 왜냐하면 각 블록의 가스에는 상한선이 있고 평균 블록 시간도 고정되어 있고 단위 시간당 수행할 수 있는 계산 단계가 실제로 제한되어 있기 때문입니다. ETH의 TPS도 제한적입니다.

첫 번째 레벨 제목

ETH의 TPS

ETH의 TPS에 영향을 미치는 문제는 크게 다음과 같은 측면으로 나눌 수 있습니다.

  1. ETH 가스 메커니즘

  2. ETH 거래 비용

  3. ETH의 네트워크

  4. 병합 프로세스

  5. 첫 번째 레벨 제목

1. ETH의 가스 메커니즘

우리는 비트코인 ​​블록체인에서 소비되는 채굴자의 수수료가 BTC라는 것을 알고 있습니다. 통화는 1 ETH, 1 ETH = 1e18 Wei입니다. Wei는 가장 작은 금액입니다.작업 전반에 걸쳐 토큰 전송 및 계약 호출에 지불해야 하는 가스가 Wei로 계산됩니다.

  • 웨이의 기원

    Wei Dai는 암호화 및 암호화폐에 기여한 것으로 알려진 중국 컴퓨터 엔지니어로 Crypto++ 암호화 라이브러리를 개발하고 B-Money 암호화 시스템을 만들었으며 VMAC 메시지 인증 코드 알고리즘을 공동 제안했습니다. 2013년 이더리움의 가장 작은 단위인 Vitalik Buterin의 Wei는 그의 이름을 따서 명명되었습니다. 비트코인 백서의 참고자료 1위도 데이빗의 비머니인데, 나카모토 사토시도 비트코인 ​​초창기에 데이비드에게 여러 번 연락하고 싶어 했습니다.

현재 ETH 가스 소비 단위는 Gwei이며, 1 Gwei=1e9 Wei에 해당합니다.

간단히 말해서, 휘발유 가격은 휘발유의 단가이며, 주유 한도는 자동차 시동을 걸기 위해 필요한 휘발유의 최대량과 같습니다.

보다 구체적인 표현은 다음과 같습니다.

Gas Price이더리움에서 가스 1개 소모량을 계산하기 위한 Gwei의 기준량이며 단위는 Gwei입니다.

Gas Limit가스 소비량의 상한 단위입니다. 각 트랜잭션을 완료하는 데 사용되는 가스의 양(트랜잭션의 가스 한도).

블록 가스 한도블록의 일정량의 거래에 "적합"할 수 있는 거래에 사용되는 총 가스의 상한입니다. 노드가 패키징할 트랜잭션을 선택할 때 노드는 이 트랜잭션을 추가한 후 블록의 트랜잭션에서 사용하는 총 가스가 블록 가스의 상한을 초과하지 않도록 해야 합니다. 트랜잭션을 패키징하려면 가스 한도에 다른 트랜잭션의 가스 한도를 더한 값이 블록 가스 한도보다 작거나 같아야 합니다. 물론 트랜잭션을 현재 블록에 패키징할 수 없는 경우에도 다음 블록에 패키징할 기회가 있습니다. 블록의 가스 한도 크기는 동적으로 조정되며 런던 업그레이드는 이더리움에 대한 가변 크기 블록 가스 한도를 도입했습니다. 각 블록의 목표 크기는 1500 0000 가스이지만 블록 제한이 3000 0000 가스(목표 블록 크기의 2배)가 될 때까지 네트워크 수요에 따라 블록 크기가 증가하거나 감소합니다.

블록 가스 한도를 변경해야 하는 이유

  1. 블록 크기는 네트워크 트랜잭션 수에 따라 자유롭게 조정할 수 있습니다. 네트워크 트랜잭션 볼륨이 크면 확장이 자동으로 실현될 수 있습니다.

  2. 악의적인 사용자의 악의적인 for 루프 공격이 네트워크를 중단시키는 것을 방지합니다.

악의적인 사용자에 의한 매우 작은 계정의 지속적인 전송으로 인해 전체 네트워크가 마비됩니다.거래 수수료가 매우 낮을 때 무시할 수 있습니다.따라서 Ethereum은 가스 개념을 도입했습니다.스마트 계약의 모든 전송 및 실행은 소비됩니다. 일정 수수료가 가스인데, 가스가 소모되면 코드가 계속 실행되지 않아 악성코드의 for 루프가 계속해서 실행되지 않아 전체 네트워크가 다음 상태로 계속 이동할 수 없게 된다. 따라서 악의적인 공격 코드를 방지하기 위해 계산 및 저장 비용을 지불해야 함을 알고 있습니다.

거래 비용이 TPS에 미치는 영향

첫 번째 레벨 제목

2. ETH 거래 비용

이더리움의 기본 기술 및 가스 설계는 Gavin Wood에 의해 완성되었으며 자세한 내용은 Gavin Wood가 작성한 노란색 종이를 참조하십시오.

이미지 설명

스크린샷 출처:https://ethereum.github.io/yellowpaper/paper.pdf

가스의 개념뿐만 아니라 ETH를 사용하는 데에도 수수료가 있습니다. 일반적으로 모든 트랜잭션에는 관련된 가스가 있습니다. 트랜잭션 전송 비용은 고유 비용과 실행 비용의 두 부분으로 구성됩니다.

실행 비용은 트랜잭션에 필요한 ETH 가상 머신(EVM) 리소스의 양에 따라 달라지며 트랜잭션을 실행하는 데 필요한 작업이 많을수록 실행 비용이 높아집니다.

고유 비용은 트랜잭션 부하(페이로드)에 의해 결정되며 트랜잭션 부하는 다음 세 가지 부하로 나뉩니다.

  • 트랜잭션이 스마트 계약을 생성하는 경우 페이로드는 스마트 계약을 생성한 EVM 코드입니다.

  • 트랜잭션이 스마트 계약 기능을 호출하는 경우 페이로드는 메시지 실행을 위한 입력 데이터입니다.

  • 보조 제목

고유 비용 가스

Nzeros는 바이트가 0인 트랜잭션 로드의 총 바이트 수를 나타내고 Nnonzeros는 바이트가 0이 아닌 트랜잭션 로드의 총 바이트 수를 나타낸다고 가정합니다. 거래 고유 비용은 다음 공식으로 계산할 수 있습니다. Yellow Book의 6.2장을 참조하십시오.

고유 비용 = Gtxdatazero × Nzeros + Gtxdatanonzero × Nnonzeros + Gtxcreate + Gtransaction + Gasscesslist 비용

트랜잭션 생성 및 실행과 관련된 비용의 수수료 일정은 Yellow Paper의 부록 G에서 확인할 수 있습니다. 그 중 내재원가와 관련된 내용은 다음과 같다.

  • Gtransaction = 21,000 Wei

  • Gtxcreate = 32,000 Wei

  • Gtxdatazero = 4 Wei

  • Gtxdatanonzero = 16 웨이(이스탄불 업그레이드 전 68 웨이)

  • Gasscesslistaddress = 2400 Wei

  • Gasscessliststorage = 1900 Wei

ETH는 네이티브 토큰이기 때문에 스마트 컨트랙트가 없고 컨트랙트와 상호 작용할 필요가 없으므로 ETH 전송이 가장 저렴하고 21,000 가스 한도의 구성만 필요합니다. ETH 전송에서 일부 데이터를 추가해야 하는 경우 위의 공식을 참조할 수 있습니다.

아래 그림과 같이 tp지갑이 작동되며, 이체시 0바이트 2개와 0이 아닌 바이트 2개가 추가됩니다. 위 공식에 따라 계산됩니다.

이미지 설명

트랜잭션 고유 비용은 트랜잭션에서 설정한 가스 한도보다 작아야 합니다.

고유 비용을 알면 거래 고유 비용이 가스 한도보다 높으면 거래가 불법으로 간주되는 이유를 이해할 수 있습니다. Gas Limit은 트랜잭션이 실행될 때 소모될 수 있는 Gas의 상한을 규정하며 트랜잭션을 실행하기 전에 고유 비용이 Gas의 상한보다 높다는 것을 알게 되면 트랜잭션을 실행할 이유가 없습니다. (트랜잭션 전에 오류가 보고되기 때문입니다.)

다른 토큰의 전송은 ETH의 21,000 가스 한도보다 훨씬 높을 것입니다. 다른 토큰은 스마트 계약을 통해 트랜잭션을 실행하기 때문에 일반 전송보다 더 복잡한 계산 및 작성이 필요합니다.

Gas Limit 범위는 조정이 가능하지만 너무 적게 채우면 거래에 실패할 수 있습니다. 마치 기름값이 비싼 것처럼 콜라병을 연료탱크로 사용하고 100km를 달려야 하지만, 사실은 당신이 아직 고속도로에 가본 적이 없다는 것입니다. 자동차에는 가스가 없으므로 가스 한도가 광부들이 소비하기에 충분하지 않으면 코드 실행이 중단됩니다. 그래도 광부들은 인건비 가스를 모으겠지~

ETH의 현재 tps의 대략적인 범위는 무엇입니까?

2022년 2월 28일 오후 블록 가스 한도는 약 30,000,000, 이더리움의 블록 생성 시간은 약 13초, 최소 트랜잭션 비용은 21,000, ETH에 해당하는 tps의 상한은 약 110입니다. 트랜잭션, 하지만 컨트랙트와 상호 작용하는 트랜잭션이므로 ETH의 실제 tps는 10 이상에 불과합니다.

실행 비용 가스

이더리움에서 트랜잭션을 실행하면 상태가 변경됩니다. 여러 트랜잭션이 블록으로 패키지되고 각 블록은 트랜잭션 목록과 동일합니다. 트랜잭션이 순서대로 실행되면 새로운 법적 상태가 출력됩니다.

트랜잭션은 다음 단계로 실행됩니다.

  1. 보낸 사람 계정의 nonce 값을 1씩 증가
    트랜잭션이 전송될 때마다 발신자 계정 nonce가 증가합니다. 이 작업은 트랜잭션 실행이 시작될 때 완료되며 트랜잭션 실행이 실패하면 계정 nonce 값이 롤백됩니다.

  2. 송금인의 계좌에서 거래 선불 금액(가스 한도 × 가스 가격)을 공제합니다.
    발신인의 계정 잔액에서 거래 선불 금액을 차감합니다.이 메커니즘은 간단합니다. 발신인은 자발적인 실행 거래 비용(gasLimit × gasPrice)을 지불합니다.

  3. 트랜잭션이 실행에 사용될 수 있는 가스 값 결정(가스 한도 - 고유 비용)
    거래의 총 가스 한도에서 내재 비용을 공제한 후 남은 것은 거래를 실행하는 데 사용할 수 있는 가스입니다.

  4. 트랜잭션에 포함된 작업 실행(스마트 계약 전송, 호출 또는 생성)
    트랜잭션 실행에는 EVM 작업 목록도 포함되며 EVM 작업이 전혀 필요하지 않은 유일한 트랜잭션은 일반 전송입니다.
    각 EVM 작업에는 해당 가스 비용이 있으며 트랜잭션 실행 중에 EVM 작업이 수행될 때마다 해당 가스 비용이 사용 가능한 가스에서 차감됩니다. 다음 두 가지 조건 중 하나가 발생할 때까지 중지하지 마십시오.

    사용 가능한 가스가 소진되어 실행 실패

    실행 후에도 여전히 사용 가능한 가스가 남아 있거나 0입니다.

  5. SELFDESTRUCT 및 SSTORE 기능을 통한 환불 발신자
    이더리움에서 SELFDESTRUCT opcode는 더 이상 필요하지 않은 스마트 계약을 파괴하는 데 사용됩니다. 파기된 각 계약에 대해 실행자는 24,000 Wei를 수집할 수 있습니다.
    마찬가지로 SSTORE opcode를 사용하여 0을 쓸 때(효과적으로 값을 삭제) 운영자는 각 0을 쓸 때마다 1500 Wei를 청구할 수 있습니다.
    환불에 대한 한 가지 흥미로운 점은 환불에도 상한선이 있다는 것입니다. 이 상한선은 채굴자가 트랜잭션을 실행하는 데 필요한 계산 시간의 상한선을 파악할 수 있도록 합니다. (가스 요금 및 환불에 대한 자세한 지침은 다음에서 확인할 수 있습니다.설계에 의한 이더리움의 합리성기사에서 찾았습니다).
    또 다른 중요한 점은 거래에 포함된 모든 작업이 실행된 후에만 환불이 이루어진다는 것입니다. 따라서 반환되어야 하는 모든 가스는 트랜잭션 실행 프로세스에서 소비되지 않으므로 가스가 절대 고갈되지 않는 트랜잭션_을 방지할 수 있습니다.

  6. 사용하지 않은 가스를 거래 발신자에게 환불
    거래에 사용된 선불 금액이 거래에 사용된 가스를 초과하는 경우 송금인은 거래를 실행한 후 남은 가스를 회수할 권리가 있습니다.

  7. 수혜자 계정으로 마이닝 진행금 이전
    거래를 실행하는 데 사용되는 모든 가스는 거래 수수료로 간주되며 채굴자가 얻습니다. 이 메커니즘은 채굴자가 네트워크 보안 수준에서 지속적으로 블록을 생산하고 지속적으로 협력하도록 장려합니다.

MUL, DIV, ADD, SUB 등의 트랜잭션 실행에 수반되는 운영 비용은 아래 Yellow Book의 해당 내용을 참조하십시오.

가스 및 tps와 관련된 EIP 체계:

  1. EIP-5: RETURN 및 CALL의 가스 사용량 조정

  2. EIP-150: 다수의 IO 작업에 대한 가스 비용 변경

  3. EIP-158: 상태 정리

  4. EIP-1108: alt_bn128 사전 컴파일된 가스 비용 절감

  5. EIP-1283: SSTORE opcode에 대한 가스 조정

  6. EIP-2028: 트랜잭션 데이터 사용 비용 절감

  7. EIP-2200: 순 가스 계량의 구조화된 정의

  8. EIP-2565: ModExpGas 비용 지정

  9. EIP-1559: ETH 1.0 체인의 수수료 시장 변화

  10. EIP-2929: 상태 액세스 opcode에 대한 가스 비용 증가

  11. EIP-1077: 계약 통화용 가스 릴레이

  12. EIP-1087: SSTORE 작업을 위한 가스 계량

  13. EIP-1285: CALL opcode에 GcallstipendGas 추가

  14. EIP-1380: 내부 통화에 대한 가스 비용 감소

  15. EIP-1613: 주유소 네트워크

  16. EIP-1930: 엄격한 가스 시맨틱으로 호출

  17. EIP-2045: EVM opcode에 대한 세분화된 가스 비용

  18. EIP-2046: 사전 컴파일에 대한 정적 호출에 대한 가스 비용 감소

  19. EIP-2542: 새 opcode TXGASLIMIT 및 CALLGASLIMIT

  20. EIP-3322: 계정 가스 저장 opcode

  21. EIP-2780: 내부 트랜잭션 가스 감소

  22. EIP-4488: 트랜잭션 콜데이터 가스 및 총 콜데이터 한도 감소

  23. EIP-4844: 샤딩된 Blob 트랜잭션

EIP-1559

2019년 V God이 제안했으며 2021년 8월 5일에 출시될 예정입니다.

순간적인 혼잡을 설명하기 위해 블록 크기를 소각하고 동적으로 확장/축소하는 고정된 블록당 거래 수수료로 구성된 거래 가격 책정 메커니즘입니다.

거래 발신자는 다음 두 가지 값을 제공하여 수수료를 지정합니다.

  • 가스 가격을 계산하기 위해 "기본 요금"에 "가스 프리미엄"이 추가됩니다. "가스 프리미엄"은 낮은 값(예: 1gwei)으로 설정하여 마이너에게 엉클 비율 위험을 보상하거나 높은 값으로 설정하여 갑작스러운 높은 거래량에서 경쟁할 수 있습니다. 채굴자에게 "가스 프리미엄"이 주어집니다.

  • 동기 부여

동기 부여

"이더리움의 현재 "최상가 경매" 수수료 모델은 비효율적이고 사용자에게 비용이 많이 듭니다. 이 EIP-1559는 네트워크 수요에 따라 기본 네트워크 수수료를 조정하여 이 메커니즘에 대한 대안을 제안하여 더 나은 수수료 가격 효율성을 만들고 복잡성을 줄입니다. 불필요하게 높은 수수료를 지불하지 않으려면 클라이언트 소프트웨어가 필요합니다."

현재 이더리움 시스템에서는 새로 제출된 트랜잭션이 채굴자에 의해 다음 블록으로 패키징될 때까지 기다려야 하지만 이러한 트랜잭션은 Gas Price 매개변수를 증가시켜 네트워크 평균보다 높게 만들어 채굴자가 자체적으로 패키징하도록 장려할 수 있습니다. 거래. 채굴자들은 항상 거래 수수료가 가장 큰 트랜잭션을 새 블록에 포함하기를 원하므로 다음 블록에 포함될 것으로 예상되는 트랜잭션은 항상 가스 가격이 가장 높은 트랜잭션입니다.

이 최고 가격 경매 모델의 문제는 거래 수요가 높은 기간 동안 상황이 빠르게 통제 불능이 될 수 있다는 것입니다. 블록이 가득 차면 사용자가 다른 블록보다 높은 가격에 트랜잭션을 포함시키려고 하기 때문에 다음 블록에 트랜잭션을 포함시키는 비용(트랜잭션 수수료)이 급격히 증가할 수 있습니다.

현재 마이너는 단일 블록에 패키지된 트랜잭션 수를 늘릴 수 있는 능력(참고: 블록 가스의 상한을 높이는 등)이 있지만 이 상한은 곧 변경할 수 없으며 실제로 마이너는 더 많은 것을 사용할 의향이 있습니다. 블록 가스 한도를 점점 더 높이는 대신 작은 전체 블록을 사용합니다(광부의 경우 블록이 크면 엉클 블록 비율로 인해 더 높은 위험이 발생합니다). 특히 지갑이 가스 가격 책정 알고리즘을 사용하여 트랜잭션이 특정 시간 프레임 내에 포함되는 경우 트랜잭션을 다음 (거의) 전체 블록에 포함시키기 위해 상당히 높은 트랜잭션 수수료를 지불하게 될 수 있습니다.

EIP-1559는 가스 요금에 "기본 요금"(기본 요금) 개념을 도입했습니다. 이 요금은 동적으로 조정되도록 설정됩니다. 네트워크가 블록당 목표 가스 사용량을 초과하면 "기본 요금"이 약간 증가하고 수량이 목표 이하일 때 "기본 수수료"가 약간 떨어집니다. 이 "기본 수수료"는 채굴자의 주머니로 가지 않고 소멸됩니다.

채굴자들이 패키지 트랜잭션을 하도록 동기를 부여하기 위해 사용자는 "Tip"(팁) 매개 변수도 설정하고 트랜잭션을 블록에 포함시키기 위해 지불할 최대 금액을 설정하면 채굴자는 이 "Tip"을 받게 됩니다. "(팁).

네트워크 수요의 순간적인 변화에 따라 "기본 수수료"가 심하게 변동하지 않기 때문에 사용자는 "최고 가격 경매" 모델이 초래하는 비효율성에서 다소 벗어나 있습니다("팁" 수수료는 여전히 최고 가격 모델임). "기본 수수료"는 채굴자에게 주어지는 대신 소각되므로 채굴자는 거래 수수료를 조작할 유인이 없습니다. 중요한 것은 이 메커니즘이 네트워크 거래 수수료를 자동으로 추정하여 지갑 개발자가 가지고 있는 주요 문제를 해결하여 거래 수수료 추정치를 보다 예측 가능하게 만든다는 것입니다.

간단한 요약

사용자 경험을 개선하고, 과도한 가스 비용 증가를 방지하고, 시장을 더 잘 예측하고, L2 운영 비용 평가에 도움이 되고, 채굴자의 이익을 줄이고, 더 많은 ETH를 파괴하고, ETH 및 layer2에 혜택을 주지만 tps에는 거의 영향을 미치지 않습니다.

EIP-4488

2021년 11월 V God이 제안했으며, 아직 초안 단계(논의 및 확정 예정)

동기 부여

동기 부여

롤업은 단기, 중기 및 장기적으로 이더리움을 위한 유일한 무신뢰 확장 솔루션입니다. L1 거래 수수료는 오랫동안 매우 높았으며 전체 생태계의 롤업을 촉진하는 데 필요한 모든 조치를 취해야 할 긴급한 필요성이 있습니다. 롤업은 많은 이더리움 사용자의 수수료를 크게 줄입니다. Optimism과 Arbitrum은 종종 이더리움의 L1 레이어 자체보다 ~3-8배 낮은 수수료를 제공하는 반면 ZK 롤업은 데이터 압축이 더 우수하고 서명 포함을 피할 수 있어 수수료가 ~40-100배 더 낮습니다.

그러나 그럼에도 불구하고 많은 사용자에게 요금이 너무 비쌉니다. 롤업 자체의 만성적인 부적절성에 대한 장기적인 해결책은 체인의 롤업을 위해 ~1-2MB/초의 전용 데이터 공간을 추가하는 데이터 샤딩이었습니다. 그러나 데이터 샤딩은 여전히 ​​구현 및 배포에 상당한 시간이 걸립니다. 따라서 롤업 비용을 더욱 줄이고 전체 생태계가 롤업 중심의 이더리움으로 전환하도록 장려하기 위한 단기 솔루션이 필요합니다.

이 EIP는 보안 위험을 줄이면서 신속하게 구현할 수 있는 단기 솔루션을 제공합니다.

현재 블록의 가스 한도는 약 30000000이고 해당 블록의 최대 블록 크기는 30000000 / 16 = 1875000바이트입니다. calldata를 16개에서 3개로 줄이는 것만으로도 최대 블록 크기가 10000000바이트로 늘어나 이더리움 P2P 네트워크가 전례 없는 압박을 받게 되므로 이 제안은 calldata의 총 크기를 제한합니다. 공식은 다음과 같습니다.

간단한 요약

보조 제목

거래 비용이 TPS에 미치는 영향

첫 번째 레벨 제목

3. ETH 네트워크

ETH 노드 간의 데이터는 P2P 네트워크를 통해 전송되며 ETH의 P2P 네트워크는 노드 간 블록 데이터의 동기화 속도에 영향을 미치므로 TPS의 성장도 제한합니다.

Devp2p는 Ethereum P2P 네트워크를 구성하는 네트워크 프로토콜 집합입니다. Ethereum과 관련된 모든 웹 애플리케이션의 요구 사항을 충족합니다.

이 시스템은 인터넷을 통해 다른 노드의 검색 및 보안 통신을 제공합니다.

IPFSlibp2p모듈 구성 요소에서 P2P 네트워크를 조립하기 위한 모듈 모음으로 의도된 프로젝트입니다.

두 프로젝트는 서로 다른 범위를 가지고 있고 서로 다른 목표를 염두에 두고 설계되었기 때문에 비교하기 어렵습니다. devp2p는 이더리움의 요구 사항을 잘 충족하기를 바라는 통합 시스템 정의(다른 응용 프로그램에도 적합할 수 있음)인 반면 libp2p는 단일 응용 프로그램을 특별히 지원하지 않는 프로그래밍 라이브러리 구성 요소 모음입니다.

보조 제목

ETH 네트워크와 관련된 EIP:

  1. EIP-8: devp2p 순방향 호환성 요구 사항

  2. EIP-627: 위스퍼 사양

  3. EIP-706: DEVp2p 고속 압축

  4. EIP-778: 이더리움 노드 기록(ENR)

  5. EIP-868: v4 ENR 확장

  6. EIP-2124: 트랜잭션 데이터 사용 비용 절감

  7. EIP-2364: ETH/64: forkid 확장 프로토콜 핸드셰이크

  8. EIP-2464: ETH/65: 트랜잭션 알림 및 검색

  9. EIP-2481: ETH/66: 요청 식별자

  10. EIP-2976: 가십 기반 유형 트랜잭션

  11. EIP-4444: 실행 계층 클라이언트에 대한 기록 데이터 제한

EIP-4444

2021년 11월George KadianakislightclientAlex Stokes동기 부여

동기 부여

클라이언트는 p2p 레이어에서 1년보다 오래된 과거 영수증 제공을 중단합니다. 클라이언트는 이러한 기록 데이터를 로컬에서 정리할 수 있습니다.

기록 블록 및 영수증은 현재 400GB 이상의 디스크 공간을 차지합니다(계속 증가 중!). 따라서 체인을 확인하려면 일반적으로 사용자에게 1TB 디스크가 있어야 합니다.

새 블록의 유효성 검사에는 기록 데이터가 필요하지 않으므로 클라이언트가 체인의 끝을 동기화하면 JSON-RPC를 통해 명시적으로 요청하거나 피어가 체인을 동기화하려고 시도하는 경우에만 기록 데이터가 검색됩니다. 기록을 정리함으로써 제안은 노드의 하드 디스크 요구 사항을 줄입니다. 기록 데이터를 정리하면 클라이언트가 기록 블록을 처리하는 코드를 제거할 수도 있습니다. 즉, 실행 중인 클라이언트는 업그레이드할 때마다 복잡한 변경 사항을 처리하는 코드 경로를 유지할 필요가 없습니다.

궁극적으로 이러한 변화는 클라이언트가 PoS를 기반으로 하는 보다 가벼운 동기화 전략을 채택함에 따라 네트워크에서 대역폭 사용량이 감소하는 결과를 가져올 것입니다.

간단한 요약

보조 제목

ETH 네트워크가 TPS에 미치는 영향

첫 번째 레벨 제목

4. 병합 프로세스

비콘 체인

비콘 체인

비콘 체인은 확장된 샤딩 및 스테이킹 네트워크를 관리하거나 조정합니다. 그러나 오늘날 이더리움 메인넷과 같지는 않을 것입니다. 계정 또는 스마트 계약을 처리할 수 없습니다.

비콘 체인의 역할은 시간이 지남에 따라 변경되지만, 이는 안전하고 지속 가능하며 확장 가능한 Ethereum의 기본 구성 요소입니다.

비콘 체인은 이더리움에 POS를 도입할 것입니다. 이것은 Ethereum을 보호하는 데 도움이 되는 새로운 방법입니다. 이더리움을 더 건강하게 만들고 그 과정에서 더 많은 ETH를 얻을 수 있는 공공재라고 생각하세요.

채광채광(현재 웹이 있는 방식) 더 쉽습니다. 장기적으로 이것은 Ethereum을 더 안전하게 만드는 데 도움이 될 것입니다. 더 많은 사람들이 네트워크에 참여할수록 더 분산되고 안전해집니다.

처음에 비콘 체인은 오늘날 우리가 사용하는 이더리움 메인넷과 별도로 존재할 것입니다. 그러나 결국에는 연결될 것입니다. 계획은 메인넷을 Beacon Chain에 의해 제어되고 조정되는 POS 시스템으로 "병합"하는 것입니다.

비콘 체인은 2020년 12월에 시작됩니다.

ETH2 포기

Ethereum 프로토콜은 큰 변화를 겪고 있습니다. 클라이언트 팀은 이더리움의 보안 및 분산화를 개선하는 동시에 글로벌 사용자의 요구를 충족하기 위해 프로토콜을 업그레이드하고 이더리움의 용량을 확장하고 있습니다. 프로토콜 개발 외에도 이더리움에서 매우 중요한 변화는 "Eth1" 및 "Eth2"라는 용어의 사용 중단입니다. 2021년 말부터 핵심 개발자는 "Eth1" 및 "Eth2" 사용을 중단하고 각각 "실행 계층" 및 "합의 계층"으로 대체합니다. 오늘 1분기 로드맵에서 강조한 바와 같이ethereum.org이것도 동일하게 변경합니다.

  • Eth1 → 실행 레이어

  • Eth2 → 합의 계층

  • 실행 계층 + 합의 계층 = 이더리움

개요

개요

  • Eth1 및 Eth2(Ethereum 2.0)라는 용어는 단계적으로 폐지됩니다.

  • Execution Layer(Eth1) 대 Consensus Layer(Eth2)의 새로운 용어

  • 분산된 방식으로 이더리움을 확장하는 로드맵은 변경되지 않습니다.

  • 사용자는 아무것도 할 필요가 없습니다

이더리움 2.0은 어디에서 왔습니까?

이더리움은 로드맵의 일부로 분산된 방식으로 네트워크를 확장하고 PoS(Proof of Stake)로 전환할 계획이었습니다. 앞서 연구원들은 이들 계획을 따로 작업했지만, 2018년 즈음 '이더리움 2.0' 로드맵에 위의 내용이 모두 포함됐다.

로드맵의 일부로 기존 PoW 체인(Eth1)은 결국 난이도 폭탄을 통해 폐기될 것입니다. 사용자와 애플리케이션은 새로운 Ethereum PoS 체인(예: Eth2)으로 마이그레이션됩니다.

2019년 초에 ConsenSys가 게시한 Serenity Roadmap에 세부 사항이 설명되어 있습니다.

무엇이 바뀌었나요?

비콘 체인에 대한 작업이 시작되면서 단계적 Ethereum 2.0이 완전히 제공되는 데 몇 년이 걸릴 것이라는 것이 분명해졌습니다. 이로 인해 더 이상 액세스되지 않는 네트워크에서 상태를 제거하여 상태 인플레이션 속도를 제한하는 패러다임인 Stateless Ethereum과 같은 PoW 체인에 대한 연구 이니셔티브가 부활했습니다.

PoW 체인의 장기적인 지속 가능성에 대한 관심이 높아지고 Beacon Chain이 Ethereum 2.0 로드맵의 나머지 부분보다 더 빨리 준비될 것이라는 인식이 결합되어 "Early Merge" 제안으로 이어졌습니다. 이 제안에서 기존 EVM 체인은 Ethereum 2.0의 "샤드 0" 역할을 합니다. 이렇게 하면 PoS로의 전환 속도가 빨라질 뿐만 아니라 PoS로 전환하기 위해 애플리케이션 엔드포인트를 마이그레이션할 필요가 없으므로 애플리케이션 전환이 더 원활해집니다.

이 제안이 발표된 지 얼마 되지 않아 Danny Ryan은 그의 기사 "The Eth1+Eth2 Client Relationship"에서 기존 Eth1 클라이언트를 활용하여 이를 달성할 수 있는 방법을 탐구했습니다. 이렇게 하면 병합된 시스템을 제공하는 데 필요한 개발 작업이 크게 줄어들고 이미 메인넷에 있는 전투 테스트를 거친 클라이언트를 최대한 활용할 수 있습니다. 같은 시기에 이더리움을 확장하는 실행 가능하고 안전한 방법으로서 롤업에 대한 연구가 유망한 것으로 입증되었습니다. 복잡하고 불확실한 확장 솔루션을 기다리는 데 수년을 소비하는 대신 샤딩 대신 롤업 기반 확장에 집중하는 것이 좋습니다.

텍스트

Eth2를 사용할 수 없는 이유는 무엇입니까?

생각 모드

Eth2 브랜드 이름의 주요 문제 중 하나는 Eth2가 새로운 이더리움 사용자를 위한 불완전한 정신 모델을 생성한다는 것입니다. 그들은 직관적으로 Eth1이 먼저 나오고 Eth2가 뒤따르거나 Eth2가 생성되면 Eth1이 더 이상 존재하지 않는다고 생각할 것입니다. 두 가지 생각 모두 잘못되었습니다. 더 이상 Eth2라는 용어를 사용하지 않음으로써 미래의 사용자는 더 이상 쉽게 오해할 수 있는 사고방식을 형성하지 않을 것입니다.

용인

이더리움 로드맵의 업그레이드로 이더리움 2.0은 이더리움 로드맵의 의미를 정확하게 표현할 수 없게 되었습니다. 엄격하고 정확한 어휘 선택은 대중이 이더리움의 내용을 더 잘 이해하도록 도울 수 있습니다.

사기 방지

불행하게도 일부 악의적 행위자는 Eth2 잘못된 이름을 악용하여 사용자가 ETH를 "ETH2" 토큰으로 교환하도록 속이거나 Eth2가 업그레이드되기 전에 어떻게든 ETH를 마이그레이션하도록 시도했습니다.

이번에 업데이트된 용어가 이러한 사기 요소를 명확하게 제거하고 생태계를 더 안전하게 만들 수 있기를 바랍니다.

서약에 대한 설명

비콘 체인

병합

초기의,비콘 체인메인넷과 별도로 실행됩니다. 이더리움 메인넷은 계속해서 POW를 통과합니다.비콘 체인이 사용하더라도 보호됩니다.POS 합의는 병렬로 실행됩니다. 병합은 두 시스템이 마침내 합쳐지는 것입니다.

이더리움 메인넷이 고속으로 달리는 관광객들로 가득 찬 기차라고 상상해보세요.

이번 합병으로 이더리움의 작업 증명이 끝났고 보다 지속 가능하고 환경 친화적인 이더리움 시대가 열렸습니다. 이 시점에서 Ethereum은 실현에 더 가까워질 것입니다.이더리움 비전에 설명된 대로 포괄적이고 안전하며 지속 가능하며 사용자는 전체 프로세스를 인식하지 못합니다.

합병이 발생하면 이더리움 메인넷을 검증하기 위해 스테이커가 할당됩니다.POW 모드 마이닝은 더 이상 필요하지 않습니다., 그래서 광부들은 새로운 지분 증명 시스템에 수입을 투자할 수 있습니다.

보조 제목

합병이 TPS에 미치는 영향

첫 번째 레벨 제목

5. 단편화

로드를 분산하기 위해 데이터베이스를 수평으로 분할하는 프로세스인 샤딩은 컴퓨터 과학에서 일반적인 개념입니다. Ethereum의 맥락에서 샤딩은 "샤드"라는 새로운 체인을 생성하여 네트워크 혼잡을 줄이고 초당 트랜잭션을 증가시킵니다.

이더리움의 샤딩 프로세스는 다단계 업그레이드 프로세스가 될 것이며 최종적으로 샤딩 체인은 네트워크 부하를 64개의 새로운 체인으로 분산시킬 것입니다.

보조 제목

조각화 기능

분산된 상태를 유지하는 샤딩은 확장할 수 있는 좋은 방법이며, 샤드 체인을 사용하면 유효성 검사기는 전체 네트워크에 대한 데이터를 저장/실행하는 대신 검증하는 샤드에 대한 데이터만 저장/실행하면 됩니다. 이것은 작업 속도를 높이고 하드웨어 요구 사항을 크게 줄입니다.

샤딩은 궁극적으로 이더리움이 개인 노트북이나 휴대폰에서 실행될 수 있도록 합니다. 더 많은 사람들이 샤딩된 이더리움에서 클라이언트에 참여하거나 실행할 수 있습니다. 이렇게 하면 보안이 향상되고 네트워크가 분산될수록 공격 표면이 작아집니다.

보조 제목

샤드 체인의 세부 사항에 대한 논의

샤드 체인 버전 1: 데이터 가용성

첫 번째 샤드 체인이 실행 중일 때만 네트워크에 추가 데이터를 제공합니다. 거래나 스마트 계약을 처리하지 않습니다. 그러나 롤업과 결합하면 많은 트랜잭션을 처리합니다.

롤업은 오늘날 존재하는 "계층 2" 기술입니다. 이를 통해 dapp은 트랜잭션을 오프체인 단일 트랜잭션으로 묶거나 "롤업"하고 암호화 증명을 생성하여 체인에 제출할 수 있습니다. 이렇게 하면 트랜잭션에 필요한 데이터가 줄어듭니다. 샤딩이 제공하는 모든 추가 데이터 가용성과 결합하여 초당 100,000건의 트랜잭션을 얻을 수 있습니다.

샤드 체인 버전 2: 코드 실행

버전 1 샤딩이 제공하는 처리 능력을 고려할 때 샤딩을 처리 실행에도 적용해야 하는지 여부. 커뮤니티에는 논쟁이 있습니다. Vitalik Buterin은 논의할 가치가 있는 3가지 잠재적인 옵션을 제안했습니다.

(1) 상태 실행이 필요하지 않음

이는 스마트 계약을 처리할 수 있는 샤드를 만들지 않고 데이터 웨어하우스로만 사용한다는 의미입니다.

(2) 조각화 구현의 일부

더 똑똑해지기 위해 모든 샤드(현재 계획된 64개)가 필요하지 않은 절충안이 있을 수 있습니다. 이 기능을 일부에만 추가하고 나머지는 그대로 둘 수 있습니다. 배송 속도를 높일 수 있습니다.

(3) (ZK) 스나크를 기다리는 중

보조 제목

조각 예상 시간

병합병합보조 제목

조각화가 TPS에 미치는 영향

원본 링크

원본 링크

W3.Hitchhiker
作者文库