DE69637275T2 - Verfahren zur auf Quittung basierten Flusssteuerung - Google Patents

Verfahren zur auf Quittung basierten Flusssteuerung Download PDF

Info

Publication number
DE69637275T2
DE69637275T2 DE69637275T DE69637275T DE69637275T2 DE 69637275 T2 DE69637275 T2 DE 69637275T2 DE 69637275 T DE69637275 T DE 69637275T DE 69637275 T DE69637275 T DE 69637275T DE 69637275 T2 DE69637275 T2 DE 69637275T2
Authority
DE
Germany
Prior art keywords
transmission
network
circuit
delay
latency characteristic
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
DE69637275T
Other languages
English (en)
Other versions
DE69637275D1 (de
Inventor
Anthony H. Holmdel Chien
Jeffrey M. Holmdel Donnelly
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.)
NCR International Inc
Original Assignee
NCR International 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 NCR International Inc filed Critical NCR International Inc
Application granted granted Critical
Publication of DE69637275D1 publication Critical patent/DE69637275D1/de
Publication of DE69637275T2 publication Critical patent/DE69637275T2/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/267Flow control; Congestion control using explicit feedback to the source, e.g. choke packets sent by the destination endpoint
    • 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/35Flow control; Congestion control by embedding flow control information in regular packets, e.g. piggybacking

Landscapes

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

