저자: Haotian, 독립 연구원 출처: X, @tmel0211
레이어2에서 '병렬 EVM'이라는 새로운 내러티브는 매우 흥미롭습니다. 레이어2의 "병렬 EVM"이라는 새로운 내러티브는 "세분화된" 롤업이라는 새로운 패러다임을 가능하게 하고, 이더리움의 새로운 레이어2가 될 솔라나의 마법을 과장하는 등 레이어2에 매우 흥미롭습니다.
제 생각에 병렬 EVM은 롤업의 고도의 모듈성, DA가 제3자에 의해 침범당한 후 VM 실행 레이어의 몰락, 레이어2의 미래가 재정의될 것이라는 깨달음에 불과합니다.
왜 그럴까요?
이 주제를 이해하려면 EVM의 단일 스레드 실행 모델을 이해해야 합니다.
이 모델은 트랜잭션이 순차적으로 처리되고 확인되어야 하며, 이는 트랜잭션 처리 속도, 블록 종료 시간 및 트랜잭션 처리량에 직접적인 영향을 미치며 메인 이더 네트워크에서 가스가 높고 혼잡한 주된 이유입니다. 또한, 단일 스레드로 설계된 이유에는 역사적인 한계가 있습니다.
이더리움의 거래는 분산된 독립 노드 집합에 의해 검증되고 실행되기 때문에 잔액과 스마트 컨트랙트 코드와 같은 모든 주소 데이터가 노드 간에 일관성을 유지하는 동시에 동일한 자산에 대한 이중 지불 가능성이 없는지 확인하는 것이 중요합니다.
이렇게 하면 트랜잭션이 순차적으로 대기열에 추가됩니다. 병렬 트랜잭션이 있는 경우 노드 간 데이터 동기화 오류가 발생할 수 있으며, 결정적으로 심각한 이중 지출 트랜잭션이 발생할 수 있습니다.
일반인의 설명: 은행의 서비스 창구는 하나뿐이고, 고객은 입출금뿐만 아니라 대출 및 기타 업무를 위해 순차적으로 대기열에 대기해야 하며, 고객은 업무를 완료한 후에야 다음 업무를 시작할 수 있으므로 은행 계좌 시스템의 모든 작업이 정확하게 기록된다는 장점이 있지만 고객의 대기 시간이 길어집니다.
이 때문에 거래가 순차적으로 대기열에 대기해야 합니다. p style="text-align: left;">은행에서 둘 이상의 서비스 창구를 열면 고객은 다른 비즈니스를위한 창구를 선택할 수 있으며, 동시에 두 개의 창구가 동시에 계좌에서 인출을 시도 할 수 있으며, 창구 간의 계정 시스템이 적시에 조정되지 않으면 이중 지출로 이어질 수 있으며, 분명히 이것은 분명히 효율성을 향상 시키지만 복잡한 부기 로직은 회계 시스템에 대한 압력이 될 것입니다.
계층 1 독립 체인 시나리오에서 체인 기본 지원 병렬 처리 문제가 해결되면 컴퓨팅 및 스토리지 상태의 분리로 인해 솔라나가 사용자의 여러 트랜잭션을 수신하면 노드는 이러한 트랜잭션을 정렬 한 다음 독립 스토리지 시스템 상태 데이터 감지를 호출합니다. 이러한 트랜잭션에 상태 충돌이 있는지 여부를 확인하고 충돌이 없는 경우 트랜잭션을 블록에 패킹하고 충돌이 있는 경우 충돌하는 트랜잭션을 이 블록에서 제외합니다.
반면 이더리움의 스토리지 상태는 실시간으로 계산되며, 각 트랜잭션은 이전 트랜잭션이 완료될 때까지 기다려야 상태를 업데이트할 수 있기 때문에 트랜잭션이 패키징되기를 기다리기 전에 트랜잭션을 선별하는 것이 불가능하고 병렬 처리의 가능성이 제한됩니다.
레이어2 롤업 체인 시나리오에서 병렬 처리를 달성하기 위한 거리도 비슷합니다. 솔라나가 트랜잭션 계산과 스토리지 상태 감지를 하면서 POH 타임스탬프를 기다리는 동안 롤업 체인이 시퀀서에서 트랜잭션을 처리한 다음 메인 네트워크로 일괄 처리한다고 생각하면 됩니다.
이제 레이어2가 트랜잭션을 배치하고 있으므로 시퀀서는 메인넷에 배치하기 전에 시간 순서대로 트랜잭션을 예약할 텐데, 어떻게 멀티스레드 방식으로 이 작업을 수행할 수 있나요?
1) AA 계정 추상화 모델에 따르면 계정 상태에서 여러 트랜잭션을 동시에 시작할 수 있습니다. 예를 들어 두 개의 트랜잭션이 동시에 실행되면 AA 스마트 컨트랙트는 논스를 부여하고 순차적으로 실행해야 하지만 하나는 전송이고 하나는 승인인 경우 논스 없이 실행할 수 있습니다. 하나는 전송이고 다른 하나는 승인인 경우, 논스의 제한 없이 병렬로 처리할 수 있습니다. AA 계정 모델에서 각 계정은 높은 동시성을 달성하기 위해 논스와 함께 작동하도록 트랜잭션 처리 로직을 사용자 지정할 수 있습니다.
2) 시퀀서는 트랜잭션의 "세분화된" 처리를 수행할 수 있습니다. 예를 들어 레이어2 트랜잭션이 시퀀서에 제출되면 시퀀서는 트랜잭션 로직을 빠르게 감지하고 세분화된 정렬 및 스크리닝을 수행할 수 있습니다. 예를 들어, 동일한 계정에서 두 개의 트랜잭션을 시작한 경우 후자는 제외하여 다음 배치를 기다려야 하며, 동일한 계정에서 서로 다른 성격의 두 가지 작업을 시작한 경우 동시에 블록에 배치할 수 있습니다.
단순하게 들리시나요? 하지만 그렇지 않습니다. 디파이 시나리오를 예로 들면, 트랜잭션의 세분화된 관리를 실현하기 위해 시퀀서가 해결해야 할 두 가지 주요 과제가 있습니다.
1) 실시간으로 거래 데이터를 파싱하고 스마트 컨트랙트 호출을 위해 들어오는 데이터의 방법과 매개변수를 이해하는 것, 예를 들어 디파이의 일반적인 스테이킹 작업의 경우 스테이킹 작업은 토큰과 관련되어 있습니다. 스테이킹 작업에는 토큰 전송, 상태 업데이트, 서약 기간, 잠재적 보상 계산이 포함됩니다. 많은 사용자가 동시에 일부 스테이킹 트랜잭션을 입력하는 경우, 그리고 스테이킹 후 토큰을 전송하는 트랜잭션이 있는 경우, 여기에 Oralce 가격 요소의 복잡성 등이 더해지면 시퀀서가 이를 제자리에서 파싱하고 처리하지 못하면 한 단계의 오류로 인해 심각한 사고로 이어질 수 있습니다.
2) 탈중앙화를 보장하기 위한 시퀀서, 현재 레이어2 시퀀서에서 권리가 너무 커졌다는 전제하에 그냥 일괄적으로 트랜잭션을 처리하고, 시퀀서 탈중앙화 문제를 해결하지 못하면 "정제" 롤업을 하라는 것은 시퀀서에 더 많은 권한을 주는 것과 마찬가지입니다. 시퀀서가 탈중앙화 문제를 해결할 수 없다면 "세분화된" 롤업을 하는 것은 시퀀서에 더 많은 권한을 부여하는 것과 같습니다. 시퀀서가 가짜 트랜잭션, 노골적인 MEV 클램프, 심지어 오라클 청산에 대한 악의적인 조작 등을 통해 악용될 수 있습니다.
최근 메티스는 표면적으로는 시퀀서만이 탈중앙화를 달성한 것처럼 보이지만, 더 깊이 들여다보면 미래의 시퀀서는 기본적인 합의 전제를 구축하기 위해 훌륭한 롤업을 수행해야 합니다.
물론 시퀀서의 고도로 세분화된 롤업 트랜잭션 집계 및 처리 능력은 아직 비전일 뿐이지만, 좋은 소식은 AA 계정 추상화와 블록체인의 모듈성이 이 비전이 실현될 수 있는 전제 조건을 제공한다는 것입니다.
위.
그리고 앞서 언급했듯이, 레이어2는 이제 전체적으로 더욱 모듈화되어 ZK 기술을 OP 스택 프레임워크에 내장하여 프라이버시 확장을 가능하게 하고, 기존 이더리움 DA를 셀레스티아와 같은 타사 DA로 전환하여 비용을 절감하며, 가스 요금으로 이더를 사용하는 전통적인 방식을 점차 바꾸어 나가고 있습니다. 이더리움을 가스비로 사용하는 전통적인 방식도 레이어2 토큰의 활용도를 높이기 위해 변화하고 있으며, 레이어2에서도 트랜잭션을 완전히 일괄 처리하여 다른 가상머신 실행 환경에 제출하고, 솔라나와 이더리움 간에 트랜잭션을 분할하는 등의 작업을 수행할 수 있습니다.
이 시점에서 레이어2는 더 이상 이더의 레이어2가 아니라 솔라나가 이더의 레이어2가 될 수 있으며, 레이어2의 정의조차도 마술처럼 바뀌는 완전히 새로운 패러다임이 등장하게 됩니다.
이제 레이어2가 고액 거래 처리 기능을 통합하는 엔트리 레벨의 '레이어1'이 되고, 이더와 솔라나, 그리고 이전의 레이어1이 자산 결제와 보안을 담당하는 새로운 '레이어2'가 된다고 과감하게 상상해 보십시오.
레이어2는 경직된 개념이 아니며, 대규모 동시 거래 처리 문제를 해결하고 사용자를 늘리려는 레이어2 플랫폼의 사명은 항상 존재해 왔습니다.
이 미션이 달성되면 모듈화 이념 아래 이더리움 레이어1의 정통성이 깨질 뿐만 아니라 DA 데이터 가용성, VM 실행 레이어, 나아가 전체 체인에 걸친 통신 상호작용의 상호운용성까지 레이어2 플랫폼의 인프라가 되어 대량 채택을 달성할 수 있을 것입니다.
Layer2는 딱딱한 개념이 아닙니다.
그 때가 되면 레이어2는 더 이상 레이어1을 보완하는 것이 아니라 강력하고 포괄적인 트랜잭션 집계 및 분배 처리 플랫폼이 될 것인데, 그렇다면 레이어2는 누구일까요?