본문 바로가기

CryptoCurrency

Aptos VS SUI 합의 모듈 성과 목표

STM이 '소프트웨어 트랜잭션 메모리'의 약자 인 Block-STM은 Aptos가 초당 최대 160,000 건의 트랜잭션을 처리하기 위해 만든 시스템입니다. 트랜잭션은 먼저 노드에 의해 병렬로 실행되고 그 후에만 검증됩니다. 이 단계에서 문제가 발생하면 트랜잭션이 중단되고 다시 실행되거나 폐기될 수 있습니다.



Block-STM은 트랜잭션 간의 종속성도 결정하므로 작업의 유효성을 검사할 수 없는 경우 작업에 종속된 작업도 다시 실행됩니다. 마지막으로, 모든 충돌이 해결되면 블록의 모든 트랜잭션이 함께 블록체인에 커밋됩니다 (소위 게으른 커밋).

모든 트랜잭션을 순차적으로 실행하거나 종속성을 미리 정의할 필요가 없으므로 많은 시간과 자원을 절약 할 수 있습니다. 또한 확장이 잘 진행되므로 Aptos가 가장 확장 가능한 L1 체인이라는 개념이 있습니다.



Sui는 급진적인 조치를 취하여 많은 거래에 대한 합의를 완전히 제거합니다. 소유자에 의한 토큰의 간단한 전송은 다른 주소에 따라 다른 거래 없이 사실상 즉시 확인됩니다. 발신자는 거래를 중개하고, 유효성 검사기의 투표를 수집하고, 소위 유효성 인증서를 받습니다.



그러나 Sui는 소위 공유 객체 (지갑의 토큰과 달리)가 둘 이상의 소유자가 수정할 수 있는 자산과 관련된, 보다 복잡한 거래에 대해보다 전통적인 BFT 합의를 사용합니다. 이것은 현명한 계약과의 많은 상호 작용에 적용됩니다.

이 접근 방식은 dApp이 엄청난 수의 간단한 트랜잭션을 생성하고, 짧은 대기 시간으로 확인되어야 하며, 분권화에 덜 관여하는 특정 사용 사례에 대해 Sui를 L1로 만듭니다. 좋은 예로는 게임과 에어드롭이 있습니다.

Aptos와 마찬가지로 Sui는 종속성이 없는 간단한 트랜잭션에 병렬 실행을 사용하는 반면 복잡한 작업은 순차적으로 정확한 순서로 실행됩니다.



Sui가 사용하는 합의 엔진에는 Narwhal과 Tusk라는 이름이 있습니다. Mysten Labs 및 Aptos Labs의 여러 연구원에 의해 개발되었으며 나중에 오픈 소스로 제공되었으므로 이제 모든 블록 체인이이를 통합 할 수 있습니다 (실제로 Celo는 이미 작업 중입니다).

Narwhal은 mempool 모듈입니다 : 트랜잭션 데이터를 사용할 수 있는지 확인합니다. 또한 HotStuff 또는 Cosmos의 Ignite와 같은 다른 합의 엔진과 함께 자체적으로 (Tusk 없이) 사용할 수 있습니다. Narwhal의 아키텍처는 DAG 또는 Directed Acyclic Graph의 아키텍처입니다 : 많은 요소가 체인이 아닌 네트워크로 함께 연결됩니다 (블록 체인에서 발생하는 것처럼).



Tusk는 합의를 위해 제출 된 거래를 명령하는 합의 모듈입니다 (복잡한 거래의 경우).

우리는 너무 많은 기술적 인 세부 사항을 다루지는 않겠지 만, Narwhal과 Tusk에 대해 더 많이 배울 수 있습니다. 중요한 부분은 Narwhal과 Tusk가 각 유효성 검사기가 시간 단위로 더 많은 트랜잭션을 처리할 수 있다는 것입니다. 그리고 그 이름에 대해 궁금하다면, narwhal은 긴 엄니 때문에 유니콘처럼 보이는 15 피트 길이의 고래입니다.



Sui와 Aptos 블록 체인은 모두 믿을 수 없을 만큼 강력하고 빠르며 확장 가능합니다. Aptos는 130,000 tps (초당 트랜잭션)를 처리 할 수 있습니다. 이 결과는 속도 테스트 중에 달성되었습니다. 우리는 이미 Block-STM에 대해 논의했습니다. 이 기능은 160,000 tps로 증가할 수 있지만 이러한 속도를 가능하게 하는 혁신에 대한 요약은 다음과 같습니다.

병렬 트랜잭션 실행 - 유효성 검사에 문제가있는 경우 작업에 의존하는 작업과 함께 작업이 다시 실행됩니다.
상태 동기화 – 검증자가 아닌 피어가 블록 체인을 통해 데이터를 확인하고 동기화할 수 있게 해주는 프로토콜;
게으른 커밋 : 블록의 모든 작업은 대량으로 커밋됩니다.
협업 스케줄링: 트랜잭션 실행은 자원을 효율적으로 사용하는 방식으로 스케줄링된다.
팀의 최신 보고서에 따르면 DevNet은 이제 트랜잭션 실행을 통해 최대 4.5k TPS를 달성하고 최신 상태 동기화 기술이 활성화되면 10k TPS를 달성합니다. 다음 벤치 마크는 100k TPS이지만, 물론 Aptos가 메인 넷을 출시할 때 실제 성능 테스트가 이루어질 것입니다.

이론적으로 최대 용량은 초당 160,000 트랜잭션이지만 더 중요한 것은 초 미만의 최종성입니다. 최종 사용자에게는 중요한 TPS가 아니라 트랜잭션이 얼마나 빨리 완료되는지입니다. Aptos에서는 이것이 초 이내에 발생하지만 솔라나에서는 예를 들어 6 초입니다.



Sui의 성과 목표 또한 흥미 롭습니다 : 팀은 TPS가 잠재적으로 "무한한"하다고 주장합니다. 네트워크 부하가 증가함에 따라 Sui 노드(권한이라고 함)는 미니 네트워크를 만들고 더 많은 트랜잭션을 실행하기 위해 작업자(일종의 보조 노드)를 계속 추가할 수 있습니다.

최근 테스트에서 8개의 코어가 있는 Macbook Pro에서 실행되는 단일 노드가 초당 120.000개의 트랜잭션을 처리했습니다. 결과는 트랜잭션 유형에 따라 크게 달라집니다.이 테스트에서 사용자는 단일 서명을 사용하여 100 개의 다른 주소 (계정)에 토큰을 보냈습니다. 매번 단일 수신자에게 하나씩 전송할 때 동일한 노드는 20,000 TPS만 실행할 수 있습니다. Sui의 수평 확장은 단순한 거래가 글로벌 합의를 필요로 하지 않는 합의 모델 덕분입니다 (위에서 설명한 것처럼).

또한 대부분의 경우 합의가 필요하지 않기 때문에 최종성은 초 미만입니다. 이와 관련하여 Sui와 Aptos는 최종성과 비슷한 시간을 가지고 있습니다. 그러나 오랫동안 메인넷이 초당 수천 개의 트랜잭션을 생성하는 것과 같은 수의 사용자에게 도달하는 데 꽤 오랜 시간이 걸리기 때문에 이것은 중요하지 않을 것입니다. Solana는 좋은 예입니다 : 초당 2000 개 이상의 트랜잭션을 처리하지만 그중 최대 90 %가 유효성 검사기 투표이므로 사용자가 보낸 실제 트랜잭션은 약 200-300에 불과합니다.