2. Virtualisierung
Die Technik der Virtualisierung (vgl. bereits oben), worunter in der Informatik üblicherweise die Abbildung logischer Ressourcen auf physische Ressourcen (= Hardware) verstanden wird,114 spielt für das Cloud Computing eine zentrale Rolle.115 Durch die Implementation von Virtualisierungstechnologien wird mittels einer zusätzlich geschaffenen (logischen) Ebene zwischen Software- und Hardwareumgebung eine Abstraktion von der tatsächlich physisch vorhandenen Hardware bewirkt, wobei dem Benutzer der Unterschied zwischen logischen und physischen Ressourcen idealerweise verborgen bleibt.116 Dieses Instrument ermöglicht es, dass unterschiedliche Benutzer gleichzeitig und unabhängig voneinander auf dieselbe Hardware (z.B. Speicherplatz und/oder Rechenleistung) zugreifen und dabei verschiedene Programme ausführen können, ohne dass dabei die Sicherheit oder die Individualität der einzelnen Nutzer in Frage gestellt wird.117 Grundsätzlich kann zwischen Hardware- und Softwarevirtualisierung, innerhalb letzterer wiederum zwischen System- und Anwendungsvirtualisierung unterschieden werden.118
Durch Virtualisierung lassen sich deutliche Kostensenkungen bewirken, da die sog. Beschreibungsdatei, über die virtuelle Ressourcen erzeugt werden, wenn sie einmal fertiggestellt wurde, beliebig viele Ressourcen erzeugen kann, ohne dass physisch zusätzliche Hardware angeschafft werden muss.119 Nur durch die Nutzung solcher Verfahren ist es den Anbietern von Cloud Computing also möglich, einer Vielzahl von Nutzern die entsprechenden Leistungen zu vergleichsweise niedrigen Kosten anzubieten.
Generell gilt, dass Cloud Computing nicht auf völlig neuartigen Technologien beruht, sondern dass die entsprechenden Verfahren und Methoden in der Informationstechnologie bereits seit einiger Zeit existieren.120 Die größten Veränderungen, die durch die zunehmende Verbreitung von Cloud-Technologien bewirkt werden, spielen sich vielmehr in den Prozess- und Organisationsstrukturen der diese Technologie betrieblich nutzenden Unternehmen ab.121
100 Kurose/Ross, Computernetzwerke, S. 23. 101 BVerfGE 120, 274 (276). 102 Böckenförde, Ermittlung, S. 32. 103 Störing, Zugriffsmöglichkeiten, S. 12f. 104 Meininghaus, Zugriff, S. 7; Scherff, Computernetzwerke, S. 320f. 105 Kurose/Ross, Computernetzwerke, S. 26. 106 Metzger/Reitz u.a., Cloud Computing, S. 3; Meir-Huber, Cloud Computing, S. 13. 107 Metzger/Reitz u.a., Cloud Computing, S. 3, die Hochleistungsserver als das „Herz von Cloud Computing“ bezeichnen. 108 Schorer, in: Hilber, Handbuch, C/1, Rn. 37. 109 Schorer, in: Hilber, Handbuch, C/1, Rn. 37. 110 Metzger/Reitz u.a., Cloud Computing, S. 4 und 13; zu den Anforderungen an den verwendeten Browser näher Schorer, in: Hilber, Handbuch, C/1, Rn. 32ff. 111 Metzger/Reitz u.a., Cloud Computing, S. 4. 112 Schorer, in: Hilber, Handbuch, C/1, Rn. 91. 113 Schorer, in: Hilber, Handbuch, C/1, Rn. 35. 114 Vossen/Haselmann u.a., Cloud-Computing, S. 17. 115 Metzger/Reitz u.a., Cloud Computing, S. 15; Meir-Huber, Cloud Computing, S. 22; vgl. aber auch den Hinweis bei Schorer, in: Hilber, Handbuch, C/1, Rn. 13, dass die Verwendung von Virtualisierungstechniken allein es nicht rechtfertigt, von Cloud Computing zu sprechen, sofern nicht auch die weiteren charakteristischen Merkmale erfüllt sind; vertiefend zur Virtualisierung siehe Schorer, a.a.O., Rn. 40ff. 116 Vossen/Haselmann u.a., Cloud-Computing, S. 17f.; zur Verwendung sog. Hypervisoren in diesem Zusammenhang näher Schorer, in: Hilber, Handbuch, C/1, Rn. 40f. 117 Metzger/Reitz u.a., Cloud Computing, S. 3f. 118 Näher Meir-Huber, Cloud Computing, S. 23. 119 Schorer, in: Hilber, Handbuch, C/1, Rn. 42. 120 Schorer, in: Hilber, Handbuch, C/1, Rn. 29. 121 Schorer, in: Hilber, Handbuch, C/1, Rn. 29.
VI. Technische Einzelheiten
Im Folgenden Abschnitt sollen die technischen Anforderungen und Charakteristika von Cloud Computing-Systemen etwas näher dargestellt werden.
1. Anforderungen an Cloud-Systeme und charakteristische Merkmale
a) Transparenz
Eine wichtige Anforderung an Cloud-Systeme ist die Transparenz, wobei dieser Begriff im Hinblick auf seine heute oft gebräuchliche Verwendung eher kontraintuitiv ist. Gemeint ist, dass sämtliche Einzelheiten der technischen Abwicklung der Cloud, also z.B. die Verteilung der einzelnen Komponenten und Ressourcen, die Details der jeweils zugrunde liegenden Datenbanken oder die ablaufenden Programmroutinen dem Nutzer, der lediglich eine einheitliche Oberfläche wahrnimmt, verborgen bleiben (und insoweit gerade nicht im üblicherweise gebräuchlichen Sinne transparent sind!).122 Transparenz bedeutet in diesem Kontext also vielmehr Unsichtbarkeit.123 Damit in direktem Zusammenhang steht die automatisierte Administration von Cloud-Diensten, in deren Rahmen der Provider üblicherweise insbesondere die folgenden Leistungen „unsichtbar“ für den Nutzer erbringt: Software-Upgrades, Versionswechsel, Sicherheits-Patches, Service-Packs und sonstige Aspekte der Software-Wartung, Hardware-Wartung (z.B. Speichererweiterung oder Austausch fehlerhafter Festplatten).124 Im umgekehrten (herkömmlichen) Sinne transparent, nämlich für den Nutzer nachvollziehbar, soll dagegen die Messung des Verbrauchs stattfinden, für die Dashboards wie die AWS Management Console zum Einsatz kommen, welche eine Verwaltung von Rechen-, Speicher- und anderen Cloud-Ressourcen ermöglichen.125
b) Ausfallsicherheit und hohe Verfügbarkeit
Weitere zentrale Leistungsmerkmale von Cloud Computing-Systemen sind die Ausfallsicherheit sowie die hohe Verfügbarkeit. Das dahinter stehende Grundprinzip ist schlichte Redundanz, indem z.B. auf zusätzlicher Hardware identische Softwaresysteme ablaufen, so dass idealerweise bei Ausfall eines Systems das andere ohne Verzögerungen oder Datenverluste „einspringen“ kann.126 Man kann auch von „Replikation“ oder (engl.) „Mirroring“ sprechen, wenn dieselben Daten synchron an verschiedenen Orten bereitgehalten werden.127 Auf diese Weise können Cloud Computing-Provider häufig eine Verfügbarkeit von 99,9 % garantieren, die bei traditionellem