신규: Helius가 Light Protocol을 인수했습니다
Agave 4.1 배너.png
블로그/업데이트

Agave 4.1 업데이트: 알아야 할 모든 것

연구원X의 Lostin
읽는 데 15분

소개

Agave 4.1에서도 Solana의 핵심 검증인 클라이언트는 꾸준히 발전하고 있습니다. 현재의 성능을 개선하는 동시에 더 큰 블록, 200ms 슬롯 시간, 향후 Alpenglow 도입을 위한 기반을 마련합니다.

주목할 만한 4.1 릴리스 주기 업데이트

  • 릴리스 주기 단축: 이제 6주마다 메이저 릴리스 제공
  • BLS 공개 키 관리*, Validator Admission Tickets*, 커뮤니티 테스트 클러스터 등 Alpenglow 준비 작업 지속
  • XDP 도입률이 네트워크의 중요 임계점 돌파
  • p-memo와 p-ATA를 포함한 추가 Pinocchio 재작성
  • 검증인 RAM 사용량 감소
  • 200ms 슬롯 시간 준비**

* 기능 게이트가 적용된 업그레이드

** Agave 4.2에서 적용 예정

핵심 클라이언트 작업과 함께 Anza 및 더 넓은 생태계에서도 여러 주요 이니셔티브를 동시에 추진하고 있습니다.

  • Constellation: Constellation은 대규모 프로덕션 블록체인에서 Multiple Concurrent Proposers (MCP)를 프로토콜 수준으로 공식 구현하는 최초의 방안을 제안합니다. 단일 리더에게 트랜잭션 포함 여부에 대한 폭넓은 재량을 주는 대신, 제안자와 증명자를 도입해 리더가 유효한 블록에서 제외할 수 있는 항목을 제한합니다.
  • 양자 내성 강화: Anza 연구팀은 포스트 양자 서명, 계정 마이그레이션, 합의 서명, 블록 전파, 온체인 서명 검증에 관한 연구를 포함해 미래의 양자 공격자로부터 Solana를 보호하는 방법을 탐구하기 시작했습니다.
  • 경제 모델 업그레이드: 새로운 토크노믹스 제안도 준비되고 있습니다. SIMD-550은 Solana의 디스인플레이션율을 -15%에서 -30%로 두 배 높이는 방안을 제안합니다. 한편 SIMD-553: 리소스 및 포함 수수료는 현재의 서명 수수료를 리더에게 지급하는 기본 포함 수수료와 요청된 비용 단위를 기준으로 소각하는 리소스 수수료로 분리할 것을 제안합니다.
  • 새로운 거버넌스 도구: 다음 경제 모델 제안은 개선된 거버넌스 인프라의 영향도 받고 있습니다. 새로운 도구를 통해 검증인뿐 아니라 스테이커도 Solana 거버넌스에 직접 참여할 수 있어, 핵심 프로토콜 변경에 의견을 낼 수 있는 참여자 범위가 넓어집니다.

지금 정말 많은 변화가 진행되고 있습니다.

검증인 운영자든 개발자든, 이 가이드를 통해 최신 개선 사항을 최대한 활용하는 데 필요한 업데이트와 인사이트를 확인할 수 있습니다. 각 섹션은 독립적으로 구성되어 있어 가장 관련성 높은 주제에 집중할 수 있습니다. 

이 글을 작성하는 시점에는 Agave v4.1.0-rc.1이 메인넷 일반 사용 권장 버전입니다. 검증인 운영자라면 지금 업그레이드하세요!

Alpenglow 준비

Alpenglow 합의 업그레이드를 위한 기반 작업 대부분이 Agave 4.1 릴리스 주기에 반영됩니다. 투표 프로그램의 BLS 키 관리, Validator Admission Tickets, Fast Leader Handover 마커를 포함한 변경 사항으로 네트워크가 Tower BFT에서 Alpenglow로 전환할 수 있도록 준비합니다.

커뮤니티 테스트 클러스터

