DE112011103578B4 - Verfahren und System zum Übertragen von Datenpaketen in einem Netzwerk - Google Patents

Verfahren und System zum Übertragen von Datenpaketen in einem Netzwerk Download PDF

Info

Publication number
DE112011103578B4
DE112011103578B4 DE112011103578.0T DE112011103578T DE112011103578B4 DE 112011103578 B4 DE112011103578 B4 DE 112011103578B4 DE 112011103578 T DE112011103578 T DE 112011103578T DE 112011103578 B4 DE112011103578 B4 DE 112011103578B4
Authority
DE
Germany
Prior art keywords
node
network
nodes
data packet
transmitted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112011103578.0T
Other languages
English (en)
Other versions
DE112011103578T5 (de
Inventor
Nikolaos Chrysos
Cyriel J. Minkenberg
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112011103578T5 publication Critical patent/DE112011103578T5/de
Application granted granted Critical
Publication of DE112011103578B4 publication Critical patent/DE112011103578B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1507Distribute and route fabrics, e.g. sorting-routing or Batcher-Banyan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/64Distributing or queueing
    • H04Q3/68Grouping or interlacing selector groups or stages

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

Verfahren zum Übertragen von einem oder mehreren Datenpaketen von einem ersten Knoten (2, 6) an einen aus einer Anzahl von zweiten Knoten (6, 3), die durch ein Koppelnetz (4, 5) verbunden sind, wobei das Datenpaket entsprechend einem Übertragungsmodus vom ersten Knoten (2, 6) an den einen zweiten Knoten (6, 3) übertragen wird, wobei für jedes Datenpaket in Abhängigkeit von einer Netzwerkbedingung ermittelt wird, ob es entsprechend einem ersten oder einem zweiten Übertragungsmodus übertragen wird;wobei das Datenpaket im ersten Übertragungsmodus entsprechend einem vorgeplanten Schema an den zweiten Knoten (6, 3) übertragen wird, wobei das vorgeplante Schema eine zyklische Eins-zu-eins-Zuweisung zwischen dem ersten (2, 6) und dem zweiten Knoten (6, 3) über Zeitschlitze festlegt, so dass das Datenpaket während des Zeitschlitzes, dessen Eins-zu-eins-Zuweisung dem ersten Knoten (2, 6) den einen zweiten Knoten (6, 3) zuweist, an den zweiten Knoten (6, 3) übertragen wird;wobei das Datenpaket im zweiten Übertragungsmodus während eines gegenwärtigen Zeitschlitzes an den zweiten Knoten (6, 3) übertragen wird, wobei das vorgeplante Schema aufgehoben wird.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft Verbindungsnetzwerke, insbesondere Schemas zum Transportieren eines Pakets von einem Eingangsknoten an einen Ausgangsknoten eines Verbindungsnetzwerks. Außerdem betrifft die vorliegende Erfindung die Arbeitsweise von Netzwerken mit Lastausgleich (load-balanced networks) unter den Bedingungen einer geringen Auslastung.
  • Stand der Technik
  • Verbindungsnetzwerke, wie sie z.B. in Rechenzentren verwendet werden, stellen normalerweise sehr hohe Anforderungen an Bandbreite und Latenz, da dieselbe Netzwerkinfrastruktur für verschiedene Anwendungen mit unterschiedlichen Anforderungen nutzbar sein soll. Einige Anwendungen, beispielsweise umfangreiche Speichersicherungen, benötigen Übertragungskanäle mit hoher Kapazität, die stark beansprucht werden können. Andererseits sind Anwendungen wie HPC (High Performance Computing) sehr empfindlich gegenüber Netzwerklatenz. Folglich erfordern Universalverbindungsnetze der nächsten Generation einen angepassten Kompromiss zwischen Netzwerkkapazität, Netzwerkdurchsatz und Netzwerklatenz.
  • Es ist offensichtlich schwierig, eine Architektur bereitzustellen, die alle diese Aspekte gleichzeitig in Angriff nimmt. Beispielsweise weist ein einstufiges auf einem Kreuzschienenverteiler beruhendes Netzwerk (single-stage crossbar-based network), das mit einer zentralen Planungsfunktion (scheduler) ausgestattet ist, einerseits einen hohen Durchsatz und eine niedrige Latenz und andererseits eine stark begrenzte Netzwerkkapazität aufgrund von physischen Einschränkungen auf. Des Weiteren sind mehrstufige Netzwerke auf eine größere Anzahl von Anschlüssen erweiterbar, was eine höhere Kapazität bietet, weisen jedoch ungünstigerweise einen begrenzten Durchsatz und gesteigerte Latenzzeiten auf, wobei sie außerdem die Möglichkeit einer Blockierung (congestion) bewältigen müssen.
  • Ein Birkhoff-von-Neumann-Netzwerk mit Lastausgleich, wie es beispielsweise in C.S. Chang et al., „Load-balanced Birkhoff-von-Neumann switches, part I: one-stage buffering", Elsevier Computer Communications, Band 25, Nr. 6, Seiten 611 bis 622, April 2002, offenbart wird, stellt ein Verbindungsnetzwerk mit einer verteilten Steuerung bereit, die eine Erweiterung auf eine sehr hohe Anzahl von Anschlüssen ermöglicht, was zu sehr hohen Gesamtkapazitäten führt. Obwohl es keine zentrale Steuerung gibt, kann das Netzwerk unter jedem zulässigen Datenverkehrsmuster, ob einheitlich (uniform) oder uneinheitlich (non-uniform), einen vollen Durchsatz bereitstellen. Darüber hinaus wird keine Überlastregelung benötigt. Trotz dieser Vorteile besteht ein Nachteil von Netzwerken mit Lastausgleich in ihrer für die anspruchsvolle Umgebung von Rechenzentren unzureichenden Leistungsfähigkeit hinsichtlich der Latenz.
  • Die Latenz eines Netzwerks mit Lastausgleich bei geringer Nutzung entspricht O(N), wobei N die Anzahl von Netzwerkanschlüssen ist, d.h. die Anzahl von mit dem Netz verbundenen Endknoten. In einem Netzwerk mit mehreren tausend Knoten sind die sich ergebenden Zahlen für ein weites Spektrum von Anwendungen eindeutig untragbar. Beispielsweise kann ein Datenpaket p, das durch ein mit 2048 Endknoten verbundenes Netzwerk mit Lastausgleich übertragen wird, eine Verzögerung von 2048 oder mehr Zeitschlitzen im Netz erfahren, selbst wenn keine weiteren konkurrierenden Pakete vorhanden sind. Auch bei einer kurzen Zeitschlitzdauer von etwa 50 ns beträgt die Verzögerung beim Transport des Datenpaketes p durch das Netz bis zu 1/10 ms, was die Anforderungen eines Rechenzentrums an Verzögerungen weit überschreitet.
  • Die Druckschrift DE 37 42 939 A1 offenbart ein Verfahren zur hybriden Paketvermittlung, bei dem zur Verringerung von Speicherplatzbedarf und Verzögerungen sämtliche Pakete in gleichlange Paketteile unterteilt und auf Basis von Unterrahmen vermittelt werden.
  • Die Druckschrift US 6,778,536 B1 offenbart ein kombiniertes WDM, TDM und asynchrones Paketvermittlungsverfahren.
  • Die Druckschrift DE 694 28 107 T2 offenbart eine Implementierung einer Flusssteuerung und einen isochronen Verkehr innerhalb ATM-Vermittlungssystemen.
  • Die Druckschrift US 6 654 342 B1 offenbart ein Verfahren und Vorrichtungen zum Sammeln und Verteilen von Flusssteuerungsinformationen über Aktualisierungsnachrichten und Huckepack-Flusssteuerungsinformationen in anderen Nachrichten.
  • Die Druckschrift US 2009 / 0 052 318 A1 offenbart ein Verfahren, System und Computerprogrammprodukt zum Übertragen von Dateneinheiten, wobei das Verfahren umfasst: Empfangen von Dateneinheiten, die über mehrere Kanäle übertragen werden sollen; und Verhindern einer Übertragung von Dateneinheiten, die über überlastete Kanäle übertragen werden sollen, während Dateneinheiten übertragen werden, die über nicht überlastete Kanäle übertragen werden können.
  • Die Druckschrift US 7 035 220 B1 offenbart eine Technik zur Bereitstellung einer Ende-zu-Ende-Überlastungssteuerung ohne Rückmeldung die von einem verlustfreien Kommunikationsnetzwerk unterstützt wird.
  • Daher besteht eine Aufgabe der vorliegenden Erfindung darin, den Vorteil von Netzwerken mit Lastausgleich hinsichtlich ihres Steuerschemas, ihrer garantierten Bandbreite und ihrer unkomplizierten Auflösung von Blockierungen mit der Bedingung einer geringen Latenz zu kombinieren.
  • Kurzdarstellung der Erfindung
  • Diese Aufgabe wurde gelöst durch das Verfahren zum Übertragen von einem oder mehreren Datenpaketen über ein Netzwerk nach Anspruch 1 und durch das Verfahren zum Übertragen von einem oder mehreren Datenpaketen über ein Verbindungssystem, das Netzwerk und das Verbindungssystem gemäß dem weiteren unabhängigen Anspruch.
  • Weitere Ausführungsformen der vorliegenden Erfindung werden in den abhängigen Unteransprüchen angegeben.
  • Unter einem ersten Aspekt wird ein Verfahren zum Übertragen von einem oder mehreren Datenpaketen von einem ersten Knoten an einen aus einer Vielzahl von zweiten Knoten, die durch ein Koppelnetz (switching network) verbunden sind, bereitgestellt. Darin wird das Datenpaket entsprechend einem Übertragungsmodus vom ersten Knoten an den einen zweiten Knoten übertragen, wobei für jedes Datenpaket ermittelt wird, ob es in Abhängigkeit von einer Netzwerkbedingung entsprechend einem ersten oder einem zweiten Übertragungsmodus übertragen wird. Im ersten Übertragungsmodus wird das Datenpaket entsprechend einem vorgeplanten Schema übertragen, wobei das vorgeplante Schema eine zyklische Eins-zu-eins-Zuweisung (cyclic one-to-one-assignment) zwischen dem ersten und dem zweiten Knoten über Zeitschlitze festlegt, so dass das Datenpaket während des Zeitschlitzes, dessen Eins-zu-eins-Zuweisung dem ersten Knoten den einen zweiten Knoten zuweist, an den zweiten Knoten weitergeleitet wird. Im zweiten Übertragungsmodus wird das Datenpaket während eines gegenwärtigen Zeitschlitzes an den zweiten Knoten übertragen, wobei das vorgeplante Schema aufgehoben wird.
  • Ein Gedanke der vorliegenden Erfindung besteht darin, ein Datenpaket von einem ersten Knoten an einen zweiten Knoten aus einer Anzahl von Ausgangsknoten zu übertragen, wobei in Abhängigkeit von einer Netzwerkbedingung unterschiedliche Übertragungsschemas verwendet werden. Obwohl ein Datenpaket in Netzwerken mit Lastausgleich entsprechend einem von vielen vorgeplanten Zeitschlitzen von einem ersten Knoten an einen zweiten Knoten übertragen wird, kann es vorgesehen werden, dass das Datenpaket in einer Ausnahme zu diesem vorgeplanten Schema vom Quellknoten an den Zielknoten übertragen werden kann, wenn die Netzwerkbedingung dies gestattet.
  • Das obige Verfahren ermöglicht eine Verminderung der Latenz des Netzwerks unter Verwendung eines vorgeplanten Schemas zum Übermitteln von Datenpaketen von einem ersten Knoten an einen zweiten Knoten, wenn die Netzwerkbedingung dies gestattet. Dieses Verfahren kann auch vorteilhaft auf Netzwerke mit Lastausgleich angewandt werden, die eine Zwei-Stufen-Strategie (two step policy) für eine Standardzustellung von Datenpaketen von einem Quellknoten über einen Zwischenknoten an einen Zielknoten aufweisen. Gemäß dem obigen Verfahren wird eine Übertragung von Datenpaketen außerhalb von festgelegten Verbindungsplänen ermöglicht.
  • Des Weiteren kann ermittelt werden, ob das Datenpaket in Abhängigkeit von einer Anzeige einer Netzwerkauslastung gemäß dem ersten Übertragungsmodus oder dem zweiten Übertragungsmodus an den zweiten Knoten übertragen wird. Insbesondere wird die Anzeige der Netzwerkauslastung aufgrund einer Anzahl von im ersten Knoten zwischengespeicherten Datenpaketen ermittelt.
  • Gemäß einer weiteren Ausführungsform kann eine Anzahl von ersten Knoten bereitgestellt werden, wobei einer oder mehrere der ersten Knoten und einer oder mehrere der zweiten Knoten in einer physischen Einheit integriert sind. Das Datenpaket wird direkt vom ersten Knoten an den einen zweiten Knoten übertragen, nicht über das Koppelnetz, wenn der erste Knoten und der eine zweite Knoten in der einen physischen Einheit integriert sind.
  • Überdies kann das Koppelnetz ein mehrstufiges Koppelnetz mit einer Vielzahl von Schaltelementen sein, die als ein Banyan-Netzwerk oder ein Banyan-äquivalentes Netzwerk angeordnet sind, wobei die Schaltelemente Datenpakete entsprechend dem Übertragungsmodus in verschiedenen Warteschlangen zwischenspeichern können.
  • Es kann vorgesehen sein, dass eine Vielzahl von Datenpaketen übertragen wird, wobei eines aus der Vielzahl von Datenpaketen, das entsprechend dem ersten Übertragungsmodus übertragen wird, zumindest in einem der Schaltelemente des Koppelnetzes den Vorrang gegenüber einem anderen aus der Vielzahl von Datenpaketen erhält, das entsprechend dem zweiten Übertragungsmodus übertragen wird.
  • In einem der Schaltelemente kann eines aus der Vielzahl von Datenpaketen, das entsprechend dem zweiten Übertragungsmodus übertragen wird, verworfen werden, wenn eines aus der Vielzahl von Datenpaketen, das entsprechend dem ersten Übertragungsmodus übertragen wird, vom Schaltelement weitergeleitet wird.
  • Unter einem weiteren Aspekt wird ein Verfahren zum Übertragen eines Datenpaketes durch ein Verbindungssystem mit einer Anzahl von Quellknoten, einer Anzahl von Zwischenknoten und einer Anzahl von Zielknoten bereitgestellt, wobei die Quellknoten und die Zwischenknoten über ein erstes Koppelnetz und die Zwischenknoten und die Zielknoten über ein zweites Koppelnetz verbunden sind, wobei das Verbindungsnetzwerk geeignet ist, das Datenpaket unter Verwendung des obigen Verfahrens über das erste Koppelnetz vom Quellknoten zum Zwischenknoten und unter Verwendung des obigen Verfahrens durch das zweite Koppelnetz vom Zwischenknoten zum Zielknoten zu übertragen.
  • Wenn die Netzwerkbedingung es zulässt, kann außerdem vorgesehen sein, dass der Quellknoten das Datenpaket an einen Zwischenknoten übertragen kann, an den das Datenpaket tatsächlich im aktuellen Zeitschlitz übertragen werden kann. Für die Zustellung des Datenpaketes vom Zwischenknoten an den Zielknoten kann das obige Verfahren angewandt werden, so dass eine Ausnahme vom vorgeplanten Schema möglich ist, wenn die Netzwerkbedingung es zulässt, und das Datenpaket wird in einem aktuellen Zeitschlitz, der nicht der vorgeplante Zeitschlitz ist, vom Zwischenknoten an den Zielknoten übertragen.
  • Außerdem können ein oder mehrere der Zwischenknoten und ein oder mehrere der Zielknoten in einer physischen Einheit integriert werden, wobei das Datenpaket entsprechend dem zweiten Übertragungsmodus vom Quellknoten an den Zwischenknoten übertragen wird, wenn der Zielknoten, an den das Datenpaket übertragen werden muss, in derselben physischen Einheit integriert ist wie der Zwischenknoten.
  • Es kann vorgesehen sein, dass der Quellknoten eingehende Datenpakete mit einer von einer Netzwerkauslastung abhängigen Einspeisungsrate in das erste Koppelnetz einspeist.
  • Insbesondere wird die Netzwerkauslastung aufgrund einer Anzahl von Datenpaketen ermittelt, die im Quellknoten und/oder Zwischenknoten zwischengespeichert sind.
  • Unter einem weiteren Aspekt wird ein Netzwerk zum Übertragen von einem oder mehreren Datenpaketen bereitgestellt. Das Netzwerk weist auf:
    • - einen ersten Knoten;
    • - eine Anzahl von zweiten Knoten;
    • - ein Koppelnetz, das den ersten Knoten mit der Anzahl von zweiten Knoten verbindet, wobei das Netzwerk geeignet ist, für jedes Datenpaket zu ermitteln, ob es in Abhängigkeit von einer Netzwerkbedingung entsprechend einem ersten oder einem zweiten Übertragungsmodus übertragen wird,

    wobei das Datenpaket im ersten Übertragungsmodus gemäß einem vorgeplanten Schema an den zweiten Knoten übertragen wird, wobei das vorgeplante Schema eine zyklische Eins-zu-eins-Zuweisung zwischen dem ersten Knoten und dem zweiten Knoten über Zeitschlitze festlegt, so dass das Datenpaket während des Zeitschlitzes, dessen Eins-zu-eins-Zuweisung dem ersten Knoten den einen zweiten Knoten zuweist, an den zweiten Knoten weitergeleitet wird;
    wobei das Datenpaket im zweiten Übertragungsmodus während eines gegenwärtigen Zeitschlitzes an den zweiten Knoten übertragen wird, wobei das vorgeplante Schema aufgehoben wird.
  • Unter einem weiteren Aspekt wird ein Verbindungssystem bereitgestellt. Das Netz weist auf:
    • - eine Anzahl von Quellknoten,
    • - eine Anzahl von Zwischenknoten;
    • - eine Anzahl von Zielknoten,
    • - ein erstes Koppelnetz zum Verbinden der Quellknoten und der Zwischenknoten; und
    • - ein zweites Koppelnetz zum Verbinden der Zwischenknoten und der Zielknoten,
    wobei das Verbindungsnetzwerk geeignet ist, das Datenpaket unter Verwendung des obigen Verfahrens durch das erste Koppelnetz vom Quellknoten an den Zwischenknoten und ebenfalls unter Verwendung des obigen Verfahrens durch das zweite Koppelnetz vom Zwischenknoten an den Zielknoten zu übertragen.
  • Unter einem weiteren Aspekt wird ein Computerprogrammprodukt bereitgestellt, das Softwarecodeteile beinhaltet, die in einen internen Speicher einer Datenverarbeitungseinheit geladen werden können, wobei, wenn die Softwarecodeteile in der Datenverarbeitungseinheit ausgeführt werden, die obigen Schritte in einem Netzwerk ausgeführt werden.
  • Figurenliste
  • Bevorzugte Ausführungsformen der vorliegenden Erfindungen werden ausführlich in Verbindung mit den beigefügten Zeichnungen beschrieben, in denen:
    • 1 ein generisches Netzwerk mit Lastausgleich zeigt;
    • 2 eine physische Implementierung des Netzwerks mit Lastausgleich von 1 zeigt;
    • 3 eine Topologie des Verbindungsnetzwerks mit mehrstufigen Koppelnetzen mit 2x2 Schaltelementen zeigt; und
    • 4 einen Ablaufplan zum Veranschaulichen der Schritte des Verfahrens zum Betreiben eines Verbindungsnetzwerks zeigt.
  • Beschreibung von bevorzugten Ausführungsformen
  • 1 zeigt schematisch eine logische Implementierung eines generischen Verbindungsnetzwerks 1 mit Lastausgleich. Das Netzwerk 1 hat eine Anzahl von N Ursprungsadaptern 2, bei denen die Datenpakete in das Verbindungsnetzwerk eintreten. Darüber hinaus werden N Zielknoten 3 bereitgestellt, bei denen die Datenpakete das Netz verlassen. Das Verbindungsnetzwerk 1 hat zwei Koppelnetze, ein erstes und ein zweites Koppelnetz 4, 5, die durch eine dazwischenliegende Stufe von N Zwischenknoten 6 getrennt sind, welche die von den Quellknoten 2 an die Zielknoten 3 übermittelten Datenpakete zwischenspeichern. Das erste Koppelnetz 4 ist geeignet, die Quellknoten 2 mit den Zwischenknoten 6 zu verbinden, und das zweite Koppelnetz 5 ist geeignet, die Zwischenknoten 6 mit den Zielknoten 3 zu verbinden.
  • Im Netzwerk mit Lastausgleich von 1 dient das erste Koppelnetz 4 dazu, die Last des Datenverkehrs, die von jedem spezifischen Quellknoten 2 eintritt und für einen spezifischen Zielknoten 3 bestimmt ist, gleichmäßig über alle Zwischenknoten 6 zu verteilen. Die Weiterleitung von Datenpaketen von den Zwischenknoten 6 an die Zielknoten 3 wird unter Verwendung des zweiten Koppelnetzes 5 erreicht. Im Netzwerk mit Lastausgleich von 1 erfolgt die gesamte Netzwerkoperation im Allgemeinen mit Hilfe von Zeitschlitzen.
  • Datenpakete, die in einem gegebenen Zeitschlitz an den Quellknoten 2 eintreffen, werden ungeachtet des Zielknotens 6 des betreffenden Datenpakets entsprechend einer Eins-zu-eins-Zuweisung (Permutation) von Quellknoten 2 zu Zwischenknoten 6 durch das erste Koppelnetz 4 geleitet. Diese Zuweisung wird auf eine zyklische Weise von einem Zeitschlitz zum nächsten Zeitschlitz geschoben, so dass jede Eins-zu-eins-Zuweisung eines Quellknotens 2 zu einem Zwischenknoten 6 im Laufe von N Zeitschlitzen genau einmal bedient wird.
  • Normalerweise benötigen Netzwerke mit Lastausgleich keine Warteschlangen zum Zwischenspeichern von Datenpaketen in den Quellknoten 2, da eingehende Datenpakete im Allgemeinen sofort an den entsprechenden Zwischenknoten 6 weitergeleitet werden, wie durch die Eins-zu-eins-Zuweisung im aktuellen Zeitschlitz festgelegt wurde. Daher wird die Zwischenspeicherung von eingehenden Datenpaketen von den Zwischenknoten 6 ausgeführt.
  • Jeder Zwischenknoten 6 hat eine Anzahl von N virtuellen Ausgangswarteschlangen, eine für jeden verbundenen Zielknoten 3, in der er die empfangenen eingehenden Datenpakete entsprechend der Adresse des Zielknotens 3, an den sie gesendet werden sollen, speichert. Im zweiten Koppelnetz 5 werden die Datenpakete in jedem der Zwischenknoten 6 entsprechend einer Eins-zu-eins-Zuweisung der N virtuellen Ausgangswarteschlangen der Zwischenknoten 6 zu den N Zielknoten 3 bedient. Die Eins-zu-eins-Zuweisung wird synchron mit dem ersten Koppelnetz 4 auf eine zyklische Weise von Zeitschlitz zu Zeitschlitz geschoben, so dass jede Verbindung zwischen einem Zwischenknoten und einem Ausgangsknoten 3 in allen N Zeitschlitzen genau einmal bedient wird. Gegenüber dem ersten Koppelnetz 4 besteht der Hauptunterschied in der Art der Bedienung darin, dass das Datenpaket im zweiten Koppelnetz 5 nur bedient wird, wenn es an seinen vorgesehenen Zielknoten 3 weitergeleitet werden kann.
  • Aufgrund der gleichmäßigen Datenverteilung in den Zwischenknoten 6 liegt die eingehende Last auf jede virtuelle Ausgangswarteschlange in den Zwischenknoten 6 für zulässigen Datenverkehr unter 1/N. Folglich kann das zweite Koppelnetz 5 die Belastung aller virtuellen Ausgangswarteschlangen der Zwischenknoten 6 bewältigen, indem es jede von ihnen einmal alle N Zeitschlitze bedient. Das Netzwerk 1 mit Lastausgleich erreicht dies unter Verwendung eines feststehenden periodischen Zeitplans, der einen Satz von Zuweisungen von Zwischenknoten 6 zu Zielknoten 3 zirkulär auswählt, wobei jede einmal alle N Zeitschlitze auftritt. Die Datenverkehrsverteilung kann auch realisiert werden, wenn das erste Koppelnetz 4 einen Satz von feststehenden Quellknoten-Zielknoten-Permutationen zirkulär besucht. Jede erfolgt einmal alle N Zeitschlitze. Dieses Funktionsschema ist ausreichend für ein Netzwerk mit Lastausgleich, um einen Durchsatz mit einer zulässigen mittleren Rate für eingehenden Datenverkehr zu gewährleisten.
  • Die einfache Verteilungssteuerung von Netzwerken mit Lastausgleich entsprechend der oben beschriebenen Topologie ermöglicht eine Erweiterung auf eine sehr große Anzahl von Anschlüssen und auf hohe Gesamtkapazitäten. Außerdem kann das Netzwerk mit Lastausgleich einen vollen Durchsatz unter jedem zulässigen Datenverkehrsmuster bereitstellen, und die Möglichkeit von Blockierungsbäumen (congestion trees) entfällt. Der Hauptnachteil eines solchen Netzes besteht jedoch in der Netzwerklatenz. Selbst bei äußerst niedrigen Nutzungsraten kann ein Datenpaket bis zu N Zeitschlitze benötigen, um sein Ziel zu erreichen, wobei N die Anzahl von Netzanschlüssen und ein Zeitschlitz die Laufzeit eines Paketes mit fester Größe in der Verbindung ist. Diese Latenz entsteht hauptsächlich im Zwischenknoten 6, wo ein Datenpaket möglicherweise bis zu N-1 Zeitschlitze auf eine Gelegenheit zur Weiterleitung an seinen Zielknoten warten muss.
  • Jedem Knoten wird eine eindeutige Nummer von 0 bis N-1 zugewiesen. Im Zeitschlitz t überträgt ein Quellknoten 2 mit einer Nummer k ein Datenpaket an einen Zwischenknoten (t+k) mod N. Da Datenpakete, die dieser Quellknoten 2 in jedem spezifischen Zeitschlitz einspeist, für verschiedene Zwischenknoten 6 bestimmt sind, ist im ersten Koppelnetz 4 kein Ausgangskonflikt (output contention) möglich. In ähnlicher Weise bedient der Zwischenknoten 6 mit der Nummer k im Zeitschlitz t die dem Zielknoten (t+k) mod N zugewiesene virtuelle Ausgangswarteschlange und bliebt betriebsbereit, wenn diese virtuelle Ausgangswarteschlange leer ist. Folglich gibt es auch keinen Ausgangskonflikt im zweiten Koppelnetz.
    Obwohl das erste und das zweite Koppelnetz 4, 5 lediglich einstufige Kreuzschienenverteiler sein können, muss es sich um mehrstufige Netze aus mehreren Kreuzschienenverteilern handeln, wenn eine Erweiterung auf eine große Zahl von Anschlüssen ermöglicht werden soll.
  • 2 zeigt eine physische Implementierung des Netzwerks mit Lastausgleich von 1. In der praktischen Implementierung wird nur eine Anzahl von N physischen Einheiten verwendet, die mindestens einen Quellknoten, mindestens einen Zwischenknoten und mindestens einen Zielknoten in einer physischen Einheit kombinieren. Jede solche physische Einheit hat einen Datenpaketeingang DI, einen Datenpaketausgang DO und zwei bidirektionale Netzwerkverbindungen SN1, SN2, eine für jedes Koppelnetz.
  • Zum Verringern der Latenz des oben beschriebenen Netzwerks mit Lastausgleich wird hierin ein Verfahren zum Betreiben eines solchen Netzes vorgeschlagen, welches das Übertragen von Datenpaketen außerhalb der festgelegten Verbindungspläne ermöglicht, wie sie durch die oben beschriebene zyklische Sequenz von Eins-zu-eins-Zuweisungen festgelegt werden. Ein Vorteil wird aus der praktischen Implementierung gezogen, die beinhaltet, dass jede physische Einheit normalerweise einen Quellknoten, einen Zwischenknoten und einen Zielknoten enthält. Eine Folge einer solchen Implementierung besteht darin, dass, wenn ein Datenpaket an einen Zwischenknoten weitergeleitet werden muss, der in derselben physischen Einheit wie der Zielknoten enthalten ist, keine Notwendigkeit besteht, das Datenpaket durch das zweite Koppelnetz zu leiten.
  • In der folgenden Beschreibung werden Datenpakete, die entsprechend dem Eins-zu-eins-Zuweisungsschema übertragen werden, als „vorgeplante“ Pakete bezeichnet werden, während Pakete, die außerhalb des festgelegten Verbindungsplans übertragen werden müssen, als „ungeplante“ („eager“) Datenpakete bezeichnet werden.
  • Einspeisungen von ungeplanten Datenpaketen können sowohl im ersten Koppelnetz 4 als auch im zweiten Koppelnetz 5 erfolgen, so dass im Allgemeinen vier verschiedene Verfahren zum Übermitteln eines Datenpakets von einem der Quellknoten 2 an einen der Zielknoten möglich sind:
    1. 1. Gemäß dem vorab festgelegten Plan des ersten Koppelnetzes 4 wird ein Paket vom Quellknoten 2 an den Zwischenknoten 6 weitergleitet, der seinem Zielknoten 3 entspricht, da der Zielknoten 3 in derselben physischen Einheit wie der Zwischenknoten 6 enthalten ist (Verfahren mit einem Verbindungsschritt (one-hop method)).
    2. 2. Das Datenpaket wird ungeplant, d.h. nicht dem Eins-zu-eins-Zuweisungsplan des ersten Koppelnetzes 4 folgend, an den Zwischenknoten 6 weitergeleitet, der seinem Zielknoten 3 entspricht, da der Zielknoten 3 in derselben physischen Einheit wie der Zwischenknoten 6 enthalten ist (beschleunigtes Verfahren mit einem Verbindungsschritt (expedited one-hop method)).
    3. 3. Gemäß dem Eins-zu-eins-Zuweisungsplan des ersten Koppelnetzes 4 wird das Datenpaket an einen der Zwischenknoten 6 weitergeleitet, der nicht seinem Zielknoten 3 entspricht, da sich der Zielknoten 3 nicht in derselben physischen Einheit wie der Zwischenknoten 6 befindet, und wird anschließend gemäß dem Eins-zu-eins-Zuweisungsplan des zweiten Koppelnetzes 5 an seinen Zielknoten 3 weitergeleitet (Verfahren mit zwei Verbindungsschritten (two-hop method)).
    4. 4. Gemäß dem Eins-zu-eins-Zuweisungsplan des ersten Koppelnetzes 4 wird das Datenpaket an einen Zwischenknoten 6 weitergeleitet, der nicht seinem Zielknoten entspricht, da sich der Zielknoten 3 nicht in derselben physischen Einheit wie der Zwischenknoten 6 befindet, und wird anschließend ungeplant, d.h. außerhalb des Eins-zu-eins-Zuweisungsplans des zweiten Koppelnetzes 5, an seinen Zielknoten 3 weitergeleitet (beschleunigtes Verfahren mit zwei Verbindungsschritten (expedited two-hop method)).
  • Grundsätzlich kann die ungeplante Einspeisung von Datenpaketen sowohl für das erste Koppelnetz 4 als auch für das zweite Koppelnetz 5 oder nur für eines dieser Koppelnetze 4, 5 verwendet werden. In einer bevorzugten Ausführungsform wird die ungeplante Einspeisung von Datenpaketen zumindest für das erste Koppelnetz 4 ausgeführt, da aufgrund des Umgehens des zweiten Koppelnetzes 5 eine deutliche Latenzverringerung erreicht werden kann.
  • Netzwerke mit Lastausgleich, beispielsweise ein Netzwerk, wie es in 1 gezeigt wird, können Koppelnetze beinhalten, die als mehrstufige Verbindungsnetzwerke implementiert werden könnten. Beispielsweise kann jedes Koppelnetz unter Verwendung eines Omega-Netzwerks implementiert werden, z.B. unter Verwendung von zwei 8x8-Omega-Netzwerken, von denen jedes drei Stufen von vier 2x2-Schaltelementen 7 umfasst. Ein solches Koppelnetz wird in 3 gezeigt. Obwohl die Schaltelemente 7 in der Praxis erwartungsgemäß eine größere Anzahl von Anschlüssen aufweisen, beispielsweise 32, 64 oder mehr, sollte berücksichtigt werden, dass ein auf diese Weise implementiertes Netzwerk möglicherweise deutlich weniger Kosten als ein Fat-Tree-Netzwerk verursacht, wobei es gleichzeitig eine Eins-zu-eins-Redundanz bereitstellt.
  • Jeder Quellknoten 2 und jeder Zwischenknoten 6 können so angepasst werden, dass sie die eingehenden Pakete entsprechend ihrem Zielknoten 3 in virtuellen Ausgangswarteschlangen speichern. Ein entsprechend dem normalen Verfahren mit zwei Verbindungsschritten übertragenes Datenpaket wird zuerst von seinem Quellknoten 2 an einen vorgeplanten Zwischenknoten 6 und entsprechend dem vorgeplanten Schema vom Zwischenknoten 6 an seinen Zielknoten 3 weitergeleitet, genau wie es im vorhandenen Netzwerk mit Lastausgleich der Fall war. Die Verzögerung der Datenpakete in den Zwischenknoten 6 kann so lange wie N Zeitschlitze sein, bis das zweite Koppelnetz 5 die Eins-zu-eins-Zuweisung bietet, welche das Datenpaket an seinen Zielknoten 3 weiterleitet.
  • Diese Verzögerung kann vermieden werden, indem das beschleunigte Verfahren mit einem Verbindungsschritt oder das beschleunigte Verfahren mit zwei Verbindungsschritten verwendet wird. Die Entscheidung darüber, welches der Transportverfahren für das Datenpaket gewählt wird, kann getroffen werden, sobald das Datenpaket die Head-of-Line-Position seiner entsprechenden virtuellen Ausgangswarteschlange des Zwischenknotens 6 für das beschleunigte Verfahren mit zwei Verbindungsschritten erreicht. Jedoch bleibt das Paket jedes Mal, wenn die Entscheidung hinsichtlich der Auswahl des Transportschemas neu bewertet wird, in der Head-of-Line-Position der betreffenden Warteschlange.
  • 4 zeigt ausführlich einen Ablaufplan, der die Schritte für eine Ausführungsform der vorliegenden Erfindung veranschaulicht. Im Schritt S1 trifft ein Datenpaket in einem der Quellknoten 2 ein, wobei es für einen der Zielknoten 3 bestimmt ist. Im Schritt S2 wird ermittelt, ob das vorgeplante Schema einen/den Zwischenknoten zuweist, der sich in derselben physischen Einheit wie der Zielknoten 3 befindet, an den das Datenpaket gesendet werden soll. In diesem Fall (Alternative: ja) wird das Datenpaket im Schritt S3 sofort an den Zwischen-/Zielknoten übertragen.
  • Wenn im Schritt S2 festgestellt wird, dass das vorgeplante Schema keinen Zwischenknoten 6 bietet, der dem Zielknoten 3 entspricht (Alternative: nein), wird im Schritt S4 ermittelt, ob die Netzauslastung/-nutzung über einem vorab festgelegten Schwellenwert liegt. Ist dies nicht der Fall (Alternative: nein), wird das Datenpaket im Schritt S5 als ein ungeplantes Paket direkt an den Zielknoten 3 übertragen, wobei das vorgeplante Schema ignoriert wird. Wenn es sich im Schritt S4 herausstellt, dass die Netzauslastung/-nutzung über einem vorab festgelegten Schwellenwert liegt (Alternative: ja), wird das Datenpaket im Schritt S6 entsprechend der Eins-zu-eins-Zuweisung an den vorgeplanten Zwischenknoten 6 weitergeleitet.
  • Im Schritt S7 wird ermittelt, ob die Netzauslastung/-nutzung über einem vorab festgelegten Schwellenwert liegt. Ist dies der Fall (Alternative: ja), wird das im Zwischenknoten 6 zwischengespeicherte Datenpaket im Schritt S8 entsprechend der vorgeplanten Eins-zu-eins-Zuweisung im entsprechenden Zeitschlitz an den Zielknoten 3 übertragen. Andernfalls (Alternative: nein) wird das Datenpaket im Schritt S9 als ungeplantes Datenpaket vom Zwischenknoten 6 an den Zielknoten 3 übertragen, wobei das vorgeplante Schema aufgehoben wird.
  • Gemäß der obigen Beschreibung kann eine Festlegung der Weiterleitung des Datenpakets die Auswirkung haben, dass ungeplante Datenpakete vorherrschen, wenn die Netzwerkauslastung/-nutzung gering ist, wodurch den Koppelnetzen 4, 5 die Bewältigung der Last ermöglicht wird. Um einen hohen Durchsatz bei hohen Netzwerklasten aufrechtzuerhalten, sollten jedoch vorgeplante Pakete allmählich überwiegen, wenn die Netzwerkauslastung und die Konkurrenzsituation zunehmen. Zum Unterdrücken der ungeplanten Weiterleitung von Datenpaketen bei hohen Netzwerklasten kann die physische Einheit den Rückstau (backlog) von Datenpaketen in den virtuellen Ausgangswarteschlangen berücksichtigen. Mit anderen Worten, wenn die Anzahl von Datenpaketen, die sich gegenwärtig in der virtuellen Ausgangswarteschlange eines Quellknotens 2 befinden, plus der Anzahl von Datenpaketen, die sich gegenwärtig in den virtuellen Ausgangswarteschlangen des entsprechenden physisch in der derselben Einheit implementierten Zwischenknotens befinden, einen vorab festgelegten Schwellenwert TH überschreitet, wird eine ungeplante Weiterleitung von Datenpaketen von diesem Quellknoten 2 und dem Zwischenknoten 6 verhindert. Mit anderen Worten, ungeplante Datenpaketeinspeisungen werden nur gestattet, wenn diese Summe geringer als oder gleich groß wie der Schwellenwert TH ist.
  • In einer möglichen Ausführungsform, die diesem generischen Schema folgt, enthält jedes Schaltelement des ersten Koppelnetzes 4 eine kleine Paketwarteschlange für jeden Ausgangsknoten. Diese kleinen Paketwarteschlangen werden lediglich zum Speichern von ungeplanten Datenpaketen verwendet. Vorgeplante Datenpakete konkurrieren nie miteinander, da diejenigen, die im selben Zeitschlitz eingespeist werden, eine zyklische Eins-zu-eins-Zuweisung bilden und stets neue oder zwischengespeicherte ungeplante Datenpakete, die mit ihnen um einen Schaltelementausgang konkurrieren, überholen. Im Grunde müssen vorgeplante Datenpakete in den Schaltelementen nie in eine Warteschlange gestellt werden und werden in einem entsprechenden Knoten oder Schaltelement nie durch Ablaufsteuerungssignale blockiert. Andererseits kann ein ungeplantes Datenpaket mit anderen ungeplanten Datenpaketen oder mit vorgeplanten Datenpaketen konkurrieren. Wenn es eine Konkurrenzsituation zwischen einem ungeplanten Datenpaket und einem vorgeplanten Datenpaket gibt, erhält das vorgeplante Datenpaket den Vorrang, während das ungeplante Datenpaket in einer Datenpaketwarteschlange im Schaltelement des betreffenden Koppelnetzes oder des betreffenden Knotens gespeichert wird, in dem der Konflikt stattfindet. Wenn ein ungeplantes Datenpaket mit einem anderen ungeplanten Datenpaket konkurriert, wird einem von diesen die Weiterleitung gestattet und das andere wird in eine Warteschlange gestellt. Die Priorisierung zwischen diesen kann z.B. entsprechend dem Zeitpunkt ihres Stellens in die Warteschlange erfolgen, d.h. je länger ein Datenpaket wartet, desto höher ist die Priorität.
  • Gemäß dem obigen Verfahren wird ein beliebiges ungeplantes Datenpaket, das bei hoher Auslastung eingespeist wurde, das Vorankommen der vorgeplanten Datenpakete, die in diesem Regime normalerweise vorherrschen und die einen hohen Durchsatz aufrechterhalten können, nicht verzögern.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung werden ungeplante Datenpakete unter gleichen Bedingungen in den Koppelnetzen mit vorgeplanten Datenpaketen gemultiplext. In diesem Fall können sowohl die ungeplanten Datenpakete als auch die vorgeplanten Datenpakete in Netzwerkpuffern gespeichert werden, und eine Arbitrierungseinrichtung (arbiter) am Ausgang jedes Schaltelements der Koppelnetze sorgt dafür, dass alle Pakete, ob ungeplant oder vorgeplant, gleichermaßen bedient werden.
  • Diese Ausführungsform ändert die grundlegenden Regeln des Lastausgleichs dahingehend, dass vorgeplante Datenpakete in den Koppelnetzen 4, 5 Warteschlangenverzögerungen erfahren können. Wenn vorgeplante Datenpakete in den Koppelnetzen in eine Warteschlange gestellt werden können, widerspricht dies der Zeitabfolge der vorgeplanten Eins-zu-eins-Zuweisung zwischen Knoten, und folglich können die vorgeplanten Datenpakete in Konkurrenz zueinander stehen. Die vorgeplanten Datenpakete werden jedoch immer noch gleichmäßig über alle Ausgänge der Koppelnetze 4, 5 verteilt, d.h., es handelt sich um ein Verkehrsmuster, das bekanntermaßen in der Lage ist, die Datenpakete bei vollem Durchsatz in gepufferten Omega-Netzwerken zu handhaben.
  • Andererseits können ungeplante Datenpakete nicht immer gleichmäßig über alle Ausgänge der Koppelnetze 4, 5 verteilt werden. In einigen Fällen können ungeplante Datenpakete sogar einen Blockierungsbaum in den Koppelnetzen 4, 5 verursachen. Selbst wenn die Quellknoten 2 auf ein solches Ereignis reagieren, indem sie ungeplante Einspeisungen stoppen, kann der Blockierungsbaum bestehen bleiben, wenn die Quellknoten 2 die Einspeisung ungeplanter Datenpakete mit voller Rate fortsetzen. Dies könnte den tatsächlichen Durchsatz der Koppelnetze 4, 5 deutlich verringern. Um eine solche Verminderung des Durchsatzes zu verhindern, können gesonderte Paketwarteschlangen verwaltet und es kann eine gewichtete (discriminated) Ablaufsteuerung für vorgeplante und ungeplante Datenpakete verwendet werden. Alternativ können die Quellknoten 2 veranlasst werden, ihre Gesamteinspeisungsrate immer dann, wenn ein Schwellenwert TH überschritten wird, für eine programmierbare Zeitspanne zu verringern.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung die für eine gänzlich optische Netzwerkimplementierung geeignet ist, beinhalten die Schaltelemente des Koppelnetzes keine internen Paketwarteschlangen. Dies bedeutet, dass ungeplante Datenpakete nicht in den Koppelnetzen gespeichert werden können, so dass sie verworfen werden, wenn sie im Koppelnetz mit vorgeplanten Datenpaketen konkurrieren. Anstelle eines direkten Verwerfens ungeplanter Datenpakete, die mit vorgeplanten Datenpaketen konkurrieren, kann im optischen Netzwerk alternativ ein erneutes Übertragen der ungeplanten Datenpakete ausgeführt werden, um diese über eine andere Wellenlänge zu übermitteln. Wenn die andere Wellenlänge nicht verfügbar ist, werden die ungeplanten Datenpakete verworfen.
  • Wenn es einen Verbindungskonflikt zwischen ungeplanten Datenpaketen gibt, wird einem der ungeplanten Datenpakete in ähnlicher Weise eine Weiterleitung gestattet, und der Rest der Datenpakete wird verworfen. Zum Wiederherstellen verworfener Datenpakete verwenden der Quellknoten und der Zielknoten ein zuverlässiges Zustellungsprotokoll, wobei die Quellknoten 2 eine Kopie von jedem ungeplanten Datenpaket, das sie einspeisen, aufbewahren, bis sie eine Bestätigungsnachricht vom Zielknoten 3 oder vom Zwischenknoten 6 erhalten, die den ordnungsgemäßen Empfang des Datenpakets bestätigt. Wenn diese Bestätigungsnachricht nicht innerhalb eines Zeitlimits nach der Einspeisung eintrifft, sendet der Quellknoten 2 das Datenpaket erneut, beispielsweise in einem erzwungenen vorgeplanten Modus (forced prescheduled mode).
  • Referenzl iste
  • 1
    Verbindungsnetzwerk
    2
    Quellknoten
    3
    Zielknoten
    4
    Erstes Koppelnetz
    5
    Zweites Koppelnetz
    6
    Zwischenknoten
    7
    Schaltelement

Claims (14)

  1. Verfahren zum Übertragen von einem oder mehreren Datenpaketen von einem ersten Knoten (2, 6) an einen aus einer Anzahl von zweiten Knoten (6, 3), die durch ein Koppelnetz (4, 5) verbunden sind, wobei das Datenpaket entsprechend einem Übertragungsmodus vom ersten Knoten (2, 6) an den einen zweiten Knoten (6, 3) übertragen wird, wobei für jedes Datenpaket in Abhängigkeit von einer Netzwerkbedingung ermittelt wird, ob es entsprechend einem ersten oder einem zweiten Übertragungsmodus übertragen wird; wobei das Datenpaket im ersten Übertragungsmodus entsprechend einem vorgeplanten Schema an den zweiten Knoten (6, 3) übertragen wird, wobei das vorgeplante Schema eine zyklische Eins-zu-eins-Zuweisung zwischen dem ersten (2, 6) und dem zweiten Knoten (6, 3) über Zeitschlitze festlegt, so dass das Datenpaket während des Zeitschlitzes, dessen Eins-zu-eins-Zuweisung dem ersten Knoten (2, 6) den einen zweiten Knoten (6, 3) zuweist, an den zweiten Knoten (6, 3) übertragen wird; wobei das Datenpaket im zweiten Übertragungsmodus während eines gegenwärtigen Zeitschlitzes an den zweiten Knoten (6, 3) übertragen wird, wobei das vorgeplante Schema aufgehoben wird.
  2. Verfahren nach Anspruch 1, wobei in Abhängigkeit von einer Anzeige einer Netzwerkauslastung ermittelt wird, ob das Datenpaket entsprechend dem ersten Übertragungsmodus oder dem zweiten Übertragungsmodus an den zweiten Knoten (6, 3) übertragen wird.
  3. Verfahren nach Anspruch 2, wobei die Netzwerkauslastung auf der Grundlage einer Anzahl von im ersten Knoten (2, 6) zwischengespeicherten Datenpaketen ermittelt wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, wobei eine Anzahl von ersten Knoten (2, 6) bereitgestellt wird, wobei einer oder mehrere der ersten Knoten (2, 6) und einer oder mehrere der zweiten Knoten (6, 3) in einer physischen Einheit integriert sind, wobei das Datenpaket nicht über das Koppelnetz (4, 5) direkt vom ersten Knoten (2, 6) an den einen zweiten Knoten (6, 3) übertragen wird, wenn der erste Knoten (2, 6) und der eine zweite Knoten (6, 3) in der einen physischen Einheit integriert sind.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei das Koppelnetz (4, 5) ein mehrstufiges Koppelnetz mit einer Vielzahl von Schaltelementen ist, die als ein Banyan-Netzwerk oder ein Banyan-äquivalentes Netzwerk angeordnet sind, wobei die Schaltelemente (7) Datenpakete entsprechend dem Übertragungsmodus in verschiedenen Warteschlangen zwischenspeichern.
  6. Verfahren nach Anspruch 5, wobei eine Vielzahl von Datenpaketen übertragen wird, wobei in mindestens einem der Schaltelemente (7) des Koppelnetzes (4, 5) eines aus der Vielzahl von Datenpaketen, das entsprechend dem ersten Übertragungsmodus übertragen wird, den Vorrang vor einem anderen aus der Vielzahl von Datenpaketen erhält, das entsprechend dem zweiten Übertragungsmodus übertragen wird.
  7. Verfahren nach Anspruch 6, wobei in einem der Schaltelemente (7) eines aus der Vielzahl von Datenpaketen, das entsprechend dem zweiten Übertragungsmodus übertragen wird, verworfen wird, wenn eines aus der Vielzahl von Datenpaketen, das entsprechend dem ersten Übertragungsmodus übertragen wird, vom Schaltelement (7) weitergeleitet wird.
  8. Verfahren zum Übertragen eines Datenpakets durch ein Verbindungsnetzwerk mit einer Anzahl von Quellknoten (2), einer Anzahl von Zwischenknoten (6) und einer Anzahl von Zielknoten (3), wobei die Quellknoten (2) und die Zwischenknoten (6) über ein erstes Koppelnetz (4) verbunden sind und die Zwischenknoten (6) und die Zielknoten (3) über ein zweites Koppelnetz (5) verbunden sind, wobei das Verbindungsnetzwerk (1) geeignet ist, das Datenpaket unter Verwendung des Verfahrens nach einem der Ansprüche 1 bis 7 durch das erste Koppelnetz (4) vom Quellknoten (2) an den Zwischenknoten (6) und unter Verwendung des Verfahrens nach einem der Ansprüche 1 bis 7 durch das zweite Koppelnetz (5) vom Zwischenknoten (6) an den Zielknoten (3) zu übertragen.
  9. Verfahren nach Anspruch 8, wobei einer oder mehrere der Zwischenknoten (6) und einer oder mehrere der Zielknoten (3) in einer physischen Einheit integriert sind. wobei das Datenpaket entsprechend dem zweiten Übertragungsmodus vom Quellknoten (2) an den Zwischenknoten (6) übertragen wird, wenn der Zielknoten, an den das Datenpaket übertragen werden muss, in derselben physischen Einheit wie der Zwischenknoten (6) integriert ist.
  10. Verfahren nach Anspruch 8 oder 9, wobei der Quellknoten (2) eingehende Datenpakete mit einer von einer Netzwerkauslastung abhängigen Einspeisungsrate in das erste Koppelnetz einspeist.
  11. Verfahren nach einem der Ansprüche 8 bis 10, wobei die Netzwerkauslastung auf der Grundlage einer Anzahl von Datenpaketen ermittelt wird, die im Quellknoten (2) und/oder im Zwischenknoten (6) zwischengespeichert sind.
  12. Netzwerk zum Übertragen von einem oder mehreren Datenpaketen, wobei das Netzwerk aufweist: - einen ersten Knoten (2, 6); - eine Anzahl von zweiten Knoten (6, 3); - ein Koppelnetz (4, 5), das den ersten Knoten (2, 6) mit der Anzahl von zweiten Knoten (6, 3) verbindet, wobei das Netzwerk geeignet ist, für jedes Datenpaket in Abhängigkeit von einer Netzwerkbedingung zu ermitteln, ob es entsprechend einem ersten oder einem zweiten Übertragungsmodus übertragen wird, wobei das Datenpaket im ersten Übertragungsmodus entsprechend einem vorgeplanten Schema an den zweiten Knoten (6, 3) übertragen wird, wobei das vorgeplante Schema eine zyklische Eins-zu-eins-Zuweisung zwischen dem ersten (2, 6) und dem zweiten Knoten (6, 3) über Zeitschlitze festlegt, so dass das Datenpaket während des Zeitschlitzes, dessen Eins-zu-eins-Zuweisung dem ersten Knoten (2, 6) den einen zweiten Knoten (6, 3) zuweist, an den zweiten Knoten (6, 3) weitergeleitet wird; wobei das Datenpaket im zweiten Übertragungsmodus während eines gegenwärtigen Zeitschlitzes an den zweiten Knoten übertragen wird, wobei das vorgeplante Schema aufgehoben wird.
  13. Verbindungsnetzwerk, aufweisend: - eine Anzahl von Quellknoten (2), - eine Anzahl von Zwischenknoten (6); - eine Anzahl von Zielknoten (3), - ein erstes Koppelnetz (4) zum Verbinden der Quellknoten (2) und der Zwischenknoten (6); und - ein zweites Koppelnetz (5) zum Verbinden der Zwischenknoten (6) und der Zielknoten (3), wobei das Verbindungsnetzwerk geeignet ist, das Datenpaket unter Verwendung des Verfahrens nach einem der Ansprüche 1 bis 7 durch das erste Koppelnetz (4) vom Quellknoten (2) an den Zwischenknoten (6) und unter Verwendung des Verfahrens nach einem der Ansprüche 1 bis 7 durch das zweite Koppelnetz (5) vom Zwischenknoten (6) an den Zielknoten (3) zu übertragen.
  14. Computerprogrammprodukt, das Software-Codeteile enthält, die in einen internen Speicher einer Datenverarbeitungseinheit geladen werden können, wobei, wenn die Software-Codeteile in der Datenverarbeitungseinheit ausgeführt werden, die Verfahren von einem der Ansprüche 1 bis 7 in einem Netzwerk ausgeführt werden.
DE112011103578.0T 2010-10-28 2011-08-04 Verfahren und System zum Übertragen von Datenpaketen in einem Netzwerk Active DE112011103578B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10189166.1 2010-10-28
EP10189166 2010-10-28
PCT/IB2011/053475 WO2012056335A1 (en) 2010-10-28 2011-08-04 Method and system for transmitting data packets in a network

Publications (2)

Publication Number Publication Date
DE112011103578T5 DE112011103578T5 (de) 2013-09-12
DE112011103578B4 true DE112011103578B4 (de) 2021-06-24

Family

ID=44674832

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011103578.0T Active DE112011103578B4 (de) 2010-10-28 2011-08-04 Verfahren und System zum Übertragen von Datenpaketen in einem Netzwerk

Country Status (6)

Country Link
US (1) US9148377B2 (de)
CN (1) CN103155587B (de)
DE (1) DE112011103578B4 (de)
GB (1) GB2498311B (de)
TW (1) TW201230728A (de)
WO (1) WO2012056335A1 (de)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3742939A1 (de) * 1987-12-18 1989-07-06 Standard Elektrik Lorenz Ag Verfahren zur hybriden paketvermittlung und einrichtungen hierzu
DE69428107T2 (de) * 1993-01-29 2002-05-02 Ericsson Telefon Ab L M Atm-vermittlung mit kontrolliertem zugang
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
US6778536B1 (en) * 1999-11-09 2004-08-17 Synchrodyne Networks, Inc. Combined wavelength division multiplexing, time division multiplexing, and asynchronous packet switching with common time reference
US7035220B1 (en) * 2001-10-22 2006-04-25 Intel Corporation Technique for providing end-to-end congestion control with no feedback from a lossless network
US20090052318A1 (en) * 2007-08-21 2009-02-26 Gidon Gershinsky System, method and computer program product for transmitting data entities

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8233905B2 (en) 2007-06-15 2012-07-31 Silver Spring Networks, Inc. Load management in wireless mesh communications networks
CN101123576B (zh) * 2007-09-20 2011-02-09 武汉理工大学 一种基于带宽约束和最小负载的移动自组网路径选择方法
US8126509B2 (en) 2008-08-01 2012-02-28 Mediatek Inc. Methods for handling packet-switched data transmissions by mobile station with subscriber identity cards and systems utilizing the same
US8923125B2 (en) 2008-10-24 2014-12-30 Qualcomm Incorporated Wireless network resource adaptation
US8509078B2 (en) * 2009-02-12 2013-08-13 Microsoft Corporation Bufferless routing in on-chip interconnection networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3742939A1 (de) * 1987-12-18 1989-07-06 Standard Elektrik Lorenz Ag Verfahren zur hybriden paketvermittlung und einrichtungen hierzu
DE69428107T2 (de) * 1993-01-29 2002-05-02 Ericsson Telefon Ab L M Atm-vermittlung mit kontrolliertem zugang
US6778536B1 (en) * 1999-11-09 2004-08-17 Synchrodyne Networks, Inc. Combined wavelength division multiplexing, time division multiplexing, and asynchronous packet switching with common time reference
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
US7035220B1 (en) * 2001-10-22 2006-04-25 Intel Corporation Technique for providing end-to-end congestion control with no feedback from a lossless network
US20090052318A1 (en) * 2007-08-21 2009-02-26 Gidon Gershinsky System, method and computer program product for transmitting data entities

Also Published As

Publication number Publication date
CN103155587B (zh) 2016-06-08
TW201230728A (en) 2012-07-16
US9148377B2 (en) 2015-09-29
CN103155587A (zh) 2013-06-12
GB2498311A (en) 2013-07-10
WO2012056335A1 (en) 2012-05-03
GB2498311B (en) 2013-12-11
GB201307554D0 (en) 2013-06-12
US20130258856A1 (en) 2013-10-03
DE112011103578T5 (de) 2013-09-12

Similar Documents

Publication Publication Date Title
DE60119866T2 (de) Vermittlungseinrichtung und verfahren mit getrennten Ausgangspuffern
DE112006000282B4 (de) Abgleich von Datenpaketen für Mehrpunktverbindungen in einem mehrstufigen Schaltsystem
DE69827053T2 (de) Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk
DE60128413T2 (de) Gekennzeichneter Prioritätswarteschlangescheduler
DE60222656T2 (de) Vorrichtung und verfahren für effizientes multicasting von datenpaketen
DE102015017100B3 (de) Verteilte Switch-Architektur
DE69533680T2 (de) Verfahren und Vorrichtung zur dynamischen Bestimmung und Zuteilung von Zugriffsguoten für ein gemeinsames Betriebsmittel
DE112020002493T5 (de) Fat-tree adaptive leitweglenkung
DE60033099T2 (de) Hochkapazitäts WDM-TDM Paketvermittlungseinrichtung
DE60036031T2 (de) Zuweisung von prioritätsstufen in einem datenfluss
DE10196447B4 (de) Verfahren und Vorrichtung zum Verringern der Erschöpfung des Pools in einer Vermittlung mit gemeinsam genutztem Speicher
DE60127366T2 (de) Verfahren und Struktur zur Unterstützung von Rahmen variabler Länge in einer Vermittlungsanlage mit gemeisamem Speicher
DE60302045T2 (de) Verfahren und System zur geordneten dynamischen Verteilung von Paketströmen zwischen Netzwerkprozessoren
DE19531749A1 (de) Verkehrsgestaltungseinrichtung und Paket-Kommunikationsgerät
DE60110934T2 (de) Modularer und skalierbarer switch und verfahren zum verteilen schneller ethernet-datenrahmen
DE112013003900B4 (de) Reservierungsverfahren und vorrichtung zur verringerung von verhungern von agenten und zurückprallen von nachrichten für zweidimensionale interconnects ohne pufferspeicher
EP0351014B1 (de) Koppelfeld für ein Vermittlungssystem
DE102020105776A1 (de) Kostengünstige Überlastungsisolierung für verlustfreies Ethernet
DE60028903T2 (de) Verfahren und Vorrichtung zur Kommunikationskontrolle
DE60110538T2 (de) Paketvermittlungsstelle
EP2415218B1 (de) Steuergerät in einem netzwerk, netzwerk und routingverfahren für nachrichten in einem netzwerk
WO2003032676A1 (de) Verteilte übermittlung von verkehrsströmen in kommunikationsnetzen
EP0322075B1 (de) Koppelfeld und Koppelfeldsteuerung für ein Vermittlungssystem
DE60036493T2 (de) Datenflusssteuerung
DE112011103578B4 (de) Verfahren und System zum Übertragen von Datenpaketen in einem Netzwerk

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04Q0003680000

Ipc: H04L0012801000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04Q0003680000

Ipc: H04L0012801000

Effective date: 20130930

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012801000

Ipc: H04L0012931000

R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012931000

Ipc: H04L0049100000

R020 Patent grant now final