In letzter Zeit fällt immer deutlicher auf, dass Besitzer eines Smartphones mit Windows 10 Mobile (W10M), Probleme haben ihr Telefon auf den aktuellen Versionsstand zu bringen. Der Eine erhält eine Aktualisierung sofort, andere warten hingegen vergeblich auf das aktuelle Update.
Das Insider Programm trägt seinen Teil zur Verwirrung bei. Während diese Betatester eigentlich einen Versionsvorsprung gegenüber der offiziellen Software haben müssten, hatten „Normalos“ bis vor kurzem eine aktuellere Firmware auf ihren Geräten. Nur durch erhebliche Umstände (Hard Reset) konnten Betroffene Insider das Problem beheben. Für die Benutzer scheint diese undurchsichtige Updateverteilung ein rein willkürliches Spiel eines Großkonzernes zu sein.
Was könnte die Ursache für diese Softwarefragmentierung sein?
Während einer Keynote vor nicht allzu langer Zeit sagte selbst Apple, dass niemand Produktivität besser verstünde als Microsoft. Nehmen wir diese Aussage mal für bare Münze. Ein Teilaspekt von „Produktivität“ ist die Schonung von Ressourcen. Also mit dem Wenigen das man hat, das Bestmögliche zu erreichen. Wie also schafft es Microsoft möglichst an alle Geräte Updates und Firmware auszuliefern und das mit dem geringstmöglichen Ressourcenaufwand? Oder anders gesagt, ein gutes Preis-Leistungs-Verhältnis ihrer Server zu erzielen? Und das sogar so effizient, dass selbst die Konkurrenz den Hut zieht?
Methode 1: Serversysteme möglichst gleichmäßig auslasten
Microsoft hätte die Möglichkeit ein riesiges Rechenzentrum nur für die Updateverteilung zu verwenden. Auf ein Startsignal werden sofort alle Geräte mit Updates versorgt. Aus Sicht der Benutzer ist dies äußerst angenehm. Man liest in den Medien von einem Update am Tag X oder das Endgerät selbst gibt eine Ankündigung dafür aus. Das Update ist hierdurch für den Benutzer für besagten Tag X planbar.
Leider ist diese Methode jedoch alles andere als Ressourcenschonend. Im ungünstigsten Fall wartet das Rechenzentrum nach der Verteilung des aktuellen Updates, auf die Auslieferung der nächsten Aktualisierung. Dies nennt sich „Leerlauf“. Leerläufe sind äußerst ungünstig, da die Fixkosten, sprich die Gebäudemiete, Personalkosten, etc., weiter bezahlt werden müssen, man dafür aber nichts zurückbekommt.
Ressourcenschonender ist also ein kleines Rechenzentrum. Hier können Updates nicht alle auf einmal ausgeliefert werden (dafür fehlen die Kapazitäten). Ein kontinuierlicher Strom an Paketen über einen längeren Zeitraum ist aber möglich.
Methode 2: Direktverteilung von Endgerät zu Endgerät
In der Vergangenheit, wurden Datenpakete für Apps und Updates immer direkt von den Rechenzentren Microsofts geliefert. Mit Windows 10 wurde ein neues Verfahren eingeführt. Das sogenannte Peer-to-Peer-Prinzip oder kurz „P2P“.
Einigen wird dies noch aus alten Zeiten von Filesharing Programmen wie z.B. eDonkey2000 oder eMule bekannt sein. Datenpakete werden hierbei nicht mehr nur von Servern auf die Endgeräte bzw. „Clients“ geliefert, sondern können auch von anderen Endgeräten aus dem Netz bezogen werden.
Hat der Laptop mit Windows 10 der Familie in der Nachbarwohnung bereits ein Update erhalten, kann der eigene Desktoprechner mit Windows 10, einen Teil der Daten durch diesen beziehen. Wer dies nicht will, kann übrigens in den Einstellungen von Windows 10 unter „Update und Sicherheit“ die möglichen Bezugsquellen der Updates in den „erweiterten Optionen“ einschränken.
Der Erklärungstext dieser Funktion suggeriert, dass durch das Downloaden der nötigen Datenpakete aus alternativen Quellen, also auch von anderen Windows 10-PCs im Netz, der Prozess beschleunigt wird. Diese Aussage ist auch nicht falsch. Das Wohl des Kunden ist aber sicher nicht der einzige Grund für diese Praxis. Zeitgleich werden hierdurch auch die Server von Microsoft entlastet.
Die Internetverbindung und damit die Ressourcen anderer PC-Nutzer werden verwendet und nicht die der Rechenzentren. Die Kostenlast wird äußerst geschickt auf kleine, jedoch viele Schultern verteilt. Das muss man Microsoft neidlos zugestehen. Das ist einfach nur genial. Denn wer von uns Endkunden hat es denn wirklich gemerkt? In Zeiten in denen einzelne Megabytes, dank Daten-Flatrate, keine entscheidende Rolle mehr spielen?
Kontrollmechanismen und das Wellen-Modell
Kombiniert man Methode 1 und 2 – verhältnismäßig kleines Rechenzentrum und Gerät-zu-Gerätversorgung – erhält man eine sehr effiziente Servernutzung.
Um den ganzen Vorgang etwas kontrollierter ablaufen zu lassen und auch noch im Notfall einen STOP-Befehl ausführen zu können, lässt man jedes Gerät und auch die Server eine begrenzte Anzahl an Prozessen abarbeiten. Nachdem dieses Kontingent abgearbeitet ist, warten sie anschließend auf das nächste „OK“-Signal zur Weiterverteilung der Updatepakete. Exakt das entspricht aktuell dem „Wellen“-Modell, nach welchem Microsoft die Updates verteilt.
Zusammengefast verteilt Microsoft also von wenigen Servern in der ersten Welle die Updatepakete direkt an die Endgeräte. In der zweiten Welle versorgen anschließend die Server und die verfügbaren Endgeräte aus Welle 1 die nächsten Endgeräte. Dies wird auch in der dritten und allen weiteren Wellen fortgeführt. Spätestens ab der dritten Welle versorgen sich die Geräte größtenteils bereits selbst. Die Server von Microsoft spielen ab dann eine untergeordnete Rolle und geben hauptsächlich die Startsignale für die nächste Welle.
Was hat das Ganze nun mit den unterschiedlichen Softwareversionen auf den Lumia Smartphones zu tun?
Nach dem Leitprinzip „One Windows“ von Microsoft, besitzt Windows 10 Mobile die gleichen Kernstrukturen wie sein Desktopbruder. Da Windows 10 bereits P2P perfekt beherrscht, sollte die Implementierung in W10M der nächste logische Schritt sein. Tatsächlich könnte im mobilen Bereich seit Build 10586.29 genau die Freischaltung von P2P eine Erklärung für das diffuse Updateverhalten sein.
W10M ist zwar schon auf dem Markt, wirklich offiziell ist es allerdings noch nicht. Nachbesserungsbedarf ist zum Bedauern vieler User immer noch an zahlreichen Ecken und Enden zu entdecken. Kann es somit ausgeschlossen sein, dass sich Programmierfehler in den Kontrollmechanismen einer möglichen P2P-Funktion eingeschlichen haben?
Als Konsequenz wären Geräte im Umlauf, welche unkontrolliert Updatepakete an andere Endgeräte verteilen. Diese Geräte warten kein OK von Microsoft für die nächste Updatewelle ab und lassen sich demensprechend von außen nicht stoppen. Auch die Verteilung veralteter bzw. falscher Datenpakete ist prinzipiell nicht ausgeschlossen. Dies könnte bei dem Empfangsgerät einen Überlauf des Zwischenspeichers der Datenpakete nach sich ziehen. Im ungünstigsten Fall meldet das W10M-Gerät zurück, es hätte angeforderte Datenpakete versendet, obwohl das nicht stimmt. Das Empfängergerät würde auf das Datenpaket warten und bei 0% Prozessfortschritt hängen bleiben.
Wer fühlt sich dabei nicht an folgende Meldungen erinnert:
„Update bleibt bei 0% stehen“
„Update wird nicht angezeigt“
„geringer Speicherplatz“?
Microsoft hatte die Fehlermeldungen bestätigt, Build 10586.29 einstweilig zurückgezogen und die betroffenen Personen um Geduld gebeten. Wir berichteten darüber bereits in diesem Beitrag. Die Ursache jedoch wurde bis heute nicht genannt. Auch die nachfolgende Build 10586.36 brachte scheinbar keine Besserung.
Könnte es möglich sein, dass dem weltweit größten Softwarehersteller vorübergehend die Kontrolle über die eigene Updateroutine entglitten ist?
Ich bin gespannt, ob sich das Szenario in der neuen Build 10586.63 genauso wiederholen wird. Hoffentlich kann Microsoft bis zum großen Release von W10M die Probleme beseitigen und uns mehr Einsicht darüber gewähren, ob P2P Verteilung auf Windows 10 Mobile bereits angewendet wird.
Was denkt ihr über diese Theorie? Seht Ihr in der Datenverteilung von Endgerät zu Endgerät Risiken? Schreibt Eure Meinung in die Comments.
Dies ist ein Meinungsbeitrag. Die Meinung des Autors spiegelt nicht notwendigerweise die Meinung von WindowsUnited oder anderer Mitarbeiter wieder.
Alles sehr interessant, aber der Grund für die fehlenden Updates für manche Lumia dürfte woanders liegen. Es ist mir zumindest nicht plausibel wieso ein Telefon, wenn es nach Updates sucht, direkt eine P2P-Verbindung benutzt – ich habe es so verstanden, dass einige Telefone dies tun sollen. Logisch wäre es doch, das Telefon nimmt Kontakt zum Update-Server auf, dieser checkt und stellt fest Update (kein Update). Im ersteren Fall wird dann versucht eine Verbindung aufzubauen (egal ob jetzt direkt zum Server oder P2P). Entweder waren also die Server von Microsoft defekt (unwahrscheinlich) oder die hinterlegte Serveradresse falsch – dafür spricht, dass… Weiterlesen »
Macht schon Stress das Äquivalent einer Apple-Wochen-Produktion in einer Welle mit Updates zu versorgen.?
Dank Windows für Desktop wissen wir alle doch was die MS Server leisten können. Mobile ist schlicht und ergreifend noch nicht fertig. Ein bisschen fertig für die neuen Geräte vielleicht. Aber nicht für Bestandsgeräte, auch wenn die Insider-builds was anderes suggerieren. Nicht mehr und weniger.
Das Zurücksetzen war bei mir nur wegen des Firmware-Updates bzw. vor der Insider-Build 10.586.63 wegen eines permanenten Abstürzens der Kalender-App bei meinem 950 XL nötig… allerdings zum Glück ? nur über die interne Funktion, nicht das Recovery-Tool, welches ich noch nie brauchte! Datensicherung zurückspielen von Onedrive u. alle Apps aktualisieren via WLAN u. alles gelang! Das Firmware-Update erforderte zudem das Verlassen des Insider-Programms… für 10.586.36 u. 10.586.63 als Insider-Builds war ein Wiedereintritt notwendig… Bin gern dabei! Nun ohne jegliche Bugs, Abstürze, Reboots o.ä. glücklich u. störungsfrei sowie rasend schnell unterwegs! Danke Microsoft! Weiter so… auch hinsichtlich des Aussperrens der Provider…… Weiterlesen »