Current Page: Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: m06 » Learning Units » Unit ID: 2_1_18
Last Modified:Tuesday, 2015-05-05 - 08:09:02
 
Tools: ValidatePreview XML Preview HTML Preview PDF
Alternative: Printable HTML

 

Learning Unit ID: 2_1_18
Title: Serverarchitekturen
Abstract: Diese LU behandelt Serverarchitekturen
Man unterscheidet zuerst zwischen der einfachen und einschichtigen Architektur, welche sich aus einem Anwendungsserver, einem Kontrollserver und einem Datenserver zusammensetzten. Weiterhin betrachtet man auch noch verteilte Architekturen. Hierbei kann es sich um geteilte Server, Externally Switched Server oder Fully Switched Server handeln.
Um Serverarchitekturen grundsätzlich zu vergleichen und zu klassifizieren werden Leistungsmaße definiert. Diese sind z.B:
- Gleichzeitigkeit: maximale Anzahl von Benutzern, die unabhängig auf ein Multimedia-Dokument zugreifen können
- Zugriffs-Wartezeit: die Zeitspanne, die ein Benutzer warten muss, nachdem eine Anfrage gesendet wurde. Diese sollte unabhängig von der Serverauslastung sein
- Speicherkapazität und Speicher
- Skalierbarkeit
- Erweiterbarkeit: andere Anwendungsszenarios mit denselben Komponenten
 
Status:

Review II: done

Version: 8.0
History:

Acronyme, Absätze und Wordanführungszeichen done.

Revie von Prof. Kosch eingearbeitet.

Grafiken verkleinert done.

@ Prof. Kosch: Keine Referenzen done.

Nach Export nochmal Graphikgrössen checken done.

Unbekannte Character removed.

Zu große Graphiken verkleinert.


Author
Author 1: Harald Kosch E-Mail: harald.kosch@itec.uni-klu.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: Universität Klagenfurt - Institut für Informatik-Systeme

Content

Einleitung

1

Was ist besonders? - Alles

  • Architektur
  • Prozess Scheduling
  • Disk Scheduling
  • Netzwerk Management
  • Dateien-Platzierung
  • Datenbeschaffung
  • Warum?
    • Große Menge an Daten
    • Große Dateien
    • Kontinuierliche Übertragung

2

Was ist besonders? - Alles

Multimedia-Server weisen im Gegensatz zu anderen Servertypen (z.B. Webserver) einige Besonderheiten auf. Dies betrifft so ziemlich alle Komponenten, beginnend bei der Architektur über das Scheduling, das Netzwerkmanagement bis hin zur Datenbeschaffung. Grund dafür ist, dass Multimedia-Server große Mengen an Daten und große Dateien zu verwalten haben und dass eine kontinuierliche Übertragung dieser Daten gewährleistet sein muss. In dieser LU beschäftigen wir uns ausschließlich mit der Serverarchitektur, die anderen angesprochenen Punkte, wie z.B. Scheduling werden in den nächsten LUs behandelt.

Einfache, einschichtige Architektur

1

Auto

Auto PC

Einfache, einschichtige Architektur

Auto PDA_Phone

Einfache, einschichtige Architektur

Anwendungs-Server

  • Erhält und vorverarbeitet Anfragen von Anwendungen
  • Applikationsspezifisch
    • Videokonferenzen, Video on Demand . . .
Auto PC

Anwendungsserver

Auto PDA_Phone

Anwendungsserver

Kontroll-Server

Zugangskontrolle
Ressource-Auswahl, Reservierung und Optimierung

Auto PC

Kontrollserver

Auto PDA_Phone

Kontrollserver

Datenserver

  • Multimediadatei oder Datenabfrage
  • Übertragung des Datenstroms
Auto PC

Datenserver

Auto PDA_Phone

Datenserver

2

Auto

Auto PC

Einfache, einschichtige Architektur

Auto PDA_Phone

Einfache, einschichtige Architektur

Auto

Eine einfache einschichtige Architektur von Medienservern setzt sich aus einem Anwendungs-, einem Kontroll- und einem Daten-Server zusammen.

Der Anwendungs-Server empfängt die Applikationsanfragen von den Benutzern und konvertiert diese in Media-Server-Anweisungen. Die Aufgabe des Kontroll-Servers setzt sich aus der Zugangskontrolle (entlastet den Anwendungsserver und erhöht den Anfragedurchsatz) und der Ressourcenverwaltung, -reservierung und -optimierung zusammen. Der Daten-Server ist verantwortlich für den Abruf und die Zustellung der angeforderten Daten.

Anwendungs-Server

Auto PC

Anwendungsserver

