Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content...

34
Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische Informatik IV: Prof. Dr. Wolfgang Effelsberg Betreuer: Dipl.-Ing. Hans Christian Liebig

Transcript of Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content...

Page 1: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Seminararbeit

Grundlagen von Content Delivery Networks

Thomas Seebauer15.11.2004

SeminarContent Delivery Networks

Universität MannheimLehrstuhl Praktische Informatik IV: Prof. Dr. Wolfgang Effelsberg

Betreuer: Dipl.-Ing. Hans Christian Liebig

Page 2: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 3: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Struktur des InternetDie Entwicklung von CDNs – Struktur des Internet

• Dezentral: Netz von Netzen

• Content wird jedoch oft

Zentral bei nur einem

Anbieter gehostet

• Wachstum nur durch

hinzufügen von Servern

und Bandbreite möglich

Page 4: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Anatomie einer InternetverbindungDie Entwicklung von CDNs – Anatomie einer Internetverbindung

Letzte Meile

Ursprünglicher Content Server

Peering PointsMaximal Verfügbare Geschwindigkeit

Optische Gigabit Verbindung

Kapazität der ISPs und der Peering Punkte

T1, DSL, ISDN oder Modem

10 MBit bis 1 GBit Heimnetzwerk

Page 5: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Das Internet im WandelDie Entwicklung von CDNs – Das Internet im Wandel

• Wie das Internet ursprünglich entstand:

- Vornehmliche Verwendung in der Wissenschaft

- Überschaubare Benutzerzahlen

- Freigabe von statischen Dateien

- Zusammenarbeit einzelner Benutzer an gemeinsamen Projekten

• Wie das Internet heute aussieht:

- Rasant steigende Benutzerzahlen

- Rasant steigende Datenmengen

- Eines der wichtigsten Medien zum Informationsaustausch

- Großer Anteil an kommerziellen Anwendungen

- Überwiegend dynamische Inhalte (Online Shops, Streaming Media)

• Die Folgen dieses Wandels des Internet:

- Von zu vielen gleichzeitigen Zugriffen überlastete Content Server

- Engpässe bei den Leitungskapazitäten

Lösung durch technische Aufrüstung viel zu teuer !

Page 6: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Die Folgen des Wandels (1)Die Entwicklung von CDNs – Die Folgen des Wandels (1)

5.54 5.81 6.97 9.34 9.71 14.28 14.41

0

4

8

12

16

Altavista Datek CSFB

Direct

Ask

J eeves

Ameritrade E*Trade Char les

Schwab

Die sieben schnellsten Internetseiten*:

Dow

nlo

ad

zeit

mit

Dia

l-U

p Z

ug

an

g in

Seku

nd

en

* Quelle: Keynote Consumer 40 Index, April, 2004 (www.keynote.com)

Page 7: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Die Folgen des Wandels (2)Die Entwicklung von CDNs – Die Folgen des Wandels (2)

Hat die Performance einer Internetseite schon einmal ihr Surfverhalten beeinflusst?

Keine Antwort:1%

Ja, ich habe für dieses eine Mal eine andere Webseite verwendet:

13%

Ja, ich habe eine neue Seite gefunden, die ich jetzt regelmäßig

besuche:

24%

Ja, ich habe diese Seite seitdem nicht mehr verwendet:

9%

Nein: 53%

Quelle: Jupiter Communications Survey of 2,369 users, pub. 6/99

Page 8: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Load Balancing: ein erster SchrittDie Entwicklung von CDNs – Load Balancing: ein erster Schritt

Web Site

Client WebServer

ContentSwitch

Internet

Load Balancing: die einfachste Form eines CDN

• Sehr rudimentäres CDN

• Hilft nur bei der Entlastung der Content Server

• Problem der Leitungsengpässe bleibt ungelöst

Page 9: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Entwicklung von CDNs – Vom Load Balancing zum CDNDie Entwicklung von CDNs – Vom Load Balancing zum CDN

Page 10: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 11: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Aufgaben eines CDN – Gewöhnlicher Internet ContentDie Aufgaben eines CDN – Gewöhnlicher Internet Content

• Statischer Content

- Beispiele: statische HTML Seiten, Softwarepatches, Publikationen

- Muss nur selten aktualisiert werden

- Stellt geringe Anforderungen an ein CDN

- Kann mit einfachen Proxy Caching Methoden bearbeitet werden

• Dynamischer Content

- Beispiele: Online Shops, Serverseitig erzeugte HTML Seiten

- Muss ununterbrochen aktualisiert werden

- Stellt die höchsten Anforderungen an ein CDN

- Komplizierte Aktualisierungsmechanismen nötig

Page 12: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Aufgaben eines CDN – Sonderfall Streaming MediaDie Aufgaben eines CDN – Sonderfall Streaming Media

Zwei verschiedene Formen von Streaming Media Content:

• On Demand Streaming Media

- Entspricht im wesentlichen dem normalen Statischen Content

- Es ist jedoch eine spezielle Streaming Software nötig

- Mindestbandbreite zu den Clients muss garantiert werden

• Live Streaming Media

- Content wird nicht Gespeichert

