Verteilte Systeme. Jens Müller-Iden. Gruppe PVS (Parallele und Verteilte Systeme) Institut für Informatik Westfälische Wilhelms-Universität Münster



Ähnliche Dokumente
Parallelität im Betrieb von Online-Computerspielen

Parallels Mac Management 3.5

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Algorithmische Kryptographie

Rechnernetzwerke. Rechnernetze sind Verbünde von einzelnen Computern, die Daten auf elektronischem Weg miteinander austauschen können.

Step by Step VPN unter Windows Server von Christian Bartl

Verteilte Systeme. Übung 10. Jens Müller-Iden

Anleitung zur Nutzung des SharePort Utility

Verteilte Echtzeit-Systeme

Projektmanagement in Outlook integriert

Verteilte Systeme Unsicherheit in Verteilten Systemen

Wie richte ich ein -Konto (Postfach) in Outlook 2000/2003 ein?

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Zur Konfiguration werden hierbei das Setup-Tool und die Shell verwendet.

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Professionelle Seminare im Bereich MS-Office

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Thema: Microsoft Project online Welche Version benötigen Sie?

ISA Server 2004 Erstellen einer Webverkettung (Proxy-Chain) - Von Marc Grote

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

Softwaretechnologie -Wintersemester 2013/ Dr. Günter Kniesel

Netzwerkeinstellungen unter Mac OS X

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version Deutsch

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

Multimedia und Datenkommunikation

Zugriff auf OWA Auf OWA kann über folgende URLs zugegriffen werden:

Kurzanleitung So geht s

Installation der SAS Foundation Software auf Windows

Einführung in IP, ARP, Routing. Wap WS02/03 Ploner, Zaunbauer

Konfiguration von Exchange 2000 zum versenden und empfangen von Mails & Lösung des SEND after POP Problems

Leitfaden zur Nutzung von binder CryptShare

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Technical Note ewon über DSL & VPN mit einander verbinden

Funktion Erläuterung Beispiel

ICMP Internet Control Message Protocol. Michael Ziegler

Vorlesung 11: Netze. Sommersemester Peter B. Ladkin

Reporting Services und SharePoint 2010 Teil 1

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Installation Hardlockserver-Dongle

Verbindung HELIUM V und WebShop (Magento). Verbindung zwischen HELIUM V und WebShop AioS

Powermanager Server- Client- Installation

ICS-Addin. Benutzerhandbuch. Version: 1.0

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

Aufgabe 12.1b: Mobilfunknetzwerke

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Lizenzierung von System Center 2012

snom Auto-Provisioning

Windows 2008R2 Server im Datennetz der LUH

Dokumentation zum Spielserver der Software Challenge

Anleitung Grundsetup C3 Mail & SMS Gateway V

1 Schritt für Schritt zu einem neuen Beitrag

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

Anlegen eines SendAs/RecieveAs Benutzer unter Exchange 2003, 2007 und 2010

Horstbox VoIP. Stefan Dahler. 1. HorstBox Konfiguration. 1.1 Einleitung

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

A1 Desktop Security Installationshilfe. Symantec Endpoint Protection 12.1 für Windows/Mac

Ideenskizze für die Nutzung einer IPv6-Infrastruktur zur Vitaldatenüberwachung von Menschen:

Facharbeit Informatik. Thema:

Seite Wireless Distribution System (Routing / Bridging) 3.1 Einleitung

Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation.

Anlegen eines DLRG Accounts

Inbetriebnahme Profinet mit Engineer. Inhaltsverzeichnis. Verwendete Komponenten im Beispiel:

S7-Hantierungsbausteine für R355, R6000 und R2700

Anleitung RÄUME BUCHEN MIT OUTLOOK FÜR VERWALTUNGSANGESTELLTE

Sophia Business Leitfaden zur Administration

TCP SYN Flood - Attack. Beschreibung Auswirkungen Zuordnung zu Gefährdungskategorie und Attacken-Art Gegenmaßnahmen Quellen

FAQ. Häufige VoIP-Probleme

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Projektmanagement in Outlook integriert

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

Profilwechsel Sicherheitsdatei (alt) nach Sicherheitsdatei (neu)

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Automatisches Beantworten von - Nachrichten mit einem Exchange Server-Konto

STORES2. Operation Manual Version Warenretoure mit Zustimmung des Headquarter

Download unter:

" -Adresse": Geben Sie hier bitte die vorher eingerichtete Adresse ein.

Auftrag zum Erwerb und zur Einrichtung von Fernverbindungen Version 1 Version 2 Version 3 Allgemeines

ISA Server 2004 Erstellen eines neuen Netzwerkes - Von Marc Grote

Lizenzen auschecken. Was ist zu tun?

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

So richten Sie Ihr Postfach im Mail-Programm Apple Mail ein:

estos UCServer Multiline TAPI Driver

-Virtuelle Jagdfliegerschule- Teamspeak Seite 1 von 6

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

IBIS Professional. z Dokumentation zur Dublettenprüfung

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Konsistenzproblematik bei der Cloud-Datenspeicherung

