最新ニュース
あなたへのおすすめ

Solanaは新しい4,096バイトのトランザクション制限を1つのメモリページに合わせています

著者ランダ・モーゼスランダ・モーゼス 3分で読了
Solanaは新しい4,096バイトのトランザクション制限を1つのメモリページに合わせています。
  • Solana は 9 月 9 にメインネット上でトランザクション V1 をアクティブ化しました。
  • 新しい形式により、最大トランザクションサイズは 1,232 バイトから 4,096 バイトに引き上げられ、4 KiB のバリデーターメモリページに対応しています。
  • Agave v4.2 へのアップグレードをスキップする RPC プロバイダー、インデクサー、およびウォレットは、エラーが発生するか、 silently 間違った手数料データが返されるリスクがあります。

Solanaは9月9日、単一トランザクションが運べるデータ量を3倍に増やす予定です。 この新しい4,096バイトの上限は、GitHub上のSIMD-0296提案によると、バリデーターハードウェアの単一の4 KiBメモリページに収まります。

複数のトランザクションを必要としていたワークロードは、1つのアトミック呼び出しで完了するようになりました。

QUICにより、1,232バイトの上限は無意味になりました

Solanaの元の制限はネットワーク上の警戒策でした。ネットワークは1,280バイトのIPv6 MTUで運用されていました。

プロトコルオーバーヘッド後、トランザクションペイロードには1,232バイトが残されていました。これはSIMD-296の著者による記述です。これは、すべてのメッセージが断片化なしでMTUを通過する必要があった当時は理にかなっていました。

Solanaは2022年にトランザクション処理の標準的な方法としてQUICに切り替えました。RFC 9000は最大ストリームサイズを設定していないため、ネットワークレベルで問題なくより大きなペイロードを送信できます。

1,232バイトの制限は、技術的根拠のないルールになっていました。

2つの文書はAnzaのエンジニア、ジェイコブ・クリーチとアンドリュー・フィッツジェラルドによって作成されました。SIMD-0296はサイズ制限を引き上げます。

補完的なSIMD-0385は、追加バイトを含むv1メッセージ形式を定義しています。このペアは、チェーンのローンチ以来開発者が回避してきた制約を解決します。

提案では、トランザクションがバリデーターメモリの単一の標準的な4 KiBページに収まるように、QUICが許可する最大のサイズではなく4,096バイトが優先されています。トランザクションがページ境界をまたがることはありません。

トランザクションごとのメモリ管理は安価です。各トランザクションは単一のページに制限されます。

4,096バイトの制限に到達するために、クリーチとフィッツジェラルドは、開発者が古い制限を回避するためにJitoバンドルをどのように使用したかを分析しました。

  • 送信されたバンドルの50%が2,048バイト以下でした。
  • 65%が6,144バイト未満でした。
  • 100%が9,216バイト未満のままでした。

4,096バイトの上限は、バリデーターハードウェアのページ制約内に留まりながら、これらのマルチトランザクションワークロードの大部分を単一の呼び出しでカバーします。

Solanaは新しい4,096バイトのトランザクション制限を1つのメモリページに合わせています。
SIMD-0296提案の「影響」セクションでは、4,096バイトの制限を正当化するために使用されたJitoバンドルのバイトサイズ分布を示しています。出典:Solana GitHub。

準備が整っていないRPC呼び出しは、Solanaでエラー-32015をスローします

追加の容量により、1,232バイトの制限を超えるワークロードが可能になります。

トークン拡張機能の機密転送で使用されるゼロ知識証明などは、1,232バイトの制限を超えるペイロードを生成しました。

この問題を解決するため、開発者は複数の呼び出しをチェーンするか、アトミックな暗号化転送を放棄していました。新しい4,096バイトの制限により、ゼロ知識証明を1つのトランザクションで収容できます。

BLS署名の集約や大規模なマルチシグ構成もこの変更から恩恵を受けます。SIMD-0296では、Squadsを介して機関の財務やDAOで使用されるマルチシグの一種であるネスト型マルチシグが、主な要因の一つとして引用されています。

また、プリコンパイルなしで動作するWinternitzワンタイム署名やオンチェーンBLSスキームにも言及しています。

この形式は、v0が短いインデックスで最大64アカウントを参照するために使用していたアドレスルックアップテーブルを避けています。テーブルはペイオフなしに複雑さを追加しますが、現在は64のインライン32バイトアドレスがあり、これらは2,048バイトしか占めておらず、上限をはるかに下回っています。

トランザクションごとの64アカウントの制限はSolanaネットワーク上に残っています。バイト予算の問題が解決されても、重アカウントアプリケーションは依然として制限に達します。

Jitoバンドルにより、開発者は最大5つのトランザクションをすべて実行するかすべて実行しないシーケンスにマージし、バイト制限の問題を解決できます。

トランザクションv1は、単一のトランザクションで同じアトミックな結果を実現します。これは、ネイティブなアトミック性をベースレイヤーに直接もたらします。

v1は送信者にとってオプトインであるため、レガシーおよびv0トランザクションは引き続き動作します。Solana Foundationの移行ノートによると、ブロックを読み取るインフラストラクチャにとっては破壊的変更です。

データツールやブロックエクスプローラーがSolanaの新しいバージョンに更新されていない場合、完全にフリーズするかエラーを出力します。

アプリが新しいバージョンパラメータなしでv1トランザクションまたはブロックを読み込もうとすると、Solanaのサーバーはシステムエラーコード-32015でリクエストを拒否します。

ライブブロックを継続的にストリーミングするツールは、新しいv1トランザクションに遭遇し、完全に空白の応答を受け取ってそこで停止します。

トランザクションデータを記録するインデクサーやツールは、新しいトランザクションの優先手数料をゼロとして表示します。これは、間違った場所を見ているためです。

以前は、これらの手数料はトランザクション内の特別なリストから読み取られていました。新しいバージョンでは、この情報は独自の専用サマリーボックスに保持されています。

AnzaはRPCプロバイダーにAgave v4.2へのアップグレードを要求しています。Heliusは、必要な作業を詳述した移行チェックリストを発行しました。

トランザクションv1は、9月1日にSolanaテストネットのエポック1025中にアクティブ化されました。Anzaは9月9日のメインネットデプロイメントを正式にスケジュールしました。

これをお読みいただいているあなたは、すでに一歩先を行っています。当社のニュースレターでその先を行ってください。

この記事をシェア

免責事項。 本情報は取引助言ではありません。Cryptopolitan.com は、本ページに記載された情報に基づいて行われた投資に対して一切の責任を負いません。投資判断を下す前に、独自の調査を行うか、資格を有する専門家にご相談することを強く推奨します。

ランダ・モーゼス

ランダ・モーゼス

ランダ・モーゼスはCryptopolitanのエディター兼記者で、テクノロジー、AI、ロボティクス、暗号資産、詐欺、ハッキングなどを担当しています。2017年以来暗号資産分野で活動しており、Forward Protocol、AmaZix、Cryptosomniacで役職を務めました。ブラッドフォード大学で電気電子工学の学位を取得しています。

もっと見る… ニュース