- Caching Server fungieren nur als Weichen

- Ebenfalls spezielle Software nötig

- Mindestbandbreite zu Clients und Master Server muss

garantiert werden

Page 13: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 14: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Architektur eines CDN – Fünf wesentliche ElementeDie Architektur eines CDN – Fünf wesentliche Elemente

• Surrogate Server- Cachen des Content und Weiterleitung an zugeteilte Clients.- Sammeln statistischer Daten über die Clients und das Netzwerk.

• Distribution System- Zuständig für die optimale Verteilung des Content vom Master Server an die Surrogate Server und die anschließende regelmäßige Aktualisierung.

• Request Routing System- Überwacht die Netzwerkleistung, und sucht bei einer Content Anfrage einen optimalen Surrogate Server für den Client.

• Accounting System- Sammelt Daten aus dem gesamten CDN um Fehleranalyse, Zugriffsstatistiken, Web Accounting und andere Dienste zu ermöglichen.

• Peering System- Ermöglicht Verbindungen zu Content, der von fremden CDN gehostet wird.

Page 15: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Die Architektur eines CDN – ÜberblickDie Architektur eines CDN – Überblick

Page 16: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 17: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Das Content Distribution System – Content verteilen (1)Das Content Distribution System – Content verteilen (1)

Ziele der Content Verteilung:

• Performance für die Clients optimieren

• Zahl der Content Replikationen minimieren

• Bandbreite für die spätere Aktualisierung minimieren

Dies ist eine äußerst komplexe Aufgabe, zu deren Lösung bereits viele Algorithmen entwickelt wurden und auch noch entwickelt werden.

Page 18: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Das Content Distribution System – Content verteilen (2)Das Content Distribution System – Content verteilen (2)

Zwei wesentliche Ansätze:• Statische Festlegung des Verteilungsmusters unter fester Definition

einer der drei Variablen

- Klassische Methode

- Leichter zu berechnen aber unflexibel

• Dynamische Berechnung des Verteilungsmusters

während des Betriebes des CDN

- Neuere Methode

- Noch im Anfangsstadium der Entwicklung

- Leistungsfähiger aber aufgrund der Komplexität derzeit

nur bei kleinen CDN einsetzbar

Page 19: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Das Content Distribution System – Content Aktualisieren (1)Das Content Distribution System – Content Aktualisieren (1)

Pull Verfahren

• Der Surrogate Server holt sich aktualisierten Content

selbständig nach Ablauf eines Verfallsdatums

• Klassische Methode der Content Aktualisierung

• Wird beispielsweise beim Proxy Caching eingesetzt

• Vorteile:

- Erzeugt keinen überflüssigen Traffic

- Benötigt kein zusätzliches Überwachungssystem

• Nachteile:

- Es können Inkonsistenzen zwischen Master und Surrogate

Servern auftreten

- Content Provider können die Content Kopien nicht beeinflussen

Page 20: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Das Content Distribution System – Content Aktualisieren (2)Das Content Distribution System – Content Aktualisieren (2)

Push Verfahren

• Das Content Distribution System überwacht alle Server und

Aktualisiert die Surrogate Server sobald sich die Daten auf

dem Master Server geändert haben

• Wird in den meisten modernen CDN eingesetzt

• Vorteile:

- Vollständige Kontrolle über die Content Kopien

- Keine Verzögerung zwischen Update des Content auf dem

Master Server und den Surrogate Servern

• Nachteile:

- Teilweise erheblicher Traffic Overhead insbesondere bei häufig

aktualisiertem und selten abgerufenem Content

Page 21: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 22: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Den besten Surrogate Server finden - SuchkriterienDen besten Surrogate Server finden - Suchkriterien

Welches ist der beste Surrogate Server für einen bestimmten Client?

Wichtige Kriterien:

- Geographische Nähe

- Netzwerktopologische Nähe

- Auslastung der Surrogate Server

- Verbindungsqualität zwischen Surrogate Servern und Client

Analysemechanismen:

- OSI Layer 4 und 7 Header Informationen

- BIND Abfragen

- Passives Netzwerkmonitoring

- Aktives Netzwerk Probing

Page 23: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Den besten Surrogate Server finden – Passives MonitoringDen besten Surrogate Server finden – Passives Monitoring

Die Surrogate Server speichern Daten über vergangene Verbindungen zu den Clients und leiten diese an das Request Routing System weiter.

• Gewonnene Informationen:

Status der Surrogate Server und Statistik über die vergangene Netzwerkauslastung.

• Vorteile:

Das Monitoring bleibt innerhalb des CDN und verursacht wenig Zusatztraffic.

• Nachteile:

Aus Statistiken über vergangene Netzwerkaktivität Informationen für die Zuweisung von Surrogate Servern zu gewinnen kann zu Fehlzuweisungen führen.

Page 24: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Den besten Surrogate Server finden – Aktives Netzwerk ProbingDen besten Surrogate Server finden – Aktives Netzwerk Probing

Request Routing System

Client

Lokaler DNSServer

Page 25: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Den besten Surrogate Server finden – Aktives Netzwerk ProbingDen besten Surrogate Server finden – Aktives Netzwerk Probing