이제 Alpenglow 메인넷 활성화까지 남은 과정은 광범위한 실환경 테스트에 크게 좌우됩니다. 5월부터 지리적으로 분산된 약 100개의 검증인으로 구성된 커뮤니티 테스트 클러스터가 라이브 네트워크 환경에서 업그레이드를 실행하고 있습니다. 메인넷 활성화에 앞서 Solana의 현재 Tower BFT 기반 합의와 Alpenglow 간 전환을 테스트합니다.

목표는 출시 과정이 최대한 아무 일 없이 지나가도록 하는 것입니다. 클러스터의 검증인들은 통제된 내부 테스트에만 의존하지 않고 실제 운영 환경에서 Tower BFT와 Alpenglow를 전환하며 마이그레이션 경로를 검증해 왔습니다. 관련 논의는 Solana Tech Discord의 `ag-community-cluster` 채널에서 진행되며, 라이브 클러스터 활동은 Valid Blocks, Staking Facilities, Noders의 커뮤니티 대시보드에서 확인할 수 있습니다.

BLS 공개 키 관리

SIMD-0387: 투표 계정의 BLS 공개 키 관리는 Agave 4.1 릴리스 주기에 활성화됩니다. 이를 통해 검증인이 Alpenglow 도입 전에 투표 계정에 BLS 공개 키를 등록하는 데 필요한 투표 프로그램 기반 기능이 추가됩니다. Alpenglow는 BLS 집계 서명을 사용해 투표 집계 및 검증 비용을 낮춥니다. 다만 BLS 공개 키는 현재 사용하는 Ed25519 투표 권한 키와 별개입니다. 

검증인은 기존 Ed25519 투표 권한 키로 계속 운영하면서 투표 계정에 BLS 공개 키를 추가할 수 있습니다. Alpenglow가 활성화되면 BLS 공개 키를 등록하지 않은 투표 계정은 새로운 투표 절차에 참여할 수 없습니다.

Alpenglow Validator Admission Tickets (VAT)

Agave 4.1 릴리스 주기에는 Validator Admission Tickets (VAT)을 구현하는 SIMD-0357의 메인넷 활성화도 포함됩니다. VAT는 Solana가 Tower BFT의 현재 투표 트랜잭션 모델에서 벗어나는 과정에서도 유사한 검증인 비용 구조를 유지하도록 설계되었습니다.

현재 검증인은 투표할 때마다 지속적으로 투표 트랜잭션 수수료를 지불합니다. 꾸준히 투표하는 검증인의 비용은 에포크당 약 ~2.1 SOL입니다. Alpenglow에서는 이러한 투표 트랜잭션이 새로운 합의 설계로 대체되므로, SIMD-0357은 대신 에포크당 한 번의 참가 비용을 도입합니다. Alpenglow 투표 참여 자격이 있는 각 검증인은 에포크당 1.6 SOL의 VAT를 지불합니다. 이를 통해 유사한 경제적 진입 장벽을 유지하면서 Alpenglow 출시 후 검증인 집합이 즉각적이고 통제 불가능하게 확대될 위험을 줄입니다.

구현은 에포크 경계에서 처리됩니다. 새 에포크로 넘어갈 때 런타임은 다음 에포크의 검증인 집합을 계산합니다. 등록된 BLS 공개 키가 있고 VAT와 임대료를 충당할 충분한 lamport를 보유한 투표 계정을 선별한 다음, 승인된 검증인의 투표 계정에서 VAT를 차감합니다. 해당 lamport는 소각 계정으로 직접 전송됩니다. 자격을 충족한 검증인이 2,000개를 넘으면 스테이크 가중치에 따라 투표 집합을 제한하고, 자격을 갖춘 상위 검증인을 선정합니다.

운영 측면에서는 검증인 운영자가 자금을 보관해야 하는 위치가 달라집니다. 현재 투표 트랜잭션 수수료는 검증인 ID 계정에서 지불하며, 이 계정은 일반적인 검증인 운영을 위해 핫 키페어여야 합니다. VAT에서는 참가 비용이 투표 계정에서 차감됩니다.

Fast Leader Handover 마커

마지막으로 SIMD-0337: Alpenglow Fast Leader Handover용 마커가 활성화되면 새로운 블록 마커가 추가됩니다. Alpenglow 리더는 블록 시작 시 상위 블록을 선언하고, 필요한 경우 블록을 스트리밍하는 동안 이를 업데이트할 수 있습니다. 이 마커는 리더 간 동기화 지연을 줄이도록 설계된 Fast Leader Handover를 지원합니다.

