28,83% van alle gestakete
SOL verdween woensdag tijdelijk uit het consensusproces. Nog enkele procentpunten en
Solana had geen nieuwe transacties meer definitief kunnen maken.
De oorzaak zat niet in
Solana-code. Een routingfout bij Teraswitch raakte tientallen validators tegelijk en legde bloot hoeveel stake via dezelfde netwerkprovider loopt.
28,83% van de stake valt tegelijk weg
Stakingprotocol Marinade Finance sloeg na het incident alarm.
Volgens zijn
analyse werd 28,83% van alle gestakete SOL delinquent. Dat betekent dat de betrokken validators tijdelijk niet meer correct deelnamen aan het stemproces.
Solana's huidige TowerBFT-model heeft meer dan twee derde van de stake nodig om consensus te bevestigen. De Solana Foundation bevestigt die supermajority-eis zelf in zijn documentatie.
Daaruit volgt de pijnlijke spiegel: zodra meer dan ongeveer een derde van de stake wegvalt, kan het netwerk geen nieuwe blocks meer finaliseren.
Finaliteit betekent dat een transactie definitief is en niet meer kan worden teruggedraaid door een andere geldige keten.
Marinade becijferde dat Solana tijdens de storing ongeveer 86% van de weg naar die grens had afgelegd. Er zat nog ongeveer 20 miljoen SOL tussen de piek en het verlies van finaliteit.
Blocks bleven gewoon komen
Belangrijk: Solana ging niet offline.
Jacob Creech, vicepresident technologie bij de Solana Foundation, schreef na afloop dat blocks geproduceerd bleven worden en transacties bleven binnenkomen. Volgens hem stemden 597 van de 699 gestakete validators tijdens het incident door.
Dat verschil is groot.
Een blockchain kan nog blocks produceren terwijl onvoldoende stake beschikbaar is om die blocks definitief te maken. Het gevaar zat woensdag dus niet primair bij blockproductie, maar bij de consensusstemmen die daarachter komen.
Solana bleef draaien. De veiligheidsmarge waarmee transacties definitief worden, werd alleen plotseling veel kleiner.
Voor gebruikers bleef het probleem daardoor grotendeels onzichtbaar.
Ongeveer 90 validators geraakt
Marinade koppelde ongeveer 90 validators aan de storing. Samen misten zij naar schatting 333 SOL aan
staking-beloningen.
Creech komt vanuit een andere meetmethode uit op 102 validators die tijdelijk stopten met stemmen. Dat verschil betekent niet automatisch dat alle 102 door dezelfde fout bij Teraswitch werden getroffen.
De stake weegt hier zwaarder dan het aantal validators.
Honderd kleine validators kunnen minder invloed op consensus hebben dan enkele tientallen partijen waaraan enorme hoeveelheden SOL zijn gedelegeerd.
Precies daarom is die 28,83% veel belangrijker dan alleen het aantal machines dat uitviel.
Foute route uit Miami bereikt Amsterdam
Teraswitch bevestigde zelf een storing waarbij twaalf locaties hun verbinding met internetbestemmingen en delen van het eigen netwerk verloren.
Het ging om locaties in Londen, Amsterdam, Dublin, Frankfurt, Singapore en Tokio. Andere Noord-Amerikaanse locaties werden niet op dezelfde manier geraakt.
De fout begon rond een standaardroute die via de locatie in Miami werd verspreid.
Die route verloor eigenschappen die routers normaal gebruiken om te bepalen hoe zij verkeer moeten behandelen. Via een route reflector in Amsterdam belandde hij vervolgens bij Europese en Aziatische locaties.
Teraswitch identificeerde het probleem binnen ongeveer tien minuten.
Voor meerdere Solana-validators duurde de uitval langer. Marinade zag een verstoring van ongeveer 33 minuten voordat een groot deel weer deelnam.
Eén netwerk droeg meer dan een kwart van de stake
Hier wordt het verhaal ongemakkelijker.
Marinade berekende dat autonomous system AS20326 ongeveer 118,89 miljoen SOL droeg. Dat was 27,34% van alle gestakete SOL. Tijdens de storing viel ongeveer 94% daarvan tegelijkertijd weg.
Een autonomous system, of ASN, is simpel gezegd een verzameling internetverbindingen die onder één netwerkbeheer vallen.
Dat één ASN meer dan een kwart van de gestakete SOL droeg, laat zien waarom validatoraantallen maar een deel van decentralisatie meten.
Duizenden afzonderlijke machines helpen weinig wanneer grote groepen dezelfde verbinding, datacenterpartij of andere gedeelde schakel gebruiken.
Dat risico geldt net zo goed voor andere proof-of-stake-
blockchains.
Back-upverbindingen stelden teleur
De storing liet nog een tweede zwakke plek zien.
Marinade onderzocht 74 getroffen validators waarvan het herstel goed kon worden gevolgd. Slechts drie leken via hun eigen redundante opzet netjes terug te komen.
59 validators met gezamenlijk ongeveer 80,2 miljoen SOL kwamen in een smal tijdsvenster terug nadat de routing zich had hersteld.
Dat wijst erop dat veel partijen niet automatisch naar een onafhankelijke verbinding overschakelden.
Ook Helius, een van de grootste validators op het netwerk, bleef volgens de analyse ongeveer 33 minuten offline.
Een reserveverbinding op papier helpt weinig wanneer die bij dezelfde storing niet overneemt.
Amsterdam krijgt hier wél een directe rol
De Benelux-haak is bij dit incident niet gezocht.
Amsterdam zat letterlijk in het pad waarlangs de verkeerde route verder werd verspreid. Daarnaast werden drie Teraswitch-locaties in Amsterdam geraakt.
Dat betekent niet dat Nederland verantwoordelijk was voor het probleem. Het toont wel hoe internationaal de technische laag onder een openbaar netwerk is.
Een validator kan door een partij elders worden beheerd, SOL van gebruikers uit tientallen landen dragen en uiteindelijk afhankelijk zijn van verbindingen door Amsterdam, Frankfurt of Singapore.
De
Solana-stake is digitaal. De machines en netwerkpaden erachter zijn dat een stuk minder.
Solana hield stand, maar kreeg een gratis stresstest
De Solana Foundation bekijkt het incident duidelijk van de andere kant.
Creech wijst erop dat het mainnet operationeel bleef en dat de getroffen validators binnen ongeveer 40 minuten herstelden. Voor hem toont dit juist dat spreiding over verschillende providers werkte.
Daar zit waarheid in.
28,83% van de stake kon verdwijnen zonder dat Solana stopte met blocks produceren. Dat is veel beter dan een volledige netwerkuitval.
Maar Marinade legt tegelijk een zwakte bloot die daarmee niet verdwijnt: één autonomous system droeg 27,34% van de totale stake.
Die twee conclusies kunnen naast elkaar bestaan.
Solana overleefde de storing. Eén fout bij een netwerkprovider kwam alleen wel tot op 4,51 procentpunt van de grens waarbij finaliteit niet meer mogelijk was.
De blockchain deed woensdag precies wat zijn ontwerp toeliet. De vraag is nu hoeveel validators hun verbindingen aanpassen voordat dezelfde test met nét iets meer gestakete SOL wordt herhaald.