Vorhersagbarkeit ist die versteckte Dimension der Netzwerkleistung
Leute, die sich mit dem Underlay-Netzwerk beschäftigen, sprechen gerne über TPS, Latenz und Bandbreite. Diese Kennzahlen sind natürlich wichtig, aber sie beantworten nur eine Frage: Wie schnell kann es laufen? — selten jedoch die zweite, viel entscheidendere: Läuft es dabei stabil?
Der Kadcast-Protocol von Dusk hat mich daran erinnert. Es geht nicht den üblichen Weg der zufälligen Gerüchte-Weiterleitung, sondern nutzt ein strukturiertes Overlay-Netzwerk, um die Übertragungspfade festzulegen. Das Ergebnis ist nicht nur beim einen Mal schneller, sondern bei jedem Lauf ungefähr gleich schnell. Die Latenz wird von einer Wahrscheinlichkeitsverteilung zu einem nahezu konstanten Wert.
Dieser Unterschied wirkt sich nach oben hin massiv aus. Unvorhersagbares Netzwerk bedeutet für Entwickler: Ich bin vielleicht nicht zuverlässig — du musst selbst damit klarkommen. Also kommen Timeouts, Retries, exponentielles Backoff, Fallback-Caches … all die Komplexität, die eigentlich zum Underlay gehören sollte, wird auf die Anwendungsebene verschoben. Noch schlimmer: Diese Codes sind oft genau die Teile, die am schwersten zu testen sind und in denen am ehesten Bugs entstehen.
Deshalb definiere ich Leistung inzwischen lieber so: Ein gutes Netzwerk zwingt Entwickler nicht dazu, schneller zu programmieren — sondern lässt sie deutlich weniger Code schreiben, der eigentlich gar nicht existieren dürfte.
Das ist in Finanzszenarien besonders folgenschwer. In Handelssystemen ist nicht die Maschine am teuersten, sondern die kognitive Belastung — wenn dein Verstand damit beschäftigt ist, ob das; Netzwerk ins Wanken gerät, kannst du dich nicht auf die wirklich wertschöpfenden Bereiche konzentrieren: Matching-Logik, Risiko-Strategien usw. Der größte Nutzen der Vorhersagbarkeit besteht darin, dass Entwickler Annahmen aus dem Code herausstreichen können.
Die beste Infrastruktur ist die, an die man nach dem Deployment kaum noch denkt — weil sie dann fast wie von selbst im Hintergrund weiterläuft.
@Dusk #dusk $DUSK
Leute, die sich mit dem Underlay-Netzwerk beschäftigen, sprechen gerne über TPS, Latenz und Bandbreite. Diese Kennzahlen sind natürlich wichtig, aber sie beantworten nur eine Frage: Wie schnell kann es laufen? — selten jedoch die zweite, viel entscheidendere: Läuft es dabei stabil?
Der Kadcast-Protocol von Dusk hat mich daran erinnert. Es geht nicht den üblichen Weg der zufälligen Gerüchte-Weiterleitung, sondern nutzt ein strukturiertes Overlay-Netzwerk, um die Übertragungspfade festzulegen. Das Ergebnis ist nicht nur beim einen Mal schneller, sondern bei jedem Lauf ungefähr gleich schnell. Die Latenz wird von einer Wahrscheinlichkeitsverteilung zu einem nahezu konstanten Wert.
Dieser Unterschied wirkt sich nach oben hin massiv aus. Unvorhersagbares Netzwerk bedeutet für Entwickler: Ich bin vielleicht nicht zuverlässig — du musst selbst damit klarkommen. Also kommen Timeouts, Retries, exponentielles Backoff, Fallback-Caches … all die Komplexität, die eigentlich zum Underlay gehören sollte, wird auf die Anwendungsebene verschoben. Noch schlimmer: Diese Codes sind oft genau die Teile, die am schwersten zu testen sind und in denen am ehesten Bugs entstehen.
Deshalb definiere ich Leistung inzwischen lieber so: Ein gutes Netzwerk zwingt Entwickler nicht dazu, schneller zu programmieren — sondern lässt sie deutlich weniger Code schreiben, der eigentlich gar nicht existieren dürfte.
Das ist in Finanzszenarien besonders folgenschwer. In Handelssystemen ist nicht die Maschine am teuersten, sondern die kognitive Belastung — wenn dein Verstand damit beschäftigt ist, ob das; Netzwerk ins Wanken gerät, kannst du dich nicht auf die wirklich wertschöpfenden Bereiche konzentrieren: Matching-Logik, Risiko-Strategien usw. Der größte Nutzen der Vorhersagbarkeit besteht darin, dass Entwickler Annahmen aus dem Code herausstreichen können.
Die beste Infrastruktur ist die, an die man nach dem Deployment kaum noch denkt — weil sie dann fast wie von selbst im Hintergrund weiterläuft.
@Dusk #dusk $DUSK