SCOPE: Stateful Serverless in the Edge-to-Cloud Continuum
Dieses Paper stellt SCOPE vor, ein zustandsbehaftetes FaaS-Programmiermodell und eine Ausführungsplattform für das Edge-to-Cloud-Kontinuum, das ein dynamisches Sitzungsmanagement nutzt, um die Balance zwischen latenzarmer Nähe und Ressourcenverfügbarkeit zu halten und dadurch die zustandslosen Einschränkungen aktueller serverloser Edge-Lösungen zu überwinden.
Originalarbeit lizenziert unter CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich eine Welt vor, in der Ihr digitales Leben – Ihre Fotos, Ihre Gesundheitsdaten, Ihre Smart-Home-Steuerungen – in einem riesigen, fernen Lagerhaus existiert. Jahrzehntelang war dies das Standardmodell des Computings: Ihr Telefon oder Sensor sendet eine Anfrage über den Ozean an ein massives Rechenzentrum, welches die Informationen verarbeitet und sie zurücksendet. Das funktioniert für viele Dinge gut, erzeugt aber eine Verzögerung, einen Lag, der mit zunehmender Entfernung wächst. In einer Ära von Videotelefonaten in Echtzeit, autonomen Fahrzeugen und medizinischer Echtzeitüberwachung wird diese Verzögerung zu einem Problem. Um dies zu lösen, haben Ingenieure das „Edge Computing“ entwickelt – eine Strategie, die die Rechenleistung näher dorthin verlagert, wo sich Menschen tatsächlich aufhalten, indem kleine Server in Nachbarschaften, Fabriken und Funkmasten platziert werden. Dies bringt das Lagerhaus direkt vor Ihre Haustür und verspricht Geschwindigkeit und Effizienz.
Es ist jedoch eine neue Komplikation aufgetaucht. Die populärste Art, Software für diese modernen Systeme zu entwickeln, nennt sich „Serverless Computing“. In diesem Modell schreiben Entwickler kleine, unabhängige Code-Stücke, die nur bei Bedarf ausgeführt werden, wie eine Flotte von Lieferdrohnen, die erst erscheinen, wenn ein Paket bereit ist. Das Schöne an diesem System ist, dass die Infrastruktur die gesamte schwere Arbeit übernimmt, also die Frage, wohin und wann diese Drohnen fliegen. Aber es gibt einen Haken: Diese Drohnen sind darauf ausgelegt, zustandslos (stateless) zu sein, was bedeutet, dass sie kein Gedächtnis an das haben, was zuvor geschah. Wenn eine Drohne ein Paket abliefert, vergisst sie sofort den Namen und die Adresse des Kunden. Für einfache Aufgaben ist das in Ordnung. Aber für komplexe Anwendungen, die den Fortschritt eines Nutzers, dessen Vorlieben oder die Krankengeschichte speichern müssen, ist dieser Mangel an Gedächtnis eine Sackgasse. Die Herausforderung besteht also darin, die Geschwindigkeit des Edge mit der Einfachheit des Serverless Computings zu vereinen und diesen flüchtigen Programmen gleichzeitig die Fähigkeit zu geben, die Daten eines Nutzers sicher und effizient festzuhalten.
Dies ist das Problem, das ein Forscherteam des Politecnico di Milano mit einer neuen Plattform namens SCOPE lösen wollte. Ihr Ziel war es, ein System zu schaffen, das es diesen temporären Programmen ermöglicht, eine „Session“ zu tragen – einen digitalen Container, der die spezifischen Daten eines Nutzers enthält – und diesen Container automatisch zu bewegen, wenn sich der Nutzer bewegt oder sich das Netzwerk verändert. Die Forscher wollten wissen, ob sie ein System bauen können, das die Daten nah beim Nutzer hält, um Geschwindigkeit zu gewährleisten, aber auch weiß, wann es diese Daten auf eine leistungsstärkere Maschine verschieben muss, falls die lokale Maschine überlastet ist. Sie schlugen nicht nur eine Theorie vor; sie bauten einen funktionierenden Prototyp und testeten ihn in einer simulierten Umgebung, die den realen Kampf zwischen einem lokalen Edge-Server und einem fernen Cloud-Rechenzentrum nachahmte.
Der Kern ihrer Lösung ist ein Konzept, das sie eine „Session“ nennen. Betrachten Sie eine Session als einen persönlichen Spind, der einem bestimmten Nutzer gehört. Im SCOPE-System wird, wenn ein Nutzer mit einer Anwendung interagiert, ein Spind für ihn erstellt. Dieser Spind kann von verschiedenen Programmen nach Bedarf geöffnet und geschlossen werden, aber der Spind selbst bleibt intakt. Die Innovation liegt darin, wie das System diese Spinde verwaltet. Die Plattform überwacht ständig die Gesundheit des Netzwerks. Wenn ein lokaler Edge-Server zu viele Anfragen bearbeitet und anfängt, langsamer zu werden, kann das System den Spind des Nutzers geräuschlos auf einen anderen, geräumigeren Server in der Nähe oder sogar auf ein entferntes Cloud-Rechenzentrum verschieben, falls erforderlich. Entscheidend ist, dass der Nutzer davon nichts mitbekommt. Er arbeitet einfach weiter, und das System stellt sicher, dass seine Daten zur richtigen Zeit an den richtigen Ort folgen.
Um dies zu testen, richteten die Forscher ein virtuelles Netzwerk mit drei verschiedenen Standorten ein: ein Client-Gerät, das einen Nutzer repräsentiert, ein lokaler Edge-Server und ein weit entfernter Cloud-Server, der eine transatlantische Verbindung simuliert. Sie erstellten verschiedene Arten von Aufgaben, um das System unter Belastung zu prüfen. Eine Aufgabe beinhaltete das Hoch- und Herunterladen großer Videodateien, was einen massiven Datentransfer erfordert. Eine andere beinhaltete die Umwandlung von Sprache in Text, eine Aufgabe, die intensive Rechenleistung verlangt. Sie erstellten auch einfache, leichte Aufgaben, um die Basisfrequenz des Systems zu messen. Das Ziel war zu sehen, wie sich das System verhält, wenn der lokale Edge-Server überlastet wird.
Die Ergebnisse waren aufschlussreich. Als die Forscher den lokalen Edge-Server mit Anfragen überfluteten, begann die Reaktionszeit des Systems zu sinken, genau wie man es erwarten würde. Doch als sie die SCOPE-Plattform aktivierten, erkannte das System die Überlastung und begann, den Datenverkehr umzuleiten. Es stürzte nicht einfach ab oder wurde langsamer; es verlagerte die Arbeitslast intelligent. Für neue Anfragen leitete es diese sofort an den fernen Cloud-Server um, um zu verhindern, dass der lokale Server verstopft. Für bestehende Sessions, die bereits liefen, führte das System eine sorgfältige Migration durch. Es verschob die Datensession des Nutzers vom überfüllten lokalen Server zum geräumigeren Cloud-Server. Dieser Prozess nahm Zeit in Anspruch – etwa 1,5 Sekunden für eine 2-Megabyte-Session – aber sobald der Umzug abgeschlossen war, sank die Reaktionszeit für diesen Nutzer drastisch. Das System hatte erfolgreich eine kurze Pause gegen einen dauerhaften Geschwindigkeitsgewinn eingetauscht.
Die Forscher testeten auch, wie das System mit der Bewegung eines Nutzers umgeht. Sie simulierten einen Client, der seinen physischen Standort ändert, was in einem realen Szenario bedeuten würde, dass er von einer Nachbarschaft in eine andere zieht. Während sich der Client bewegte, berechnete das System den besten Ort für die Speicherung seiner Daten neu. Sie fanden heraus, dass das System in der Lage war, die Session erfolgreich zu einem neuen, näher gelegenen Knoten zu migrieren, wodurch die Daten nah beim Nutzer gehalten wurden. Dabei merkten sie jedoch eine Einschränkung an: In sehr kleinen Netzwerken mit wenigen Knoten hatte das System manchmal Schwierigkeiten, den absolut besten Standort zu finden, sobald eine Session verschoben worden war, da die Knoten nur begrenztes Wissen über das gesamte Netzwerk besaßen. Aber als das Netzwerk größer und komplexer wurde, wurde das System wesentlich effektiver darin, die Daten nah beim Nutzer zu halten, selbst wenn die Ressourcen schwankten.
Die Studie untersuchte auch die Kosten der Datenbewegung. Die Forscher fanden heraus, dass die Zeit für die Migration einer Session direkt mit der Größe der Daten zusammenhing. Das Verschieben einer leeren Session dauerte etwa 270 Millisekunden, während das Verschieben einer 5-Megabyte-Session etwa 2 Sekunden dauerte. Dies bestätigte, dass die Netzwerkbandbreite der primäre Engpass war, nicht die Software selbst. Das System war effizient genug, dass die kurze Unterbrechung beim Verschieben einer Session ein kleiner Preis für die signifikante Leistungssteigerung war, die darauf folgte. In einem Test reduzierte das Verschieben einer Session von einem fernen Cloud-Server zu einem lokalen Edge-Server die Reaktionszeit von 126 Millisekunden auf nur 21 Millisekunden.
Was diese Arbeit bedeutend macht, ist, dass sie eine Lücke schließt, die im Fachbereich lange existierte. Frühere Systeme boten entweder die Geschwindigkeit des Edge, konnten aber keine komplexen, speicherabhängigen Anwendungen handhaben, oder sie boten Speicherplatz, erforderten aber, dass Entwickler die komplexe Logistik der Datenbewegung selbst verwalten mussten. SCOPE automatisiert diesen gesamten Prozess. Es ermöglicht Entwicklern, einfachen Code zu schreiben, ohne sich darum kümmern zu müssen, wo die Daten liegen, während die Plattform die komplexen Entscheidungen darüber trifft, wo die Daten basierend auf Echtzeitbedingungen gespeichert und verschoben werden sollen. Die Forscher demonstrierten, dass dieser Ansatz in einer heterogenen Umgebung funktioniert, in der verschiedene Arten von Maschinen mit unterschiedlichen Fähigkeiten zusammenarbeiten.
Die Ergebnisse des Teams legen nahe, dass dieses Modell für den realen Einsatz rentabel ist. Sie zeigten, dass das System auf plötzliche Spitzen im Datenverkehr reagieren kann, was einen Zusammenbruch des gesamten Netzwerks verhindert. Sie zeigten auch, dass es auf die physische Bewegung von Nutzern reagieren kann, um deren Daten in ihrer Nähe zu halten. Obwohl das System nicht perfekt ist – es erfordert immer noch eine kurze Pause, um Daten zu verschieben, und es basiert auf einer hierarchischen Netzwerkstruktur, die in sehr kleinen Setups möglicherweise feinjustiert werden muss – stellt es einen großen Schritt nach vorn dar. Die Forscher kamen zu dem Schluss, dass, indem sie Daten als mobile Session statt als statische Datei behandeln, sie eine Computing-Umgebung schaffen können, die sowohl schnell als auch intelligent ist.
Am Ende präsentiert die Arbeit eine Vision einer digitalen Welt, die flüssiger und reaktionsschneller ist. Es ist ein System, in dem die Infrastruktur kein starres Gitter aus festen Servern ist, sondern eine dynamische Landschaft, die sich den Bedürfnissen der Nutzer anpasst. Die Forscher behaupteten nicht, alle Probleme des Edge Computings gelöst zu haben, aber sie haben ein konkretes, funktionierendes Beispiel dafür geliefert, wie man Serverless Computing wirklich zustandsbehaftet (stateful) machen kann. Ihre Arbeit legt nahe, dass die Zukunft des Computings nicht in der Wahl zwischen der Geschwindigkeit des Edge und der Leistung der Cloud liegt, sondern im Aufbau eines nahtlosen Kontinuums, in dem beide zusammenarbeiten und Daten sowie Rechenleistung genau dorthin bewegen, wo sie gebraucht werden – genau dann, wenn sie gebraucht werden.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.