QR-FUNKTION. Informationen über zu erledigende Aufgaben an das Reinigungspersonal senden.

Windows Server 2012 R2 Essentials & Hyper-V

Wenn keine Verbindung zwischen den Computern besteht, dann bist du offline.

Anleitung - Archivierung

Erstellen von x-y-diagrammen in OpenOffice.calc

DVB-T DA2 Hybrid Seite 1 von 10

INTERNET UND MMS MIT DEM QTEK2020 MARCO 28. MÄRZ 04

Transkript:

Verteilte Systeme Übung 8 Jens Müller-Iden Gruppe PVS (Parallele und Verteilte Systeme) Institut für Informatik Westfälische Wilhelms-Universität Münster Sommersemester 2007 8.1 Echtzeit-Systeme Echtzeitsysteme sind Hardware- oder Hardware/Software-Systeme, die Operationen innerhalb einer bekannten Zeitspanne vor einer deadline abschließen müssen (nicht zwingend sofort ) Weiche Echtzeitsysteme: Eine Verletzung der deadline stört das System, kann aber entweder kompensiert werden oder verletzt die Systemanforderungen nicht zwangsläufig fatal (Videokonferenzen, Audio-Streaming, Multiplayer-Spiele) Harte Echtzeitsysteme: Eine Überschreitung der deadline verletzt die Systemanforderungen unmittelbar auf fatale Weise (Airbag-Auslösesteuerung, Notabschaltungssystem einer Fertigungsstraße, Drive- und Fly-by-Wire-Systeme) Zur Bestimmung von deadlines eines mehr-komponentigen Echtzeitsystems müssen die jeweiligen deadlines der Komponenten ermittelt werden 8-2

8.2 Verteilte Echtzeit-Systeme In einem verteilten Echtzeitsystem ist das Kommunikationsnetzwerk zentrale Komponente Deadline für Übertragung einer kleinen Steuernachricht von wenigen Bytes? Deadline für Übertragung mehrerer Gigabyte? Wieviele Hosts? Erweiterbar? Worst-Case Auslastung? Deadlines im Netzwerkstack und Middleware? Echtzeitbetriebssystem? Ethernet: Deadlines in CSMA/CD, CSMA/CA, CSMA/BA? Vermittlung: Deadlines im Routing? Zur Realisierung eines verteilten Echtzeitsystems muss das Kommunikationsnetzwerk garantierte Dienstgüten (Quality of Service) bzgl. Minimalbandbreite und Maximallatenz erfüllen Der TCP/IP-Stack und Ethernet mit CSMA/CD bieten nur einen best effort Dienst ohne jegliche Gütegarantien 8-3 8.3 Asynchronous Transfer Mode (ATM) Der Asynchronous Transfer Mode-Stack Implementiert die Schichten 1-3 des OSI-Modells, ist also Alternative zu IP Kann sowohl paket-basierte wie auch synchrone Bitströme übertragen. Asynchronous Transfer bedeutet dabei für einen synchronen Bitstrom, dass Sender und Empfänger unterschiedlich getaktet sein können Versendet Zellen (vergleichbar mit Paketen) mit einem 5 Byte großen Header und 48 Byte Nutzdaten Richtet virtuelle Verbindungen für einen Kommunikationskanal ein (fest oder dynamisch): Jeder Router auf dem Verbindungsweg wird informiert, erfordert Setup-Zeit Pakete nehmen immer denselben Weg Eindeutiger Identifier für einen Kanal 8-4

8.3 Asynchronous Transfer Mode (ATM) eine ATM-Verbindung erfüllt einen Traffic Contract bzgl. der bereitgestellten Bandbreite. Typen: UBR Unspecified Bit Rate (best effort) CBR Constant Bit Rate (Garantierte Mindestbandbreite) VBR Variable Bit Rate (Mit gewisser Schwankung um Mittelwert) ABR Available Bit Rate (Dynamisch von ATM geregelt) Erfüllung eines Traffic Contract durch Traffic Shaping: Steuerung des Zellflusses am Eingangspunkt in das ATM-Netz Traffic Policing: Überwachung der Verbindungen und ggf. Verwerfen von Zellen bei Überschreitung der zugesicherten Bandbreite ATM wird z. B. eingesetzt Zur Echtzeitübertragung von Rundfunk- und Fernsehprogrammen In Internet- und Telefonie-Backbones Für DSL-Zugänge 8-5 8.4 Multiplayer-Spiele Echtzeitspiele arbeiten intern mit diskreten Einzelzuständen, die mit hoher Frequenz aktualisiert werden. Je nach Spieltyp etwa 5-35 Aktualisierungen (ticks oder game- bzw. server-frames) pro Sekunde Vergleichbar: Ein aus dynamisch berechneten Einzelbildern bestehender Film Mehrspieler-Modus zumeist als Client-Server-Architektur Clients senden Benutzerkommandos (Bewegen, Blickrichtung ändern, Schiessen, Einheit x zu Punkt y kommandieren usw.) zum Server Server errechnet neuen Spielzustand aus den eingegangenen Aktionen und sendet neuen Zustand zu den Clients zurück Clients ändern ihre Zustandskopie nie selbst, sondern immer nur gemäß der vom Server empfangenen Aktualisierungen (Optimierung: Temporäre Extrapolation von Bewegungen zur flüssigen Darstellung) Client-Zustände sind somit Replikate des Serverzustands, Konsistenzmodell? 8-6

