DE69827053T2 - Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk - Google Patents
Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk Download PDFInfo
- Publication number
- DE69827053T2 DE69827053T2 DE69827053T DE69827053T DE69827053T2 DE 69827053 T2 DE69827053 T2 DE 69827053T2 DE 69827053 T DE69827053 T DE 69827053T DE 69827053 T DE69827053 T DE 69827053T DE 69827053 T2 DE69827053 T2 DE 69827053T2
- Authority
- DE
- Germany
- Prior art keywords
- packet
- data
- data packets
- credit
- node
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L12/5602—Bandwidth control in ATM Networks, e.g. leaky bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5619—Network Node Interface, e.g. tandem connections, transit switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5629—Admission control
- H04L2012/563—Signalling, e.g. protocols, reference model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5629—Admission control
- H04L2012/5631—Resource management and allocation
- H04L2012/5632—Bandwidth allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Description
- Die vorliegende Erfindung betrifft ein Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk.
- In Netzwerken für die Datenübertragung im Paketmodus, die eine hohe Rate, z. B. in der Größenordung von 34 Mbit/s bis 622 Mbit/s, aufweisen, ist das Verhalten der Quellen im Allgemeinen stark unregelmäßig.
- Außerdem kann im Laufe des Durchgangs durch ein Netzwerk ein Datensatz über Übertragungsstrecken laufen, die stark unterschiedliche Datenraten unterstützen.
- Aber selbst wenn die Kapazitäten der verschiedenen Übertragungsstrecken identisch sind, können mehrere Datenflüsse, die von verschiedenen Knoten kommen, gleichzeitig an einem bestimmten Eingang eines Knotens erscheinen und einen Flaschenhals oder Engpass erzeugen, der in der Lage ist, einen Stauzustand in dem Netzwerk hervorzurufen.
- Man ist bemüht, sowohl das verfügbare Durchgangsband so gut wie möglich auszunutzen, indem den Quellen genehmigt wird, zu senden, so bald dies möglich ist, und Staus, die zu Datenverlusten führen, zu vermeiden, indem gegebenenfalls die Quellen verlangsamt werden: dies wird als Flusssteuerung bezeichnet.
- Es sind bereits Verfahren zur Flusssteuerung bekannt, bei denen unter zwei Hauptfamilien unterschieden wird: der auf der Zuteilung von Guthaben beruhenden Flusssteuerung und der auf der Zuteilung von Raten beruhenden Flusssteuerung; die Erfindung gehört zu der ersten Familie.
- Das Prinzip der Flusssteuerung auf Grundlage der Zuteilung von Guthaben ist das Folgende: Einem Sender wird verboten, Daten zu senden, solange er nicht vom Empfänger den Hinweis erhalten hat, dass der Empfänger in der Lage ist, diese aufzunehmen. Hierfür sendet der Empfänger regelmäßig an den Sender Guthabenpakete, die Informationen über seine Fähigkeit, Daten zu empfangen, enthalten.
- Die Menge der „Guthaben", die von jedem vom Empfänger an den Sender gesendeten Guthabenpaket befördert wird, entspricht für jeden virtuellen Eingangskanal des Senders der Zahl von unbelegten Stellen in einem diesem virtuellen Kanal zugeordneten Eingangspufferregister. Diverse Algorithmen zur Verwaltung der Guthaben sind vorgeschlagen worden. Hierzu wird beispielsweise auf den Artikel von H.T. Kung et al., „Credit based flow control for ATM networks: credit update protocol, adaptive credit allocation and statistical multiplexing", ACM 1994, verwiesen. Ein anderes Beispiel ist zu finden in dem Artikel „Reliable and Efficient Hop-by-Hop Flow Control", C. Özveren et al., Computer Communication Review 24 (1994) Nr. 4, New York.
- Ein Nachteil dieses Verfahrens liegt in der für die Rückübertragung der Steuerinformation bis zum Sender benötigen Zeit. Die Reaktion des Senders auf eine Anforderung des Empfängers ist also verzögert, was zu einer Unternutzung der Betriebsmittel führen kann, die um so stärker ist, je größer der Abstand zwischen dem Senderknoten und dem Empfängerknoten ist. Wenn zum Beispiel dieser Abstand 500 km beträgt, ist die Ausbreitungszeit Rtt 5ms. Der stromaufwärtige Knoten oder Senderknoten reagiert also auf ein Senden von Guthaben erst 5ms nach dem Zeitpunkt der Verfügbarkeit. Die Verzögerung Rtt entspricht der Dauer des Sendens von 1768 Paketen von 53 Byte bei 150 Mbit/s. Sofern man nicht extrem lange Eingangspuffer am Empfängerknoten verwendet, führt dieses Guthabenzuteilungsver fahren zu einer Unternutzung der Übertragungsstrecke zwischen Sender- und Empfängerknoten.
- In dem vorliegenden Dokument wird, wenn nichts Gegenteiliges gesagt ist, angenommen, dass „Übertragen eines Paketes" bedeutet, dieses Paket zu senden und es aus dem Puffer, der das Paket speichert, zu löschen. Wenn dies nicht der Fall ist, wird ausdrücklich gesagt, dass der Sender das Paket „behält".
- Ziel der vorliegenden Erfindung ist, ein Verfahren zur Flusssteuerung durch Guthabenzuteilung zu schaffen, das ermöglicht, die mit der Ausbreitungszeit Rtt zusammenhängenden Einschränkungen zu überwinden.
- Um dieses Ziel zu erreichen, schlägt die vorliegende Erfindung ein Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Paketdatenübertragungsnetzwerk zwischen einem Datensenderknoten und einem benachbarten Datenempfängerknoten, der stromabwärts weiter sendet, vor, bei welchem:
- (a) der Empfängerknoten an den Senderknoten Guthabenpakete sendet, die Informationen über die Kapazität des Empfängerknotens, von dem Senderknoten kommende Datenpakete zu empfangen, enthält;
- (b) der Sender die Datenpakete, die er zu übertragen hat, schickt, solange er ausreichend Guthaben besitzt; dadurch gekennzeichnet, dass:
- (c) wenn sein Guthaben erschöpft ist, der Senderknoten die wartenden Datenpakete, die er zu übertragen hat, im Vorhinein weiter sendet und jedes im Vorhinein gesendete Datenpaket behält, bis dessen Empfang durch das Eintreffen spezifischer vom Empfänger kommender Pakete bestätigt wird,
- (d) der Empfänger an den Sender eine Information schickt, welche die verlorenen Datenpakete angibt;
- (e) der Sender die Datenpakete, deren Verlust der Empfänger angezeigt hat, erneut sendet und die im vornhinein gesendeten Datenpakete, die den verlorenen Datenpaketen vorangehen, zerstört.
- Einer besonderen Ausgestaltung zufolge tragen die gesendeten Datenpakete eine Reihenfolgenummer, und die Guthabenpakete enthalten die Reihenfolgenummer des höchsten Datenpaketes, das der Empfänger zu empfangen bereit ist.
- Wenn der Sender mehrere jeweils mehreren Ausbreitungskanälen des Netzwerks zugeordnete Warteschlangen besitzt, und die Datenpakete in der Reihenfolge ihrer Reihenfolgenummer gesendet werden, überträgt der Sender zunächst Datenpakete, die von denjenigen der Warteschlangen kommen, für die die im letzen empfangenen, vom Empfänger kommenden Guthabenpaket enthaltene Reihenfolgenummer streng größer als die Nummer des letzten gesendeten Datenpakets ist, und anschließend sendet der Sender im Vorhinein Datenpakete, die von denjenigen der Warteschlangen kommen, für die das Senden im Vorhinein zugelassen ist (siehe unten), für die die in dem letzen empfangenen, vom Empfänger kommenden Guthabenpaket erhaltene Reihenfolgennummer kleiner oder gleich der Nummer des letzen gesendeten Datenpakets ist, und für die die Differenz zwischen den zwei Reihenfolgenummern am kleinsten ist, wobei der Sender die im Vorhinein übertragenen Datenpakete behält.
- Wenn der Empfänger mehrere Warteschlangen besitzt, die mehreren Ausbreitungskanälen des Netzwerks zugeordnet sind, sendet der Empfänger beim Eintreffen eines Datenpakets mit Reihenfolgenummer m, das vom Empfänger mangels Platz in der entsprechenden Warteschlange nicht angenommen werden kann, wohingegen das vorhergehende Datenpaket für diese Warteschlange angenommen worden ist, an den Sender ein Zurückweisungserfassungspa ket, welches die Reihenfolgenummer m enthält und weist systematisch alle folgenden Datenpakete zurück, bis durch Neuübertragung ein neues Exemplar des Datenpakets mit Reihenfolgenummer m eintrifft.
- Wenn der Sender ein Guthabenpaket bzw. ein Zurückweisungserfassungspaket vom Empfänger kommend empfängt, zerstört er alle notwendigerweise im Vorhinein gesendeten Datenpakete, deren Reihenfolgenummer kleiner oder gleich bzw. kleiner als die in dem Guthabenpaket bzw. in den Zurückweisungserfassungspaket angegebene Reihenfolgenummer ist.
- Wenn der Sender ein vom Empfänger kommendes Zurückweisungserfassungspaket empfängt, sperrt er das Senden im Vorhinein von Datenpaketen für den betreffenden Ausbreitungskanal, bis ein Guthabenpaket eintrifft, das eine Reihenfolgenummer aufweist, die größer oder gleich der Reihenfolgenummer des ersten Datenpakets ist, das auf ein erneutes Senden auf dem Ausbreitungskanal wartet oder demnächst auf dem Ausbreitungskanal zu übertragen ist.
- Alle diese Operationen können durch Programmierung eines Prozessors oder Controllers gesteuert oder von einer verdrahteten Logik ausgeführt werden.
- Bei einer besonderen Ausgestaltung sendet der Empfänger ein Guthabenpaket an den Sender, sobald das eine oder andere der folgenden Ereignisse auftritt:(i) die Zahl von seit dem Senden des letzen Guthabenpaketes an den Sender nach stromabwärts abgegangenen Datenpakete ist gleich einer vorgegebenen Zahl; (ii) eine vorgegebene Zeitdauer des Nichtsendens von Guthabenpaketen ist seit dem Senden des letzen Guthabenpakets an den Sender verstrichen. Im Fall (ii) kann die vom Empfänger an den Sender gesendete Menge an Guthaben 0 sein.
- Als nicht einschränkendes Beispiel kann die Dauer des Nichtsendens gleich der Hälfte der Hin- und Zurück- Ausbreitungszeit eines Datenpakets zwischen Sender- und Empfängerknoten gewählt werden.
- Die vorliegende Erfindung schlägt ferner eine Vorrichtung für die Zuteilung von Betriebsmitteln in einem digitalen Paketdatenübertragungsnetz vor, welche aufweist:
einen Datenempfängerknoten, welcher umfasst: - – eine vorgegebene Zahl n von Eingangspuffern, die jeweils n virtuellen Kanälen zugeordnet sind, die mehreren Sendequellen von Daten in dem Netzwerk entsprechen,
- – Mittel, die mit jedem der Puffer verbunden sind, um den Füllstand der Puffer zu überwachen, und
- – Sendemittel, die mit den Überwachungsmitteln verbunden sind, um Guthabenpakete und Zurückweisungserfassungspakete zu bilden, die Informationen über die Kapazität des Empfängerknotens zum Empfangen von Datenpaketen enthalten;
- – n Eingangspuffer, die jeweils den n virtuellen Kanälen zugeordnet sind;
- – Speichermittel zum Speichern der Werte der Guthaben, die beim Empfang eines vom Empfänger kommenden Guthabenpakets und beim Senden eines Datenpakets an den Empfänger aktualisiert werden;
- – Verwaltungsmittel, die mit den Speichermitteln verbunden sind und Ausgangsmultiplexmittel und eine Mehrzahl von jeweils den n virtuellen Kanälen zugeordneten Registern umfassen, wobei jedes Register die Reihenfolgenummer des nächsten auf dem jeweiligen virtuellen Kanal zu übertragenden Datenpakets ent hält, die Verwaltungsmittel programmiert sind, um die Übertragung, gegebenenfalls im Vorhinein, von Datenpaketen zum Empfänger in Abhängigkeit von den Guthabenwerten zu steuern, um, wenn ein vom Empfängerknoten kommendes Zurückweisungserfassungspaket empfangen wird, die Beseitigung der Datenpakete, deren Reihenfolgenummer kleiner als die in dem Zurückweisungserfassungspaket angegebene Reihenfolgenummer ist, in dem Eingangspuffer des betreffenden virtuellen Kanals und die Sperrung der Übertragung im Vorhinein auf diesem virtuellen Kanal zu steuern, und, wenn ein Guthabenpaket empfangen wird, die Beseitigung, in dem Puffer des betreffenden virtuellen Kanals, von notwendigerweise im Vorhinein gesendeten Datenpaketen, deren Reihenfolgenummer kleiner oder gleich der in dem Guthabenpaket angegebenen Reihenfolgenummer ist, und die eventuelle Reaktivierung des Sendens im Vorhinein, wenn dieses gesperrt war, zu steuern; und
- Die obigen Merkmale sowie andere werden deutlich anhand der Lektüre der nachfolgenden Beschreibung einer besonderen Ausgestaltung, die als nicht einschränkendes Beispiel angegeben wird. Die Beschreibung nimmt Bezug auf die begleitenden Zeichnungen, in denen:
-
1 schematisch ein Senderknoten-Empfängerknoten-Paar mit Senden von Guthabenpaketen und Zurückweisungserfassung durch den Empfänger und Senden von Datenpaketen durch den Sender darstellt; -
2 ein Prinzipschema des Aufbaus eines Senders und eines Empfängers ist; -
3 und4 Kurven darstellen, die die mit dem Verfahren und der Vorrichtung gemäß der vorliegenden Erfindung erzielte relative Ausgangsdatenrate mit der mit dem bisherigen, von H.T. Kung in dem oben zitierten Artikel beschriebenen Verfahren erhaltenen relativen Ausgangsdatenrate vergleichen. - Zur Vereinfachung werden im Folgenden innerhalb eines digitalen Paketdatenübertragungsnetzwerks lediglich zwei benachbarte Knoten betrachtet, von denen der eine sich als Sender von Daten und der andere als Empfänger verhält.
- Es wird angenommen, dass der Senderknoten
10 , der zur Vereinfachung als „Sender" bezeichnet wird, von mehreren Quellen (1 ) versorgt wird und Daten von von diesen diversen Quellen kommenden Paketen auf einer Strecke12 an einen Empfänger14 unter Berücksichtigung der Fähigkeit des Empfängers, diese Daten zu empfangen, übertragen muss. Die Strecke12 muss also mehrere virtuelle Kanäle VC1, VC2,..., VCn unterstützen, die den diversen Quellen entsprechen. Der Sender umfasst Eingangspuffer16 , in denen sich die von den Quellen kommenden Datenpakete sammeln. Ein Ausgangsmultiplexer18 des Senders ermöglicht die Übertragung der Datenpakete auf die Strecke12 . Der Empfänger14 umfasst seinerseits einen Eingangspuffer20 pro virtuellem Kanal. Je nach Adresse, die die auf der Strecke12 empfangenen Datenpakete tragen, lenkt sie der Empfänger zu dem einem oder anderen der Eingangspuffer20 . - Die Datenpakete, die durch Datensätze in digitaler Form gebildet sind, können eine festgelegte Größe in Bytes haben, was die Bestimmung der Guthaben erleichtert, oder sie können eine veränderliche Größe haben. Hier wird nur von Paketen mit fester Länge die Rede sein.
- Ein Datenpaket, dass am Sender von einer Quelle oder einem stromaufwärts liegenden Übertragungsknoten her ankommt, wird in der entsprechenden Warteschlange des Senders gespeichert, wenn dieser es nicht unmittelbar nach Stromabwärts weiter sendet. Innerhalb eines virtuellen Kanals tragen die Datenpakete eine Reihenfolgenummer und werden vom Sender in der Reihenfolge ihrer Reihenfolgenummer übertragen.
- Der Empfänger
14 umfasst Mittel22 (2 ), die vorgesehen sind, um den Füllstand der Puffer20 zu überwachen und einen Sender23 , der dazu bestimmt ist, „Guthaben"-Pakete und Zurückweisungserfassungspakete DR zu erzeugen und sie auf der Strecke12 an den Sender10 zu senden. Jedes Guthabenpaket enthält für jeden virtuellen Kanal die Identifikation der Zahl von Paketen, die dieser annehmen kann, zum Beispiel durch Angabe der höchsten Nummer des Paketes, das er auf dem virtuellen Kanal zu empfangen bereit ist. In der Praxis können die Puffer20 ein einziges Bauteil bilden, dessen Plätze zwischen den virtuellen Kanälen statisch (d. h. ein für alle mal festgelegt) oder dynamisch aufgeteilt sind. - In einem Netzwerk von bekanntem Typ, das den Ansatz der Guthabenzuteilung verwendet, darf der Sender einem festgelegten virtuellen Kanal entsprechende Datenpakete senden, wenn er das vom Empfänger empfangene Guthaben nicht erschöpft hat. Hierfür weist der Sender einen Speicher auf, in dem das vom Empfänger kommende Guthaben gespeichert ist und der im Laufe des Sendens von Paketen dekrementiert wird. So ist der Empfänger mit Sicherheit in Lage, lokale Benutzer oder Benutzer an stromabwärtigen Ausgängen die eintreffenden Datenpakete verfolgen zu lassen.
- Erfindungsgemäß ist der Sender so aufgebaut, dass er einen bestimmten virtuellen Kanal betreffende Datenpakete senden kann, wenn er das diesem virtuellen Kanal entsprechende Guthaben aufgebraucht hat, allerdings nur in bestimmten Fällen, wie man später sehen wird.
- Die im Vorhinein gesendeten Datenpakete, die beim Empfänger eintreffen, laufen Gefahr, zurückgewiesen zu werden, wenn der Empfänger im Eingangspuffer keine freien Plätze mehr hat. Um dieser Gefahr abzuhelfen, behält der Sender jedes im Vorhinein gesendete Datenpaket.
- Zur Vereinfachung zeigt die
2 einen einzigen Eingangspuffer16 mit statischer Zuteilung der verfügbaren Plätze an die verschiedenen virtuellen Kanäle. Die Guthaben sind in einem Speicher24 gespeichert, und die Verfügbarkeiten werden einem Verwaltungsorgan28 , das den Multiplexer18 umfasst, ständig angezeigt. Das Verwaltungsorgan28 umfasst ferner ein Register38 für jeden virtuellen Kanal, das die Reihenfolgenummer des nächsten auf diesen virtuellen Kanal zu übertragenden Datenpakets angibt. Das Verwaltungsorgan28 kann insbesondere programmiert sein, um den folgenden Betrieb hervorzurufen: - – nach
Senden eines Datenpakets enthält
das entsprechende Register
38 die nächste Reihenfolgenummer für diesen virtuellen Kanal; - – wenn
ein Zurückweisungserfassungspaket
DR erfasst wird, wird die in diesem Paket enthaltene Reihenfolgenummer
in das entsprechende Register
38 geschrieben, und die notwendigerweise im Vorhinein gesendeten Datenpakete, deren Reihenfolgenummer kleiner als die in dem Paket DR angegebene Nummer ist, werden aus dem Puffer16 entfernt; das Senden im Vorhinein ist dann auf diesem Kanal gesperrt; - – wenn
ein Guthabenpaket empfangen wird, werden die notwendigerweise im
Vorhinein gesendeten Datenpakete, deren Reihenfolgenummer kleiner
als die in dem Guthabenpaket angegebene Nummer ist, aus dem Puffer
16 entfernt. Wenn das Senden im Vorhinein gesperrt war und die in dem Guthabenpaket enthaltene Reihenfolgenummer größer oder gleich der des ersten zu sendenden Datenpakets ist, die in dem entsprechenden Register38 angegeben ist, ist das Senden im Vorhinein auf diesem virtuellen Kanal wieder erlaubt; - – solange
der Sender nicht-leere Warteschlangen aufweist, überträgt er Datenpakete dieser Schlangen,
wobei er vorrangig diejenigen seiner Warteschlangen bedient, für die die
in dem letzten vom Empfänger
kommend empfangenen Guthabenpaket enthaltene Reihenfolgenummer streng
größer als
die Reihenfolgenummer des letzten gesendeten Datenpakets ist. Diese
Datenpakete werden alsbald aus dem Puffer
16 gelöscht; - – der Sender bedient anschließend im Vorhinein diejenigen seiner Warteschlangen, für die das Senden im Vorhinein zugelassen ist, für die die in dem letzten empfangenen Guthabenpaket enthaltene Reihenfolgenummer kleiner oder gleich der Reihenfolgenummer des letzen gesendeten Datenpakets ist und für die die Differenz zwischen diesen zwei Reihenfolgenummern am kleinsten ist, wobei der Sender die so gesendeten Datenpakete behält.
- Auf Seiten des Empfängers kann der Verlust eines Datenpakets erkannt werden durch Erfassung des Füllstandes eines Puffers und Identifizieren der Reihenfolgenummer des oder der empfangenen, aber auf Grund eines Pufferüberlaufs nicht gespeicherten Datenpakete.
- Im Laufe von Simulationen wurden sehr zufrieden stellende Ergebnisse erhalten. Zum Beispiel zeigen die
3 und4 einen Vergleich der relativen Ausgangsdatenraten, erhalten jeweils mit dem Verfahren und der Vorrichtung gemäß der vorliegenden Erfindung (durchgezogen gezeichnete Kurven) und mit dem von H.T. Kung vorgeschlagenen und in dem in der Einleitung zitierten als „N23" bezeichneten Verfahren (gestrichelte Kurven). - Die relative Ausgangsdatenrate ist definiert als das Verhältnis zwischen der Gesamtzahl der vom Empfänger abgegebenen Pakete und der Gesamtzahl der von den Quellen erzeugten Pakete.
- Die Kurven der
3 und4 zeigen die relative Ausgangsdatenrate in Abhängigkeit von der Gesamtgröße des Puffers des Empfängers, ausgedrückt als Zahl von Paketen. Jeder Punkt einer Messkurve entspricht dem Durchlauf von 3.106 Paketen. Diese Kurven entsprechen zwei verschiedenen Werten der „Blockierphase". - Bekanntlich hat der Ausgang jedes virtuellen Kanals Verfügbarkeitsphasen und Blockierphasen. Die Dauer einer Blockierphase ist ausgedrückt als Zahl von „Paketzeiten", während derer der Empfänger seinen Puffer nicht leeren kann, wobei eine „Paketzeit" die Dauer des Sendens eines Pakets ist. In den
3 und4 ist der Anteil der Blockierphase 50% und die Ausbreitungszeit Rtt beträgt 2400 Paketzeiten. Für die Kurven der3 ist die mittlere Dauer einer Blockierphase 200. Für die Kurven der4 ist diese mittlere Dauer 720. - In beiden Fällen stellt man fest, dass die vorliegende Erfindung eine bessere Ausnutzung der Betriebsmittel ermöglicht. Bei einer geringen Dauer der Blockierphase ist der Zugewinn durch das vorliegende Verfahren sehr groß für eine geringe Größe des Puffers (
3 ); bei einer großen Blockierphase ist der Zugewinn des vorliegenden Verfahrens, obwohl bei geringer Puffergröße in Vergleich weniger groß, auch für einen relativ großen Puffer deutlich (4 ). - Andere Simulationsergebnisse haben ferner gezeigt, dass die Leistungsdaten des vorliegenden Verfahrens um so besser sind, je größer die Zahl der virtuellen Kanäle ist.
Claims (8)
- Verfahren für die Zuweisung von Betriebsmitteln in einem digitalen Paketdatenübertragungsnetzwerk zwischen einem Datensenderknoten (
10 ) und einem benachbarten Datenempfängerknoten (14 ), der stromabwärts weitersendet, bei welchem: (a) der Empfängerknoten (14 ) an den Senderknoten (10 ) Guthabenpakete sendet, die Informationen über die Kapazität des Empfängerknotens (14 ), von dem Senderknoten (10 ) kommende Datenpakete zu empfangen, enthält; (b) der Sender (10 ) die Datenpakete, die er zu übertragen hat, schickt, so lange er ausreichend Guthaben besitzt; dadurch gekennzeichnet, dass: (c) wenn sein Guthaben erschöpft ist, der Senderknoten (10 ) die wartenden Datenpakete, die er zu übertragen hat, im Vorhinein weiter sendet und jedes im Vorhinein gesendete Datenpaket behält, bis dessen Empfang durch das Eintreffen spezifischer vom Empfänger kommender Pakete bestätigt wird; (d) der Empfänger (14 ) an den Sender (10 ) eine Information schickt, welche die verlorenen Datenpakete angibt; (e) der Sender (10 ) die Datenpakete, deren Verlust der Empfänger (14 ) angezeigt hat, erneut sendet und die im Vorhinein gesendeten Datenpakete, die den verlorenen Datenpaketen vorangehen, zerstört. - Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die gesendeten Datenpakete eine Reihenfolgenummer tragen, und dass die Guthabenpakete die Reihenfolgenummer des höchsten Datenpakets enthalten, welches der Empfänger (
14 ) zu empfangen bereit ist. - Verfahren nach Anspruch 2, bei welchem der Sender (
10 ) mehrere jeweils mehreren Ausbreitungskanälen des Netzwerks zugeordnete Warteschlangen besitzt, und bei welchem die Datenpakete in der Reihenfolge ihrer Reihenfolgenummer gesendet werden, dadurch gekennzeichnet, dass der Sender (10 ) zunächst Datenpakete sendet, die von denjenigen der Warteschlangen kommen, für die die im letzten empfangenen, vom Empfänger (14 ) kommenden Guthabenpaket enthaltene Reihenfolgenummer streng größer als die Nummer des letzten gesendeten Datenpakets ist, und der Sender (10 ) anschließend im Vorhinein Datenpakete sendet, die von denjenigen der Warteschlangen kommen, für die das Senden im Vorhinein zugelassen ist, für die die in dem letzten empfangenen, vom Empfänger (14 ) kommenden Guthabenpaket enthaltene Reihenfolgenummer kleiner oder gleich der Nummer des letzten gesendeten Datenpakets ist, und für die die Differenz zwischen den zwei Reihenfolgenummern am kleinsten ist, wobei der Sender (10 ) die im Vorhinein übertragenen Datenpakete behält. - Verfahren nach Anspruch 2 oder 3, bei welchem der Empfänger (
14 ) mehrere Warteschlangen besitzt, die mehreren Ausbreitungskanälen des Netzwerks zugeordnet sind, dadurch gekennzeichnet, dass beim Eintreffen eines Datenpakets mit Reihenfolgenummer m, das vom Empfänger mangels Platz in der entsprechenden Warteschlange nicht angenommen werden kann, wohingegen das vorhergehende Datenpaket für diese Warteschlange angenommen worden ist, der Empfänger (14 ) an den Sender (10 ) ein Zurückweisungserfassungspaket (DR) sendet, welches die Reihenfolgenummer m enthält, und systematisch alle folgenden Datenpakete zurückweist, bis durch Neuübertragung ein neues Exemplar des Datenpakets mit Reihenfolgenummer m eintrifft. - Verfahren nach Anspruch 2, 3 oder 4, dadurch gekennzeichnet, dass, wenn der Sender (
10 ) ein Guthabenpaket bzw. ein Zurückweisungserfassungspaket (DR) vom Empfänger (14 ) kommend empfängt, er alle notwendigerweise im Vorhinein gesendeten Datenpakete zerstört, deren Reihenfolgenummer kleiner oder gleich bzw. kleiner als die in dem Guthabenpaket bzw. in dem Zurückweisungserfassungspaket (DR) angegebene Reihenfolgenummer ist. - Verfahren nach einem beliebigen der Ansprüche 2 bis 5, dadurch gekennzeichnet, dass wenn der Sender (
10 ) ein vom Empfänger (14 ) kommendes Zurückweisungserfassungspaket (DR) empfängt, er das Senden im Vorhinein von Datenpaketen für den betreffenden Ausbreitungskanal sperrt, bis ein Guthabenpaket eintrifft, das eine Reihenfolgenummer aufweist, die größer oder gleich der Reihenfolgenummer des ersten Datenpaketes ist, das auf ein erneutes Senden auf dem Ausbreitungskanal wartet oder demnächst auf dem Ausbreitungskanal zu übertragen ist. - Verfahren nach einem beliebigen der Ansprüche 2 bis 6, dadurch gekennzeichnet, dass der Empfänger (
14 ) ein Guthabenpaket an den Sender (10 ) schickt, sobald das eine oder andere der folgenden Ereignisse auftritt: (i) die Zahl von seit dem Senden des letzten Guthabenpaketes an den Sender nach stromabwärts abgegangenen Datenpakete ist gleich einer vorgegebenen Zahl; (ii) eine vorgegebene Zeitdauer des Nichtsendens von Guthabenpaketen ist seit dem Senden des letzten Guthabenpakets an den Sender (10 ) verstrichen. - Vorrichtung zur Zuweisung von Betriebsmitteln in einem digitalen Paketdatenübertragungsnetz, mit: einem Empfängerknoten (
14 ), welcher umfasst: – eine vorgegebene Zahl n von Eingangspuffern (20 ), die jeweils n virtuellen Kanälen (VC1, VC2,..., VCn) zugeordnet sind, die mehreren Sendequellen von Daten im Netz entsprechen, – Mittel (22 ), die mit jedem der Puffer (20 ) verbunden sind, um den Füllstand der Puffer (20 ) zu überwachen, und – Sendemittel (23 ), die mit den Überwachungsmitteln (22 ) verbunden sind, um Guthabenpakete und Zurückweisungserfassungspakete zu bilden, die Informationen über die Kapazität des Empfängerknotens (14 ) zum Empfangen von Datenpaketen enthalten; einem Daten-Senderknoten (10 ), welcher umfasst: – n Eingangspuffer (16 ), die jeweils den n virtuellen Kanälen (VC1, VC2,..., VCn) zugeordnet sind, – Speichermittel (24 ) zum Speichern der Werte der Guthaben, die beim Empfang eines vom Empfänger (14 ) kommenden Guthabenpakets und beim Senden eines Datenpaketes an den Empfänger (14 ) aktualisiert werden, – Verwaltungsmittel (28 ), die mit den Speichermitteln (24 ) verbunden sind und Ausgangsmultiplexmittel (18 ) und eine Mehrzahl von jeweils den n virtuellen Kanälen zugeordneten Registern (38 ) umfassen, wobei jedes Register (38 ) die Reihenfolgenummer des nächsten auf dem jeweiligen virtuellen Kanal zu übertragenden Datenpaketes enthält, die Verwaltungsmittel (28 ) programmiert sind, um die Übertragung, gegebenenfalls im Vorhinein, von Datenpaketen zum Empfänger in Abhängigkeit von den Guthabenwerten zu steuern, um, wenn ein vom Empfängerknoten (14 ) kommendes Zurückweisungserfassungspaket (DR) empfangen wird, die Be seitigung der Datenpakete, deren Reihenfolgenummer kleiner als die in dem Zurückweisungserfassungspaket angegebene Reihenfolgenummer ist, in dem Eingangspuffer (16 ) des betreffenden virtuellen Kanals und die Sperrung der Übertragung im Vorhinein auf diesem virtuellen Kanal zu steuern, und, wenn ein Guthabenpaket empfangen wird, die Beseitigung, in dem Puffer (16 ) des betreffenden virtuellen Kanals, von notwendigerweise im Vorhinein gesendeten Datenpaketen, deren Reihenfolgenummer kleiner oder gleich der in dem Guthabenpaket angegebenen Reihenfolgenummer ist, und die eventuelle Reaktivierung des Sendens im Vorhinein, wenn dieses gesperrt war, zu steuern; und einer Übertragungsstrecke (12 ), welche den Senderknoten (10 ) mit dem Empfängerknoten (14 ) verbindet, auf welcher einerseits Datenpakete vom Senderknoten (10 ) an den Empfängerknoten (14 ) und andererseits Guthabenpakete und Zurückweisungserfassungspakete (DR) vom Empfängerknoten (14 ) zum Senderknoten (10 ) gesendet werden.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9701433 | 1997-02-07 | ||
FR9701433A FR2759518B1 (fr) | 1997-02-07 | 1997-02-07 | Procede et dispositif d'allocation de ressources dans un reseau numerique de transmission par paquets |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69827053D1 DE69827053D1 (de) | 2004-11-25 |
DE69827053T2 true DE69827053T2 (de) | 2005-10-13 |
Family
ID=9503463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69827053T Expired - Lifetime DE69827053T2 (de) | 1997-02-07 | 1998-02-03 | Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk |
Country Status (5)
Country | Link |
---|---|
US (1) | US6243358B1 (de) |
EP (1) | EP0858193B1 (de) |
JP (1) | JPH10313342A (de) |
DE (1) | DE69827053T2 (de) |
FR (1) | FR2759518B1 (de) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7099943B1 (en) * | 1998-08-26 | 2006-08-29 | Intel Corporation | Regulating usage of computer resources |
US6747949B1 (en) * | 1999-05-21 | 2004-06-08 | Intel Corporation | Register based remote data flow control |
US6944173B1 (en) * | 2000-03-27 | 2005-09-13 | Hewlett-Packard Development Company, L.P. | Method and system for transmitting data between a receiver and a transmitter |
AU2001271609A1 (en) * | 2000-06-30 | 2002-01-14 | Kanad Ghose | System and method for fast, reliable byte stream transport |
US7453878B1 (en) | 2000-07-21 | 2008-11-18 | Silicon Graphics, Inc. | System and method for ordering of data transferred over multiple channels |
DE60036616T2 (de) * | 2000-08-22 | 2008-07-03 | Alcatel Lucent | Kommunikationsverfahren, verwandtes Pufferspeicherelement und Leitungsabschlusselement |
US6977888B1 (en) * | 2000-09-14 | 2005-12-20 | Telefonaktiebolaget L M Ericsson (Publ) | Hybrid ARQ for packet data transmission |
US20020087720A1 (en) * | 2000-12-28 | 2002-07-04 | Davis Arlin R. | System and method for communications management and control over an unreliable communications network |
US20030026267A1 (en) * | 2001-07-31 | 2003-02-06 | Oberman Stuart F. | Virtual channels in a network switch |
US9836424B2 (en) * | 2001-08-24 | 2017-12-05 | Intel Corporation | General input/output architecture, protocol and related methods to implement flow control |
US7152128B2 (en) | 2001-08-24 | 2006-12-19 | Intel Corporation | General input/output architecture, protocol and related methods to manage data integrity |
US20030084219A1 (en) * | 2001-10-26 | 2003-05-01 | Maxxan Systems, Inc. | System, apparatus and method for address forwarding for a computer network |
US7499410B2 (en) * | 2001-12-26 | 2009-03-03 | Cisco Technology, Inc. | Fibre channel switch that enables end devices in different fabrics to communicate with one another while retaining their unique fibre channel domain—IDs |
US7145914B2 (en) | 2001-12-31 | 2006-12-05 | Maxxan Systems, Incorporated | System and method for controlling data paths of a network processor subsystem |
US7085846B2 (en) * | 2001-12-31 | 2006-08-01 | Maxxan Systems, Incorporated | Buffer to buffer credit flow control for computer network |
US7616637B1 (en) * | 2002-04-01 | 2009-11-10 | Cisco Technology, Inc. | Label switching in fibre channel networks |
US7379970B1 (en) | 2002-04-05 | 2008-05-27 | Ciphermax, Inc. | Method and system for reduced distributed event handling in a network environment |
US7307995B1 (en) | 2002-04-05 | 2007-12-11 | Ciphermax, Inc. | System and method for linking a plurality of network switches |
US7295561B1 (en) | 2002-04-05 | 2007-11-13 | Ciphermax, Inc. | Fibre channel implementation using network processors |
US7406038B1 (en) | 2002-04-05 | 2008-07-29 | Ciphermax, Incorporated | System and method for expansion of computer network switching system without disruption thereof |
US20030195956A1 (en) * | 2002-04-15 | 2003-10-16 | Maxxan Systems, Inc. | System and method for allocating unique zone membership |
US20030200330A1 (en) * | 2002-04-22 | 2003-10-23 | Maxxan Systems, Inc. | System and method for load-sharing computer network switch |
US7206288B2 (en) * | 2002-06-12 | 2007-04-17 | Cisco Technology, Inc. | Methods and apparatus for characterizing a route in fibre channel fabric |
US7474613B2 (en) * | 2002-07-25 | 2009-01-06 | Cisco Technology, Inc. | Methods and apparatus for credit-based flow control |
US7301898B1 (en) * | 2002-07-29 | 2007-11-27 | Brocade Communications Systems, Inc. | Credit sharing for fibre channel links with multiple virtual channels |
US20040030766A1 (en) * | 2002-08-12 | 2004-02-12 | Michael Witkowski | Method and apparatus for switch fabric configuration |
US7433326B2 (en) * | 2002-11-27 | 2008-10-07 | Cisco Technology, Inc. | Methods and devices for exchanging peer parameters between network devices |
US20050220025A1 (en) * | 2003-05-30 | 2005-10-06 | Tsutomu Noguchi | Flow control device |
US7593324B2 (en) * | 2004-10-25 | 2009-09-22 | Cisco Technology, Inc. | Graceful port shutdown protocol for fibre channel interfaces |
US7916628B2 (en) * | 2004-11-01 | 2011-03-29 | Cisco Technology, Inc. | Trunking for fabric ports in fibre channel switches and attached devices |
US7649844B2 (en) * | 2004-12-29 | 2010-01-19 | Cisco Technology, Inc. | In-order fibre channel packet delivery |
US8316129B2 (en) | 2005-05-25 | 2012-11-20 | Microsoft Corporation | Data communication coordination with sequence numbers |
US7787367B2 (en) * | 2006-05-23 | 2010-08-31 | International Business Machines Corporation | Method and a system for flow control in a communication network |
US7773616B2 (en) * | 2006-11-08 | 2010-08-10 | Sicortex, Inc. | System and method for communicating on a richly connected multi-processor computer system using a pool of buffers for dynamic association with a virtual channel |
US7773617B2 (en) * | 2006-11-08 | 2010-08-10 | Sicortex, Inc. | System and method for arbitration for virtual channels to prevent livelock in a richly-connected multi-processor computer system |
US8949392B2 (en) | 2007-11-07 | 2015-02-03 | Brocade Communications Systems, Inc. | Workload management with network dynamics |
US9331955B2 (en) | 2011-06-29 | 2016-05-03 | Microsoft Technology Licensing, Llc | Transporting operations of arbitrary size over remote direct memory access |
US8856582B2 (en) | 2011-06-30 | 2014-10-07 | Microsoft Corporation | Transparent failover |
US20130067095A1 (en) | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Smb2 scaleout |
US8989037B2 (en) * | 2012-06-01 | 2015-03-24 | Broadcom Corporation | System for performing data cut-through |
US9083655B2 (en) | 2012-10-05 | 2015-07-14 | Broadcom Corporation | Internal cut-through for distributed switches |
US9606245B1 (en) | 2015-03-24 | 2017-03-28 | The Research Foundation For The State University Of New York | Autonomous gamma, X-ray, and particle detector |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4799215A (en) * | 1985-10-07 | 1989-01-17 | Nec Corporation | High-speed packet-switched communications system with end-to-end flow control and retransmission |
US4769810A (en) * | 1986-12-31 | 1988-09-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Packet switching system arranged for congestion control through bandwidth management |
JPH0286245A (ja) * | 1988-09-21 | 1990-03-27 | Hitachi Ltd | データリンクレイヤ処理方式 |
US4970714A (en) * | 1989-01-05 | 1990-11-13 | International Business Machines Corp. | Adaptive data link protocol |
US5063562A (en) * | 1990-05-23 | 1991-11-05 | International Business Machines Corporation | Flow control for high speed networks |
US5432824A (en) * | 1994-07-06 | 1995-07-11 | Mitsubishi Electric Research Laboratories, Inc. | Credit/rate-based system for controlling traffic in a digital communication network |
US5515359A (en) * | 1994-08-26 | 1996-05-07 | Mitsubishi Electric Research Laboratories, Inc. | Credit enhanced proportional rate control system |
US5528591A (en) * | 1995-01-31 | 1996-06-18 | Mitsubishi Electric Research Laboratories, Inc. | End-to-end credit-based flow control system in a digital communication network |
EP0873611A1 (de) * | 1995-09-14 | 1998-10-28 | Fujitsu Network Communications, Inc. | Sender-gesteuerte flusssteuerung zur pufferspeicherzuordnung in atm-wan |
JP2929991B2 (ja) * | 1996-01-29 | 1999-08-03 | 日本電気株式会社 | 最適化クレジット制御方法 |
-
1997
- 1997-02-07 FR FR9701433A patent/FR2759518B1/fr not_active Expired - Lifetime
-
1998
- 1998-02-03 DE DE69827053T patent/DE69827053T2/de not_active Expired - Lifetime
- 1998-02-03 EP EP98400215A patent/EP0858193B1/de not_active Expired - Lifetime
- 1998-02-04 US US09/018,537 patent/US6243358B1/en not_active Expired - Lifetime
- 1998-02-05 JP JP6186898A patent/JPH10313342A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
FR2759518A1 (fr) | 1998-08-14 |
EP0858193B1 (de) | 2004-10-20 |
JPH10313342A (ja) | 1998-11-24 |
DE69827053D1 (de) | 2004-11-25 |
FR2759518B1 (fr) | 1999-04-23 |
US6243358B1 (en) | 2001-06-05 |
EP0858193A1 (de) | 1998-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69827053T2 (de) | Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk | |
DE3780799T2 (de) | Anordnung zur ueberlastregelung durch bandbreitenverwaltung fuer paketvermittlungssystem. | |
DE3780800T2 (de) | Anordnung zur ueberlastregelung fuer paketvermittlungssystem. | |
DE69025713T2 (de) | Dynamische Fensterbestimmung in einem Datennetzwerk | |
DE69025558T2 (de) | Verfahren und Vorrichtung zur Überlastregelung in einem Datennetzwerk | |
DE69229900T2 (de) | Wiederzuteilung der Betriebsmittel für einen erzwungenen Benutzerverkehrsfluss | |
DE68927952T2 (de) | Paket-Überlastungsregelungsverfahren und Paketvermittlungsgerät | |
DE69328380T2 (de) | Verfahren und vorrichtung zur vermittlung von mehreren verkehrsklassen | |
DE69534540T2 (de) | Apparat und Methode zur Verarbeitung von Bandbreitenanforderungen in einer ATM-Vermittlungsstelle | |
DE69232247T2 (de) | Vermittlungsknoten in einem Netz mit Etikett-Multiplexinformation | |
DE69838601T2 (de) | Verfahren und Vorrichtung zum Erweitern eines on-chip FIFOs in einem lokalen Speicher | |
DE60036682T2 (de) | Maschine zur gewichteten ringförmigen Ablaufsteuerung | |
DE60036031T2 (de) | Zuweisung von prioritätsstufen in einem datenfluss | |
DE69324274T2 (de) | Selektive überlastungsregelung für informationsnetze | |
DE69818846T2 (de) | Paketnetzwerk | |
DE69331309T2 (de) | Bandbreitenzuordnung, Übertragungsplanung und Vermeidung von Blockierungen in Breitband Asynchroner-Transfer-Modus Netzwerken | |
DE69432655T2 (de) | Verbesserungen in ATM-Nachrichtensystemen | |
DE3856239T2 (de) | Paketvermittlung | |
DE10196447B4 (de) | Verfahren und Vorrichtung zum Verringern der Erschöpfung des Pools in einer Vermittlung mit gemeinsam genutztem Speicher | |
DE60120807T2 (de) | Schaltvorrichtung und Verfahren | |
DE69130286T2 (de) | Verfahren zur priorisierung, selektiven ablösung und multiplexierung von schnellen paketen verschiedener verkehrsarten | |
DE69738386T2 (de) | Verbesserungen in oder sich beziehend auf eine ATM-Vermittlungsstelle | |
DE60219999T2 (de) | Taskverwaltungsverfahren für einen Router einer Paketvermittlungsstelle, die Teil eines gesicherten und Paketvermittelten Netzes ist | |
DE3685599T2 (de) | Vermittlungssystem fuer datenuebertragung. | |
DE69732398T2 (de) | System zur Verkehrssteuerung und Überlastregelung für Paketnetzwerke |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |