-
Gebiet der
Erfindung
-
Die
Erfindung betrifft allgemein Computernetzwerke, und speziell betrifft
die Erfindung ein Identifizieren und Teilen von Information bezüglich Computervorrichtungen
und Zugreifen auf andere Computervorrichtungen in dem Computernetzwerk.
-
Hintergrund
der Erfindung
-
Das
World Wide Web ist eine Sammlung von Servern, die mit dem Internet
verbunden sind, das das Hypertext-Übertragungsprotokoll("HTTP") verwendet. HTTP
ist ein bekanntes Anwendungsprotokoll, das Benutzer mit einem Zugang
zu Dokumenten versorgt (z.B. Web-Seiten auf einer Web-Site), die
in einer Standard-Markierungs-Seitenbeschreibungssprache
geschrieben sind, die als Hypertext Markup Language ("HTML") bekannt ist. HTTP
wird zum Übertragen
von HTML-Web-Seiten zwischen einem entfernen Computer (z.B. einem
Server) und einem Anwender-Computer in einer Weise übertragen,
die für
eine Browser-Software (z.B. Netscape NavigatorTM,
die von der Netscape Communications Corporation of Mountain View,
Kalifornien, erhältlich
ist), die auf dem Anwender-Computer
ausgeführt
wird, verstanden wird.
-
Eine
Web-Site kann für
einen bestimmten Anwender eines Anwender-Computers (nachfolgend als "Client" oder „Klient" bezeichnet) kundenspezifisch
angepasst werden, wenn Information über den Client auf der Web-Site
verfügbar
ist. Falls eine Web-Site Zugang zu einer Aufzeichnung hat, die angibt,
dass ein Anwender ein Sportfan ist, dann kann die Web-Site speziell
eingerichtet werden, um Sportwerbung darzustellen, jedes Mal wenn
der Anwender auf die Web-Site zugreift. Eine solche Funktionalität kann Sportsponsoren
für die
Web-Site begeistern und konsequenterweise den Ertrag der Web-Site
erhöhen.
-
Dazu
verwendet das World Wide Web "Cookies", um Anwenderinformationen
für eine Web-Site
bereitzustellen. Wie dem Fachmann bekannt ist, ist ein Cookie ein
Datenblock, der an einen Anwender-Browser durch eine Web-Site übertragen wird.
Auf den Empfang hin speichert der Browser das Cookie in einer vorgegebenen
Weise, wie z.B. in einer Textdatei mit dem Namen "cookie.txt". Das Cookie wird
jedes Mal an die Web-Site zurückübermittelt,
wenn der Browser Zugang zu einer Web-Seite der Web-Site fordert.
-
Neben
anderen Dingen enthalten Cookies gewöhnlicherweise Daten, die den
Benutzer identifizieren, der einen Zugang anfordert. Solche Daten können, wenn
sie auf diese Weise verwendet werden, genutzt werden, um auf eine
Datenbank der Web-Site zuzugreifen, um relativ große Datenmengen
des Anwenders zu bestätigen.
Da das World Wide Web viele miteinander verbundene Server beinhaltet,
können
viele Datenbanken die gleiche Information bezüglich eines bestimmten Anwenders
aufweisen. Die Technik antwortete auf diese unnötige Informationsverdoppelung
durch Lokalisieren von Information auf gemeinsamen zentralen Computersystemen,
auf die zwei oder mehrere Web-Sites zugreifen können. Insbesondere kann eine
beliebige der vielen Web-Sites, wenn auf sie durch einen Anwender
zugegriffen wird, auf einen einzigen Datensatz auf einem gemeinsamen
zentralen Computersystem zugreifen, um gespeicherte Information
(falls vorhanden) bezüglich
des Anwenders zu erhalten. Auf diese Weise wird Information durch
jede Web-Site geteilt, die Zugriff auf das Registrationssystem hat.
-
Ein
bekanntes Verfahren zum Implementieren eines gemeinsamen zentralen
Computersystems, wie zuvor beschrieben, benötigt, dass die Web-Site des
zentralen Computersystems einem Anwender einen Cookie hinauflädt (upload),
während der
Anwender auf eine der Mitglieds-Web-Sites zugreift (d.h. während der
Anwender in der Mitglieds-Web-Site-Domäne ist). Ein solches System
ist das DOUBLE CLICK NETWORKTM-System, das
von DoubleClick Inc. aus New York, New York, verfügbar ist.
Dieser Typ des Systems ist jedoch ineffektiv, falls ein Browser
konfiguriert ist, aus keinen anderen Domänen als der Domäne zu empfangen,
auf die der Browser im Moment zugreift. Wenn beispielsweise ein
Browser, der konfiguriert ist, Cookies von nicht mehr als einer
Domäne
zu empfangen, auf eine Web-Site in der Domäne "site.com" zugreift, kann er keine Cookies von
einer Domäne "registration.com" empfangen. Die Verwendung
eines derart konfigurierten Browsers verhindert unerwünschterweise
die Funktionalität
eines solchen zentralisierten Anwender-Informationssystems.
-
Die
WO 96/42041 beschreibt ein Internet-Protokoll und ein Zugangssystem,
das einen Anwender, einen Steuerserver und einen Autorisationsserver
beinhaltet.
-
Zusammenfassung
der Erfindung
-
Gemäß der Erfindung
wird ein Verfahren gemäß Anspruch
1, eine Vorrichtung gemäß Anspruch 22
und ein Computerprogramm gemäß Anspruch
43 bereitgestellt.
-
In Übereinstimmung
mit einem Aspekt der Erfindung verwendet eine Vorrichtung zum Identifizieren
eines Client, der auf eine erste Netzwerkstelle zugreift, eine Steuerstelle
zum Erhalten von Information bezüglich
des Client. Dazu wird ansprechend auf ein Erhalten einer Anfrage
des Client zum Zugreifen auf die erste Netzwerkstelle bestimmt,
ob der Client einen Datenblock der ersten Stelle beinhaltet. Falls bestimmt
wird, dass der Client nicht den Datenblock der ersten Stelle beinhaltet,
dann wird die Steuerstelle gesteuert, um einen Datenblock der Steuerstelle zu
erzeugen, der sowohl Identifikationsdaten der Steuerstelle als auch
einen Identifikator des Client oder einen Client-Identifikator aufweist. Der Datenblock
der Steuerstelle wird dann von der Steuerstelle an den Client übertragen.
Auf ähnliche
Weise wird der Client-Identifikator von der Steuerstelle an die erste
Netzwerkstelle übermittelt.
Nach Erhalt des Client-Identifikators
durch die erste Netzwerkstelle wird die erste Netzwerkstelle zum Übertragen
des Datenblocks der ersten Stelle an den Client gesteuert. In bevorzugten
Ausführungsformen
weist der Datenblock der ersten Stelle sowohl den Client-Identifikator als
auch das Identifikationsdatum der ersten Stelle auf.
-
In
manchen Ausführungsformen
ist die erste Netzwerkstelle eine World Wide Web-Site in einer ersten
Netzwerk-Site-Domäne,
der Client beinhaltet einen Browser, und der Datenblock der ersten
Stelle ist ein Cookie. Der Client kann an die erste Netzwerkstellendomäne weitergeleitet
werden, um den Cookie von der ersten Netzwerkstelle zu empfangen.
In anderen Ausführungsformen
ist die Steuerstelle eine World Wide Web-Site in einer Steuerstellendomäne, und
der Datenblock der Steuerstelle ist ein Cookie. Ähnlich wie beim Empfang des
Cookie von der ersten Netzwerkstelle kann der Client an die Client-Stellendomäne weitergeleitet
werden, um den Cookie von der Steuerstelle zu empfangen. Der Client-Identifikator
kann eine Internet-Protokolladresse ("IP-Adresse") beinhalten.
-
In
einem anderen Aspekt der Erfindung wird, falls bestimmt wird, dass
der Client den Datenblock der ersten Stelle beinhaltet, eine Kopie
des Datenblocks der ersten Stelle von dem Client bezo gen werden.
Der Client-Identifikator kann dann aus dem Datenblock der ersten
Stelle extrahiert werden und von der ersten Netzwerkstelle an die
Steuerstelle übertragen
werden. Der Client-Identifikator kann dann verwendet werden, um
Client-Information
von einem Speichermedium, das mit der Steuerstelle assoziiert ist,
zu erhalten. Nachdem die Client-Information erhalten ist, kann sie
von der Steuerstelle an die erste Netzwerkstelle übertragen
werden.
-
In
manchen Ausführungsformen
der Erfindung ist die erste Netzwerkstelle in einer ersten Domäne und die
Steuerstelle in einer Steuerdomäne.
In dieser Ausführungsform
ist die erste Domäne über mindestens
zwei Server verteilt. Zusätzlich
ist die Steuerstelle auf einem Server implementiert, der auch einen
Teil der verteilten ersten Netzwerkstelle beinhaltet. Der Steuerdatenblock
wird übertragen, wenn
der Client in der Steuerdomäne
ist, und der Datenblock der ersten Stelle wird übertragen, wenn der Client
in der ersten Domäne
ist.
-
In
weiteren Ausführungsformen
der Erfindung wird, falls bestimmt ist, dass der Client den Datenblock
der ersten Stelle beinhaltet, die erste Netzwerkstelle zum Beziehen
einer Kopie des Datenblocks der ersten Stelle von dem Client gesteuert.
In dieser Ausführungsform
beinhaltet jedoch der Datenblock der ersten Stelle selbst die Client-Information. Der
Client-Identifikator und Client-Identifikator können dann aus dem Datenblock
der ersten Stelle extrahiert werden.
-
In
einem anderen Aspekt der Erfindung ist die zweite Netzwerkstelle
in Kommunikation mit dem Netzwerk und empfängt eine Zugriffsanfrage von dem
Client. Ansprechend auf die Zugangsanfrage wird bestimmt, ob der
Client einen Datenblock der zweiten Stelle beinhaltet. Falls bestimmt
wird, dass der Client den Da tenblock der zweiten Stelle nicht beinhaltet,
wird eine Botschaft mit dem Client-Identifikator an die Steuerstelle übertragen.
Die Steuerstelle wird dann zum Verwenden des Identifikators zum
Lokalisieren von Client-Information gesteuert. Die lokalisierte
Client-Information werden dann von der Steuerstelle an die zweite
Netzwerkstelle übertragen.
-
In Übereinstimmung
mit einem anderen Aspekt der Erfindung verwendet eine Vorrichtung
zum Identifizieren eines Clients, der auf eine erste Netzwerkstelle
zugreift, ebenso eine Steuerstelle, um Information bezüglich des
Clients zu erhalten. In diesem Aspekt der Erfindung generiert die
Vorrichtung jedoch Botschaften, die, wenn sie durch die erste Netzwerkstelle
empfangen werden, gewisse Prozesse aktivieren, um durch die erste
Netzwerkstelle ausgeführt
zu werden. Dazu empfängt
die Steuerstelle eine erste Botschaft von der ersten Netzwerkstelle, die
angibt, dass der Client nicht den Datenblock der ersten Stelle beinhaltet.
Nach einem Empfang erzeugt die Steuerstelle einen Datenblock der
Steuerstelle, der Identifikationsdaten der Steuerstelle und einen
Client-Identifikator beinhaltet. Der Datenblock der Steuerstelle
kann dann von der Steuerstelle an den Client übertragen werden. Eine zweite
Botschaft kann zum Übertragen
von der Steuerstelle an die erste Netzwerkstelle generiert werden.
In bevorzugten Ausführungsformen
beinhaltet die zweite Botschaft den Client-Identifikator und Befehle
zum Ausführen der
ersten Netzwerkstelle. Die Befehle werden derart ausgewählt, dass,
nachdem die Befehle durch die erste Netzwerkstelle empfangen werden,
das erste Netzwerk ansprechend den Datenblock der ersten Stelle
an den Client überträgt. Der
Datenblock der ersten Stelle weist vorzugsweise den Client-Identifikator
und die Identifikationsdaten der ersten Stelle auf. In solchen Ausführungsformen
beinhalten die Befehle Daten, die als Eingabe für eine Funktion der ersten
Netzwerkstelle verwendet werden.
-
Auf ähnliche
Weise wie andere Aspekte der Erfindung identifiziert noch ein weiterer
Aspekt der Erfindung einen Client, der unter Verwendung einer Steuerstelle
auf eine erste Netzwerkstelle zugreift, um Information bezüglich des
Clients zu erhalten. Dieser Aspekt jedoch generiert Botschaften,
die, wenn sie durch die Steuerstelle empfangen werden, gewisse Prozesse
aktivieren, um durch die Steuerstelle ausgeführt zu werden. Dazu wird eine
Anfrage von dem Client beim Zugreifen auf die erste Netzwerkstelle
durch die erste Netzwerkstelle empfangen. Ansprechend auf die Anfrage
wird bestimmt, ob der Client einen Datenblock der ersten Stelle
beinhaltet. Falls bestimmt wird, dass der Client nicht den Datenblock
der ersten Stelle beinhaltet, wird eine anfängliche Botschaft generiert,
die Steuerbefehle zum Ausführen
durch die Steuerstelle beinhaltet. Die Steuerbefehle können so
ausgewählt
sein, dass, wenn sie durch die Steuerstelle ausgeführt werden, die
Steuerstelle zuerst einen Datenblock der Steuerstelle erzeugt, der
sowohl Identifikationsdaten der Steuerstelle als auch einen Client-Identifikator
aufweist, und dann, sobald der Datenblock der Steuerstelle erzeugt
ist, diesen an den Client weiterleitet. Der Client-Identifikator
wird dann von der Steuerstelle mittels des Datenblocks der Steuerstelle
empfangen. Nach einem Empfang des Client-Identifikators wird der
Datenblock der ersten Stelle an den Client übertragen. In bevorzugten Ausführungsformen weist
der Datenblock der ersten Stelle den Client-Identifikator und Identifikationsdaten
der ersten Stelle auf.
-
Bevorzugte
Ausführungsformen
der Erfindung werden als Computerprogrammprodukt implementiert,
das ein computerverwendbares Medium mit einem computerlesbaren Programmcode
darauf aufweist. Der computerlesbare Code kann durch das Computersystem
in Über einstimmung
mit einem herkömmlichen
Prozess gelesen und verwendet werden.
-
Kurzbeschreibung
der Zeichnungen
-
Die
vorhergehenden und anderen Aufgaben und Vorteile der Erfindung werden
durch deren nachfolgende weitere Beschreibung mit Bezug auf die
begleitenden Zeichnungen stärker
herausgehoben, wobei:
-
1 schematisch
die Systemarchitektur eines exemplarischen Computersystems zeigt,
auf welchem die bevorzugten Ausführungsformen
der Erfindung implementiert werden können;
-
2 schematisch
eine Netzwerkanordnung zeigt, die mit den bevorzugten Ausführungsformen der
Erfindung verwendet werden kann;
-
3 allgemein
die Schritte zeigt, die in bevorzugten Ausführungsformen verwendet werden, um
Information bezüglich
auf eine oder mehrere Netzwerkstellen zugreifender Clients zu teilen;
-
4 ein
Zeitdiagramm ist, das allgemein die Schritte aus 1 in
der Ausführungsform
zeigt, in welcher die erste Netzwerkstelle über einen ersten Netzwerkstellenserver
und einen Steuerstellenserver verteilt ist;
-
5 die
Schritte zeigt, die in bevorzugten Ausführungsformen verwendet werden,
wenn auf eine zweite Netzwerkstelle durch einen Client zugegriffen
wird, der vorausgehend den Prozess aus 3 abgeschlossen
hat;
-
6 allgemein
die Schritte zeigt, die in einer Ausführungsform der Erfindung ausgeführt werden,
um Client-Information von der Steuerstelle zu empfangen und an eine
anfragende Netzwerkstelle zu übertragen.
-
Detaillierte
Beschreibung bevorzugter Ausführungsformen
-
1 zeigt
die Systemarchitektur eines exemplarisches Computersystems 100,
wie einen IBM THINKPAD 701®-Computer (vertrieben
durch International Business Machines aus Armonk, New York), auf
welchem die beschriebenen Verfahren und die Vorrichtung zum Identifizieren
von Clients, die auf Netzwerkvorrichtungen zugreifen, implementiert
werden können.
Das exemplarische Computersystem von 1 wird nur
für beschreibende
Zwecke erläutert
und soll nicht als Beschränkung
für die
Erfindung betrachtet werden. Obwohl die Beschreibung sich auf Ausdrücke bezieht,
die allgemein in Beschreibungen bestimmter Computersysteme verwendet
werden, ist das beschriebene Konzept in gleicher Weise auf andere
Computersysteme anwendbar, einschließlich Systeme, die Architekturen
aufweisen, die zu der in 1 gezeigten nicht ähnlich sind.
-
Der
Computer 100 beinhaltet eine zentrale Prozessoreinheit
(CPU) 105, die einen herkömmlichen Mikroprozessor, einen
Direktzugriffsspeicher (RAM) 110 zum zwischenzeitlichen
Speichern von Information und einen Nur-Lese-Speicher (ROM) 115 für eine permanente
Speicherung von nur lesbarer Information aufweist. Eine Speichersteuerung 100 ist zum
Steuern des Systems RAM 110 bereitgestellt. Eine Bussteuerung 125 ist
zum Steuern eines Busses 130 bereitgestellt, und eine Interrupt-Steuerung 135 ist
zum Empfangen und Verarbeiten vielfältiger Interrupt-Signale von
anderen Systemkomponenten bereitgestellt.
-
Ein
Massenspeicher kann durch nichtflüchtige Speichermedien bereitgestellt
werden, wie eine Diskette 142, eine digitale versa tile
Diskette (nicht dargestellt), eine CD-ROM 147 oder eine
Festplatte 152. Daten und Software können mit dem Computersystem 100 mittels
entfernbarer Medien, wie der Diskette 142 und der CD-ROM 147,
ausgetauscht werden. Die Diskette 142 ist in ein Diskettenlaufwerk 141 einschiebbar,
welches eine Diskettenlaufwerksteuerung 140 beinhaltet,
um mit dem Bus 130 zu kommunizieren. In ähnlicher
Weise ist die CD-ROM 147 in eine CD-ROM-Leser 146 einschiebbar,
welcher einen CD-ROM-Laufwerksteuerung 145 zum Kommunizieren
mit dem Bus 130 verwendet. Abschließend ist die Festplatte 152 Teil
eines festen Plattenlaufwerks 151, das eine Festplattenlaufwerksteuerung 150 zum
Kommunizieren mit dem Bus 130 beinhaltet.
-
Eine
Benutzereingabe an den Computer 100 kann durch eine Vielzahl
von Vorrichtungen bereitgestellt werden. Beispielsweise können eine
Tastatur 156 und eine Maus 157 mit dem Bus 330 durch
eine Tastatur oder Maussteuerung 155 verbunden sein. Ein
Audiowandler 196, der als Mikrofon und Lautsprecher dienen
kann, ist mit dem Bus 130 über eine Audiosteuerung 197 verbunden.
Es sollte für
einen Fachmann offensichtlich sein, dass andere Eingabevorrichtungen,
wie ein Stift und/oder Tablett und ein Mikrofon zur Spracheingabe,
mit dem Computer 100 durch einen Bus 130 und eine
geeignete Steuerung verbunden sein kann. Eine direkte Speicherzugriffssteuerung
(DMA) 160 ist zum Durchführen eines direkten Speicherzugriffs
auf die System-RAM 110 bereitgestellt. Eine graphische
Darstellung kann durch eine Videosteuerung 165 generiert
werden, die einen Graphikbeschleuniger 167 und eine Anzeigenvorrichtung 170 steuert.
-
Ein
Netzwerkadapter 190 kann ebenfalls beinhaltet sein, um
das Computersystem 100 mit einem Netzwerk 195 über einen
Netzwerkbus 191 zu verbinden. Das Netzwerk 195,
das ein lokales Netzwerk (LAN), ein Wide-Area-Netzwerk (WAN) oder
das Internet sein kann, kann Kommunikationsleitungen für allgemeine
Zwecke verwenden, die eine Mehrzahl von Netzwerkvorrichtungen verbinden.
-
Das
Computersystem 100 wird vorzugsweise durch eine Betriebssystem-Software
gesteuert und koordiniert, wie z.B. durch das WINDOWS NT®-Betriebssystem
(verfügbar
von Microsoft Corporation aus Redmond, Washington). Neben anderen Computersystem-Steuerfunktionen
steuert das Betriebssystem die Zuordnung von Systemressourcen und
führt Anwendungen,
wie eine Prozesszeitsteuerung, Speichermanagement, Netzwerkverbindungen und
Eingabe-/Ausgabedienste aus.
-
2 zeigt
schematisch eine Netzwerkanordnung, die mit den bevorzugten Ausführungsformen
der Erfindung verwendet werden kann. Insbesondere ist eine Mehrzahl
von Netzwerkstellen (nachfolgend als erste Netzwerkstelle 200,
zweite Netzwerkstelle 202 und N-te Netzwerkstelle 204 bezeichnet)
mit einem Anwender-Computersystem ("Client 206'')
und einer Netzwerkstelle ("Netzwerkstelle 207'') über das Netzwerk 195 (z.B.
das Internet) in Kommunikation. Die Steuerstelle 207 beinhaltet
vorzugsweise einen Steuerserver 214 mit nichtflüchtigem
Speicher zum Erhalten einer Datenbank 216, die Information
bezüglich
des Client 206 und jeder der Netzwerkstellen 200-204 aufweist.
In ähnlicher
Weise beinhaltet jede der Netzwerkstellen 200-204 vorzugsweise
entsprechende Netzwerkstellenserver.
-
In
bevorzugten Ausführungsformen
kommunizieren die Netzwerkstellen 200-204 und
der Client 206 über
das World Wide Web (das "Web"). Entsprechend kann
der Client 206 ein Computersystem sein, das eine Browser-Software
(z.B. Netscape NavigatorTM, nachfolgend "Browser 210'') aufweist, während jede der Netzwerkstellen
eine Web-Site aufweist, die eine gemeinsame Unterdomäne teilen. Beispielsweise
definiert die erste Netzwerkstelle 200 eine erste Domäne 200,
die zweite Netzwerkstelle 202 definiert eine zweite Domäne 202 und
die N-te Netzwerkstelle 204 definiert eine N-te Domäne 204. In Übereinstimmung
mit bevorzugten Ausführungsformen
der Erfindung kann jede Netzwerkstelle über mehr als einen (Hardware-)Server
verteilt sein. Beispielsweise ist die erste Netzwerkstelle 200 vorzugsweise
auf einem ersten Server 212 und dem Steuerserver 214 angeordnet.
In alternativen Ausführungsformen
ist jede Netzwerkstelle auf einem einzigen Server angeordnet. Aus
Gründen
der Klarheit werden nachfolgend jede Domäne und ihre entsprechenden
Netzwerkstellen durch dasselbe Bezugszeichen bezeichnet. Dementsprechend
werden beispielhaft die erste Netzwerkstelle und die erste Domäne beide mit
dem Bezugszeichen 200 bezeichnet.
-
3 zeigt
allgemein die Schritte, die durch bevorzugte Ausführungsformen
verwendet werden, um Information bezüglich der Clients 206,
die auf eine oder mehrere der Netzwerkstellen 200-204 zugreifen,
zu teilen. Dieser Prozess ermöglicht
es jeder Netzwerkstelle, auf Information bezüglich des Client 206 ("Client-Information") aus der Datenbank 216 (auf
dem Steuerserver 214) in der Weise zuzugreifen, die dem
Benutzer des Client 206 nicht einfach auffällt. Jeder
Server kann Information auf vielfältige Weise verwenden, z.B.
um eine benutzerspezifische Begrüßung mit
dem Benutzernamen auf einer Web-Seite anzuzeigen oder Werbungen
für Produkte oder
Dienste anzuzeigen, von denen bekannt ist, dass sie die Interessen
des Benutzers betreffen.
-
Der
Prozess beginnt mit Schritt 300, in welchem der Client 206 Zugang
zu der ersten Netzwerkstelle 200 fordert. Obwohl die erste
Netzwerkstelle 200 diskutiert wird, können die Prinzipien bezüglich dieses
Prozesse auch auf eine Anfrage angewandt werden, die von anderen
Netzwerkstellen empfangen werden. Sobald die Anfrage durch die erste Netzwerkstelle 200 empfangen
wird, führt der
Prozess mit dem Schritt 302 weiter, in welchem die erste Netzwerkstelle 200 mit
dem Client 206 auf eine herkömmliche Weise interagiert,
um zu bestimmen, ob der Browser 210 einen Cookie der ersten
Stelle (d.h. einen Datenblock der ersten Netzwerkstelle) von der ersten
Netzwerkstelle 200 beinhaltet. Wie bekannt, beinhaltet
der Browser 210 einen Cookie der ersten Stelle, falls der
Browser 210 zu einem früheren
Zeitpunkt auf die erste Stelle zugriff und die erste Stelle einen
Cookie an den Browser 210 für nachfolgendes Wiedererlangen
durch die erste Netzwerkstelle 200 übertrug (a/k/a "dropped", abgelegt).
-
Falls
mit Schritt 302 bestimmt wird, dass der Browser 210 einen
Cookie der ersten Stelle beinhaltet, setzt sich der Prozess mit
Schritt 304 fort, in welchem ein Client-Identifikator aus
dem Cookie der ersten Stelle extrahiert wird. Der Client-Identifikator kann
ein beliebiges Indiz, eine Zeichenfolge oder andere identifizierende
Daten sein, die eindeutig den Client 206 identifizieren.
Basierend auf dem Client-Identifikator kann Information über den
Client 206 aus der Datenbank 216 bestätigt werden
(nachfolgend mit Bezug auf die Schritte 318 und 6 näher erläutert).
-
Falls
jedoch mit Schritt 302 bestimmt wird, dass der Browser 210 nicht
einen Cookie der ersten Stelle beinhaltet, setzt sich der Prozess
mit Schritt 306 fort, in welchem der Browser 210 von
der ersten Netzwerkstelle 200 an die Steuerstelle 207 (d.h.
von der ersten Domäne 200 zu
der Steuerstellendomäne 207)
umgeleitet wird (auch als "relocated" bezeichnet). Dies
kann durch Übertragen
einer ersten Botschaft von der ersten Netzwerkstelle 200 an
den Client 206 durchgeführt
werden, mit einem Umleitungsbefehl, einem "find_user"-Befehl, der die Steuerstelle 207 zum
Finden von Information bezüglich
des Client 206 instruiert, wobei transiente Verifikationsidentifikatoren
(Passwörter)
zwischen dem ersten Server 212 und dem Steuerserver 214 ausgetauscht
werden, und Information anzeigend, dass die Befehle von der ersten
Netzwerkstelle 200 ausgegeben wurden.
-
Ein
Empfang der ersten Botschaft durch den Client 206 veranlasst
erst den Client 206, die Steuerstelle 207 umzuleiten
(d.h. die Steuerdomäne),
und dann, wenn er in der Steuerstellendomäne 207 ist, den find_user-Befehl
und die Information der ersten Netzwerkstelle an die Steuerstelle 207 zu
richten. Nach einem Empfang des find_user-Befehls und der Information
der ersten Netzwerkstelle führt
die Steuerstelle 207 in Antwort eine Mehrzahl von Schritten (auf
Seite der ersten Netzwerkstelle 200) aus, die ferner bevorzugte
Ausführungsformen
der Erfindung implementiert. Einer dieser Schritte veranlasst die Steuerstelle 207,
ansprechend mit dem Client 206 in einer herkömmlichen
Weise zu interagieren, um zu bestimmen, ob der Browser 210 einen
Cookie der Steuerstelle beinhaltet (d.h. einen Datenblock der Steuerstelle)
von der Steuerstelle 207 (Schritt 308).
-
Falls
mit Schritt 308 bestimmt wird, dass der Client 206 einen
Cookie der Steuerstelle beinhaltet, dann wird der Client-Identifikator aus
dem Cookie der Steuerstelle extrahiert. Das Verfahren setzt sich
mit Schritt 310 fort, in welchem der Client 206 an
die erste Stellendomäne
umgeleitet wird und der Client-Identifikator
durch den Client-Browser 210 zum Übertragen an die erste Netzwerkstelle 200 abgelegt wird.
Wie nachfolgend erläutert,
wird der Client-Identifikator vorzugsweise über eine direkte Internet-Verbindung
zwischen der Steuerstelle 207 und der ersten Netzwerkstelle 200 übertragen.
Obwohl es nicht notwendig ist, kann die Verbindung mittels herkömmlicher
Verschlüsselungstechniken
verschlüsselt
werden, um die Sicherheit der übertragenen
Daten sicherzustellen und die Identität des Client 206 zu schützen, falls
die Information durch die Umleitung übertragen wird. Ein neuer Cookie
der Steuerstelle, der im Wesentlichen identisch zu dem Cookie der Steuerstelle
auf dem Browser 210 ist, kann an den Client-Browser 210 übertragen
und gespeichert werden ("dropped", abgelegt), falls
der Cookie der lokalisierten Steuerstelle nicht ein permanenter
Cookie war.
-
In
bevorzugten Ausführungsformen
wird der Client 206 an die Web-Site in der ersten Domäne 200 umgeleitet
(bei Schritt 310), der von dem Steuerserver 214 geliefert
wird. Dazu überträgt die Steuerstelle 207 eine
zweite Botschaft an den Client 206 mit einem Client-Identifikator,
der den Client 206 identifiziert, andere transiente eindeutige
Identifikatoren (d.h. Passwörter),
die zwischen der ersten Stelle 212 und der Steuerstelle 214 aus
Sicherheitsgründen ausgehandelt
werden, und die Adresse einer Web-Site in der ersten Domäne 200,
die von dem Steuerserver 214 geliefert wird. In dem Beispiel,
dass die erste Netzwerkstelle 200 in einer Domäne "first.com" liegt, richtet die
Steuerstelle 207 vorzugsweise den Client 206 an
eine Stelle "control_server.first.com", welche in bevorzugten Ausführungsformen
von dem Steuerserver 214 geliefert wird. Diese Web-Site
beinhaltet vorzugsweise zusätzliche
Funktionalität,
um einen Cookie der ersten Netzwerkstelle auf dem Browser 210 abzulegen (Schritt 316,
nachfolgend detaillierter erläutert).
Neben anderen Gründen
wird die Web-Site vorzugsweise von dem Steuerserver 214 geliefert,
so dass der Steuerserver 214 den Prozess des Ablegens eines Cookies
eines ersten Netzwerkes auf dem Client 206 steuern kann.
Zusätzlich
vereinfacht ein Implementieren der meisten Funktionalitäten auf
dem Steuerserver 214 einen Systemaufbau und Betrieb der Netzwerkstellen 200-204.
Beispielsweise können Software-Fehlfunktionen
(d.h. "bugs"), die sich typischerweise
entwickeln, einfacher durch einen Service Provider beseitigt werden,
falls die Software auf einen Server geladen ist, auf den der Service
Provider zugreifen kann. Zusätzlich
mi nimiert diese Anordnung wesentlich die Software-Komplexität auf den Servern 200-204.
In alternativen Ausführungsformen wird
der Client 206 an die Web-Site (in der ersten Stellendomäne) umgeleitet,
die von dem ersten Server 212 geliefert wird.
-
Falls
in dem Schritt 308 bestätigt
wird, dass der Client 206 nicht ein Cookie der Steuerstelle
beinhaltet, setzt sich das Verfahren mit Schritt 312 weiter, in
welchem der Cookie auf dem Client 206 durch die Steuerstelle 207 in Übereinstimmung
mit herkömmlichen
Verfahren abgelegt wird. Der Cookie der Steuerstelle beinhaltet
vorzugsweise einen Client-Identifikator, der den Client 206 identifiziert,
und eine Steuerstelleninformation, die angibt, dass der Steuer-Cookie
von der Steuerstelle 207 abgelegt wurde. Der Client-Identifikator
kann durch die Steuerstelle 207 generiert werden, nachdem
bestimmt ist, dass der Client 206 nicht einen Cookie der
Steuerstelle beinhaltet. Eine Mehrzahl von Client-Aufzeichnungen können in
der Datenbank 216 initialisiert werden und auf Anfrage
nach dem Client-Identifikator
abgerufen werden. Die Aufzeichnungen können beliebige Information über den
Client 206 enthalten, die durch die Steuerstelle 207 bestätigt wird.
-
Sobald
der Cookie der Steuerstelle abgelegt wird und der Client-Identifikator generiert
wird, kann der Client 206 mit der Steuerstelle 207 registriert
werden (Schritt 314). Dieser Schritt wird jedoch entweder vor,
während
oder nach dem Schritt 312 durchgeführt. Der Client 206 kann
durch Übertragen
von Information über
ein herkömmliches
Template registriert werden, das mit einer herkömmlichen Gateway-Interface-Sprache
("CGI scripts") generiert wird. Beispielsweise
kann der Benutzer des Browsers 210 Felder eines Formulars
ausfüllen,
die nach Benutzernamen, Adresse, Hobbys, etc. fragen. Information, die
auf diese Weise erhalten wird, kann in den Datenbankaufzeichnungen
gespeichert werden, die für
den Client 206 erzeugt wurden. Beliebige andere zusätzliche
Daten, die durch die Steuerstelle 207 erhalten werden können, können in
den Aufzeichnungen gespeichert werden. Beispielsweise kann der Browser 210 und
der Versionstyp des Client 206 oder die Hintergrundfarbe
der Anzeige des Client in den Aufzeichnungen des Client gespeichert
werden.
-
Das
Verfahren setzt sich dann mit Schritt 310 fort (wie zuvor
beschrieben), in welchem der Client 206 an die erste Stellendomäne umgeleitet
wird (entweder an den Steuerserver 214 oder den ersten
Server 212). Sobald der Prozess in der ersten Stellendomäne ist,
setzt er sich mit Schritt 316 fort, in welchem ein Cookie
der ersten Stelle generiert und auf dem Client-Browser 210 abgelegt
wird. Wie oben beschrieben, wird der Cookie der ersten Stelle vorzugsweise
durch den Steuerstellenserver generiert. Der Cookie der ersten Stelle
kann den Client-Identifikator und
einen Identifikator der ersten Stelle beinhalten.
-
Das
Verfahren setzt sich mit Schritt 318 fort, in welchem Information über den
Client 206 zwischen dem Steuerserver 214 und der
ersten Netzwerkstelle 200 geteilt wird. In bevorzugten
Ausführungsformen wird
diese Information über
eine verschlüsselte
Internet-Verbindung zwischen der Steuerstelle 207 und der
ersten Netzwerkstelle 200 übertragen. In anderen Ausführungsformen,
in welchen die Steuerstelle 207 und die erste Netzwerkstelle 200 über Nicht-Internet-Einrichtungen
verbunden sind, wie z.B. auf dem gleichen Server, in einem lokalen
Netzwerk oder über
eine direkte Modem-zu-Modem-Verbindung, kann diese Information direkt
zwischen den Stellen in einer herkömmlichen Weise ohne eine Internet-Verbindung übertragen
werden. Neben der Information, die übertragen werden kann, wird
auf die Information in der Datenbank 216 (z.B. dem Benutzernamen
und Hobbys) über
den Client- Identifikator
zugegriffen und die Daten durch die erste Netzwerkstelle 200 bezüglich der
Verwendung der ersten Netzwerkstelle durch den Client erhalten.
Beispielsweise kann die letztere Information die Web-Seiten, auf
die der Client 206 zugegriffen hat, während er auf die erste Netzwerkstelle 200 zugriff,
die Länge
der Zeit, die er auf den Web-Seiten verbrachte, und Antworten auf
diverse Fragen, die durch die erste Netzwerkstelle 200 gestellt
werden, beinhalten. Nach einem Empfang von der ersten Netzwerkstelle 200 kann
die Steuerstelle 207 auf die Information in den Aufzeichnungen über den
Client 206 in der Datenbank 216 zugreifen und abspeichern.
Es sollte hervorgehoben werden, dass dennoch dieser Informationstransfer
vorzugsweise bidirektional ist, d.h. Information an und von beiden Seiten 200 und 207 übertragen
wird. Siehe 6 für eine Zusammenfassung der
durch eine Ausführungsform
der Erfindung verwendeten Schritte, um Daten von der Steuerstelle 207 an
eine anfragende Netzwerkstelle zu übertragen.
-
Das
Verfahren setzt sich mit Schritt 320 fort, in welchem der
Client 206 von dem Teil der ersten Netzwerkstelle 200 umgeleitet
wird, das den Cookie der ersten Netzwerkstelle (z.B. control_server.first.com)
an einen Anfangspunkt in der ersten Web-Seite überträgt und abspeichert. Dieser
Anfangspunkt ist vorzugsweise die Web-Site, für welche der Client 206 ursprünglich Zugriff
forderte. Dies wird vorzugsweise durch den Steuerserver 214 durchgeführt, wobei
eine dritte Botschaft an den Client 206 mit Befehlen generiert
und übertragen
wird, die den Client 206 zum Umleiten des Anfangspunkts der
ersten Stelle veranlasst. Wie zuvor vorgeschlagen, kann die Information
immer noch zwischen der Steuerstelle 207 und der ersten
Netzwerkstelle 200 während
und nach der Zeit geteilt werden, für die der Client 206 an
den Anfangspunkt der ersten Stelle umgeleitet wird.
-
In
dem in 3 gezeigten Verfahren werden Cookies von jeder
der entsprechenden Netzwerkstellen nur übertragen und abgespeichert,
wenn der Browser 210 in einer solchen entsprechenden Domäne ist.
Beispielsweise wird der Cookie der Steuerstelle von der Steuerstellendomäne 207 übertragen
und abgespeichert, aber nicht von der ersten Domäne 200. In ähnlicher
Weise wird der erste Cookie von der ersten Domäne 200 abgelegt, aber
nicht von der Steuerdomäne.
Eine Ausführung
des Verfahrens, das in 3 gezeigt ist, ermöglicht es
jeder der Web-Sites, Cookies auf dem Browser 210 abzulegen,
sogar falls der Browser 210 eingerichtet ist, keine Cookies
von anderen Domänen
als der Domäne zu
empfangen, auf die der Browser 210 im Moment zugreift.
Eine Information kann daher effizient und verlässlich über vielfältige Netzwerkstellen in verschiedenen
Domänen über die
Steuerstelle 207 verteilt werden. Das Verfahren nach 3 kann
somit ausgeführt
werden, um Information bezüglich
einer Mehrzahl von Clients 206 zu enthalten, die auf eine beliebige
der Netzwerkstellen zugreift, die die veröffentlichten Informationen
sammeln und Funktionalität teilen.
-
Unter
zu erwartenden Betriebsbedingungen sollte die Zeit, die zum Ausführen der
Schritte zwischen dem Schritt 300 (Empfangen der Zugriffsanfrage)
und dem Schritt 320 (Umleiten an den Anfangspunkt der ersten
Stelle) erforderlich ist, ziemlich kurz sein, z.B. weniger als eine
Sekunde. Dementsprechend ist das Verfahren vorzugsweise für den Benutzer
des Client 206, der in bevorzugten Ausführungsformen kein Anzeichen
dafür sieht,
dass Client-Information gesammelt wird, nicht einfach erkennbar.
-
4 ist
ein Zeitdiagramm, das allgemein viele der in 3 zusammengefassten
Schritte der Ausführungsform
zeigt, in welcher die erste Netzwerkstelle 200 über den
ersten Server 212 und den Steuerserver 214 verteilt
ist. Wie aus einer reinen Durchsicht der Figur entnommen werden
kann, bildet der Client 206 zuerst eine Zugriffsanfrage
und wird an den Steuerstellenserver über die erste Botschaft umgeleitet.
Sobald er auf dem Steuerstellenserver ist, wird bestimmt, ob der
Cookie der Steuerstelle in dem Browser 210 enthalten ist.
Falls der Cookie der Steuerstelle nicht in dem Client 206 enthalten
ist, dann wird der Cookie der Steuerstelle auf dem Client 206 abgelegt.
Falls der Cookie der Steuerstelle auf dem Client 206 beinhaltet
ist, wird die zweite Botschaft an den Client 206 gerichtet,
um die erste Domäne 200 an
den Steuerserver 214 umzuleiten, so dass die erste Netzwerkstelle 200 ihren
Cookie auf dem Client 206 ablegen kann. Nachdem der Cookie der
ersten Stelle abgelegt ist, wird die dritte Botschaft an den Client 206 gesendet,
die den Client 206 veranlasst, einen Anfangspunkt in der
ersten Domäne 200 auf
den Server der ersten Stelle umzuleiten. In dem in 4 zuvor
gezeigten Beispiel hat die erste Netzwerkstelle 200 sich
des Benutzernamens versichert (in diesem Beispiel "Bruce") und fügt das Indiz "Welcome Bruce" in den HTML-Code
der zugegriffenen Web-Seite ein. Es sollte festgehalten werden, dass,
obwohl manche Schritte des Verfahrens, das in 3 gezeigt
ist, in 4 ausgelassen sind, diese Schritte
immer noch durch die bevorzugten Ausführungsformen der Erfindung
durchgeführt
werden.
-
5 zeigt
allgemein die Schritte, die in bevorzugten Ausführungsformen verwendet werden, wenn
auf die zweite Netzwerkstelle 202 durch einen Client 206 zugegriffen
wird, der zuvor das in 3 gezeigte Verfahren abgeschlossen
hat. Das Verfahren beginnt mit Schritt 500, in welchem
der Client 206 Zugriff auf die zweite Netzwerkstelle 202 fordert.
Die zweite Netzwerkstelle 202 interagiert dann in herkömmlicher
Weise mit dem Client 206 und bestimmt, dass der Client 206 nicht
einen Cookie der zweiten Stelle beinhaltet (Schritt 502).
Die zweite Netzwerkstelle 202 leitet konsequenterweise
den Client 206 an die Steuerstelle 207 mit einer
Umleitungsbotschaft um, die Befehle und eine Information der zweiten Stelle
beinhaltet, die im Wesentlichen identisch zu der ersten Botschaft
der ersten Netzwerkstelle 200 ist (Schritt 504).
Die Steuerstelle 207 lokalisiert den Cookie in dem Client 206 (Schritt 506)
und leitet den Client 206 an die zweite Stellendomäne um (Schritt 508).
In bevorzugten Ausführungsformen
wird der Client 206 an die zweite Stellendomäne umgeleitet, die
durch den Steuerstellenserver geliefert wird.
-
Sobald
es in der zweiten Steuerstellendomäne 202 ist, wird der
Cookie der zweiten Stelle (der den Client-Identifikator enthält, der
von der Steuerstelle 207 empfangen wird) auf dem Client 206 abgelegt
(Schritt 510). Das Verfahren setzt sich mit Schritt 512 fort,
in welchem Information zwischen der Steuerstelle 207 und
der zweiten Netzwerkstelle 202 geteilt wird. Abschließend wird
der Client 206 zu dem Anfangspunkt auf der zweiten Stelle
mit Schritt 514 umgeleitet. Jeder dieser Schritte in 5 wird
vorzugsweise in einer Weise implementiert, die im Wesentlichen identisch
zu der Implementation der vorhergehenden Schritte in dem Verfahren
nach 3 ist.
-
In
alternativen Ausführungsformen
der Erfindung werden die Cookies konfiguriert, um Client-Information
zu beinhalten. Entsprechend benötigt
diese Ausführungsform
keine Verwendung einer Datenbank 216 an der Steuerstelle 207,
da die Netzwerkstelle, auf die zugegriffen wird, die Client-Information aus
ihrem Cookie direkt extrahieren kann. In weiteren Ausführungsformen
wird das System über
andere Netzwerktypen implementiert, die nicht das Web verwenden.
-
Wie
oben ausgeführt,
wird die Information vorzugsweise zwischen der Steuerstelle 207 und
der Netzwerkstelle 200-204, auf welche Zugriff
angefordert wird, übertragen
(siehe z.B. Schritt 318 in
-
3). 6 zeigt
allgemein die Schritte, die in einer Ausführungsform der Erfindung verwendet
werden, um Client-Information
von der Steuerstelle 207 zu beziehen und an eine anfragende
Netzwerkstelle zu übertragen.
Dieses Verfahren beginnt mit Schritt 600, in welchem eine
Informationsanfrage durch eine der Netzwerkstellen übertragen
wird, die auf die Steuerstelle 207 zugreifen. Neben anderen Daten
beinhaltet die Informationsanfrage vorzugsweise den Client-Identifikator
und einen Netzwerkstellen-Identifikator, der die Netzwerkstelle
identifiziert, die die Anfrage stellt.
-
Ansprechend
auf einen Empfang der Informationsanfrage werden der Client-Identifikator
und der Netzwerkstellen-Identifikator aus der Botschaft durch die
Steuerstelle 207 extrahiert (Schritt 602). Der
Client-Identifikator kann dann verwendet werden, um alle Information,
die in der Datenbank 216 bezüglich des Client 206 gespeichert
ist, zu lokalisieren (Schritt 604). Sobald die Information
lokalisiert ist, wird sie an die anfragende Netzwerkstelle übertragen (Schritt 606).
In manchen Ausführungsformen
wird jedoch nur die selektierte Information an gewisse Netzwerkstellen übertragen.
In anderen Ausführungsformen
wird der Netzwerkstellen-Identifikator durch die Steuerstelle 207 verwendet,
um Information zu filtern, die an die anfragende Stelle gerichtet
ist. Insbesondere können
bestimmte Client-Aufzeichnungen
markiert werden, so dass die Information in diesen Aufzeichnungen
nur an die ausgewählten Netzwerkstellen übertragen
werden kann.
-
Bevorzugte
Ausführungsformen
der Erfindung können
in einer herkömmlichen
Computerprogrammsprache implementiert werden. Beispielsweise können manche
Ausführungsformen
in einer prozessorientierten Programmiersprache (z.B. "C") oder einer objektorientierten Programmiersprache
(z.B. "C++") implementiert werden.
-
Bevorzugte
Ausführungsformen
werden in der Oracle PL/SQL-Sprache programmiert. Code-Teile können auf
einem oder beiden der Steuerstelle 207 und den Netzwerkstellen 200-204 programmiert
sein. In bevorzugten Ausführungsformen wird
neben dem herkömmlichen
Code, der mit dem bevorzugten Client-Identifikationssystem verwendet wird,
ein Großteil
der Funktionalität
des erfindungsgemäßen Systems
auf dem Steuerserver 214 programmiert, abgesehen von dem
Code zum Generieren und Übertragen
der ersten Botschaft (Umleiten des Client 206 an die Steuerstelle 207),
und dem Code zum Verarbeiten von Information, die durch eine der
Netzwerkstellen von der Steuerstellendatenbank 206 empfangen
wird. Andere Ausführungsformen
der Erfindung können
als umprogrammierte Hardware-Elemente oder andere diesbezügliche Komponenten
implementiert werden.
-
Alternative
Ausführungsformen
der Erfindung können
als Computerprogrammprodukt zur Verwendung mit einem Computersystem
implementiert werden. Solche Implementationen können eine Reihe von Computerinstruktionen
beinhalten, die entweder auf einem dinglichen Medium, wie einem computerlesbaren
Medium (z.B. einer Diskette, CD-ROM, ROM oder Festplatte), befestigt
sind oder übertragbar
an ein Computersystem mittels eines Modems oder einer anderen Schnittstellenvorrichtung,
wie eines Kommunikationsadapters, der an ein Netzwerk über ein
Medium verbunden ist. Das Medium kann entweder ein dingliches Medium
(z.B. optische oder analoge Übertragungsleitungen)
oder ein Medium sein, das mit drahtlosen Techniken (z.B. Mikrowelle,
Infrarot oder anderen Übertragungstechniken)
implementiert ist. Die Serie von Computer-Instruktionen verkörpern alle oder Teile der Funktionalität, die vorhergehend
hierin mit Bezug auf das System beschrieben wurde. Ein Fachmann
sollte erkennen, dass solche Computerinstruktionen in einer Vielzahl
von Programmiersprachen zur Verwendung mit vielfältigen Computerarchitekturen
oder Betriebssystemen ge schrieben werden können. Ferner können solche
Instruktionen in einer beliebigen Speichervorrichtung gespeichert
werden, wie in einem Halbleiter, einem magnetischen, einem optischen
oder anderen Speichervorrichtungen, und unter Verwendung beliebiger Übertragungstechnologien,
wie einer optischen, infraroten, Mikrowellen- oder anderen Übertragungstechnologie übertragen
werden. Es wird erwartet, dass ein solches Computerprogrammprodukt als
entfernbares Medium mit beigefügter
gedruckter oder elektronischer Dokumentation (z.B. shrink wrapped
Software) verteilt werden kann, die auf einem Computersystem geladen
werden kann (z.B. auf eine System ROM oder Festplatte) oder von
einem Server oder einem elektronischen Schwarzen Brett über das Netzwerk
verteilt werden kann (z.B. das Internet 195 oder das World Wide
Web).
-
Obwohl
vielfältige
exemplarische Ausführungsformen
der Erfindung beschrieben sind, sollte es einem Fachmann offensichtlich
sein, dass vielfältige Änderungen
und Modifikationen vorgenommen werden können, die manche der Vorteile
der Erfindung erreichen, ohne aus dem Umfang der Erfindung herauszufallen.
Es ist beabsichtigt, dass diese und andere offensichtliche Modifikationen
von den angefügten
Ansprüchen
abgedeckt sind.