XDP 도입 확대와 1억 CU를 향한 경로

XDP (eXpress Data Path)는 Agave가 Turbine을 가속하는 데 사용하는 고성능 네트워킹 경로입니다. Agave가 네트워크 인터페이스 카드 가까이에 eBPF 프로그램을 로드할 수 있게 해 샤드 트래픽이 표준 Linux 패킷 처리 경로의 상당 부분을 우회하도록 합니다. 네트워크가 오랜 목표인 1억 CU 블록을 달성하려면 XDP 도입이 필수입니다. 

도입률은 이제 중요한 임계점을 넘어섰습니다. 이달 초 XDP를 실행하는 리더가 그렇지 않은 리더보다 많아지는 “역전”이 발생했습니다. 현재 네트워크의 3분의 2 이상이 XDP를 활성화했습니다. Agave 4.1은 이러한 성숙도를 반영해 XDP 지원에서 실험적이라는 표시를 제거하고, 기존 `--experimental-retransmit-xdp-*` 플래그를 `--xdp-interface`, `--xdp-cpu-cores`, `--xdp-zero-copy`로 대체합니다. Agave 4.2에서는 XDP가 기본으로 활성화될 예정입니다.

아직 전환하지 않은 검증인 운영자는 Solana Foundation의 업그레이드 페이지와 Anza 설정 가이드에서 실용적인 호환성 체크리스트를 확인할 수 있습니다. 커널 지원, 네트워크 하드웨어, 검증인 기능, 시작 플래그, 검증 단계를 다룹니다. 아래에는 유용한 드라이버 및 NIC 호환성 가이드가 있습니다.

더 많은 Pinocchio 프로그램 재작성

최근 p-token의 성공적인 출시를 통해 Solana에서 가장 많이 사용되는 프로그램을 선별적으로 재작성하면 네트워크 전반에서 상당한 컴퓨트 비용을 절감할 수 있음이 입증되었습니다. SPL Token 프로그램을 그대로 대체하는 p-token은 컴퓨트 유닛(CU) 사용량을 약 95% 줄여 표준 토큰 트랜잭션의 효율을 약 ~19배 높입니다. 이전에는 토큰 프로그램 명령이 전체 블록 CU 사용량의 약 10%를 차지했습니다. 이러한 명령의 비용을 이전의 약 5%로 줄이면서 p-token은 전체 블록 용량의 약 9.5%를 확보했습니다.

p-token의 “p”는 Anza가 개발한 Solana 프로그램 작성용 고성능 최적화 무의존성 라이브러리 Pinocchio를 의미합니다. Pinocchio는 명령 및 계정 데이터를 처리할 때 제로 카피 타입을 광범위하게 사용하는 표준 solana-program crate를 대체합니다.

Anza는 이제 다른 핵심 프로그램도 Pinocchio로 재작성하고 있습니다. 목표는 새로운 표준을 도입하거나 애플리케이션 수준의 마이그레이션을 강제하는 것이 아닙니다. 이미 널리 사용되는 기존 프로그램의 실행 비용을 크게 낮추는 것입니다.

P-memo 프로그램

첫 번째 사례는 SPL Memo 프로그램을 Pinocchio로 다시 구현한 p-memo입니다. 이미 메인넷에서 가동 중입니다. Memo 프로그램은 작지만 효율 개선 폭은 여전히 인상적입니다. 서명자가 없을 때 p-memo는 287 CU를 사용합니다. 현재 Memo 프로그램의 2,022 CU와 비교하면 기존 비용의 약 14%입니다. 서명자가 있으면 차이는 더욱 커집니다. 서명자가 1명이면 p-memo는 513 CU, 기존 프로그램은 13,525 CU를 사용합니다. 서명자가 2명이면 각각 628 CU와 25,111 CU, 3명이면 각각 743 CU와 36,406 CU를 사용합니다. 즉, 서명자가 많은 경우 p-memo는 컴퓨트 사용량을 현재 프로그램 비용의 2~4%로 줄입니다.