Die Surrogate Server Analysieren aktiv das Netzwerk indem sie beispielsweise ICMP ECHO Anweisungen absetzen.

• Gewonnene Informationen:

Status der Surrogate Server, Statistik über die vergangene Netzwerkauslastung und aktueller Status des Netzwerks.

• Vorteile:

Durch die Informationen über den aktuellen Netzwerkstatus kann der passende Surrogate Server viel genauer festgelegt werden.

• Nachteile:

Aktives Probing verursacht Zusatztraffic nicht nur innerhalb des CDN, sondern auch auf fremden Servern und stößt daher bei vielen Serveradministratoren auf wenig Gegenliebe.

Page 26: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 27: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Request Routing - WeiterleitungsmechanismenRequest Routing - Weiterleitungsmechanismen

Nach dem festlegen eines geeigneten Surrogate Server muss der Client auf diesen umgeleitet werden.

Dazu gibt es im Wesentlichen drei Mechanismen:

• DNS Basiertes Request Routing

Sehr einfach umzusetzen, hat aber eine geringe Genauigkeit da nur DNS Server angesprochen werden und ist zudem auf die Mitarbeit externer DNS Server angewiesen.

• Transport Layer Request Routing

Hat eine hohe Auflösung und ist sehr flexibel auch während bestehender Verbindungen zu Clients, erzeugt aber Traffic Overhead.

• Application Layer Request Routing

Verwendet existierende Mechanismen der Layer 7 Protokolle oder leitet mittels URL Rewriting um. Sehr einfach und effektiv aber nicht bei allen Content Arten einsetzbar.

Page 28: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Ein Beispiel für DNS basiertes Request RoutingEin Beispiel für DNS basiertes Request Routing

WebDirector

WebCache

Service Node

Client

CNN’s WebServer

CNN’s NameServer

Internet

Local DNSServer

WebDNS

Page 29: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ÜbersichtÜbersicht

• Rückblick: die Entwicklung von Content Delivery Networks

• Die Aufgaben eines Content Delivery Networks

• Die Architektur eines Content Delivery Networks

• Inhalte optimal verteilen: Content Distribution System

• Request Routing: Den besten Surrogate Server finden

• Request Routing: Weiterleitungsmechanismen

• Ausblick: Content Services

Page 30: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Content Services - Möglichkeiten von CDNsContent Services - Möglichkeiten von CDNs

Client

MasterServer

Internet

RequestRouting

SurrogateServiceEngine

Page 31: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Der Client fordert eine Webseite an.

Die Seite wird auf den Surrogate Server geholt und dort gespeichert.

Die Webseite wird an den Client geschickt.

Ein Handybenutzer fordert dieselbe Seite an.

Der Surrogate Server sendet die lokale Kopie der Seite an die Service Engine und bekommt eine, an Handys angepasste Version zurück

Die angepasste Seite wird an den Hanybenutzer weitergeleitet (optional auch auf dem Surrogate gespeichert).

Analog können belibige weitere Geräte bedient werden. Zudem können viele Content Anbieter gleichzeitig dieselben Service Engines benutzen.

Content Services – Beispiel: Content AnpassungContent Services – Beispiel: Content Anpassung

4

2

13

5

MasterServer

6

1

2

3

4

5

6

Internet

Service Enginemit ContentAnpassung

Page 32: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

MusikServer

• Der Moderator bereitet die Playlist für den nächsten Tag vor.

• Die Musikstücke werden Nachts auf die Surrogate Server gespeichert.

• Der Moderator Moderiert die Show mittels Live Streaming Media Transfer.

• Eine Content Service Engine sorgt dafür, daß die Musik-stücke zwischen den Mode-rationen per On Demand Streaming Media von den Surrogate Servern eingespielt werden.

12

33

3

1

2

3

Internet

Content ServicesContent Services – Beispiel:– Beispiel: Radio BroadcastingRadio Broadcasting

Page 33: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

Content Services – Weitere denkbare AnwendungenContent Services – Weitere denkbare Anwendungen

• Anpassung des Content an technische Gegebenheiten:- Anpassung des Content an verschiedenste Endgeräte.- Anpassung an die verfügbare Bandbreite des Endbenutzers (z.B. Streaming Media)

• Anpassung des Content an den Endbenutzer:- Automatische Übersetzung in die lokale Sprache- Einfügen regional relevanter Zusatzinformationen für den Client- Personalisierung des Content anhand der Daten des Accounting Systems- Einfügen von, auf den Endbenutzer abgestimmter Werbung

• Content Filter Dienste- Virenüberprüfung des Content vor der Auslieferung- Zugriffskontrolle durch Contentanalyse (z.B. Alterskontrolle)

• Filtern der Content Requests- Zugriffkontrolle durch Anfrageanalyse- Anlegen von Benutzerprofilen- Anonymisierung von Zugriffen

Page 34: Seminararbeit Grundlagen von Content Delivery Networks Thomas Seebauer 15.11.2004 Seminar Content Delivery Networks Universität Mannheim Lehrstuhl Praktische.

ENDEENDE

Vielen Dank für die Aufmerksamkeit