Solanas TPS sank nach Alpenglow, da Validatoren-Votes aus der Transaktionszählung fielen
Wichtige Erkenntnisse
- •Solana aktivierte das Alpenglow-Upgrade am 21. Oktober und ersetzte TowerBFT durch das Votor-Protokoll, bei dem Validatoren-Votes in Zertifikaten im Block-Footer gebündelt werden, statt als Transaktionen erfasst zu werden.
- •Rund drei von fünf Transaktionen, insgesamt 649, im letzten TowerBFT-Block waren Validatoren-Votes, während der erste Alpenglow-Block keine enthielt und dennoch der größere der beiden war.
- •Die Solana Foundation stuft den TPS-Rückgang nach dem Upgrade als Änderung der Erfassung und nicht als Durchsatzrückgang ein, doch nach dem 21. Oktober veröffentlichte Zahlen basieren auf einer anderen Definition als alle früheren Werte.
- •Im ersten Alpenglow-Block stießen 844 von 1.701 Transaktionen auf Ausführungsfehler, daher enthalten auch vote-freie Zählungen fehlgeschlagene Transaktionen, die Gebühren zahlten, aber keine Zahlung oder keinen Trade abschlossen.
- •Monitoring-Tools, die die Validator-Teilnahme über Vote-Programm-Anweisungen verfolgten, müssen umgebaut werden, um Voting-Zertifikate aus Block-Footern zu lesen, und jedes TPS-Chart über den 21. Oktober hinweg mischt die Erfassungsänderung mit realen Nutzungsänderungen.