P-ATA 프로그램

Associated Token Account 프로그램을 Pinocchio로 다시 구현하는 p-ATA 작업도 진행 중입니다. ATA 프로그램은 지갑, 토큰 민트, 해당 민트를 보관하는 토큰 계정 사이의 표준 매핑을 정의합니다. 사용자의 연결 토큰 계정을 결정론적으로 파생하는 방법을 제공하며, 해당 계정이 아직 없다면 누구나 수신자를 위해 생성할 수 있게 합니다. 

ATA 프로그램은 네트워크에서 다섯 번째로 많이 호출되는 프로그램입니다. Anza 팀의 추정치에 따르면 전체 트랜잭션의 ~11.9%에 등장하며 총 CU 사용량의 ~13.3%를 차지합니다. 재작성으로 가중 평균 CU 사용량을 80.9% 줄일 수 있으며, p-ATA와 함께 추가되는 새 명령으로 더 큰 절감 효과가 예상됩니다. 현재 네트워크 사용량을 기준으로 하면 전 세계 메인넷 CU를 약 10% 절감하는 효과입니다. Anza의 표본 조사에서 p-ATA는 블록당 278만 CU 이상을 확보했습니다.

P-token, p-memo, p-ATA가 이 작업의 끝은 아닐 가능성이 높습니다. Token-2022 프로그램도 요청이 많은 프로그램입니다. 더 넓게 보면 핵심 프로그램을 `no_std`로 만들려는 Anza의 노력은 더 적은 의존성과 낮은 컴퓨트 비용으로 Solana의 기반 프로그램을 더 많이 재작성할 토대를 마련합니다.

프로그램 진입점 오버헤드 감소

Agave 4.1 릴리스 주기에 활성화될 관련 변경 사항으로는 프로그램 진입점을 최적화하는 SIMD-0449: 프로그램 입력의 직접 계정 포인터가 있습니다. 현재 ABIv1 sBPF 프로그램은 프로그램 입력에서 직렬화된 계정 섹션을 파싱해 계정 경계를 찾고 프로그램에 전달할 계정 슬라이스를 구성해야 합니다. SIMD-0449는 VM이 프로그램 입력에 직접 계정 포인터 슬라이스를 추가하도록 변경합니다. 호출을 준비할 때 VM이 이미 알고 있는 경계 정보를 활용합니다.

계정 파싱이 진입점 비용의 큰 비중을 차지하므로 Pinocchio 방식의 프로그램에는 특히 중요합니다. 직접 계정 포인터를 사용하면 진입점이 전체 계정 섹션을 순회하지 않고 계정에 접근할 수 있습니다. 이에 따라 계정 수와 관계없이 진입점의 컴퓨트 비용이 사실상 일정해집니다. 

업데이트된 벤치마크에서 64개 계정을 사용하는 Pinocchio 진입점은 504 CU에서 약 7 CU로 감소합니다. 계정 집합이 더 작은 경우에도 동일하게 낮은 7 CU 비용으로 수렴합니다.

200ms로 단축되는 슬롯 시간

가장 기대되는 성능 개선 중 하나는 Solana의 목표 슬롯 시간을 400ms에서 200ms로 줄이는 것입니다. Agave 4.1 릴리스 주기에 도입될 가능성은 낮으며 Agave 4.2와 함께 메인넷에 적용될 가능성이 더 큽니다. 다만 이 중요한 업그레이드를 최대한 빨리 메인넷에 적용하려는 움직임은 점점 커지고 있습니다.

SIMD-0525: 슬롯 시간 단축은 400ms 슬롯에서 350ms, 300ms, 250ms를 거쳐 최종적으로 200ms에 도달하는 단계적 도입을 제안합니다. 각 단계에는 기능 게이트가 적용됩니다. 클라이언트 팀과 운영자는 다음 단계로 넘어가기 전에 더 짧은 슬롯 시간에서 네트워크를 관찰할 수 있습니다. Anza는 수개월 동안 내부적으로 200ms 슬롯을 테스트해 왔으며, 팀은 네트워크가 과감한 슬롯 시간 단축을 적용할 준비가 되었다고 판단합니다. 재생 단계 개선으로 이 변경의 실현 가능성도 높아졌습니다. 이제 전체 400ms 슬롯을 재생하는 데 약 40ms가 걸립니다.