Auto PDA_Phone

Anwendungsserver

Auto

Der Anwendungs-Server ist "Ansprechpartner" der Benutzer, er ist zuständig für die Bereitstellung von verschiedenen Anwendungsservices. Wenn netzwerkfähige Versionen von Software zum Einsatz kommen, werden die Programme auf dem Anwendungs-Server abgelegt. Der Anwendungs-Server verwaltet mehrere Inhalts- und Kontextdatenbanken. In der obigen Abbildung sind die Inhaltsdatenbank, welche Beschreibungen der gespeicherten Medien enthält, und die Benutzerdatenbank, auf der alle registrierten Benutzer gespeichert sind, Inhaltsdatenbanken. Eine Kontextdatenbank hingegen ist die Verrechnungsdatenbank, welche z.B. den Preis eines Videos nach der Benutzerklasse berechnet. Diese Datenbanken können sowohl auf einem File-Server, als auch auf dem Anwendungs-Server selbst untergebracht werden. Der File-Server liefert als Antwort auf eine von einem Benutzer kommende Suchanfrage den gesamten Datenbestand an den Benutzer. Ein Anwendungs-Server startet demgegenüber einen entsprechenden Suchlauf und liefert an den Benutzer nur die Datensätze, die den Suchkriterien entsprechen.

Kontroll-Server

Auto PC

Kontrollserver

Auto PDA_Phone

Kontrollserver

Auto

Aufgabe des Kontroll-Servers ist zum einen die Zugangskontrolle, um den Anwendungs-Server zu entlasten, zum anderen die Auswahl, Reservierung und Optimierung von Ressourcen, um die Servereffizienz zu erhöhen. Durch ihn wird die Konfigurationskomplexität des Anwendungs-Servers verborgen.

Der Server setzt sich zusammen aus einem Administrator-Interface und einer Konfigurations-Datenbank. Das Administrator-Interface ist, wie der Name schon sagt, nur für den Administrator zugänglich. Es dient der Initialisierung und dem Shutdown des Servers. Außerdem kann der Administrator Parameter setzen, welche gemeinsam mit der Konfigurations-Datenbank die Grundstruktur für die Optimierung darstellen.

Administrator Interface und Konfigurations-Datenbank haben die gemeinsame Aufgabe, die vom Benutzer benötigten Typen zu erkennen und zu überprüfen, ob diese Instanz auch tatsächlich verfügbar ist. Weiterhin wird überprüft ob der Server im Moment genug Ressourcen zur Bedienung der Anfrage zur Verfügung hat (alles zusammen als Zugangskontrolle benannt). Im negativen Fall muss die Anfrage verzögert oder abgewiesen werden.

Datenserver

Auto PC

Datenserver

Auto PDA_Phone

Datenserver

Auto

Der Datenserver überträgt den angeforderten Datenstrom. Er stellt den an das Netz angeschlossenen Nutzern die Datenübertragungsdienste des Netzes mit allen eventuell notwendigen Adaptionsmaßnahmen gleichberechtigt zur Verfügung. Kommunikations- und Adaptionsprozesse laufen stets im Hintergrund ab, sodass während der Kommunikationszeiten bereits neue Anwendungen begonnen und ausgeführt werden können.

Der Datenimporter dient dem Management von Medien-Eingabegeräten (z.B. mittels Kamera, Videorecorder), der Datenexporter liefert die Daten an den Benutzer. Dem Buffer-Manager fällt die Aufgabe zu, diese beiden zu koordinieren. Außerdem buffert er während der Datenübertragung an den Benutzer einige Sekunden des Films vor, um dem Client immer ein verzögerungsfreies Abspielen zu ermöglichen.

Verteilte Architektur

1

Auto

  • Gesteigerte Kapazität
    • Setzt sich aus mehreren Servern zusammen mit mehr Festplatten, Netzwerkkontrollern, Speicher etc.
  • Muss skalierbar sein
    • Zusätzliche Benutzer werden durch Hinzufügen von Knoten bedient
  • Aber: Kommunikation zwischen diesen Knoten kann ein Bottleneck darstellen
    • Verschiedene verwendbare Architekturen
    • Special Purpose Hardware
  • Reguläre Arbeitsstationen sind durch ein Fast Switched Netzwerk (z.B. ATM129 oder Switched Netzwerk) verbunden
    • Reguläre Arbeitsstationen, reguläre Verbindungen

Aufgeteilte Server

  • Verschwendete Server- und Plattenkapazität (kopierte Daten)
Auto PC

Aufgeteilte Server

Auto PDA_Phone

Aufgeteilte Server