Description

  • Die vorliegende Erfindung betrifft Netzwerkkonnektivität und genauer Schaltkreise und Verfahren zur intelligenten Bestätigungs-basierten Flusskontrolle in Verarbeitungssystemnetzwerken.
  • Ein Verarbeitungssystemnetzwerk wie beispielsweise ein Computernetzwerk oder eine Kommunikationsnetzwerk ist eine Kombination von zwei oder mehr unabhängigen Knoten, die fähig sind, miteinander über einen Kommunikationskanal, Weg (Path) oder Link zu kommunizieren. Ein Knoten kann ein unabhängiges Verarbeitungssystem, wie beispielsweise ein herkömmlicher Computer oder ein anderes Verarbeitungssystemnetzwerk sein.
  • Knoten kommunizieren miteinander, um Ressourcen zu teilen, beispielsweise Datenbanken und Datendateien, Softwareanwendungen, Hardwareperipheriegeräte und Kommunikationsverbindungen. Kommunikationsverbindungen werden geteilt, um es zwei oder mehr Knoten zu ermöglichen, durch einen oder mehrere Zwischenknoten zu kommunizieren, ohne dass sie direkt miteinander verbunden sind. Ressourcenteilung bedingt üblicherweise die Übertragung von großen Datenmengen. Die Daten werden üblicherweise in Pakete, Frames, Gruppen, etc. („Datenpakete") geteilt. Jedes Datenpaket enthält Daten und Informationen, die notwendig sind, um es zwischen zwei oder mehr Knoten zu leiten.
  • Netzwerke gehören herkömmlicher Weise zu einer von zwei allgemeinen Kategorien, nämlich lokale Netzwerke (local area networks, LANs) und Fernbereichsnetzwerke (wide area networks, WANs). Ein LAN ist eine Gruppe von Kommunikationskno ten, die relativ nah beieinander angeordnet sind, beispielsweise innerhalb desselben Gebäudes oder Gebäudekomplexes. Ein WAN ist andererseits eine Sammlung von unabhängigen und bestimmten Netzwerkknoten, die über relativ große Distanzen kooperieren. Kommunikationsverbindungen zwischen WAN-Knoten werden routinemäßig durch Drittanbieter bereitgestellt, wie beispielsweise Fernbereichstelefongesellschaften. Gateways, wie beispielsweise Router, Bridges oder andere geeignete Netzwerkzugangsvorrichtungen werden verwendet, um LANs und WANs miteinander zu verbinden (d. h. LAN zu LAN, LAN zu WAN und WAN zu WAN). Der herkömmliche Ansatz ist, das Gateway als einen Kreuzungspunkt zu verwenden, durch welchen die Datenpakete von einem Quellnetzwerk empfangenen zu einem oder mehreren Zielnetzwerken geleitet (routed) werden. Gateways umfassen üblicherweise einen Kontrollschaltkreis und einen Speicher. Der Speicher umfasst häufig die Routingadresse für jedes mit dem Gateway verbundene LAN und jedes mit dem Gateway verbundene WAN und umfasst auch oftmals die Adresse von einem oder mehreren Knoten von jedem der LANs und WANs. Falls ein bestimmter Knoten selbst ein LAN oder WAN ist, werden die Adressen von einem oder mehreren seiner Knoten ebenso häufig in dem Speicher gespeichert.
  • Die Kommunikation zwischen Netzwerken und Knoten verwendet Ebenenoperationen. Ebenenoperationen umfassen eine Datenverkehrsflusskontrolle, Ablaufsteuerung (Sequencing), Übertragungsfehler-Erfassung und -Korrektur und Ähnliches. Beispielsweise werden drei seriell verbundene Netzwerke betrachtet (d. h. Netzwerk A, Netzwerk B und Netzwerk C), in denen ein oder mehrere Datenpakte von einem Netzwerk-A-Knoten zu einem Netzwerk-C-Knoten übertragen werden. Definitionsgemäß laufen die Datenpakete wie eine Staffel in einem Staffellauf vom Netzwerk A zum Netzwerk B zum Netzwerk C, bis sie einen Zielknoten erreichen. Der Zielknoten verarbeitet die empfan genen Pakete, um zu bestimmen, ob sie korrekt empfangen wurden. In Antwort darauf gibt der Zielknoten üblicherweise ein „ACK"-Signal zurück, wobei dies bedeutet, dass die Übertragung ohne Fehler empfangen wurde, oder ein „NAK"-Signal, wobei dies bedeutet, dass die Übertragung fehlerhaft war. Falls der Sendeknoten ein ACK-Signal empfängt, löscht er üblicherweise die zuvor gesendeten Datenpakete aus seiner Sendeschlange. Falls er alternativ ein NAK-Signal empfängt, sendet der Sendeknoten zumindest eines der einen oder mehreren Datenpakete zu dem Zielknoten.
  • Üblicherweise werden Zeitschalter verwendet, um das Auftreten eines Ereignisses innerhalb einer vorgeschriebenen Zeitspanne zu verifizieren, wie beispielsweise den Empfang von einem oder mehreren Datenpaketen. Wenn der Sendeknoten ein Datenpaket sendet, startet er einen Sendezeitschalter, der eingestellt ist, abzulaufen, falls der Zielknoten nicht in der Form eines ACK- oder NAK-Signals innerhalb einer eingestellten Zeitspanne antwortet. Beim Zeitablauf wird die Übertragung wiederholt und der Sendezeitschalter wird zurückgesetzt. Ein übliches Problem mit Übertragungszeitschaltwerten ist jedoch, dass sie dabei versagen, Zunahmen und Abnahmen im Netzwerkverkehr (d. h. Kanalbenutzung) zu berücksichtigen. Wenn der Verkehr zunimmt, neigen die Zeitabläufe dazu, zu früh aufzutreten. Wenn der Verkehr entgegengesetzt abnimmt, neigen Zeitabläufe dazu, zu spät aufzutreten. Ein weiteres mit Zielknoten verknüpftes Problem ist, dass es nach Rückgabe eines ACKs erforderlich ist, dass sie ein oder mehrere Datenpakete zu dem Sendeknoten zurückgeben. Mit anderen Worten sendet nach Verarbeitung der empfangenen Datenpakete der Zielknoten ein oder mehrere sich ergebende Datenpakete zu dem Sendeknoten, wobei dabei der gesamte Netzwerkverkehr zunimmt.
  • Eine Lösung für dieses zuletzt identifizierte Problem ist, die Rückgabe einer positiven Bestätigung für eine ausreichende Zeitspanne zu verzögern, um es dem Zielknoten zu ermöglichen, die empfangenen Datenpakete zu verarbeiten und den ACK „Huckpack" auf ein zurückzugebendes Datenpaket aufzusetzen. Üblicherweise startet der Zielknoten, wenn er ein Datenpaket empfängt, einen Bestätigungszeitschalter, der eingestellt ist, um abzulaufen, falls der Zielknoten dabei versagt, ein Rückgabedatenpaket innerhalb einer eingestellten Zeitspanne zu erzeugen. Beim Zeitablauf sendet der Zielknoten das ACK-Signal. Ein übliches Problem mit Bestätigungszeitschaltern ist, dass sie versagen, für eine Serie von Datenpaketen, die an dem Zielknoten empfangen werden und die keine Rückgabedaten erzeugen, vorbereitet zu sein. Mit anderen Worten, der Bestätigungszeitschalter neigt dazu, wiederholt abzulaufen, wobei die Aussendung des ACK-Signals zu dem Sendeknoten unnötig verzögert wird. Unglücklicherweise werden diese wiederholten Zeitabläufe, wenn sie mit einem moderaten oder mit viel Verkehr über ein Netzwerk verknüpft sind, den Sendeknoten verlangsamen und können das Auftreten von Senderzeitabläufen und unnötigen Wiederaussendungen erhöhen.
  • Dementsprechend besteht im Stand der Technik ein Bedürfnis, um effektiv das Auftreten von Bestätigungs-basierten Zeitabläufen zu begrenzen, insbesondere von solchen Zeitabläufen, die aus einem erhöhten Netzwerkverkehr resultieren. Es besteht ein weiteres Bedürfnis im Stand der Technik, verlorene Datenpaketaussendungen, die während Intervallen mit geringerem Netzwerkverkehr auftreten, effizienter noch einmal zu übertragen. Es besteht ein weiteres Bedürfnis im Stand der Technik, Serien von empfangenen Datenpaketen zu identifizieren, die wahrscheinlich keine Daten zu einem Sendeknoten zurückgeben, um geeignet Bestätigungszeitschalter zu modifizieren, um den Datenpaketempfang effizienter zu bestätigen.
  • Die EP-A-0 329 159 wird in den allgemeinen Teilen der unabhängigen Ansprüche, die hieran angefügt sind, wiedergegeben. Das Dokument offenbart ein Verfahren zum Steuern der Übertragung eines Signals durch einen Übertragungsschaltkreis über ein Netzwerk. Das Verfahren umfasst die Schritte des Überwachens einer Latenzcharakteristik, die zumindest teilweise entweder ein Effizienzniveau, das mit der Übertragung des Signals verbunden ist, oder ein Benutzungsniveau des Netzwerks angibt.
  • „Why TCP timers don't work well" von Zhang L. COMPUTER COMMUNICATIONS REVIEW, US, ASSOCIATION FOR COMPUTING MACHINERY, New York, Band 16, Nr. 3, 5. August 1986, Seiten 397-450 offenbart ebenso ein Verfahren des Steuerns der Übertragung eines Signals durch einen Übertragungsschaltkreis über ein Netzwerk. Insbesondere offenbart das Dokument Beobachtungen von TCP-Wiederaussendungs-Zeitschalter-Problemen und den intrinsischen Begrenzungen, die durch Zeitschalter beim Aufzeichnen der optimalen Netzwerkleistung offenbar werden. Weiterhin zeigt das Dokument, dass äußere Ereignisse als eine erste Verteidigungslinie gegenüber Fehlern verwendet werden sollten.
  • Es ist eine Aufgabe der vorliegenden Erfindung, dynamisch und adaptiv die Effizienz von Datenpaketübertragung zu verbessern, um die oben angesprochenen Nachteile zu verbessern.
  • In Übereinstimmung mit einem Aspekt der vorliegenden Erfindung wird ein Verfahren zum Steuern einer Übertragung eines Signals und einer Empfangsanzeige durch einen Übertragungsschaltkreis über ein Netzwerk bereitgestellt, das die Schritte umfasst: Überwachen einer ersten Latenzcharakteristik, wobei die erste Latenzcharakteristik entweder ein mit der Über tragung des Signals durch einen Übertragungsschaltkreis verknüpftes Effizienzniveau oder einen Benutzungsgrad des Netzwerks zumindest teilweise wiedergibt; und Einstellen einer Wiederaussendungsverzögerung des Sendeschaltkreises, die die Zeitspanne zwischen Aussendung und nachfolgender Wiederaussendung von einem oder mehreren Datenpaketen ist, für das Signal über das Netzwerk als eine Funktion der ersten Latenzcharakteristik, um dabei die Sendeverzögerung zu verwalten, gekennzeichnet durch: Überwachen einer zweiten Latenzcharakteristik, wobei die zweite Latenzcharakteristik ein mit der Aussendung der Empfangsanzeige durch den Sendeschaltkreis (515) verknüpftes Effizienzniveau zumindest teilweise wiedergibt; und wobei die Sendeverzögerung der Empfangsanzeige eine Funktion des mit dem Sendeschaltkreis verknüpften Effizienzniveaus ist, wobei die Sendeverzögerung ein abgelaufenes Intervall in Bezug auf ein empfangenes Datenpaket darstellt.
  • In Übereinstimmung mit einem anderen Aspekt der vorliegenden Erfindung wird ein Verwaltungsschaltkreis bereitgestellt zum Steuern des Sendens von Datenpaketen und Empfangsanzeigen durch einen Sendeschaltkreis über ein Netzwerk, gekennzeichnet durch: einen Detektorschaltkreis, der betreibbar ist, um eine erste Latenzcharakteristik des Netzwerks zu überwachen, wobei die Latenzcharakteristik einen Benutzungsgrad des Netzwerks zumindest teilweise wiedergibt und um eine zweite Latenzcharakteristik zu überwachen, die ein mit der Aussendung der Empfangsanzeige durch den Sendeschaltkreis verknüpftes Effizienzniveau zumindest teilweise wiedergibt; und gekennzeichnet durch einen Kontrollschaltkreis, der mit dem Detektorschaltkreis verknüpft ist und wobei der Sendeschaltkreis betreibbar ist, um eine Wiederaussendungsverzögerung des Sendeschaltkreises einzustellen, welche das Zeitintervall zwischen Aussendung und nachfolgender Wiederaussendung von einem oder mehreren Datenpaketen der Datenpakete über das Netzwerk und welche eine Funktion der ersten Latenzcharakteristik ist, um es dabei dem Verwaltungsschaltkreis zu ermöglichen, die Wiederaussendungsverzögerung als eine Funktion des Benutzungsgrads des Netzwerks zu verwalten und eine Sendeverzögerung des Sendeschaltkreises der Empfangsanzeige über das Netzwerk als eine Funktion der zweiten Latenzcharakteristik anzupassen, um es dabei dem Verwaltungsschaltkreis zu ermöglichen, die Sendeverzögerung als eine Funktion des mit dem Sendeschaltkreis verknüpften Effizienzniveaus zu verwalten, wobei die Sendeverzögerung ein abgelaufenes Intervall in Bezug auf ein empfangenes Datenpaket darstellt.
  • Eine Ausführungsform der vorliegenden Erfindung wird nun exemplarisch unter Bezugnahme auf die begleitenden Zeichnungen beschrieben, wobei die Zeichnungen zeigen:
  • 1 ist ein Blockdiagramm der Architekturstruktur eines beispielhaften Transport Control Protocol/Internet Protocol (TCP/IP)-Netzwerkes;
  • 2 ist ein Blockdiagramm zum Leiten eines oder mehrerer Datenpakete zwischen einem ersten und einem zweiten Ort in einem anderen beispielhaften Verarbeitungssystemnetzwerk;
  • 3 ist eine isometrische Ansicht eines beispielhaften Verarbeitungssystems, das fähig ist, als ein Knoten innerhalb eines Verarbeitungssystemnetzwerkes zu funktionieren;
  • 4 ist ein Blockdiagramm eines beispielhaften Mikroprozessorsystems, das vorteilhafterweise in dem Verarbeitungssystem der 3 implementiert sein kann;
  • 5 ist ein Blockdiagramm auf einer höheren Ebene einer beispielhaften Netzwerkschnittstelle in Übereinstimmung mit den Prinzipien der vorliegenden Erfindung; und
  • 6 ist ein Flussdiagramm zum Ausführen einer intelligenten Bestätigungs-basierten Flusskontrolle in Übereinstimmung mit den Prinzipien der vorliegenden Erfindung.
  • Unter jetziger Bezugnahme auf die 1 ist ein Blockdiagramm der Architekturstruktur eines beispielhaften TCP/IP-Netzwerks 100 gezeigt. TCP/IP ist ein bekannter Satz von Protokollen, die entwickelt wurden, um nicht ähnliche Computer über viele verschiedene Arten von Netzwerken zu verbinden. Hierin wird TCP/IP lediglich für anschauliche Zwecke verwendet. Tatsächlich können die Prinzipien der vorliegenden Erfindung in Übereinstimmung mit einem beliebigen geeigneten Bestätigungs-basierten Datenpaketübertragungsschema implementiert werden, einschließlich Open Systems Interconnection (OSI), X.25 und Ähnlichem. „Einschließen", wie der Begriff hierin verwendet wird, bedeutet „Einschließen ohne Begrenzung".
  • Das beispielhafte Netzwerk 100 umfasst eine Mehrzahl von verbundenen Knoten 105. Ein erster Satz von Knoten 105 bildet ein erstes Unternetzwerk 110a, während ein zweiter Satz von Knoten 105 ein zweites Unternetzwerk 110b bildet. Beispielhafte Unternetzwerke 110 sind durch ein beispielhaftes Gateway 115 verbunden, (d. h. einem Router, einer Bridge oder einer anderen geeigneten Zugangsvorrichtung). „Oder", wie es hierin verwendet wird, bedeutet „und/oder". Das Gateway 115 kann vorteilhafterweise ein Core-Gateway oder ein Non-Core-Gateway sein. Ein Core-Gateway umfasst Informationen über die Struktur des Netzwerks 100, wohingegen ein Non-Core-Gateway eingeschränkte oder unvollständige Routinginformationen umfasst, d. h. Wissen in Bezug auf eine oder mehrere Routen zu einem Core-Gateway, jedoch kein Wissen über ein Routing über dasselbe hinaus.
  • Core-Gateways speichern üblicherweise Routinginformationen in einer oder mehreren Routingtabellen. Jeder Knoten 105 muss lediglich eine bestimmte Route zu seinem lokalen Gateway 115 wissen. Ein zwischen zwei entfernt angeordneten Knoten übertragenes Datenpaket wird dementsprechend von einem Gateway zu einem anderen übergeben, bis dasselbe einen Zielknoten erreicht.
  • Eine Routingtabelle kann vorteilhafterweise durch einen Programmierer definiert sein oder dynamisch entwickelt sein (d. h. ein Gateway fragt benachbarte Gateways oder Ähnliches für Routeninformationen an). Ein gegebenes Gateway kann vorzugsweise Routinginformationen umfassen zu direkt verbundenen Netzwerken und allgemeines Wissen über Verkehr zu entfernten Netzwerken. Falls ein Gateway nicht eine bestimmte Routingadresse auflösen kann, sendet es eine Anfrage, die um Unterstützung diesbezüglich nachsucht, zu anderen Gateways.
  • Allgemein wird ein Datenpaket, während es zwischen Orten weitervermittelt wird, die eine Mehrzahl von Subnetzwerkumgebungen aufspannen, verarbeitet, um die Adresse seines Zielortes oder möglicherweise von Zwischenorten zu bestimmen. In Reaktion darauf wird das Datenpaket vorteilhafterweise in einen Datenumschlag eingepackt oder eingewickelt. Der Datenumschlag, wie beispielsweise ein File Transfer Protocol Frame, umfasst üblicherweise einen Kopf mit Routing- und Übertragungsinformationen. Ein TCP-Kopf enthält beispielsweise eine End to End Übertragungs-Quittung oder -Bestätigung.
  • Unter Bezugnahme als Nächstes auf die 2 ist ein Blockdiagramm zum Routen eines oder mehrerer Datenpakete zwischen einem ersten und einem zweiten Ort in einem beispielhaften TCP/IP-Netzwerk 100 in Übereinstimmung mit der vorliegenden Erfindung gezeigt. Das beispielhafte Netzwerk 100 umfasst eine Mehrzahl von Knoten 105, wobei jeder davon lokal mit einem geeigneten Subnetzwerk 110 verbunden ist. Ein erster Knoten 105A, der als ein Internet Protocol (IP) Host arbeitet, sendet ein beispielhaftes Datenpaket 205 zu einem Zielknoten 105n, der ein IP-Adressier-Schema verwendet.
  • Ein erstes Subnetzwerk 110a verarbeitet das Datenpaket 205 und bestimmt, dass der Zielknoten 105n nicht lokal ist. In Reaktion darauf wird ein IP-Kopf zu dem Datenpaket 205 hinzugefügt. Der IP-Kopf umfasst eine globale IP-Adresse für ein zweites Unternetzwerk 110n. Ein Gateway 115 leitet das Datenpaket 205 basierend auf der Adresse des zweiten Subnetzwerks 110n. Das zweite Subnetzwerk 110n bestimmt, ob die Adresse des Zielknotens 105n lokal oder entfernt ist. Falls dieselbe wie dargestellt lokal ist, wird der Datenumschlag entfernt und das Datenpaket 205 wird zu dem Zielknoten 105n geleitet.
  • In dem Fall, dass der Zielknoten 105n nicht lokal ist, würde das Netzwerk 110n vorzugsweise die Adresse des nächsten Netzwerkselements bestimmen und dessen Adresse zu dem existierenden IP-Datenpaket hinzufügen. Wenn das Element den Datenumschlag empfangen hat, der das IP-Datenpaket enthält, würde es den Kopf, der die eigene Adresse des Elementes anzeigt, entfernen und denselben Prozess wie das vorherige Netzwerk durchlaufen, wobei bestimmt wird, ob die Zieladresse lokal ist, und falls nicht, das IP-Datenpaket innerhalb eines anderen Adressierkopfes für das nächste Netzwerkelement einpa cken. Dieser Prozess würde sich fortsetzen, bis das Datenpaket schließlich zu der Zieladresse geleitet ist.
  • In der dargestellten Ausführungsform ist der erste Knoten 105a weiterhin betreibbar, um das Datenpaket 205 in Reaktion auf einen Sendezeitablauf wieder auszusenden. Ein "Zeitablauf", wie der Begriff hierin verwendet wird, umfasst jeden geeigneten Vergleich zwischen einem Schwellenwert und einem Zeitschalter oder einem Uhrzeitwert, der ein bestimmtes Ergebnis liefert. Der Zielknoten 105n ist in Übereinstimmung mit TCP betreibbar, um das empfangene Datenpaket 205 zu überprüfen und vorzugsweise zu korrigieren, falls nötig und möglich. Falls korrekt, gibt der Zielknoten 105n ein Bestätigungssignal zu dem ersten Knoten 105a zurück. Ansonsten kann er vorteilhafterweise eine negative Bestätigung zurückgeben.
  • Der Zielknoten 105n ist auch vorzugsweise betreibbar, um vorteilhafterweise einen Bestätigungszeitschalter zu verwenden, um ein Intervall von verstrichener Zeit in Bezug auf den Empfang des Datenpakets 205 zu messen. "Messen", wie es hierin verwendet wird, umfasst Vergleichen, Zählen, Berechnen, Evaluieren, Messen, Untersuchen, Quantifizieren, Wiegen oder Ähnliches. In dem Fall, bei dem das Verarbeitungsdatenpaket 205 ein oder mehrere Datenpakete, die zu dem ersten Knoten 105a zurückzugeben sind, erzeugt oder zu diesen führt, setzt der Zielknoten eine Bestätigung, wie beispielsweise ein ACK, huckepack auf zumindest ein Rückgabedatenpaket. Der Zielknoten 105n ist vorzugsweise weiterhin betreibbar, um die Bestätigung alleine zu dem ersten Knoten 105a in Reaktion auf einen Bestätigungszeitablauf zu senden.
  • Beispielhafte Sendezeitschalterwerte können vorteilhafterweise abhängen, ohne Begrenzung, von einer oder mehreren der folgenden Bedingungen:
    • (a) Round-Trip-Propagation-Delay des Signals (üblicherweise ein kleiner Wert, mit der Ausnahme von sehr langen und sehr schnellen Schaltkreisen);
    • (b) Verarbeitungszeit bei dem Empfänger (einschließlich der Queuing-Time des Datenpakets);
    • (c) Übertragungszeit des Bestätigungs-Signals oder -Frames; oder
    • (d) Mögliche Queue- und Verarbeitungs-Zeit bei dem Sender, wenn er die Bestätigung empfängt.
  • Es wird daran erinnert, dass starker Netzwerkverkehr den Empfang des Bestätigungssignals durch den ersten Knoten 105b verzögern kann, wobei dabei ein Zeitablauf und eine Wiederaussendung des Datenpakets 205 verursacht werden. In Übereinstimmung mit der dargestellten Ausführungsform ist der erste Knoten 105a betreibbar, um die Häufigkeit/Frequenz von Sende-Zeitablauf-Auftritten zu überwachen. Falls die Häufigkeit unerwünschterweise gleich einem Schwellenwert wird, wird der erste Knoten 105a vorzugsweise betrieben, um die Zeitablauffunktion zu modifizieren (d. h. Änderung des Zeitablaufschwellenwerts, Verlangsamen der Uhr oder des Zeitschalters etc.), die Zeitablauffunktion vorübergehend deaktivieren, vorübergehend das Bestätigungserfordernis deaktivieren oder Ähnliches. "Deaktivieren" ("disable"), wie der Begriff hierin verwendet wird, umfasst Trennen (Detach), Lösen (Disassociate), Trennen (Disconnect), Deaktivieren (Disengage), Vermindern (Impair), Abschalten (Incapacitate), Trennen (Separate) oder Ähnliches. Ein wichtiger Aspekt der dargestellten Ausführungsform ist die verbesserte Effizienz der Datenpaketübertragung.
  • Der Zielknoten 105n ist in Übereinstimmung mit der dargestellten Ausführungsform betreibbar, um die Häufigkeit der Bestätigungszeitablauf-Auftritte zu überwachen. Falls die Häufigkeit unerwünschterweise gleich einem Schwellenwert wird, wird der Zielknoten 105n vorzugsweise betrieben, um die Zeitablauffunktion zu modifizieren (d. h. Änderung des Zeitablaufschwellenwerts, Verlangsamen der Uhr oder des Zeitschalters etc.), die Zeitablauffunktion vorübergehend deaktivieren, vorübergehend das Bestätigungserfordernis deaktivieren oder Ähnliches. Ein anderer wichtiger Aspekt der dargestellten Ausführungsform ist die verbesserte Effizienz der Datenpaketübertragung.
  • Unter Bezugnahme auf die 3 ist eine isometrische Ansicht eines beispielhaften Verarbeitungssystems 105 dargestellt. Das Verarbeitungssystem 105 ist geeignet, als ein Knoten innerhalb der beiden beispielhaften Verarbeitungssystemnetzwerke der 1 oder 2 zu funktionieren. Das Verarbeitungssystem 105 umfasst einen Monitor 305, ein Gehäuse 310 und eine Tastatur 315.
  • Das Gehäuse 310 umfasst ein Festplattenlaufwerk 320 und ein Diskettenlaufwerk 325. Das Festplattenlaufwerk 320 ist geeignet, eine Speicherung und einen Widerabruf mit schnellem Zugriff bereitzustellen. Das Diskettenlaufwerk 325 ist betreibbar, um externe Disketten aufzunehmen, zu lesen oder zu beschreiben und kann vorteilhafterweise ersetzt werden oder kombiniert werden mit anderen herkömmlichen Strukturen zum Übertragen von Daten oder Anweisungen, einschließlich Kassetten- und CD-Laufwerken, Telefon-Systemen und -Vorrichtungen (einschließlich Telefon, Video-Phone, Fax oder Ähnliches), Mitteiliungs-Paging, Netzwerkkommunikationsanschlüssen und Ähnlichem.
  • Das Gehäuse 310 ist teilweise ausgeschnitten, um eine Batterie 330, eine Uhr 335, einen Prozessor 340 und einen abgetrennten lokalen Speicher 345 zu zeigen, wobei alle in dem Gehäuse 310 geeignet aufgenommen sind. Obwohl das Verarbeitungssystem 105 als einen einzelnen Prozessor, ein einzelnes Festplattenlaufwerk und einen einzelnen lokalen Speicher aufweisend dargestellt ist, kann das Verarbeitungssystem 105 vorteilhafterweise mit jeder geeigneten Mehrzahl und Kombination von Prozessoren oder Speichervorrichtungen ausgerüstet sein. Das Verarbeitungssystem 105 kann tatsächlich ersetzt werden durch oder kombiniert werden mit jedem geeigneten Verarbeitungssystem, das in Übereinstimmung mit den Prinzipien der vorliegenden Erfindung betreibbar ist, einschließlich Video-Telefonen, Telefonen, Fernsehern, Pagern, aufwändigen Taschenrechnern und tragbaren Laptop-/Notebook-, Mini-, Mainframe- und Super-Computern, wie auch mit Verarbeitungssystemnetzwerkkombinationen derselben.
  • Eine herkömmliche Verarbeitungssystemarchitektur ist vollständiger in Computer Organization and Architecture von William Stallings, MacMillan Publishing Co. (3. Ausgabe 1993) beschrieben; ein herkömmliches Verarbeitungssystemnetzwerkdesign ist vollständiger in Data Network Design, von Darren L. Spohn, McGraw-Rill, Inc. (1993) beschrieben; und herkömmliche Datenkommunikaton ist vollständig in Data Communication Principles von R. D. Gitlin, J.F. Hages und S.B. Weinstein, Plenum Press (1992) und in The Irwin Handbook of Telecommunications von James Harry Green, Irwin Professional Publishing (2. Auflage 1992) beschrieben. Jede der vorhergehenden Veröffentlichungen ist hierin durch Referenz aufgenommen.
  • Unter Bezugnahme auf die 4 ist ein Blockdiagramm eines beispielhaften Mikroprozessorsystems 400 gezeigt, das vorteilhafterweise in dem Verarbeitungssystem 105 der 3 implementiert sein kann. Das Mikroprozessorsystem 400 umfasst einen Prozessor 340, der über einen Datenbus 405 mit einem abgetrennten (detached) lokalen Speicher 345 verbunden ist. Der Speicher 345 ist betreibbar, um Daten oder Anweisungen zu speichern, wobei der Prozessor 340 betreibbar ist, um diese abzufragen und auszuführen.
  • Der Prozessor 340 umfasst eine Kontrolleinheit 410, eine arithmetisch und logische Einheit (arithmetic and logic unit, ALU) 415 und einen internen Speicher 420 (beispielsweise einen stapelbaren Cache, eine Vielzahl von Registern, etc.). Die Kontrolleinheit 410 ist vorteilhafterweise betreibbar, um eine der Anweisungen aus dem Speicher 345 zu holen. Die ALU 415 ist vorteilhafterweise betreibbar, um eine Mehrzahl von Operationen auszuführen, wie beispielsweise eine Addition und ein Boolsches UND, die benötigt werden, um diese Anweisungen auszuführen. Der interne Speicher 420 ist vorteilhafterweise betreibbar, um eine lokale Hochgeschwindigkeitsspeicherung bereitzustellen, die verwendet wird, um temporäre Ergebnisse und Kontrollinformationen zu speichern.
  • Unter Bezugnahme auf die 5 ist auf höherer Ebene ein Blockdiagramm einer beispielhaften Netzwerkschnittstelle 500 (beispielsweise eine Modemkarte, eine FDDI-Karte, eine Ethernetkarte, etc.) in Übereinstimmung mit den Prinzipien der vorlegenden Erfindung gezeigt. Die Schnittstelle 500 umfasst einen beispielhaften Speicher 505, einen Verwaltungsschaltkreis 510, einen Sendeschaltkreis 515, einen beispielhaften Erweiterungsbusverbinder 520, einen beispielhaften Verbinder für eine Twisted-Pair-Leitung 525, einen beispielhaften Verbinder für ein Koaxialkabel 530 und einen beispielhaften Empfängerverbinder 535. Der Verwaltungsschaltkreis 510 umfasst einen Detektorschaltkreis 550 und einen Kontrollschaltkreis 545.
  • Die Schnittstelle 500 kann vorteilhafterweise mit dem beispielhaften Verarbeitungssystem 105 der 3 verbunden sein. Der Verwaltungsschaltkreis 510 ist betreibbar, um eine Aussendung von einem oder mehreren einer Mehrzahl von Datenpaketen, wie auch Empfangsanzeigen, wie beispielsweise ACKs und NAKs durch den Sendeschaltkreis 515 über ein Netzwerk, wie beispielsweise das Netzwerk 100 der 1 und 2, zu steuern. Der Verwaltungsschaltkreis 510 umfasst den Detektorschaltkreis 540 und den Kontrollschaltkreis 545.
  • Der Detektorschaltkreis 540 ist betreibbar, um eine erste Latenzcharakteristik des Netzwerks zu überwachen. Die erste Latenzcharakteristik zeigt zumindest teilweise an oder ist zumindest teilweise repräsentativ für zumindest einen Benutzungsgrad (utilization level) des Netzwerks. Der Benutzungsgrad des Netzwerks ist wichtig in Bezug auf die Datenpaketaussendung allgemein und die Datenpaketwiederaussendung im Speziellen. Wie hierin zuvor beschrieben, ist der mit einem Aussendezeitschalter verknüpfte Schwellenwert kritisch für eine effiziente Wiederaussendung. Der Detektorschaltkreis 540 ist weiterhin betreibbar, um eine zweite Latenzcharakteristik zu überwachen. Die zweite Latenzcharakteristik zeigt zumindest teilweise ein Effizienzniveau an, das mit der Aussendung der Empfangsanzeige durch den Sendeschaltkreis 515 verknüpft ist. Das Effizienzniveau, das mit der Aussendung der Empfangsanzeige verknüpft ist, ist wichtig in Bezug auf die Datenpaketbestätigung allgemein und die positive Bestätigung und den ACK-Huckepack im Besonderen. Wie zuvor beschrieben, ist der mit einem Bestätigungszeitschalter verknüpfte Schwellenwert kritisch für eine effiziente Datenpaketbestätigung.
  • Der Kontrollschaltkreis 545 ist sowohl mit dem Detektorschaltkreis 540 als auch mit dem Sendeschaltkreis 515 ver knüpft. Der Kontrollschaltkreis 545 ist betreibbar, um vorteilhafterweise eine Wiederaussendungsverzögerung anzupassen, die mit der Aussendung der Datenpakete über das Netzwerk verknüpft ist. Die Wiederaussendungsverzögerung ist das Zeitintervall zwischen der Aussendung und der nachfolgenden Wiederaussendung von einem oder mehreren Datenpaketen. Die Anpassung wird als eine Funktion der ersten Latenzcharakteristik durchgeführt. Dies ermöglicht es oder erlaubt es vorteilhafterweise dem Verwaltungsschaltkreis 510, die Wiederaussendungsverzögerung als eine Funktion des Benutzungsgrads des Netzwerks zu verwalten.
  • Der Kontrollschaltkreis 545 ist weiterhin betreibbar, um vorteilhafterweise eine Sendeverzögerung anzupassen, die mit der Aussendung der Empfangsanzeige über das Netzwerk verknüpft ist. Die Empfangsanzeige ist das Zeitintervall zwischen dem Empfang eines Datenpakets und der eventuellen Aussendung der Empfangsanzeige ohne sie Huckepack auf ein Rückgabedatenpaket zu setzen. Die Anpassung wird als eine Funktion der zweiten Latenzcharakteristik ausgeführt. Dies erlaubt es vorteilhafterweise dem Verwaltungsschaltkreis 510, die Sendeverzögerung als eine Funktion des Effizienzniveaus zu verwalten, die mit dem Sendeschaltkreis 515 verknüpft ist.
  • Beim Ausführen von beiden der zwei oben beschriebenen Anpassungen, kann der Kontrollschaltkreis 545 vorteilhafterweise Prinzipien angewandter mathematischer Theorien, einschließlich Statistik, stochastischer Modellierung, Chaostheorie, Standardabweichung, Wahrscheinlichkeitstheorie, Permutation und Kombination, Häufigkeit oder Ähnliches verwenden. Weiterhin können beim Herleiten der ersten messbaren Charakteristik zusätzlich zu der Verwendung von Zeitschaltern, Uhren und Ähnlichem jede beliebige physikalisch sensible Charakterstik oder jeder Aspekt des Netzwerks verwendet werden, der den Kommunikationsdurchsatz beeinflusst (beispielsweise Kommunikationskanalbenutzungsanzeige).
  • Obwohl die Netzwerkschnittstelle 500 verwendet wird, um eine Schaltkreisausführungsform der vorliegenden Erfindung zu zeigen, können vorteilhafterweise andere Schaltkreiskonfigurationen in anderen Verarbeitungssystemen, Knoten, Gateways oder Ähnlichem implementiert werden. Genauer können in alternativen Ausführungsformen die oben beschriebenen Schaltkreise und Schaltungen, wie auch das Mikroprozessorsystem 400 der 4 vorteilhafterweise ersetzt werden durch oder kombiniert werden mit programmierbaren logischen Vorrichtungen, wie beispielsweise PALs (Programmable Array Logic) und PLAs (Programmable Logic Arrays, perogrammierbare Baussteine), DSPs (Digital Signal Processors, digitale Signalprozessoren), FPGAs (Field Programmable Gate Arrays), ASICs (Application Specific Integrated Circuits, Anwednungs-spezifische ICs), VLSIs (Very Large Scale Integrated Circuits, Größt-ICs) oder Ähnliches.
  • Unter Bezugnahme auf die 6 ist ein Flussdiagramm zum Ausführen einer intelligenten Bestätigungs-basierten Flusskontrolle in Übereinstimmung mit den Prinzipien der vorliegenden Erfindung gezeigt. Lediglich zu illustrativen Zwecken wird die Beschreibung der 6 unter Bezugnahme auf die 5 angegeben. Der Verwaltungsschaltkreis 510 und der Sendeschaltkreis 515 können jedoch auch in Knoten angeordnet sein.
  • Es wird eine Feststellung durchgeführt, ob ein Datenpaket von einem Übertragungsknoten, Gateway oder Ähnlichem empfangen wurde (Entscheidungsschritt 602). Falls ein Datenpaket empfangen wurde (Abzweigung „JA" des Entscheidungsschritts 602), wird der Sendeschaltkreis 515 deaktiviert, ein Bestätigungs zeitschalter wird zurückgesetzt und der Bestätigungszeitschalter beginnt, eine Sendeverzögerung zu erzeugen (Prozessschritt 604). Die Sendeverzögerung gibt ein abgelaufenes Zeitintervall in Bezug auf ein empfangenes Datenpaket wieder. Es wird eine Feststellung durchgeführt, ob die Sendeverzögerung mit einem Sendeschwellenwert ein unerwünschtes Ergebnis bringt (Entscheidungsschritt 606).
  • Falls die Sendeverzögerung einen unerwünschten Vergleich ergibt (Abzweigung „JA" des Entscheidungsschritts 606), wird dann eine Empfangsanzeige, wie beispielsweise ein Signal, an den Übertragungsknoten, das Gateway oder Ähnliches zurückgegeben (Eingabe/Ausgabe-Schritt 608). Der Detektorschaltkreis 540 ist betreibbar, um die Latenzcharakteristik als eine Funktion des Vergleichs herzuleiten (Prozessschritt 610) und dieselbe mit einem Latenzschwellenwert zu vergleichen (Prozessschritt 612), wie beispielsweise einer maximalen Häufigkeit/Frequenz des Auftretens. In dem Fall, dass der Vergleich der Latenzcharakteristik unerwünscht ausfällt (Abzweig „JA" des Entscheidungsschritts 614), wird dann der Kontrollschaltkreis 545 betrieben, um die Bestätigungszeitablauffunktion anzupassen oder zu modifizieren (d. h. Ändern des Zeitablaufschwellenwerts, Verlangsamung des Zeitschalters oder der Uhr etc.), vorübergehend denselben deaktivieren, vorübergehend das Bestätigungserfordernis deaktivieren oder Ähnliches (Prozessschritt 616), wobei dabei die Gesamteffizienz der Bestätigungsübertragung verbessert wird.
  • Mit anderen Worten ist der Verwaltungsschaltkreis 510 betreibbar, um die Latenzcharakteristik zu überwachen und um die Sendeverzögerung der Aussendung der Empfangsanzeige über das Netzwerk anzupassen. Dies wird vorzugsweise ausgeführt als eine Funktion der Latenzcharakteristik.
  • Falls ein Datenpaket nicht empfangen wurde (Abzweigung „NEIN" des Entscheidungsschritts 602), wird dann eine Feststellung durchgeführt, ob ein Datenpaket zu senden ist (Entscheidungsschritt 618). Falls das Datenpaket zu senden ist (Abzweigung „JA" des Entscheidungsschritts 618), dann wird der Sendeschaltkreis 515 aktiviert und ein Wiederaussendungszeitschalter wird zurückgesetzt. Der Wiederaussendungszeitschalter beginnt, eine Wiederaussendungsverzögerung zu erzeugen (Prozessschritt 620). Die Wiederaussendungsverzögerung stellt ein abgelaufenes Zeitintervall in Bezug auf die Aussendung des Datenpakets ohne Empfang einer Empfangsanzeige dar, wie beispielsweise ein Bestätigungssignal. Es wird eine Feststellung durchgeführt, ob ein Vergleich der Wiederaussendungsverzögerung mit einem Wiederaussendungsschwellenwert unerwünscht ausfällt (Entscheidungsschritt 622).
  • Falls der Entscheidungsschrittvergleich unerwünscht ausfällt (Abzweigung „JA" des Entscheidungsschritts 622), dann wird das Datenpaket über das Netzwerk wieder ausgesendet (Eingabe/Ausgabe-Schritt 624). Der Detektorschaltkreis 540 arbeitet, um die Latenzcharakteristik als eine Funktion des Vergleichs herzuleiten (Prozessschritt 610) und um denselben mit einem Latenzschwellenwert zu vergleichen (Prozessschritt 612), wie beispielsweise eine maximale Häufigkeit/Frequenz des Auftretens. Falls der Latenzcharakteristikvergleich ein unerwünschtes Ergebnis liefert (Abzweigung „JA" des Entscheidungsschritts 614), dann arbeitet der Kontrollschaltkreis 545, um die Wiederaussendezeitablauffunktion anzupassen oder zu modifizieren (d. h. Ändern des Zeitablaufschwellenwerts, Verlangsamen des Zeitschalter oder der Uhr etc.), vorübergehendes Abschalten desselben, vorübergehendes Abschalten der Sendenotwendigkeit oder Ähnliches (Prozessschritt 626), wobei dabei die Gesamteffizienz der Datenpaketwiederaussendung verbessert wird.
  • Die Prinzipien der wie zuvor dargestellten vorliegenden Erfindung können vorteilhafterweise als Software implementiert werden. Eine beispielhafte Softwareausführungsform umfasst eine Mehrzahl von auf einem herkömmlichen Speichermedium gespeicherten Anweisungen. Die Anweisungen sind durch einen geeigneten Prozessor lesbar und ausführbar. Die Anweisungen arbeiten bei der Ausführung, um den Prozessor zu steuern, um Datenpakete durch ein Verarbeitungssystemnetzwerk in Übereinstimmung mit der vorliegenden Erfindung zu leiten. Bevorzugte Speichermedien umfassen ohne Begrenzung magnetische, optische und Halbleiter, wie auch geeignete Kombinationen davon. Eine bevorzugte Softwareausführungsform zum Steuern des Sendens von Empfangsanzeigen durch einen Sendeschaltkreis bildet ein Teil von NCR's STARGROUPTM LAN Manager für UNIXTM – OSI Transport Version, die von der NCR Corporation in Dayton, Ohio erhältlich ist.

Claims (6)

  1. Verfahren zum Steuern des Sendens eines Signals und einer Empfangsanzeige durch einen Sendeschaltkreis (515) über ein Netzwerk (100), umfassend die Schritte: Überwachen einer ersten Latenzcharakteristik, wobei die erste Latenzcharakteristik zumindest teilweise entweder ein Effizienzniveau, das mit dem Senden des Signals durch den Sendeschaltkreis verknüpft ist, oder ein Benutzungsgrads des Netzwerks wiedergibt; und Anpassen einer Wiederausendungsverzögerung des Sendeschaltkreises, welche das Zeitintervall zwischen einer Aussendung und einer nachfolgenden Wiederaussendung von einem oder mehreren Datenpaketen ist, für das Signal über das Netzwerk als eine Funktion der ersten Latenzcharakteristik, um dabei die Sendeverzögerung zu verwalten, gekennzeichnet durch: Überwachen einer zweiten Latenzcharakteristik, wobei die zweite Latenzcharakteristik zumindest teilweise ein Effizienzniveau wiedergibt, das mit der Aussendung der Empfangsanzeige durch den Sendeschaltkreis (515) verknüpft ist; und wobei die Sendeverzögerung der Empfangsanzeige als eine Funktion der zweiten Latenzcharakteristik verwaltet wird, wobei die Sendeverzögerung ein abgelaufenes Intervall in Bezug auf ein empfangenes Datenpaket (205) darstellt.
  2. Verfahren nach Anspruch 1, wobei der Sendeschaltkreis (515) in Reaktion auf eine empfangene positive Bestätigung deaktiviert wird und wobei der Sendeschaltkreis aktiviert wird, um die Datenpakete (205) über das Netzwerk (100) in Reaktion auf eine negative Bestätigung wieder auszusenden.
  3. Verfahren nach einem der vorhergehenden Ansprüche, weiterhin umfassend den Schritt des Vergleichens der Wiederaussendungsverzögerung oder der Sendeverzögerung mit einem Schwellenwert.
  4. Verfahren nach einem der vorhergehenden Ansprüche, weiterhin umfassend den Schritt des Vergleichens der ersten Latenzcharakteristik oder der zweiten Latenzcharakteristik mit einem Schwellenwert.
  5. Verwaltungsschaltkreis (510) zum Steuern der Aussendung von Datenpaketen (205) und von Empfangsanzeigen durch einen Sendeschaltkreis (515) über ein Netzwerk (100), gekennzeichnet durch: einen Detektorschaltkreis (540), der betreibbar ist, um eine erste Latenzcharakteristik des Netzwerks zu überwachen, wobei die Latenzcharakteristik zumindest teilweise einen Benutzungsgrad des Netzwerks wiedergibt, und um eine zweite Latenzcharakteristik zu überwachen, die zumindest teilweise ein Effizienzniveau wiedergibt, das mit der Aussendung der Empfangsanzeige durch den Sendeschaltkreis verknüpft ist; und gekennzeichnet durch einen Kontrollschaltkreis (545), der mit dem Detektorschaltkreis und dem Sendeschaltkreis verknüpft ist und betreibbar ist, um eine Wiederaussendungsverzögerung des Sendeschaltkreises anzupassen, welche das Zeitintervall ist zwischen einer Aussendung und einer nachfolgenden Wiederaussendung über das Netzwerk von einem oder mehreren Datenpaketen von den Datenpaketen als eine Funktion der ersten Latenzcharakteristik, um es dabei dem Verwaltungsschaltkreis zu ermöglichen, die Wiederaussendungsverzögerung als eine Funktion des Benutzungsgrads des Netzwerks zu verwalten, und um eine Sendeverzögerung des Sendeschaltkreises der Empfangsanzeige über das Netzwerk als eine Funktion der zweiten Latenzcharakteristik anzupassen, um es dabei dem Verwaltungsschaltkreis zu ermöglichen, die Sendeverzögerung als eine Funktion des mit dem Sendeschaltkreis verknüpften Effizienzniveaus zu verwalten, wobei die Sendeverzögerung ein abgelaufenes Intervall in Bezug auf ein empfangenes Datenpaket ist.
  6. Verwaltungsschaltkreis (510) nach Anspruch 5, wobei der Verwaltungsschaltkreis mit einem Knoten (105) oder einem Gateway (115) verknüpft ist.
DE69637275T 1995-11-28 1996-11-21 Verfahren zur auf Quittung basierten Flusssteuerung Expired - Lifetime DE69637275T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US563477 1983-12-20
US08/563,477 US5815667A (en) 1995-11-28 1995-11-28 Circuits and methods for intelligent acknowledgement based flow control in a processing system network

Publications (2)

Publication Number Publication Date
DE69637275D1 DE69637275D1 (de) 2007-11-15
DE69637275T2 true DE69637275T2 (de) 2008-07-03

Family

ID=24250645

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69637275T Expired - Lifetime DE69637275T2 (de) 1995-11-28 1996-11-21 Verfahren zur auf Quittung basierten Flusssteuerung

Country Status (4)

Country Link
US (1) US5815667A (de)
EP (1) EP0777363B1 (de)
JP (1) JPH09205458A (de)
DE (1) DE69637275T2 (de)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6765904B1 (en) 1999-08-10 2004-07-20 Texas Instruments Incorporated Packet networks
US5961599A (en) * 1996-10-15 1999-10-05 Lucent Technologies Inc. Apparatus and method for computing the processing delay of adaptive applications network terminals and applications thereof
US6032188A (en) * 1997-03-12 2000-02-29 Microsoft Corporation Method and system for controlling data flow
US6119235A (en) * 1997-05-27 2000-09-12 Ukiah Software, Inc. Method and apparatus for quality of service management
US6341309B1 (en) 1997-05-27 2002-01-22 Novell, Inc. Firewall system for quality of service management
CN1267419A (zh) * 1997-07-14 2000-09-20 诺基亚网络有限公司 电信网中的信息流控制
US6411998B1 (en) * 1997-09-08 2002-06-25 International Business Machines Corporation World wide web internet delay monitor
WO1999014900A2 (en) * 1997-09-17 1999-03-25 British Telecommunications Public Limited Company Communications network
US6091764A (en) * 1997-10-29 2000-07-18 Motorola, Inc. Method and apparatus for wireless RS232 communication
US6205498B1 (en) 1998-04-01 2001-03-20 Microsoft Corporation Method and system for message transfer session management
US6529932B1 (en) 1998-04-01 2003-03-04 Microsoft Corporation Method and system for distributed transaction processing with asynchronous message delivery
US6446206B1 (en) 1998-04-01 2002-09-03 Microsoft Corporation Method and system for access control of a message queue
US6678726B1 (en) 1998-04-02 2004-01-13 Microsoft Corporation Method and apparatus for automatically determining topology information for a computer within a message queuing network
US8284774B2 (en) 1998-04-03 2012-10-09 Megawave Audio Llc Ethernet digital storage (EDS) card and satellite transmission system
US6275912B1 (en) 1998-06-30 2001-08-14 Microsoft Corporation Method and system for storing data items to a storage device
US6848108B1 (en) 1998-06-30 2005-01-25 Microsoft Corporation Method and apparatus for creating, sending, and using self-descriptive objects as messages over a message queuing network
US6202089B1 (en) 1998-06-30 2001-03-13 Microsoft Corporation Method for configuring at runtime, identifying and using a plurality of remote procedure call endpoints on a single server process
US6256634B1 (en) 1998-06-30 2001-07-03 Microsoft Corporation Method and system for purging tombstones for deleted data items in a replicated database
US6370579B1 (en) * 1998-10-21 2002-04-09 Genuity Inc. Method and apparatus for striping packets over parallel communication links
AU6167699A (en) * 1998-11-09 2000-05-29 Motorola, Inc. Method and apparatus in a messaging system for facilitating a reduction of latency
AU3519099A (en) * 1999-03-18 2000-10-09 Nokia Corporation Overload control method for a packet-switched network
US6321283B1 (en) * 1999-03-22 2001-11-20 International Business Machines Corporation Method and apparatus for determining a data transmission capacity between communicatively connected source and target devices
JP3179441B2 (ja) * 1999-03-30 2001-06-25 セイコー精機株式会社 通信異常検出及び/又は対処装置及び真空ポンプ遠隔監視制御装置
US6198735B1 (en) * 1999-05-20 2001-03-06 Motorola, Inc. Method for retransmitting a data packet in a packet network
US20030195983A1 (en) * 1999-05-24 2003-10-16 Krause Michael R. Network congestion management using aggressive timers
US6957346B1 (en) * 1999-06-15 2005-10-18 Ssh Communications Security Ltd. Method and arrangement for providing security through network address translations using tunneling and compensations
EP1531383A3 (de) 1999-07-30 2005-07-27 Intertrust Technologies Corp. Verfahren und Systeme zur Transaktionsaufzeichnungsübertragung unter Anwendung von Schwellen und eines mehrstufigen Protokolls
US6801532B1 (en) 1999-08-10 2004-10-05 Texas Instruments Incorporated Packet reconstruction processes for packet communications
US6757256B1 (en) 1999-08-10 2004-06-29 Texas Instruments Incorporated Process of sending packets of real-time information
US6678267B1 (en) 1999-08-10 2004-01-13 Texas Instruments Incorporated Wireless telephone with excitation reconstruction of lost packet
US6804244B1 (en) 1999-08-10 2004-10-12 Texas Instruments Incorporated Integrated circuits for packet communications
US6744757B1 (en) 1999-08-10 2004-06-01 Texas Instruments Incorporated Private branch exchange systems for packet communications
US6801499B1 (en) 1999-08-10 2004-10-05 Texas Instruments Incorporated Diversity schemes for packet communications
US7035214B1 (en) * 1999-09-28 2006-04-25 Nortel Networks Limited System and method for a negative acknowledgement-based transmission control protocol
US6700893B1 (en) * 1999-11-15 2004-03-02 Koninklijke Philips Electronics N.V. System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
US7574351B2 (en) * 1999-12-14 2009-08-11 Texas Instruments Incorporated Arranging CELP information of one frame in a second packet
US6754700B1 (en) * 2000-01-06 2004-06-22 International Business Machines Corporation Method and apparatus for monitoring and adjusting bandwidth usage in a browser
US6721786B1 (en) * 2000-01-06 2004-04-13 International Business Machines Corporation Method and apparatus for balancing bandwidth usage in a browser
US6654342B1 (en) * 2000-03-07 2003-11-25 Cisco Technology, Inc. Accumulating and distributing flow control information via update messages and piggybacked flow control information in other messages in a packet switching system
US6694469B1 (en) * 2000-04-14 2004-02-17 Qualcomm Incorporated Method and an apparatus for a quick retransmission of signals in a communication system
US6862430B1 (en) 2000-07-05 2005-03-01 Echelon Corporation System and method for selecting repeaters
US7103016B1 (en) * 2000-08-11 2006-09-05 Echelon Corporation System and method for providing transaction control on a data network
US6816458B1 (en) * 2000-09-13 2004-11-09 Harris Corporation System and method prioritizing message packets for transmission
US6826153B1 (en) * 2000-09-13 2004-11-30 Jeffrey Kroon System and method of increasing the message throughput in a radio network
US6826152B1 (en) 2000-09-13 2004-11-30 Harris Corporation System and method of conserving bandwidth in the transmission of message packets
US7515597B1 (en) 2000-10-03 2009-04-07 Eads Telecom North America Inc. Distributed switching platform and method of operating the same
US7321557B1 (en) * 2000-10-30 2008-01-22 Lucent Technologies Inc. Dynamic latency assignment methodology for bandwidth optimization of packet flows
US6999441B2 (en) * 2001-06-27 2006-02-14 Ricochet Networks, Inc. Method and apparatus for contention management in a radio-based packet network
US7012900B1 (en) * 2001-08-22 2006-03-14 Packeteer, Inc. Method for measuring network delay using gap time
US7304995B2 (en) * 2001-08-29 2007-12-04 Texas Instruments Incorporated Systems and methods for packet flow control
US6957374B1 (en) 2002-01-31 2005-10-18 The United States Of America As Represented By The National Security Agency Method of acknowledging receipt of data packets
US6850769B2 (en) * 2002-02-14 2005-02-01 Qualcomm Incorporated Method and apparatus for adaptive measurement of round-trip time in ARQ protocols and using the same for controlling flow of data in a communication system
US20060161680A1 (en) * 2003-03-11 2006-07-20 Gtv Solutions, Inc. Communications Interchange System
US20060209174A1 (en) * 2005-03-17 2006-09-21 Isaac Emad S System and method for selective media recording and playback
US8615003B1 (en) * 2005-10-28 2013-12-24 At&T Intellectual Property Ii, L.P. Method and apparatus for handling network element timeouts in a packet-switched communication network
US20070180287A1 (en) * 2006-01-31 2007-08-02 Dell Products L. P. System and method for managing node resets in a cluster
US8179855B2 (en) 2006-02-07 2012-05-15 Research In Motion Limited Method, and associated apparatus, for communicating data at reduced transmission latency in radio communication system having slotted interface
KR100830538B1 (ko) * 2007-03-06 2008-05-22 한국전자통신연구원 협력 전송 방법을 위한 하이브리드 자동 재전송 지원 방법
US20120106344A1 (en) * 2010-10-28 2012-05-03 International Business Machines Corporation Data communication acknowledgement in a network
US9002973B2 (en) * 2011-10-21 2015-04-07 Fisher Controls International Llc Delayed publishing in process control systems
EP2790436A4 (de) * 2011-12-09 2015-04-22 Kyocera Corp Stromsteuerungsvorrichtung, stromsteuerungssystem und steuerungsverfahren
JP6033032B2 (ja) 2012-10-09 2016-11-30 オリンパス株式会社 撮像表示システム
US10158450B2 (en) * 2014-09-29 2018-12-18 Telefonaktiebolaget Lm Ericsson (Publ) Method and first node for handling a feedback procedure in a radio communication
WO2019027043A1 (ja) * 2017-08-04 2019-02-07 日本電気株式会社 通信ノード、通信用エントリの管理方法及びプログラム
FR3072237B1 (fr) * 2017-10-10 2019-10-25 Bull Sas Procede et dispositif pour la gestion dynamique du delai de retransmission de message sur un reseau d'interconnexion

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4654654A (en) * 1983-02-07 1987-03-31 At&T Bell Laboratories Data network acknowledgement arrangement
US4771391A (en) * 1986-07-21 1988-09-13 International Business Machines Corporation Adaptive packet length traffic control in a local area network
JP2540930B2 (ja) * 1988-02-19 1996-10-09 日本電気株式会社 輻輳制御装置
US5245616A (en) * 1989-02-24 1993-09-14 Rosemount Inc. Technique for acknowledging packets
US5193151A (en) * 1989-08-30 1993-03-09 Digital Equipment Corporation Delay-based congestion avoidance in computer networks
JPH077975B2 (ja) * 1990-08-20 1995-01-30 インターナショナル・ビジネス・マシーンズ・コーポレイション データ伝送を制御するためのシステムおよび方法
US5103446A (en) * 1990-11-09 1992-04-07 Moses Computers, Inc. Local area network adaptive throughput control for instantaneously matching data transfer rates between personal computer nodes
SE469252B (sv) * 1991-10-04 1993-06-07 Eritel Ab Foerfarande foer kontroll och styrning av datafloedet i ett paketdatanaet omfattande ett antal linjer och ett antal noder daer linjerna via noder foerbinder ett antal terminaler
DE69330661T2 (de) * 1992-04-27 2002-06-27 Nippon Telegraph & Telephone Paketnetzwerk und Verfahren zur Vermeidung von Überlastung eines solchen Netzwerks
US5276677A (en) * 1992-06-26 1994-01-04 Nec Usa, Inc. Predictive congestion control of high-speed wide area networks
US5572674A (en) * 1993-01-07 1996-11-05 Bmc Software, Inc. Method of dynamically adjusting SNA network control program parameters
US5631935A (en) * 1993-05-06 1997-05-20 Run-Rad Unlimited Networking, Ltd. Method and apparatus for governing information transfer using an efficient transport protocol
US5367523A (en) * 1993-08-26 1994-11-22 International Business Machines Corporation Adaptive rate-based congestion and flow control in packet communications networks
EP0688122B1 (de) * 1994-06-13 2002-06-19 Agilent Technologies, Inc. (a Delaware corporation) Verfahren und Vorrichtung zum Bestimmen der Netzwerkverzögerungen
US5627970A (en) * 1994-08-08 1997-05-06 Lucent Technologies Inc. Methods and apparatus for achieving and maintaining optimum transmission rates and preventing data loss in a processing system nework
ZA959722B (en) * 1994-12-19 1996-05-31 Alcatel Nv Traffic management and congestion control for packet-based networks

Also Published As

Publication number Publication date
US5815667A (en) 1998-09-29
EP0777363A2 (de) 1997-06-04
EP0777363B1 (de) 2007-10-03
DE69637275D1 (de) 2007-11-15
JPH09205458A (ja) 1997-08-05
EP0777363A3 (de) 2001-02-07

Similar Documents

Publication Publication Date Title
DE69637275T2 (de) Verfahren zur auf Quittung basierten Flusssteuerung
DE69735740T2 (de) Asynchrone paketvermittlung
DE69833708T2 (de) Kommunikationsverfahren für eine medienunabhängige Schnittstelle (MII) für ein hochintegriertes Ethernet-Netzelement
DE60307032T2 (de) Steuerungs-Verfahren und -Vorrichtung zur Datenübertragung
DE69919114T2 (de) Verfahren und Vorrichtung zur Netzwerküberlastkontrolle
DE69931215T2 (de) Verfahren und Rechnerprogrammprodukt zum effizienten und sicheren Senden von kleinen Datennachrichten von einem Sender zu einer grossen Anzahl von Empfangssystemen
Bradner Benchmarking terminology for network interconnection devices
DE602005003142T2 (de) Vorrichtung und verfahren zur unterstützung von verbindungsherstellung in einem offload der netzwerkprotokollverarbeitung
DE60020413T2 (de) Verfahren und Einrichtung zur Bestimmung eines Zeit-Parameters
DE60303026T2 (de) System, verfahren und produkt zur verwaltung des datenverkehrs in einem netzwerk
DE60301585T2 (de) Multisprungnetzwerk zum Übertragen von Paketen deren Größe durch die Anzahl der Sprünge bestimmt wird
DE69531017T2 (de) Datenübertragungssystem und Verfahren
DE69633821T2 (de) Verfahren und vorrichtung in einem netzadapter zur automatischen sendewiederholung von paketen
JPH03174848A (ja) コンピュータ回路網における遅延ベース混雑回避方法及び装置
DE602004004706T2 (de) Verfahren und System zur Kommunikationssteuerung
DE69728515T2 (de) Umkehrbare, medienunabhängige Schnittstellenschaltung
DE19924922A1 (de) System und Verfahren für Nachrichtenübermittlung zwisfchen Netzwerkknoten, die durch parallele Verbindungen verbunden sind
DE112020006828T5 (de) Verbessern einer Ende-zu-Ende-Überlastungsreaktion unter Verwendung von adaptivem Routing und Überlastungshinweis-basierter Drosselung für IP-geroutete Rechenzentrumsnetzwerke
DE10034404A1 (de) Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk
EP0133577B1 (de) Datenübertragungsverfahren in einem digitalen Übertragungsnetzwerk und Vorrichtung zur Durchführung des Verfahrens
Bradner RFC1242: Benchmarking terminology for network interconnection devices
Danzig Finite buffers for fast multicast
Wang et al. Message delay analysis for CAN based networks
JPH09116572A (ja) パケットデータ制御方式
Song et al. Optimizing bulk data transfer performance: a packet train model

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)