EIP 1559에 대한 상태 업데이트 #4
저자 | 팀 베이코
저자 | 팀 베이코
요약 👀
➤ 이제 EIP-1559에 대한 자세한 경제적 분석이 있습니다.
➤ 대규모 네트워크에서 1559의 성능을 분석하기 위해 메인넷 수준의 용량으로 테스트넷을 구축하고 있습니다.
➤ BASE FEE 변경으로 인해 발생하는 거래 풀 문제를 해결하기 위한 진전이 이루어졌습니다.
➤ 단일 네트워크에서 레거시 트랜잭션 및 1559 스타일 트랜잭션의 동작을 분석하기 위한 새로운 시뮬레이션이 있습니다.
➤ OpenEthereum은 1559에 초점을 맞춘 풀타임 엔지니어를 고용하고 있습니다.
경제 분석 📑
2020년 12월, 최고의 게임 이론 및 컴퓨터 과학 연구원인 Tim Roughgarden은 EIP-1559에 대한 50페이지 이상의 경제 분석을 발표했습니다. 그는 보고서의 요지를 트윗과 보고서의 첫 부분에 썼지만 여기에서 전체 내용을 공유할 가치가 있습니다.
주석: 위 10개 항목의 번역을 볼 수 있습니다."이더리움 세븐데이 토크 • 2020/12/7"。
과거에 1559에 대한 비평가들은 1559가 이더리움 거래 수수료 시장에 대한 직관에 의존한다고 주장하면서 공식적인 경제 분석이 부족하다고 자주 언급했습니다. 이 보고서는 EIP-1559에 대한 철저하고 일반적으로 긍정적인 분석을 제공합니다. Nick Johnson 🎉과 같은 유명한 1559 회의론자들을 설득한 것 같습니다!
이 보고서는 추가 고려가 필요한 1559의 일부 측면, 즉 광부가 공모[0]했을 수 있는 상황과 기본 수수료 업데이트 규칙에 대한 더 나은 분석을 강조합니다. 제7차 EIP-1559 시행자 회의에서는 광부 담합 시나리오에 대해 논의했지만 명확한 결론이 도출되지 않았습니다. 기본 수수료 업데이트 규칙에 관해서는 이 분야의 전문가를 위한 트위터 콜을 시작했고 일부 사람들은 도움이 되기를 바라며 저에게 연락💪했습니다.
Roughgarden은 또한 이더리움 커뮤니티가 보고서를 최대한 활용하기를 바라며 질문, 의견 또는 우려 사항이 있는 경우 누구든지 그에게 연락할 수 있기를 바랍니다. 그의 웹사이트에는 다양한 연락처가 나와 있습니다.
대규모 주 테스트넷 📈
이전 업데이트에서 논의된 바와 같이, EIP-1559 테스트의 다음 이정표는 메인넷과 유사한 조건에서 테스트될 것입니다. 고려되는 첫 번째 방법은 실제로 메인넷에서 네트워크를 분기하고 난이도를 낮추고 EIP-1559를 시작하는 것입니다. 이렇게 하면 메인넷 상태의 복사본을 얻을 수 있지만 보안 문제로 인해 아이디어가 거부되었습니다[1].
대신 Besu 팀은 대규모 상태 테스트넷 생성기를 구축해 왔습니다. 생성기는 많은 수의 계정과 스토리지 슬롯을 입력으로 사용하고 다음 프로그램을 시작합니다."whale"소량의 ETH를 전송하고 각 입력에 대해 스토리지 슬롯[2]을 생성하는 스마트 계약입니다. 1:16:00에 시작하는 제7회 EIP-1559 구현자 회의에서 전체 데모가 있습니다. 다음은 작동 중인 도구의 스크린샷입니다.
이제 이 데이터베이스가 있으므로 모든 클라이언트 구현을 이 네트워크에 동기화한 다음 이전에 구축한 트랜잭션 생성 도구로 네트워크에 트랜잭션 폭탄을 적용할 것입니다. 이를 통해 클라이언트가 메인넷 수준의 용량 상태를 관리해야 할 때 1559 규칙에 따라 200% 전체 블록을 원활하게 처리할 수 있는 방법에 대한 통찰력을 얻을 수 있습니다.
트레이딩 풀 🏊♂️
이전 업데이트에서 우리는 여전히 해결해야 할 트랜잭션 풀 관리와 관련된 몇 가지 중요한 문제에 대해 논의했습니다. 문서로 설명을 드렸는데 요지는 블록간 BASE FEE가 다르고 거래시 본인이 지불할 의사가 있는 최대 수수료(FEE CAP)와 채굴자 팁(TIP)을 명시하기 때문에 채굴자가 팩을 트랜잭션이 받는 수수료는 BASE FEE의 변화에 따라 달라지는데, 이는 잠재적으로 노드가 각 블록의 트랜잭션 풀을 재구성해야 한다는 것을 의미하며 이는 매우 비효율적입니다.
Quilt 팀의 Ansgar는 이 문제에 주목해 왔으며, 제7차 구현자 회의에서 이 문제에 대한 기사를 공유했습니다.
즉, 채굴자는 블록에 포함된 트랜잭션이 가장 높은 수수료를 지불하기를 원하고, 비채굴 노드는 트랜잭션 풀이 가득 찼을 때 트랜잭션 퇴거 정책이 있어야 합니다.
이 문서는 이 문제에 대한 해결책을 제시하지 않지만 광부 거래의 흥미로운 기능인 보상 변경을 강조합니다. 1559에서 두 가지 가능한 "상태"가 있는 트랜잭션을 상상할 수 있습니다. 첫 번째 상태는 "일정한" 상태입니다. 즉, 트랜잭션의 FEE CAP이 BASE FEE와 TIP의 합보다 크고 채굴자는 전체 TIP를 받습니다. 두 번째 상태는 "변경 중"입니다. 즉, FEE CAP은 여전히 BASE FEE보다 높지만 BASE FEE와 TIP의 합보다 낮습니다[4]. 이 경우 채굴자는 FEE CAP과 BASE FEE의 차이를 얻습니다.
거래가 이 두 가지 상태에 있지 않은 경우 거래 간에 상대적인 순서를 만들 수 있습니다("일정한" 등급 상태의 경우 TIP 및 "유효한 팁"에 따른 "변하는" 등급의 상태에 대한 TIP 사용, 예: FEE CAP - BASE FEE).
Ansgar 기사의 통찰력은 BASE FEE의 증가/감소가 동일한 영향을 미치기 때문에 "변경" 상태 클래스의 트랜잭션이 동일한 블록 간 상대 순서를 유지한다는 것입니다. 즉, BASE FEE가 변할 때 어떤 트랜잭션이 "일정"에서 "가변"으로 변하는지 효과적으로 판단하고 이러한 트랜잭션을 적절하게 처리하는 방법을 찾는 것이 문제의 핵심입니다.
다음 Quilt 게시물에서 이러한 질문에 대한 답변을 얻을 수 있기를 바랍니다 😁!
시뮬레이션 업데이트 🤖
Nethermind 팀은 네트워크에서 레거시 트랜잭션과 1559 스타일 트랜잭션 간의 상호 작용을 탐색하고 레거시 트랜잭션이 1559 스타일 트랜잭션으로 해석될 수 있는 시뮬레이션에 대한 새로운 노트북을 게시했습니다. 이러한 연구는 Barnabé Monnot과 그의 팀의 이전 시뮬레이션을 기반으로 합니다.
이 시뮬레이션은 세 가지 유형의 사용자를 소개합니다: 항상 TIP를 가장 낮은 값으로 쏘는 순진한 1559 사용자, 네트워크 사용량에 따라 TIP를 전략적으로 설정하는 스마트한 1559 사용자, 네트워크 사용량을 기반으로 가스 가격을 전략적으로 설정하는 스마트 레거시 트랜잭션 사용자.
각 유형의 사용자에 대해 고정된 수의 트랜잭션이 네트워크로 전송됩니다. 이 보고서는 포함된 거래 유형, 해당 사용자가 지불한 금액, 사용자가 대기한 시간을 분석했습니다.
보고서의 "요약" 섹션은 짧고 전체 내용을 읽을 가치가 있지만 어쨌든 요약을 제공하겠습니다.
➤ 시뮬레이션에서 두 가지 명확한 "단계"를 볼 수 있습니다. BASE FEE가 평형 값으로 수렴할 때와 안정적일 때
➤ BASE FEE의 불안정한 단계에서 스마트한 1559 사용자는 대부분의 패키지 거래를 시작합니다.
➤ 현재 "단계"에 따라 트랜잭션 풀의 동작이 변경됩니다. 기본 수수료가 불안정하면 퇴출된 거래가 많아 거래 풀을 재정비해야 하지만, 안정되면 퇴출된 거래가 매우 적습니다.
구현자 회의에서 조롱에 대해 논의할 때 두 가지 흥미로운 문제가 발생합니다.
첫째, 네트워크에 더 많은 레거시 트랜잭션이 나타나면 BASE FEE의 안정성이 떨어질 위험이 있으며 1559 스타일 트랜잭션은 이러한 단계에서 1559 스타일 트랜잭션을 채택할 인센티브를 생성할 때 우선적으로 패키징되는 경향이 있습니다.
둘째, 1559 스타일 트랜잭션의 사용이 증가하고 BASE FEE가 안정됨에 따라 기존 트랜잭션의 추정 가스 가격은 추정에 BASE FEE의 가치를 사용할 수 있기 때문에 더 정확해질 것입니다. 즉, 1559명의 사용자는 네트워크에서 가스 가격의 변동성을 줄이는 데 도움이 되어 가스 가격 추정기 추정의 신뢰 구간을 좁힐 것입니다.
기타 업데이트 👀
위에서 많은 업데이트가 작성되었으며 마지막으로 언급할 가치가 있는 점은 OpenEthereum이 EIP-1559에서 작업할 풀타임 개발자를 고용하고 있다는 것입니다.
후속작업✅
이 업데이트는 매우 늦었습니다! 다음에 할 일은 다음과 같습니다.
➤ AllCoreDevs를 포함한 커뮤니티에 최신 연구 및 개발 결과를 공유하여 피드백을 수집합니다.
➤ 기본 요금 업데이트 규칙에 대한 더 나은 분석을 제공하는 전문가 찾기
➤ 모든 클라이언트를 대규모 상태 테스트넷에 동기화하고 트랜잭션 생성기 도구를 사용하여 네트워크 성능 테스트
➤ 채굴자와 비채굴자의 트랜잭션 풀을 분류할 수 있는 좋은 알고리즘 제안
읽어주셔서 감사합니다 😁
1559년에는 그럴 것 같지 않지만 그러한 연구는 여전히 도움이 됩니다.
[1] 메인 네트워크를 포킹하고 클라이언트에 메인 네트워크 변수를 공개하는 것은 쉽게 반복적인 공격과 사기로 이어질 수 있습니다.
[2] 백그라운드에서 0x0...1, 0x0..2, 0x0..3 등에 ETH를 보내고 0x0..1, 0x0..2, 0x0..3에 대한 저장 항목을 만듭니다. 등, 원하는 계정 및 스토리지 슬롯 수에 도달할 때까지.
[3] 이 문서에는 다음과 같은 면책 조항이 있습니다. 이 문서는 주로 다가오는 구현자 회의에서 토론의 기초로 사용됩니다. 자세한 기사는 추후에 이어집니다. Quilt 팀은 최근에야 EIP-1559 노력에 합류했기 때문에 잘못된 가정을 했거나 기존 관련 작업을 간과했을 가능성이 있습니다.
공식 계정: ETH 차이니즈 스테이션
기사의 내부 링크를 얻으려면 "원문 읽기"를 클릭하십시오!
원본 링크:https://hackmd.io/@timbeiko/1559-updates/https%3A%2F%2Fhackmd.io%2F%40timbeiko%2F1559-update-004
ECN의 번역 작업은 중국 이더리움 커뮤니티에 양질의 정보와 학습 자료를 전달하는 것을 목표로 하고 있으며, 기사의 저작권은 원저자에게 있으며, 전재 시 원문의 출처와 ETH 중국 웹사이트를 명시해야 합니다. 장기 재인쇄의 경우 승인을 위해 eth@ecn.co에 문의하십시오.
공식 계정: ETH 차이니즈 스테이션
홈페이지: ethereum.cn


