-
Hintergrund
-
Die
Erfindung bezieht sich auf eine verbesserte Benutzer-Schnittstelle
für eine
Telekommunikationsvorrichtung, die Daten von anderen Telekommunikationsvorrichtungen
empfangen oder zu diesen senden kann. Insbesondere, aber nicht ausschließlich, bezieht
sich die Erfindung auf eine verbesserte Schnittstelle für einen
Internet-Web-Browser.
-
Wenn
ein Benutzer einen Web-Browser verwendet, um Internet-Seiten zu
betrachten, schreibt er manchmal die Web-Seiten-Adresse (auch als
Uniform Resource Locator oder „URL" bekannt) in den Web-Browser
ein. Statt dessen kann der Benutzer ein Hilfssystem („bookmark") verwenden, das
eine Web-Seiten-Adresse
spezifiziert. Die Web-Seiten-Adresse spezifiziert sowohl ein bestimmtes,
mit dem Internet verbundenes Gerät,
als auch eine bestimmte Web-Ressource
(wie zum Beispieleinen spezifischen Web-Server-Namen oder eine spezifische
Web-Seite) auf dem Gerät.
Der Web-Browser sendet dann eine Anforderung für die gewünschte Seite an den Web-Server,
worauf der Web-Server
als Ergebnis davon Informationen an den Web-Browser zurücksendet,
die das Erscheinungsbild der Web-Seite definieren. Manchmal spezifiziert
die Web-Adresse
berechtigt die Internet-Adresse eines Web-Servers, aber sie spezifiziert
unberechtigt eine Web-Seite auf dem bestimmten Web-Server. Zum Beispiel
kann der Benutzer entweder (i) die Internet-Adresse der gewünschten
Seite falsch eingeben, oder er kann (ii) die Ressourcen-Adresse
(Pfad) einer Web-Seite
eingeben, die früher
existierte, aber nicht mehr existiert. In solchen Fällen wird
der Web-Server einen Fehler-Code an den Web-Browser des Benutzers
zurücksenden.
Ein typischer Fehler-Code ist Hyper-Text-Transfer-Protokoll (HTTP) „404 nicht
gefunden", obwohl
es auch verschiedene andere Fehler-Codes gibt, wie zum Beispiel „410 vorbei". Ein Benutzer, der
solche Nachrichten empfängt,
erfährt
somit nur, dass die spezifizierte Web-Seite nicht vorhanden ist,
ohne dass irgendwelche weiteren Gründe oder brauchbaren Informationen
angegeben werden.
-
In
manchen Fällen
kann der Web-Server einen Benutzer zur Homepage der Web-Site leiten, falls
der Benutzer eine Seite anfordert, die auf dem Server nicht verfügbar ist,
aber dies ist üblicherweise von
begrenztem Nutzen oder Interesse für den Benutzer, dessen Aktionen
bei dem Spezifizieren einer bestimmten Web-Seite innerhalb einer Web-Site üblicherweise
ein spezifisches Interesse anzeigen.
-
Das
Dokument
US 2002/059396
A1 offenbart ein System, bei dem ein Benutzer mit einer
Liste von alternativen Web-Seiten-Adressen versehen wird, falls
der Benutzer die falsche Adresse einer Web-Seite in den Weg-Browser
eingibt. In diesem Dokument wird der URL der angeforderten Web-Seite
analysiert, um alternative Web-Seiten-Adressen vorzusehen.
-
Angaben der Erfindung
-
Gegenüber diesem
Hintergrund und gemäß einem
ersten Aspekt der Erfindung ist ein System vorgesehen, wie es im
Anspruch 1 dargelegt ist.
-
Gemäß einem
zweiten Aspekt der Erfindung ist ein Fehler-Code-Empfänger vorgesehen,
wie er im Anspruch 37 dargelegt ist.
-
Gemäß einem
dritten Aspekt der Erfindung ist ein Kontext-Analysator vorgesehen,
wie er im Anspruch 55 dargelegt ist.
-
Gemäß einem
vierten Aspekt der Erfindung ist ein Verfahren zur Versorgung eines
Benutzers mit einer Benutzer-Schnittfläche vorgesehen, wie im Anspruch
61 dargelegt ist.
-
Gemäß einem
fünften
Aspekt der Erfindung ist ein Computer-Programm-Produkt vorgesehen, wie
es im Anspruch 58 dargelegt ist.
-
Ein
Vorteil der vorliegenden Erfindung besteht darin, dass dem Benutzer
nicht nur ein Fehler-Code präsentiert
wird, der anzeigt, dass die angeforderte Web-Seite nicht abgerufen werden konnte, sondern
dass dem Benutzer eine oder mehrere alternative Verknüpfungen
präsentiert
werden, die relevant für
die Web-Seite sind,
die der Benutzer zu betrachten versucht hatte. Der Benutzer kann
dann eine oder mehrere der Verknüpfungen
anklicken. Somit kann die Erfindung konstruktive Vorschläge von alternativen
Web-Seiten liefern, wenn die ursprünglich angeforderte Web-Seite
nicht existiert.
-
Beschreibung der Figuren
-
Ausführungsbeispiele
der Erfindung werden nachfolgend anhand der beigefügten Zeichnungen beschrieben.
In den Zeichnungen stellen dar:
-
1 ein
Computer-System, das gemäß einem
ersten Beispiel ausgebildet ist;
-
2 ein
Computer-System, das gemäß einer
ersten Ausführungsform
der Erfindung ausgebildet ist;
-
3 ein
Computer-System, das gemäß einer
zweiten Ausführungsform
der Erfindung ausgebildet ist;
-
4 ein
Computer-System, das gemäß einer
dritten Ausführungsform
der Erfindung ausgebildet ist;
-
5 eine
Web-Seite, wie sie der Benutzer des Systems von 1 nach
Eingabe eines nicht vorhandenen URL sieht;
-
6 eine
Web-Seite, wie sie der Benutzer des Systems von 2 nach
Verarbeitung einer Dateneingabe durch das System sieht;
-
7 ein
Computer-System, das gemäß einer
fünften
Ausführungsform
der Erfindung ausgebildet ist; und
-
8 einen
Teil eines Computer-Systems, das gemäß einer sechsten Ausführungsform
der Erfindung ausgebildet ist.
-
Beschreibung der bevorzugten
Ausführungsformen
-
Erstes Beispiel
-
1 zeigt
ein System 100 gemäß einem ersten
Beispiel, das kein Ausführungsbeispiel
der Erfindung ist, aber welches Hintergrund-Informationen liefert,
die relevant für
Ausführungsformen
der Erfindung sind.
-
Das
System 100 umfasst den Personal-Computer (PC) 101 eines
Benutzers. Der PC 101 des Benutzers hat Standard-Zubehör wie eine
Maus (nicht dargestellt), eine Tastatur 103 und einen Bildschirm 104,
der zur Anzeige von Web-Seiten benutzt werden kann. Der PC 101 des
Benutzers hat ferner ein Modem 105, das den Anschluss des
PC 101 des Benutzers an das Internet erlaubt. Bei diesem
Ausführungsbeispiel
ist der PC 101 des Benutzers ein Desktop-PC, obwohl bei
anderen Ausführungen
der PC 101 des Benutzers zum Beispiel auch ein Mobil-Telefon oder ein
persönlicher
digitaler Assistent (PDA) sein könnte.
-
Der
PC 101 des Benutzers ist mit Web-Browser-Software 110 versehen.
Die Web-Browser-Software 110 kann zum Beispiel Microsoft(RTM), Internet-Explorer(RTM),
Netscape-Navigator(RTM) oder Mozilla(RTM) sein. Bei Benutzung gibt der Benutzer
ein URL für
eine Web-Seite ein, üblicherweise
durch Tastenanschläge
auf der Tastatur 103. Dies führt dazu, dass die Browser-Software eine Anforderung
an den Web-Server sendet, die durch den eingegebenen URL spezifiziert
wird. Wo ein solcher URL vorhanden ist, gibt jener Web-Server Instruktionen
an die Browser-Software 110 am PC 101 des Benutzers
zurück, und
die Browser-Software 110 interpretiert die empfangenen
Informationen und zeigt dann die angeforderte Web-Seite auf dem Bildschirm 104 an.
Wie der Fachmann weiß,
wird die von dem Web-Server gesendete und von der Browser-Software 110 interpretierte
Information üblicherweise
unter Verwendung der Hypertext-Markup-Language (HTML) kodiert und dann
unter Verwendung eines Hypertext-Transfer-Protokolls HTTP geliefert.
Einzelheiten des HTTP-Protokolls und verwandter Protokolle findet man
im Internet unter den folgenden Web-Adressen:
http://www.ietf.org/rfc/rfc1945.txt
Hypertext
Transfer Protocol-HTTP/1.0
http://www.ietf.org/rfc/rfc2616.txt
Hypertext
Transfer Protocol-HTTP/1.1
http://www.ietf.org/rfc/rfc1866.txt
Hypertext
Markup Language-2.0
http://www.w3.org/TR/REC-htm132
HTML
3.2 Reference Specification
http://www.w3.org/TR/htm1401/
HTML
4.01 Specification
http://www.w3.org/TR/xhtm11/
XHTMLTM 1.0 The Extensible HyperText Markup Language
(Second Edition)
http://www.w3.org/TR/xhtml-basic/
XHTMLTM Basic
http://www.w3.org/TR/xhtml11/
XHTMLTM 1.1-Module-based XHTML
-
In
der folgenden Beschreibung wird Bezug auf URLs, Web-Adressen und
so weiter genommen. Obwohl ein URL nahezu immer als alphanumerische Kette eingegeben
oder erwähnt
wird (zum Beispiel http://www.ietf.org/, in Bezug auf die oben genannten Adressen),
ist natürlich
zu verstehen, dass das Internet tatsächlich auf der Basis von Internet-Protokoll-(IP)-Adressen
arbeitet, die 32-Bit-Zahlen
sind, die als eine Reihe von zwölf
durch Perioden getrennte Zahlen dargestellt werden können, zum
Beispiel 101.114.186.000. Wenn ein Benutzer eine Web-Seite anfordert,
ist somit üblicherweise
ein vorbereitender Schritt für
die Browser-Software 110, zu einem entfernten Domänen-Namen-Server
(DNS) Zugriff zu nehmen, der die textliche Web-Adresse (ein vollqualifizierter
Domänen-Name
oder FQDN), die von dem Benutzer in seine IP-Adresse eingegeben
wird, auflöst.
Diese IP-Adresse wird dann von dem DNS zu dem Browser zurückgesendet,
der dann die Anforderung von einer bestimmten Seite an die aufgelöste IP-Adresse
sendet. Es können
ein oder mehrere Web-Ressourcen
bei der aufgelösten
IP-Adresse vorhanden sein, zum Beispiel können zwei Web-Server für beziehungslose
Web-Sites bei derselben IP-Adresse
zugänglich
sein. Die textliche Form des FQDN (eher als die IP-Adresse, die
die aufgelöste Form
ist) wird von dem Web-Server verwendet, um eine Web-Site auszuwählen; der
Rest des URL (der Pfad-Teil oder Ressourcen-Spezifizierer) wählt eine bestimmte Seite auf
dieser Site aus.
-
Fehler
in einer von einem Web-Browser angeforderten Web-Seite (oder URL),
die bewirken, dass die Web-Seite für den Web-Browser nicht verfügbar ist,
können
in dem Domänen-Namen
und/oder in einer bestimmten Web-Seite vorhanden sein, die als vorhanden
bei dem Domänen-Namen
spezifiziert wurde.
-
Unter
weiterer Bezugnahme auf 1 sei angenommen, dass der Benutzer
eine Web-Seite auf einem entfernten Web-Server 120 betrachten
möchte.
Der Benutzer tippt den URL der Web-Seite in die Web-Browser-Software 110 unter
Verwendung der Tastatur 103 ein. Ein hypothetisches Beispiel
einer solchen Internet-Adresse ist:
http://www.chemische_Elemente.com/Wasserstoff/Atom_Gewicht.html
worin
www.chemische_Elemente.com die FQDN-Adresse des Web-Servers 120 spezifiziert, und
worin „/Wasser-stoff/Atom_Gewicht.html" eine Web-Seite spezifiziert,
die auf dem Web-Server 120 gesucht wird.
-
Als
ersten Schritt sendet die Web-Browser-Software 110 eine
HTTP-Anforderung 130 an den Web-Server 120 (nachdem
er zuerst eine Auflösung
des URL in eine IP-Adresse erhalten hat, wie oben erwähnt). Der
Web-Server 120 empfängt
die Anforderung für
die gesuchte Information (die Seite), aber (bei diesem hypothetischen
Beispiel) findet er, dass die angeforderte Seite nicht verfügbar ist.
Der Web-Server 120 sendet daher eine HTTP-Zustandskennung
an die Web-Browser-Software 110 beim
PC 101 des Benutzers zurück, die anzeigt, dass die angeforderte
Web-Seite nicht gefunden werden konnte. Ein Beispiel für eine HTTP-Zustandskennung
ist „404 nicht
gefunden". Diese
Zustandskennung zeigt an, dass die angeforderte Web-Seite nicht
gefunden werden konnte; es gibt alternative HTTP-Zustandskennungen,
die von dem Web-Server 120 verwendet werden können, um
anzuzeigen, ob die angeforderte Web-Seite vorübergehend oder ständig auf
dem Web-Server 120 nicht verfügbar ist.
-
Gemäß einer
Ausführungsform
der vorliegenden Erfindung wird lieber als die Anzeige dieses 404-Fehlers
statt dessen ein Plug-in-Element 111 verwendet, um die
Funktionsvielfalt des Browsers bei der Handhabung solcher Fehler
zu verbessern, was nachfolgend erläutert wird. Plug-in-Elemente
wie das Plug-in-Element 111 sind
Software-Teile, die die Web-Browser-Software 110 vergrößern. Ein
Browser-Hilfsobjekt (BHO) könnte
als Plug-in-Element für Microsoft(RTM)-Internet-Explorer(RTM) verwendet werden.
-
Ohne
das Plug-in-Element 111 würde die Web-Browser-Software 110 einfach
eine Angabe anzeigen, dass die angeforderte Seite auf dem Server nicht
gefunden werden konnte, zusammen mit der Zustandskennung (zum Beispiel „404 nicht
gefunden"). Das
Plug-in-Element 111 modifiziert das Verhalten der Web-Browser-Software 110,
wenn eine geeignete HTTP-Zustandskennung wie „404 nicht gefunden" empfangen wird.
Spezifisch stellt das Plug-in-Element 111 die HTTP-Zustandskennung fest
und hindert die Web-Browser-Software 110 daran, die normale
Fehleranzeige „404 nicht
gefunden" anzuzeigen.
-
Statt
dessen veranlasst das Plug-in-Element 111 die Web-Browser-Software 110,
eine HTTP-Anforderung 132 an einen Hilfs-(helper)-Server 140 zu senden,
der sich üblicherweise
entfernt sowohl von dem Web-Server 120, der den URL beherbergt,
der nicht lokalisiert werden konnte, als auch von dem PC 101 des
Benutzers befindet. Die HTTP-Anforderung 132 enthält den URL
der Web-Seite, die auf dem Web-Server 120 nicht verfügbar war.
-
Der
Hilfs-Web-Server 140 arbeitet in Verbindung mit dem Plug-in-Element 111,
um den Benutzer mit einer alternativen, verbesserten Anzeige von
Informationen zu versehen, was nachfolgend erläutert wird.
-
Der
Hilfs-Web-Server 140 enthält Analyse-Software 141,
die die in der HTTP-Anforderung 132 enthaltene
Adresse analysiert, um den Kontext der Seite zu bestimmen, die auf
dem Web-Server 120 nicht verfügbar war. Hier analysiert die
Analyse-Software 141 die Web-Adresse des Web-Servers 120,
und sie analysiert auch die Adresse der Web-Seite, die auf dem Web-Server 120 nicht
gefunden werden konnte, und sie bestimmt, dass der Kontext der fehlenden
Web-Seite die Schlüsselworte „chemisch", „Elemente", „Wasserstoff", „Atom" und „Gewicht" einschließt. Software
und Algorithmus zur Bestimmung des Kontextes von Informationen sind als
solche in der Fachwelt allgemein bekannt. Zum Beispiel schätzen einige
bekannte Algorithmen die Anzahl von Verknüpfungen zu einer Web-Seite
und die Quellen dieser Verknüpfungen
ab, um den Kontext der Informationen zu bestimmen; einige andere verwenden
Verfahren auf der Basis von Wortstämmen. Die Einzelheiten von
dem Algorithmus oder von den Algorithmen, die von der hier verwendeten
Analyse-Software benutzt werden, bilden keinen Teil der vorliegenden
Erfindung und werden nicht weiter diskutiert.
-
Der
Hilfs-Web-Server 140 enthält auch Index-Datenbasis-Software 142,
die zum Identifizieren von Web-Seiten auf anderen Web-Servern dient
(das heißt
auf anderen Web-Servern als dem Web-Server 120 und dem
Hilfs-Web-Server 110), die relevant für den Kontext der fehlenden
Web-Seite sein könnten. Die
Index-Datenbasis-Software 142 umfasst
eine Datenbasis, die potentiell relevante Web-Sites für jeden Begriff in der Datenbasis
auflistet.
-
Zum
Beispiel kann die Index-Datenbasis-Software 142 für das Wort „chemisch" mehrere Einträge haben,
die auf das Gebiet der Chemie bezogen sind. Für das Wort „Elemente" kann die Index-Datenbasis-Software
Einträge
enthalten, die für Chemie
relevant sind und einige, die für
Chemie nicht relevant sind. Ein Beispiel eines Eintrags in der Index-Datenbasis-Software 142 für das Wort „Element", der nicht relevant
für das
Gebiet der Chemie ist, würde
eine Web-Seite mit dem Titel „Elemente des
modernen Tanzes" sein,
was in diesem Beispiel auf Choreographie und nicht auf Chemie bezogen würde. Die
Index-Datenbasis-Software 142 verwendet
die von der Analyse-Software 141 herausgezogenen Schlüsselworte,
um eine Liste potentiell relevanter Web-Seiten zu erzeugen. Die
erzeugte Liste kann durch die erwartete Relevanz der Web-Seiten
für die Schlüsselworte
geordnet/eingestuft werden. Zum Beispiel kann eine Web-Seite mit
den Schlüsselworten „Atom", „Gewicht" und „Wasserstoff" höher eingestuft
werden als eine Web-Seite mit den Schlüsselworten „chemisch", „Elemente", „Wasserstoff" und „Gewicht", obwohl die letztere
Web-Seite vier der Schlüsselworte
anstatt drei der Schlüsselworte
enthält.
Die Einzelheiten von dem hier verwendeten Einstufungs-Algorithmus
bilden keinen Teil der vorliegenden Erfindung und werden nicht weiter
beschrieben. Einstufungs-Algorithmen sind als solche in der Fachwelt
bekannt, und die Einzelheiten der hier verwendeten Einstufungs-Algorithmen
bilden keinen Teil der vorliegenden Erfindung und werden nicht weiter diskutiert.
-
Die
von der Index-Datenbasis-Software 142 erzeugte eingestufte
Liste von potentiell relevanten Web-Sites wird dann einer Web-Seiten-Erstellungs-Software 143 zugeführt. Die
Web-Seiten-Erstellungs-Software 143 bildet ebenfalls einen
Teil des Hilfs-Web-Servers 140. Die Web-Seiten-Erstellungs-Software 143 erzeugt
dynamisch eine Web-Seite, die als eine HTTP-Antwort 133 an
den PC 101 des Benutzers gesendet wird. Die Web-Browser-Software 110 interpretiert
dann die HTTP-Antwort 133 und zeigt die Web-Seite auf der Anzeige 104 des
PC 101 des Benutzers an.
-
Mit „dynamisch" ist gemeint, dass
die Web-Seiten-Erstellungs-Software 143 nicht eine vor-definierte
Web-Seite abruft, sondern dass die Web-Seiten-Erstellungs-Software 143 eine
Web-Seite auf der Basis des Kontextes erzeugt, der durch die Analyse-Software 141 und
durch die von der Index-Datenbasis-Software 142 bestimmten
und eingestuften Verknüpfungen
bestimmt wurde. Somit ist die Web-Seite, die durch die Web-Seiten-Erstellungs-Software 143 erzeugt
wird, üblicherweise
speziell für
einen gegebenen Kontext. Jedes Mal, wenn der Benutzer versucht,
eine Web-Seite zu betrachten, die auf dem Web-Server 120 nicht
vorhanden ist, oder auf einem anderen Web-Server nicht existiert, kann
das Plug-in-Element 111 den Empfang der HTTP „404 nicht
gefunden" oder eine ähnliche
Antwort von dem Web-Server feststellen. Das Plug-in-Element 111 veranlasst
dann den PC 101 des Benutzers, den Hilfs-Web-Server 140 zu
kontaktieren, so dass eine dynamisch erzeugte Web-Seite, die relevant
für den
Kontext der nicht verfügbaren
Seite ist, auf dem Bildschirm 104 des PC 101 des
Benutzers angezeigt wird.
-
5 zeigt
ein Beispiel einer Web-Seite 500, die auf dem Bildschirm 104 des
PC 101 des Benutzers angezeigt wird, nachdem eine HTTP-Antwort 133 von
dem PC 101 des Benutzers empfangen und von der Web-Browser-Software 110 interpretiert
worden ist. Wie gezeigt ist, enthält die Web-Seite ein Nachrichtenfeld 501,
das den Benutzer mit einer informativen Nachricht versieht, und
die auch eine Zurück-Taste 502 und
ein Verknüpfungsfeld 303 enthält. In diesem
Fall ist die Nachricht:
„konnte
leider die Seite nicht finden, nach der Sie gesucht haben. Sie können entweder
die "Zurück-Taste" drücken oder
auf eine relevante Verknüpfung
klicken".
-
Die
Zurück-Taste 502 erlaubt
dem Benutzer, sich zurück
durch seine Geschichte von zuvor betrachteten Web-Seiten zu bewegen.
-
Das
Verknüpfungsfeld 503 versieht
den Benutzer mit einer eingestuften Liste von vorgeschlagenen Verknüpfungen,
die von Relevanz für
den Kontext des Benutzers sein können.
Hier enthält
das Verknüpfungsfeld 503 zwei
Verknüpfungen,
die Verknüpfung 503.1 und
die Verknüpfung 503.2.
Für jede der
beiden Verknüpfungen
ist der Titel der Web-Seite, auf die die entsprechenden Verknüpfungen
zeigen, gegeben, gefolgt von den entsprechenden Schlüsselworten,
die auf der entsprechenden Web-Seite vorhanden sind, gefolgt von
der Internet-Adresse der entsprechenden Web-Seite. Wie man sieht,
ist die Verknüpfung 503.1 eine
Web-Seite, die relevant für
die Eigenschaften von Wasserstoff ist. Die Web-Adresse gibt den
Web-Server und die Adresse der Web-Seite auf dem Web-Server an.
Die Verknüpfung 503.2 betrifft
eine Choreographie-Web-Seite. Die Verknüpfung 503.2 wird unter der
Verknüpfung 503.1 angezeigt,
da gemäß der von der
Index-Datenbasis-Software 142 gebildeten Einstufung die
Verknüpfung 503.2 weniger
wahrscheinlich als relevant für
den Benutzer als die Verknüpfung 503.1 angesehen
wird.
-
Es
sei angenommen, dass der Benutzer die Verknüpfung 503.1 als relevant
ansieht und fortfährt, die
Verknüpfung 503.1 durch
Klicken auf sie mit der Maus 102 auszuwählen, dann spezifiziert die
Verknüpfung 503.1 die
Internet-Adresse
der Web-Seite, die der Benutzer sehen möchte. Hier kann die Seite auf
einem verknüpften
Server 150 gefunden werden.
-
Der
verknüpfte
Server 150 ist bei dieser Ausführungsform üblicherweise kein Teil des
Web-Servers 120 oder des Hilfs-Web-Servers 140;
statt dessen enthält
die Datenbasis der Index-Datenbasis-Software 142, die auf
dem Hilfs-Server 140 gehalten wird, eine Internet-Verknüpfung zu
dem verknüpften
Server 150.
-
Somit
spezifiziert die Verknüpfung 503.1 die Internet-Adresse
des verknüpften
Servers 150, und sie spezifiziert auch den Ort auf dem
verknüpften Server 150,
wo die Seite gefunden werden kann. Wenn der Benutzer die Verknüpfung 503.1 anklickt, sendet
die Web-Browser-Software 110 eine HTTP-Anforderung 134 an
den verknüpften
Server 150. Der verknüpfte
Server 150 sendet eine HTTP-Antwort 135 zurück, die
die angeforderte Web-Seite definiert. Die Web-Browser- Software 110 interpretiert
die von der HTTP-Antwort 135 definierte Web-Seite und zeigt
die angeforderte Web-Seite auf dem Bildschirm 104 des PC 101 des
Benutzers an.
-
Somit
können
das Plug-in-Element 111 und der Hilfs-Web-Server 140 die
Web-Surf-Erfahrung
eines Benutzers verbessern, indem dem Benutzer eben nicht nur eine
HTTP-Nachricht „404 nicht
gefunden" präsentiert
wird, sondern eine Liste von potentiell relevanten Verknüpfungen
für den
Benutzer zum Anklicken.
-
Erste Ausführungsform
-
2 zeigt
ein System 200 gemäß einer
ersten Ausführungsform
der Erfindung. Viele Komponenten des Systems 200 sind identisch
mit Komponenten des Systems 100. Gleiche Teile haben daher gleiche
Bezugsziffern wie in 1. Während das System 100 für eine Situation
sorgt, bei der der Benutzer die Adresse für eine nicht vorhandene Web-Seite
eingibt, sorgt das System 200 für eine Situation, bei der ein
Benutzer auf eine Verknüpfung klickt,
die in einem „verknüpfenden
Web-Server" 201 vorgesehen
wird, der auf eine Verknüpfung
zeigt, die auf dem Web-Server 120 nicht vorhanden ist.
Das System 200 kann auch Informationen sammeln, die zur
Verbesserung der Relevanz der dem Benutzer präsentierten Verknüpfungen
oder für
andere Zwecke verwendet werden.
-
Als
erster Schritt bei dieser ersten Ausführungsform tippt der Benutzer über die
Tastatur 103 die Internet-Adresse (URL) einer Web-Site
auf dem verknüpfenden
Web-Server 201 in die Web-Browser-Software 110 ein.
Die Web-Browser-Software 110 sendet
eine HTTP-Anforderung 202 an den verknüpfenden Web-Server 201. Bei diesem Beispiel wird
die angeforderte Seite auf dem verknüpfenden Web-Server 201 gefunden,
so dass der verknüpfende
Web-Server 201 mit
einer HTTP-Antwort 203 antwortet. Die Web-Browser-Software 110 interpretiert die
von der HTTP-Antwort 203 definierte Web-Seite und zeigt
die Web-Seite auf der Anzeige 104 an. Die angezeigte Web-Seite
enthält
eine oder mehr fehlerhafte Verknüpfungen.
Mit fehlerhaften Verknüpfungen
ist gemeint, dass die Verknüpfung
entweder falsch ist oder dass die Verknüpfung auf eine Seite zeigt,
die nicht mehr verfügbar
ist.
-
In
einem nächsten
Schritt klickt der Benutzer auf eine der fehlerhaften Verknüpfungen
(von denen er natürlich
in der Regel nicht weiß,
dass sie fehlerhaft sind). Die Web-Browser-Software 110 sendet eine
HTTP-Anforderung 130 an
den entfernten Web-Server 120, wo die Web-Site der fehlenden
Seite oder die unterbrochene Verknüpfung gehalten wird. Der Web-Server 120 bestimmt,
dass die angeforderte Seite nicht verfügbar ist und sendet eine HTTP-Antwort „404 nicht
gefunden" an die Web-Browser-Software 110 zurück.
-
Das
System 200 hat ein Plug-in-Element 211, das dem
Plug-in-Element 111 ähnlich
ist, aber einen beteiligten ID 212 einschließt. Der
beteiligte ID 212 ist ein Datenstück, das die Organisation identifiziert,
die das Plug-in-Element 211 dem Benutzer zuführt. Das
Plug-in-Element 211 ist so ausgebildet, dass es den beteiligten
ID 212 zu einem Hilfs-Server 240 übertragen
kann.
-
Der
Hilfs-Server 240 ist dem Hilfs-Server 140 des
Systems 100 ähnlich,
aber er enthält
beteiligte Überwachungs-Software 242 zum
Analysieren der verschiedenen beteiligten IDs 212 von verschiedenen
Benutzern. Obwohl aus Gründen
der Klarheit nur der PC 101 eines einzigen Benutzers in
dem System 200 dargestellt ist, können mehrere Benutzer, die entsprechende
PCs benutzen, gleichzeitig Web-Browser-Software 110 an
ihren entsprechenden PCs zusammen mit entsprechenden Plug-in-Elementen 211 verwenden.
Die Plug-in-Elemente 211 sind
weitgehend identisch, aber mit unterschiedlichen beteiligten IDs 212 versehen,
je nach dem, welche Organisation ein Plug-in-Element 211 einem
Benutzer zugeführt
hat.
-
Wenn
in 2 ein Plug-in-Element 211 feststellt,
dass eine HTTP „404 nicht
gefunden"-Antwort 131 von
dem Web-Server 120 empfangen worden ist, bewirkt das Plug-in-Element 211,
dass die Web-Browser-Software 110 eine HTTP-Anforderung 232 an
den Hilfs-Web-Server 240 sendet. Die HTTP- Anforderung 232 ist ähnlich der
HTTP-Anforderung 132 des Systems 100, enthält aber
den beteiligten ID 212. Für das System 200 ist
ein Beispiel der HTTP-Anforderung 232 wie folgt:
GET http./internet_address_of_helper_web_server_240/search.
asp?participantID=123456&referrer=web_page_address_of_page_on_linking_server_201&error=404&missing_page=web_page_address_of_missing_page
worin:
internet_address_of_helper_web_server_240
die Internet-Adresse des Hilfs-Servers 240 ist;
beteiligter
ID ist der beteiligte ID des Plug-in-Elements 211;
web_page_address_of_page_on_linking_server_201
ist die Adresse der Web-Seite
auf dem verknüpfenden
Web-Server 201, der eine Verknüpfung zu der Seite enthält, die
auf dem Web-Server 120 nicht vorhanden ist;
404 ist
die Zustandskennung der HTTP-Antwort 131; und
web_page_address_of_missing_page
ist die Adresse der auf dem Web-Server 120 nicht
vorhandenen Seite, auf die von der Seite auf dem verknüpfenden Server 201 gezeigt
wurde.
-
Der
Hilfs-Web-Server 240 verwendet die HTTP-Anforderung 232,
um den Kontext der fehlenden Web-Seite abzuleiten. Die beteiligte Überwachungs-Software 242,
die einen Teil des Hilfs-Servers 240 bildet, zeichnet den
beteiligten ID 212 des Plug-in Elements 211 auf,
das die Sendung der HTTP-Anforderung 232 veranlasst
hat. Hier hat der beteiligte ID 212 einen Wert von „123456".
-
Der
Hilfs-Server 240 umfasst Analyse-Software 241,
die ähnlich
der Analyse-Software 141 des Systems 100 ist.
Die Analyse-Software 241 enthält jedoch kraft der in der
HTTP-Anforderung 232 gelieferten Extra-Informationen (im
Vergleich zu der HTTP-Anforderung 132) bessere Informationen
hinsichtlich des Kontextes der Web-Seite, die der Benutzer zu betrachten
versuchte. Die Analyse-Software 241 verwendet die „Referrer"-Informationen in
der HTTP-Anforderung 232,
um eine HTTP-Anforderung 220 an den verknüpfenden
Web-Server 201 zu
senden. Die HTTP-Anforderung 220 fordert die Web-Seite
von dem Web-Server 201 an, die die fehlerhafte Verknüpfung zu
einer Web-Seite auf dem Web-Server 120 enthielt. Der verknüpfende Web-Server 201 antwortet
mit einer HTTP-Antwort 221. Die HTTP-Antwort 221 enthält Informationen,
die das Erscheinungsbild und den Inhalt der Web-Seite definieren,
die auf der Anzeige 104 des PC 101 des Benutzers
angezeigt wurde. Die Analyse-Software 241 zeigt
nicht wirklich die von den Informationen in der Kontext-HTTP-Antwort 221 definierte
Web-Seite an, sondern sie analysiert die Informationen, um Schlüsselworte
in der Nähe
der Verknüpfung
zu bestimmen.
-
6 zeigt
ein Beispiel einer Web-Seite 600, wie sie auf der Anzeige 104 des
PC 101 des Benutzers angezeigt werden könnte (die Analyse-Software würde üblicherweise
die Web-Seite 600 nicht anzeigen). Die Analyse-Software 241 analysiert
die Web-Seite 600, um den Ort der Verknüpfung zu bestimmen, die auf
die nicht existierende Web-Seite auf dem Web-Server 120 zeigte.
Die Verknüpfung
ist mit der Bezugsziffer 601 bezeichnet. Wie man sieht,
enthalten die Worte in der Nähe
der Verknüpfung 601 verschiedene
Schlüsselworte,
die relevant für
den Kontext der Verknüpfung 601 sind.
Die Analyse-Software 241 analysiert diese Schlüsselworte,
um geeignete Schlüsselworte
zu finden. Verschiedene Verfahren zum Analysieren und Indizieren
von Schlüsselworten
auf Web-Seiten sind in der Fachwelt bekannt. Hier bestimmt die Analyse-Software 241 Schlüsselworte 602,
die von der Index-Datenbasis-Software 142 verwendet werden
sollen. Die Analyse-Software 241 analysiert auch die Web-Adresse der Web-Seite 600 nach
relevanten Schlüsselworten.
Die Ergebnisse der Analyse werden von der Analyse-Software 241 zu
der Index-Datenbasis-Software 142 geleitet. Die
Index-Datenbasis-Software 142 erzeugt dann eine Liste von
einer oder mehreren Verknüpfungen, von
denen vorhergesagt wird, dass sie relevant für den Benutzer sind.
-
Bei
dieser Ausführungsform
verwendet das System 200 den beteiligten ID 212,
um weitere Kontext-Informationen zu erhalten. Die beteiligte Überwachungs-Software 242 umfasst
eine Datenbasis, die beteiligte IDs auf jeweils die Organisation
bezieht, die den Benutzer mit dem Plug-in-Element 211 versorgte.
Bei diesem hypothetischen Beispiel hat der beteiligte ID 212 einen
Wert von „123456", der anzeigt, dass
das Plug-in-Element 211 an den Benutzer von einer hypothetischen
Organisation mit dem Namen „Industrielle
Chemie-Organisation" geliefert
wurde. Es ist wahrscheinlich, dass der Benutzer eine gewisse Affiliation
mit der hypothetischen Gesellschaft „Industrielle Chemie-Organisation" hat und diese zusätzliche
Kontext-Informationen liefert, nämlich,
dass der erwartete Kontext das Gebiet der Chemie ist. Bei dieser
Ausführungsform
leitet die beteiligte Überwachungs-Software 242 zu
der Index-Datenbasis-Software 142 Informationen, die den
erwarteten Kontext angeben.
-
Die
Liste von potentiell relevanten Web-Sites, die von der Index-Datenbasis-Software 142 erstellt
wird, wird der Web-Seiten-Erstellungs-Software 143 zugeführt, die
dann eine HTTP-Antwort 233 an die Web-Browser-Software 110 sendet.
Die HTTP-Antwort 233 enthält Informationen, die eine Web-Seite
definieren; die Web-Browser-Software 110 interpretiert
die Informationen und zeigt die Web-Seite auf der Anzeige 104 an.
Die angezeigte Web-Seite ist ähnlich
zu der von 5, aber sie ist mehr auf das
fokussiert, was von der Analyse-Software 241 und der Index-Datenbasis-Software 142 als wahrscheinlich
gehalten wird, nämlich
der Kontext für den
Benutzer zu sein. Die HTTP-Antwort 233 ist ähnlich wie
die HTTP-Antwort 133 des Systems 100, aber während die
von der HTTP-Antwort 133 definierte Web-Seite eine Verknüpfung enthielt,
die direkt auf den verknüpften
Server 150 zeigte, hat die von der HTTP-Antwort 233 definierte Web-Seite
Verknüpfungen
zu dem Hilfs-Server 240. Obwohl die Verknüpfungen
auf den Hilfs-Server 240 anstatt auf den verknüpften Server 150 zeigen,
enthalten die Verknüpfungen
Informationen, die dem Hilfs-Server 240 erlauben,
die Web-Browser-Software 110 zu dem verknüpften Server 150 zu
leiten. Die Art, in der der Hilfs-Server 240 diese Verknüpfungen
verarbeitet, wird nun diskutiert.
-
Wenn
der Benutzer auf eine der Verknüpfungen
klickt, sendet die Web-Browser-Software 110 eine
HTTP-Anforderung 234 an den Hilfs-Server 240. Für das System 200 ist
ein Beispiel der HTTP-Anforderung 234 wie folgt:
GET http://internet_address_of_helper_web_server_240/trackerasp?participantID=123456&link_address=web_Page_address_of_web_page_on_
linked_server_150
-
Die
HTTP-Anforderung 234 spezifiziert die Web-Adresse des Hilfs-Servers 240 und
enthält
auch als Parameter die Web-Adresse des verknüpften Servers 150 und
des beteiligten ID 212. Der Hilfs-Server 240 enthält Tracker-Software 243.
Hier bestimmt die Tracker-Software 243, dass der beteiligte
ID „123456" ist.
-
Die
Tracker-Software 243 hält
eine Zählung, wie
viel Mal eine HTTP-Anforderung 234 für jeden beteiligten ID 212 empfangen
wird. Somit schaltet die Tracker-Software
jedes Mal, wenn der Benutzer des PC 101 eine Verknüpfung anklickt,
die von dem Hilfs-Server empfangen wird, einen Zähler für den teilnehmenden ID „123456" um 1 weiter. Wenn
andere Benutzer auf solche Verknüpfungen
klicken, wird der entsprechende Zähler für die anderen beteiligten IDs
um 1 weitergeschaltet. Somit erlaubt die Tracker-Software 243 dem
Hilfs-Server 240 zu bestimmen, wie viele „Klicks" von jeder Organisation
empfangen werden, die Plug-in-Elemente 211 verteilen kann.
-
Der
Hilfs-Server 240 enthält
auch eine Umleitungs-Software 244. Bei Empfang einer HTTP-Anforderung 234 zieht
die Umleitungs-Software 244 den Parameter, der die Web-Adresse
einer Seite auf einem verknüpften
Server 150 spezifiziert, heraus. Die Umleitungs-Software 244 sendet
dann eine HTTP-Antwort 235 an die Web-Browser-Software 110.
Die HTTP-Antwort 235 enthält eine HTTP-Umleitungs-Zustandskennung
(zum Beispiel „302
vorübergehend
entfernt"), immer
gefolgt von einem „Ort:" Header-Feld), was
der Web-Browser-Software 110 anzeigt, dass die Web-Browser-Software 110 nach der
Web-Seite (das ist die von der HTTP-Anforderung 234 angeforderte
Web-Seite) an einem anderen Ort gesucht werden sollte. Der andere
Ort wird bei diesem Beispiel spezifiziert „Ort:" Header-Feld der HTTP-Antwort 235.
-
Die
Web-Browser-Software 110 sendet beim Empfang der HTTP-Antwort 235 eine
HTTP-Anforderung 134 an den verknüpften Server 150.
Der verknüpfte
Server 150 antwortet mit einer HTTP-Antwort 135 und
veranlasst die Anzeige einer Web-Seite auf der Anzeige 104 des
PC 101 des Benutzers.
-
Ein
Vorteil der Einbeziehung des beteiligten ID 212 in die
HTTP-Anforderung 231 besteht darin, dass die beteiligte Überwachungs-Software 242 den Kontext
verbessern kann, der von der Index-Datenbasis-Software 142 verwendet
wird. Bei einer alternativen Ausführungsform des Systems 200 fehlt
der beteiligte ID 212 in der HTTP-Anforderung 232,
und auf die beteiligte Überwachungs-Software 242 ist verzichtet
worden. Bei einer weiteren Ausführungsform
wird die beteiligte Überwachungs-Software 242 in
Verbindung mit der Analyse-Software 241 und der Index-Datenbasis-Software 142 verwendet,
um entweder die Einstufung von „begünstigten" verknüpften Servern 150 zu
verbessern, oder sie wird verwendet, um Verknüpfungen daran zu hindern, dass
ein oder mehrere „nicht
begünstigte" verknüpfte Server 150 dem
Benutzer präsentiert
werden.
-
In
alternativen Ausführungsformen
des Systems 200 ist das Plug-in-Element 211 so
ausgebildet, dass der beteiligte ID 212 nicht in die HTTP-Anforderung 234 einbezogen
wird. In diesem Fall könnte
auf die Tracker-Software 243 des Hilfs-Servers 240 verzichtet werden.
Jedoch wird die Einbeziehung des beteiligten ID 212 in
die HTTP-Anforderung 234 und die Beibehaltung der Tracker-Softwore 243 bevorzugt.
Die Verwendung der beteiligten ID 212 Tracker-Software 243 erlaubt
dem Hilfs-Server 240 zu zählen, wie viele Verknüpfungen
zu einem bestimmten verknüpften
Server 150 vorgesehen worden sind, und auch den beteiligten
ID 212 des Plug-in-Elements 211 zu bestimmen,
der für
den Zugriff zu einem bestimmten verknüpften Server 150 verwendet wurde.
Dies erlaubt den Besitzern des Hilfs-Servers 240, finanzielle
Einnahmen von Besitzern verknüpfter
Server 150 zu erhalten und die Einnahmen mit den Organisationen
zu teilen, die das Plug-in-Element 211 an die Benutzer
liefern.
-
2 zeigt
nur einen einzigen verknüpften Server 150.
Man wird verstehen, dass es bei einer typischen Ausführung des
Systems viele verknüpfte Server 150 gibt.
Um einen Server 150 mit dem Hilfs-Server 240 zu „verknüpfen", ist es erforderlich, dass
die Index-Datenbasis-Software 142 Informationen enthält, die
die Web-Adresse einer Web-Seite auf einem bestimmten verknüpften Server 150 spezifiziert.
Natürlich
kann die Index-Datenbasis-Software 142 Verknüpfungen
sowohl zu mehreren verknüpften Servern 150 als
auch zu mehren Web-Seiten haben, die von einem bestimmten verknüpften Server 150 abgerufen
werden können.
Die Verknüpfungen
können
auch Verknüpfungen
zu anderen Web-Seiten einschließen, die
ohne einen „404 nicht
gefunden"-Fehler
vom dem Web-Server 120 abgerufen werden
können.
-
Es
sei angenommen, dass die Eigentümer des
Hilfs-Servers 240 Vereinbarungen mit den entsprechenden
Eigentümern
von mehreren verknüpften
Servern 150 geschlossen haben, so dass für jedes „Klicken" zu einem verknüpften Server 150,
das von der Verwendung eines Plug-in-Elements 211 und des
Hilfs-Servers 240 herrührt,
der Eigentümer
des entsprechenden verknüpften
Servers 150 eine Zahlung an den Eigentümer des Hilfs-Servers 240 vorsieht.
Es sei auch angenommen, dass die Eigentümer des Hilfs-Servers Vereinbarungen
mit einer oder mehreren Organisationen geschlossen haben, die bereit
sind, Plug-in-Elemente 211 zu verteilen, wobei jeder Organisation
ein entsprechender beteiligter ID 212 (zum Beispiel „123456” oder „111222") zugeordnet ist,
um die Plug-in-Elemente 211 zu unterscheiden. Die Tracker-Software 243 und
die Umleitungs-Software 244 zählen jeweils, wie viele Klicks zu
jedem verknüpften
Server 150 gelangt sind. Als Beispiel sei angenommen, dass
eine Firma A einen ersten verknüpften
Server 150 besitzt und zwanzig Klicks empfangen hat, und
dass eine Firma B einen zweiten verknüpften Server 150 besitzt,
der zehn Klicks empfangen hat. Beide Firmen A und B versehen die
Eigentümer
des Hilfs-Servers 240 mit finanzieller Vergütung auf
der Basis der Zahl von Klicks, die von der Tracker-Software 243 und
der Umleitungs-Software 244 aufgezeichnet
wurde. Somit werden die Eigentümer
des Hilfs-Servers
für eine
Gesamtzahl von dreißig
Klicks vergütet.
Es sei angenommen, dass eine erste Organisation C einige Benutzer
mit einem Plug-in-Element 211 versehen hat, das einen beteiligten
ID 212 „123456" hat, und dass eine
zweite Organisation D andere Benutzer mit einem Plug-in-Element 211 versehen
hat, das einen beteiligten ID 212 „111222" hat. Die Eigentümer des Hilfs-Servers 240 können die
Organisationen C und D mit einem Teil der von den Eigentümern A und
B erhaltenen Vergütung
versehen, anteilig zu der Zahl von Klicks, die von (i) dem Plug-in-Element 211 mit dem
beteiligten ID „123456" und (ii) dem Plug-in-Element 211 mit
dem beteiligten ID 212 „111222" herrühren. Somit werden die Organisationen
C und D angereizt, Plug-in-Elemente 211 mit den entsprechenden beteiligten
IDs 212 an Benutzer zu verteilen.
-
Bei
alternativen Ausführungsformen
des Systems 200 ist es nicht erforderlich, die Zahl der Klicks
zu dem einen oder mehreren verknüpften
Servern 150 zu zählen.
Bei solchen Ausführungsformen ist
der beteiligte ID 212 nicht in der HTTP-Anforderung 234 enthalten;
ebenso kann auf die Tracker-Software 243 verzichtet werden.
-
Zweite Ausführungsform
-
3 zeigt
ein System 300 gemäß einer zweiten
Ausführungsform
der Erfindung. Das System 300 ist in gewisser Weise dem
System 200 ähnlich, und
es werden wiederum für
gleiche Teile gleiche Bezugsziffern verwendet. Das System 300 enthält jedoch
einen Proxy-Web-Server 301. Proxy-Server werden von einigen
Internet-Service-Providern (ISPs) als Gateways zwischen individuellen
Teilnehmern der ISP (zum Beispiel Kunden) und dem Internet verwendet.
Proxy-Server werden auch von einigen Geschäften als Schnittstelle zwischen
den von ihrem Personal benutzten PCs und dem Internet verwendet.
Proxy-Server können
eine erhöhte
Sicherheit durch Einbeziehen eines Virus-Scanners liefern, und sie können für eine erhöhte Leistungsfähigkeit durch
Caching-Informationen sorgen. Die gesamte Web-(HTTP)-Kommunikation
zwischen dem PC 101 des Benutzers und dem Internet erfolgt über den
Proxy-Server 301,
der HTTP-Anforderungen von dem PC 101 des Benutzers empfängt und
sie dann zu anderen Web-Servern auf dem Internet weitergibt. HTTP- Antworten von den
anderen Web-Servern auf dem Internet werden von dem Proxy-Server 301 empfangen,
der sie dann zu dem PC 101 des Benutzers weitergibt.
-
Ein
weiterer Unterschied zwischen dem System 300 und dem System 200 besteht
darin, dass der Hilfs-Web-Server 340 des Systems 300 nicht
die Zahl von Klicks zu verknüpften
Servern 150 zählt.
Statt dessen wird modifizierte Index-Datenbasis-Software 342 an
Statt der Index-Datenbasis-Software 142 verwendet. Ebenso
wie die Speicherung der Web-Adressen von Web-Seiten auf verknüpften Servern 150 speichert
die Index-Datenbasis-Software 342 auch „verknüpfte IDs" 312, die verknüpften Servern 350 zu
zählen
erlaubt, wie, viele Klicks sie von dem Hilfs-Server 340 empfangen
haben. Die verknüpften
Server 350 sind ähnlich
wie die verknüpften Server 150,
aber sie enthalten Tracker-Software 343, um
die Zahl der empfangenen Klicks zu zählen.
-
Bei
dem in 3 gezeigten Ausführungsbeispiel tippt der Benutzer
des PC 101 entweder in die Web-Browser-Software 110 eine
Web-Adresse ein, oder er klickt auf eine Verknüpfung zu dem verknüpfenden
Web-Server 201. Hier wird die HTTP-Anforderung 202 von
dem Proxy-Server 301 abgefangen, der den Header der HTTP-Anforderung 202 modifiziert
und eine neue HTTP-Anforderung 302 an den verknüpfenden
Web-Server 201 sendet. Der verknüpfende Web-Server 201 antwortet
mit einer HTTP-Antwort 203, die von dem Proxy-Server 301 abgefangen
wird. Der Proxy-Server 301 modifiziert den Header der HTTP-Antwort 203 und
sendet eine HTTP-Antwort 303 zu der Web-Browser-Software 110 zurück. Eine ähnliche
Sequenz von Ereignissen tritt für
die HTTP-Anforderungen 130 und 330 auf. Wenn
die HTTP-Antwort 131 „404 nicht
gefunden" durch
den Proxy-Server 301 von dem verknüpften Web-Server 120 empfangen
wird, modifiziert ein „Proxy-Add-In" 311 das
Verhalten des Proxy-Servers 301.
-
Der
Proxy-Add-In 301 ist ein Stück Software (bei diesem Ausführungsbeispiel)
oder Hardware, die das Verhalten des Proxy-Servers 301 modifiziert, wenn
ein HTTP „404 nicht
gefunden" oder eine ähnliche
Zustandskennung empfangen wird. Somit führt der Proxy-Add-In eine Funktion
aus, die in gewisser Weise äquivalent
zu dem Plug-in-Element 111 und dem Plug-in-Element 211 der
Systeme 100 und 200 ist. Mit dem Proxy-Add-In
wird üblicherweise
der Besitzer des Proxy-Servers 301 von dem Besitzer des Hilfs-Servers 340 versorgt.
Immer wenn der Proxy-Server 301 eine HTTP-Antwort „404 nicht
gefunden" von einem
Web-Server 120 empfängt,
veranlasst der Proxy-Add-In 311 den Proxy-Server 301, eine
HTTP-Umleitungsantwort 331 zu erzeugen und diese zu der
Web-Browser-Software 110 zu
senden. Die HTTP-Umleitungsantwort 331 enthält die Web-Adresse
der Seite auf dem verknüpfenden Web-Server 201,
die eine falsche Verknüpfung
zu einer Seite auf dem Web-Server 120 hat, und die Web-Adresse der fehlenden
Seite auf dem Web-Server 120.
-
Die
Web-Browser-Software 110 sendet bei Empfang der HTTP-Umleitungsantwort 331 eine HTTP-Anforderung 132 an
den Hilfs-Server 340 über den
Proxy-Server 301. Die HTTP-Anforderung 132 wird
von dem Hilfs-Web-Server 340 als
HTTP-Anforderung 332 empfangen. Die HTTP-Anforderungen 132 und 332 enthalten
beide als Parameter die Web-Adresse der Seite auf dem verknüpfenden Web-Server 201,
die eine fehlerhafte Verknüpfung
zu einer Seite auf dem verknüpften
Web-Server 120 enthielt, zusammen mit der Adresse der fehlenden
Seite auf dem Web-Server 120.
-
Der
Hilfs-Web-Server 340 zieht aus der HTTP-Anforderung 332 die
Web-Adresse der
Seite auf dem verknüpfenden
Server 201 heraus. Wie bei dem System 200 sendet
der Hilfs-Web-Server 340 eine HTTP-Anforderung 220 an
den verknüpfenden Web-Server 201 und
empfängt
eine HTTP-Antwort. Wie bei dem System 200 bestimmt die
Analyse-Software 241 den Kontext der fehlenden Web-Seite
und leitet Kontext-Informationen zu der Index-Datenbasis-Software 342.
-
Die
Index-Datenbasis-Software 342 enthält eine Datenbasis von Web-Seiten
auf verknüpften Servern 350.
Die Index-Datenbasis-Software 342 enthält auch einen oder mehrere
verknüpfte
IDs 312. Die verknüpften
IDs 312 werden an den Besitzer des Hilfs-Web-Servers 340 durch
den/die entsprechenden Besitzer der verknüpften Server 350 geliefert. Üblicherweise
versorgt jeder Besitzer eines verknüpften Servers 350 den
Besitzer des Hilfs-Servers 340 mit einem verknüpften ID 312,
der eindeutig für den
Besitzer des Hilfs-Servers 340 ist. Die ein oder mehr verknüpften IDs 312 erlauben
dem/den Besitzer(n) von verknüpften
Servern 350, Klicks von dem Hilfs-Server 340 von
Klicks von anderen Web-Servern (nicht dargestellt) zu unterscheiden.
Der verknüpfte
Server 350 zählt
die Zahl von verknüpften IDs 312,
die er empfängt.
Es sei angenommen, dass dem Besitzer des Hilfs-Servers 340 ein
verknüpfter ID 312 mit
dem Wert „123456" zugeordnet worden ist.
Jedes Mal, wenn der verknüpfte
Server 350 einen verknüpften
ID 312 mit einem Wert von „123456" empfängt, wird ein Zähler (nicht
dargestellt) weitergeschaltet. Somit erlaubt dieser Zähler dem
Besitzer des verknüpften
Servers 350 zu bestimmen, wie viele Klicks von dem Hilfs-Web-Server 340 ausgegangen sind.
Im Gegenzug vergütet
der Besitzer des verknüpften
Servers 350 den Besitzer des Hilfs-Web-Servers 340.
-
Es
folgt nun eine ausführliche
Beschreibung des Systems 300.
-
Wie
zuvor erzeugt die Web-Seiten-Erstellungs-Software 143 eine
Web-Seite, und diese Web-Seite wird als HTTP-Antwort 333 über den
Proxy-Server 301 an den PC 101 des Benutzers gesendet.
Die HTTP-Antwort 133 wird von dem PC 101 des Benutzers
als Antwort 333 empfangen. Als Ergebnis wird eine Web-Seite auf der Anzeige 104 des
PC 101 des Benutzers angezeigt. Die Web-Seite enthält eine oder
mehrere Verknüpfungen.
Jede dieser Verknüpfungen
zeigt auf einen verknüpften
Server 350. Jede der Verknüpfungen enthält auch
als Parameter den verknüpften
ID 312, der von dem Besitzer des entsprechenden verknüpften Servers 350 dem
Besitzer des Hilfs-Servers 340 zugeordnet worden ist.
-
Wenn
der Benutzer eine dieser Verknüpfungen
anklickt, wird von dem PC 101 des Benutzers eine HTTP-Anforderung über den
Proxy-Server 301 gesendet und von dem verknüpften Server 350 als HTTP-Anforderung 334A empfangen.
Die HTTP-Anforderung 334 ist der Anforderung 134 der
Systeme 100 und 200 ähnlich, enthält aber
als Parameter den Wert des verknüpften
ID 312, das heißt „123456".
-
Der
verknüpfte
Server 350 enthält
Tracker-Software 343, die die verknüpften ID-Parameter analysiert, die in HTTP-Anforderungen
enthalten sind. Jedes Mal, wenn der verknüpfte Server 350 eine
HTTP-Anforderung mit einem verknüpften
ID „123456" empfängt, schaltet
die Tracker-Software einen Zähler
fort, wodurch angezeigt wird, dass ein Klick unter den Auspizien
des Hilfs-Web-Servers 340 empfangen worden ist. Als Antwort
auf die HTTP-Anforderung 334A sendet der verknüpfte Web-Server 350 eine
HTTP-Antwort 135 über
den Proxy-Server 301 an den PC 101 des Benutzers,
wo sie als eine HTTP-Antwort 135A empfangen wird.
-
Der
Proxy-Add-In 311 des Systems 300 speichert keinen
beteiligten ID 212. Bei einer alternativen Ausführungsform
des Systems 300 speichert der Proxy-Add-In 311 einen
beteiligten ID 212, der dem Hilfs-Server 340 zugeführt wird.
Dies erlaubt dem Hilfs-Server 340 zwischen Proxy-Servern 301 zu
unterscheiden, die verschiedenen Organisationen gehören. Durch
Zählen
der Zahl von empfangenen beteiligten IDs 212 für alle Werte,
zum Beispiel „123456", kann der Besitzer
des Hilfs-Servers 340 die Besitzer von Proxy-Servern 301 anteilig
nach der Zahl der Klicks bezahlen. Natürlich kann diese alternative
Ausführungsform
nicht verfolgen, ob eine HTTP-Anforderung 332 tatsächlich zu
einem Klick geführt
hat, oder nicht. Bei einer alternativen Ausführungsform wird der Proxy-Add-In so modifiziert,
dass HTTP-Anforderungen 334 überwacht werden, so dass der
modifizierte Proxy-Add-In 311 die Bezahlung richtig für jeden
entsprechenden Besitzer der beteiligten Proxy-Server 301 bestimmen
kann.
-
Dritte Ausführungsform
-
4 zeigt
ein System 400 gemäß einer
dritten Ausführungsform
der Erfindung.
-
Während die
Systeme 100, 200, 300 einen Web-Server 120 aufweisen,
hat das System 400 einen Web-Server 420. Der Web-Server 420 ist
dem Web-Server 120 ähnlich,
enthält
aber einen Fehlerbehandler 411. Der Fehlerbehandler 411 modifiziert das
Verhalten des Web-Servers 420 im Vergleich zu dem Web-Server 120,
wenn eine angeforderte Web-Seite nicht von dem Web-Server 420 abgerufen werden
kann. Der Fehlerbehandler 411 modifiziert das Verhalten
des Web-Servers 420 so, dass an Statt Rücksendung einer HTTP-Zustandskennung
wie „404 nicht
gefunden" der Web-Server 420 eine HTTP-Antwort 431 zurücksendet,
die eine HTTP-Umleitungs-Zustandskennung (zum Beispiel „302 vorübergehend
entfernt" zusammen
mit einer
"Ort:http://Internet_Adresse_von_Hilfs_Server_240/such.asp?referrer=Web_Seiten_Adresse_von_Seite_auf_verknüpfendem_Server_201&Fehler=404&fehlende_Seite=Web_Seiten_Adresse_von_fehlender_Seite" Feld) enthält. Die
HTTP-Antwort 431 veranlasst
die Web-Browser-Software 110, eine HTTP-Anforderung 132 an
einen Hilfs-Server 440 zu senden.
-
Der
Hilfs-Server 440 ist in Kommunikation mit einem Zusatz-Server 460.
Der Zusatz-Server 460 enthält Analyse-Software 241,
Index-Datenbasis-Software 142 und Web-Seiten-Erstellungs-Software 143.
Obwohl sich also der Hilfs-Server 440 von den Hilfs-Servern 140, 240, 340 unterscheidet,
ist er in der Lage, tatsächlich
für eine ähnliche
Funktionsvielfalt in Verbindung mit dem Zusatz-Server 460 zu sorgen. Wenn
der Zusatz-Server 460 einen Zugriff zu einer Web-Seite benötigt, dann
fungiert der Hilfs-Server 440 als Proxy-Server für den Zusatz-Server 460.
-
Der
Hilfs-Server 440 sendet eine HTTP-Anforderung 220 an
den verknüpfenden
Web-Server 201, der mit einer HTTP-Antwort 221 an
den Hilfs-Server 440 antwortet. Die Web-Seiten-Erstellungs-Software 143 des
Zusatz-Servers 460 erzeugt dann eine Web-Seite und sendet über den
Hilfs-Server 440 eine HTTP-Antwort 133 an die Web-Browser-Software 110.
Wenn der Benutzer auf eine Verknüpfung
klickt, wird dann eine HTTP-Anforderung 134 an den verknüpfenden
Server 150 gesendet, der mit einer HTTP-Antwort 135 antwortet, wodurch
bewirkt wird, dass eine Web-Seite aus dem verknüpften Server auf der Anzeige 104 des
PC 101 des Benutzers angezeigt wird.
-
In
alternativen Ausführungsformen
des Systems 400 ist der Fehlerbehandler 411 so
ausgebildet, dass ein beteiligter ID 212 eingeschlossen
ist, der in der HTTP-Antwort 431 enthalten
ist und somit zum Hilfs-Server 440 befördert wird. Bei einer anderen Ausführungsform
des Systems 400 wird die Index-Datenbasis-Software 142 des
Zusatz-Servers 460 durch die Index-Datenbasis-Software 342 ersetzt,
die verknüpfte
IDs 312 enthält.
In weiteren Ausführungsformen
enthält
der Hilfs-Server 440 ferner Tracker-Software 243 und
Umleitungs-Software 244.
-
Vierte Ausführungsform
-
In
den Systemen 100 bis 400 haben das Plug-in-Element 111, 211,
der Proxy-Add-In 311 oder der
Fehlerbehandler 411 festgestellt, dass ein Signal (wie
die HTTP-Zustandskennung „404 nicht
gefunden") anzeigt,
dass eine vom Benutzer angeforderte Web-Seite auf dem Web-Browser 110/der
Anzeige 104 des PC 101 des Benutzers nicht angezeigt
werden konnte. In einigen Situationen kann ein Fehler auftreten,
ohne dass eine HTTP-Zustandskennung erzeugt wird.
-
Bei
der vierten Ausführungsform
(nicht dargestellt) werden die Fehler in solchen Situationen von dem
Plug-in-Element 111, 211, dem Proxy-Add-In 311 oder
dem Fehlerbehandler 411 als zutreffend festgestellt und
dazu verwendet, die Analyse-Software 141,
die Index-Datenbasis-Software 142 und die Web-Seiten-Erstellungs-Software 143 zu
aktivieren. Für
den Fachmann sind ohne Weiteres die erforderlichen Modifikationen
in dem Plug-in-Element 111, 211, dem Proxy-Add-In 311 oder
dem Fehlerbehandler 411 ersichtlich. Es folgen fünf Beispiele
von Situationen, bei denen keine HTTP-Zustandskennung von dem Web-Server 120 erzeugt
wird:
Nicht vorhandener Domänen-Name
-
Falls
das von dem Web-Browser 110 vorgenommene DNS-Suchen nach
der Anforderung 130 in den Systemen 100, 200 oder
das von dem Proxy-Server 301 vorgenommene Suchen nach einer HTTP-Anforderung 330 in
dem System 300 versagt, eine textliche Internet-Adresse
(zum Beispiel, www.ein_nicht_vorhandene_Domäne.com') in eine numerische Internet-Protokoll-Adresse
umzuwandeln, empfängt
das Plug-in-Element 111, 211 oder der Proxy-Add-In 311 einen
Fehler-Code von dem DNS-Server und verhält sich, als wenn ein HTTP-Fehler "Host nicht gefunden" aufgetreten ist.
-
Wenn
man annimmt, dass es einen Standard-Web-Proxy-Server (das heißt einen
Proxy-Server, der nicht den Proxy-Add-In 311 enthält) zwischen dem
PC 101 des Benutzers und dem Web-Server 120 in
den Systemen 100, 200 oder zwischen dem Proxy-Server 301 und
dem Web-Server 120 in dem System 300 gibt, dann
wandelt dieser Standard-Proxy-Server seine empfangene DNS-Fehlernachricht in eine
HTTP-Fehlernachricht um und sendet diese zu dem Web-Browser 110 oder
dem Proxy-Server 301 zurück. Das Plug-in-Element 111, 211 oder
das Proxy-Add-In 311 wird dann wie üblich von der HTTP-Zustandskennung informiert.
-
2. Kein Server bei angegebener
IP-Adresse
-
Falls
die IP-Adresse in dem URL oder die von dem FQDN in dem URL aufgelöste IP-Adresse nicht
aktuell einem Gerät
im Internet zugeordnet wird, gelingt es dem Proxy-Server nicht,
eine Verbindung zu dem nicht existierenden Web-Server 120 zu
errichten.
- 2.1 Der Web-Browser 110 oder
der Proxy-Server 301 (oder der Standard-Proxy-Server) wird eine Auszeit
nehmen, wenn eine Verbindung nicht innerhalb einer bestimmten Dauer
(üblicherweise einige
Sekunden) errichtet wird. Das Plug-in-Element 111, 211 oder
der Add-In 311 wird darüber eine
Meldung empfangen und kann erneut fortfahren, als hätte er eine
HTTP "Host nicht
gefunden" empfangen.
(Der Standard-Proxy wird die Auszeit in eine HTTP-Zustandskennung umwandeln
und diese an den Web-Browser 110 oder den Proxy-Server 301 senden,
und somit kann sich das Plug-in-Element 111, 211 oder
der Proxy-Add-In 311 verhalten wie zuvor erwähnt).
- 2.2 Alternativ kann ein Router, der näher an dem Unter-Netzwerk ist,
wo der Web-Server 120 sein sollte, bereits Informationen
haben, dass der Web-Server 120 nicht existiert. Er wird
eine ICMP-Nachricht (Internet-Control-Message-Protokoll) "Host nicht erreichbar" zurücksenden.
Das Plug-in-Element oder der Add-In wird wie oben erwähnt informiert
und kann fortfahren wie bei jedem anderen Fehler. (Wiederum wird
ein Standard-Proxy üblicherweise
den ICMP-Fehler
in eine HTTP-Zustandskennung umwandeln, die von dem Web-Browser 110 empfangen
wird).
-
3. Keine Route zum Server
-
Falls
es ein Problem gibt, durch das verhindert wird, dass Datagramme
den Web-Server 120 von dem PC 101 des Benutzers
oder dem Proxy-Server 301 (oder einem intervenierenden
Standard-Web-Proxy) erreichen, erfolgt dasselbe wie im Fall 2, mit
Ausnahme, dass ein intervenierender Router im Fall 2.2 ein ICMP "Netzwerk unerreichbar" sendet.
-
4. Keine Route vom Server
-
Falls
es ein Problem gibt, Datagramme daran zu hindern, vom Web-Server 128 zurückgesendet zu
werden, findet immer der Fall 2.1 statt.
-
5. Server ist kein Web-Server
-
Falls
der Server 120 angeschlossen ist, aber keine Web-Server-Software
auf der Standard-HTTP-Anschlussnummer (TCP-Port 80) oder auf
der in dem URL spezifizierten Anschlussnummer betreibt, kann er
Anforderungen vollständig
ignorieren, die zu dem Fall 2.1 führen würden, oder er kann das ICMP "Protokoll unerreichbar" oder das ICMP "Anschluss unerreichbar" zurücksenden,
was wie in 2.2 gehandhabt werden kann.
-
Ein
Hinweis auf die oben erwähnten
fünf Situationen
findet man bei:
http://www.ietf.org/rfc/rfc0792.txt
IETF
RFC 792: Internet-Control-Message-Protokoll
-
Es
sei für
die oben unter 2.1 beschriebene Situation bemerkt, dass zwar eine
HTTP-Zustandskennung zu dem Web-Browser 110 zurückgesendet wird,
und diese HTTP-Zustandskennung von einem Standard-Proxy-Server,
aber nicht von dem Web-Server 120 erzeugt wird.
-
Fünfte Ausführungsform
-
7 zeigt
ein System 700 gemäß einer fünften Ausführungsform
der Erfindung. Das System 700 hat viele Merkmale mit dem
früher
beschriebenen System 100 gemeinsam. Jedoch ist in dem System 700 der
Hilfs-Server 140 des Systems 100 durch einen Hilfs-Server 740 ersetzt.
Der Hilfs-Server 740 ist dem Hilfs-Server 140 ähnlich,
aber er ist auch so angeordnet, dass er mit einem „who is"-Server 701 und
einem „what
is"-Server 702 kommuniziert.
-
Das
System 700 erlaubt den Erhalt zusätzlicher Informationen über den
Kontext einer misslungenen HTTP-Anforderung 130. Es ist
für den
Fachmann ersichtlich, dass das oben beschriebene System 100 die
textliche Form des URL des Web-Servers 120 analysiert,
um Schlüsselworte
zu bestimmen, zum Beispiel „chemisch” und „Elemente"). Obwohl in einigen
Situationen die Analyse von Schlüsselworten
eines URL ausreichende Kontext-Informationen liefern kann, können in
anderen Situationen mehr Kontext-Informationen benötigt werden,
um einen Benutzer des Systems mit Verknüpfungen zu alternativen Web-Seiten
zu versehen, die von ausreichender Relevanz sind.
-
Es
wird nun ein hypothetisches Beispiel dargelegt. Es sei zum Beispiel
angenommen, dass der Benutzer die Web-Adresse eintippt:
http://www.elephant.co.uk/diese_Seite_existiert_nicht.html
-
Bei
diesem hypothetischen Beispiel sendet der Web-Server 120 eine
HTTP-Antwort 131 zurück, die
die HTTP-Zustandskennung „404 nicht
gefunden" enthält. (Es
sei bemerkt, dass dies ein hypothetisches Beispiel ist; die aktuelle
www.elephant.co.uk-Web-Site sendet keine 404 HTTP-Zustandskennung
zurück,
sondern zeigt statt dessen eine Seite an, die angibt, dass die „diese_Seite_existiert_nicht.html"-Seite nicht gefunden
werden konnte). Das Plug-in-Element 111 sendet dann eine
HTTP-Anforderung 132 (die die Web-Adresse enthält) an die Analyse-Software 741 des
Hilfs-Servers 740.
-
Die
Analyse-Software 741 ist der Analyse-Software 141 ähnlich,
ist aber so ausgebildet, dass sie versucht, weitere Informationen
hinsichtlich des Kontextes der Web-Seite zu erhalten, die nicht gefunden
werden konnte. Zum Beispiel könnte
eine naive Analyse des Kontextes der obigen Web-Adresse nach Schlüsselworten
in der natürlichen
Sprache vorschlagen, dass der Kontext der Web-Seite Dickhäuter ist
(das heißt
Tiere wie Elefanten, die eine dicke Haut haben).
-
Bei
dieser Ausführungsform
sendet die Analyse-Software 741 den FQDN (das heißt www.elephant.co.uk)
als Teil einer HTTP-Anforderung 730 an einen „whois"-Server 701.
Der Whois-Server 701 liefert Informationen über die
Person oder die Organisation, die den Domänen-Namen www.elephant.co.uk registriert
hat. Ein Beispiel für
einen Whois-Server ist der Whois-Server bei der folgenden Web-Adresse:
http://www.Samspade.org/t/whois?Server=magic
-
Der
Fachmann weiß,
dass das Whois-Protokoll von dem IETF in RFC 3912 (siehe http://www.ietf.org/rfc/rfc3912.txt)
definiert ist. Es gibt keine Spezifikation für das Format von Anforderungen
an Whois-Server aufgrund HTTP-Basis. Jeder definiert sein eigenes.
RFC3912 definiert das Whois-Protokoll, das unabhängig von HTTP ist. Daher kann
je nach dem gewählten
Whois-Server für den
Hilfs-Server 740 das Anforderungs/Antwort-Paar 730/731 ein
gebräuchliches
Format auf HTTP-Basis, wie für
SamSpade veranschaulicht, verwenden, oder es kann das definierte
Whois-Format aus RFC3912 verwenden.
-
Die
Analyse-Software 741 empfängt eine HTTP-Antwort 742 von
dem Whois-Server 701.
Bei diesem hypothetischen Beispiel enthält die HTTP-Antwort 732 die
folgenden Informationen:
Domänen-Name:
Elephant.co.uk
Registrierter:
Admiral
Insurance Services Limited
Agent des Registrierten:
NTL
Internet Limited [Tag = CABLEOL]
URL: http://www.ntl.com
Relevante
Daten:
Zuletzt aktualisiert: 12. Okt. 2004
Namen-Server,
der Reihe nach aufgelistet:
dns1.ntli.net 62.353.162.237
dns2.ntli.net
194.168.4.237
WHOIS-Datenbasis zuletzt aktualisiert um 18:10:00 05.
Juli 2005
-
Der
Kontext-Analysierer 741 analysiert die HTTP-Antwort 732 nach
Schlüsselworten
und bestimmt bei Auffinden des Schlüsselwortes „insurance" (in diesem Fall als Teil des Namens
des Registrierten), dass der Kontext der hypothetischen Web-Seite,
die nicht abgerufen werden konnte, tatsächlich insurance und nicht
Dickhäuter
ist. Somit kann das System 700 durch Verwendung eines Whois-Servers 701 für eine Verbesserung
in der Relevanz der Verknüpfungen
in der HTTP-Antwort 133 sorgen.
-
Bei
dem oben beschriebenen hypothetischen Beispiel enthält die HTTP-Antwort 731 von dem
Whois-Server 701 ausreichende Kontext-Informationen. In
anderen Situationen kann die Antwort von dem Whois-Server 701 den
Namen und die Adresse des registrierten Eigentümers eines Domänen-Namens
enthalten, aber er könnte
keine Schlüsselworte
wie insurance enthalten. Zum Beispiel enthält die Whois-Antwort für den Domänen-Namen www.newscientist.co.uk
die folgenden Informationen:
Domänen-Name:
newscientist.co.uk
Registrierter:
Reed
Business Information Ltd
Adresse des Registrierten:
Quadrant
House
The Quadrant
Sutton
Surrey
SM2 5AS
GB
-
Obwohl
der Registrierte des Domänen-Namens
angegeben ist, könnte
der Registrierte nicht immer ausreichende Kontext-Informationen
liefern. Hier wird der Name des Registrierten mit „Reed Business Information
Ltd" angegeben,
aber dies gibt den Kontext des Registrierten nicht ausreichend an.
Unter solchen Umständen
zieht die Analyse-Software 741 zum Beispiel den Namen des
Registrierten heraus und sendet eine HTTP-Anforderung 732 an
den What_is-Server 702.
-
Der
What_is-Server 702 antwortet mit einer HTTP-Antwort 733,
die Informationen über
den Kontext des Registrierten enthält. Zum Beispiel kann im Vereinigten
Königreich
die folgende Web-Seite:
www.192.com
benutzt werden, um
Kontext-Informationen über
den Registrierten zu erhalten. Für
den Registrierten „Reed
Business Information Ltd" enthält die HTTP-Antwort „Zeitungs-
und Zeitschriften-Verleger".
Die Analyse-Software 741 verwendet die Schlüsselworte
als Kontext-Informationen. Somit kann bei dieser Ausführungsform
durch Verketten eines Whois-Servers 701 mit einem What_is-Server 707 das
System 700 für
eine Verbesserung in der Relevanz der Verknüpfungen in der HTTP-Antwort 133 sorgen.
-
Der
Fachmann wird erkennen, dass das System 700 auch die Adresse
des Registrierten als Teil der Kontext-Informationen oder als Teil
der Frage an den What_is-Server 702 verwenden kann. An
Statt www.192.com zu verwenden, kann das System so angeordnet werden,
dass eine Online-Datenbasis wie das Companies House befragt wird.
In dem UK ist das Companies House ein offizielles Register, das Einzelheiten
von registrierten Gesellschaften liefert.
-
Der
Fachmann wird auch erkennen, dass das System 700 modifiziert
werden kann, zum Beispiel um in Verbindung mit den Systemen 200, 300, 400 zu
arbeiten. Der Fachmann wird ferner erkennen, dass das System 700 modifiziert
werden kann. Zum Beispiel kann die Analyse-Software 741 so
modifiziert werden, dass an Statt von oder zusätzlich zum Suchen von Kontext-Informationen aus
einem Whois-Server 701 oder einem What_is-Server 702 die
Kontext-Analyse-Software 741 eine Kontext-Analyse bei einer
anderen Informationsquelle ausführen kann.
Zum Beispiel kann die Analyse-Software 741 so ausgebildet
werden, dass sie eine HTTP-Anforderung an die Homepage einer Web-Site
sendet, für
die eine angeforderte Seite nicht verfügbar ist (das heißt für den Fall,
dass die Seite http://www.elephant.co.uk/diese_Seite_existiert_nicht.html
nicht verfügbar
ist, fordert die Analyse-Software 741 die Homepage von
der Web-Site www.elephant.co.uk an und führt eine Kontext-Analyse auf
der Homepage aus). Der Fachmann wird erkennen, dass es eine Vielfalt
von anderen Online-Quellen gibt, in denen die Analyse-Software 741 eine
Kontext-Analyse ausführen
kann. Einige dieser Online-Quellen sind von größerem Nutzen bei der Gewinnung
von Kontext-Informationen (das sind Kontext-Informationen über eine Web-Seite,
die nicht an den PC 101 eines Benutzers gesendet werden
konnte) als andere Online-Quellen. Der Fachmann kann bestimmen,
welche Online-Quellen nützliche
Informationen liefern. Zum Beispiel ist es unwahrscheinlich, dass
eine zufällig
gewählte
Web-Seite brauchbare Kontext-Informationen liefert. Umgekehrt ist
es wahrscheinlich, dass Online-Datenbasen, die Homepage einer Web-Seite
oder eine betreffende Web-Seite (das heißt eine Web-Seite mit einer
fehlerhaften Verknüpfung)
brauchbare Kontext-Informationen liefern.
-
Sechste Ausführungsform
-
8 zeigt
ein System 800, das verwendet werden kann, um den Proxy-Add-In 311 des
Systems 300 zu ersetzen. 8 zeigt
einen gemäß Internet-Inhalts-Anpassungs-Protokoll
(ICAP) aktivierten Proxy-Server 801 und einen ICAP-Server 811.
Einige Teile des Systems 800 sind gemeinsam mit dem System 300,
und so sind zur Bequemlichkeit des Lesers einige der HTTP-Anforderungen
und HTTP-Antworten in 8 gezeigt. Der Fachmann weiß, dass
ICAP ein IETF-Standard-Protokoll
ist, das in RFC 3507
(http://www:ietf.org/rfc/rfc3507.txt)
beschrieben ist, das einem Internet-Proxy-Server erlaubt, Funktionen auszuführen wie
Virus-Scanning, Sprachen-Übersetzung
oder Inhalts-Filterung. Das ICAP-Protokoll erlaubt Proxy-Servern,
Fragen an einen oder mehrere Inhalts-Anpassungs-Server über ein
privates Netzwerk (wie ein internes LAN von ISP) oder über ein öffentliches,
auf IP beruhendes Netzwerk (wie das öffentliche Internet) zu senden.
-
Im
Vergleich mit dem System 300 ersetzt der Proxy-Server 801 den
Proxy-Server 301,
während der
ICAP-Server 811 den Proxy-Add-In 311 ersetzt. Bei
diesem Ausführungsbeispiel
ist der ICRP-Server 811 ein Server, der mit dem Hilfs-Server 340 über das Internet
und mit dem Proxy-Server 801 durch eine Ethernet-Verknüpfung verbunden
ist. Der ICAP-Server 811 benötigt selbst keine direkte Verbindung
zu dem Hilfs-Server 340, da die Kommunikation in bevorzugten,
auf Proxy beruhenden Ausführungsformen
so arbeiten, dass sie den Web-Browser 110 HTTP-Anforderungen
mittels HTTP-Umleitungs- Antworten
ausgeben lassen. Der Proxy-Server 811 enthält einen
ICAP-Client, der mit dem ICAP-Server 811 kommuniziert.
-
Das
System 800 kann zum Abfangen und Modifizieren von ausgehenden
HTTP-Anforderungen 130 von
dem PC 101 eines Benutzers und/oder von ankommenden HTTP-Antworten 131 bei
dem PC 101 des Benutzers verwendet werden. Da einige Merkmale
des Systems ähnlich
jenen des Systems 300 sind, erfolgt die Beschreibung der
Arbeitsweise des Systems 800 in Begriffen des Systems 300.
-
Zuerst
sei eine ausgehende HTTP-Anforderung 130 von dem PC 101 des
Benutzers betrachtet.
-
Wenn
der Proxy-Server 801 die HTTP-Anforderung 130 empfängt, sendet
der Proxy-Server 801 eine Nachricht 860 über die
Ethernet-Verknüpfung
zu dem ICAP-Server 811. Die Nachricht 860 enthält eine Kopie
der HTTP-Anforderung 130. Der ICAP-Server 811 prüft zuerst,
dass sich der FQDN in dem URL der HTTP-Anforderung zu einer realen
IP-Adresse auflöst.
Der ICAP-Server 811 prüft,
dass der FQDN sich bei Verwendung eines DNS-Servers auflöst. Ein
Beispiel für
eine Situation, bei der sich der FQDN nicht zu einer realen Adresse
auflöst,
ist, wenn der Web-Site-Name in der HTTP-Anforderung falsch spezifiziert
worden ist, so dass die DNS-Auflösung des
Web-Site-Namens scheitert. Wenn man annimmt, dass der FQDN sich
zu einer realen IP-Adresse auflöst,
prüft der
ICAP-Server 811 dann, ob es einen Web-Server 120,
der auf die IP-Adresse hört,
die von der DNS-Auflösung
angegeben wird, gibt oder nicht. Wenn es einen hörenden Web-Server 120 gibt, dann
sendet der ICAP-Server 811 eine Nachricht 861 zurück zu dem
Proxy-Server 801. Die Nachricht 861 enthält die unmodifizierte
HTTP-Anforderung 130, die von dem Proxy-Server 801 als
HTTP-Anforderung 330 über
das Internet an den Web-Server 120 gesendet wird.
-
Wenn
die DNS-Auflösung
scheitert, oder wenn der Web-Server 120 HTTP-Anforderungen nicht
verarbeitet, dann bewirkt der Proxy-Server 801, dass an Statt
der Sendung einer Nachricht 861, die die unmodifizierte
HTTP-Anforderung enthält,
eine HTTP-Umleitungs-Antwort 131 an den Web-Browser 110 in
dem PC 101 des Benutzers gesendet wird. Wie oben beschrieben
wurde, veranlasst die HTTP-Umleitungs-Antwort 331 den Web-Browser 110,
eine HTTP-Anforderung 132 an den Hilfs-Server 340 zu
senden. Der Hilfs-Server 340 führt dann eine Kontext-Analyse
aus, wie oben beschrieben wurde.
-
Der
Fachmann erkennt, dass der ICAP-Server 811 so ausgebildet
werden könnte,
dass er, an Statt eine HTTP-Umleitungs-Antwort 331 an den Web-Browser 110 zu
senden, eine Nachricht 861 an den Proxy-Server 801 sendet,
in der der Header der HTTP-Anforderung modifiziert ist. Der Proxy-Server 801 sendet
dann die modifizierte HTTP-Anforderung an das Internet aus. Die
HTTP-Anforderung
wird so modifiziert, dass an Statt an den Web-Server 120 adressiert
zu werden, die HTTP-Anforderung den Hilfs-Server 340 als
Ziel spezifiziert. Der Hilfs-Server 340 führt dann
eine Kontext-Analyse aus, wie oben beschrieben wurde.
-
Zweitens
sei eine ankommende HTTP-Antwort 131 von der Web-Site 120 betrachtet.
-
Wenn
der Proxy-Server 801 die HTTP-Antwort 131 von
dem Web-Server 120 empfängt,
sendet er eine Nachricht 871 an den ICAP-Server 811.
Die Nachricht 871 enthält
eine Kopie der HTTP-Antwort 131. Der ICAP-Server 811 prüft den Header
der HTTP-Antwort 131, um zu bestimmen, ob die Web-Seite
(oder eine andere Quelle), die von dem Benutzer angefordert wurde,
erfolgreich von dem Web-Server 120 abgerufen werden konnte.
Wenn die Zustandskennung der HTTP-Antwort 131 angibt, dass
die Web-Seite erfolgreich abgerufen wurde, dann sendet der ICAP-Server 801 eine
Nachricht 872 an den Proxy-Server 801; die Nachricht 872 informiert
den Proxy-Server 801, dass die HTTP-Antwort unmodifiziert
zum PC 101 des Benutzers geleitet werden sollte.
-
Wenn
die Zustandskennung 131 angibt, dass die Web-Seite nicht
erfolgreich abgerufen wurde, dann prüft bei diesem Ausführungsbeispiel
der ICAP-Server 811 auch die Länge (das heißt die Zahl von
Zeichen) des Körpers
(im Gegensatz zu dem Header) der HTTP-Antwort 131. Ist
die Länge
des Körpers
unterhalb einer Schwellwertlänge,
sendet dann der ICAP-Server 811 eine Nachricht 872,
die den Proxy-Server 801 anweist, die HTTP-Antwort 131 durch
eine HTTP-Umleitungs-Antwort 331 zu
ersetzen. Die HTTP-Umleitungs-Antwort 131 veranlasst den
Web-Browser 110, eine HTTP-Anforderung 132 an
den Hilfs-Server 340 zu
senden. Der Hilfs-Server 340 führt dann eine Kontext-Analyse durch,
wie oben beschrieben wurde.
-
Bei
einigen Ausführungsformen
kann der ICAP-Server 811 so ausgebildet werden, dass er
nur die Zustandskennung einer HTTP-Antwort 131 prüft, an Statt
sowohl die Zustandskennung als auch die Körperlänge einer HTTP-Antwort 131 zu
prüfen.
-
Bei
der oben beschriebenen Ausführungsform
kommuniziert der ICAP-Server 811 mit einem DNS-Server und
mit einem Web-Server 120, um zu prüfen, dass eine ausgehende HTTP-Anforderung 130 von
dem Web-Server 120 beantwortet würde. Bei einigen Ausführungsformen
enthält
der ICAP-Server 811 einen Timer zur Bestimmung, ob zuviel
Zeit abgelaufen ist, seit entweder der DNS-Server oder der Web-Server 120 abgefragt
wurde. Wenn zuviel Zeit verstrichen ist, glaubt der ICAP-Server 811,
dass ein Fehler aufgetreten ist und veranlasst den Proxy-Server 811,
eine HTTP-Umleitungs-Antwort 331 an den Web-Browser 110 zu
senden.
-
Der
Fachmann wird erkennen, dass viele Web-Seiten eine Mehrzahl von
Bildern umfassen. Solche Web-Seiten enthalten HTML-Informationen, die
spezifizieren, von wo die Bilder heruntergeladen werden können. Eine
solche Web-Seite ist in einen Web-Browser 110 geladen worden,
der dann eine HTTP-Anforderung für
jedes Bild ausgibt. Vorzugsweise ignoriert der ICAP-Server 811 den
HTTP-Zustand von
Anforderungen für
Bilder (zum Beispiel in den Datei-Formaten .jgg und .png) und ausführbaren Dateien
(zum Beispiel in dem Format .exe). In einigen Fällen, zum Beispiel wenn der
angeforderte URL in gemeinsamen Bild- oder anderen Nicht-HTML-Seiten Objekt-Datennamen-Erweiterungen
(.gif, .ccs, 0++/60et, ist es möglich,
den Proxy-Server 801 so zu konfigurieren, dass er den ICAP-Server 811 überhaupt
nicht fragt. Dies vermindert die Belastung des Kommunikationskanals
(Ethernet oder Internet) zwischen dem Proxy-Server 801 und
dem ICAP-Server 811 und vermindert die Belastung des ICAP-Servers 811.
In anderen Fällen
könnte
der URL den Datentyp nicht angeben, und der ICAP-Server 811 muss die Bestimmung
vornehmen. Ein Verfahren besteht darin, den Text von zuvor zurückgesendeten
HTML-Seiten für
die URLs von eingebetteten Objekten zu prüfen und diese in einer Datenbasis
für eine
gesetzte Zeitdauer zu speichern. Wenn der ICAP-Server anschließend die
Anforderung für
das eingebettete Objekt empfängt,
kann er sie aus der Datenbasis feststellen. (Um zu verhindern, dass
die Datenbasis unendlich wächst,
können ältere URLs
ausrangiert werden, wenn sie dort einmal eine bestimmte Zeit lang gewesen
sind. Diese Art von Cache-Management ist allgemein bekannt.
-
Weitere Ausführungsformen
-
Die
oben beschriebenen Systeme 100, 200, 300, 400, 700 und 800 erhalten
Kontext-Informationen von entweder (i) dem FQDN, (ii) einer Web-Seite mit
fehlerhafter Verknüpfung
oder (iii) von einem Zusatz-Server (wie dem Whois-Server 701 oder
dem What_is-Server 702). Der Fachmann wird erkennen, dass
bei alternativen Ausführungsformen
die Systeme modifiziert werden, so dass die Systeme, die sowohl
oder zusätzlich
Kontext-Informationen von jenen Quellen erhalten, auch versuchen,
Kontext-Informationen von der Homepage der Web-Site mit der nicht erhältlichen
Web-Seite zu bekommen. Zum Beispiel sei angenommen, dass der Benutzer
entweder einen URL eintippt oder auf eine Verknüpfung klickt, zum Beispiel
die hypothetische Web-Seite:
www.gültiger Domänen Name.com/fehlende_Seite.html
wo
der FQDN gültig
einen Domänen-Namen
spezifiziert, aber wo der Pfad keine gültige Web-Seite für jenen
Domänen-Namen
spezifiziert. Bei dieser alternativen Ausführungsform ist das System so
ausgelegt, dass die Homepage für
die Web-Seite belastet
wird. Die meisten Web-Sites sind so ausgelegt, dass, wenn kein Pfad,
der eine bestimmte Web-Seite spezifiziert, vorgesehen ist, dann
die Web-Site fehlerhaft eine
Web-Seite zurücksendet,
die „index.html" genannt wird. Somit
würde bei
dieser alternativen Ausführungsform
die Web-Site mit der folgenden Web-Seite versehen:
www.gültiger Domänen Name.com/index.html
und
das System würde
dann eine Kontext-Analyse auf der Homepage der Web-Site ausführen.
-
Der
Fachmann wird erkennen, dass es Unterschiede zwischen dem Erhalt
von Kontext-Informationen von der Homepage einer Web-Site im Vergleich
zum Erhalt von Kontext-Informationen von einem Zusatz-Server, wie
einem Whois-Server 701 gibt.
Wenn der Kontext-Analysierer (zum Beispiel die Analyse-Software 141)
Kontext-Informationen von der Homepage (zum Beispiel „index.html") einer Web-Site
erhält,
dann sendet der Kontext-Analysierer eine HTTP-Anforderung an die
Web-Site und führt eine
Kontext-Analyse auf der Web-Seite
aus, die von der Web-Site zurückgesendet
wird. Wenn der Kontext-Analysator
Kontext-Informationen von einem Zusatz-Server erhält, kann
die Ausführung
eines zweistufigen Prozesses erforderlich sein. Zuerst sendet der
Kontext-Analysator eine HTTP-Anforderung an den Zusatz-Server und
empfängt
eine HTTP-Antwort von dem Zusatz-Server. Die HTTP-Antwort kann eine Web-Seite definieren,
die ein oder mehere Felder enthält.
Zum Beispiel kann der Whois-Server 701 ein Feld haben,
in das ein Benutzer (oder ein Computer) einen Domänen-Namen
eingeben kann. Nachdem der Benutzer (oder ein Computer) einen Domänen-Namen
eingegeben hat und die „Enter"-Taste gedrückt hat,
antwortet der Whois-Server 701 mit einer dynamisch erzeugten
HTML-Web-Seite,
die Kontext-Informationen enthält.
Der Kontext-Analysator analysiert dann die dynamisch erzeugte Web-Seite zum
Beispiel nach Schlüsselworten.
-
Es
werden nun weitere Ausführungsformen diskutiert.
Aus Bequemlichkeit werden die meisten der folgenden Ausführungsformen
in Form der Systeme 100, 200, 300 oder 400 dargestellt.
Der Fachmann wird erkennen, dass viele der Ausführungsformen auch bei den Systemen 700 und 800 oder
der vierten Ausführungsform
angewendet werden könnten.
-
Der
Fachmann wird erkennen, dass andere Abänderungen bei den Systemen 100, 200, 300 oder 400 oder
bei der vierten Ausführungsform
vorgenommen werden können.
Zum Beispiel kann an Stelle von Software zur Ausführung der
Analyse-Software 141, 241 Index-Datenbasis-Software 141, 241,
Index-Datenbasis-Software 142 und
der Web-Seiten-Erstellungs-Software spezielle Hardware zur Ausführung derselben
Funktionen verwendet werden.
-
Die
Systeme 100, 200, 300, 400 haben
die Analyse-Software 141, 241, die Index-Datenbasis-Software 142, 342 und
die Web-Seiten-Erstellungs-Software 143 in den Hilfs-Server 140, 240, 340 integriert.
Bei alternativen Ausführungsformen
besitzt der Hilfs-Server nicht diese Funktionsvielfalt, man hat aber
Statt dessen Kommunikations-Verknüpfungen zu anderen Servern,
die die erforderliche Funktionsvielfalt haben. Zum Beispiel überträgt bei einer
alternativen Ausführungsform
der Hilfs-Server bei Empfang einer HTTP-Anforderung 232 und einer HTTP-Antwort 221 die
Informationen zur „Kontext"-Software, die den Kontext ableitet und
diesen zum Hilfs-Server zurücksendet.
Der Hilfs-Server überträgt dann
den Kontext zu einem Datenbasis-Server, der Einzelheiten der relevanten
Verknüpfungen
direkt an einen Web-Seiten-Erstellungs-Server
liefert. Dieser erzeugt dann die benötigte Web-Seite und sendet
diese zum Hilfs-Server für
die Übertragung
zu der Web-Browser-Software 110.
-
Die
Systeme 100, 200, 300, 400 übertragen üblicherweise
nicht die Internet-Protokoll-(IP)-Adresse
des PC 101 des Benutzers zu dem Hilfs-Server 140, 240, 340, 440.
In alternativen Ausführungsformen
wird die IP-Adresse des Benutzers als Parameter zum Hilfs-Server
gesendet. Dies dient zur Verbesserung der Kontext-Informationen
durch Berücksichtigung
des ungefähren
geographischen Ortes des PC 101 des Benutzers. Dies erlaubt
eine Verbesserung der Relevanz von zum Beispiel Kreditkarten oder
anderen Finanzdiensten, oder es erlaubt geeigneten Verkauf von schweren
oder sperrigen Waren, oder von Sprach-Übersetzungsdiensten.
-
Bei
alternativen Ausführungsformen
ist der Hilfs-Server so ausgebildet, dass Anforderungen versteckt
und so indiziert werden, dass die Geschwindigkeit der Antwort zum
Benutzer verbessert wird. Wenn zum Beispiel ein Web-Server 120 zeitweilig nicht
verfügbar
wird, ist es möglich,
dass verschiedene Benutzer zu Seiten auf dem Web-Server 120 Zugriff
nehmen wollen und somit gleiche „404 nicht gefunden"-Fehler wiederholt
auftreten.
-
Bei
einer alternativen Ausführungsform
erzeugt das Plug-in-Element 111, 211 oder der
Proxy-Add-In 311 anhaltend „global eindeutiger Identifizierer", der eindeutig einen
bestimmten Benutzer identifiziert. Bei dieser alternativen Ausführungsform ist
vorgesehen, dass der global eindeutige Identifizierer eine Person
nicht aufspüren
kann, wodurch die Privatsphäre
gewährleistet
wird. Durch Einbeziehen des global eindeutigen Identifizierers als
Parameter zu dem Hilfs-Server kann der Hilfs-Server die Surf-Gewohnheiten
des Benutzers berücksichtigen und
somit den Kontext und damit die Relevanz der dem Benutzer präsentierten
Verknüpfungen
verbessern. Bei ähnlichen
Ausführungsformen
kann der global eindeutige Identifizierer in Form von ständigen Cookies
auf dem PC 101 des Benutzers ausgeführt werden. In gleicher Weise
kann der beteiligte ID als ständiger
Cookie auf dem PC 101 gespeichert werden. In anderen Ausführungsform
wird der beteiligte ID nicht zur Aufzeichnung verwendet, welche
Organisation zum Beispiel das Plug-in-Element 211 an den Benutzer
verteilt, sondern er wird als ständiger
global eindeutiger Identifizierer verwendet oder den Benutzer nach
Kategorien gemäß einem
Klischee einzuordnen, um zum Beispiel anzuzeigen, dass der Benutzer
zu einem Interesse an Chemie oder Choreographie neigt.
-
Bei
einigen Umständen
ist es möglich,
dass gleichzeitig eine Kombination der Systeme 100, 200, 300 und 400 vorhanden
ist. Zum Beispiel kann der PC 101 eines Benutzers, der
ein Plug-in-Element 211 hat, auf das Internet über einen
Proxy 301 zugreifen, der einen Proxy-Add-In 311 hat,
um auf einen Web-Server 420 zuzugreifen, der einen Fehlerabwickler 411 enthält. In diesem
Fall würde
der Fehlerabwickler 411 den Proxy-Add-In 311 und
das Plug-in-Element 211 beherrschen, da keine „404 nicht
gefunden"-Fehlerantwort
zu dem PC 101 zurückgesendet
würde.
Für den
Fachmann ist ersichtlich, dass das Verhalten des Fehlerabwicklers 411 so modifiziert
werden kann, dass er Informationen liefert, die von dem Proxy-Add-In 311 und
dem Plug-in-Element 211 geprüft werden können, um so eine Aufteilung
der Vergütung
zwischen den verschiedenen Organisationen zu ermöglichen, die den Fehlerabwickler 411,
den Proxy-Add-In 311 und das Plug-in-Element 211 versorgen.
-
In
alternativen Ausführungsformen
ist das Plug-in-Element 211 so ausgebildet, dass es die
jüngeren
Web-Seiten-Adressen (URLs), die der Benutzer aufgesucht hat (zum
Beispiel die vorhergehenden fünf
Web-Server) enthält,
um zusätzliche
Kontext-Informationen zu liefern. In gleicher Weise kann der Fehlerabwickler 411 modifiziert
werden, um eine begrenzte Erfüllung
derselben Funktionsvielfalt durch Verwendung von Session-Cookies
auf dem PC 101 des Benutzers vorzusehen, um mehr jüngere Web-Seiten-Adressen
zu speichern, die der Benutzer aufgesucht hat.
-
In
weiteren alternativen Ausführungsformen können mehrere
Hilfs-Server vorgesehen werden. Bei einer Ausführungsform wird jeder Benutzer
zu einem bestimmten Hilfs-Server geleitet, um so die Last zwischen
den verschiedenen Hilfs-Servern auszugleichen, zum Beispiel um die
Rechenlast oder den Internet-Verkehr
gleichmäßig auf
die verschiedenen Hilfs-Server zu verteilen. Alternativ können verschiedene
Benutzer zu verschiedenen Hilfs-Servern auf der Basis eines beteiligten
ID 212 geleitet werden. Es können auch mehrere ICAP-Server
verwendet werden, um die Last zu verteilen und/oder eine Redundanz
für den
Fall des Versagens eines der ICAP-Server vorzusehen. Außerdem verwenden
ICPs allgemein Mehrfach-Proxy-Server. In diesem Fall kann ein einzelner
ICAP-Server 811 Dienste
für mehr
als einen ICAP-aktivierten Proxy-Server 801 vorsehen.
-
Die
Web-Seiten-Erstellungs-Software 143 der Systeme 100, 200, 300, 400 erstellt
eine von einem Benutzer auf einer Anzeige 104 zu betrachtende Web-Seite. In einigen
Situationen könnte
der Benutzer nicht in der Lage sein, ohne weiteres eine Anzeige
zu betrachten, zum Beispiel wenn der Benutzer ein Auto fährt. Somit
wird bei einer alternativen Ausführungsform
modifizierte Browser-Software
verwendet, um einen Ausgang zu erzeugen, der zum Benutzer beispielsweise
durch Software für
die Umwandlung von Text in Sprache übertragen wird, so dass der
Benutzer den eingestuften Verknüpfungen
zuhört und
eine Verknüpfung
auswählt,
indem er den Web-Browser anspricht, um eine Verknüpfung auszuwählen.
-
Die
Systeme 100, 200, 300, 400 verwenden entweder
ein Plug-in-Element 111, 211, einen Proxy-Add-In 311 oder
einen Fehlerabwickler 411 in Kombination mit einem Hilfs-Server 140, 240, 340, 440.
Bei alternativen Ausführungsformen
ist etwas oder die gesamte Funktionsvielfalt in dem Plug-in-Element 111, 211,
dem Proxy-Add-In 311 oder dem Fehlerabwickler 411 enthalten.
Bei anderen alternativen Ausführungsformen
verwendet der PC des Benutzers einen Web-Server, und die Funktionsvielfalt des
Plug-in-Elements 111, 211, des Proxy-Add-In 311 oder
des Fehlerabwicklers 411 ist Teil des PC 101 des
Benutzers. Für
den Fachmann ist ersichtlich, dass die Funktionsvielfalt von einem/einigen/allen
von Plug-in-Element 111, 211, Proxy-Add-In 311 oder
Fehlerabwickler 411, Analyse-Software 142, Index-Datenbasis-Software 142 und
Web-Seiten-Erstellungs-Software 142 als
Teil des Operationssystems des PCs des Benutzers ausgeführt werden
kann.
-
Bei
einigen Ausführungsformen
wird, an Statt dem Benutzer eine Liste mit alternativen Verknüpfungen
zur Betrachtung und Auswahl zu präsentieren, eine Umleitungs-HTTP-Antwort
an den PC 101 des Benutzers gesendet, der veranlasst, dass die
Verknüpfung,
welche auch immer für
am relevantesten gehalten wird, direkt auf der Anzeige 104 angezeigt
wird. Einnahmen können
auf der Basis von Kosten pro Klick (CPC), Kosten pro Leitung (CPL), Kosten
pro Aktion (CPA), Kosten pro Kunde, Kosten pro tausend (CPM, worin
M die römische
Zahl für
tausend ist), Kosten pro Verkauf (CPS) oder Kosten pro Auftrag (CPO)
erlangt werden. Verschiedene Kategorien von Verknüpfungen
können
verschiedenen Werten zugeordnet werden. Beispielsweise kann Leitungen
zu Hypotheken-Lieferanten ein hoher finanzieller Wert zugeordnet
werden, da Hypotheken-Verträge üblicherweise
einen hohen Wert haben. Manchmal will der Inhaber einer Web-Site
eine Organisation bezahlen, um die Web-Seite zu „übernehmen" (host), die der Organisation gehört. In diesem Fall
würde die
Vergütung
von dem Inhaber der Web-Site statt von dem Besitzer des Web-Servers empfangen.
-
Es
wurde früher
erwähnt,
dass Zustandskennungen „404 nicht
gefunden" und „410 vorbei" geeignete Beispiele
sind, wo die Benutzer-Schnittstelle verbessert werden könnte. Für den Fachmann
ist ersichtlich, dass zu diesen Zustandskennungen, bei denen diese
Benutzer-Schnittstelle angewendet werden kann, die folgenden Zustandskennungen
gehören,
ohne darauf beschränkt
zu sein:
- 400 Schlechte Syntax
- 401 Nicht autorisiert
- 402 Nicht verwendet
- 403 Verboten
- 500 Fehler im Server
- 501 Nicht ausgeführt
- 502 Überlastet,
und
- 503 Gateway-Auszeit
-
In
dem System 400 ist der Hilfs-Server 440 mit einem
Zusatz-Server 460 verbunden, der Analyse-Software 241 und
Index-Datenbasis-Software 242 enthält. In alternativen Ausführungsformen
der Systeme 100 bis 400 können von dritten Parteien vorgesehene
Web-Server (nicht dargestellt) verwendet werden, um die Kontext-Analyse
auszuführen.
Bei solchen Ausführungsformen
sind das Plug-in-Element 111, 211, der Proxy-Add-In 311 und
der Fehlerabwickler 411 so ausgebildet, dass sie bei Empfang einer
HTTP-Zustandskennung Kontext-Informationen
an den Server der dritten Partei senden. Der Server der dritten
Partei analysiert die Kontext-Informationen und sendet eine Liste
potentieller Verknüpfungen
an den Hilfs-Server, der dann veranlasst, dass eine Web-Seite erzeugt
und an den Benutzer gesendet wird.
-
Die
Systeme 100 bis 400 verwenden Index-Datenbasis-Software,
um Verknüpfungen
mit potentieller Relevanz für
den Benutzer zu bestimmen. Die Verknüpfungen werden dann dem Benutzer
präsentiert.
Bei einigen Umständen
kann vorzugsweise sichergestellt werden, dass ein Benutzer nicht
zu lange warten muss, bevor er einige Ergebnisse empfängt. Bei
einer alternativen Ausführungsform
ist die Analyse-Software und die Index-Datenbasis-Software so ausgebildet,
dass bei erstmaliger Eingabe eines eine bestimmte nicht existierende
Seite spezifizierenden URL durch einen Benutzer diesem Verknüpfungen
auf der Basis einer relativ kurzen Analyse der Kontext-Informationen präsentiert
werden. Dies stellt sicher, dass der Benutzer nicht zu lange warten muss.
Inzwischen analysieren die Analyse-Software und die Index-Datenbasis-Software
die Kontext-Informationen in größeren Einzelheiten
und bestimmen eine neue Liste; wahrscheinlich ist diese Liste relevanter
für den
Kontext als die Liste von Verknüpfungen,
die ursprünglich
dem Benutzer präsentiert
wurde, da die Analyse-Software und die Index-Datenbasis-Software
für die
Analyse mehr Zeit hatten. Wenn ein anderer Benutzer anschließend denselben
URL eingibt, oder wenn der ursprüngliche
Benutzer denselben URL ein zweites Mal eingibt, wird die neue Liste
präsentiert.
Ein Vorteil dieser Ausführungsform besteht
darin, dass die Antwortzeit bis zur Rücksendung von Verknüpfungen
zum Benutzer relativ kurz gehalten wird, während eine relativ ausführliche
Kontext-Analyse erlaubt wird. Bei einer Weiterentwicklung dieser
alternativen Ausführungsform
wird die Web-Seiten-Erstellungs-Software 143 so ausgebildet,
dass eine „Rahmen-Setz"-(frameset)-Web-Seite erzeugt
wird, die zwei oder mehr „Rahmen" enthält. Für den Fachmann
ist ersichtlich, dass eine Rahmen-Setz-Web-Seite dem Benutzer als
eine einzige Web-Seite erscheint, aber jeder Rahmen von einem anderen
Web-Server stammen kann. Zum Beispiel kann ein Rahmen einen Verweis
enthalten, der den Web-Browser anweist, die Home-Web-Page eines bestimmten
Web-Servers abzurufen. Bei dieser Weiterentwicklung ist die Web-Seiten-Erstellungs-Software
so ausgebildet, dass ein Rahmen, der Verknüpfungen enthält, die
nach einer relativ kurzen Analyse gefunden wurden, zuerst angezeigt
wird. Wenn der Benutzer genügend
Geduld hat, länger
zu warten, wird ein Rahmen, der nach einer genauen Kontext-Analyse
gefundene Verknüpfungen
enthält,
auch angezeigt. In den Systemen 100 bis 400 wird
ein Modem 105 verwendet, um den PC 101 des Benutzers mit
dem Internet zu verbinden. In anderen Ausführungsformen enthält der PC 101 andere
Vorrichtungen, die das HTTP, das drahtlose Zugriffsprotokoll (WAP)
oder ein ähnliches
Protokoll verwenden, um von einem Web-Server Informationen anzufordern und
zu empfangen. Die Erfindung ist auch bei Netzwerken anwendbar, die
nicht das HTTP- und das HTML-Protokoll benutzen. In gleicher Weise
ist die Erfindung bei „Intranets" an Statt des Internets
anwendbar. Für
den Fachmann ist ersichtlich, dass Intranets üblicherweise private Netzwerke
sind, die entweder nicht mit dem Internet verbunden sind oder von
dem Internet durch einen Firewall getrennt sind.
-
In
den Systemen 100 bis 400 wird ein Hilfs-Server 140, 240, 340, 440 verwendet,
um dem Benutzer potentiell relevante Verknüpfungen zu präsentieren,
wenn der Benutzer nicht auf von einem Web-Server 120, 420 angeforderte
Informationen zugreifen kann. Der Hilfs-Server und der Web-Server sind
voneinander getrennte Server. Bei alternativen Ausführungsformen
können
der Web-Server und der Hilfs-Server nicht nur dieselbe IP-Adresse
haben, sondern auch derselbe Web-Server sein, das heißt der Hilfs-Server
hilft sich selbst. Ein Vorteil solcher Ausführungsformen besteht darin,
dass die Ansprechzeit für
die Versorgung des Benutzers mit relevanten Verknüpfungen
minimiert werden kann. Zum Beispiel wird im Vergleich mit den HTTP-Anforderungen 220 und
den HTTP-Antworten 221 der Systeme 200 bis 400 die
Notwendigkeit in solchen alternativen Ausführungsformen für Informationen über physikalisch
große
Entfernungen zu gehen, vermindert.
-
Das
System 200 verwendet beteiligte Überwachungs-Software 242 und
Tracker-Software 243, damit
der Hilfs-Server 240 die Zuordnung von Vergütungen bestimmen
kann. Bei alternativen Ausführungsformen
wird das Plug-in-Element 211 (zum Beispiel) so modifiziert,
dass es zur Bestimmung der Zuordnung der Vergütung verwendet wird. Bei einer
alternativen Ausführungsform
werden die HTTP-Anforderung 234 und die HTTP-Antwort 235 nicht
benötigt, da
die HTTP-Antwort
so modifiziert wird, dass sie die aktuellen Verknüpfungen
zu verknüpften
Servern 150 einschließt
(eher als Verknüpfungen
zu dem Hilfs-Server 240, die den URL des verknüpften Servers 150 enthalten).
Wenn der Benutzer auf eine Verknüpfung
klickt, zeichnet das modifizierte Plug-in-Element dies auf und,
wenn anwendbar, den beteiligten ID, so dass die Vergütung aufgeteilt
werden kann.
-
1 bis 4 zeigen
verschiedene Orte (zwischen dem PC 101 eines Benutzers
und Web-Servern 120, 420), wo Fehler-Codes abgefangen
werden können,
und dazu dienen, eine Kontext-Analyse von falschen URLs auszulösen. Für den Fachmann
ist ersichtlich, dass viele Internet-Provider (ISPs) Internet-Bandbreite
von Betreibern kaufen, die üblicherweise
größere Telekommunikationsgesellschaften
sind. Üblicherweise
besitzen und unterhalten diese Betreiber zum Beispieltransatlantische
faseroptische Kabel- und Schalt/Weiterleitungs-Ausrüstung. Bei
einigen Ausführungsformen
können Web-Proxys in die Schalt/Weiterleitungs-Ausrüstung einbezogen
werden. Solche Proxys würden
in ähnlicher
Weise arbeiten wie der in 3 dargestellte Proxy-Server 301.
-
Für die vierte
Ausführungsform
wurden fünf Beispiele
von Situationen angegeben, bei denen ein Fehler auftreten könnte, ohne
dass eine Zustandskennung erzeugt wird. In der ersten Situation
hat das Plug-in-Element 111, 211 oder der Proxy-Add-In 331 Fehler-Codes
von einem DNS-Server abgefangen und sich dann verhalten, als wenn
ein HTTP-Fehler aufgetreten wäre.
Bei einer alternativen Ausführungsform
wird ein DNS-Server modifiziert, um sein Verhalten für den Fall
zu ändern,
dass ein Domänen-Name
nicht in eine IP-Adresse aufgelöst
werden kann. Der Modifizierte DNS-Server kann zum Beispiel durch
die Verwendung eines DNS-Add-In (nicht dargestellt) analog dem Proxy-Add-In 311 modifiziert werden.
-
Wenn
normalerweise ein Benutzer auf eine Verknüpfung klickt, verwendet der
Browser einen DNS-Server, um den Domänen-Namen in eine IP-Adresse
aufzulösen.
Wenn der Browser die IP-Adresse von dem DNS-Server empfängt, sendet der
Browser die HTTP-Anforderung an einen Host bei der von dem DNS-Server spezifizierten
IP-Adresse. Falls ein nicht existierender Domänen-Name (zum Beispiel, www.eine_nicht_existierende_Domäne.com') zu einem modifizierten
DNS-Server gesendet wird, an Statt anzuzeigen, dass ein DNS-Fehler aufgetreten ist,
sendet der modifizierte DNS-Server die IP-Adresse des Hilfs-Servers 140, 240, 340, 440 zurück. Die IP-Adresse
des Hilfs-Servers wird durch das Internet zu dem Web-Browser 110 übertragen,
der dann eine HTTP-Anforderung
an den Hilfs-Server 140, 240, 340, 440 sendet.
-
Alternativ
kann, an Statt einen DNS-Server zu modifizieren, ein Proxy-DNS-Server als Zwischenglied
zwischen dem PC eines Benutzers und einem DNS-Server verwendet werden. In diesem Fall
empfängt
der Proxy-Server DNS-Zustandskennungen (einschließlich DNS-Fehler-Codes)
von dem DNS-Server. Falls ein Domänen-Name ungültig ist, was
zu einem DNS-Fehler-Code von dem DNS-Server führt, fängt der Proxy-DNS-Server den
von dem DNS-Server empfangenen Fehler-Code ab und ersetzt (oder
verbessert) den empfangenen DNS-Fehler-Code durch eine DNS-Zustandskennung,
die die IP-Adresse des Hilfs-Servers 140, 240, 340, 440 enthält.
-
Wenn
der Benutzer entweder in einen URL eingetippt hat oder auf eine
Verknüpfung
geklickt hat, die eine Pfad-Information enthält (zum Beispiel, www.eine_nicht_existierende_Domäne.com/Pfad/Seite.html),
dann würde
der Web-Browser die Pfad-Information an die IP-Adresse des Hilfs-Servers senden. Somit
würde der
Hilfs-Server in der Lage sein, eine Kontext-Analyse aufzuführen, wie früher beschrieben.
Es sei bemerkt, dass in Fällen,
bei denen der Benutzer auf eine Verknüpfung geklickt hat, die Adresse
der Web-Seite (das
ist die Web-Seite, die die Verknüpfung
hat, die einen nicht existierenden Domänen-Namen spezifiziert) auch
zu dem Hilfs-Server gesendet würde.
-
Wie
früher
erwähnt
wurde, kann die vorliegende Erfindung bei Internet-Web-Seiten angewendet
werden. Solche Web-Seiten können
zum Beispiel Bilder enthalten. Für
den Fachmann ist ersichtlich, dass Bilder auf einer Web-Seite üblicherweise
anzeigen, dass sie das HTML/XHTML-Identifizierungs-Kennzeichen „<img>" verwenden. Ein Attribut des <img>-Identifizierungs-Kennzeichens ist „src", das den URL des
Bildes spezifiziert, das als Teil der Web-Seite angezeigt werden
soll. Bei Ausführung
einer Kontext-Analyse können
Ausführungsformen
der vorliegenden Erfindung so ausgebildet werden, dass sie das src-Attribut
analysieren. Wenn zum Beispiel ein src-Attribut den URL "www.ein_Domänen_Name_com/Bilder/Elefant.jpc" spezifiziert hat,
dann könnte
die Kontext-Analyse bestimmen, dass das Bild „Elefant" genannt wurde und in dem IPEG-Format
war.
-
In
einigen Situationen könnte
der Name des anzuzeigenden Bildes nicht auf die Inhalte des Bildes hinweisen.
Zum Beispiel kann ein Bild „img0001" genannt werden,
aber das Bild eines Elefanten zeigen. In solchen Fällen können Ausführungsformen
der vorliegenden Erfindung so ausgebildet werden, dass sie das Bild
abrufen und eine Bildverarbeitung des Bildes ausführen. Für den Fachmann
ist natürlich
ersichtlich, dass die Verarbeitung eines monochromen Bildes, um
Darstellungen von Kreisen und Rechtecken festzustellen, weniger
Computer-Verarbeitungsleistung erfordert, als die Verarbeitung komplizierterer
Darstellungen, wie zum Beispiel die eines Elefanten. In gleicher
Weise können
Ausführungsformen
so ausgewählt
werden, dass sie Musik (zum Beispiel Musik in dem MPEG-Layer-3-Format,
auch bekannt als MP3-Datei-Format), Dateinamen oder die Musik analysieren,
die von Musik-Dateien repräsentiert
werden, um zum Beispiel zu bestimmen, ob eine Musik-Datei klassische
Musik oder Jazz-Musik darstellt.
-
In
anderen Situationen kann eine Web-Seite eine defekte Verknüpfung enthalten,
aber sie kann auch gültige
Verknüpfungen
enthalten. Für
den Fachmann ist ersichtlich, dass Ausführungsformen der vorliegenden
Erfindung so ausgebildet werden können, dass, wenn der Benutzer
die fehlerhafte Verknüpfung
wählt,
Web-Seiten abgerufen werden, die durch die gültigen Verknüpfungen
spezifiziert werden, und jene Web-Seiten für Kontext-Informationen analysiert
werden.