La croissance des hausses historiques est actuellement le plus grand goulot d’étranglement dans l’expansion d’Ethereum. Étonnamment, les hausses historiques sont devenues un problème plus important que les hausses de l’État. D’ici quelques années, les données historiques dépasseront long Ethereum Nœud capacité de stockage.
Voici la bonne nouvelle :
La hausse historique est un problème beaucoup plus facile à résoudre que la hausse de l’État.
La solution est déjà en cours de développement.
S’attaquer aux hausses historiques atténuera les problèmes de hausse de l’État.
Dans cet article, nous allons continuer à examiner les Ethereum problème de scalabilité de la partie 1 et maintenant tourner notre attention de la hausse de l’État à la hausse historique. En utilisant des ensembles de données granulaires, nos objectifs sont de 1) comprendre techniquement les goulots d’étranglement de mise à l’échelle d’Ethereum et 2) aider à ouvrir la discussion autour de la solution optimale aux limites de gaz d’Ethereum.
Qu’est-ce que la hausse historique ?
L’historique est la collection de tous les blocs et transactions exécutés par Ethereum tout au long de sa durée de vie, et ce sont toutes les données du Genesis Block au bloc actuel. La croissance historique est la hausse de nouveaux blocs et de nouvelles transactions au fil du temps.
La figure 1 montre la relation entre les hausse historiques et diverses mesures protocole et les contraintes matérielles Ethereum Nœud. Par rapport à la hausse d’état, les hausses historiques sont limitées par un ensemble différent de contraintes matérielles. Les hausses historiques exercent une pression sur les E/S du réseau, car de nouveaux blocs et transactions doivent être transmis sur l’ensemble du réseau. Les hausse historiques peuvent également exercer une pression sur Nœud short de stockage, car chaque Ethereum Nœud stocke une copie complète de l’historique. Si le taux historique de hausse est suffisamment rapide pour dépasser ces limites matérielles, le nœud ne sera pas plus long en mesure d’atteindre un consensus stable avec son nœud. Pour une vue d’ensemble des hausses d’État et autres goulots d’étranglement de mise à l’échelle, voir la partie 1 de cette série.
Figure 1 : Goulot d’étranglement de la mise à l’échelle d’Ethereum
Jusqu’à récemment, la majeure partie du débit réseau par nœud était utilisée pour transférer l’historique (comme les nouveaux blocs et les transactions). Cela a changé avec l’introduction des blobs dans le Dencun Hard Fork. Les objets blob sont désormais pris en compte pour une grande partie de l’activité du réseau de nœuds. Cependant, les blobs ne sont pas considérés comme faisant partie de l’historique car 1) ils ne sont stockés par les nœuds que pendant 2 semaines, puis supprimés, et 2) ils n’ont pas besoin de répéter les données de la création d’Ethereum. En raison de (1), les objets blob n’augmentent pas de manière significative la charge de stockage par Ethereum Nœud. Nous parlerons des blobs plus loin dans cet article.
Dans cet article, nous nous concentrerons sur les hausses historiques et discuterons de la relation entre l’histoire et l’État. Étant donné que les hausses d’état et les hausses historiques ont des contraintes matérielles qui se chevauchent, ce sont des problèmes liés, et la résolution d’un problème peut aider à résoudre l’autre.
À quelle vitesse l’histoire est-elle hausse long ?
La figure 2 montre le taux de hausse historique depuis la création d’Ethereum. Chaque ligne verticale représente la hausse d’un mois. L’axe des ordonnées représente le nombre de k exaoctets de hausse historique au cours de ce mois. Les transactions sont classées par leur « adresse de destination » et utilisent des octets RLP() pour indiquer la taille. Les contrats qui ne peuvent pas être facilement identifiés sont classés comme « inconnus ». La catégorie « Autres » comprend une série de sous-catégories telles que l’infrastructure et les jeux.
Figure 2 : Taux de hausse historique d’Ethereum au fil du temps
Voici quelques points clés à retenir du graphique ci-dessus :
Le taux de hausse historique est 6 à 8 fois plus rapide que la hausse de l’État : Le taux de hausse historique a récemment culminé à 36,0 Gio / mois et est actuellement de 19,3 Gio / mois. Le taux de hausse de l’État a culminé à environ 6,0 Gio/mois et est actuellement de 2,5 Gio/mois. Une comparaison de l’histoire et de l’état en termes de hausse et de taille cumulée sera décrite plus loin dans cet article.
Avant Decun, le taux de hausse historique s’était accéléré : alors que l’État avait été à peu près linéaire hausse pendant long ans (voir la partie 1), l’histoire était hausse superlinéaire. Considérant que le taux de hausse d’une hausse linéaire entraîne une hausse quadratique de l’échelle globale, le taux de hausse d’une hausse superlinéaire entraîne une taille globale supérieure à la hausse quadratique. Cette accélération s’arrête brusquement après Dencun. C’est la première fois que Ethereum connaît une Goutte significative du taux de hausse historique.
La majorité des hausses historiques récentes proviennent des cumuls : chaque L2 publie une copie de sa transaction sur le mainnet. Cela a généré une grande quantité de hausses historiques et a conduit Rollup à être le contributeur le plus important à la croissance historique au cours de la dernière année. Cependant, Dencun permet à L2 de publier ses données de transaction en utilisant des blobs au lieu de l’historique, de sorte que les cumuls ne génèrent pas plus long la majeure partie de l’historique Ethereum. Nous aborderons les cumuls plus en détail plus loin dans cet article.
Qui est le plus grand contributeur à la hausse historique d’Ethereum ?
Le nombre historique de différentes classes de contrats générées révèle comment les modèles d’utilisation d’Ethereum ont évolué au fil du temps. La figure 3 montre les contributions relatives des différentes catégories de contrats. Ces données sont normalisées sur les mêmes que celles de la figure 2.
Figure 3 : Contribution des différentes catégories de contrats aux hausses historiques
Ces données révèlent quatre périodes différentes de modèles d’utilisation d’Ethereum :
Précoce (violet) : Il y avait peu d’activité off-chain dans les premières années d’Ethereum. Un grand long de ces premiers contrats sont maintenant difficiles à identifier et sont marqués comme « inconnus » dans le graphique.
Ère ERC-20 (vert) : La norme ERC-20 a été finalisée fin 2015 mais n’a pas connu de développement significatif avant 2017 et 2018. Les contrats ERC-20 sont devenus la plus grande source de hausses historiques en 2019.
DEX / Decentralized Finance Era (Brown) : Les contrats DEX et Finance Décentralisée sont apparus sur la chaîne off-chain dès 2016 et ont commencé à gagner du terrain en 2017. Mais ce n’est qu’à l’été de la finance décentralisée 2020 qu’ils sont devenus la plus grande catégorie de hausse de tous les temps. Les contrats de finance décentralisée et de DEX ont représenté plus de 50% des hausses historiques pour une partie de 2021 et 2022.
Rollup Era (gris) : Au début de 2023, L2 Rollups a commencé à exécuter des transactions plus longues que Mainnet. Dans les mois leading jusqu’à Dencun, ils ont généré environ 2/3 de l’histoire d’Ethereum.
Chaque ère représente un modèle plus complexe d’utilisation d’Ethereum que jamais auparavant. Au fil du temps, la complexité peut être considérée comme une forme de mise à l’échelle d’Ethereum, qui ne peut pas être mesurée par des mesures simples telles que les transactions par seconde.
Au cours du mois de données le plus récent (avril 2024), les cumuls ne produisent pas plus long la majeure partie de l’historique. Il n’est pas clair si l’histoire future provient des DEX et de la finance décentralisée, ou si de nouveaux modèles d’utilisation émergeront.
Qu’en est-il des blobs ?
Le Hard Fork de Dencun a radicalement changé la dynamique historique croissante en introduisant des blobs, permettant aux rollups de publier des données en utilisant des blobs bon marché au lieu de l’historique. La figure 4 amplifie les hausses historiques avant et après la mise à niveau de Dencun. Le graphique est similaire à la figure 2, sauf que chaque ligne verticale représente un jour au lieu d’un mois.
Figure 4 L’impact de :D encun sur les hausse historiques
À partir de ce graphique, nous pouvons tirer plusieurs conclusions clés :
La hausse historique des rollups a chuté d’environ 2/3 depuis Dencun : de grandes long rollups ont été converties de données d’appel en blobs, ce qui réduit considérablement la quantité d’historique qu’elles génèrent. Toutefois, en avril 2024, il existe encore des rollups qui n’ont pas encore été convertis des données d’appel en objets blob.
La hausse totale de tous les temps a chuté d’environ 1/3 depuis Dencun : Dencun n’a Goutte que le hausse de tous les temps de rollups. Il y a eu une légère augmentation des hausses historiques pour les autres catégories de contrats. Même après Dencun, la hausse historique est encore 8 fois supérieure à la hausse de l’État (voir la section suivante pour plus de détails).
Bien que les blobs aient une vitesse de hausse historique de goutte, ils sont toujours une nouvelle fonctionnalité d’Ethereum. On ne sait pas à quel niveau la vitesse de hausse historique se stabilisera en présence de blobs.
Les longues hausses historiques rapides sont-elles acceptables ?
L’augmentation du plafond de gaz augmentera le taux de hausse historique. Par conséquent, les propositions visant à augmenter le plafond de gaz, telles que Pump the Gas, doivent tenir compte de la relation entre les hausses historiques et les goulots d’étranglement matériels de chaque nœud.
Pour déterminer un taux de hausse historique acceptable, vous devez d’abord comprendre combien de longues votre matériel de nœud actuel peut supporter long en termes de réseau et de stockage. Le matériel en réseau peut être en mesure de maintenir le statu quo indéfiniment, car il est peu probable que les taux de croissance historiques reviennent à leurs hausses d’avant Dencun jusqu’à ce que les limites de gaz soient augmentées. Cependant, la charge de stockage de l’historique augmente avec le temps. Dans le cadre de la stratégie de stockage actuelle, il est inévitable que le disque de stockage de chaque nœud finisse par être rempli d’historique.
La figure 5 montre Ethereum Nœud charge de stockage au fil du temps et prédit l’hausse de la charge de stockage au cours des 3 prochaines années. Les prévisions sont basées sur le taux de hausse en avril 2024. Ce taux de hausse peut hausse ou diminuer à mesure que les habitudes d’utilisation futures ou les limites de gas changent.
Figure 5 : Taille de l’historique, de l’état et de la charge de stockage du nœud complet
À partir de ce graphique, nous pouvons tirer plusieurs conclusions clés :
L’histoire occupe environ 3 fois les courts de stockage de l’état. Cette différence augmente également avec le temps, car la croissance historique est environ 8 fois plus rapide que celle de l’État.
1,8 Tio est le seuil critique à partir duquel Xu long Nœud seront contraints de mettre à niveau leurs disques de stockage. 2 To est une taille de disque dur de stockage courante, ne fournissant que 1,8 Tio de court-circuit utilisable. Notez que TB (1 trillion d’octets) est une unité différente de Tio (= 1024^4 octets). Pour les opérateurs de long Nœud Xu, le « vrai » seuil critique est encore plus bas, car le validateur post-fusion doit s’exécuter en même temps que Consensus client d’exécution.
Le seuil critique sera atteint d’ici 2 à 3 ans. L’augmentation de la limite de gaz de n’importe quel montant accélérera le temps en conséquence. L’atteinte de ce seuil imposera une charge de maintenance importante aux opérateurs de nœuds et nécessitera l’achat de matériel supplémentaire (par exemple, des disques NVME à 300 $).
Contrairement aux données d’état, les données historiques font l’objet d’un ajout uniquement et sont consultées le plus longtemps moins fréquemment. Par conséquent, il est théoriquement possible de stocker les données historiques séparément des données de l’État sur un support de stockage moins cher. Cela peut être réalisé avec certains clients tels que Geth.
En plus de la capacité de stockage, les E/S réseau sont une autre limitation majeure des hausses historiques. Contrairement à la capacité de stockage, les limites d’E/S réseau ne poseront pas de problèmes aux nœuds court terme, mais ces limites deviendront importantes pour augmenter les limites de gaz à l’avenir.
Pour comprendre comment la capacité réseau d’un Ethereum Nœud typique peut support long quelques hausse historiques, il est important de connaître la relation entre les hausse historiques et diverses mesures d’intégrité du réseau, telles que le taux de réorganisation, les échecs d’emplacement, les échecs finaux, les échecs de preuve, les échecs du comité de synchronisation et Bloc latence de validation. L’analyse de ces mesures dépasse le cadre de cet article, mais des informations plus longues peuvent être trouvées dans les enquêtes précédentes sur l’intégrité de la couche Consensus. En outre, le projet Xatu de la Fondation Ethereum a construit des ensembles de données publics pour accélérer cette analyse.
Comment résoudre le problème des hausses historiques ?
Le soulèvement historique est un problème beaucoup plus facile à résoudre que le soulèvement de l’État. Il peut être traité presque entièrement par la proposition candidate EIP-4444. Cette EIP modifie chaque nœud de la conservation de l’ensemble des données historiques d’Ethereum à seulement une année de données historiques. Après la mise en œuvre de EIP-4444, le stockage de données ne sera plus plus long un goulot d’étranglement pour la mise à l’échelle d’Ethereum et, à long terme, les augmentations de limite de gaz ne seront pas limitées. EIP-4444 est nécessaire pour la durabilité à long terme du réseau, sinon le taux historique de hausse sera rapide et le matériel du nœud réseau doit être mis à jour régulièrement.
La figure 6 montre l’impact de EIP-4444 sur la charge de stockage de chaque nœud au cours des 3 prochaines années. C’est la même chose que la figure 4, mais avec l’ajout d’une ligne moins profonde pour indiquer la charge de stockage après la mise en œuvre de EIP-4444.
Figure 6 : Impact de la EIP-4444 sur Ethereum Nœud charge de stockage
Voici quelques-unes des principales conclusions de ce graphique :
EIP-4444 Halving la charge de stockage actuelle. La charge de stockage sera réduite de 1,2 Tio à 633 Gio.
EIP-4444 stabilisera la charge de stockage historique. En supposant un taux de hausse historique constant, les données historiques sont rejetées au taux généré.
Après EIP-4444, il faudrait plus d’années pour que la charge de stockage des nœuds atteigne son niveau actuel. En effet, les hausses d’État seront le seul facteur qui augmentera la charge de stockage, et les hausses d’État seront plus lentes que les hausses historiques.
Après l’implémentation d’EIP-4444, les hausses historiques introduiront toujours un certain niveau de charge de stockage, car le nœud stockera une année d’historique historique. Cependant, même si Ethereum atteint l’échelle mondiale, ce fardeau ne sera pas difficile à résoudre. Une fois que la méthode d’historique s’avère fiable, le délai d’expiration d’un an pour EIP-4444 peut être raccourci à des mois, des semaines ou même moins.
Comment sauvegarder mon historique Ethereum ?
EIP-4444 soulève la question suivante : si l’histoire n’est pas sauvée par Ethereum Nœud elle-même, alors comment devrait-elle être sauvée ? L’histoire joue un rôle central dans la vérification, la comptabilité et l’analyse d’Ethereum, il est donc crucial de préserver l’histoire. Heureusement, la tenue de l’historique est une question simple qui ne nécessite que 1/n fournisseurs de données honnêtes. Cela contraste avec les questions de consensus d’État, qui exigent que 1/3 à 2/3 des participants soient honnêtes. Les opérateurs de nœuds peuvent vérifier l’authenticité des ensembles de données historiques en 1) rejouant toutes les transactions depuis le Genesis Block et 2) en vérifiant si ces transactions reproduisent la même racine d’état que le côté Blockchain actuel.
Il y a les chemins les plus longs pour sauver l’histoire.
Torrents/P2P : Les torrents sont la méthode la plus simple et la plus fiable. Ethereum Nœud pouvez empaqueter une partie de l’historique sur une base régulière et la partager sous forme de fichier torrent public. Par exemple, un nœud peut créer un nouveau fichier torrent historique tous les 100 000 blocs. Les clients nœuds comme les erigons effectuent déjà ce processus d’une manière quelque peu non standardisée. Pour standardiser ce processus, tous les clients Nœud doivent utiliser le même format de données, les mêmes paramètres et le même réseau P2P. Les nœuds pourront choisir de participer ou non à ce réseau en fonction de leurs capacités de stockage et de bande passante. L’avantage de Torrents est l’utilisation de standards ouverts de haute qualité qui sont déjà pris en charge par un grand nombre d’outils de données.
Portal Network : Portal Network est un nouveau réseau conçu spécifiquement pour héberger des données Ethereum. Il s’agit d’une approche similaire à celle de Torrent, tout en offrant des fonctionnalités supplémentaires qui facilitent la validation des données. L’avantage de Portal Network est que ces couches supplémentaires de validation fournissent aux clients légers des utilitaires pour valider et interroger efficacement les jeux de données partagés.
Hébergement dans le cloud : les services de stockage dans le cloud tels que S 3 d’AWS ou R 2 de Cloudflare offrent une option peu coûteuse et performante pour conserver l’historique. Cependant, cette approche introduit des risques juridiques et opérationnels plus longs, car il n’y a aucune garantie que ces services cloud seront toujours disposés et capables d’héberger des données de cryptoactifs.
Les défis de mise en œuvre restants sont plus longs sociaux que techniques. La communauté Ethereum doit coordonner les détails d’implémentation spécifiques dans l’ordre pour les intégrer directement dans chaque client Nœud. En particulier, l’exécution d’une synchronisation complète à partir du Genesis Block (au lieu d’une synchronisation Aperçu) nécessitera la récupération de l’historique auprès du fournisseur d’historique au lieu de l’Ethereum Nœud. Ces changements ne nécessitent techniquement pas de hard fork, ils peuvent donc être mis en œuvre plus tôt que le prochain hard fork d’Ethereum, Pectra.
Toutes ces méthodes d’historique peuvent également être utilisées par les L2 pour conserver les données d’objets blob qu’ils publient sur le mainnet. Par rapport à la préservation historique, la préservation des blob 1) est plus difficile car la quantité totale de données est plus longue ; 2) Moins important car les blobs ne sont pas nécessaires pour relire l’historique du mainnet. Cependant, la préservation des blob est toujours nécessaire pour que chaque L2 puisse rejouer sa propre histoire. Par conséquent, une certaine forme d’enregistrement de blob est importante pour l’ensemble de l’écosystème Ethereum. En outre, si L2 développe une infrastructure de stockage d’objets blob robuste, il peut également être en mesure de stocker facilement des données L1 historiques.
Il peut être utile de comparer directement les jeux de données stockés par différentes configurations de nœuds avant et après EIP-4444. La figure 7 montre la charge de stockage pour différents types de Ethereum Nœud. Les données d’état sont les comptes et les contrats, les données historiques sont les blocs et les transactions, et les données d’archivage sont un ensemble facultatif d’index de données. Le nombre d’octets dans cette table est basé sur l’aperçu reth le plus récent, mais les nombres pour les autres clients de nœuds doivent être à peu près les mêmes.
Figure 7 : Charge de stockage pour différents types de Ethereum Nœud
Autres mots
Le nœud d’archivage stocke les données d’état et historiques ainsi que les données d’archivage. Le nœud d’archivage peut être utilisé lorsque quelqu’un veut pouvoir interroger facilement l’état de la chaîne historique.
Full Node stocke uniquement les données historiques et d’état. La plupart des long Nœud d’aujourd’hui sont Full Node. La charge de stockage d’un nœud complet est d’environ la moitié de celle d’un nœud d’archive.
Les nœuds complets après EIP-4444 stockent uniquement les données d’état et les données historiques de l’année la plus récente. Cela réduit la charge de stockage sur le nœud de 1,2 Tio à 633 Gio et ramène les courts-circuits de stockage pour les données historiques à une valeur stable.
Les nœuds sans état, également connus sous le nom de « nœuds légers », ne stockent aucun ensemble de données et peuvent être vérifiés immédiatement à la fin de la chaîne. Ce type de nœud devient possible une fois que les tentatives Verkle ou d’autres schémas d’engagement d’état sont ajoutés à Ethereum.
Enfin, il existe des PIE supplémentaires qui peuvent limiter le taux de hausse historique, et pas seulement s’adapter au taux de hausse actuel. Cela permet de respecter les contraintes d’E/S réseau à court terme et les contraintes de stockage à long terme. Bien que EIP-4444 soit toujours nécessaire pour la durabilité à long terme du réseau, ces autres EIP aideront Ethereum à évoluer plus efficacement à l’avenir :
EIP-7623 : Retarification des données d’appel pour rendre certaines transactions avec des données d’appel de longue durée plus coûteuses. Rendre ces modèles d’utilisation plus coûteux obligera certains d’entre eux à convertir des données d’appel en blobs. Cela fera goutte au taux de hausse historique.
EIP-4488 : Impose une limite sur la quantité totale de données d’appel pouvant être incluses dans chaque bloc. Cela imposera une limite plus stricte au taux de hausse de l’histoire.
Ces EIP sont plus faciles à mettre en œuvre que le EIP-4444, de sorte qu’ils peuvent servir d’options à short terme avant que le EIP-4444 n’entre en production.
En conclusion
Le but de cet article est d’utiliser des données pour comprendre 1) comment fonctionnent les hausses historiques et 2) les moyens de résoudre ce problème. Une grande partie des données longues de cet article est difficile à obtenir par des moyens traditionnels, nous voulions donc exposer ces données pour fournir de nouvelles informations sur les problèmes de hausse historiques.
Historiquement une hausse en tant que goulot d’étranglement pour l’expansion d’Ethereum, peu d’attention y a été accordée. Même sans augmenter le plafond de gas, Ethereum conventions actuelles de conservation de l’historique obligeront Xu long Nœud à mettre à niveau leur matériel d’ici quelques années. Heureusement, ce n’est pas un problème difficile à résoudre. Il existe déjà une solution claire dans EIP-4444. Nous estimons que la mise en œuvre de cette EIP devrait être accélérée afin de permettre la vente de positions courtes pour les futures augmentations du plafond gas.
Paradigme : Une explication détaillée des problèmes de hausse de l’histoire d’Ethereum et de leurs solutions
Auteurs originaux : Storm Slivkoff, Georgios Konstantopoulos
Compilation originale : Luffy, Foresight News
La croissance des hausses historiques est actuellement le plus grand goulot d’étranglement dans l’expansion d’Ethereum. Étonnamment, les hausses historiques sont devenues un problème plus important que les hausses de l’État. D’ici quelques années, les données historiques dépasseront long Ethereum Nœud capacité de stockage.
Voici la bonne nouvelle :
Dans cet article, nous allons continuer à examiner les Ethereum problème de scalabilité de la partie 1 et maintenant tourner notre attention de la hausse de l’État à la hausse historique. En utilisant des ensembles de données granulaires, nos objectifs sont de 1) comprendre techniquement les goulots d’étranglement de mise à l’échelle d’Ethereum et 2) aider à ouvrir la discussion autour de la solution optimale aux limites de gaz d’Ethereum.
Qu’est-ce que la hausse historique ?
L’historique est la collection de tous les blocs et transactions exécutés par Ethereum tout au long de sa durée de vie, et ce sont toutes les données du Genesis Block au bloc actuel. La croissance historique est la hausse de nouveaux blocs et de nouvelles transactions au fil du temps.
La figure 1 montre la relation entre les hausse historiques et diverses mesures protocole et les contraintes matérielles Ethereum Nœud. Par rapport à la hausse d’état, les hausses historiques sont limitées par un ensemble différent de contraintes matérielles. Les hausses historiques exercent une pression sur les E/S du réseau, car de nouveaux blocs et transactions doivent être transmis sur l’ensemble du réseau. Les hausse historiques peuvent également exercer une pression sur Nœud short de stockage, car chaque Ethereum Nœud stocke une copie complète de l’historique. Si le taux historique de hausse est suffisamment rapide pour dépasser ces limites matérielles, le nœud ne sera pas plus long en mesure d’atteindre un consensus stable avec son nœud. Pour une vue d’ensemble des hausses d’État et autres goulots d’étranglement de mise à l’échelle, voir la partie 1 de cette série.
Figure 1 : Goulot d’étranglement de la mise à l’échelle d’Ethereum
Jusqu’à récemment, la majeure partie du débit réseau par nœud était utilisée pour transférer l’historique (comme les nouveaux blocs et les transactions). Cela a changé avec l’introduction des blobs dans le Dencun Hard Fork. Les objets blob sont désormais pris en compte pour une grande partie de l’activité du réseau de nœuds. Cependant, les blobs ne sont pas considérés comme faisant partie de l’historique car 1) ils ne sont stockés par les nœuds que pendant 2 semaines, puis supprimés, et 2) ils n’ont pas besoin de répéter les données de la création d’Ethereum. En raison de (1), les objets blob n’augmentent pas de manière significative la charge de stockage par Ethereum Nœud. Nous parlerons des blobs plus loin dans cet article.
Dans cet article, nous nous concentrerons sur les hausses historiques et discuterons de la relation entre l’histoire et l’État. Étant donné que les hausses d’état et les hausses historiques ont des contraintes matérielles qui se chevauchent, ce sont des problèmes liés, et la résolution d’un problème peut aider à résoudre l’autre.
À quelle vitesse l’histoire est-elle hausse long ?
La figure 2 montre le taux de hausse historique depuis la création d’Ethereum. Chaque ligne verticale représente la hausse d’un mois. L’axe des ordonnées représente le nombre de k exaoctets de hausse historique au cours de ce mois. Les transactions sont classées par leur « adresse de destination » et utilisent des octets RLP() pour indiquer la taille. Les contrats qui ne peuvent pas être facilement identifiés sont classés comme « inconnus ». La catégorie « Autres » comprend une série de sous-catégories telles que l’infrastructure et les jeux.
Figure 2 : Taux de hausse historique d’Ethereum au fil du temps
Voici quelques points clés à retenir du graphique ci-dessus :
Qui est le plus grand contributeur à la hausse historique d’Ethereum ?
Le nombre historique de différentes classes de contrats générées révèle comment les modèles d’utilisation d’Ethereum ont évolué au fil du temps. La figure 3 montre les contributions relatives des différentes catégories de contrats. Ces données sont normalisées sur les mêmes que celles de la figure 2.
Figure 3 : Contribution des différentes catégories de contrats aux hausses historiques
Ces données révèlent quatre périodes différentes de modèles d’utilisation d’Ethereum :
Chaque ère représente un modèle plus complexe d’utilisation d’Ethereum que jamais auparavant. Au fil du temps, la complexité peut être considérée comme une forme de mise à l’échelle d’Ethereum, qui ne peut pas être mesurée par des mesures simples telles que les transactions par seconde.
Au cours du mois de données le plus récent (avril 2024), les cumuls ne produisent pas plus long la majeure partie de l’historique. Il n’est pas clair si l’histoire future provient des DEX et de la finance décentralisée, ou si de nouveaux modèles d’utilisation émergeront.
Qu’en est-il des blobs ?
Le Hard Fork de Dencun a radicalement changé la dynamique historique croissante en introduisant des blobs, permettant aux rollups de publier des données en utilisant des blobs bon marché au lieu de l’historique. La figure 4 amplifie les hausses historiques avant et après la mise à niveau de Dencun. Le graphique est similaire à la figure 2, sauf que chaque ligne verticale représente un jour au lieu d’un mois.
Figure 4 L’impact de :D encun sur les hausse historiques
À partir de ce graphique, nous pouvons tirer plusieurs conclusions clés :
Bien que les blobs aient une vitesse de hausse historique de goutte, ils sont toujours une nouvelle fonctionnalité d’Ethereum. On ne sait pas à quel niveau la vitesse de hausse historique se stabilisera en présence de blobs.
Les longues hausses historiques rapides sont-elles acceptables ?
L’augmentation du plafond de gaz augmentera le taux de hausse historique. Par conséquent, les propositions visant à augmenter le plafond de gaz, telles que Pump the Gas, doivent tenir compte de la relation entre les hausses historiques et les goulots d’étranglement matériels de chaque nœud.
Pour déterminer un taux de hausse historique acceptable, vous devez d’abord comprendre combien de longues votre matériel de nœud actuel peut supporter long en termes de réseau et de stockage. Le matériel en réseau peut être en mesure de maintenir le statu quo indéfiniment, car il est peu probable que les taux de croissance historiques reviennent à leurs hausses d’avant Dencun jusqu’à ce que les limites de gaz soient augmentées. Cependant, la charge de stockage de l’historique augmente avec le temps. Dans le cadre de la stratégie de stockage actuelle, il est inévitable que le disque de stockage de chaque nœud finisse par être rempli d’historique.
La figure 5 montre Ethereum Nœud charge de stockage au fil du temps et prédit l’hausse de la charge de stockage au cours des 3 prochaines années. Les prévisions sont basées sur le taux de hausse en avril 2024. Ce taux de hausse peut hausse ou diminuer à mesure que les habitudes d’utilisation futures ou les limites de gas changent.
Figure 5 : Taille de l’historique, de l’état et de la charge de stockage du nœud complet
À partir de ce graphique, nous pouvons tirer plusieurs conclusions clés :
Contrairement aux données d’état, les données historiques font l’objet d’un ajout uniquement et sont consultées le plus longtemps moins fréquemment. Par conséquent, il est théoriquement possible de stocker les données historiques séparément des données de l’État sur un support de stockage moins cher. Cela peut être réalisé avec certains clients tels que Geth.
En plus de la capacité de stockage, les E/S réseau sont une autre limitation majeure des hausses historiques. Contrairement à la capacité de stockage, les limites d’E/S réseau ne poseront pas de problèmes aux nœuds court terme, mais ces limites deviendront importantes pour augmenter les limites de gaz à l’avenir.
Pour comprendre comment la capacité réseau d’un Ethereum Nœud typique peut support long quelques hausse historiques, il est important de connaître la relation entre les hausse historiques et diverses mesures d’intégrité du réseau, telles que le taux de réorganisation, les échecs d’emplacement, les échecs finaux, les échecs de preuve, les échecs du comité de synchronisation et Bloc latence de validation. L’analyse de ces mesures dépasse le cadre de cet article, mais des informations plus longues peuvent être trouvées dans les enquêtes précédentes sur l’intégrité de la couche Consensus. En outre, le projet Xatu de la Fondation Ethereum a construit des ensembles de données publics pour accélérer cette analyse.
Comment résoudre le problème des hausses historiques ?
Le soulèvement historique est un problème beaucoup plus facile à résoudre que le soulèvement de l’État. Il peut être traité presque entièrement par la proposition candidate EIP-4444. Cette EIP modifie chaque nœud de la conservation de l’ensemble des données historiques d’Ethereum à seulement une année de données historiques. Après la mise en œuvre de EIP-4444, le stockage de données ne sera plus plus long un goulot d’étranglement pour la mise à l’échelle d’Ethereum et, à long terme, les augmentations de limite de gaz ne seront pas limitées. EIP-4444 est nécessaire pour la durabilité à long terme du réseau, sinon le taux historique de hausse sera rapide et le matériel du nœud réseau doit être mis à jour régulièrement.
La figure 6 montre l’impact de EIP-4444 sur la charge de stockage de chaque nœud au cours des 3 prochaines années. C’est la même chose que la figure 4, mais avec l’ajout d’une ligne moins profonde pour indiquer la charge de stockage après la mise en œuvre de EIP-4444.
Figure 6 : Impact de la EIP-4444 sur Ethereum Nœud charge de stockage
Voici quelques-unes des principales conclusions de ce graphique :
Après l’implémentation d’EIP-4444, les hausses historiques introduiront toujours un certain niveau de charge de stockage, car le nœud stockera une année d’historique historique. Cependant, même si Ethereum atteint l’échelle mondiale, ce fardeau ne sera pas difficile à résoudre. Une fois que la méthode d’historique s’avère fiable, le délai d’expiration d’un an pour EIP-4444 peut être raccourci à des mois, des semaines ou même moins.
Comment sauvegarder mon historique Ethereum ?
EIP-4444 soulève la question suivante : si l’histoire n’est pas sauvée par Ethereum Nœud elle-même, alors comment devrait-elle être sauvée ? L’histoire joue un rôle central dans la vérification, la comptabilité et l’analyse d’Ethereum, il est donc crucial de préserver l’histoire. Heureusement, la tenue de l’historique est une question simple qui ne nécessite que 1/n fournisseurs de données honnêtes. Cela contraste avec les questions de consensus d’État, qui exigent que 1/3 à 2/3 des participants soient honnêtes. Les opérateurs de nœuds peuvent vérifier l’authenticité des ensembles de données historiques en 1) rejouant toutes les transactions depuis le Genesis Block et 2) en vérifiant si ces transactions reproduisent la même racine d’état que le côté Blockchain actuel.
Il y a les chemins les plus longs pour sauver l’histoire.
Les défis de mise en œuvre restants sont plus longs sociaux que techniques. La communauté Ethereum doit coordonner les détails d’implémentation spécifiques dans l’ordre pour les intégrer directement dans chaque client Nœud. En particulier, l’exécution d’une synchronisation complète à partir du Genesis Block (au lieu d’une synchronisation Aperçu) nécessitera la récupération de l’historique auprès du fournisseur d’historique au lieu de l’Ethereum Nœud. Ces changements ne nécessitent techniquement pas de hard fork, ils peuvent donc être mis en œuvre plus tôt que le prochain hard fork d’Ethereum, Pectra.
Toutes ces méthodes d’historique peuvent également être utilisées par les L2 pour conserver les données d’objets blob qu’ils publient sur le mainnet. Par rapport à la préservation historique, la préservation des blob 1) est plus difficile car la quantité totale de données est plus longue ; 2) Moins important car les blobs ne sont pas nécessaires pour relire l’historique du mainnet. Cependant, la préservation des blob est toujours nécessaire pour que chaque L2 puisse rejouer sa propre histoire. Par conséquent, une certaine forme d’enregistrement de blob est importante pour l’ensemble de l’écosystème Ethereum. En outre, si L2 développe une infrastructure de stockage d’objets blob robuste, il peut également être en mesure de stocker facilement des données L1 historiques.
Il peut être utile de comparer directement les jeux de données stockés par différentes configurations de nœuds avant et après EIP-4444. La figure 7 montre la charge de stockage pour différents types de Ethereum Nœud. Les données d’état sont les comptes et les contrats, les données historiques sont les blocs et les transactions, et les données d’archivage sont un ensemble facultatif d’index de données. Le nombre d’octets dans cette table est basé sur l’aperçu reth le plus récent, mais les nombres pour les autres clients de nœuds doivent être à peu près les mêmes.
Figure 7 : Charge de stockage pour différents types de Ethereum Nœud
Autres mots
Enfin, il existe des PIE supplémentaires qui peuvent limiter le taux de hausse historique, et pas seulement s’adapter au taux de hausse actuel. Cela permet de respecter les contraintes d’E/S réseau à court terme et les contraintes de stockage à long terme. Bien que EIP-4444 soit toujours nécessaire pour la durabilité à long terme du réseau, ces autres EIP aideront Ethereum à évoluer plus efficacement à l’avenir :
Ces EIP sont plus faciles à mettre en œuvre que le EIP-4444, de sorte qu’ils peuvent servir d’options à short terme avant que le EIP-4444 n’entre en production.
En conclusion
Le but de cet article est d’utiliser des données pour comprendre 1) comment fonctionnent les hausses historiques et 2) les moyens de résoudre ce problème. Une grande partie des données longues de cet article est difficile à obtenir par des moyens traditionnels, nous voulions donc exposer ces données pour fournir de nouvelles informations sur les problèmes de hausse historiques.
Historiquement une hausse en tant que goulot d’étranglement pour l’expansion d’Ethereum, peu d’attention y a été accordée. Même sans augmenter le plafond de gas, Ethereum conventions actuelles de conservation de l’historique obligeront Xu long Nœud à mettre à niveau leur matériel d’ici quelques années. Heureusement, ce n’est pas un problème difficile à résoudre. Il existe déjà une solution claire dans EIP-4444. Nous estimons que la mise en œuvre de cette EIP devrait être accélérée afin de permettre la vente de positions courtes pour les futures augmentations du plafond gas.
Lien vers l’article original