-
TECHNISCHES
FELD
-
Diese
Erfindung bezieht sich auf Online-Spiele, und im Speziellen auf
das Durchführen von
Wettkämpfen
basierend auf Annäherungsmaßen zwischen
Geräten.
-
HINTERGRUND
-
Gewöhnlicherweise
sind Spielesysteme mit einer eigens hierfür ausgeführten (dedizierten) Konsole
Geräte,
die für
sich allein funktionieren und für eine
begrenzte Anzahl von Spielern (z. B. 2 bis 4 Spieler) angepasst
sind. Personal Computer-basiertes Spielen erfreut sich wachsender
Beliebtheit wegen der Fähigkeit
Online-Spiele mit vielen entfernten Spielern über das Internet durchzuführen. Daher
ist es ein Trend für
Spielekonsolen, Möglichkeiten,
das Spielen über
ein Netzwerk durchzuführen,
wie beispielsweise das Internet-basierte Online-Spielen, zur Verfügung zu
stellen.
-
Ein
Problem bei dem Onlinespielen ist, bei Personal Computern oder bei
Spielekonsolen, die Netzwerklatenz. Wenn die Benutzer von zwei unterschiedlichen
Geräten
gegeneinander online spielen, treten zahlreiche Verzögerungen
aufgrund des Versendens von Daten zwischen den Geräten auf.
Diese Verzögerungen
können
das Spiel beeinflussen, so dass das Spiel langsam oder schleichend
für einen oder
mehrere Benutzer erscheint. Da die Netzwerklatenz das Spielen beeinflussen
kann, wäre
es erwünscht,
die Netzwerklatenz zwischen den Geräten für das Onlinespielen zu reduzieren.
-
Das
Durchführen
von Wettkämpfen
basierend auf Abstands- oder Annäherungsmaßen zwischen
Geräten,
wie unten beschrieben, hilft, diese und andere Probleme zu überwinden. [Anm.d.Übers.:Der
Begriff Abstandsmaß oder (An)Näherungsmaß bezeichnet
im Folgenden ein Maß für die Nähe zweier
oder mehrerer Spieler oder Geräte,
bzw. ein Maß für deren
Abstand.]
-
GB 2375006 bezieht sich
auf ein Datenverarbeitungssystem. Ein Verfahren für das Anpassen
von Gegnern in einem Spiel, das über
Kommunikationsgeräte
durchgeführt
wird, wird beschrieben. Das Verfahren beinhaltet das Registrieren
von geografischen Orten von einer Vielzahl von Spielern, das Anpassen von
Gegnern in einem Vorgang, in wel chem besagte Orte berücksichtigt
werden und das Ermöglichen, dass
die Gegner ein Spiel mittels der mobilen Kommunikationsgeräte durchführen, nachdem
die Anpassung durchgeführt
wurde. Die geografischen Orte werden registriert durch das Ermitteln
der Orte eines mobilen Kommunikationsgerät des Spielers. Jedes mobile
Endgerät
ist fähig,
seinen geografischen Ort zu bestimmen, die Daten des Ortes werden über einen
Internet-Orte-Server verfügbar
gemacht. Der Internet-Positionierungsserver ist fähig, eine
Identität eines
mobilen Endgerätes
zu empfangen in einer Dienstanfrage und eine http-Antwort zu übertragen, welche
die angeforderten Ortsdaten enthält.
Wenn ein mobiles Endgerät
sich an dem Spieleserver anmeldet, kann der Spieleserver geografische
Ortsdaten durch das Übertragen
einer solchen Anfrage an den Positionierungsserver erhalten. Die
Daten, welche mit ortsbasierten Wettkämpfen verbunden sind, werden
in einer Wettkampfdatenbank gespeichert, die Daten beinhalten Spielerprofile,
welche den Spielernamen und die derzeit registrierten Orte enthalten, ebenso
wie Positionen und Reihenfolgen relativ zu anderen Spielern. Die
Gegneranpassungsvorrichtung benutzt die Daten, um einen Gegner anzupassen
der Anpassungsprozess hängt
von dem Typ des Wettkampfs ab und kann ebenso beinhalten, dass die
registrierten Orte der Spieler berücksichtigt werden und kann
ebenso die Spielerkategorien eines Spielers in Betracht ziehen.
Nationale Wettkämpfe werden
durchgeführt,
um nationale Sieger zu ermitteln, die nationalen Sieger und andere
Spieler auf nationalem Niveau können
in internationalen Wettkämpfen
spielen, worin die Spieler mit Gegnern aus anderen Ländern angepasst
werden. Die nationale Region ist in subnationale Regionen aufgeteilt.
Die Regionen sind derart ausgewählt,
so dass diese ähnliche
Bevölkerungen
aufweisen, die Bevölkerungsähnlichkeit
wird benutzt, um sicherzustellen, dass lokale Vergleichswettkämpfe innerhalb
lokaler Regionen durchgeführt
werden, so dass diese eine ausreichende Anzahl von potenziellen
Spielern beinhaltet. Eine Datenstruktur zeigt die Einstufung, den
Namen, den Heimatstaat und derzeitige Punkte von einzelnen Spielen
an.
-
DE 100 35 133 A1 bezieht
sich auf ein System und Verfahren zum Teilnehmen in einem Spiel über ein
Mobiltelefon. Ein Benutzer eines Mobiltelefons kann an einem Spiel
teilnehmen, welches von einem oder mehreren Spielern gespielt wird,
der Spieleanbieter ist in einem anderen Ort als der Benutzer. Das
System beinhaltet mindestens ein Mobiltelefon, mindestens eine Basisstation
für das
Mobiltelefon und mindestens eine Spielestation, auf welcher die
Spiele verarbeitet werden. Das Verfahren des Spielens eines Spieles
beinhaltet, dass Benutzereingaben über die Signalverbindung von
dem mobilen Telefon an die Spielestation übertragen werden und dass Informationen über den
aktuellen Spielstand des Spieles von der Spielestation an das mobile
Telefon über
die gleiche Verbindung übertragen werden.
Die Verbindung zwischen dem mobilen Telefon und der Spielestation
wird durch den Benutzer, welcher das Telefon der Spielestation anruft,
eingerichtet. Wenn die Verbindung eingerichtet ist, informiert die
Spielestation den Benutzer, welche Spiele verfügbar sind und durch den Benutzer
gespielt werden können.
Die Art der Benutzereingabe und die Art der Rückkopplung der Spielestation
hängt von
dem Spiel, welches gespielt wird, ab, ebenso von den technischen
Fähigkeiten
des Telefonnetzes und von den technischen Fähigkeiten des mobilen Telefons. Eine
Alternative ist die Übertragung
von SMS-Nachrichten. Die Benutzung des SMS-Dienstes ermöglicht das
Spielen von Brettspielen wie Schach oder Dame. Spiele, welche eine
kompliziertere Eingabe und Ausgabe benötigen, benötigen die Übertragung von größeren Datenmengen.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren
und System für
das Durchführen
von Spielen in einem Online-Spiel zur Verfügung zu stellen.
-
Diese
Aufgabe ist gelöst
durch den Gegenstand der unabhängigen
Ansprüche.
-
Bevorzugte
Ausführungsformen
werden in den abhängigen
Ansprüchen
beschrieben.
-
Gemäß einem
Aspekt wird eine Aufzeichnung von Entfernungen zwischen Gruppen
von Netzwerkadressen geführt.
Eine Reihenfolge für
Online-Spielesitzungen wird ausgewählt, welche an ein Computergerät zurückgegeben
werden soll, welches die Information betreffend derzeitige (laufende)
Online-Spielesitzungen angefordert hat, wobei die Reihenfolge teilweise
basiert auf der Aufzeichnung von Entfernungen. Diese laufenden Online-Spielesitzungen
können
kurzlebige Spielesitzungen (z. B. enden diese, wenn alle Computergeräte die Sitzung
verlassen) oder alternativ können
diese längerlebige
(dauerhafte/persistente) Sitzungen sein, wie beispielsweise Vergleichswettkämpfe (z.
B. dauern diese länger an,
obwohl kein Computergerät
mehr das Spiel zu bestimmten Zeiten während dieser Zeitdauer spielt).
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Gleiche
Nummern werden in dem Dokument benutzt, um sich auf gleiche Komponenten
und/oder Merkmale zu beziehen.
-
1 ist
ein Blockdiagramm einer exemplarischen Umgebung, in welcher das
Durchführen
von Wettkämpfen
basierend auf Annäherungsmaßen zwischen
Geräten
durchgeführt
werden kann.
-
2 ist
ein Blockdiagramm, welche ein exemplarisches Wettkampfsystem im
Detail illustriert.
-
3 verbildlicht
eine exemplarische Abbildungstabelle.
-
4 verbildlicht
eine exemplarische Annäherungstabelle.
-
5 ist
ein Flussdiagramm, welche einen exemplarischen Prozess für das Speichern
von Information für
das Erzeugen von Annäherungsmaßen für Geräte illustriert.
-
6 ist
ein Flussdiagramm, welche einen exemplarischen Prozess für das Abgleichen
und Sortieren von Spielesitzungen illustriert.
-
7 illustriert
eine allgemeine Computerumgebung, welche benutzt werden kann, um
die beschriebenen Techniken zu implementieren.
-
8 zeigt
funktionale Komponenten einer Spielekonsole im Detail.
-
DETAILLIERTE
BESCHREIBUNG
-
1 ist
ein Blockdiagramm einer exemplarischen Umgebung 100, in
welcher das Durchführen von
Wettkämpfen
basierend auf Näherungsmaßen (Abstandsmessungen)
zwischen Geräten
benutzt werden kann. Mehrere Computervorrichtungen 102(1),
... 102(c) sind zu einem Wettkampfsystem 104 gekoppelt.
Die Kopplung zwischen den Geräten 102 und
dem System 104, sowie zwischen den Geräten 102, kann eine
jede aus einer Vielzahl von Kopplungen sein, welche die Kommunikation
zwischen dem System 104 und jedem der Geräte 102 und/oder zwischen
den Geräten 102 ermöglicht.
In einer Implementation beinhaltet die Kopplung das Internet und kann
optional ein oder mehrere andere Netzwerke (z. B. ein Local Area
Network (LAN) oder ein Wide Area Network (WAN)) beinhalten. Zum
Beispiel kann jedes der Computergeräte 102 sich in einem heimbasierten LAN
befinden und jedes heimbasierte LAN kann mit dem System 104 über das
Internet verbunden sein. Die Verbindungen können unter Benutzung einer Vielzahl
von Netzwerktypen und Technologien, beinhaltend Kabelnetze und/oder
kabellose Netzwerke, implementiert sein.
-
Die
Computergeräte 102 erlauben
den jeweiligen Benutzern, miteinander Spiele zu spielen. Typischerweise
bezieht sich das Online-Spielen auf zwei oder mehrere Geräte, welche
miteinander kommunizieren und es den Benutzern der Geräte ermöglichen,
miteinander Spiele zu spielen. Das Kommunizieren wird typischerweise über das
Internet ausgeführt,
aber könnte
alternativ auch über
andere Netzwerke stattfinden (ersatzweise oder zusätzlich zu dem
Internet).
-
Das
Wettkampfsystem 104 pflegt (führt) Informationen über mehrere
Spielesitzungen, die durch die Computergeräte 102 gehostet (moderiert)
werden, erlaubt Spielern, nach Spielesitzungen zu suchen, neue Sitzungen
zu erzeugen, an Sitzungen teilzunehmen, Spielesitzungen zu verlassen,
und Informationen, welche von den Computergeräten benutzt werden, um Daten
zu kommunizieren, zu erhalten. Das Host-Gerät einer solchen Spielesitzung
ist das Gerät,
welches verantwortlich ist für
das Initiieren einer Spielesitzung, beispielsweise durch Veranlassen, dass
das Wettkampfsystem 104 (oder alternativ ein anderes Gerät) eine
neue Spielesitzung erzeugt. Alternativ kann das Host-Gerät auf eine
andere Weise ausgewählt
oder festgelegt werden. Zum Beispiel kann das Host-Gerät zufällig ausgewählt werden oder
anhand anderer Kriterien.
-
In
manchen Implementierungen bezieht sich eine Spielesitzung auf eine
Instanz eines Spiele-Titels, ein oder mehrere Spieler beinhaltend.
Solche Spielesitzungen werden auch bezeichnet als kurzlebige Spielesitzungen.
Wenn alle Spieler einer Spielesitzung die Sitzung beendet haben
(z. B. Verlassen der Spielesitzung, Ausloggen aus dem System 14, Abschalten
der Geräte,
usw.), dann endet die Spielesitzung. Eine Spielesitzung kann mehrere
Runden des Spieles beinhalten, oder es kann alternativ für jede Spielerunde
eine neue Spielesitzung erzeugt werden.
-
In
anderen Implementierungen können
Spielesitzungen über
längere
Zeiten bestehen, wie beispielsweise Tage, Wochen, Monate oder sogar
Jahre. Solche Spielesitzungen werden auch als langlebige Spielesitzungen
oder dauerhafte Spielesitzungen bezeichnet. Ein Beispiel einer solchen
dauerhaften Spielesitzung ist ein Turnier. In einem Tur nier finden mehrere
Wettkämpfe
zwischen vielen Spielen, über eine
typischerweise lange Zeitdauer, statt. Jeder Wettkampf kann als
eine individuelle Spielesitzung gezeigt werden, welche Teil der
Turnierspielesitzung ist. Die Tumierspielesitzung ist nicht vorbei
bis alle einzelnen Spielesitzungen beendet sind. Daher ist es möglich, dass
es Zeiten in der Tumierspielesitzung gibt, in der keine individuellen
Spielesitzungen gespielt werden (z. B. keines der Computergeräte in der Turnierspielesitzung
könnte
das Spiel spielen, oder ist noch nicht einmal eingeschaltet).
-
Der
Begriff Spielesitzung bezieht sich sowohl auf kurzlebige Spielesitzungen
als auch auf dauerhafte Spielesitzungen und ebenso auf die individuellen
Spielesitzungen einer dauerhaften Spielesitzung.
-
Die
Informationen bezüglich
mehrerer Spielesitzungen für
jeden von vielen unterschiedlichen Spiele-Titeln können durch
das System 104 gleichzeitig aufrechterhalten werden. Die
Spieler können eine
Spielesitzung verlassen (ausscheiden) und an einer Spielesitzung
teilnehmen. Wenn eine Sitzung einen bestimmten Punkt in dem Spielfluss
erreicht, kann das Vermögen,
um an der Sitzung teilzunehmen beschränkt sein, oder alternativ hierzu
können Spieler
vermögen,
die Spielesitzung während
des Spielflusses zu verlassen oder daran teilzunehmen, so dass die
Spieler am Ende der Spielesitzung andere sein können als die Spieler zum Beginn
der Spielesitzung. Beschränkungen
des Vermögens
der Teilnahme oder des Verlassens der Spielesitzung können unter
den unterschiedlichen Spiele-Titeln basierend auf den Wünschen der
Spiele-Designer variieren.
-
Wenn
ein Spieler, der ein Computergerät
benutzt, an einer Spielesitzung teilnimmt, wird auch das Computergerät als an
der Spielesitzung teilnehmend bezeichnet. Das Gerät, das durch
einen jeden Spieler der an der Spielesitzung teilnimmt benutzt wird,
wird auch als ein Mitglied oder ein Teil der Spielesitzung bezeichnet.
-
Das
Computergerät 102 kann
eine zweckbestimmte (dedizierte) Spielekonsole, eine Spielekonsole,
welche zusätzliche
Funktionalität
beinhaltet (z. B. digitale Videoaufnahmefunktionalität, so dass
dieser als ein digitaler Videorecorder funktioniert, Kanalempfangsfunktionalität, so dass
dieser TV-Signale empfangen und decodieren kann (mögen diese Übertragungssignale,
Kabelsignale, Satellitensignale usw. sein) usw.), ein Desktop-PC,
eine Workstation, ein tragbarer Computer, ein Mobiltelefon, ein
Internetapparat, ein Servercomputer usw. sein. Zusätzlich können unterschiedliche
Typen von Geräten 102 das Wettkampfsystem 104 gleichzeitig
benutzen. Zum Beispiel kann ein Benutzer einer dedizierten Spielekonsole
an einer Spielesitzung teilnehmen und gegen einen anderen Benutzer
auf einem tragbaren Computer spielen, oder ein User einer dedizierten Spielekonsole,
welche von einem Hersteller hergestellt wurde, kann bei einer Spielesitzung
teilnehmen und gegen einen anderen Benutzer spielen, welcher eine
dedizierte Spielekonsole benutzt, die von einem anderen Hersteller
hergestellt wurde.
-
Eine
exemplarische Implementation der Umgebung
100 von
1 kann
gefunden werden in
EP 1
372 315 A2 .
-
2 ist
ein Blockdiagramm, welches ein exemplarisches Wettkampfsystem 104 in
zusätzlichem
Detail illustriert. Das Wettkampfsystem 104 beinhaltet
ein Steuer- oder Kontrollmodul (Abgleichmodul 122) und
Aufzeichnungen 124, welche laufende Online-Spielesitzungen beschreiben.
Solche laufenden Online-Spielesitzungen beinhalten kurzlebige und
dauerhafte Spielesitzungen. Das Abgleichmodul 122 empfängt Anfragen
betreffend das Erzeugen, Teilnehmen, Verlassen, Suchen usw. von
Spielesitzungen. Diese Anfragen werden empfangen von den anfragenden
Geräten,
wie beispielsweise Computergeräte 102 der 1.
Wenn eine solche Anfrage empfangen wurde, interagiert das Abgleichmodul 122 mit
den anderen Komponenten des Wettkampfsystems 104 in geeigneter
Weise, um die empfangene Anfrage auszuführen.
-
Das
Wettkampfsystem 104 pflegt/führt mehrere Aufzeichnungen 124,
welche Informationen speichern, welche die zahlreichen Spielesitzungen beschreiben,
welche derzeitig von dem Wettkampfsystem 104 verwaltet
werden. Da dieses typischerweise mehrere Online-Spielesitzungen
sind, beinhaltet das Wettkampfsystem 104 typischerweise
mehrere Beschreibungen zu einem gegebenen Zeitpunkt. Die von dem
Wettkampfsystem 104 verwalteten Spielesitzungen sind typischerweise
diejenigen Spielesitzungen, die von dem Wettkampfsystem 104 erzeugt
wurden. Manche Spielesitzungen, welche von dem Wettkampfsystem verwaltet
werden, können
offen sein und daher können
zusätzliche
Spieler an diesen Sitzungen teilnehmen, während andere Spielesitzungen
geschlossen sein können
und daher können
keine weiteren Spieler bei diesen Sitzungen teilnehmen. Die Aufzeichnungen 124 können unter
Benutzung einer Vielzahl von Datenstrukturen geführt werden. In einer exemplarischen
Implementation werden die Informationen die Spielesitzungen betreffend
als ein Eintrag in einer oder mehrere Tabellen gespeichert.
-
Das
Wettkampfsystem 104 ist derart ausgestaltet, um das Errichten
von Spielesitzungen zwischen Computergeräten zu ermöglichen. Meist wird in den
folgenden Ausführungen
das Wettkampfsystem 104 beschrieben als Spielesitzungen
verwaltend, aber nicht als die Übertragung
von Spieledaten zwischen den teilnehmenden Geräten der Spielesitzungen verwaltend.
Stattdessen übertragen
die Computergeräte
die Spieledaten während
des Spieles zwischen sich selbst oder über ein weiteres Servergerät (nicht
gezeigt). Alternativ kann eine Spieldatenübertragung über das Wettkampfsystem 104 erfolgen.
-
Wenn
mehrere Computergeräte
an einer Online-Spielesitzung teilnehmen, wird eines der Geräte bezeichnet
als der Host (auch bezeichnet als Leitrechner oder Hauptcomputer)
der Spielesitzung (und ebenso als das Hostgerät). In einer Implementation ist
der Host einer Spielesitzung das Gerät, welches die Spielesitzung
erzeugt hat. In anderen Implementation werden andere Kriterien benutzt,
um den Host der Spielesitzung festzulegen. Der Host einer Spielesitzung
ist typischerweise das Gerät,
welches für
das Feststellen der Nähe
oder Annäherung
eines anderen Gerätes
benutzt wird, welches bei der Spielesitzung teilnehmen möchte, wie
weiter unten im Detail diskutiert, obwohl andere Geräte, welche
Teil der Spielesitzung sind alternativ benutzt werden können.
-
Eine
Vielzahl von unterschiedlichen Informationen können in den Aufzeichnungen 124 für jede Spielesitzung
gepflegt/geführt
werden. In einer Implementation beinhaltet diese Information mindestens eine
Beschreibung des Spieles, welches in der Spielesitzung gespielt
wird und einen Identifikator (Bezeichner) des Hosts der Spielesitzung.
-
Die
Beschreibung des Spieles beinhaltet den Titel des Spieles ebenso
wie ein oder mehrere Attribute des Spieles. Ein Attribut ist ein
Datenstück,
welches mit einer Spielesitzung oder einem Spieler in einer Spielesitzung
verbunden ist. Die Attribute eines Spieles können bei jedem Spiel basierend
auf den Wünschen
des Spiele-Designers variieren. Zum Beispiel können die Attribute die Qualifikationsstufe
des Spielers der das Erzeugen der neuen Sitzung initiiert hat, die
erwünschte
Qualifikationsstufe von anderen Spielern die an der neuen Sitzung
teilnehmen können,
die Spiel-Location wo das Spiel durchgeführt wird (z. B. während des
Tages, nachts, in einem bestimmten Stadium, in einer bestimmten
Stadt, an einem bestimmten Weg, Wetterbedingungen usw.), Objekte,
die während
des Spieles benutzt werden (z. B. Autotypen, Flugzeugtypen oder
Raumschiffe usw.), Charakteristiken von verschiedenen Charakteren
in dem Spiel (z. B. spezielle Kräfte,
welche verfügbar
sind, magische Zaubersprüche,
welche verfügbar
sind usw.) anzeigen. Zusätzlich,
anstelle des Einschließens
des Spieletitels, kann der Spieletitel immanent in der Anfrage enthalten
sein (z. B. eine unterschiedliche Anfrage kann benutzt werden für jeden
Spieletitel).
-
Der
Bezeichner oder Identifikator des Hosts der Spielesitzung ist eine
Adressenstruktur des Host-Computergerätes. Die Adressenstruktur beinhaltend
ausreichende Informationen, um es zu ermöglichen, dass Näherungs-Maße erzeugt
werden können,
wie hier diskutiert. Der Bezeichner kann eine IP-Adresse (beispielsweise
gemäß dem Internet-Protokollversion
4 (IPv4) oder Internet-Protokollversion 6 (IPv6)) oder alternativ
hierzu Netzwerk-Bezeichner oder Adressen in anderen Formaten sein.
-
In
einer Implementierung ist diese Adressenstruktur bezeichnet als
eine „fully
qualified address" (XNADDR)
für das
Host-Computergerät.
Diese „fully qualified
address" des Host-Computergerätes beinhalten
ausreichende Informationen, um es zu ermöglichen, dass andere Computergeräte auf das Host-Computergerät zugreifen,
obwohl das Host-Computergerät hinter
einer „Network
Address Translation" (NAT)-Vorrichtung,
wie beispielsweise einem Netzwerk-Router, gelegen ist.
-
Ein
Beispiel für
eine „fully
qualified address" eines
Computergerätes
beinhaltet: die Ethernet MAC-Adresse des Computergerätes; die
lokale IP (Internet-Protokoll)-Adresse des Computergerätes (d.
h. die IP-Adresse, welche das Computergerät zu besitzen glaubt und kann
unterschiedlich sein von der IP-Adresse, von welcher das Wettkampfsystem Datenpakete
empfängt
von dem Computergerät
(z. B. wegen des NAT-Gerätes,
wie beispielsweise ein Router, welcher zwischen dem Computergerät und dem
Wettkampfsystem (oder einem Vermittler, der im Namen des Wettkampfsystems
handelt) gelegen ist); die IP-Adresse und Port, von welchem das
Wettkampfsystem (oder der Vermittler) Datenpakete empfängt von
dem Computergerät
(dieses kann das gleiche sein wie die lokale IP-Adresse des Computergerätes, oder
alternativ unterschiedlich (z. B. die Adresse eines NAT-Gerätes)); eine
logische Gerätenummer
(einen Bezeichner, welcher dem Wettkampfsystem (oder dem Vermittler)
zugewiesen ist, um das Wettkampfsystem (oder den Vermittler) eindeutig
zu bezeichnen innerhalb eines Clusters von mehreren Wettkampfsystemen
(oder Vermittlern)); einen Sicherheitsparameter-Index (SPI)-Wert
(z. B. SPI1 und/oder SPI2;
und eine Computergeräte-ID.
Die Inhalte der „fully
qualified address" können basierend auf
den Informationen, welche in den Datenpaketen enthalten sind welche
von dem Computergerät
empfangen wurden, festgelegt sein, e benso wie auf Informationen,
welche bei dem Errichten einer sicheren Verbindung zwischen dem
Computergerät
und dem Wettkampfsystem (oder dem Vermittler) empfangen wurden.
-
Die
IP-Adresse, von welcher das Wettkampfsystem (oder der Vermittler,
welcher im Auftrag des Wettkampfsystems agiert) Datenpakete von
einem Computergerät
empfängt
wird zum Feststellen von Näherungs-Maßen für das Computergerät, wie weiter
unten in größerem Detail
diskutiert, benutzt. Die IP-Adresse ist typischerweise durch einen
Internet-Serviceprovider (ISP) zugewiesen und kann sich mit der
Zeit ändern.
Diese IP-Adresse
ist, z. B., die IP-Adresse, von welcher Datenpakete durch das Computergerät über das
Internet gesendet werden. Zusätzlich
können
mehrere Geräte
die gleiche IP-Adresse
teilen (d. h. mehrere Geräte
können
sich in einem LAN befinden, mit einem Router, welcher zwischen dem
Internet und dem LAN angeordnet ist, und die IP-Adresse des Routers im Internet ist
die IP-Adresse, von welcher Datenpakete von allen Geräten in dem
LAN gesendet werden).
-
Das
Wettkampfsystem 104 beinhaltet ebenso ein Filtermodul 126,
welches Spielesitzungen herausfiltert, welche nicht den Kriterien,
welche durch eine Teilnahme-Anfrage, um an der Spielesitzung teilzunehmen,
spezifiziert werden, genügen.
Während
des Betriebes, wenn ein Gerät
an einer Spielesitzung teilnehmen möchte (d. h. in Erwiderung einer Benutzeranfrage,
um an der Spielesitzung teilzunehmen), ob an einer kurzlebigen oder
dauerhaften Spielesitzung, kommuniziert das Gerät eine Anfrage an das Wettkampfsystem 104 für Beschreibungen und/oder
Bezeichnern der laufenden Spielesitzung, welcher beigetreten werden
kann. Das Wettkampfsystem 104 sendet Beschreibungen und/oder
Bezeichner an das anfragende Gerät
für ein
oder mehrere der laufenden Spielesitzungen zurück und das Gerät kann eine
der Spielesitzungen zum Beitreten aussuchen. Das Gerät kann ein
oder mehrere Spielesitzungen automatisch aussuchen (wie durch eine Software,
die auf dem Gerät
ausgeführt
wird, angezeigt wird) oder alternativ kann eine der Spielesitzungen
in Erwiderung auf eine Benutzereingabe an dem Gerät (z. B.
ein Benutzer wählt
eine der Spielesitzungen aus von einer Anzeige, welche die zahlreichen Spielesitzungen
anzeigt) ausgewählt
werden.
-
Das
Wettkampfsystem 104 wählt
einen Satz von Beschreibungen 124, um diese an ein anfragendes
Gerät zu
senden. Das Filtermodul 126 wählt nur Beschreibungen 124 aus
für den
Satz, welcher an das anfragende Gerät gesendet werden soll, welche die
Krite rien erfüllen,
welche durch das anfragende Gerät
spezifiziert wurden. Zum Beispiel kann das anfragende Gerät spezifizieren,
dass die Spielesitzung nur Spieler einer bestimmten Qualifikationsstufe
beinhalten soll, oder bestimmte Rennbahnen, oder bestimmte Stadien
und so fort. Zusätzlich
operiert das Filtermodul 126, um lediglich Beschreibungen 124 auszusuchen
für den
Satz, welcher an das anfragende Gerät gesendet werden soll, welche
derzeitig zur Teilnahme verfügbar
sind (z. B. wenn eine Spielesitzung voll ist und keine weiteren
Teilnehmer akzeptieren kann, dann wird diese Spielesitzung nicht
als ein Teil des Satzes an das anfragende Gerät gesendet).
-
Eine
oder mehrere dieser Beschreibung 124, welche die Kriterien
erfüllen,
welche durch das anfragende Gerät
spezifiziert wurden, werden an das anfragende Gerät gesendet.
In bestimmten Ausführungsformen
beschränkt
das Wettkampfsystem die Zahl von Beschreibungen 124, welche
an das anfragende Gerät
gesendet werden. In einer Implementierung wird das Wettkampfsystem
nicht mehr als 50 Beschreibungen 124 an das anfragende
Gerät senden,
obwohl andere Grenzen in anderen Implementierungen gewählt werden
können.
Durch das Begrenzen der Anzahl von Beschreibungen 124,
welche an das anfragende Gerät
gesendet werden, kann die Menge der beanspruchten Netzwerkbandbreite bei
dem Senden der Beschreibungen und auch die Menge der Daten, welche
bei dem anfragenden Gerät
präsentiert
(d. h. angezeigt), werden, reduziert werden.
-
Bei
einem gegebenen Satz von Beschreibungen 124, welche an
das anfragende Gerät
gesendet werden, sortiert das Sortiermodul 128 die Beschreibungen
in diesem Satz, so dass die Beschreibungen an dem anfragenden Gerät in einer
bestimmten (sortierten) Reihenfolge gezeigt werden. Die Beschreibungen
können
an das anfragende Gerät
in der sortierten Ordnung gesendet werden oder alternativ kann eine
Angabe der richtigen Ordnung zusammen mit den Beschreibungen gesendet
werden und diese können
in dem anfragenden Gerät
in der sortierten Reihenfolge angeordnet werden.
-
Das
Sortiermodul 128 sortiert die Beschreibungen gemäß der Näherungs-Maße, welche
für jede
der Spielesitzungen erzeugt wurden. Ein Näherungs-Maß für eine Spielesitzung zeigt
eine näherungsweise
Distanz zwischen dem anfragenden Gerät und dem Hostgerät für diese
Spielesitzung. Alternativ kann die Distanz zwischen dem anfragenden Gerät und einem
anderen Gerät,
welches der Spielesitzung beigetreten ist (z. B. manche Geräte, welche Teil
der Spielesitzung sind) betrachtet werden. In bestimmten Ausführungs formen
arbeitet das Sortiermodul 128 ausgehend von der Annahme,
dass Datenübertragungen
zwischen Geräten,
welche näher
aneinander sind, generell schneller sind als Datenübertragungen
zwischen Geräten,
welche weiter voneinander entfernt sind. Daher ist die vorhergesagte
Latenz oder Wartezeit für
Datenübertragungen
zwischen Geräten
generell niedriger für
solche Geräte, welche
näher aneinander
sind.
-
Durch
das Sortieren der Spielebeschreibungen gemäß den Näherungs-Maßen können Spielesitzungen, welche
von Geräten
gehostet oder ausgerichtet werden, welche näher an dem anfragenden Gerät sind (und
daher Spielesitzungen, für
welche die vorhergesagte Latenz der Datenübertragung zwischen dem anfragenden
Gerät und
den anderen Geräten,
welche Teil der Spielesitzung sind, geringer ist) die Benutzer des
anfragenden Gerätes
prominenter präsentiert
werden. Zum Beispiel können
solche Spielesitzungen am Beginn einer Liste von Beschreibungen
von Spielesitzungen angezeigt werden. Der Benutzer wird dann diese
Spielesitzungen mit größerer Wahrscheinlichkeit
auswählen
und dadurch das Benutzererlebnis verbessern.
-
Die
Näherungs-Maße können in
einer Vielzahl von unterschiedlichen Arten erzeugt werden. Eine
Art, bei welcher die Näherungs-Maße für zwei Geräte erzeugt
werden, ist durch das Feststellen einer näherungsweisen geografischen
Lage (z. B. als Längen-
und Breitenangabe) eines jeden Gerätes. Diese Lageinformation
kann auf unterschiedliche Weisen erhalten werden. Zum Beispiel kann
ein Benutzer eine geografische Lage haben, welche mit ihm oder ihr
verbunden ist, welche aufgezeichnet wurde als der Benutzer sich
registrierte oder einloggte, um die Dienste des Wettkampfsystems 104 zu
benutzen. Als ein anderes Beispiel erzeugen bestimmte Organisationen
oder Unternehmen Informationen, welche die IP-Adresse auf geografische
Orte abbildet. Die IP-Adresse des Hostgerätes ist bekannt aus der Spielesitzungsbeschreibung
(z. B. in der XNADDR, welcher Teil der Beschreibung ist) und die
IP-Adresse des anfragenden Gerätes
ist ebenso bekannt (z. B. durch Untersuchen einer XNADDR für das anfragende
Gerät oder
durch Untersuchen der Quell-IP-Adresse für Datenpakete, welche von dem Gerät erhalten
wurden. Solche Informationen, welche IP-Adressen geografischen Lagen
zuordnen (mappen) können
erhalten werden, z. B. von Digital Envoy of Norcross, GA.
-
In
bestimmten Ausführungsformen
pflegt das Wettkampfsystem 104 eine IP-Zuordungstabelle 130.
Die Information, welche IP-Adressen geografischen Lagen zuordnet,
ist in einer Zuordnungstabelle 130 gespeichert und ermöglicht es
dem Sortiermodul 128 fest zustellen, welche geografische
Lage ein Gerät
hat, basierend auf dessen IP-Adresse. Angesichts der geografischen
Lage von zwei Geräten
kann eine Distanz zwischen den Geräten auf eine Vielzahl von Art
und Weisen berechnet werden. Zum Beispiel kann angenommen werde,
dass die Geräte
auf einer Sphäre
(die Erde) gelegen sind und daher kann eine sphärische Distanz zwischen den
beiden Geräten berechnet
werden. In einem anderen Beispiel kann angenommen werden, dass die
Geräte
sich auf einer Ebene befinden (z. B. eine Karte der Vereinigten Staaten)
und daher kann eine direkte Verbindungsliniendistanz zwischen den
beiden Geräten
berechnet werden. Die berechnete Distanz zwischen den beiden Geräten wird
dann benutzt als das Näherungs-Maß für die beiden
Geräte.
-
Eine
andere Weise, in welcher das Näherungs-Maß für zwei Geräte erzeugt
werden kann, basiert auf deren geografischen Lagen, jedoch anstatt die
geografische Lage jeder IP-Adresse zu berücksichtigen, werden die IP-Adressen
gruppiert in mehrere Bereiche (Buckets) oder Gruppen. Die Zahl der Bereiche,
in welche IP-Adressen gruppiert werden, kann variieren und ist ein
Gestaltungsmerkmal. In einer Implementierung werden IP-Adressen
in den Vereinigten Staaten in ungefähr 150 Bereiche aufgeteilt, obwohl
eine andere Zahl von Bereichen (mehr oder weniger als 150) alternativ
benutzt werden könnte. Zum
Beispiel in einer anderen Implementation werden IP-Adressen in den
Vereinigten Staaten in ungefähr
6 Bereiche aufgeteilt.
-
Eine
geografische Lage wird ebenso mit jedem dieser Bereiche assoziiert.
In einer Implementierung wird die näherungsweise geografische Mitte
des Bereiches benutzt als die geografische Lage, welche mit dem
Bereich verbunden wird, obwohl andere Lagen alternativ benutzt werden
könnten.
-
Die
Bereiche für
eine bestimmte geografische Region (z. B. die Vereinigten Staaten)
können auf
eine Vielzahl von unterschiedlichen Weisen erzeugt werden. In einer
Implementierung werden die Bereiche erzeugt durch das Aufteilen
der geografischen Region in eine Anzahl von Unterregionen. Diese
Unterregionen können
auf unterschiedlichen Faktoren basiert sein, so wie beispielsweise
Bevölkerungszentren
oder die physikalische Fläche.
Zum Beispiel kann die geografische Region eingeteilt werden in ungefähr 150 separate
physikalische Flächen, jede
von dieser ist ein Bereich. In einem anderen Beispiel kann jede
der größten 150
Bevölkerungszentren
in der geografischen Region dienen als ein Bereich.
-
In
einer anderen Implementierung werden IP-Adressen Bereichen zugeordnet,
welche um "IP-Bevölkerungszentren" zentriert sind,
wobei die „IP-Bevölkerung" sich bezieht auf
eine Zahl von IP-Adressen. Große
Konzentrationen von IP-Adressen werden identifiziert (z. B. die
150 größten Konzentrationen)
und diese Konzentrationen werden als Bereiche benutzt. Eine geografische
Fläche
ist verbunden mit jedem dieser Bereiche und jede geografische Fläche beinhaltet
diese physikalischen Lagen, welche IP-Adressen in dem Bereich haben.
Die geografische Fläche
kann dann definiert sein durch eine bestimmte geometrische Form,
wie beispielsweise ein Kreis. Jede IP-Adresse, die nicht anfänglich in
einem dieser Bereiche ist wird dann dem nächsten Bereich zugeordnet (z.
B. basierend auf den Abständen zu
den Zentren der Bereiche). Die geometrische Form kann dann verändert werden,
so dass diese zusätzliche
IP-Adressen beinhaltet, oder alternativ kann diese auch nicht verändert werden.
-
In
einer anderen Implementierung wird die geografische Region, welche
in mehrere Bereiche aufgeteilt werden soll, anfänglich mit einem einzelnen
Bereich assoziiert. IP-Adressen
werden dann zu diesem anfänglichen
Bereich hinzugefügt
bis dieser Bereich eine Grenzmenge von IP-Adressen beinhaltet. Diese
Grenzmenge kann variieren und in einer Implementierung ist die Zahl
von Bereichen, welche benutzt werden wollen, geteilt durch die Gesamtzahl von
IP-Adressen, welche zu diesen Bereichen zugewiesen werden sollen.
Wenn die Grenzmenge von IP-Adressen erreicht ist, wird der Bereich
in zwei Bereiche geteilt. Diese Teilung kann durchgeführt werden
unter Benutzung einer Vielzahl von Teilungsheuristiken und in einer
Implementierung wird dieses erreicht, so dass näherungsweise eine Hälfte der IP-Adressen
in dem Bereich vor der Teilung sich in jedem der geteilten Bereiche
befindet. Zusätzliche IP-Adressen
werden dann zu diesen geteilten Bereichen hinzugefügt durch
das Zuweisen von jeder IP-Adresse zu dem nächstgelegenen Bereich (z. B. basierend
auf den Distanzen zu den Zentren der Bereiche). Wenn einer dieser
geteilten Bereiche die Grenzzahl von IP-Adressen erreicht, wird
dieser Bereich erneut geteilt. Das Hinzufügen von IP-Adressen und Teilen
von Bereichen wird fortgeführt
bis alle IP-Adressen einem Bereich zugewiesen sind.
-
In
bestimmten Ausführungsformen
führt das Wettkampfsystem 104 die
Bereichsinformation in einer IP-Zuordnungstabelle 130.
Die IP-Zuordnungstabelle speichert die Zuordnungen von IP-Adressen
zu Bereichen, dadurch wird es dem Sortiermodul 128 erlaubt,
festzustellen, welchen Bereichen die Geräte zugewiesen sind, basierend
auf deren IP- Adressen. Das
Wettkampfsystem 104 führt
ebenso eine Bereichs-Näherungs-Tabelle 132,
welche die Distanz zwischen zwei Bereichen identifiziert. Die Distanz zwischen
zwei Bereichen ist basiert auf der geografischen Lage, welche mit
den beiden Bereichen assoziiert ist (z. B. deren ungefähre geografischen
Zentren) und kann auf eine Vielzahl von Art und Weisen (z. B. analog
zu der Diskussion oben betreffend sphärische Distanzen, gerade Linien
usw.) berechnet werden.
-
3 illustriert
eine exemplarische IP-Zuordnungstabelle 200. Die IP-Zuordnungstabelle 200 kann
z. B. die Tabelle 130 von 2 sein.
Wie in Tabelle 200 gezeigt, werden IP-Adressen 202 bestimmten Bereichen 204 zugeordnet.
Der Wert X in den IP-Adressen 202 zeigt einen gültigen Ganzzahlwert (z.
B. von 0 bis 255). Daher, wie in Tabelle 200 zu sehen,
können
einzelne IP-Adressen Bereichen zugeordnet werden oder Bereiche von
IP-Adressen können
Bereichen zugeordnet werden. Alternativ kann die IP-Zuordnungstabelle 200 „Von"- und „Bis"-Spalten beinhalten,
um die Bereiche von IP-Adressen
zu identifizieren.
-
Die
IP-Zuordnungstabelle 200 beinhaltet ebenso eine Internet-Providerspalte 206.
In manchen Situationen kann das Wettkampfsystem 104 Wissen über den
Internet-Service-Provider
ISP haben, der eine bestimmte IP-Adresse oder einen bestimmten Bereich
von IP-Adressen vergibt, und in solchen Situationen ist diese Information
in der Internet-Providerspalte 206 beinhaltet. Das Sortiermodul 128 kann dann
diese Information bei dem Erzeugen von Näherungs-Maßen benutzen. In einer Implementierung nimmt
das Sortiermodul 128 an, dass zwei Geräte, die in dem gleichen Bereich
sind und deren IP-Adresse von dem gleichen ISP erhalten haben, sich
näher sind
als zwei Geräte,
welche in dem gleichen Bereich sind aber deren IP-Adressen von unterschiedlichen ISPs
stammen. Das Sortiermodul 128 passt dann die Näherungs-Maße an, wenn
zwei Geräte
in dem gleichen Bereich deren IP-Adressen von dem gleichen ISP erhalten
haben, um eine größere Nähe zu reflektieren.
Diese Anpassung kann ein fester Wert sein (z. B. eine Reduzierung
des Näherungs-Maßes um 10) oder
ein dynamischer Wert sein (z. B. die Reduktion des Näherungs-Maßes um 90
%).
-
Alternativ,
in anderen Implementierungen, nimmt das Sortiermodul 128 an,
dass zwei Geräte, welche
die IP-Adressen von dem gleichen ISP erhalten haben, einander näher sind
als zwei Geräte,
welche die IP-Adressen von unterschiedlichen ISPs erhalten haben.
Das Sortiermodul 128 passt dann die Näherungs-Maße an, wenn zwei Geräte die IP-Adressen
von demselben ISP erhalten haben, um eine größere Annäherung widerzuspiegeln. Dieses Anpassen
wird durch das Sortiermodul 128 gemacht, unabhängig, ob
die beiden Geräte
in dem gleichen Bereich sind und unabhängig davon, ob das Näherungs-Maß für die zwei
Geräte
unter Benutzung von Bereichen erzeugt wurde.
-
4 illustriert
eine exemplarische Näherungstabelle 250.
Die Näherungstabelle 250 kann beispielsweise
die Bereichs-Näherungstabelle 132 der 2 sein.
Wie in Tabelle 250 gezeigt, werden zwei Bereichsspalten 252 und 254 benutzt
und eine Distanzspalte 256, welche einen Wert beinhaltet, welcher
die Distanz zwischen zwei Bereichen angibt. Diese Distanzen werden
für relative
Vergleiche bei dem Durchführen
des Sortierens benutzt, wie hier beschrieben, so dass diese Distanzen
jede Einheit haben können.
Zum Beispiel können
die Distanzen in Meilen oder Kilometern gemessen werden oder alternativ
in anderen abstrakten oder willkürlichen
Einheiten. Es soll angemerkt werden, dass der Speicherplatz reduziert
werden kann (z. B. auf ungefähr
die Hälfte)
durch Ausnutzen des Vorteils der typischerweise symmetrischen Natur
der Tabelle 250. Zum Beispiel ist die Distanz zwischen
den Bereichen 2 und 3 die gleiche, unabhängig, welcher Bereich in Spalte 252 identifiziert
wurde und welcher in Spalte 254 identifiziert wurde. Daher
muss diese Differenz nur einmal gespeichert werden. In alternativen
Ausführungsformen
können
unterschiedliche Netzwerk- oder Umgebungsvariablen bewirken, dass
die Werte nicht symmetrisch sind. Zum Beispiel kann die Distanz
von Bereich 2 zu Bereich 3 unterschiedlich sein von der Distanz
von Bereich 3 nach Bereich 2. Wenn die Werte nicht symmetrisch sind,
dann würden
beide Differenzen (oder eine Indikation der beiden Differenzen)
gespeichert.
-
Noch
ein weiterer Weg, auf welchem die Näherungs-Maße für zwei Geräte erzeugt werden können, ist
ein Hybridmodell, welches teilweise basiert auf geografischen Lagen,
aber ebenso unterschiedliche Datentransferraten in Teilen des Netzwerkes
mit einbezieht. Manche Netzwerke, das Internet beinhaltend, haben
unterschiedliche Teilstücke,
welche in der Lage sind, Daten mit unterschiedlichen Geschwindigkeiten
zu übertragen.
Zum Beispiel handhaben ein oder mehrere Internet-„Backbone"-Netzwerke die Hauptlast
auf dem Internet und verwenden Hochgeschwindigkeitsübertragungswege.
Daten können
typischerweise zwischen zwei geografischen Orten, welche dicht zu
einem Internet-„Backbone"-Netzwerk sind, schneller übertragen
werden als zwischen geografischen Orten, die weiter entfernt sind
von Internet-„Backbone"-Netzwerken.
-
Das
Hybridmodell versucht, die Geschwindigkeitsunterschiede durch das
Feststellen der Näherungs-Maße für zwei Geräte wie folgt
zu berücksichtigen.
Die geografische Distanz (z. B. sphärische Distanz oder Gerade-Linien-Distanz,
wie zuvor diskutiert) zwischen jedem Gerät und dem nächstgelegenen geografischer
Punkt, bei welchem Daten von einem Gerät zu einem Internet-„Backbone" übertragen werden können, werden
identifiziert. Eine Backbone-Distanz zwischen diesen Punkten auf
den Internet-„Backbone"-Netzwerken wird ebenso identifiziert.
Diese beiden geografischen Distanzen (zwischen den Geräten und
den Internet-„Backbone"-Netzwerken) werden
dann zu der Backbone-Distanz
addiert, um die Distanz zwischen den Geräten zu erhalten. In diesem
Modell ist die Backbone-Distanz kleiner als die geografische Distanz
(z. B. sphärische
Distanz und Gerade-Linien-Distanz, wie zuvor diskutiert) zwischen
den beiden Punkten wäre.
Zum Beispiel kann die Backbone-Distanz zwischen zwei Punkten die
Hälfte
der geografischen Distanz zwischen den beiden Punkten sein.
-
Es
sollte angemerkt werden, dass in Bezug auf all die Art und Weisen,
in welchen die Näherungs-Maße für zwei Geräte erzeugt
werden können, das
Senden von Datenpaketen hin und zurück zwischen den beiden Geräten nicht
notwendig ist. Die direkte Kommunikation zwischen den zwei Geräten ist nicht
notwendig, um die Näherungs-Maße für zwei Geräte zu erzeugen.
Zum Beispiel, weder müssen Testnachrichten
zwischen den zwei Geräten
gesendet werden noch ist die Benutzung von Protokollen, „Ping" beinhaltend, und
Antwortpakete zwischen den beiden Geräten benötigt. Stattdessen wird das
Näherungs-Maß von dem
Wettkampfsystem erzeugt.
-
Ungeachtet
wie das Näherungs-Maß berechnet
wird, wird das berechnete Näherungs-Maß benutzt
als Basis für
das Sortieren des Satzes gefilterter Spielesitzungen (diejenigen
Sitzungen, welche den Kriterien entsprechen, welche von dem anfragenden
Gerät gegeben
werden). Das berechnete Näherungs-Maß ist ein
Sortierkriterium, welches benutzt werden kann und zusätzliche
Sortierkriterien können
bei dem Sortieren des Satzes von Spielesitzungen ebenso angewendet
werden. Beispiele für solche
zusätzlichen
Sortierkriterien beinhalten: Verschieben der Spielesitzungen, welche
die meisten Vakanzen (die größte Nummer
von Benutzern, die noch teilnehmen können) an den Anfang des Satzes (oder
alternativ an das Ende des Satzes), Verschieben dieser Spielesitzungen
mit den meisten Spielern zu dem Ende des Satzes (oder alternativ
an den Anfang des Satzes), Bevorzugen von älteren Spielesitzungen gegenüber neueren
Spielesitzungen, Anordnen von Spielesitzungen basierend darauf,
wie gut diese optionalen Suchkriterien, wie beispielsweise bevorzugter
Spielstil oder Wettkampfpräferenzen usw,
entsprechen.
-
Die
zahlreichen Sortierkriterien können
auf den Satz von Spielesitzungen auf eine Vielzahl von unterschiedlichen
Reihenfolgen angewendet werden. In einer Implementierung, wenn eine
kleine Anzahl von Bereichen (z. B. 6 Bereiche) vorhanden ist, wird
das berechnete Näherungs-Maß als das
erste Sortierkriterium angewendet und wird gefolgt von einem oder
mehreren Kriterien. In einer anderen Implementierung, wenn es eine
große
Anzahl von Bereichen (z. B. 150 Bereiche gibt), wird das berechnete Näherungs-Maß als das
letzte Sortierkriterium angewendet.
-
Zusätzlich,
in manchen Ausführungsformen, können mehrere
Schichten (oder Ebenen) von Bereichen benutzt werden. In solchen
Ausführungsformen werden
IP-Adressen zu einem bestimmten Bereich zugeordnet in jeder dieser
Schichten. Diese unterschiedlichen Bereichsschichten können als
unterschiedliche Sortierkriterien benutzt werden. Zum Beispiel,
unter der Annahme, dass eine erste Bereichsschicht 6 Bereiche hat
und eine zweite Bereichsschicht 150 Bereiche hat, kann
die erste Bereichsschicht als ein erstes Sortierkriterium angewendet werden,
dann ein oder mehrere andere Sortierkriterien wie zuvor beschrieben,
und dann kann die zweite Bereichsschicht als das letzte Sortierkriterium
angewendet werden.
-
5 ist
ein Flussdiagramm, welches einen exemplarischen Prozess 300 für das Speichern
von Informationen, welche beim Erzeugen von Näherungs-Maßen für die Geräte benutzt wird, illustriert. Der
Prozess 300 kann durchgeführt werden in Software, Firmware,
Hardware oder aus Kombinationen davon.
-
Anfänglich ist
die geografische Fläche,
in welcher die Geräte
existieren (z. B. die gesamte Welt, ein oder mehrere bestimmte Länder) in
die gewünschte
Anzahl von Bereichen eingeteilt (Vorgang 302) und jede
IP-Adresse ist einem dieser Bereiche zugeordnet (Vorgang 304).
Zusätzlich
wird jede IP-Adresse, für
welche der Provider der IP-Adresse bekannt ist, einem Internet-Providerwert
zugewiesen (306). Dieses Zuweisen oder Zuordnen wird gepflegt (Vorgang 308).
Zum Beispiel werden diese Zuweisungen oder Zuordnungen in einer
Tabelle 200 der 3 geführt.
-
6 ist
ein Flussdiagramm, welche einen exemplarischen Prozess 340 illustriert
zum Abgleichen und Sortieren von Spielesitzungen. In einer Implementierung
wird der Prozess 340 durchgeführt von dem Wettkampfsystem 104 der 2.
Prozess 340 kann in Software, Firmware, Hardware oder Kombinationen
hieraus durchgeführt
werden.
-
Anfänglich werden
die Bereiche, denen Hosts einer Spielesitzung zugewiesen sind, gepflegt (d.h.
in einer Liste geführt)
(Vorgang 342). Der Bereich, dem das anfordernde Gerät zugewiesen
ist, wird identifiziert (Vorgang 344) und die Spielesitzungen,
die ein Filterkriterium, geliefert durch das anfordernde Geräte, werden
identifiziert (Vorgang 346). Ein Satz von identifizierten
Spielesitzungen wird dann sortiert gemäß den Distanzen zwischen den Bereichen,
denen der Host und das anfordernde Gerät zugewiesen sind (Vorgang 348).
Dieser sortierte Satz von identifizierten Spielesitzungen wird dann
an das anfordernde Gerät
zurückgesendet
(Vorgang 350).
-
Alternativ,
anstelle des Sortierens des Satzes von identifizierten Spielesitzungen
in dem Wettkampfsystem 104, kann die Information, welche
zum Sortieren des Satzes (z. B. die Näherungs-Maße) zu dem anfordernden Gerät übertragen
werden. Das anfordernde Gerät
kann dann das Sortieren unter Benutzung der Information, welche
es von dem Wettkampfsystem 104 empfangen hat, durchführen.
-
Es
sollte angemerkt werden, dass die Vorgänge der 5 und 6 zum
Zwecke einer leichteren Erklärung
in einer bestimmten Reihenfolge illustriert wurden und dass diese
Vorgänge
in anderen Reihenfolgen durchgeführt
werden können.
Es sollte ebenso bemerkt werden, dass zwei oder mehrere Vorgänge gleichzeitig
durchgeführt
werden können. Zum
Beispiel können
in 5 der Vorgang 306 vor dem Vorgang 304,
nach dem Vorgang 304 oder gleichzeitig mit dem Vorgang 304 durchgeführt werden.
In einem anderen Beispiel, in 6, kann
der Vorgang 346 vor dem Vorgang 344, nach dem
Vorgang 344 oder gleichzeitig mit dem Vorgang 344 durchgeführt werden.
-
7 illustriert
eine allgemeine Computerumgebung 500, welche benutzt werden
kann, um die zuvor beschriebenen Techniken zu implementieren. Die
Computerumgebung 500 ist nur ein Beispiel einer Computerumgebung
und es ist nicht beabsichtigt, eine Beschränkung für den Rahmen der Benutzung oder
Funktionalität
der Computer- und Netzwerkarchitekturen vorzuschlagen. Ebenso sollte
die Computerumgebung 500 nicht interpretiert werden als dass
dieses eine Abhängigkeit
oder eine Erfordernis hätte,
wel che mit einer Kombination von den illustrierten Komponenten in
der exemplarischen Computerumgebung 500 verbunden wäre.
-
Die
Computerumgebung 500 beinhaltet ein Mehrzweck-Computergerät in der
Form eines Computers 502. Computer 502 kann z.
B. ein Computergerät 102 der 1 sein
oder ein Wettkampfsystem 104 der 1 oder 2.
Die Komponenten des Computers 502 können beinhalten, sind aber
nicht beschränkt
auf, ein oder mehrere Prozessoren oder Prozessoreinheiten 504 (optional
beinhaltend einen kryptografischen Prozessor oder Co-Prozessor oder einen
Sicherheitsprozessor oder Co-Prozessor), ein Systemspeicher 506 und
einen Systembus 508, welcher zahlreiche Systemkomponenten
beinhaltend den Prozessor 504 an den Systemspeicher 506 koppelt.
-
Der
Systembus 508 repräsentiert
ein oder mehrere von vielen Typen von Busstrukturen, beinhaltend
einen Speicherbus oder eine Speichersteuerung, einen Peripheriebus,
einen beschleunigten Grafikport (AGP) und einen Prozessor oder Local Bus,
welcher eine von einer Vielzahl von Busarchitekturen benutzt. Als
ein Beispiel können
solche Architekturen beinhalten einen Industry Standard Architecture
(ISA)-Bus, einen Micro Channel Architecture (MCA)-Bus, einen Enhanced
ISA (EISA)-Bus, einen Video Electronics Standards Association (VESA)-Lokalbus
und einen Peripheral Component Interconnects (OPCI)-Bus, der auch
als Mezzanine-Bus bezeichnet wird.
-
Der
Computer 502 beinhaltet typischerweise von computerlesbaren
Medien. Solche Medien können
jegliche verfügbare
Medien sein, welche durch einen Computer 502 zugreifbar
sind und beinhalten flüchtige
und nichtflüchtige
Medien, entnehmbare und nicht entnehmbare Medien.
-
Der
Systemspeicher 506 beinhaltet computerlesbare Medien in
der Form von flüchtigen
Speichern, wie beispielsweise Random Access Memory (RAM) 510,
und/oder nichtflüchtige
Speicher sowie Read Only Memory (ROM) 512. Ein Basic Input/Output-System
(BI-OS) 514,
beinhaltend die Grundroutinen, die den Übertrag von Informationen zwischen Elementen
innerhalb des Computers 502 vereinfachen, wie beispielsweise
während
der Startphase, ist im ROM 512 gespeichert. Das RAM 510 beinhaltet typischerweise
Daten und/oder Programmmodule, auf welche sofort von der Prozessoreinheit 504 zugegriffen
werden kann und/oder welche mit der Prozessoreinheit 504 zusammenarbeiten.
-
Der
Computer 502 kann ebenso andere entnehmbare/nicht entnehmbare,
flüchtige/nichtflüchtige Computerspeichermedien
beinhalten. Als ein Beispiel illustriert 7 ein Festplattenlaufwerk 516 zum Lesen
und Schreiben auf ein nicht entnehmbares, nichtflüchtiges
magnetisches Medium (nicht gezeigt), ein Magnetscheibenlaufwerk 518 für das Lesen
und Schreiben einer entnehmbaren, nichtflüchtigen Magnetscheibe 520 (z.
B. eine Floppy Disk), und ein optisches Laufwerk 522 für das Lesen
und Schreiben einer entnehmbaren, nichtflüchtigen optischen Scheibe 524,
wie beispielsweise ein CD-ROM,
DVD-ROM oder ein anderes optisches Medium. Das Festplattenlaufwerk 516,
Magnetplattenlaufwerk 518 und optisches Laufwerk 522 sind
jeweils mit dem Systembus 508 mittels einer oder mehrerer
Daten-Medien-Schnittstellen 526 verbunden. Alternativ können das
Festplattenlaufwerk 516, Magnetplattenlaufwerk 518 und
optisches Laufwerk 522 mit dem Systembus 508 durch
ein oder mehrere Schnittstellen verbunden sein (nicht gezeigt).
-
Die
Plattenlaufwerke und deren zugehörige computerlesbare
Medien bieten die nichtflüchtige Speicherung
von computerlesbaren Instruktionen, Datenstrukturen, Programmmodulen
und anderen Daten für
den Computer 502. Obwohl das Beispiel eine Festplatte 516,
eine entnehmbare Magnetplatte 520 und eine entnehmbare
optische Platte 524 zeigt, ist klar, dass auch andere Typen
von computerlesbaren Medien, welche Daten speichern können, auf welche
durch einen Computer zugegriffen werden kann, wie beispielsweise
Magnetkassetten oder andere magnetische Speichervorrichtungen, Flash-Speicherkarten, CD-ROM,
DVDs oder andere optische Speicher, RAM-Speicher, ROM-Speicher, elektrisch
löschbare
programmierbare Nur-Lese-Speicher (EEPROM) und Ähnliches ebenso benutzt werden
können,
um das exemplarische Computersystem und Umgebung zu implementieren.
-
Eine
Anzahl von Programmmodulen können auf
der Festplatte 516, Magnetplatte 520, optische Platte 524,
ROM 512 und/oder RAM 510 gespeichert werden, beinhaltend
z. B. ein Betriebssystem 526, ein oder mehrere Anwendungsprogramme 528,
andere Programmmodule 530 und Programmdaten 532.
Jedes dieser Betriebssysteme 526, ein oder mehrere Anwendungsprogramme 528,
andere Programmmodule 530 und Programmdaten 532 (oder auch
Kombinationen hiervon) können
ein verteiltes Dateisystem unterstützen.
-
Ein
Benutzer kann Kommandos und Informationen in den Computer 502 über Eingabegeräte wie beispielsweise
eine Tastatur 534 und ein Zeigegerät 536 (z. B. eine
Maus) eingeben. Andere Eingabegeräte 538 (nicht im Speziellen
gezeigt) können ein
Mikrofon, Joystick, Game Pad, Satellitenschüssel, serielle Schnittstelle,
Scanner und/oder Ähnliches
beinhalten. Diese und andere Eingabegeräte sind mit der Prozessoreinheit 504 über Eingabe-/Ausgabeschnittstellen 540 verbunden,
welche an den Systembus 508 gekoppelt sind, können aber auch über andere
Schnittstellen und Busstrukturen verbunden sein, wie beispielsweise
ein Parallel-Port, Spieleanschluss (Game-Port) oder einen Universal Serial
Bus (USB).
-
Ein
Monitor 542 oder andere Typen von Anzeigevorrichtungen
können
ebenso an den Systembus 508 über eine Schnittstelle wie
beispielsweise einen Videoadapter 544 verbunden sein. Zusätzlich zu dem
Monitor 542 können
andere Ausgabeperipheriegeräte
Komponenten beinhalten wie z. B. Lautsprecher (nicht gezeigt) und
einen Drucker 546, welcher an den Computer 502 über Eingabe-/Ausgabeschnittstellen
(E/A-Schnittstellen) 540 angeschlossen ist.
-
Der
Computer 502 kann in einer Netzwerkumgebung unter Benutzung
von logischen Verbindungen zu einem oder mehreren entfernten Computern,
wie beispielsweise ein entferntes Computergerät 548, operieren.
Als ein Beispiel kann das entfernte Computergerät 548 ein Personal
Computer, tragbarer Computer, ein Server, ein Router, ein Netzwerkcomputer,
ein Peer Device oder andere bekannte Netzwerkknoten, Spielekonsolen
und Ähnliches
sein. Das entfernte Computergerät 548 ist
gezeigt als ein tragbarer Computer, welcher viele oder alle der
Elemente und Merkmale, die in Bezug auf den Computer 502 beschrieben
wurden beinhalten kann.
-
Die
logischen Verbindungen zwischen dem Computer 502 und dem
entfernten Computer 548 sind als ein Local Area Network
(LAN) 550 gezeigt und ein allgemeines Wide Area Network
(WAN) 552. Solche Netzwerkumgebungen sind zu finden in
Büros,
Unternehmenscomputernetzwerken, Intranets und dem Internet.
-
Der
Computer 502 ist mit einem lokalen Netzwerk 550 über eine
Netzwerkschnittstelle oder Adapter 554 verbunden, wenn
dieser in einer LAN-Netzwerkumgebung implementiert ist. Wenn dieser
in einer WAN-Netzwerkumgebung implementiert ist, beinhaltet der
Computer 502 typischerweise ein Modem 556 und
andere Mittel für
das Errichten von Kommunikation über
das weite Netzwerk 552. Das Modem 556, welches
intern oder extern ausgeführt
sein kann, kann mit dem Systembus 508 über Eingabe-/Ausgabeschnittstellen
oder andere angemessene Mechanismen verbunden sein. Es versteht sich,
dass die gezeigten Netzwerkverbindungen exemplarisch sind und dass
andere Mittel für
das Erstellen von Kommunikationsverbindungen zwischen den Computern 502 und 548 angewendet
können.
-
In
einer Netzwerkumgebung, wie mit der Computerumgebung 500 illustriert,
können
Programmmodule, welche relativ zu dem Computer 502 gezeigt
wurden, oder Teilen hiervon, in einer entfernten Speichervorrichtung
gespeichert werden. Als ein Beispiel befinden sich entfernte Anwendungsprogramme 558 auf
einem Speichergerät
des entfernten Computers 548. Aus illustrativen Gründen werden Anwendungsprogramme
und andere ausführbare Programmkomponenten,
die das Betriebssystem als diskrete Blöcke zeigt, obwohl es sich versteht,
dass solche Programme und Komponenten sich zu unterschiedlichen
Zeiten in unterschiedlichen Speicherkomponenten des Computergerätes 502 befinden und
von den Datenprozessoren des Computers ausgeführt werden.
-
Zahlreiche
Module und Techniken können hier
in dem allgemeinen Kontext von computerausführbaren Instruktionen beschrieben
sein, wie beispielsweise Programmmodulen welche durch einen oder
mehrere Computer oder andere Geräte
ausgeführt
werden. Im Allgemeinen beinhalten Programmmodule Routinen, Programme,
Objekte, Komponenten, Datenstrukturen usw., welche bestimmte Aufgaben
ausführen
oder bestimmte abstrakte Datentypen implementieren. Typischerweise
kann die Funktionalität
des Programmmodules, wie gewünscht
in zahlreichen Ausführungsformen,
kombiniert oder verteilt werden.
-
Eine
Implementation dieser Module und Techniken kann über eine Form von computerlesbaren
Medien gespeichert oder übertragen
werden. Computerlesbare Medien können
jede verfügbare Medien
sein, auf welche durch einen Computer zugegriffen werden kann. Als
ein Beispiel, nicht als Beschränkung,
beinhalten computerlesbare Medien "Computerspeichermedien" und Kommunikationsmedien".
-
Computerspeichermedien
beinhalten flüchtige
und nichtflüchtige,
entnehmbare und nicht entnehmbare Medien, welche implementiert sind
in einer Methode oder Technologie für die Speicherung von Informationen
wie beispielsweise computerlesbare Instruktionen, Datenstrukturen,
Programmmodulen oder anderen Daten. Computerspeichermedien beinhalten,
aber sind nicht beschränkt
auf, RAM, ROM, EEPROM, Flash-Speicher und andere Speichertechnologien,
CD-ROM, Digital Versatile Disks (DVD) oder andere optische Speicher,
Magnetkassetten, magnetisches Band, Magnetscheibenspeicher oder
andere magnetische Speichervorrichtungen oder jedes andere Medium,
welches benutzt werden kann, um gewünschte Informationen zu speichern
und auf welche durch einen Computer zugegriffen werden kann.
-
Kommunikationsmedien
verkörpern
typischerweise computerlesbare Instruktionen, Datenstrukturen, Programmmodule
oder andere Daten in einem modulierten Datensignal sowie eine Trägerwelle
oder einen anderen Transportmechanismus. Kommunikationsmedien beinhalten
ebenso Informationsträgermedien.
Der Ausdruck „moduliertes
Datensignal" bedeutet
ein Signal, bei dem ein oder mehrere seiner Charakteristiken in
einer Weise gesetzt oder verändert
wird, so dass Informationen in das Signal codiert werden. Als ein
Beispiel, aber nicht als Beschränkung,
beinhalten Kommunikationsmedien auch Kabelmedien sowie ein Kabelnetzwerk
oder eine direkt verkabelte Verbindung oder ein kabelloses Medium
sowie ein akustisches, Funk-, infrarotes oder anderes kabelloses
Medium. Kombinationen der zuvor erwähnten Medien sind ebenso in
den Bereich der computerlesbaren Medien eingeschlossen.
-
8 zeigt
funktionale Komponenten einer Spielekonsole 600 im Detail
Die Spielekonsole 600 kann z. B. als ein Computergerät 102 der 1 benutzt
werden. Die Spielekonsole 600 hat eine zentrale Prozessoreinheit
(CPU) 601 und eine Speichersteuerungsvorrichtung 602,
welche den Prozessorzugriff auf zahlreiche Speichertypen beinhaltend
ein Flash-ROM (Read Only Memory) 604, ein RAM (Random Access
Memory) 606, ein Festplattenlaufwerk 608 und ein
tragbares Medienlaufwerk 609 ermöglicht. Die CPU 601 ist
ausgestattet mit einem Level 1 Cache 610 und einem Level
2 Cache 612 zum zeitweiligen Speichern von Daten und dadurch
zum Reduzieren der Zahl von Speicherzugriffzyklen, hierbei wird
die Berechnungsgeschwindigkeit und Durchsatz gesteigert.
-
Die
CPU 601, Speichersteuerungsvorrichtung 602 und
zahlreiche Speichergeräte
sind über
einen oder mehrere Busse verbunden, beinhaltend den seriellen oder
Parallel-Bus, einen Speicherbus, einen Peripheriebus und einen Prozessor-
oder lokalen Bus unter der Benutzung einer Vielzahl von Bus-Architekturen.
Als ein Beispiel beinhalten solche Architekturen einen Industry
Standard Architecture (ISA)-Bus, einen Micro Channel ARchitecture (MCA)-Bus,
einen Enhanced ISA (EISA)-Bus, einen Video Electronics Standards
Association (VESA)-Lokalbus und einen Peripheral Component Interconnects
(PCI)-Bus, auch bekannt als Mezzanine-Bus.
-
Als
eine Implementierung sind CPU 601, Speichersteuerungsvorrichtung 602,
ROM 604 und RAM 606 integriert in ein allgemeines
Modul 614. In dieser Implementierung ist ROM 604 konfiguriert
als ein Flash-ROM, welches mit der Speichersteuerung 602 über einen
PCI (Peripheral Component Interconnect)-Bus und einen ROM-Bus (beide
nicht gezeigt) verbunden ist. Das RAM 606 ist konfiguriert
als ein mehrfaches DDR SDRAM (Double Data Rate Synchronous Dynamic
RAM), welche unabhängig über getrennte
Busse (nicht gezeigt) durch die Speichersteuerungsvorrichtung 602 gesteuert
sind. Das Festplattenlaufwerk 608 und tragbare Medienlaufwerke 609 sind
mit der Speichersteuerungsvorrichtung über den PCI-Bus und einen ATA
(AT Attachment)-Bus 616 verbunden.
-
Eine
3D-Grafikprozessoreinheit 620 und ein Videocodierer 622 bilden
eine Videobearbeitungspipeline für
Hochgeschwindigkeits- und hoch auflösende Grafikverarbeitung. Daten
werden von der grafischen Prozessoreinheit 620 zu dem Videocodierer 622 über einen
digitalen Videobus (nicht gezeigt) transportiert. Eine Audioprozessoreinheit 624 und
ein Audiocodec (Coder/Decoder) 626 bilden eine entsprechende
Audiobearbeitungspipeline mit High Fidelity- und Stereobearbeitung.
Die Audiodaten werden zwischen der Audioprozessoreinheit 624 und dem
Audiocodec 626 über
eine Kommunikationsverbindung (nicht gezeigt) transportiert. Die
Video- und Audiobearbeitungspipelines geben Daten an einen A/V(Audio/Video)Port 628 für das Übertragen
an einen Fernseher oder eine andere Anzeigevorrichtung aus. In der
gezeigten Implementierung sind die Video- und Audiobearbeitungskomponenten 620 bis 628 auf
dem Modul 614 angebracht.
-
Ebenso
in dem Modul 614 implementiert ist eine USB-Host-Steuervorrichtung 630 und
eine Netzwerkschnittstelle 632. Die USB-Host-Steuervorrichtung 630 ist
an die CPU 601 und an die Speichersteuerung 602 über einen
Bus (z. B. PCI-Bus) gekoppelt und dient als ein Host für die Peripheriesteuerungseinheiten 636(1) bis 636(4).
Die Netzwerkschnittstelle 232 ermöglicht den Zugriff auf ein
Netzwerk (z. B. Internet, Heimnetzwerk usw.) und kann eins von einer
Vielzahl von kabelgebundenen oder kabellosen Schnitt stellenkomponenten
sein beinhaltend eine Ethernet-Karte, ein Modem, ein Bluetooth-Modul, ein Kabelmodem
und Ähnliches.
-
Die
Spielekonsole 600 hat zwei duale Steuerungsunterstützungsunterbaugruppen 640(1) und 640(2),
wobei jede Unterbaugruppe zwei Spielesteuerungen 636(1) bis 636(4) unterstützt. Eine
Frontplatten-Eingabe/-Ausgabe-Unterbaugruppe 642 unterstützt die
Funktionalität
eines Einschaltknopfes 631 und eines Medienauswurfknopfes 633 sowie
LEDs (Light Emitting Diodes, Leuchtdioden) oder andere Anzeiger,
welche an der äußeren Oberfläche der Spielekonsole
zu sehen sind. Die Unterbaugruppen 640(1), 640(2) und 642 sind
an das Modul 614 über ein
oder mehrere Kabelvorrichtungen 644 gekoppelt.
-
Acht
Speichereinheiten 634(1) bis 634(8) sind als verbindbar
mit den vier Steuerungen 636(1) bis 636(4) gezeigt,
d. h. zwei Speichereinheiten für jede
Steuerung. Jede Speichereinheit 634 bietet zusätzliche
Speicherkapazität,
auf welcher Spiele, Spieleparameter oder andere Daten gespeichert werden
können.
Wenn diese in eine Steuerungsvorrichtung eingeführt werden, kann auf die Speichereinheit 634 durch
die Speichersteuerung 602 zugegriffen werden.
-
Ein
System-Stromversorgungsmodul 650 bietet die elektrische
Versorgung der Komponenten der Spielekonsole 600. Ein Lüfter 652 kühlt die Schaltkreise
innerhalb der Spielekonsole 600.
-
Eine
Konsole-Benutzerschnittstellen-(UI)-Applikation 660 ist
auf der Festplatte 608 gespeichert. Wenn die Spielekonsole
eingeschaltet wird, werden zahlreiche Teile der Konsolenapplikation 660 in
das RAM 606 oder andere Speicher 610, 612 geladen
und durch die CPU 601 ausgeführt. Die Konsolenanwendungen 660 präsentieren
eine grafische Benutzerschnittstelle, die ein konsistentes Benutzererlebnis
bietet, wenn zu unterschiedlichen Medientypen, welche auf der Spielekonsole
verfügbar sind,
navigiert wird.
-
Die
Spielekonsole 600 implementiert eine Kryptografievorrichtung,
um allgemeine kryptografische Funktionen wie das Verschlüsseln, Entschlüsseln, Authentifizieren,
digitales Signieren, Hashing und Ähnliches durchzuführen. Die
Kryptografievorrichtung kann als ein Teil der CPU 601 ausgeführt sein
oder als Software, welche auf dem Festplattenlaufwerk 608 gespeichert
ist, welche auf der CPU ausgeführt
wird, so dass die CPU kon figuriert ist, die kryptografischen Funktionen
auszuführen.
Alternativ kann ein kryptografischer Prozessor oder Co-Prozessor,
welcher ausgestaltet ist, um die kryptografischen Funktionen durchzuführen, in
der Spielekonsole 600 beinhaltet sein.
-
Die
Spielekonsole 600 kann als ein "Stand alone"-System agieren durch das einfache Verbinden des
Systems mit einem Fernseher oder einer anderen Anzeige. In diesem "Stand alone"-Modus ermöglicht es
die Spielekonsole 600 ein oder mehreren Spielern Spiele
zu spielen, Filme zu sehen oder Musik zu hören. Jedoch mit der Integration
von Breitbandkonnektivität,
welche über
die Netzwerkschnittstelle 632 zur Verfügung steht, kann die Spielekonsole 600 des
Weiteren als ein Teilnehmer bei einem Online-Spiel, wie zuvor diskutiert,
betrieben werden.
-
Obwohl
die Beschreibung eine Sprache benutzt, welche für strukturelle Merkmale oder
methodologische Vorgänge
spezifisch ist, versteht es sich, dass die Erfindung wie in den
angefügten
Ansprüchen
definiert, nicht auf spezifische Merkmale oder Vorgänge, wie
zuvor beschrieben, beschränkt
ist. Vielmehr sind die spezifischen Merkmale und Vorgänge als
exemplarische Formen einer Implementierung der Erfindung offenbart.