18
1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA I nstitut für B etriebssysteme und R echnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de Anycast als Gameserver Discovery Mechanismus für Ad-Hoc Netze Diplomarbeit von Karim El Jed Betreuer:Oliver Wellnitz

1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund :

Embed Size (px)

Citation preview

Page 1: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

1Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Anycast als Gameserver Discovery Mechanismus für Ad-Hoc Netze

Diplomarbeitvon

Karim El Jed

Betreuer:Oliver Wellnitz

Page 2: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

2Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Motivation

Steigende Verbreitung mobiler Endgeräte

Steigende Rechenleistung der Geräte

Steigender Wunsch nach mobilen Multiplayer-Spielen

Ad-Hoc Netze scheinen für spontane Spielsessions geeignet

Bewährte Spielarchitekturen in Ad-Hoc Netzen problematisch

Page 3: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

3Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Gliederung

Ad-Hoc Netze

Spielarchitekturen

Gameserver Discovery

am Beispiel SLP

am Beispiel Anycast

Anycast vs. SLP

Zusammenfassung und Ausblick

Page 4: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

4Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Ad-Hoc Netze

Drahtlos

Geringe Bandbreite

Werden spontan aufgebaut

Meist ohne Infrastruktur

Hohe Dynamik

Hop-by-Hop Routing

Page 5: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

5Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Spiel-Architekturen

Peer-to-Peer Kommunikation zwischen allen Spielern

(-) Skaliert schlecht O(n2)

(+) Gute Fehlertoleranz

Client-Server Kommunikation zwischen Server und Spieler

(+) Gute Skalierbarkeit O(2n)

(-) Schlechte Fehlertoleranz

Page 6: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

6Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Spiel-Architekturen

Zone-based Kommunikation zwischen Server und einigen Spieler

(+) Gute Skalierbarkeit O(n) - O(2n)

(+) Gute Fehlertoleranz

Page 7: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

7Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Zone-based

Page 8: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

8Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Gameserver Discovery

Service Discovery Protokolle

Einfaches Finden und Benutzen von Diensten

Untersuchte Protokolle:

Service Location Protocol (SLP)

Universal Plug and Play (UPnP)

Konark

Salutation

Page 9: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

9Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Gameserver Discovery

  SLP Konark Salutation UPnP

Entwickler IETF University of Florida

Salutation Consortium (IBM, …)

Microsoft

Kommunikation Multicast, Unicast

Multicast, Unicast

unabhängig Multicast, Unicast

Transport TCP / UDP TCP / UDP unabhängig UDP

Mechanismen zentrale Registry,

Advertisments, Requests

de-/zentrale Registry

de-/zentrale Registry

Advertisements, Requests

Page 10: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

10Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Service Location Protocol

3 Hauptkomponenten

User Agent (UA): Sucht Dienste für den Client

Service Agent (SA): Verbreitet Dienstinformationen

Directory Agent: Zentrale Registrierung und Lookup von Diensten

Directory Agent nicht geeignet für Ad-Hoc Netze

URLs zum Finden und Konfigurieren von Diensten:

„service“:<servicetype>“://“<address>

Page 11: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

11Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Gameserver Discoveryam Beispiel SLP

Service Agent User Agent

SrvRqst()

SrvRply

SrvRqst()

Service Agent

SrvRply

Ping()

Ping()

Ping

Ping

Join: Rqst()

Join:Ack()

Server Discovery

Probing

Join Game

Page 12: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

12Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Erkenntnis

Hoher Verwaltungsaufwand beim Client

Speicherung einer Serverliste

Auswahl des „nahegelegensten“ Server

Überwachung der Latenz

Handoff-Initialisierung

Fazit: Service Discovery Protokolle nur bedingt geeignet

Page 13: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

13Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Anycast

Point-to-Anypoint Kommunikation

In IPv6 als feste Konvention übernommen

Auswahl des Zielservers durch Routingprotokoll

Kürzeste Routen bessere Bandbreitennutzung

Gute Ausgewogenheit bei guter Serververteilung

Serverwechsel problematisch bei TCP-Verbindung

Multiplayer-Spiele: überwiegend UDP, daher vernachlässigbar

Page 14: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

14Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Anycast

Woher kennt der Client die Anycastadressen und Ports der Server?

Lösung 1: Benutzung von z.B. SLP

Handoff nur durch Anycast

Lösung 2: Ausnutzung des großen Adressraumes von IP6

feste IP-Adresse & Port

Lösung 2 favorisiert

Page 15: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

15Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Gameserver Discoverymit Anycast

Page 16: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

16Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Anycast vs. SLP

SLP Anycast

Serverauswahl

Probing automatisch (Routingprotokoll)

Überwachung der Latenz

durch den Client nicht nötig (Routingprotokoll)

Handoff durch den Client durch Routingprotokoll

Sonstiges + Anpassung von Handoff-Parametern möglich

- Aufwendige Implemen-tierung des Client

+ Einfache Implementierung des Client

- kein TCP

- Performance hängt stark vom Routingprotokoll ab

Page 17: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

17Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Zusammenfassung & Ausblick

Vergleich verschiedener Spielarchitekturen und deren Anwendbarkeit in Ad-Hoc Netzen

Erläuterung und Vergleich verschiedener Service Discovery Protokolle

Anycast als Gameserver Discovery Mechanismus

Das ist noch zu tun…

Definition des Mechanismus

Implementierung in einem 3D-Shooter

Evaluation

Page 18: 1 Karim El Jed 04-02-03 TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und Rechnerverbund  :

18Karim El Jed 04-02-03

TECHNISCHE UNIVERSITÄT

ZU BRAUNSCHWEIGCAROLO-WILHELMINA

Institut für Betriebssysteme und Rechnerverbund http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Noch Fragen?