DE69738359T2 - System zur Verbesserung des Datendurchsatzes einer TCP/IP Netzwerkverbindung mit langsamen Rückkanal - Google Patents

System zur Verbesserung des Datendurchsatzes einer TCP/IP Netzwerkverbindung mit langsamen Rückkanal Download PDF

Info

Publication number
DE69738359T2
DE69738359T2 DE69738359T DE69738359T DE69738359T2 DE 69738359 T2 DE69738359 T2 DE 69738359T2 DE 69738359 T DE69738359 T DE 69738359T DE 69738359 T DE69738359 T DE 69738359T DE 69738359 T2 DE69738359 T2 DE 69738359T2
Authority
DE
Germany
Prior art keywords
packets
uplink
data
ack
queues
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.)
Expired - Lifetime
Application number
DE69738359T
Other languages
English (en)
Other versions
DE69738359D1 (de
Inventor
T.V. Eatontown Lakshman
Bernhard Aberdeen Suter
Upamanyu Urbana Madhow
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of DE69738359D1 publication Critical patent/DE69738359D1/de
Application granted granted Critical
Publication of DE69738359T2 publication Critical patent/DE69738359T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1854Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1635Cumulative acknowledgement, i.e. the acknowledgement message applying to all previous messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • H04L47/323Discarding or blocking control packets, e.g. ACK packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

  • TECHNISCHES GEBIET
  • Die Erfindung betrifft allgemein Protokolle für den Transport von Datenpaketen über eine Netzwerkverbindung und insbesondere ein verbessertes Verfahren zum Transport von Daten über das gewöhnlich als TCP/IP bezeichnete Internet-Transportprotokoll.
  • ALLGEMEINER STAND DER TECHNIK
  • Es wird erwartet, daß in der absehbaren Zukunft Privatanschlüsse für schnelle Internet-Zugangsdienste unter Verwendung von asymmetrischen Zugangsnetzwerken bereitgestellt werden, wozu zum Beispiel folgende gehören: (a) Netzwerke mit asymmetrischem digitalem Teilnehmeranschluß (ADSL) und Varianten davon; (b) Hybride Faser-Koax-Netzwerke (HFC); und (c) Netzwerke, bei denen der Abwärtspfad (Netzwerk zu Teilnehmer) ein Kabelstrecke und der Aufwärtspfad (Teilnehmer zum Netzwerk oder Dienstanbieter) eine Telefonstrecke ist. Ein Aspekt dieser Systeme besteht darin, daß sie eine naturgemäße Bandbreitenasymmetrie aufweisen, die sogar nur 10 betragen kann, wenn bestimmte Arten von Kabelmodems oder ADSL-Zugangsdienste in dem assoziierten Netzwerk verwendet werden, oder sogar 100 oder mehr, wenn der Rückpfad eine Telefonstrecke ist. Somit kann ein asymmetrisches Netzwerk dadurch gekennzeichnet werden, daß es eine schnelle Abwärtsstrecke von dem Netzwerk zu dem Teilnehmer und eine langsamere Aufwärtsstrecke von dem Teilnehmer zu dem Netzwerk aufweist. Außerdem ist es wahrscheinlich, daß ein solches Netzwerk das wohlbekannte Internet-Transportprotokoll TCP/IP zum Transport von Daten verwenden wird.
  • Kurz gefaßt ist TCP/IP ein auf Fenstern basierendes Ablaufsteuerprotokoll, bei dem eine Quelle von Daten sequentiell numerierte Datenpakete zu einem Ziel sendet. Das Ziel gibt als Reaktion auf den Empfang der Datenpakete eine sogenannte kumulative Bestätigung (ACK) zurück, die das nächste erwartete Datenpaket per Sequenznummer identifiziert. Wenn das Ziel alle Datenpakete bis zu der Sequenznummer N korrekt empfängt, gibt das Ziel an, daß das nächste Datenpaket, dessen Empfang es erwartet, das Paket Nummer N + 1 ist. Bei TCP/IP unterhält die Quelle eine dynamisch variierende Fenstergröße. Eine Fenstergröße von W Paketen bedeutet, daß die Quelle Datenpakete jeweils mit Sequenznummern bis zu n + W senden darf, wenn die Bestätigung, die sie von dem Ziel empfängt, angibt, daß das nächste erwartete Paket n + 1 ist. Wenn die Laufzeit zwischen Quelle und Ziel relativ groß ist, ist die Fenstergröße in der Regel ein großer Wert zur effizienten Verwaltung der assoziierten Bandbreite. Dies geschieht bei TCP durch Vergrößern der Größe des Fensters, bis ein gesendetes Datenpaket verloren geht und dann Verkleinern der Größe des Fensters auf einen effizienteren Wert. (Es wird angemerkt, daß der Betrag um den das Fenster verkleinert wird, für verschiedene Formen von TCP, beispielsweise TCP-Tahoe und TCP-Reno- verschieden ist). Der Verlust eines Pakets in TCP/IP wird erkannt, indem vorzugsweise ein Schema des "schnellen Neusendens" verwendet wird, das in der Regel auf dem Empfang mehrerer Bestätigungen (im folgenden "ACKS") basiert, die jeweils das nächste erwartete Datenpaket (z. B. N + 1) identifizieren. Solche ACKS implizieren, daß das Paket N + 1 verloren wurde und neu gesendet werden muß. Ein "schnelles Neusenden" wird in der Regel ausgelöst, wenn ein gegebenes Paket (z. B. n + 1) verloren geht, aber das Ziel eine Anzahl sukzessiver Pakete empfangen hat. Wenn jedoch alle Pakete nach n + 1 verloren werden oder wenn n + 1 das letzte von der Quelle gesendete Paket ist, kann nachteiligerweise das Paketschema des "schnellen Neusendens" möglicherweise den Verlust nicht erkennen. Um diese Möglichkeit zu berücksichtigen, verwendet eine solche Detektion dann den Ablauf eines "groben" Timers mit einer "Granularität" von zum Beispiel 500 Millisekunden zum Detektieren des Verlusts eines solches Pakets. Das heißt, wenn ein Paket gesendet wird, wird der Timer gestartet und wartet auf den Empfang eines korrespondierenden ACK. Wenn das ACK nicht vor dem Ablauf des Timers empfangen wird, wird angenommen, daß das Paket verloren wurde, was bedeutet, daß die Übertragungsstrecke für diesen Zeitraum leerlaufen muß, da in der Regel vor dem Ablauf des Timers keine neuen Pakete gesendet werden.
  • Aus dem obigen geht hervor, daß TCP-Verbindungen in beiden Richtungen in einem Netzwerk hergestellt werden. Insbesondere und wie in 1 gezeigt, worin eine herkömmliche einzelne TCP-Verbindung dargestellt ist, verwendet eine Vorwärtsverbindung 20 die schnelle Abwärtsstrecke 25 zum Führen von Paketen von einem Absender 15 (in dem Netzwerk) zu einem Datenendgerät 16 (Teilnehmerseite). Das Datenendgerät 16 verwendet dagegen die langsame Aufwärtsstrecke 26 zum Senden von ACKs zu dem Netzwerkabsender 15. Umgekehrt verwendet eine Rückverbindung die Aufwärtsstrecke 26 zum Senden von Datenpaketen von dem Datenendgerät 16 zu dem Netzwerkabsender 15 und die Abwärtsstrecke 25 zum Senden von Bestätigungen von dem Netzwerkabsender zu dem Datenendgerät. Ein TCP-Ziel gibt explizit oder implizit ein ACK für jedes erfolgreich von ihm empfangene Datenpaket zurück. Die meisten ACKs müssen explizit sein, weil TCP das ACK auch für die Stauregelung verwendet. Daher bewirkt ein großes Volumen von über die Abwärtsstrecke 25 empfangenen Datenpaketen, daß ein großes Volumen von ACKs über die Aufwärtstrecke 26 geführt wird. Dies kann dann offensichtlich Stau auf der Aufwärtsstrecke verursachen und insbesondere in dem einzigen Aufwärtsstrompuffer 30, was zu einem Verlust von Datenpaketen für die Rückwärtsverbindungen führen kann. Wie bereits erwähnt, können solche Verluste verursachen, daß die Rückwärtsverbindungen die Größe ihrer jeweiligen Fenster verkleinern – wodurch eine merkliche Abnahme des Durchsatzes verursacht werden würde, wenn nicht die Betriebsmittel (z. B. Puffer und Bandbreite) der Aufwärtsstrecke spezifisch auf kontrollierte Weise diesen Verbindungen zugeteilt werden. Außerdem kann ein Verlust von ACKs zu einer Zunahme der Stoßhaftigkeit beim Absender führen. Man nehme zum Beispiel an, daß die Größe des Fensters W beträgt und die Quelle auf ein dem Paket n entsprechendes ACK wartet – was bedeutet, daß, wenn das Fenster voll benutzt ist, Pakete bis zu n + W gesendet wurden. Außerdem nehme man an, daß das Ziel alle Pakete erfolgreich empfangen hat, aber die mit den Pakten n bis n + 4 assoziierten ACKS verloren wurden und das die Quelle das ACK für Paket n + 5 erfolgreich empfangen hat. Wenn die Quelle letzteres ACK empfängt, "weiß" die Quelle, daß das nächste erwartete Datenpaket das Paket n + 6 ist und sollte deshalb Erlaubnis erhalten, Pakete bis zu n + 5 + W zu senden. Da die Quelle nur Pakete bis zu N + W gesendet hat, darf sie dann die nächsten fünf Pakete senden. Wenn der Puffer kleiner als 5 ist, würde dies den Verlust von Paketen verursachen, was eine Abnahme der Größe des entsprechenden Fensters verursachen kann. Außerdem würde ein Verlust aller ausstehender ACK-Pakete unweigerlich zu dem Ablaufen einer Zeitgrenze, der Abnahme der Größe des Fensters und der Abnahme der Effizienz des Systems führen. Darüber hinaus geschieht dies wahrscheinlich immer dann, wenn die Größe von W klein ist (z. B., W = 1).
  • Die europäische Patentanmeldung mit der Publikationsnummer 0329159A3 , registriert am 17.2.1989 von Nippon Electric Co. (im folgenden Schrift D1) offenbart ein Stausteuersystem für die Ende-zu-Ende-Paketkommunikation. Insbesondere offenbart die Schrift D1, daß in einem paketvermittelten Kommunikationssystem, in dem jedes Zieldatenendgerät ein Bestätigungspaket sendet, das den korrekten Empfang von Paketen von einem Quellenendgerät signalisiert, ein Staudetektor zum Detektieren von Verkehrstau in dem paketvermittelten Kommunikationssystem bereitgestellt wird, wodurch ein Paketdetektor freigegeben wird. Die Schrift D1 offenbart ferner, daß der Paketdetektor, wenn er freigegeben ist, den Empfang eines Bestätigungspaket von dem Zielendgerät detektiert und dieses Paket für einen spezifizierten Zeitraum in einem Puffer speichert, nachdem das gespeicherte Paket zu dem Quellenendgerät weitergeleitet wird.
  • KURZFASSUNG DER ERFINDUNG
  • Im Hinblick auf das obige haben die Verfasser somit festgestellt, daß Bandbreite auf der Aufwärtsstrecke für den ordnungsgemäßen Betrieb der Rückwärtsverbindung reserviert werden muß und solche Bandbreite auch für den Transport von ACKs reserviert werden muß, die als Ergebnis des Empfangs von Datenpaketen über die Abwärtsstrecke gesendet werden. Wenn keine ausreichende Bandbreite zur Behandlung der Übertragung der ACKs zugeteilt wird, kann die Asymmetrie der Bandbreite zwischen dem Vorwärts- und Rückwärtspfad einer Vorwärtsverbindung verursachen, daß zuviel Stoßhaftigkeit auf dem Vorwärtspfad auftritt, was zu einem Verlust von Datenpaketen und einer Abnahme des Durchsatzes aufgrund einer Zunahme der Größe des Fensters führen könnte. Die Reservierung von Bandbreite auf der Aufwärtsstrecke muß somit gut verwaltet werden, um sowohl für Vorwärts- als auch Rückwärtsverbindungen gute Leistungsfähigkeit zu erhalten. Dies geschieht gemäß den Prinzipien der Erfindung durch (a) Erhaltung an einem Staupunkt auf der Rückwärtsstrecke, z. B. einem Puffer, des letzten ACK an Stelle eines zuvor empfangenen ACK, (b) Zuteilen der Bandbreite der Aufwärtstrecke mit assoziiertem Speicher (Puffer) auf gut verwaltete Weise und (c) Verwendung z. B. eines fairen Warteschlangen- oder Gewichtungsreigenschemas zum Zuteilen der Bandbreite zu der Aufwärtsstrecke dergestalt, daß die Gewichtung auf mit der Abwärtstrecke assoziierten Parametern basiert. Dies wird erreicht, während das Bandbreitenverhältnis von Vorwärts- zu Rückwärtspfad jeder Verbindung unter einer vorbestimmten Grenze gehalten wird.
  • Genauer gesagt erhält man, wenn Stau auftritt, das letzte (neuste) vom Ziel gesendete ACK und dies durch beispielhaftes Abwerfen eines ACK, das an der "Front/obersten Position" eines überlasteten Aufwärtsstrompuffers gespeichert ist, um Platz für die Speicherung des neuesten ACK zu schaffen. Außerdem wird der Verlust von Datenpaketen auf Rückwärtsverbindungen verhindert, indem auf der Aufwärtsstrecke Bandbreite für die Transporterdatenpakete reserviert wird. Gemäß einem Aspekt der Erfindung wird eine solche Reservierung von Bandbreite durch Verwendung logisch separater Datenpuffer für die Datenpakete und die ACKs in dem Rückwarts-(Aufwärts-)Pfad erzielt. Ferner basiert die Versorgung der Aufwärtsstrecke auf einem gewichteten Reigendienst in Verbindung mit einer Warteschlange pro Verbindung, wobei gemäß einem Aspekt der Erfindung solche Gewichte gemäß bestimmten, mit der Abwärtsstrecke assoziierten Parametern gewählt werden. Wenn zum Beispiel insbesondere die Abwärtstrecke eine Übertragungsrate von Cd-Paketen/Sekunde aufweist und die Größe des Puffers auf der Aufwärtsstrecke-Pakete beträgt, dann sollte die verfügbare Bandbreite für ACKs auf der Aufwärtsstrecke für eine assoziierte Vorwärtsverbindung mindestens Cd/Bd ACKs pro Sekunde betragen. Alle verbleibende Bandbreite auf der Aufwärtsstrecke kann dann an Datenpakete aus rückwärts den Verbindungen, die über die Aufwärtsstrecke geführt werden, vergeben werden. Das Schema mit separaten Puffern und gewichtetem Dienst ist wesentlich, um sicherzustellen, daß die Rückwärtsverbindungen ihren fairen Anteil der Bandbreite erhalten.
  • Die verschiedenen Merkmale der Neuartigkeit, durch die die Erfindung gekennzeichnet ist, werden insbesondere in den angefügten Ansprüchen herausgestellt, die Teil der vorliegenden Offenbarung bilden. Für ein besseres Verständnis der Erfindung, ihrer Betriebsvorteile und spezifischer durch ihre Verwendung erreichten Ziele wird auf die Zeichnungen und das Beschreibungsmaterial verwiesen, worin bevorzugte Ausführungsformen der Erfindung dargestellt und beschrieben werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein allgemeines Diagramm einer herkömmlichen einzelnen TCP/Internet-Verbindung;
  • 2 ist ein Kontextdiagramm mit einem komplexen Warteschlangepuffer in der Aufwärtsstrecke einer einzelnen TCP-Verbindung;
  • 3 ist ein Blockschaltbild der Komponenten der erfindungsgemäßen komplexen Warteschlange;
  • 4 ist ein Anschauungsbeispiel für eine Internet-Verbindung, wobei die Datenflußsteueranordnung der Erfindung verwendet wird.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • 2 zeigt eine Datenflußsteueranordnung für eine TCP-Netzwerkverbindung und ist insbesondere ein Kontextdiagramm, das die erfindungsgemäße TCP-Verbindung zeigt, die eine Vielzahl von Benutzer-PCs 50a, 50b, ..., 50n versorgt. Wie in 2 gezeigt, ist jeder Kunden-PC 50a, ..., 50n usw. mit einem lokalen Netzwerk 55 verbunden, das ein Verbindungs- oder Teilnehmernetzwerkendgerät 100 enthält. Das Teilnehmernetzwerkendgerät 100 empfängt Datenpakete aus einer Verbindung der Vorwärts-(Abwärts)-Strecke 90 von einem Dienstanbieter, z. B. dem WAN/Internet 80, die durch einen Server 82 versorgt wird. Insbesondere werden die Datenpakete über die Vorwärtsstrecke 90 von einem Dienstanbieter-Netzwerkendgerät 85 übermittelt, um von dem lokalen Teilnehmernetzwerk 55 empfangen zu werden, das die Pakete zu dem entsprechenden Kundenabschluß (PC) verteilt oder demultiplext. Das Teilnehmernetzwerkendgerät 100 enthält eine Vorwärtswarteschlange 97, die die empfangenen Datenpakete vorübergehend speichert und sie mit einer bestimmten Rate zu dem lokalen Teilnehmernetzwerk weiterleitet. Die Kunden-PCs geben ihrerseits Pakete der Bestätigung (ACK) zum Empfang durch das Dienstanbieternetzwerk 85 über eine Rückwarts-(Aufwärts-)Strecke 95 aus. Die PCs können sogar dem lokalen Teilnehmernetzwerk 55 Datenpakete zuführen, das seinerseits die Daten zur Aufwärtsübertragung zu dem Netzwerkendgerät 100 multiplext. Wie oben besprochen, ist die vorbekannte TCP-Verbindungsarchitektur dadurch gekennzeichnet, daß sie asymmetrisch ist, mit einer schnelleren Abwärtsstrecke 90 von dem Dienstanbieternetzwerk 85 zu dem Teilnehmernetzwerk 55 und einer langsameren Aufwärtsstrecke 95 von dem Teilnehmernetzwerk 55 zu dem Dienstanbieternetzwerk 85, wodurch normalerweise bei herkömmlichen TCP/IP-Verbindungsarchitekturen ein Engpaß, Zufallsverlust von Paketen und inakzeptable Verzögerungen und Durchsätze verursacht werden. Um maximalen Paketdurchsatz sicherzustellen, ist das Netzwerkendgerät 100 mit einer erfindungsgemäßen "komplexen" Rückwärtsstreckenwarteschlange 150 ausgestattet, die individuelle Warteschlangen per Verbindung zum optimalen Weiterleiten sowohl von Daten- als auch ACK-Paketen zu dem Dienstanbieternetzwerkendgerät 85 über die Rückwärtsstrecke 95 herstellen kann. Es versteht sich, daß die vorherrschenden TCP-Tahoe- und TCP-Reno-Protokolle für die Internetkommunikation die Aufwärts- und Abwärtsbitraten über jeweilige Vorwärts- und Rückwärtsstrecken bestimmen.
  • Wie in 3 gezeigt, enthält die komplexe Warteschlange 150 einen Speicher-Speicherungsbereich, der das Herstellen mehrerer verbindungsweiser Warte schlangen 151a, ..., 151n ermöglicht. Um den Datendurchsatz zu maximieren, ist wie in 3 gezeigt, die komplexe Warteschlange 150 als Frontend-Prozessor 101 strukturiert, der folgendes ausführt: eine Warteschlangenverwaltungsfunktion, die als Warteschlangenmanager 160 abgebildet ist; eine als Klassifizierer 200 abgebildete Paketklassifikationsfunktion und eine als Scheduler 300 abgebildete Paketübertragungseinteilungsfunktion. Die von dem Frontend-Prozessor ausgeführten oben erwähnten Funktionen ermöglichen kooperativ das Herstellen von Pufferwarteschlangen auf Bedarfsbasis zum Speichern und Übertragen von für die Aufwärtsrichtung bestimmten Informationspaketen auf der Rückwärtsstrecke 95 gemäß Speicher- und Warteschlangenverwaltungs- und Einteilungsrichtlinien.
  • Zum Beispiel betrachtet der Klassifizierer 200 unter der Kontrolle des Frontend-Prozessors 101 jedes ankommende Paket aus dem Teilnehmernetzwerk und klassifiziert seinen Typ, z. B. Daten, ACK usw. Außerdem verfolgt er die existierenden Verbindungen und ihren Typ (gierig, sporadisch, Daten, ACK), weist jeder Verbindung eine jeweilige Warteschlange 151a, ..., 151n zu und plaziert das Paket in der korrekten Warteschlange. Genauer gesagt besitzt jeder der Quellen-PCs 50a, b, c eine entsprechende Netzwerkadresse und einen mit ihm assoziierten Port, und beim Senden von Daten oder ACK zu einer Zieladresse und einem Zielport kann eine dynamische Warteschlangenverbindung im Speicher aufgebaut werden, um die Informationen für den letztendlichen Transfer zu der Zieladresse bzw. dem Zielport zu speichern. Der Klassifizierer 200 erzeugt und unterhält eine (nicht gezeigte) Tabelle von für bestimmte Quellenadressen bzw. Quellenports und entsprechende Zieladressen bzw. Zielports hergestellte Warteschlangenverbindungen und verfolgt somit die Aufwärtsübermittlung von Daten oder ACKs zwischen bestimmten Ziel und Quellen. Abhängig von den Kosten und/oder Speicherbeschränkungen des Systems kann eine Warteschlange 151 dynamisch für den Empfang, z. B. von Datenpaketen, und alle weiteren Warteschlangen für den Empfang, z. B. von ACK-Paketen, ungeachtet der Anzahl sendender Quellen hergestellt werden. Es wird somit jedoch bevorzugt, daß für jede distinkte TCP-Verbindung eine Warteschlange hergestellt wird. In der Praxis wird erwartet, daß die Anzahl der Warteschlangen begrenzt ist und der Speicher- und Warteschlangenmanager Warteschlangenbelegungsschemata durchsetzt, um die dynamische Ersetzung zu ermöglichen, wenn alle Warteschlangen belegt sind.
  • Wie in 3 gezeigt, speichert der Speicher- und Warteschlangenmanager 160 Pakete in Speicherwarteschlangen und setzt Warteschlangenbelegungsrichtlinien durch. Wenn alle Warteschlangen belegt sind und eine neue Verbindung von Quelle/Ziel hergestellt wird, kann der Warteschlangenmanager insbesondere es einer Warteschlange dynamisch möglichen, für die Aufwärtsübertragung neuer Pakete zwischen der neuen Verbindung von Quelle/Ziel verfügbar zu werden, Innerhalb der Einschränkungen des implementierten TCP/IP-Protokolls, z. B. TCP-Tahoe, besteht ein Schema darin, eine Zeitgrenzenfunktion zu implementieren, bei der der Warteschlangenmanager Inaktivität einer für eine andere Verbindung von Quelle/Ziel hergestellten Warteschlange bestimmt, d. h. in einem bestimmten Zeitraum (z. B. fünf Minuten) empfängt die belegte Warteschlange kein Paket und sendet auch keine Pakete. Die Tabelle der Verbindungen pro Warteschlange in dem Klassifizierer 200 wird entsprechend aktualisiert.
  • Zusätzlich implementiert wie hier erläutert der Warteschlangenmanager 160 eine erste Empfangspaketregel, wodurch der Warteschlangenmanager unter allen Umständen immer das letzte empfangene Paket in einer Warteschlange behalten und ein etwaiges älteres Paket aus der Warteschlange abwerfen kann.
  • Ein wesentlicher Aspekt der physischen Streckenschicht dieses Systems ist zu bestimmen, wenn die Rückwärtsstreckenschicht frei ist, z. B. nachdem ein Paket gesendet wurde. Gemäß den konkreten Systemanforderungen (z. B. ADSL, HFC, usw.) gibt es wohlbekannte Hardwareimplementierungen zum Bestimmen der Belegung (benutzten Bandbreite) und des Status anderer Parameter der Vorwärts- und Rückwärtsstrecken. Nachdem bestimmt wurde, daß die Rückwärtsstrecke frei zum Senden ist, versorgt der Scheduler 300 die Warteschlangen durch Auswählen eines zu sendenden Pakets aus einer bestimmten Warteschlange 151a, ..., 151n gemäß Übertragungsverwaltungsrichtlinien. Solche Übertragungsverwaltungsrichtlinien beinhalten zum Beispiel fairgewichtete Warteschlangen, wobei jede Warteschlange gleiche Dienstzeit erhält. Im Fall des Sendens von ACK-Paketen gemäß dem gewichteten Schema bestimmt der Prozessor somit kritische Parameterinformationen über die Vorwärts-(Abwärts-)Strecke 90, wie etwa Abwärtsübertragungsrate Cdown (Bit/Sekunde) und Größe des Abwärts-Engpaß-(Vorwärtsstrecken-)Puffers Bdown und zusätzlich Informationen über die Aufwärtstrecke, wie etwa Aufwärtsübertragungsrate Cup (Bit/Sekunde) und Länge z. B. eines ACK-Pakets (LACK), so daß der Scheduler ein Gewicht WALK für das konkrete ACK-Paket berechnen und das ACK-Paket gemäß seinem Gewicht senden kann, um so die Übertragungsbandbreite zu maximieren. Wie beschrieben werden wird, berücksichtigen die Parameterinformationen implizit die Laufzeitverzögerungszeiten, Vorwärtspuffergrößen und normierte Asymmetrie in der Netzwerkverbindung. Es versteht sich, daß die Auswahl von Datenpaketen zur Übertragung über die Rückwärts-(Aufwärts-)Strecke genauso bestimmt werden kann.
  • Um das Verständnis der Erfindung weiter zu erleichtern, wird nun auf 4 verwiesen, worin ein allgemeines Beispiel für eine Internetverbindung 50 dargestellt ist, die zwischen einem Prozessor 40 und einer Website 10 zum Zwecke des Herunterladens von Informationen von der Website 10 zu dem Prozessor 40 über das Datennetzwerk 20 hergestellt wird. Die Internetverbindung enthält einen Steuerprozessor 30 und eine Abwärtsstrecke 35, wobei es sich zum Beispiel um eine herkömmliche Kabelstrecke handeln kann, die an eine Vielzahl von Teilnehmern angeschlossen ist. Die Abwärtsstrecke 35 ist über (nicht gezeigte) jeweilige Schnittstelleneinrichtungen, z. B. Kabelmodems, an eine Vielzahl von Teilnehmern, darunter den Prozessor 40, angeschlossen. Wenn der Prozessor 40 zufällig zum Beispiel ein Personal Computer ist, ist es wahrscheinlich, daß die Verbindung auf herkömmliche Weise auf Anforderung eines (nicht gezeigten) Benutzers eingeleitet wurde. Dies erfolgt in der Regel durch Verwendung des wohlbekannten TCP-Protokolls und Senden der Nachricht über eine Aufwärtsstrecke, z. B. eine herkömmliche Telefonverbindung, zu der Steuerung 30. Die Steuerung 30 leitet die Nachricht dann über das Datennetzwerk 20 zu der in der Nachricht identifizierten Internet-Website, z. B. der Website 10, weiter. Die Website 10 sendet ihrerseits die angeforderten Informationen in Form von Datenpaketen über die erwähnte Abwärtsstrecke zu dem Prozessor 40. Der Frontend-Prozessor 41 empfängt die Abwärtspakete und leitet sie zu der entsprechenden Transaktion, z. B. der Transaktion 42, weiter. Die Transaktion erzeugt ihrerseits ein herkömmliches ACK-Paket im TCP-Format und speichert das Paket zur Übertragung über die Aufwärtsstrecke zu der Website 10 in der ACK-Warteschlange 43.
  • Wie bereits erwähnt, ist es wahrscheinlich, daß unter bestimmten Bedingungen die ACK-Warteschlange (Puffer) 43 überlastet (voll) werden kann. In diesem Fall wird dann ein neues ACK gewöhnlich verworfen, da es nicht in die Warteschlange geladen werden kann. Da das neue ACK mehr Informationen als ein bereits in der Warteschlange gespeichertes ACK enthält, wird dann gemäß der Erfindung das neue ACK (d. h. das letzte zu erzeugende ACK) erhalten, statt verworfen. Ein ACK, das sich bereits in der ACK-Warteschlange 43 befindet, wird somit verworfen, um in der Warteschlange Platz für das neuste ACK zu schaffen. Bei einer beispielhaften Ausführungsform der Erfindung wird das älteste ACK in der Warteschlange verworfen.
  • Die Bestätigungspakete dienen bei TCP einem weiteren Zwecke, d. h. die Datenpakete werden auf der Basis der Ankunft von Bestätigungen für die Datenquelle mit einer gesteuerten Rate freigegeben. Ein zu großer Bestätigungspaketverlust kann auch bei Erhaltung von Fehlerbehebungsinformationen wie hier beschrieben diesen Flußsteuermechanismus stören. Wenn N Bestätigungen verloren gehen, bewirkt die Ankunft der (N + 1)ten Bestätigung, daß die Quelle (N + 1) Pakete gleichzeitig freigibt. Wenn der Datenpuffer nicht groß genug ist, um diesen Stoß zu absorbieren, gehen die Datenpakete verloren, so daß TCP sein Fenster abwirft, was daher zu einem niedrigen Durchsatz führt. Die Verwaltung des Bestätigungspuffers muß daher dergestalt sein, daß die größte Anzahl von Bestätigungen durchgelassen wird, während die neueste Bestätigung immer erhalten wird. Dies führt zu der Pufferdisziplin des Abwerfens von der Front für den Rückpfad, wodurch die neuesten Fehlerbehebungsinformationen erhalten und die größte Menge an Flußsteuerinformationen ermöglicht werden.
  • Aus 4 ist ersichtlich, daß Prozessor 40 außerdem eine Paketwarteschlange 44 enthält, die mit einem bestimmten "Rückwärtsverbindungs"-Transaktionsprozeß assoziiert sein kann, der herkömmliche Datenpakete zur Übertragung über die Aufwärtsstrecke 36 erzeugt. Wie bereits erwähnt, kann unter bestimmten Bedingungen der Durchsatz der Rückverbindung nahezu null betragen, wenn die Betriebsmittel der Aufwärtsstrecke nicht auf gesteuerte Weise zugeteilt werden. Wie auch bereits erwähnt wurde, erfolgt eine solche Zuteilung gemäß einem Aspekt der Erfindung durch festes Zuordnen von Warteschlangen zu jeweiligen Diensten, Verbindungen, ACKs, Datenpaketen usw. und Versorgung der Warteschlangen gemäß einem gewichteten Einteilungsschema. Gemäß der Erfindung wird genauer gesagt angenommen, daß die Abwärtsstrecke 35 (1) eine Rate von Cdown Bit/Sekunden aufweist und daß die langsamere Aufwärtstrecke 36 eine Rate von Cup (Bit/Sekunden) aufweist. Zusätzlich wird angenommen, daß TCP-Verbindungen in beiden Strecken unterstützt werden und daß die Länge eines Datenpakets LDATA und die Länge eines ACK LACK beträgt. Bei einer Vorwärtsverbindung beträgt die maximale für Datenpakete verfügbare Bandbreite
    Figure 00140001
    Pakete pro Sekunde und die maximale für ACK-Pakete verfügbare Bandbreite beträgt
    Figure 00140002
    Die "normierte Asymmetrie" zwischen dem Vorwärts- und Rückwärtspfad wird dann als k = μfr definiert, wovon angenommen wird, das es ein Wert > 1 ist. Es wird angenommen, daß die Größe eines zum Puffern von über die Abwärtstrecke 35 zu transportierenden Datenpaketen verfügbaren Puffers Bdown Bit beträgt, was
    Figure 00140003
    entspricht. Der Anteil der Gesamtzeit, der für die Versorgung der ACK-Warteschlange 43 zugeteilt werden kann, beträgt:
    Figure 00140004
  • Um nahezu optimalen Dienst (Durchsatz) dieser Warteschlangen zu erzielen, spezifiziert gemäß der Erfindung die folgende Relation von Gleichung (2) die Gewichte, die mit der ACK-Warteschlange (Puffer) 43 assoziiert werden sollen, und die folgende Relation von Gleichung (3) spezifiziert die Gewichte, die mit der Datenpaketwarteschlange (Puffer) 44 assoziiert werden sollen:
    Figure 00150001
    WDATA = 1 – WACK (3)
  • Es versteht sich, daß es nicht möglich ist, die Abwärtsstrecke voll auszunutzen, wenn der Wert von WALK in Gleichung (2) größer als eins ist. Ferner sollte erkannt werden, daß mehr als eine Quelle der Aufwärtsstrecke Datenpakete zuführen könnte. In diesem Fall sollte dann jede solche Quelle mit ihrer eigenen Paket-/Datenwarteschlange assoziiert werden, um die effizienteste Versorgung der Pakete und somit den Durchsatz der Aufwärtsstrecke zu erzielen.
  • Es versteht sich, daß die obige allgemeine Beschreibung lediglich ein Anschauungsbeispiel für eine Anzahl verschiedener Weisen ist, die gewichtete Einteilung implementieren, die die Bedingungen erfüllt, daß für jede Verbindung das Verhältnis der verfügbaren Paketversorgungsrate und der verfügbaren ACK-Versorgungsrate kleiner als die verfügbare Puffergröße auf dem Vorwärtspfad ist. Das heißt, für jede Verbindung gilt k = μfr was auch mit der mittleren Größe eines Paket-Bursts äquivalent ist, die kleiner als Bf sein muß, wenn keine Pakete unnötig verloren werden sollen. Wenn aufgrund von Unvollkommenheit des Schedulers (Linienkopf-Blockierung) "k" lokal mit der Zeit variiert, muß der ungünstigste Fall berücksichtigt werden. Ein Scheduler, wie zum Beispiel ein Fluidmodell-Scheduler, ist somit dafür ausgelegt, lokale Abweichung von den zugeteilten Raten zu minimieren.
  • Das obige veranschaulicht lediglich die Prinzipien der Erfindung. Fachleute werden zahlreiche Anordnungen konzipieren können, die zwar hier nicht explizit gezeigt oder beschrieben werden, aber dennoch die Prinzipien realisieren, die in den Schutzumfang der Erfindung fallen.

Claims (9)

  1. Datenübertragungssteueranordnung für ein asymmetrisches Kommunikationssystem mit einer Abwärtsstrecke (90) zum Ermöglichen der Übermittlung von Informationspaketen von einem Dienstanbieter (80) zu einem oder mehreren Teilnehmerendgeräten (50), die durch ein gemeinsames Netzwerkendgerät (100) verbunden werden, und einer Aufwärtsstrecke (95) zum Übertragen von Paketen von dem Teilnehmerendgerät (50) durch das gemeinsame Netzwerkendgerät zu dem Dienstanbieter, wobei die Datenübertragungssteueranordnung durch folgendes gekennzeichnet ist: für das Netzwerkendgerät, ein Klassifizierermittel (200) zum Klassifizieren von durch das Netzwerkendgerät für die Übertragung über die Aufwärtsstrecke empfangenen Informationspaketen, wobei die Informationen Datenpakete und Bestätigungspakete umfassen; ein Steuermittel (101) zum Herstellen einer oder mehrerer Aufwärtsstrecken-Verbindungswarteschlangen (151) in dem Netzwerkendgerät gemäß der Klassifikation des zu übertragenden Informationspakets, wobei die Aufwärtsstrecken-Verbindungswarteschlangen eine oder mehrere Datenwarteschlangen (151) zum Übertragen von Dateninformationen und ACK-Warteschlangen (151) zum Übertragen von ACK-Paketen als Reaktion auf über die Abwärtsstrecke übermittelte Datenpakete umfassen, wobei das Steuermittel erlaubt, daß ein später empfangenes ACK-Paket die ältesten zuvor empfangenen ACK-Pakete ersetzt, die in einer bestimmten Aufwärtsstrecken-Verbindungswarteschlange gespeichert sind; und ein Einteilungsmittel (300) zum Versorgen jeder der Aufwärtsstrecken-Verbindungswarteschlangen und zum übertragen der Pakete von den Aufwärtsstrecken-Verbindungswarteschlangen zu dem Dienstanbieter gemäß Übertragungsparametern sowohl von Aufwärts- als auch von Abwärtsstrecken.
  2. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Netzwerkendgerät ein Speichermittel (150) umfaßt, woraus die Aufwärtsstrecken-Verbindungswarteschlangen hergestellt werden, wobei das Steuermittel ferner den Speicher zuteilt, um eine separate Aufwärtsstrecken-Verbindungswarteschlange für eine jeweilige Verbindung zwischen einem Teilnehmerendgerät und dem Dienstanbieter herzustellen.
  3. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Klassifizierermittel ein Mittel zum Erzeugen einer Tabelle hergestellter Aufwärtsstrecken-Verbindungswarteschlangen und ihrer jeweiligen assoziierten Dienstanbieter- und Teilnehmerendgeräteverbindungen umfaßt und das Steuermittel auf das Klassifizierermittel reagiert, um empfangene Pakete gemäß einem assoziierten Dienstanbieter- und Teilnehmerendgeräteverbindungsstatus in eine Aufwärtsstrecken-Verbindungswarteschlange einzugeben.
  4. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Netzwerkendgerät einen Abwärtspuffer (97) zum vorübergehenden Speichern von über die Abwärtsstrecke zwischen dem Dienstanbieter zu dem Teilnehmerendgerät übermittelten Paketen umfaßt.
  5. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Einteilermittel die Aufwärtsstrecken- Verbindungswarteschlangen gemäß einem gewichteten Schema versorgt, wobei jeder der Aufwärtsstrecken-Verbindungswarteschlangen gemäß ihrer Größe und Belegung Prioritätsgewichte zugewiesen und die Pakete gemäß assoziierten Gewichtswerten über die Aufwärtsstrecke übertragen werden.
  6. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Einteilermittel die Aufwärtsstrecken-Verbindungswarteschlangen gemäß einem fairen Warteschlangenschema versorgt, wobei jeder der Aufwärtsstrecken-Verbindungswarteschlangen ein gleiches Gewicht zugewiesen wird.
  7. Datenübertragungssteueranordnung nach Anspruch 1, wobei die mit der Abwärtsstrecke assoziierten Übertragungsparameter eine Abwärtsübertragungsrate Cdown (Bit/s) und eine Größe des Abwärtspuffers Bdown umfassen.
  8. Datenübertragungssteueranordnung nach Anspruch 1, wobei die mit der Aufwärtsstrecke assoziierten Übertragungsparameter eine Aufwärtspaketübertragungsrate Cup (Bit/s) und eine Länge eines ACK-Pakets LACK umfassen.
  9. Datenübertragungssteueranordnung nach Anspruch 1, wobei das Netzwerkendgerät eine TCP/IP-Verbindung umfaßt.
DE69738359T 1996-08-30 1997-08-19 System zur Verbesserung des Datendurchsatzes einer TCP/IP Netzwerkverbindung mit langsamen Rückkanal Expired - Lifetime DE69738359T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US2512296P 1996-08-30 1996-08-30
US25122P 1996-08-30
US08/858,310 US6078564A (en) 1996-08-30 1997-05-19 System for improving data throughput of a TCP/IP network connection with slow return channel
US858310 1997-05-19

Publications (2)

Publication Number Publication Date
DE69738359D1 DE69738359D1 (de) 2008-01-24
DE69738359T2 true DE69738359T2 (de) 2008-12-04

Family

ID=26699320

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69738359T Expired - Lifetime DE69738359T2 (de) 1996-08-30 1997-08-19 System zur Verbesserung des Datendurchsatzes einer TCP/IP Netzwerkverbindung mit langsamen Rückkanal

Country Status (4)

Country Link
US (1) US6078564A (de)
EP (1) EP0829986B1 (de)
JP (1) JP3321043B2 (de)
DE (1) DE69738359T2 (de)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473793B1 (en) * 1994-06-08 2002-10-29 Hughes Electronics Corporation Method and apparatus for selectively allocating and enforcing bandwidth usage requirements on network users
US6954453B1 (en) 1996-10-07 2005-10-11 Teles Ag Informationstechnologien Method for transmitting data in a telecommunications network and switch for implementing said method
DE19645368C2 (de) * 1996-10-07 1999-12-30 Teles Ag Verfahren und Kommunikationseinrichtung zur Übertragung von Daten in einem Telekommunikationsnetz
US5943140A (en) * 1997-03-14 1999-08-24 Monroe; David Method and apparatus for sending and receiving facsimile transmissions over a non-telephonic transmission system
KR100302263B1 (ko) * 1997-03-25 2001-09-22 모리시타 요이찌 스트림 데이터 전송방법 및 시스템
FI980825A (fi) * 1998-04-09 1999-10-10 Nokia Networks Oy Ylikuormituksen hallinta tietoliikenneverkossa
US6757746B2 (en) 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US7185266B2 (en) * 2003-02-12 2007-02-27 Alacritech, Inc. Network interface device for error detection using partial CRCS of variable length message portions
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US7167927B2 (en) * 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
FI980826A (fi) * 1998-04-09 1999-10-10 Nokia Networks Oy Ylikuormituksen hallinta tietoliikenneverkossa
US6215769B1 (en) * 1998-10-07 2001-04-10 Nokia Telecommunications, Inc. Enhanced acknowledgment pacing device and method for TCP connections
US7159005B1 (en) 1998-10-16 2007-01-02 International Business Machines Corporation Methods, systems and computer program products for restartable multiplexed file transfers
US6804251B1 (en) 1998-11-12 2004-10-12 Broadcom Corporation System and method for multiplexing data from multiple sources
US6401136B1 (en) * 1998-11-13 2002-06-04 International Business Machines Corporation Methods, systems and computer program products for synchronization of queue-to-queue communications
US6560243B1 (en) * 1999-04-30 2003-05-06 Hewlett-Packard Development Company System and method for receiver based allocation of network bandwidth
EP1076441B1 (de) * 1999-08-09 2009-04-15 Alcatel Lucent Datentransportverfahren und entsprechendes Übertragungs- und Empfangselement sowie Softwaremodul hierfür
US6909715B1 (en) 1999-08-31 2005-06-21 Broadcom Corporation Method and apparatus for the reduction of upstream request processing latency in a cable modem termination system
WO2001017168A2 (en) * 1999-08-31 2001-03-08 Broadcom Corporation Method and apparatus for the reduction of upstream request processing latency in a cable modem termination system
US6795865B1 (en) 1999-10-08 2004-09-21 Microsoft Corporation Adaptively changing weights for fair scheduling in broadcast environments
US7522631B1 (en) * 1999-10-26 2009-04-21 Qualcomm, Incorporated Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system
US6993007B2 (en) 1999-10-27 2006-01-31 Broadcom Corporation System and method for suppressing silence in voice traffic over an asynchronous communication medium
US6999414B2 (en) 1999-10-27 2006-02-14 Broadcom Corporation System and method for combining requests for data bandwidth by a data provider for transmission of data over an asynchronous communication medium
US7333495B2 (en) 1999-10-27 2008-02-19 Broadcom Corporation Method for scheduling upstream communications
US7203164B2 (en) 1999-10-27 2007-04-10 Broadcom Corporation Voice architecture for transmission over a shared, contention based medium
ATE555604T1 (de) 2000-02-15 2012-05-15 Broadcom Corp Verfahren zur planung von aufwärtskommunikationen
JP3604615B2 (ja) * 2000-04-21 2004-12-22 株式会社東芝 通信装置、中継装置および通信制御方法
US6925502B1 (en) 2000-06-20 2005-08-02 At&T Corp. Methods and systems for improving data transmission rates having adaptive protocols
US6958997B1 (en) * 2000-07-05 2005-10-25 Cisco Technology, Inc. TCP fast recovery extended method and apparatus
WO2002019654A2 (en) * 2000-08-31 2002-03-07 The Regents Of The University Of California Method for improving tcp performance over wireless links
US8019901B2 (en) 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US7515597B1 (en) 2000-10-03 2009-04-07 Eads Telecom North America Inc. Distributed switching platform and method of operating the same
US7856660B2 (en) * 2001-08-21 2010-12-21 Telecommunication Systems, Inc. System for efficiently handling cryptographic messages containing nonce values
US7881202B2 (en) 2002-09-25 2011-02-01 Broadcom Corporation System and method for dropping lower priority packets that are slated for wireless transmission
US7839785B2 (en) * 2001-09-27 2010-11-23 Broadcom Corporation System and method for dropping lower priority packets that are slated for transmission
US20030067874A1 (en) * 2001-10-10 2003-04-10 See Michael B. Central policy based traffic management
US20030074465A1 (en) * 2001-10-15 2003-04-17 Zhicheng Tang ADSL downloading with priority transmit queue
US7197571B2 (en) * 2001-12-29 2007-03-27 International Business Machines Corporation System and method for improving backup performance of media and dynamic ready to transfer control mechanism
US8151003B2 (en) * 2002-02-05 2012-04-03 International Business Machines Corporation System and method for routing data by a server
US7496689B2 (en) * 2002-04-22 2009-02-24 Alacritech, Inc. TCP/IP offload device
US7543087B2 (en) 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7337241B2 (en) * 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US20040085915A1 (en) * 2002-11-04 2004-05-06 Yuval Gronau Protocol performance using ACK priority
US20040100979A1 (en) * 2002-11-26 2004-05-27 Mandin Jeffrey Bernard Protocol performance using ACK filtering
US7349400B2 (en) * 2003-04-29 2008-03-25 Narus, Inc. Method and system for transport protocol reconstruction and timer synchronization for non-intrusive capturing and analysis of packets on a high-speed distributed network
JP2004364217A (ja) * 2003-06-09 2004-12-24 Matsushita Electric Ind Co Ltd パケット通信装置
JP4269176B2 (ja) 2003-08-20 2009-05-27 日本電気株式会社 セッション中継装置及び中継方法
US7315515B2 (en) * 2003-09-30 2008-01-01 Conexant Systems, Inc. TCP acceleration system
JP2005278028A (ja) * 2004-03-26 2005-10-06 Matsushita Electric Ind Co Ltd 通信装置およびシステム
EP1771742B1 (de) * 2004-07-29 2017-07-12 Dell Products L.P. Hochleistungs-tcp für systeme mit seltenem ack
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
CA2590965C (en) * 2004-12-24 2016-05-03 Aspera, Inc. Bulk data transfer
AU2011203511B2 (en) * 2004-12-24 2013-10-31 International Business Machines Corporation Bulk data transfer
US8214707B2 (en) 2007-06-26 2012-07-03 Aspera, Inc. Method and system for reliable data transfer
US7733868B2 (en) 2005-01-26 2010-06-08 Internet Broadcasting Corp. Layered multicast and fair bandwidth allocation and packet prioritization
JP2006262417A (ja) * 2005-03-18 2006-09-28 Fujitsu Ltd 通信速度制御方法及びその装置
GB0611249D0 (en) 2006-06-07 2006-07-19 Nokia Corp Communication system
AU2007296442A1 (en) * 2006-09-13 2008-03-20 Asankya Networks, Inc. Systems and methods of improving performance of transport protocols in a multi-path environment
US9049017B2 (en) * 2006-10-02 2015-06-02 Sony Corporation Efficient TCP ACK prioritization in wireless networks
US8004991B1 (en) * 2006-10-11 2011-08-23 Qlogic, Corporation Method and system for processing network information
US20080263171A1 (en) * 2007-04-19 2008-10-23 Alacritech, Inc. Peripheral device that DMAS the same data to different locations in a computer
US9667545B2 (en) * 2007-09-04 2017-05-30 International Business Machines Corporation Method and system for aggregate bandwidth control
US8838817B1 (en) 2007-11-07 2014-09-16 Netapp, Inc. Application-controlled network packet classification
FR2925802B1 (fr) * 2007-12-20 2010-01-08 Canon Kk Procede d'acquittement de donnees
US8566833B1 (en) 2008-03-11 2013-10-22 Netapp, Inc. Combined network and application processing in a multiprocessing environment
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
US20100165838A1 (en) * 2008-12-30 2010-07-01 Yury Bakshi Method and apparatus for improving data throughput in a network
JP5246015B2 (ja) * 2009-04-23 2013-07-24 富士通株式会社 サーバおよびack返信方法
WO2010125429A1 (en) 2009-04-30 2010-11-04 Freescale Semiconductor, Inc. Apparatus, communications system and method for optimizing data packet flow
US8264966B1 (en) * 2009-09-04 2012-09-11 Sprint Communications Company L.P. Overload management on backhaul links based on packet loss on RF links
JP5573844B2 (ja) * 2009-11-02 2014-08-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 通信端末および通信方法
JP6051939B2 (ja) * 2013-02-27 2016-12-27 富士ゼロックス株式会社 帯域測定装置及びプログラム
CN104184677B (zh) * 2013-05-24 2018-12-14 中兴通讯股份有限公司 一种流量整形的驱动方法及驱动器
US20150149639A1 (en) * 2013-11-22 2015-05-28 Abdul Hawk Ismail Bandwidth allocation in a networked environment
CN110146779B (zh) * 2019-04-24 2021-06-08 国网江苏省电力有限公司电力科学研究院 基于终端及配变告警的柔性配电网故障区域精准定位方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2540930B2 (ja) * 1988-02-19 1996-10-09 日本電気株式会社 輻輳制御装置
US5862335A (en) * 1993-04-01 1999-01-19 Intel Corp. Method and apparatus for monitoring file transfers and logical connections in a computer network
US5497375A (en) * 1994-01-05 1996-03-05 Motorola, Inc. Device and method for ATM end system cell flow regulation
US5519731A (en) * 1994-04-14 1996-05-21 Amati Communications Corporation ADSL compatible discrete multi-tone apparatus for mitigation of T1 noise
US5530703A (en) * 1994-09-23 1996-06-25 3Com Corporation Remote communication server with automatic filtering
US5586121A (en) * 1995-04-21 1996-12-17 Hybrid Networks, Inc. Asymmetric hybrid access system and method
US5889956A (en) * 1995-07-19 1999-03-30 Fujitsu Network Communications, Inc. Hierarchical resource management with maximum allowable allocation boundaries

Also Published As

Publication number Publication date
JPH10126446A (ja) 1998-05-15
JP3321043B2 (ja) 2002-09-03
EP0829986A1 (de) 1998-03-18
DE69738359D1 (de) 2008-01-24
US6078564A (en) 2000-06-20
EP0829986B1 (de) 2007-12-12

Similar Documents

Publication Publication Date Title
DE69738359T2 (de) System zur Verbesserung des Datendurchsatzes einer TCP/IP Netzwerkverbindung mit langsamen Rückkanal
DE60017622T2 (de) Auf RSVP-basiertes Tunnelprotokoll zum Bereitstellen von integrierten Diensten
DE19983404B4 (de) Verfahren und Vorrichtung zur Verwendung bei der Einstellung eines TCP Gleitfensters
DE69834763T2 (de) Verfahren zur Unterstützung von verbindungsindividuellen Warteschlangen für rückgekoppelte Verkehrssteuerung
DE60018799T2 (de) Netzwerkvermittlung mit paketfolgesteuerung
DE69025713T2 (de) Dynamische Fensterbestimmung in einem Datennetzwerk
EP1428408B1 (de) Verteilte übermittlung von informationen in einem verbindungslosen, paketorientierten kommunikationsnetz
DE69130286T2 (de) Verfahren zur priorisierung, selektiven ablösung und multiplexierung von schnellen paketen verschiedener verkehrsarten
DE112013000398B4 (de) Multisprung-Fehlerbehebung
DE69025558T2 (de) Verfahren und Vorrichtung zur Überlastregelung in einem Datennetzwerk
DE69922180T2 (de) Verfahren und Vorrichtung zur Datenflusssteuerung
DE60034504T2 (de) Vorrichtung zur Weiterleitung von Paketen und Verfahren zum Setzen von Paketprioritäten
DE60301220T2 (de) Ressourcenzuteilung an Pakete in Übereinstimmung mit Dienstqualitäten in einer Funkkommunikationsumgebung
DE60034654T2 (de) System und Verfahren zur Adaption und Verwaltung von IP Dienstqualität
DE602004003895T2 (de) Verfahren und Vorrichtung zur dynamischen Ressourcenzuweisung in einem drahtlosen Netz
DE69126640T2 (de) Flusssteuerung für Hochgeschwindigkeitsnetzwerk
DE69937537T2 (de) Überwachung von Internet unterschiedlichen Diensten für Transaktionsverwendungen
DE60119780T2 (de) System und verfahren für eine übertragungsratensteuerung
EP1451980B1 (de) Verfahren zur uebertragung von daten von applikationen mit unterschiedlicher qualität
DE60115108T2 (de) Einrichtung und verfahren zur flusssteuerung basierend auf prioritäten in einem mobilen netzwerk
DE69916648T2 (de) Verfahren und cdma-kommunikationssystem basiert auf sima dienstqualitätsklassen
DE60100478T2 (de) IP Plattform für verbesserte Mehrpunkt-Zugriffsysteme
DE60117957T2 (de) Verfahren, System und Rechnerprogrammprodukt zur Bandbreitenzuteilung in einem System mit Mehrfachzugriff
DE69811622T2 (de) Verfahren und Vorrichtung zur Bandbreitenverwaltung in einem Datenübertragungsnetz
DE60106251T2 (de) Anordnung und verfahren für satellitengesteuertes aloha

Legal Events

Date Code Title Description
8364 No opposition during term of opposition