동기는 명확합니다. 슬롯이 짧아지면 사용자의 확인 및 최종 확정 지연 시간이 줄어듭니다. 각 리더 구간도 짧아집니다. 현재 Solana의 리더 구간은 연속된 4개 슬롯입니다. 슬롯이 400ms일 때 리더에게 주어지는 시간은 1.6초입니다. 슬롯이 200ms가 되면 이 구간은 800ms로 줄어듭니다. 악의적인 리더가 다음 리더의 블록 생성 기회 전까지 트랜잭션을 지연하거나, 순서를 바꾸거나, 선별적으로 포함할 수 있는 최악의 시간을 줄여 시장 구조를 개선합니다.

슬롯이 짧아지면 애플리케이션이 온체인 시간을 더 세밀하게 파악할 수도 있습니다. 오라클 소비자와 독자적인 AMM 방식 시장 조성자를 포함해 슬롯 최신성을 판단하는 시스템에 중요합니다.

이 제안은 Solana의 경제 모델을 변경하지 않도록 신중하게 설계되었습니다. `slots_per_year`는 역비율만큼 증가해 SOL 인플레이션 일정을 유지합니다. Alpenglow에서는 Validator Admission Ticket (VAT) 비용도 슬롯 시간 단계에 맞춰 조정되어 참가 비용을 의도한 하루 약 ~0.8 SOL 수준으로 유지합니다. 또한 슬롯당 작업 한도는 단축된 목표 슬롯 시간에 비례해 줄어듭니다. 따라서 네트워크가 초당 처리할 수 있는 작업량은 거의 변하지 않습니다. 

몇 가지 핵심 전제는 그대로 유지됩니다. 리더 구간은 계속 4개 슬롯이고, 에포크는 432,000개 슬롯으로 고정되며, 슬롯당 틱도 64개로 유지됩니다. 에포크의 슬롯 수가 고정되어 있으므로 200ms 슬롯에서는 에포크 길이가 약 이틀에서 하루로 줄어듭니다.

논쟁이 되는 부분 중 하나는 Alpenglow보다 먼저 슬롯 시간이 단축될 경우 검증인의 투표 비용에 미치는 영향입니다. 슬롯이 빨라지면 하루 투표 횟수가 늘어나 검증인의 일일 투표 비용도 증가합니다. 투표 트랜잭션 비용은 검증인 운영자에게 가장 큰 단일 비용입니다. 투표 트랜잭션에는 일률적으로 0.000005 SOL이 부과되며, 일일 트랜잭션 비용은 ~1.086 SOL입니다. 200ms 슬롯에서는 이 비용이 약 두 배로 늘어납니다.

기타 주요 업데이트

Agave 4.1 릴리스 주기에는 규모는 작지만 주목할 만한 여러 개선 사항이 활성화될 예정입니다. 더 정밀한 검증인 수수료율, 새로운 암호화 기본 요소, 업그레이드 가능한 로더의 서비스 거부 공격 벡터 제거 등이 포함됩니다.

검증인 수수료율 정밀도 향상

Agave 4.1 릴리스 주기의 일부로 기능 게이트가 적용된 SIMD-0291: 베이시스 포인트 단위 수수료율 업그레이드가 메인넷에서 활성화됩니다. 현재 검증인 수수료율은 정수 퍼센트 포인트 단위로만 설정할 수 있습니다. 즉, 검증인은 수수료를 5% 또는 6%로 설정할 수 있지만 5.5%, 5.25%, 5.01%로는 설정할 수 없습니다.

이번 업데이트를 통해 검증인은 100 베이시스 포인트가 1%에 해당하는 베이시스 포인트 단위로 수수료율을 설정해 더 세밀하게 제어할 수 있습니다. 투표 프로그램에는 새로운 `UpdateCommissionBps` 명령이 추가됩니다. 투표 계정에서 인출 권한을 보유한 주체는 이 명령을 사용해 검증인의 인플레이션 보상 수수료율을 더 높은 정밀도로 업데이트할 수 있습니다. 검증인은 수수료 설정을 더 유연하고 경쟁력 있게 운영할 수 있습니다.