Externally Switched Servers

  • Optimale Auslastung der Server, aber Verschwendung von Plattenkapazität
Auto PC

Externally Switched Servers

Auto PDA_Phone

Externally Switched Servers

Fully Switched Servers

  • Optimale Auslastung von Server- und Plattenkapazität
Auto PC

Fully Switched Server

Auto PDA_Phone

Fully Switched Server

2

Auto

Eine verteilte Architektur setzt sich aus mehreren Servern zusammen, wodurch die Kapazität gesteigert werden soll. Die einzelnen Subkomponenten können auf viele verschiedene Arten arrangiert werden, nach außen hin sollten sie wie ein einziger Server agieren.
Eine wichtige Anforderung an eine solche Architektur ist die Skalierbarkeit, durch Hinzufügen neuer Knoten sollen zusätzliche Benutzer bedient werden können. Die Kommunikation zwischen diesen Knoten kann allerdings einen Engpass darstellen. Zu beachten sind vor allem der Speicher I/O Bottleneck und der Netzwerk I/O Bottleneck. Zusätzlich muss die Gefahr der Ungleichverteilung der Auslastung der Server bedacht werden. Einige mögliche Lösungen dieser Probleme werden in den folgenden Folien erklärt.
Solche verteilten Architekturen können auf verschiedene Weise realisiert werden. Eine Möglichkeit ist die Verwendung von Special Purpose Hardware, das ist Hardware, die für ein ganz spezielles Einsatzgebiet entwickelt wurde. Es ist auch möglich reguläre Arbeitsstationen mit einem Fast Switched Netzwerk (z.B. ATM129 oder Switched Netzwerk) zu verbinden bzw. dass reguläre Arbeitsstationen mit regulären Verbindungen ein Netzwerk bilden.

Aufgeteilte Server

Auto PC

Aufgeteilte Server

Auto PDA_Phone

Aufgeteilte Server

Auto

Aufgeteilte Server bestehen aus mehreren Komponenten. Hierbei stellt sich allerdings das Problem, dass die zusätzliche Kapazität nicht optimal ausgelastet wird. Da die beteiligten Server untereinander nicht ständig kommunizieren, muss jeder in der Lage sein, die Spitzenwerte an Benutzer bedienen zu können.

Angenommen Server-1 kann 50 Clients gleichzeitig bedienen und die benötigte Spitzenkapazität beträgt 1562 Benutzer, so werden 32 dieser Server benötigt um alle Benutzer bedienen zu können (50*32 = 1600). Server-2 ist in der Lage 100 Benutzer zu bedienen, seine benötigte Spitzenkapazität beträgt 1333 Benutzer, so sind 14 solcher Server nötig um die Benutzer zufrieden zu stellen.

Hinzu kommt, dass die angefragten Daten auf beiden Servern zur Verfügung stehen müssen, was zu verschwendeter Plattenkapazität durch replizierte Daten führt.

Externally Switched Servers

Auto PC

Externally Switched Servers

Auto PDA_Phone

Externally Switched Servers

Auto

Im Unterschied zu einfachen aufgeteilten Servern findet bei Externally Switched Servern ein Lastausgleich mittels eines Kontrollservers statt. Dieser ist zwischengeschalten und weist den einzelnen Servern abhängig von ihrer momentanen Auslastung die Benutzer zu. Wenn wir uns wieder das Beispiel ansehen mit Server-1, der 50 Benutzer bedienen kann, und Server-2, dessen Kapazität die parallele Bedienung von 100 Benutzer möglich macht, so sehen wir, dass die benötigte Spitzenkapazität beider Server auf jeweils 1081 Benutzer sinkt. Daraus ergibt sich ein Bedarf von 22 Stück des Server-1 (50*22=1100) und 11 Stück des Server-2 (100*11=1100) um alle Benutzer bedienen zu können.
Das Problem der verschwendeten Plattenkapazität ist hier allerdings weiterhin gegeben.

Fully Switched Servers

Auto PC

Fully Switched Server

Auto PDA_Phone

Fully Switched Server

Auto

Ein Fully Switched Server besitzt ebenso wie der Externally Switched Server einen Kontrollserver, welcher für die Zuteilung der Benutzer an die einzelnen Server zuständig ist, was zu einer optimalen Serverauslastung führt.
Zusätzlich enthält er einen I/O Switch, der zwischen Server und Platten geschaltet ist. Dadurch wird nun auch eine optimale Plattenauslastung erreicht und der letzte bestehende Bottleneck (Engpass) beim Zugang zu den Daten entfernt.

Bibliographie

2

Auto

Ste99

Lee98


Notes
(empty)