Current Page: | Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: mmserver » Learning Units » Unit ID: 050caching1 |
---|---|
Last Modified: | Tuesday, 2015-05-05 - 08:09:06 |
Tools: | Validate — Preview XML Preview HTML Preview PDF |
Alternative: | Printable HTML |
Title: | Caching: Überblick | ||
---|---|---|---|
Abstract: | Die Realisierung eines wirtschaftlich sinnvollen Multimedia-on-Demand Services basierend auf reiner True Multimedia-on-Demand Technologie scheitert an den immensen Kosten, die die exorbitant hohen Bandbreiten und benötigten Speicherkapazitäten verursachen würden. Mittels Caching Technologien ist es möglich, ein quasi Multimedia-on-Demand Service auch mittels ökonomisch vertretbaren Bandbreite- und Kapazitätswerten zu erzielen. In dieser Lerneinheit wird die Funktionsweise von Caching an Hand eines hierarchischen Netzwerkes beleuchtet. Dateien in tiefen Ebenen verbrauchen viel Speicherplatz aber nur wenig Bandbreite, Dateien in höheren Ebenen benötigen nur wenig Speicherplatz aber eine hohe Bandbreite pro Request. Strategien regeln mittels Caching fortwährend die Positionierung der Daten im Netzwerk, um so die Gesamtbelastung des Netzwerkes gering zu halten. | ||
Status: | content final - to do: siehe LU zipfsches Gesetz | Version: | 2005-10-10 |
History: | 2005-10-10
(Thomas Migl). Abstract hinzugefügt 2005-09-12 (Thomas Migl): Inhalt der PU "Caching: Optimierung Bandbreite/Speicherplatz" leicht abgeändert (LOD1+2+3) 2005-09-09 (Thomas Migl): Contentimport begonnen und abgeschlossen, LOD1 und LOD 3 fertiggestellt 2005-07-18 (Thomas Migl): LU angelegt |
Author 1: | Thomas Migl | E-Mail: | migl@ims.tuwien.ac.at |
---|---|---|---|
Author 2: | (empty) | E-Mail: | (empty) |
Author 3: | (empty) | E-Mail: | (empty) |
Author 4: | (empty) | E-Mail: | (empty) |
Author 5: | (empty) | E-Mail: | (empty) |
Organization: | Technische Universität Wien; Institut für Softwaretechnik und Interaktive Systeme; Arbeitsgruppe für Interaktive Multimediale Systeme; http://www.ims.tuwien.ac.at/ |
Einleitung/ Motivation1auto
2autoKunden sind über einen Breitbandanschluss an ein Multimedia-On-Demand Netzwerk angebunden: Sie können von zu Hause aus mittels Fernbedienung via Set Top Box oder PC zu jeder beliebigen Zeit Spielfilme, aktuelle Nachrichten, Hörspiele, Musikstücke etc bestellen und ohne Verzögerung gleich auch abspielen. Eine Realisierung dieser Vision basierend auf einer reinen True Multimedia-On-Demand Technologie ist von Vornherein zum Scheitern verurteilt: Zu hoch sind die Kosten der erforderlichen Netzwerkbandbreiten, zu teuer die benötigten Speichergeräte. Der Schlüssel für ein rentables True Multimedia-On-Demand Service ist Caching. Diese Lerneinheit bietet einen Überblick über das Thema und zeigt, wie mittels Caching ein quasi True Multimedia-On-Demand Service zu einem Preis geboten werden kann, von dem man annehmen kann, dass er von der zukünftigen Kundschaft allgemein akzeptiert werden wird. 3autoDie unterschiedlichen Video-on-Demand Servicetypen werden in der Lerneinheit Einführung und Grundlagen vorgestellt. Ideales Multimedia-On-Demand Netzwerkmodell1Idealfall True Multimedia-On-Demand
Fiktives Szenario landesweite True Multimedia-On-Demand Service in den USA
Kostenrentabilität eines Multimedia-On-Demand Netzwerkes
2Idealfall True Multimedia-On-DemandMan betrachte die drei On-Demand Services Pay-Per-View, Near Video-On-Demand und True Video-On-Demand (siehe dazu MM Server: Einführung und Grundlagen). Auf den ersten Blick ist das True Multimedia-On-Demand Service das ideale System. Jeder Benutzer kann zu beliebiger Zeit ein beliebiges Video (oder Audiodokument) anfordern, direkt nach Abschicken des Requests kann er dann auch schon das gewünschte Video oder Audio starten. Während der Wiedergabe werden VCR Befehle problemlos ausgeführt. True Multimedia-On-Demand hat nur einen entscheidenden Haken: Es benötigt als Infrastruktur ein Super-Netzwerk. Da für jeden Request ein eigener Datenstrom vom Netzwerk übertragen werden muss, ergeben sich exorbitant hohe Werte für die erforderliche Netzwerkbandbreite. Fiktives Szenario landesweite True Multimedia-On-Demand Service in den USAUm eine Relation für die in der Praxis benötigten Werte eines reinen True Multimedia-On-Demand Service zubekommen, ein fiktives Beispiel. Es soll ein landesweites Netzwerk aufgebaut werden, das alle Benutzer mit individuellen 20Mbps Datenströme (MPEG-2 für HDTV) gleichzeitig beliefern kann. In den Abendstunden muss man mit ca. 77 Millionen Requests rechnen. Daraus ergibt sich eine vom Netzwerk geforderte Gesamtbandbreite von 1.54 Tbps! True Multimedia-On-Demand Netzwerkmodell basierend auf zentralem SuperserverMan kann einen zentralen Superserver bauen, auf dem alle vom True Multimedia-On-Demand Service gebotenen Programme gespeichert sind. Jeder Kunde interagiert direkt mit dem zentralen Server. Das Netzwerk muss so ausgelegt sein, dass es dem hohen Bedarf an Bandbreite problemlos nachkommen kann. Ein Knackpunkt bei der Realisierung dieses Szenario ist weniger dessen technische Machbarkeit, viel mehr sind es die hohen und vor allem unrentablen Kosten, die der Aufbau und Betrieb eines solchen Supernetzwerkes verursachen würde. True Multimedia-On-Demand Netzwerkmodell basierend auf dezentrale SpeichergeräteAls Alternative zu einem zentralen Superserver kann man das Netzwerk dezentralisieren: Es werden viele Server miteinander verbunden, wobei auf jedem Server Kopien aller die vom True Multimedia-On-Demand Service gebotene Programme stehen. Jeder Kunde interagiert ausschließlich mit dem ihm geographisch am nächst gelegenen Server. Durch diesen Aufbau werden den Leitungen des Netzwerkes geringere und somit auch kostenrentable Bandbreiten abverlangt. Da von jedem Programm eine Vielzahl von Kopien vorhanden sein muss, hat dieses Modell einen enorm großen Bedarf an Speicherplätzen. Speicherplätze sind wie Netzwerkbandbreiten sehr teuer. So scheitert die Realisierung dieses Netzwerkmodells ebenfalls an den hohen Kosten. Kostenrentabilität eines Multimedia-On-Demand NetzwerkesUntersuchungen haben ergeben, dass 44% der Befragten bereit wären, für ein Multimedia-On-Demand Service auch zu bezahlen. Allerdings würden nur 14% davon einen höheren Preis als den für heutige Netzwerkdienste (Fernsehen, Breitbandinternet..) üblichen akzeptieren. Um ein rentables Multimedia-On-Demand Service bieten zu können, muss daher bereits bei der Konzipierung des Netzwerkmodells die Kostenfrage dementsprechend im Vordergrund stehen. Wie obiges Beispiel zeigt, muss es oberstes Ziel sein, benötigte Netzwerkbandbreite und Speicherplatzbedarf möglichst klein zu halten. 3autoErklärung der drei On-Demand Services Pay-Per-View, Near Video-On-Demand und True Video-On-Demand siehe MM Server: Einführung und Grundlagen) Hierarchisches Netzwerk1Architektur eines hierarchischen Multimedia-On-Demand-Netzwerkes
Mögliches hierarchisches Netzwerk Modell für zukünftige Multimedia-On-Demand Services
2Architektur eines hierarchischen Multimedia-On-Demand-NetzwerkesIn einem sind sich die Forscher der unterschiedlichsten Kommunikationsunternehmen schon heute einig, nämlich dass ein zukünftiges Multimedia-On-Demand Netzwerkmodell hierarchisch aufgebaut sein wird. Die Abbildung zeigt ein für die Zukunft mögliches Netzwerkmodell. In der Hierarchie an oberster Stelle steht ein Internationales Backbone Netzwerk. Über dieses sind die nationalen Backbone Netzwerke mit dem Multimedia-On-Demand Netzwerkmodell verbunden, die ihrerseits eine Verbindung zu den lokalen Backbone Netzwerken herstellen. Der einzelne Benutzer schließlich hat via Breitbandanschluss, wie er heute schon durch ADSL und Kabelfernsehen realisiert ist, Zugriff auf das Multimedia-On-Demand Netzwerk. In jeder Hierarchieebene sind Server integriert. Je höher die Ebene, desto höher sind die Ansprüche an die Server und desto notwendiger wird der Einsatz von Large Scale Storage Server.
Mögliches hierarchisches Netzwerk Modell für zukünftige Multimedia-On-Demand Services Caching: Optimierung Bandbreite/Speicherplatz1Aufgabe von Caching Strategien
Caching in einem hierarchischem Multimedia-On-Demand-Netzwerk
2Aufgabe von Caching StrategienZur Reduktion der benötigten Bandbreite und benötigtem Speicherbedarf können die in einem Multimedia-On-Demand Netzwerk zu erwarteten zeit- und ortsabhängigen Eigenschaften der Requests genützt werden. Ähnlich wie bei einem Telefonnetzwerk wird es auch in einem Multimedia-On-Demand Netzwerk Spitzenzeiten geben, an denen der Datentransfer überdurchschnittlich hoch ist. Auffallend dabei ist, dass sich in solchen Spitzenzeiten sehr viele Requests auf eine nur kleine Auswahl von unterschiedlichen Programmen beziehen (siehe dazu Lerneinheit Multimedia Server-Einführung und Grundlagen) . In Hinblick auf Schonung der Bandbreite ist es zweckmäßig, Kopien häufig gewünschter Programme auf verschiedene Server zu stellen, bezüglich optimale Nutzung vorhandener Speicherressourcen ist es notwendig, diese Kopien möglichst schnell wieder zu löschen. Definition: Caching StrategienEine Entscheidung zu treffen, welche Programme (bzw. Teile davon) wann und für wie lange in welchem Cache Speicher zu laden sind, ist Aufgabe der so genannten Caching Strategien. Sie haben zum Ziel, vorhandene Speicherressourcen unter Einhaltung vorgegebener maximaler Netzwerkbandbreiten für eine optimale Netzwerkperformance zu nutzen. Caching in einem hierarchischem NetzwerkHäufig gewünschte ProgrammeMan erspart sich viel an redundanten Datentransfer, wenn Programme mit hoher statistischer Aufrufwahrscheinlichkeit bereits im Vorhinein auf die Speicherressourcen (Memories oder Storage Speicher) der Neighborhood Server geladen werden. Diesen Vorgang bezeichnet man als Caching. Fordern die Kunden nun massenweise diese Programme an, werden sie von ihrem jeweiligen Neighborhood Server bedient, höhere Hierarchienebenen des Netzwerkes bleiben von diesen Requests unberührt. Diese Strategie bewirkt eine enorme Entlastung der Netzbandbreite, erfordert allerdings ein Mehr an Speicherplatz. Wichtig ist daher nun, dass Caching Strategien die Inhalte der Cache Speicher laufend aktualisieren: Sind die momentan in den Cache Speicher abgelegten Programme nicht mehr so gefragt, werden sie durch entsprechend andere Programme ersetzt. Selten gewünschte ProgrammeProgramme, die weniger angefordert werden, werden auf Speicherressourcen von Servern in entsprechend höheren Hierarchieebenen gestellt. Es wird weniger Speicherplatz gebraucht, dafür erfordert jeder Request eine zusätzliche Belastung des Netzwerkes. Da solche Programme eben statistisch selten angefordert werden, halten sich die zusätzlich erforderten Bandbreiten aber in kalkulierbaren Grenzen. Welche Programme in welcher Hierarchieebene gestellt werden, wird von der jeweiligen Caching Strategie entschieden. 3Aufgabe von Caching StrategienEine detaillierte Beschreibung der Aufgaben von Caching Strategien sind in der Lerneinheit Caching: Ziele und Charakterisierung nachzulesen.
Abrufen und Cachen von Programmen1Personal Service Agent (PSA)
PSA und Caching
Beispiel: Kostenoptimierung mittels Caching in einem Ballungsgebiet
Rechnungsbeispiel für Multimedia-On-Demand in einem Ballungsgebiet: a) zentraler Server b) Zentraler und Neighborhoodserver c) Speicherplatz/Netzwerk trade-off 2Personal Service Agent (PSA)Um den Prozess der Programmauswahl dem Kunden zu erleichtern, könnte sich in zukünftigen Multimedia-On-Demand Netzwerken ein jedem Client persönlich zugewiesener Personal Service Agent (PSA) sehr bewähren. Der PSA hätte zu allererst die Aufgabe, ein Profil seines Kunden zu erstellen, welches Auskunft über dessen Bestellverhalten gibt. Mit Hilfe dieses Profils such dann der PSA die geeigneten Contentprovider, durchforstet regelmäßig deren Multimedia Datenbanken nach geeignetem Material und erstellt eine dem Kundenprofil entsprechende Programmauswahlliste, die fortwährend aktualisiert wird. PSA und CachingZur Kosten und Ressourcen schonenden Nutzung des Netzwerkes kann nun der PSA die für seinen Kunden interessanten Programme schon im Vorhinein, und zwar zu Zeiten, wo das Netzwerk allgemein nur wenig belastet wird, auf entsprechenden Neighborhood Server cachen. Pferdefuß bei dieser Strategie sind allerdings die für den Kunden anfallenden hohen Speicherplatzkosten. Ein Ausweg aus dieser Misere besteht, indem sich die unterschiedlichen PSAs untereinander austauschen. Es wird untersucht, welche Kunden mit gleichen Programmen zu ähnlichen Zeiten beliefert werden sollen. Aus diesen Ergebnissen erarbeiten die betroffenen PSAs gemeinsam mit dem Contentprovider eine kostenoptimierte Programmübertragung. Dabei wird danach getrachtet, dass möglichst viele Kunden mittels möglichst wenigen zu übertragenden Datenströmen, die ihrerseits möglichst kurz auf nur wenig Speicherplatz gecacht werden, bedient werden. Beispiel: Kostenoptimierung mittels Caching in einem BallungsgebietVoraussetzungenFür dieses Beispiel nehmen wir Folgendes als gegeben an:
RechenbeispielEin Programm wird um 1 Uhr nachmittags erstellt und auf dem zentralen Server S1 gespeichert. User 1 will nun gleich um eins das Programm gesendet bekommen. Um 2 Uhr will User 2 das gleiche Programm empfangen und um 11 Uhr abends schließlich User 3. Die Abbildung zeigt nun vergleichsweise die anlaufenden Kosten für zwei Fälle, und zwar einmal ohne, einmal mit Caching. Zentrales Netzwerk ohne CachingAbbildung a: Alle User interagieren direkt mit dem zentralen Server. Das Programm muss dreimal vom Server gesendet werden, und zwar um 1 Uhr, 2 Uhr nachmittags und 11Uhr abends. Eine Übertragung des Programms beläuft sich auf 18$, also ergeben sich Gesamtkosten von 54$. Netzwerk mit Neighborhood Server als Caching StorageAbbildung b: Hier sind zwischen den Usern und zentralem Server Neighborhoodserver geschaltet. Diese sollten in der Praxis an strategisch wichtigen Punkten, wie großen Wohnanlagen, Bibliotheken von Universitäten etc platziert werden. Die Neighborhoodserver fungieren als temporäre Cachespeicher für Programme, die in dieser Gegend gerne angefordert werden, und vermeiden so, dass für jeden Request eine teure Übertragung vom zentralen Server notwendig ist. In unserem Beispiel sind hier zwei Neighborhoodserver eingezeichnet. Um ein Uhr wird von User 1 das Programm angefordert. Ihm wird es vom zentralen Server S1 geschickt, was Kosten von 18$ entspricht. Der Datenstrom wird nun gleichzeitig in einen der beiden Server gecacht. Fordern nun User 1 und User 2 das Programm an, werden sie vom Neighborhoodserver beliefert. Die Leitung zum Zentralserver wird durch die beiden Requests nicht mehr belastet. In unserem Rechenbeispiel sind alle User über den Server 3 mit dem Netzwerk verbunden, wir haben daher das Programm auf Server 3 gecacht, es fallen somit durch die Requests 2 und 3 keine zusätzlichen Kosten an. Die Gesamtkosten betragen nur mehr 18$ und werden somit gedrittelt.
Rechnungsbeispiel für Multimedia-On-Demand in einem Ballungsgebiet: a) zentraler Server b) Zentraler und Neighborhoodserver c) Speicherplatz/Netzwerk trade-off Speicherplatz/Netzwerk Trade-off1Beispiel: Speicherplatz/ Netzwerk Trade-off in einem BallungsgebietCaching auf Server S2
Caching auf Server S3
Caching auf S2 und S3Das Programm wird von 1 Uhr bis 11 Uhr abends auf Server 2 gecacht. Zusätzlich wird es von 1 Uhr bis 2 Uhr auf Server 3 gecacht.
2autoBis jetzt haben wir nur die durch das Netzwerk verursachten Kosten in unsere Berechnung mit einbezogen. Für den sinnvollen Einsatz von Caching allerdings sind auch die Kosten der benötigten Speicherplätze zu berücksichtigen. Zur Kostenminimierung werden dann die anlaufenden Netzwerk- mit den Speicherkosten abgewogen. Server haben abhängig von ihren Performancemaßen wie Gleichzeitigkeit, Zugriffswartezeit auch unterschiedliche Kosten. Diese serverspezifischen Speicherkosten können mit $/Stunde angegeben werden. Beispiel: Speicherplatz/ Netzwerk Trade-off in einem BallungsgebietWir betrachten wieder ein hierarchisches Netzwerk. In der Abbildung sind die Netzwerkkosten für die einmalige Übertragung eines Programms angegeben. Weiters sieht man für jeden Server dessen Speicherkosten. User 1 bestellt um 1Uhr das Programm, dieses wird ihm von Server 1 gesendet, die Kosten sind auch hier wieder 18$. Während der Übertragung wird das Programm in einen der Neighborhoodserver gecacht. Für den Server 2 als Cachingspeicher spricht, dass er gegenüber Server 3 günstigere Speicherkosten bietet, allerdings fallen für jeden Request zusätzliche Netzwerkosten von 8$ an. Es werden nun drei verschiedene Cachingvarianten in Bezug auf Kosten überprüft. Für die folgende Rechnung beachte man, dass das Programm 10 Stunden (User1 um 1 Uhr, User3 um 11 Uhr) gecacht werden muss. Caching auf Server S2
Caching auf Server S3
Caching auf S2 und S3Das Programm wird von 1 Uhr bis 11 Uhr abends auf Server 2 gecacht. Zusätzlich wird es von 1 Uhr bis 2 Uhr auf Server 3 gecacht.
SchlussfolgerungObwohl in diesem kleinen Beispiel nur drei Kunden mit einem einzigen Programm beliefert werden, sieht man schon hier, dass unterschiedliche Caching Strategien spürbare Kostenunterschiede verursachen. Effektive Caching Strategien sind daher für eine zufrieden stellende Performance eines Multimedia-On-Demand Netzwerkes von entscheidender Bedeutung. |
Akronyme ADSL - Asymmetric Digital Subscriber Line HDTV – High Definition Televis i on MOD – Multimedia on Demand NVD – Near Video on Demand PPV - Pay per View PSA – Personal Service Agent SONET - Synchronous Optical Network TB - Terabytes (1024 Gigabytes) Tbps – Terabit per second (1024 Gigabits per second) TMOD – True-Multimedia-On-Demand TVOD – True Video on Demand VCR – Videocassette Recorder VOD – Video on Demand |