Anycast als Gameserver Discovery
Mechanismus für Ad-Hoc Netze
Diplomarbeit
von
Karim El Jed
Betreuer:Oliver Wellnitz
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
1
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
2
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
3
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
4
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
5
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
6
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de
Zone-based
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
7
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
8
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de
Gameserver Discovery
SLP
Konark
Salutation
UPnP
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
zentrale
Registry,
Advertisments,
Requests
de-/zentrale
Registry
de-/zentrale
Registry
Advertisements,
Requests
Entwickler
Mechanismen
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
9
ZU BRAUNSCHWEIG
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>
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
10
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de
Gameserver Discovery
am Beispiel SLP
Service Agent
User Agent
SrvRqst()
Service Agent
SrvRqst()
SrvRply
Server Discovery
SrvRply
Ping()
Ping()
Ping
Probing
Ping
Join: Rqst()
Join Game
Join:Ack()
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
11
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
12
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
13
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
14
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de
Gameserver Discovery
mit Anycast
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
15
ZU BRAUNSCHWEIG
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
+ Einfache Implementierung
des Client
- kein TCP
- Aufwendige Implemen- Performance hängt stark
tierung des Client
vom Routingprotokoll ab
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
16
ZU BRAUNSCHWEIG
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
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
17
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de
Noch Fragen?
TECHNISCHE UNIVERSITÄT
CAROLO-WILHELMINA
Karim El Jed 04-02-03
18
ZU BRAUNSCHWEIG
Institut für Betriebssysteme und Rechnerverbund
http://www.tu-bs.de http://www.ibr.cs.tu-bs.de

Folien - Institut für Betriebssysteme und Rechnerverbund