이 변경은 새로운 Vote Account V4와 관련된 여러 업데이트 중 하나입니다. 또한 블록 보상을 프로토콜 내에서 분배할 수 있게 하는 SIMD-0123: 블록 수익 분배의 예상 활성화에 대비하는 데도 도움이 됩니다.

SHA-512 시스템 호출

SIMD-0512: Sha512 시스템 호출은 온체인 프로그램이 런타임을 통해 SHA-512 해싱에 직접 접근할 수 있는 새로운 시스템 호출을 도입합니다. `sol_sha256`, `sol_keccak256`, `sol_blake3` 같은 기존 해시 시스템 호출과 유사한 인터페이스를 사용합니다.

SHA-512는 Ed25519 서명 검증에 사용되는 핵심 기본 요소이며, Agave와 Firedancer 검증인 클라이언트 모두에서 이미 내부 의존성으로 존재합니다. 하지만 지금까지는 온체인 프로그램에 노출되지 않았습니다. 온체인에서 짧은 메시지를 직접 해싱하면 비용이 높아 수천 CU가 소모됩니다. 시스템 호출을 사용하면 100 CU 미만입니다.

프로그램은 `sol_sha512`를 사용해 시스템 호출 비용으로 SHA-512 해시를 계산하고 표준 64바이트 다이제스트를 직접 받을 수 있습니다. 이 변경은 기존 기능에 추가되는 방식이며 기능 게이트가 적용됩니다. 따라서 새 시스템 호출을 사용하지 않는 프로그램은 영향을 받지 않고 기존 해시 시스템 호출도 변경되지 않습니다.

업그레이드 가능한 로더 강화

Agave 4.1 릴리스 주기에는 SIMD-0431: Loader V3 최소 프로그램 확장 크기도 기능 게이트 방식으로 릴리스됩니다. Loader V3의 `ExtendProgram` 명령에 최소 확장 크기를 추가합니다. 활성화 후에는 프로그램 데이터 계정이 최대 계정 크기인 10 MiB에서 이미 10 KiB 이내에 있는 경우를 제외하고, 프로그램을 최소 10,240바이트(10 KiB) 확장해야 합니다.

이 변경은 현재 업그레이드 가능한 로더에 존재하는 미묘한 서비스 거부 공격 벡터를 해결합니다. `ExtendProgram`에는 권한이 필요하지 않으므로 누구나 업그레이드 가능한 프로그램의 데이터 계정을 단 1바이트라도 확장할 수 있습니다. 확장할 때마다 현재 슬롯에 대한 프로그램 캐시 항목이 무효화되므로, 저렴한 1바이트 확장만으로도 프로그램 접근을 일시적으로 방해할 수 있습니다.

이 변경은 `ExtendProgram`에 권한을 요구하는 대신, 권한 없는 명령이라는 설계는 유지하면서 악용의 경제적 유인을 없앱니다. 새로운 최소 크기인 10 KiB에서는 확장할 때마다 임대료 면제용 lamport로 약 0.072 SOL이 필요합니다.

정상적인 프로그램 업그레이드에 미치는 영향은 제한적입니다. 추가 공간이 10 KiB 미만인 프로그램도 최소 크기 전체를 확장해야 하지만, 추가 용량은 향후 업그레이드에 계속 사용할 수 있습니다. 또한 SIMD는 명령의 계정, 서명자 요구 사항, CPI 제한, 기존 멀티시그 워크플로를 변경하지 않습니다.

결론

Agave 4.1은 광범위한 성능 개선과 최적화를 하나로 모은 대규모 클라이언트 업그레이드입니다. 향후 Agave 4.2는 4,096바이트로 커진 트랜잭션 크기, 200ms로 단축된 슬롯 시간, 그리고 오랫동안 기다려 온 Alpenglow 합의 업그레이드의 도입 가능성까지 더 큰 변화를 가져올 전망입니다.

추가 자료

Helius 구독하기

최신 Solana 개발 소식을 확인하고 새 게시물 알림을 받아보세요

확대 이미지