Solanas Transaktionsanzahl und damit die ausgewiesene Kennzahl der Transaktionen pro Sekunde (TPS) sank, als das Netzwerk am 21. Oktober Alpenglow aktivierte. Die Upgrade-Dokumentation der Solana Foundation bezeichnet den Rückgang als "eine Änderung der Erfassung, keinen Durchsatzrückgang". Diese Einordnung lässt für alle, die ein Solana-Chart lesen, weiterhin eine Frage offen: Ist die Aktivität tatsächlich gesunken oder nur die Zählung? Die Antwort reicht über einen einzelnen Upgrade-Tag hinaus, denn TPS ist eine der am häufigsten zitierten Durchsatzkennzahlen in der Blockchain-Berichterstattung, und Solanas Zählung nach dem 21. Oktober basiert auf einer anderen Definition als jede zuvor veröffentlichte Zahl.
Was Alpenglow aus der Transaktionsliste entfernte
Unter TowerBFT, dem Konsenssystem, das Solana bis zum 21. Oktober betrieb, gaben Validatoren ihre Votes als gewöhnliche Transaktionen ab. Blöcke enthielten Hunderte davon neben Zahlungen, Swaps und anderem Anwendungsverkehr, und jede Gesamtzählung der Transaktionen schloss diesen Vote-Verkehr ein. Da diese Votes von Validatoren und nicht von Nutzern stammten, spiegelte ein Teil jeder TPS-Zahl vor dem Upgrade die Konsensmechanik des Netzwerks wider und nicht die Nachfrage nach seinen Anwendungen.
Alpenglow ersetzt diesen Mechanismus durch Votor, ein Protokoll, bei dem Validatoren Votes direkt austauschen und zu Zertifikaten bündeln. Die Zertifikate liegen im Footer jedes Blocks und nicht in dessen Transionsliste, sodass eine Zählung, die Transaktionen summiert, ab dem Zeitpunkt der Umstellung keine Votes mehr sieht.
Was die Übergabeblöcke zeigen
Coindoo untersuchte die Blöcke auf beiden Seiten der Umstellung über Solanas öffentliches Mainnet-RPC, die Schnittstelle, über die Knoten Kettedaten auslesen, mithilfe der getBlock-Methode. Jeder Block belegt einen Slot, ein Zeitfenster von etwa 400 Millisekunden. TowerBFT lief in den ersten 5.000 Slots der Epoche, bevor Alpenglow es ersetzte.
Der letzte TowerBFT-Block landete um 13:54:00 UTC am 21. Oktober, und der erste Alpenglow-Block folgte um 13:54:03, wobei in den acht Slots dazwischen keine Blöcke produziert wurden. Rund drei von fünf Transaktionen im letzten TowerBFT-Block, insgesamt 649 Transaktionen, waren Validatoren-Votes; einen Block später gab es keine mehr. Der Alpenglow-Block war dennoch der größere der beiden. Ein einzelnes Blockpaar kann nicht zeigen, ob die Netzwerkaktivität stieg oder fiel; es zeigt den Mechanismus. Die Messung eines Trends erfordert Tausende von Blöcken.
Votes sind nicht das einzige Rauschen in der Zählung
Fehlgeschlagene Transaktionen bilden eine zweite Ebene. Beim Auslesen des error-Feldes in den Metadaten jeder Transaktion fand Coindoo heraus, dass 844 der 1.701 Transaktionen im ersten Alpenglow-Block auf einen Ausführungsfehler stießen, während 857 erfolgreich waren. Eine fehlgeschlagene Transaktion wird dennoch mit einer Gebühr belastet und bleibt im Block, hat jedoch keine Zahlung oder keinen Trade abgeschlossen. Die Deutung als Erfassungsänderung deckt nur die Vote-Ebene ab, daher benötigt selbst eine vote-freie Zählung einen Filter nach dem error-Feld, bevor sie tatsächlich abgeschlossene Arbeit beschreibt.
Auch erfolgreiche Transaktionen lassen sich nicht auf Personen abbilden. Ein automatisiertes Handelskonto kann Transaktionen in großer Zahl senden, und eine einzelne Transaktion kann mehrere Anweisungen enthalten. Zu zählen, was Transaktionen tatsächlich bewirkt haben, etwa abgeschlossene Swaps oder Token-Transfers, kommt der realen Nutzung näher als jede rohe Transaktionssumme.
Wo die Vergleichsdaten liegen
Solanas Methode getRecentPerformanceSamples meldet für jede Stichprobe die Gesamtzahl der Transaktionen, die Zahl der Nicht-Vote-Transaktionen und die Länge der Stichprobe in Sekunden. Division einer Zählung durch die Länge ergibt eine Durchschnittsrate für dieses Zeitfenster.
Die Methode liefert höchstens 720 Stichproben von jeweils etwa einer Minute, grob die letzten 12 Stunden Eine Abfrage, die mehr als einen halben Tag nach der Übergabe gestellt wird, reicht nicht mehr bis zu TowerBFT zurück, sodass die Seite vor dem Upgrade aus früher gespeicherten Stichproben oder aus historischen Blöcken stammen muss.
Drei Filter, die vor und nach der Umstellung identisch angewendet werden, machen den Vergleich aussagekräftig:
- Validatoren-Votes entfernen. Alpenglow tut dies auf der neuen Seite; die alte Seite muss es von Hand erfolgen.
- Fehlgeschlagene Transaktionen anhand des error-Feldes jeder Transaktion entfernen. Die Nicht-Vote-Zählung der API schließt sie weiterhin ein.
- Gleiche Zeitfenster vergleichen: Ein-Minuten-Durchschnitte mit Ein-Minuten-Durchschnitten, niemals ein Dashboard-Maximum gegen eine Tagesumme.
Tools, die Votes auslesen, müssen umgebaut werden
Vote-Transaktionen taten mehr, als nur die TPS zu erhöhen. Monitoring-Tools lesen Vote-Programm-Anweisungen aus der Transaktionsliste, um zu verfolgen, welche Validatoren teilnahmen. Unter Alpenglow entfällt diese Eingabe, und die Foundation verweist diese Tools auf die Voting-Zertifikate in den Block-Footern. Ein Tracker, der noch die alte Quelle ausliest, würde Validatoren verstummen lassen, während sie weiter abstimmen.
Für Solanas Nutzungszahlen kommt die aussagekräftige Zahl an, sobald mehrere Tage erfolgreicher Nicht-Vote-Transaktionen gegen gespeicherte Daten von vor dem Upgrade für dieselben Stunden gestellt werden können. Bis dahin mischt jedes TPS-Chart, das den 21. Oktober umspannt, die Änderung der Buchhaltung mit realen Änderungen der Nutzung.
Quelle: Coindoo