8.4 Multiplayer-Spiele Beispiel: An einem Unreal Tournament-Client empfangene Positionsupdates eines anderen Spielermodels (20 updates/sek) 8-7 Client-Server Architektur: Eigenschaften Clients erwarten ein Update der Spielwelt gemäß der Update-Frequenz (weiches Echtzeitsystem) Client-Server-Architektur mit einzelnem Server: + Konsistenz leicht zu wahren + Einfach zu implementieren Ermöglicht kleine Partien (unter 100 Mitspielern) wie in First Person Shooter (FPS) und Real-time Strategy (RTS) Spielen üblich - Nicht skalierbar, der Server ist bottleneck - Server ist zentraler Ausfallpunkt Game World Single Game Server Game Entities (Avatars, NPCs, items) 8-8

Skalieren von Echtzeitspielen Verschiedene Skalierungsaspekte denkbar: Maximalzahl der Clients Spielweltgröße Maximaldichte der Clients Jede Erhöhung einer dieser Größen führt zu höherem Rechenaufwand im Server. Maximale Rechenleistung eines einzelnen Servers ist konstant Verletzung der deadline bei Überschreitung der maximalen Rechenzeit für einen neuen Spielzustand: S i 2 1/tickrate S i 1 time S i S i+1 S i+2 φ Si 2,S i 1 φ Si,S i+1 φ Si 3,S i 2 φ Si 1,S i 8-9 Verletzung der Deadline Beispiel: Positionssprünge als Auswirkung verzögert eingetroffener updates (durch Serverüberlastung oder Kommunikationsverzögerungen) 8-10

Zoning: Skalierbarkeit für MMOG Massively Multiplayer Online Games (MMOG) werden mit tausenden von Spielern gleichzeitig in einer Spielwelt gespielt Üblicherweise Zonenaufteilung der Spielwelt mit mehreren Servern, Clients wechseln zu anderem Server bei Zonenwechsel Server A Zone A Game World Zone D Server D Server B Server C Zone B Game Entities Zone C + Spielerzahl mit Spielweltgröße skalierbar + gut geeignet für MMORPG mit riesigen Spielwelten - Erlaubt keine höhere Spielerdichte als einzelner Server - Kaum geeignet für FPS und RTS, da vergleichsweise kleine Spielwelt 8-11 Zoning-Beispiel: Ragnarok online 8-12

Skalierungsalternative: Multi-Server Replikation An unserer Arbeitsgruppe entwickelte Alternative: Vollständige Replikation des Spielzustandes auf mehreren Servern Shadow Entity Game World Server A update Active Entity at B Server B update Shadow Entity Server C + Spielerdichte und -maximalzahl skalierbar + Beliebig kleine Spielwelten möglich + Keine Nahtstellen, kein Serverwechsel erforderlich - Keine Skalierung der Spielweltgröße - Erhöhter Aufwand zur Konsistenzhaltung der Daten Konsistenzmodell: Eventual Consistency 8-13 Skalierungsbeispiel: Rokkatan Im Projektseminar von Studierenden entwickeltes Massively Multiplayer Online Real-time Strategy Game Avatar aus mehreren Klassen auswählbar Teams kämpfen um Flaggen, besetzte Flaggen geben Punkte Bewegungen indirekt: Klicken mit automatischem Laufen Kämpfen direkt: Pro Schlag/Schuss ein Klick auf die Angriffsposition (Erst der Server prüft, ob dort auch ein Gegner steht) 8-14

Skalierungsbeispiel: Rokkatan 600 500 400 300 200 100 supported clients measured 64 forecast 64 measured 128 forecast 128 Session estimated measured deviation 1 pr., 115 cl. 150.7kB/s 152.0kB/s 2 % 2 pr., 170 cl. 213.9kB/s 210.3kB/s 2 % 3 pr., 220 cl. 245.3kB/s 235.5kB/s 5 % 4 pr., 250 cl. 237.0kB/s 222.7kB/s 7 % 5 pr., 290 cl. 243.7kB/s 242.5kB/s 1 % 6 pr., 310 cl. 257.1kB/s - - 8 pr., 375 cl. 284.8kB/s - - 10 pr., 410 cl. 291.2kB/s - - number of proxy servers l 0 0 1 2 3 4 5 6 7 8 9 10 Maximale Spielerzahlen und Netzwerkbandbreite bei 25 updates pro Sekunde (vergleichsweise hoch für ein RTS ) Vorhersagen mit eigenem analytischen Skalierbarkeitsmodell erstellt 8-15 Skalierungsbeispiel: Rokkatan 8-16