DE602004003779T2 - Verfahren zur Umlenkung von Web-Datenstrom zu Clients unter Verwendung von verfügbahrer Bandbreitemessung - Google Patents

Verfahren zur Umlenkung von Web-Datenstrom zu Clients unter Verwendung von verfügbahrer Bandbreitemessung Download PDF

Info

Publication number
DE602004003779T2
DE602004003779T2 DE602004003779T DE602004003779T DE602004003779T2 DE 602004003779 T2 DE602004003779 T2 DE 602004003779T2 DE 602004003779 T DE602004003779 T DE 602004003779T DE 602004003779 T DE602004003779 T DE 602004003779T DE 602004003779 T2 DE602004003779 T2 DE 602004003779T2
Authority
DE
Germany
Prior art keywords
server
client
dispersion
time
sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE602004003779T
Other languages
English (en)
Other versions
DE602004003779D1 (de
Inventor
David Shur
Aleksandr Zelezniak
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
AT&T Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AT&T Corp filed Critical AT&T Corp
Publication of DE602004003779D1 publication Critical patent/DE602004003779D1/de
Application granted granted Critical
Publication of DE602004003779T2 publication Critical patent/DE602004003779T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Description

  • HINTERGRUND DER ERFINDUNG
  • GEBIET DER ERFINDUNG:
  • Diese Erfindung bezieht sich auf Kommunikation. Speziell bezieht sich die vorliegende Erfindung auf Inhaltszugriff.
  • BESCHREIBUNG DES STANDS DER TECHNIK
  • Internet-Technologie ist um sich greifend und wird überall eingesetzt. Zugriff auf eine große Inhaltsvielfalt ist über das Internet möglich. Der Inhalt ist häufig in Servern gespeichert. Eine Client-Maschine kommuniziert mit einem Server, um auf den Inhalt zuzugreifen.
  • Da das Internet fortfährt sich weiter auszudehnen, versuchen eine große Menge von Clients auf Inhalt im Internet zuzugreifen. Dies könnte zu einem Engpass führen, wenn die Clients versuchen jeweils auf Inhalt vom gleichen Server zuzugreifen. Demzufolge wird, in konventionellen Systemen derselbe Inhalt häufig auf mehrfachen Servern eingesetzt. Zusätzlich dazu, dass mehr Clients ermöglicht wird, gleichzeitig Zugriff auf die Daten zu erhalten, hat das Einsetzen des Inhalts auf mehrfachen Servern häufig Nebenvorteile wie Systemredundanz, größere Sicherheit, etc.
  • Aber der Server ist nicht der einzige Engpass. Der Kommunikationsweg vom Client zum Server könnte ebenso als ein Engpass für Kommunikation dienen. Außerdem wird, obwohl es verschiedene Verfahren für Lastausgleich gibt, der primäre Server relativ zu den anderen Servern häufig unverhältnismäßig belastet. Folglich bringt der Client eine langsame Ansprechzeit entweder wegen der unverhältnismäßigen Belastung eines Servers oder wegen der Engpässe im Kommunikationsweg in Erfahrung.
  • Deshalb besteht eine Notwendigkeit für ein Verfahren, das erkennt, welcher Server einem Client die beste Ansprechzeit bereitstellen wird. Es besteht die Notwendigkeit für ein Verfahren, dass bestimmt welcher Kommunikationsweg einem Client die beste Ansprechzeit und den besten Durchsatz bereitstellen wird. Schließlich besteht eine Notwendigkeit für ein Verfahren, das bestimmt, welcher Client in Kombination mit dem Kommunikationsweg einem Client die beste Ansprechzeit bereitstellen wird. Die vorliegende Erfindung erfüllt diese Notwendigkeiten durch Bereitstellen von Kommunikationsverfahren, die eine zeitliche Dispersion berechnet, das heißt, eine Differenz zwischen Empfangszeiten eines Startpakets und eines Endepakets. Das Berechnen zeitlicher Dispersion sorgt für ein Maß der Kommunikationsqualität, die von einem speziellen Server zu erwarten ist, auf eine Weise, wie es die konventionellen Anordnungen (die Messung von Zugriffswartezeit bzw. Latenzzeit, Verzögerung, Bandbreite usw., involvieren) nicht tun. Überdies ist das Messen zeitlicher Dispersion einfacher und schneller als konventionelle Verfahren, die komplexe Richtlinienmaschinen oder komplexe „Best-Fit" Algorithmen involvieren.
  • Die internationale Veröffentlichung Nummer WO 03/098464 A1 (Akamai Technologies, Inc.; Kloninger et al.) offenbart ein "Enterprise Content Delivery Network, ECDN, das einen Prüfagenten (124), auch als Messagent (124) bezeichnet, umfasst, der Metrik prüft, die in einer Reihe von Tests, wie beispielweise Ping-Tests, allgemeinen Tests bezüglich Konnektivität und störungsfreier Verbindung, Ausführen von http-Downloads von gegebenen Servern und TRSP- und WMS-Streamingtests, definiert sind. Der Agent (124) liefert Informationen an eine Richtlinienmaschine (120), die entscheidet, wie Clients zu einem speziellen Server zu leiten sind.
  • Die U.S.-Patentschrift Nr. 6.449.647 (Colby et al.) offenbart einen inhaltsbewussten Flussschalter, der Fluss-Zugangskontrollrichtlinien involviert und jener Schalter beruht auf einer Kombination von Quell- und Ziel-IP-Adressen, Transportschichtprotokoll und Transportschichtquell- und Zielportnummern. Ein "Best-Fit" Server wird beruhend auf gewünschter Inhaltsart, zu verstehen gegebener Qualität von Serviceanforderungen, Server-Last, Netzüberlastung und Nähe zum anfordernden Client gewählt.
  • Die U.S.-Patentanmeldungsveröffentlichung Nr. 2001/0044835 A1 (Schober et al.) offenbart ein Verfahren zum Auswählen von Inhalt, der von einem Provider zu einem Empfänger, beruhend auf einer automatischen Bestimmung einer Größe verfügbarer Bandbreite zwischen dem Provider und dem Empfänger, zu senden ist. Die automatische Bestimmung der Bandbreite könnte auf mehrere Arten, wie beispielsweise, Senden einer bekannten Menge von Daten und Messen eines Zeitraums, der zum Empfangen der Daten erforderlich ist oder nur Melden einer Geräteträgerrate durchgeführt werden.
  • Die U.S.-Patentanmeldungsveröffentlichung Nr. 2003/0065763 A1 (Swildens et al.) offenbart ein Verfahren, das zu bestimmen erlaubt, welcher Server einem Client am "Nächsten" und "am Wenigsten belastet" ist, wobei das Verfahren ständiges Betreiben von Zugriffwartezeitsondierungen für jeden von jedem Server bereitgestellten Service involviert, indem ein Paket zum Client gesendet und die Umlaufzeit gemessen wird, um den Zugriffswartezeitwert für jenen Client zu bestimmen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfindung stellt ein Verfahren bereit, wie es in den zugehörigen Ansprüchen dargelegt ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die 1 zeigt ein Netz, dass die Lehren der vorliegenden Erfindung implementiert.
  • Die 2 zeigt ein Blockdiagramm eins Computers, der in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiert ist.
  • Die 3 zeigt ein Flussdiagramm, das ein in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiertes Verfahren darstellt.
  • Die 4 zeigt ein Flussdiagramm, das ein in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiertes Bandbreitensondierungsverfahren darstellt.
  • Die 5 zeigt ein Meldungsdiagramm, das die Lehren der vorliegenden Erfindung darstellt.
  • BESCHREIBUNG DER ERFINDUNG
  • Obgleich die vorliegende Erfindung hierin mit Bezugnahme auf veranschaulichte Ausführungsformen für spezielle Anwendungen beschrieben wird, sollte allgemein angenommen werden, dass die Erfindung nicht darauf beschränkt ist. Leute mit durchschnittlichem Fachwissen und Zugang zu den hierin bereitgestellten Lehren werden zusätzliche Modifikationen, Anwendungen und Ausführungsformen im Umfang davon und zusätzliche Gebiete erkennen, in denen die vorliegende Erfindung von bedeutendem Nutzen sein würde.
  • Die 1 zeigt ein Netz, das die Lehren der vorliegenden Erfindung implementiert. Server 100 und 102 sind gezeigt. In einer Ausführungsform der vorliegenden Erfindung managen die Server 100 und 102 Inhalt. Die Server 100 und 102, an sich, empfangen, speichern, sorgen für Zugriff auf manipulieren und kommunizieren Inhalt.
  • Die Server 100 und 102 sind mit dem Netz 104 in Kommunikation. Information, wie Inhalt, wird über das Netz 104 kommuniziert. In einem Ausführungsbeispiel wird das Netz 104 als ein paketvermittelndes Netz 104 implementiert. In einer zweiten Ausführungsform der vorliegenden Erfindung könnte das Netz 104 als ein Durchschaltenetz implementiert werden. In einer noch weiteren Ausführungsform der vorliegenden Erfindung könnte das Netz 104 als ein integriertes Paket vermittelndes und Durchschaltenetz, ein lokales Netz (LAN), ein landesweites Netz (WAN), ein Funknetz, etc., implementiert werden.
  • Ein Medien-Controller 106 ist mit dem Netz 104 in Kommunikation. Der Medien-Controller 106 repräsentiert jede Entität, die fähig ist, Zugang zu den Servern 100 und 102 zu steuern. Der Medien-Controller 106 könnte in Software, Hardware oder in einer Kombination von Software und Hardware implementiert werden.
  • Ein Client 108 ist mit dem Netz 104 in Kommunikation. Der Client 108 repräsentiert ein Gerät, das von einem Endbenutzer verwendet wird, auf Ressourcen im Netz 104 zuzugreifen. Der Client 108 könnte in Software, Hardware oder in einer Kombination von Software und Hardware implementiert werden.
  • Die 2 zeigt eine Computerarchitektur, die in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiert ist. Die Computerarchitektur 200 der 2 könnte verwendet werden den Server 100, den Server 102, das Netz 104, den Medien-Controller 106 und/oder den Client 108 der 1 zu implementieren. Eine Zentraleinheit (CPU) 202 fungiert als das Gehirn der Computerarchitektur 200. Der Arbeitsspeicher 204 ist gezeigt. Der Arbeitsspeicher 204 umfasst den Kurzzeitspeicher 206 und den Langzeitspeicher 208. Der Kurzzeitspeicher 206 könnte ein Direktzugriffsspeicher (RAM) oder ein Cache-Speicher sein, der für „Staging" von Information verwendet wird. Der Langzeitspeicher 208 könnte ein Nur-Lese-Speicher/Read Only Memory (ROM) oder eine alternative Form von Speicher sein, der zum Speichern von Information verwendet wird. Massenspeicher 220 könnte jeder Speicher, der sich innerhalb der Computerarchitektur 200, außer dem Arbeitsspeicher 204, sein. In einer Ausführungsform der vorliegenden Erfindung ist der Massenspeicher 220 mit einem Festplattenlaufwerk implementiert. Ein Kommunikationsweg 210 wird verwendet, um Information innerhalb der Computerarchitektur 200 zu kommunizieren. Außerdem könnte der Kommunikationsweg 210 an Schnittstellen angeschlossen werden, die Information aus der Computerarchitektur 200 kommunizieren oder Information in die Computerarchitektur 200 empfangen.
  • Eingabegeräte, wie beispielsweise ein taktiles Eingabegerät, Joystick, Tastaturen, Mikrofon, Kommunikationsanschlüsse, oder eine Maus sind als 212 gezeigt. Die Eingabegeräte 212 sind mit dem System durch eine Eingabeschnittstelle 214 verbunden. Ausgabegeräte, wie ein Monitor, Lautsprecher, Kommunikationsanschlüsse, etc., sind als 216 gezeigt. Die Ausgabegeräte 216 kommunizieren mit der Computerarchitektur 200 durch eine Ausgabeschnittstelle 218.
  • Die 3 zeigt ein Flussdiagramm, das ein Verfahren darstellt, das in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiert ist. Die 1 wird im Zusammenhang mit der 3 besprochen werden. Bei Schritt 300 verbindet sich der Client 108 mit dem Medien-Controller 106. Beispielsweise könnte der Medien-Controller 106 als ein Proxy implementiert werden, sodass der Client 108 automatisch zum Medien-Controller 106 geleitet wird. In der Alternative könnte der Client 108, beruhend auf vorkonfigurierten Kriterien, die im Client 108 definiert sind, direkt zum Medien-Controller 106 geleitet werden. In einer Ausführungsform könnte der Client 108 eine "Hyper Text Transfer Protocol" (HTTP-) Anforderung oder eine "Real Time Streaming Protocol (RTSP-) Anforderung für Inhalt an Server 100 und/oder 102 ausgeben und wird zum Medien-Controller 106 geleitet.
  • Bei 302 kommuniziert der Medien-Controller 106 mit jedem Server (100, 102), der den Inhakt hat eine Bandbreitensondierung zu beginnen. Bei Schritt 304 werden die Server, wie beispielweise die Server 100 und 102, vom Medien-Controller 106 kontaktiert, wobei jeder Software und/oder Hardware in Gang setzt, die Kommunikationsbandbreite sondieren (d.h., Bandbreitensondierung). Sobald die Server 100 und 102 die Bandbreitensondierung beendet haben, kommuniziert jeder Server 100 und 102 die Ergebnisse der Bandbreitensondierung, wie bei Schritt 306 angegeben, an den Medien-Controller 106. Bei Schritt 308 selektiert der Medien-Controller 106 einen Server (100, 102). Der Medien-Controller 106 könnte den Server 100 oder 102 auf einer Vielfalt von Kriterien beruhend selektieren. Bei Schritt 310 sendet der Medien-Controller 106 eine Umleitmeldung an den Client 108. Die Umleitmeldung identifiziert welchen Server 100 oder 102 der Client 108 verwenden sollte. Infolge der bei Schritt 310 kommunizierten Umleitmeldung kontaktiert der Client 108 den identifizierten Server (100, 102) wie bei 312 angegeben. Bei 314 kommuniziert der identifizierte Server 100 oder 102 den Inhalt an den Client 108.
  • Die 4 zeigt ein Flussdiagramm, das ein, in Übereinstimmung mit den Lehren der vorliegenden Erfindung implementiertes, Bandbreitensondierungsverfahren darstellt. In einer Ausführungsform implementiert das in der 4 dargestellte Verfahren den Schritt 304 der 3, wo die Server Bandbreite sondieren. In einer Ausführungsform ist das Bandbreitensondierungsverfahren mit einer Kombination von Hardware und/oder Software in einem Server, wie beispielsweise Server 100 und 102 von 1 implementiert. Man sollte aber zum Schluss gelangen, dass die Bandbreitensondierung in anderen Lokalitäten, wie beispielsweise im Medien-Controller 106, im Netz 104 oder im Client 108 der 1 implementiert werden könnte.
  • In einer Ausführungsform der vorliegenden Erfindung besteht eine Bandbreitensondierung aus einer kurzen "Folge" von Paketen, die mit der Geschwindigkeit der Ausgangsschnittstelle an einen gegebenen Endpunkt gesendet wird. Der Endpunkt meldet die Ankunftszeit des Starts und Endes der Folge zurück. Der Abstand zwischen den Paketen am empfangenden Endpunkt befindet sich in Übereinstimmung mit der verfügbaren Bandbreite entlang des Wegs, was erlaubt eine Schätzung zu bilden. Es gibt mehrere verschiedene Varianten der Bandbreitensondierung, abhängig von der Umgebung des zu sondierenden Endpunkts. Die Variationen der Bandbreitensondierung unterscheiden sich im verwendeten Verfahren für die Aufzeichnung der Zeitdifferenzen zwischen Paketen in der Folge. Beispielsweise werden vier Variationen der Bandbreitensondierung vorgelegt: Es könnte (1) ein "Internet Control Message Protocol" (ICMP-) Echo mit ICMP-Zeitstempelaufzeichnung verwendet werden, (2) ICMP-Echo mit "Internet Protocol (IP)" Zeitstempelaufzeichnung verwendet werden, (3) "Transmission Control Protocol (TCP) Push/Reset" mit Absender basierter Zeitaufzeichnung verwendet werden und/oder (4) ICMP-Echo mit Absender basierter Zeitaufzeichnung verwendet werden. Man sollte zum Schluss gelangen, dass, obwohl vier Bandbreitensondierungen definiert und beschrieben worden sind, andere Variationen von Bandbreitensondierungen implementiert werden könnten und sich im Umfang der vorliegenden Erfindung befinden.
  • Unter Bezugnahme auf die 4 werden, bei Schritt 400, Folgeanfangspakete gesendet. Die 1 wird im Zusammenhang mit der 4 besprochen. Zum Beispiel erfüllen in einer Ausführungsform der vorliegenden Erfindung die Folgeanfangspakete eine der vier Variationen der Bandbreitensondierung. Zum Beispiel könnte der Server 100 oder 102 Folgeanfangspakete an den Client 108 senden. Der Client 108 zeitstempelt die Folgeanfangspakete. Bei Schritt 402 wird eine Folge von N aufeinanderfolgender Pakete gesendet. Die Folge von N aufeinanderfolgender Pakete entspricht einer der Variationen der Bandbreitensondierung. In einer Ausführungsform senden die Server 100 und 102 eine Folge aufeinanderfolgender Pakete an den Client 108.
  • Bei Schritt 404 werden Folgeendepakete gesendet. Beispielsweise werden Folgeendepakete von den Servern 100 und 102 an den Client 108 gesendet. In einer Ausführungsform sind Folgeendepakete durch eine der Variationen der Bandsbreitensondierung definiert. Bei 406 empfangen die Server 100 und 102 Umlaufpakete, die vom Client 108 kommuniziert werden. In einer Ausführungsform werden die Umlaufpakete zeitgestempelt, die Empfänger zeitstempeln, beispielsweise, die Umlaufpakete. Bei 408 verwenden die Server 100 und 102 dann die Umlaufpakete, um Bandbreitenleitungsmessungen, wie Durchsatz, Verzögerung und Paketverlust zu berechnen.
  • Die 5 zeigt ein Meldungsflussdiagramm, das die Lehren der vorliegenden Erfindung darstellt. In der 5 repräsentiert der vertikale Balken 501 eine Server-Maschine, der vertikale Balken 503 repräsentiert ein Zwischenkommunikationsgerät, der vertikale Balken 505 repräsentiert ein Zwischenkommunikationsgerät und der vertikale Balken 507 repräsentiert eine Client-Maschine. Während des Betriebs wird ein Paket von der Server-Maschine 501, durch das Zwischenkommunikationsgerät 503, zum Zwischenkommunikationsgerät und dann zur Client-Maschine 507 kommuniziert.
  • In der 5 wird eine Paketfolge von einer Server-Maschine zu einer Client-Maschine und dann zurück zur Server-Maschine kommuniziert. Die Paketfolge wird zwischen der Server-Maschine 501 und dem Zwischenkommunikationsgerät 503 als 500, 502 und 504 kommuniziert. Die Paketfolge wird dann zwischen dem Zwischenkommunikationsgerät 503 und dem Zwischenkommunikationsgerät 505 als 508 und 510 kommuniziert. Wie durch die Trennung von 506, 508 und 510 gezeigt, ist die Geschwindigkeit zwischen dem Zwischenkommunikationsgerät 503 und dem Zwischenkommunikationsgerät 505 langsamer. Schließlich wird die Paketfolge zwischen dem Zwischenkommunikationsgerät 505 und der Client-Maschine 507 als 512, 514, 516 und 518 kommuniziert. Die Paketfolge wird dann von der Client-Maschine zurück zur Server-Maschine kommuniziert, wo die Paketfolge, wie durch 524 und 526 gezeigt, zeitgestempelt wird.
  • In einer Ausführungsform der vorliegenden Erfindung werden die Paketfolgen 500, 502, 504, 506, 508, 510, 512, 514, 516 und 518 verwendet, Folgeanfangspakete, eine Folge von N aufeinanderfolgender Pakete und Folgeendepakete zu repräsentieren. Die Folgeanfangspakete und die Folgeendepakete werden an der Client-Maschine 507 und danach nochmals an der Server-Maschine 501 zeitgestempelt. Unter Verwendung der Folgeanfangspakete und der Folgeendepakete an der Client-Maschine 507 könnte die als 520 gezeigte Zeitdispersion berechnet werden. Außerdem könnte, unter Verwendung der Folganfangspakete und der Folgeendepakete an der Server-Maschine 501, die Absenderzeitdispersion 522 berechnet werden. Beispielsweise könnte in dem Fall, wo ein Zeitstempel implementiert wird, der Zeitstempel zur Berechnung von Dispersion verwendet werden. Weiter könnte, unter Verwendung der Empfängerzeitdispersion 520, die Zahl der gesendeten Pakete und die Größe des Paketdurchsatzes berechnet werden. In dem Falle, wo die Zeitstempelfunktion am Empfangsknoten nicht verfügbar ist, wird die Absenderzeitdispersion 522 verwendet, den Durchsatz zu berechnen. Außerdem können Umlaufverzögerung und Paketverlust berechnet werden.
  • Obgleich die vorliegende Erfindung hierin mit Bezugnahme auf veranschaulichte Ausführungsformen für spezielle Anwendungen beschrieben wird, sollte allgemein angenommen werden, dass die Erfindung nicht darauf beschränkt ist. Leute mit durchschnittlichem Fachwissen und Zugang zu den hierin bereitgestellten Lehren werden zusätzliche Modifikationen, Anwendungen und Ausführungsformen im Umfang davon und zusätzliche Gebiete erkennen, in denen die vorliegende Erfindung von bedeutendem Nutzen sein würde.
  • Durch die angehängten Ansprüche ist daher beabsichtigt, alle solcher Anwendungen, Modifikationen und Ausführungsformen innerhalb des Umfangs der vorliegenden Erfindung abzudecken.

Claims (7)

  1. Kommunikationsverfahren zwischen einem Client (108, 507) und einem Server (501) aus einer Gruppe von Servern (100, 102), dadurch gekennzeichnet, dass das Verfahren umfasst: (400) an einem Selektierten der Clients (507) oder der Server (501), Empfangen eines Startpakets; (402) an dem Selektierten der Clients (507) oder der Server (501), Empfangen einer Folge aufeinanderfolgender Pakete; (404) an dem Selektierten der Clients (507) oder der Server (501), Empfangen eines Endepakets; (408) an dem Selektierten der Clients (507) oder der Server (501), Berechnen einer zeitlichen Dispersion (520 oder 522) zwischen einer Empfangszeit des empfangenen Startpakets und einer Empfangszeit des empfangenen Endepakets; (306) an dem Selektierten der Clients (507) oder der Server (501), Kommunizieren eines zeitlichen Dispersionsergebnisses an einen Medien-Controller (106) als Reaktion auf die Berechnung der zeitlichen Dispersion; und (308) an dem Medien-Controller (106), Selektieren eines Servers (entweder 100 oder 102) für den Client (108, 507), um, als Reaktion auf Kommunizieren, Zugriff auf das zeitliche Dispersionsergebnis zu erhalten.
  2. Kommunikationsverfahren nach Anspruch 1, wobei die zeitliche Dispersion Empfangszeitdispersion (520) ist.
  3. Kommunikationsverfahren nach Anspruch 1, wobei die zeitliche Dispersion Senderzeitdispersion (522) ist.
  4. Kommunikationsverfahren nach Anspruch 1, wobei die Folge aufeinanderfolgender Pakete dem Internet Control Message Protocol (ICMP)-Echo mit ICMP-Timestamp (Zuschreiben von Datum und Uhrzeit) entspricht.
  5. Kommunikationsverfahren nach Anspruch 1, wobei die Folge aufeinanderfolgender Pakete dem ICMP-Echo mit Internet Protocol Timestamp (Zuschreiben von Datum und Uhrzeit), entspricht.
  6. Kommunikationsverfahren nach Anspruch 1, wobei die Folge aufeinanderfolgender Pakete dem Übertragungssteuerungsprotokoll „Push/Reset" mit Zeitaufzeichnung auf Senderbasis entspricht.
  7. Kommunikationsverfahren nach Anspruch 1, wobei die Folge aufeinanderfolgender Pakete dem ICMP-Echo mit Zeitaufzeichnung auf Senderbasis entspricht.
DE602004003779T 2003-12-29 2004-11-30 Verfahren zur Umlenkung von Web-Datenstrom zu Clients unter Verwendung von verfügbahrer Bandbreitemessung Active DE602004003779T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US747751 1991-08-20
US10/747,751 US7451251B2 (en) 2003-12-29 2003-12-29 Method for redirection of web streaming clients using lightweight available bandwidth measurement from a plurality of servers

Publications (2)

Publication Number Publication Date
DE602004003779D1 DE602004003779D1 (de) 2007-02-01
DE602004003779T2 true DE602004003779T2 (de) 2007-10-11

Family

ID=34574750

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004003779T Active DE602004003779T2 (de) 2003-12-29 2004-11-30 Verfahren zur Umlenkung von Web-Datenstrom zu Clients unter Verwendung von verfügbahrer Bandbreitemessung

Country Status (4)

Country Link
US (3) US7451251B2 (de)
EP (1) EP1551147B1 (de)
CA (1) CA2487228A1 (de)
DE (1) DE602004003779T2 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7451251B2 (en) * 2003-12-29 2008-11-11 At&T Corp. Method for redirection of web streaming clients using lightweight available bandwidth measurement from a plurality of servers
US7243040B1 (en) * 2004-07-30 2007-07-10 Sprint Communications Company L.P. Web-based circuit-testing system and method
US20060058009A1 (en) * 2004-09-15 2006-03-16 Vogedes Jerome O System and method for wireless download capability of media objects from multiple sources
US20100217873A1 (en) * 2009-02-23 2010-08-26 Xcast Labs, Inc. Method and system for sip access to media and conferences
US8775658B2 (en) * 2009-03-27 2014-07-08 Wyse Technology L.L.C. Apparatus and method for transparent communication architecture in remote communication
US8122140B2 (en) * 2009-03-27 2012-02-21 Wyse Technology Inc. Apparatus and method for accelerating streams through use of transparent proxy architecture
US8619602B2 (en) * 2009-08-31 2013-12-31 Cisco Technology, Inc. Capacity/available bandwidth estimation with packet dispersion
US8620999B1 (en) * 2011-01-12 2013-12-31 Israel L'Heureux Network resource modification for higher network connection concurrence
WO2013044304A1 (en) * 2011-09-30 2013-04-04 Cocoon Data Holdings Limited System and method for servicing a request
US10069885B2 (en) * 2013-03-18 2018-09-04 Ericsson Ab Bandwidth management for over-the-top adaptive streaming
US9600787B2 (en) * 2013-05-16 2017-03-21 Toshiba Global Commerce Solutions Holdings Corporation Deferring authentication and resource loading while starting an enterprise system
US20160173465A1 (en) * 2014-12-12 2016-06-16 Rajesh Poornachandran Technologies for verifying authorized operation of servers

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061722A (en) * 1996-12-23 2000-05-09 T E Network, Inc. Assessing network performance without interference with normal network operations
US6006264A (en) * 1997-08-01 1999-12-21 Arrowpoint Communications, Inc. Method and system for directing a flow between a client and a server
US6424993B1 (en) * 1999-05-26 2002-07-23 Respondtv, Inc. Method, apparatus, and computer program product for server bandwidth utilization management
US7523181B2 (en) * 1999-11-22 2009-04-21 Akamai Technologies, Inc. Method for determining metrics of a content delivery and global traffic management network
US20010044835A1 (en) * 2000-05-17 2001-11-22 Schober Joseph Frank Selecting content to be communicated based on automatic detection of communication bandwidth
GB0023570D0 (en) 2000-09-26 2000-11-08 Volantis Systems Ltd Web server
US20030126266A1 (en) * 2002-01-03 2003-07-03 Amir Peles Persistent redirection engine
US7194002B2 (en) * 2002-02-01 2007-03-20 Microsoft Corporation Peer-to-peer based network performance measurement and analysis system and method for large scale networks
DE60227289D1 (de) * 2002-03-04 2008-08-07 Operax Ab Verfahren zur bereitstellung von topologiebewusstseinsinformationen in einem ip-netzwerk
WO2003098464A1 (en) 2002-05-14 2003-11-27 Akamai Technologies, Inc. Enterprise content delivery network having a central controller for coordinating a set of content servers
US20060146820A1 (en) * 2002-11-26 2006-07-06 Robert Friedman Geo-intelligent traffic manager
US7650421B2 (en) * 2002-12-30 2010-01-19 Microsoft Corporation Adaptable accelerated content streaming
US20040240431A1 (en) * 2003-05-30 2004-12-02 Makowski Steven L. Bearer path assurance test for call set-up using IP networks
US7451251B2 (en) 2003-12-29 2008-11-11 At&T Corp. Method for redirection of web streaming clients using lightweight available bandwidth measurement from a plurality of servers

Also Published As

Publication number Publication date
CA2487228A1 (en) 2005-06-29
US20090063682A1 (en) 2009-03-05
EP1551147A1 (de) 2005-07-06
US7765340B2 (en) 2010-07-27
US20050165931A1 (en) 2005-07-28
DE602004003779D1 (de) 2007-02-01
US7451251B2 (en) 2008-11-11
US7958231B2 (en) 2011-06-07
US20090070496A1 (en) 2009-03-12
EP1551147B1 (de) 2006-12-20

Similar Documents

Publication Publication Date Title
DE69725261T2 (de) System zur Übermittlung des Netzwerkverkehrs in einem Kommunikationsnetzwerk
DE60317588T2 (de) Verfahren zur Ermittlung der peer-to-peer Servicequalität (QOS)
DE69733498T2 (de) Verteiltes rechnersystem und verfahren zur aufteilung von benutzeranfragen auf duplizierte netzwerkserver
US6272539B1 (en) Methods, systems and computer program products for determining and visually representing a user's overall network delay in collaborative applications
DE602004003779T2 (de) Verfahren zur Umlenkung von Web-Datenstrom zu Clients unter Verwendung von verfügbahrer Bandbreitemessung
DE60205952T2 (de) System und verfahren zur dynamischen änderung verbindungen in einem datenverarbeitungnetzwerk
DE19983761B3 (de) Vorrichtung und Verfahren zum Sammeln und Analysieren von Kommunikationsdaten
DE60002396T2 (de) Verbindungsauswahlverfahren
DE60318539T2 (de) Netzwerküberwachungssystem, das auf Veränderungen der Variant und des Mittelwertes der Paketankunftszeiten reagiert
DE69937241T2 (de) Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung
US6721686B2 (en) Server load testing and measurement system
DE60032310T2 (de) Netzsystem
DE202015009264U1 (de) Anycast-basiertes, wide-area-verteiltes kartierungs- und lastverteilungssystem
JP2004171572A (ja) サーバ間の負荷分散方法、負荷分散システム、負荷分散サーバおよびプログラム
WO2002025821A2 (de) Verfahren zur messung von unidirektionalen übertragungseigenschaften in einem datennetz
DE60130844T2 (de) Autonomes OSPF-System mit einem in zwei Teilbereiche getrennten Hauptnetz
WO2003039081A1 (de) Verfahren, empfangseinrichtung und sendeeinrichtung zur bestimmung des schnellsten nachrichtenpfades ohne uhrensynchronisation
DE60210356T2 (de) Verwalter von Dienststufenübereinkommen in einem Datennetz
DE60123935T2 (de) Synchronisierte datenübermittlung
US7254638B2 (en) Method and apparatus for identifying slow links and for providing application-based responses to slow links in a distributed computer network
DE602005003906T2 (de) System und Verfahren zur Bereitstellung von differenzierten Dienstqualitäten
DE60207687T2 (de) Verfahren und vorrichtung zum klassifizieren von abfrageknoten
DE60210918T2 (de) Verfahren zur Überlastdetektion von IP-Flows über ein drahtloses Netzwerk
DE102018100526A1 (de) Reduzieren von Umleitungen
DE69733749T2 (de) System und verfahren zur effizienten informationsübertragung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition