DE60213974T2 - Verfahren und vorrichtung zur prioritäts-basierten flusskontrolle in einer ethernet-architektur - Google Patents

Verfahren und vorrichtung zur prioritäts-basierten flusskontrolle in einer ethernet-architektur Download PDF

Info

Publication number
DE60213974T2
DE60213974T2 DE60213974T DE60213974T DE60213974T2 DE 60213974 T2 DE60213974 T2 DE 60213974T2 DE 60213974 T DE60213974 T DE 60213974T DE 60213974 T DE60213974 T DE 60213974T DE 60213974 T2 DE60213974 T2 DE 60213974T2
Authority
DE
Germany
Prior art keywords
priority level
ethernet
scheduling
priority
receive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60213974T
Other languages
English (en)
Other versions
DE60213974D1 (de
Inventor
T. Mark Granite Bay FEUERSTRAETER
J. Bradley Austin BOOTH
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Application granted granted Critical
Publication of DE60213974D1 publication Critical patent/DE60213974D1/de
Publication of DE60213974T2 publication Critical patent/DE60213974T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Description

  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der Datennetzwerke und spezieller ein Verfahren und eine Vorrichtung zur prioritätsbasierten Ablaufsteuerung innerhalb einer Ethernet-Netzarchitektur.
  • ALLGEMEINER STAND DER TECHNIK
  • So wie sich die Computertechnik entwickelt hat, hat sich auch die Verwendung von Netzwerken zur kommunikativen Kopplung von Computersystemen zusammen mit der Möglichkeit des Austauschs von Informationen entwickelt. Ein Beispiel für solch eine Netztopologie ist das Verfahren des Mehrfachzugriffs durch Trägerabtastung mit Kollisionserkennung (CSMA/CD) und Festlegungen zur Bitübertragungsschicht, das normalerweise als Ethernet-Standardtopologie bekannt ist, die unter der Schirmherrschaft des Institute of Electrical and Electronic Engineers als Norm 802.3 (2000) entwickelt und gefördert wurde. Eine der Vorschriften der Ethernet-Norm (802.3x) erleichtert die Punkt-zu-Punkt-Ablaufsteuerung zwischen zwei Netzwerkgeräten.
  • Vereinfacht gesagt, ist die Ablaufsteuerung ein Mechanismus, der in einem Medienzugriffscontroller (MAC) einer Ethernet-Netzwerkschnittstelle eines ans Netz angeschlossenen Gerätes implementiert ist, um den Fluss von Daten zwischen zwei Vollduplexgeräten (d.h. Datenstation, Hub, Schaltteil (Switch), Router usw.) zu steuern. Gemäß dem Ethernet-Ablaufsteuerungsmechanismus von 802.3x sendet ein Gerät (oder ein Port), das einen Empfangspufferschwellwert erreicht hat, ein Zustand, der umgangssprachlich als überbelegt bezeichnet wird, eine Steuernachricht, die das Übertragungsgerät anweist, die Übertragung von Ethernet-Verkehr bis auf weiteres (oder für einen festgelegten Zeitabschnitt) anzuhalten. Sobald der Empfangspuffer des vorher überbelegten Gerätes in der Lage ist, zusätzlichen Inhalt anzunehmen, kann eine weitere Steuernachricht zum Wiederaufnehmen des Ethernet-Verkehrs gesendet werden. In alternativen Ausführungsformen wird ein Zeitgeber verwendet, wobei, wenn ein Empfangsgerät einen "Aus"-Zustand fortsetzen soll, eine weitere Steuernachricht ausgegeben werden muss, um diesen Zustand aufrechtzuerhalten, sobald der Zeitgeber abgelaufen ist. In dieser Hinsicht werden die Ethernet-Ablaufsteuerungsvorschriften umgangssprachlich als XON/XOFF-Schema (Übertragung ein/Übertragung aus-Schema) bezeichnet, wobei die gesamte Ethernet-Kommunikationsverbindung zwischen zwei Netzwerkgeräten entweder aktiviert oder deaktiviert ist.
  • Eine der Begrenzungen, die oft mit dem herkömmlichen Ethernet-Ablaufsteuerungsmechanismus von 802.3x verbunden sind, ist, dass der Mechanismus nicht zwischen Arten des Verkehrs oder Prioritäten des Verkehrs unterscheidet. Das heißt, es gibt keine Vorkehrung innerhalb der rudimentären XON/XOFF-Ethernet-Netzwerkschnittstelle zum Unterscheiden zwischen verschiedenen Prioritätsniveaus des Ethernet-Verkehrs, z.B. durch Anwendungen erzeugt, die unterschiedliche Serviceklassen, Servicequalität usw. erfordern. Im Ergebnis dessen gibt es keine Vorkehrungen zur bevorzugten Behandlung von zeitlich kritischem Netzinhalt (z.B. Multimediainhalt) gegenüber zeitlich unkritischem Inhalt (z.B. Email-Inhalt).
  • Bis vor kurzem waren die herkömmlichen Ethernet-Ablaufsteuerungsvorschriften von IEEE 802.3x angemessen, um den Verkehr eines typischen Datennetzwerks zu unterstützen. Heutzutage jedoch wird mit der zunehmenden Popularität von Anwendungen, die einen ununterbrochenen Fluss von Inhalt aus Netzressourcen erfordern, der Mangel von nach Vordringlichkeit geordneter Ablaufsteuerung in der Ethernet-Architektur zu einer untragbaren Einschränkung. Dementsprechend wird ein neuer Ablaufsteuerungsmechanismus, der nicht mit den innewohnenden Einschränkungen belastet ist, die norma lerweise mit der herkömmlichen Ethernet-Ablaufsteuerung verbunden sind, dringend benötigt. Solch eine Lösung wird in der folgenden Diskussion bereitgestellt.
  • US-A-5983278 beschreibt ein Daten-Ablaufsteuerungsverfahren mit mehreren Prioritäten in einer Schalterstrukturumgebung, die einen Puffer umfasst, Paketdaten verschiedener Klassentypen aus unterschiedlichen Quellen werden empfangen, im Puffer gespeichert, verarbeitet und an ihren vorgesehenen Zielort ausgegeben. Wenn sich der Puffer füllt, wird die Übertragung von einigen Datenquellen angehalten, um ein Verlieren von Paketen zu vermeiden. Um Paketverluste zu vermeiden, wenn die Belegung des Puffers einen ersten Schwellwert erreicht, wird die weitere Übertragung von Daten der ersten Klasse aus der speziellen Quelle dieser Daten, die dann gerade empfangen werden, verhindert, während die Übertragung aus anderen Quellen derselben Daten der ersten Klasse nicht aus diesen anderen Datenquellen verhindert wird, bis die Daten der ersten Klasse aus solchen anderen Quellen ebenfalls empfangen werden. Ferner wird die Übertragung von Daten der zweiten Klasse nicht verhindert, solange die Menge von Daten, die im Puffer gespeichert sind, unter einem zweiten Schwellwert bleibt, der größer als der erste Schwellwert ist. Wenn die Belegung des Puffers diesen zweiten Schwellwert erreicht, wird auch die weitere Übertragung von der bestimmten Datenquelle dieser Daten der zweiten Klasse, welche dann gerade empfangen werden, verhindert.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird durch Beispiele, nicht beschränkernderweise, in den Figuren der begleitenden Zeichnungen beschrieben, in denen gleiche Bezugszeichen sich auf ähnliche Elemente beziehen, dabei gilt:
  • 1 ist ein Blockdiagramm eines als Beispiel dienenden Datennetzes, das einen innovativen Ablaufsteuerungsmechanismus gemäß den Lehren der vorliegenden Erfindung umfasst.
  • 2 ist ein Blockdiagramm eines als Beispiel dienenden Datennetzes, das mit einem innovativen Ablaufsteuerungsagenten gemäß einer Beispielimplementierung der vorliegenden Erfindung erweitert ist.
  • 3 ist eine grafische Illustration eines als Beispiel dienenden Empfangspuffers, der sich zur Verwendung gemäß dem prioritätsbasierten Ablaufsteuerungsmechanismus der vorliegenden Erfindung eignet.
  • 4 ist eine grafische Illustration eines als Beispiel dienenden Sendepuffers, der sich zur Verwendung gemäß dem prioritätsbasierten Ablaufsteuerungsmechanismus der vorliegenden Erfindung eignet.
  • 5 ist eine grafische Illustration einer Ablaufsteuerungsmanagement-Datenstruktur, die zum Beispiel in einem Schalter verwendet wird, um bestimmte Aspekte der Punkt-zu-Punkt-Kommunikationsverbindung mit einem oder mehreren kommunikativ gekoppelten Netzwerkelementen gemäß einer Erscheinungsform der vorliegenden Erfindung zu handhaben.
  • 6 ist eine grafische Illustration einer als Beispiel dienenden Ethernet-Steuerungsnachricht, die ein Ablaufsteuerungsprioritätsfeld gemäß einer Erscheinungsform der vorliegenden Erfindung umfasst.
  • 7 ist ein Ablaufdiagramm eines als Beispiel dienenden Verfahrens zur Implementierung der Ablaufsteuerung gemäß einer Erscheinungsform der vorliegenden Erfindung.
  • 8 ist ein Ablaufdiagramm eines als Beispiel dienenden Verfahrens zur Drosselung einer Teilmenge des Ethernet-Verkehrs gemäß einer Erscheinungsform der vorliegenden Erfindung; und
  • 9 ist ein Blockdiagramm eines als Beispiel dienenden Speichermediums, das mehrere ausführbare Befehle umfasst, die bei Ausführung bewirken, dass eine Zugriffsmaschine eine oder mehrere Erscheinungsformen der erweiterten Netzwerkschnittstelle gemäß einer anderen Ausführungsform der vorliegenden Erfindung implementiert.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die vorliegende Erfindung betrifft allgemein ein Verfahren und eine Vorrichtung für die prioritätsbasierte Ablaufsteuerung in einer Ethernet-Architektur. In dieser Hinsicht wird eine erweiterte Netzwerkschnittstelle (ENI) eingeführt, die einen Ablaufsteuerungsagenten enthält. Gemäß einer als Beispiel dienenden Implementierung ist der Ablaufsteuerungsagent in einen Medienzugangscontroller (MAC) der ENI integriert, um die prioritätsbasierte Ablaufsteuerung zu erleichtern.
  • Gemäß einer Erscheinungsform der vorliegenden Erfindung überwacht der Ablaufsteuerungsagent die Empfangsfähigkeit der ENI und erzeugt selektiv eine Steuernachricht, die ein Prioritätsniveau anzeigt, oberhalb oder unterhalb dessen die ENI Ethernet-Verkehr empfangen kann. Die Steuernachricht wird an das/die kommunikativ angeschlossene(n) Gerät(e) gesendet, um effektiv zumindest eine Teilmenge des Ethernet-Verkehrs zu drosseln, der für die ENI von den Geräten bestimmt ist, die die Steuernachricht empfangen. In dieser Hinsicht unterscheidet der Ablaufsteuerungsagent wirksam zwischen den Prioritäten des Ethernet-Verkehrs und drosselt selektiv eine reine Teilmenge des Verkehrs, wie gewünscht, gemäß der identifizierten Empfangsfähigkeit einer Wirts-Netzwerkschnittstelle (z.B. ENI).
  • Gemäß einer weiteren Erscheinungsform der vorliegenden Erfindung empfängt die erweiterte Netzwerkschnittstelle Inhalte, die unterschiedliche Prioritätsniveaus besitzen, und leitet sie in einen Sendepuffer. Der Medienzugangscontroller (MAC) der ENI identifiziert den Zielort der empfangenen Inhalte, eine zugehörige Ablaufsteuerungspriorität, falls vorhanden, die mit dem festgestellten Zielort verbunden ist, und leitet selektiv nur eine zulässige Teilmenge des Inhalts weiter, die für ein gegebenes Netzwerkgerät bestimmt ist, basierend, zumindest teilweise, auf dem zugehörigen Ablaufsteuerungsprioritätsniveau. Im Hinblick darauf erleichtert die erweiterte Netzwerkschnittstelle, dass mehrere Prioritäten von Daten eine Ethernet-Verbindung überspannen können, wobei sie dynamisch eine Ablaufsteuerung nur für eine Teilmenge solcher Prioritäten aktivieren. Fachleute auf diesem Gebiet werden erkennen, dass die Fähigkeit, die Ablaufsteuerung für eine Teilmenge des Ethernet-Verkehrs (z.B. nur Verkehr mit niedriger Priorität) zu aktivieren, effektiv die wahrgenommene Leistung des Ethernet-Netzwerks verstärkt, indem nur die Daten mit hoher Priorität die Verbindung während der Zeiten des Datenstaus passieren dürfen.
  • Der Verweis auf „eine Ausführungsform" in der gesamten Patentschrift bedeutet, dass ein besonderes Merkmal, Struktur oder charakteristisches Merkmal, das in Verbindung mit der Ausführungsform beschrieben wird, zumindest in einer Ausführungsform der vorliegenden Erfindung enthalten ist. Daher beziehen sich nicht alle Formen des Ausdrucks „in einer Ausführungsform" an verschiedenen Stellen in der ganzen Patentschrift notwendigerweise auf dieselbe Ausführungsform.
  • Weiterhin können die besonderen Merkmale, Strukturen oder charakteristischen Eigenschaften in geeigneter Weise in einer oder mehreren Ausführungsformen kombiniert werden.
  • Als Beispiel dienende Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung
  • Fachleute auf diesem Gebiet werden erkennen, dass die Kommunikation innerhalb einer Ethernet-Netztopologie auf der Basis der einzelnen Kommunikationsverbindungen gehandhabt wird. Wenn man also die Ablaufsteuerung innerhalb einer Ethernet-Netztopologie diskutiert, versteht man darunter normalerweise die Ablaufsteuerung zwischen zwei Ethernet-aktivierten Netzwerkgeräten, z.B. Datenstation(en), Hub(s), Switch(es), Router und dergleichen. Ein Beispiel für eine solche Netztopologie wird unter Bezug auf 1 erläutert.
  • 1 zeigt ein Blockdiagramm einer als Beispiel dienenden Ethernet-Kommunikationsverbindung, die zwei Netzwerkgeräte gemäß den Lehren der vorliegenden Erfindung verbindet. Spezieller gesagt, wird ein Rechengerät/Netzwerkelement 102 gemäß einer ersten Ausführungsform 100 mit einem anderen Rechengerät/Netzwerkelement 104 durch die Ethernet-Kommunikationsverbindung 106 verbunden. Gemäß mit einer als Beispiel dienenden Implementierung der vorliegenden Erfindung wird jedes der Rechengeräte/Netzwerkelemente 102 und 104 abgebildet, eine erweitere Netzwerkschnittstelle 120 umfassend, die oben vorgestellt wurde. Gemäß den Lehren der vorliegenden Erfindung, die umfassender unten dargestellt werden sollen, stellt eine erweiterte Netzwerkschnittstelle (ENI) 120, die in jedes der Netzwerkgeräte 102, 104 integriert ist, effektiv eine Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung zwischen den zwei Geräten mit bisher nicht verfügbaren Fähigkeiten einer Verkehrsprioritätsordnung her (z.B. auf der Basis der Serviceklasse, Art des Service, Servicequalität usw.).
  • Wie hierin verwendet, soll jedes Rechengerät/Netzwerkelement eine breite Palette von Ethernet-Netzwerkelementen repräsentieren, die im Fachgebiet bekannt sind, wie zum Beispiel eine Desktop-Computerplattform, eine Notebook-Computerplattform, ein tragbares Gerät (z.B. ein PDA), ein mobiles Kommunikationsgerät oder eine Reihe von Netzmanagementgeräten (Hub, Switch, Router usw.) mit Ethernet-Netzressourcen. Zur Integration der erweiterten Netzwerkschnittstelle (ENI) 120, die unten ausführlicher beschrieben wird, soll jedes der Rechen-/Netzwerkelemente solche herkömmlichen Geräte repräsentieren, wie sie gegenwärtig im Fachgebiet bekannt sind – es sind keine speziellen Fähigkeiten, abgesehen von der ENI 120, erforderlich, um die Lehren der vorliegenden Erfindung anzuwenden. Dementsprechend brauchen die Architekturdetails des/der Wirtsgeräte(s) 102, 104 nicht weiter beschrieben zu werden.
  • Wie oben vorgestellt und unten ausführlicher beschrieben, ist ENI 120 mit einer fortgeschrittenen Ablaufsteuerungsfähigkeit ausgestattet, um verschiedene Prioritäten des Ethernet-Verkehrs innerhalb einer Ethernet-Kommunikationsverbindung 106 effektiv aufzubauen und unabhängig zu handhaben. Gemäß einer Erscheinungsform der Erfindung überwacht ENI 120 die Empfangsfähigkeit jedes der mehreren Puffer, die mit verschiedenen Inhaltsprioritätsniveaus verbunden sind, und erzeugt eine Steuernachricht, die ein Prioritätsniveau bezeichnet, oberhalb oder unterhalb dessen die ENI die Kapazität zum Empfang von Inhalt besitzt. Gemäß einer Implementierung bezeichnet das Prioritätsniveau ein Niveau, oberhalb dessen die Empfangspuffer von ENI 120 Inhalt empfangen können. Bei einer solchen Implementierung haben ein oder mehrere Puffer bei dem beschriebenen Prioritätsniveau und/oder unterhalb desselben einen Kapazitätsschwellwert erreicht.
  • Gemäß einer weiteren Erscheinungsform der Erfindung reagiert ENI 120 auf den Empfang von Steuernachrichten, die ein Ablaufsteuerungsprioritätsniveau bezeichnen. In dieser Beziehung überwacht ENI 120 Inhalte in einem Sendepuffer und leitet ausgewählte Inhalte aus dem Sendepuffer an das ferne Netzwerkelement weiter, die, zumindest teilweise, auf Steuernachrichten beruhen, welche von einem fernen Netzwerkelement empfangen wurden.
  • Obwohl nicht besonders in 1 bezeichnet, ist zu erkennen, dass die erweiterte Netzwerkschnittstelle (ENI) 120 kompatibel zu Vorläufer-Ethernet-Schnittstellen sein kann, um die konventionellen Ablaufsteuerungsbestimmungen zu implementieren, die in der oben genannten IEEE 802.3x aufgeführt werden. Das heißt, wenn beide Netzwerkelemente der Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung mit der innovativen ENI 120 ausgestattet sind, kann die prioritätsbasierte Ablaufsteuerung über die Kommunikationsverbindung 106 eingerichtet werden. Wenn alternativ eins der Netzwerkelemente mit der ENI 120 ausgestattet ist, während das andere Element der Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung mit einer herkömmlichen Netzwerkschnittstelle besetzt ist, beteiligt sich ENI 120 am konventionellen Ablaufsteuerungsmechanismus, der in 802.3x definiert ist.
  • Beispiel-Netzwerkschnittstelle mit prioriätsbasierter Ablaufsteuerung
  • 2 zeigt ein Blockdiagramm einer als Beispiel dienenden erweiterten Netzwerkschnittstelle (ENI), die die Lehren der vorliegenden Erfindung enthält. Gemäß der illustrierten, als Beispiel dienenden Ausführungsform von 2 wird ENI 120 als eine Wirtssystemschnittstelle 202, einen oder mehrere Eingabe-/Ausgabepuffer 204, einen Medienzugangscontroller 206, einen Codier-/Decodierblock 208, eine Anschlusseinheiten-Schnittstelle 210 und eine oder mehrere physische Medienschnittstellen 212 umfassend abgebildet, jede wie abgebildet angeschlossen. Gemäß den Lehren der vorliegenden Erfindung wird ENI 120 als einen innovativen Ablaufsteuerungsagenten 214 umfassend abgebildet, um die prioritätsbasierte Ablaufsteuerung mit fernen Netzwerkschnittstellen, die in ähnlicher Weise mit prioritätsbasierten Ablaufsteuerungsmerkmalen ausgestattet sind, zu erleichtern. In der illustrierten Beispielimplementierung von 2 ist der Ablaufsteuerungsagent in einen (oder mehreren) Medienzugangscontrollern 206 integriert. Gemäß einer solchen Implementierung kann der Ablaufsteuerungsagent 214 in Software oder Firmware-Inhalt eingebettet sein, der vom MAC ausgeführt wird, um die prioritätsbasierten Ablaufsteuerungsmerkmale, die hierin beschrieben werden, zu implementieren. Fachleute auf diesem Gebiet werden jedoch erkennen, dass der Ablaufsteuerungsagent 214 auch als unabhängiges Element der Netzwerkschnittstelle angewendet werden kann, wie zum Beispiel als anwendungsspezifische integrierte Schaltung (ASIC), reservierter Mikrocontroller und dergleichen. In dieser Hinsicht werden alternative Implementierungen des Ablaufsteuerungsagenten 214 innerhalb des Geltungsbereichs der beanspruchten Erfindung erwartet.
  • Wie hierin verwendet, stellt die Wirtssystemschnittstelle 202 eine Kommunikationsverbindung mit einem Wirtsverarbeitungssystem bereit. In bestimmten Implementierungen stellt die Wirtssystemschnittstelle 202 eine Kommunikationsverbindung beispielsweise mit Anwendungen bereit, die auf einem Wirtsrechensystem laufen, das vorteilhafterweise die Netzkommunikationsressourcen von ENI 120 nutzt. Wie unten detaillierter diskutiert wird, werden Inhalte gemäß einer solchen Beispielimplementierung (z.B. als Netzwerkschnittstellenkarte (NIC) des Rechensystems) von solchen Wirtsanwendungen durch die Wirts systemschnittstelle 202 empfangen und in einem oder mehreren Sendepuffern der E/A-Puffer 204 gepuffert.
  • Wie hierin verwendet, sollen E/A-Puffer 204 jeden der vielen Speichersysteme, die im Fachgebiet bekannt sind, repräsentieren. Gemäß einer Implementierung umfassen die E/A-Puffer 204 Sendedatenstrukturen, oder Warteschlangen, und Empfangsdatenstrukturen. Gemäß einer Beispielimplementierung wird eine Reihe von Empfangswarteschlangen vom MAC 206 geführt und verwaltet, wobei jede Warteschlange mit einem besonderen Inhaltsprioritätsniveau verbunden ist. Wie unten detaillierter diskutiert wird, überwacht der Ablaufsteuerungsagent 214 von MAC 206 die Empfangskapazität solcher Empfangswarteschlangen beim Treffen von prioritätsbasierten Ablaufsteuerungsentscheidungen. Fachleute auf diesem Gebiet werden erkennen, dass die E/A-Puffer 204 jede beliebige Zahl der vielen unterschiedlichen Arten von physischen Speichervorrichtungen umfassen können.
  • Wie hierin verwendet, sollen Codierer/Decodierer 208, AUI 210 und PMI 212 jeweils solche Elemente einer typischen Netzwerkschnittstelle repräsentieren. Das heißt, abgesehen von ihrer Beziehung zum MAC 206 im allgemeinen und dem Ablaufsteuerungsagenten 214 im besonderen, sollen solche Elemente 208212 jede der vielen derartigen Vorrichtungen, die im Fachgebiet bekannt sind, repräsentieren und brauchen als solche hierin nicht weiter beschrieben zu werden.
  • Wie oben vorgestellt, steuert der Medienzugangscontroller (MAC) 206 den Fluss von Informationen innerhalb der Netzwerkschnittstelle. Gemäß der illustrierten Beispielimplementierung von 2 wird der MAC 206 als ein innovativen Ablaufsteuerungsagenten 214 umfassend abgebildet. Wie unten detaillierter diskutiert wird, implementiert der Ablaufsteuerungsagent 214 selektiv eine prioritätsbasierte Ablaufsteuerung innerhalb einer Punkt- zu-Punkt-Ethernet-Kommunikationsverbindung zwischen zwei Netzwerkgeräten. In dieser Hinsicht stellt der Ablaufsteuerungsagent 214 ein Prioritätsniveau fest, das mit Inhalt verbunden ist, und leitet nur eine Teilmenge des Inhalts an ein angeschlossenes Gerät gemäß einem Prioritätsniveau weiter, das in der Steuerungsinformation angegeben wird, die vom angeschlossenen Gerät empfangen wird. Wie hierin verwendet, kann das Prioritätsniveau durch eine Anwendung vorgegeben werden, die den Inhalt erzeugt (z.B. wenn er von einer Wirtsanwendung empfangen wird), oder es kann in einen Verwaltungsabschnitt (Kopf-/Fußabschnitt) des Inhalts eingebettet sein. Gemäß einer Implementierung kontrolliert der Ablaufsteuerungsagent 214 die Verwaltungsinformationen des Inhalts, der empfangen wird, z.B. von einem angeschlossenen Netzwerkelement, auf eine oder mehrere Serviceklassen-(CoS-), Serviceart-(ToS-) und/oder Servicequalitäts-(QoS-)Angaben, die ein Prioritätsniveau bezeichnen, und speichert solchen empfangenen Inhalt in einem Puffer ab, der seinem festgestellten Prioritätsniveau entspricht.
  • Weiterhin überwacht der Ablaufsteuerungsagent 214 die Kapazität der Empfangspuffer der Netzwerkschnittstelle und erzeugt selektiv Steuernachricht(en) und gibt diese zur gedrosselten Übertragung des Inhalts von einem angeschlossenen Gerät aus. Wie unten detaillierter dargestellt wird, überwacht der Ablaufsteuerungsagent 214 die Empfangspuffer der E/A-Puffer, um die Empfangskapazität jedes der Puffer festzustellen, die mit einem oder mehreren Inhaltsprioritätsniveaus verbunden sind. Sobald ein Puffer einen bestimmten Schwellwert erreicht hat, erzeugt der Ablaufsteuerungsagent 214 eine Steuernachricht, die das Prioritätsniveau angibt, oberhalb dessen Inhalt immer noch empfangen werden kann. Die Ausgabe der Steuernachricht mit dem Inhaltsprioritätsniveau bewirkt, dass eine geeignet ausgestattete empfangende Netzwerkschnittstelle den Verkehr drosselt, der eine Priorität unter der aufweist, die in der Steuernachricht angegeben wird. Gemäß einer Implementierung setzt das Netzwerkgerät, das die Steuernachricht empfängt, die Übertragung von Verkehr aus, der ein Prioritätsniveau unterhalb dessen besitzt, welches in der Steuernachricht angegeben ist, bis eine nachfolgende Steuernachricht empfangen wird, die den Stopp für dieses besondere Prioritätsniveau modifiziert/beseitigt. Wie oben angeführt, kann in alternativen Implementierungen ein Taktgeber verwendet werden, wobei Kommunikation, die mit einem ansonsten zeitweilig ausgesetzten Prioritätsniveau nach einer bestimmter Zeitdauer (entweder vorher festgelegt oder innerhalb der empfangenen Steuernachricht angegeben) wieder aufgenommen werden kann. In dieser Hinsicht implementiert der Ablaufsteuerungsagent 214 effektiv einen prioritätsbasierten Ablaufsteuerungsmechanismus, der die wahrgenommene Kapazität und die Fähigkeit des Ethernet-Netzes verbessert.
  • Beispieldatenstruktur(en)
  • Wendet man sich 3 zu, so wird dort eine grafische Darstellung von zumindest einem Teil eines Beispiel-Speichersystems 300 gezeigt. Gemäß dem illustrierten Beispiel von 3 wird das Speichersystem 300 als mehrere Empfangspufferwarteschlangen 303, 304 und 306 umfassend abgebildet. Gemäß einer als Beispiel dienenden Implementierung der vorliegenden Erfindung verwendet der Ablaufsteuerungsagent 214 effektiv jeden der Puffer 302, 304 und 306 als Empfangspuffer zum Empfangen von Inhalten von einem entfernten Netzwerkgerät. Gemäß den Lehren der vorliegenden Erfindung ist jeder der Puffer mit Inhalt von verschiedenem Prioritätsniveau verknüpft, z.B. Inhalt von Prioritätsniveau 1, Inhalt von Prioritätsniveau 2, weiter bis zu Inhalt von Prioritätsniveau N (wobei N die Zahl der Prioritätsniveaus bezeichnet, die von der Schnittstelle des Kommunikationsprotokolls unterstützt wird). Wie oben vorgestellt, kann jede der Pufferwarteschlangen 302, 304 und 306 eine Reihe von Speichergeräten umfassen. Alternativ kann jeder der verschiedenen Puffer nur den verschiedenen Platz eines einzigen Speichergerätes belegen. Obwohl ungefähr als von gleicher Größe dargestellt, werden Fachleute auf diesem Gebiet weiterhin erkennen, dass es in bestimmten Ausführungsformen vorteilhaft sein kann, ein Verkehrsniveau gegenüber einem anderen bevorzugt zu behandeln. Eine Möglichkeit, wie dies implementiert werden kann, besteht darin, das höhere Prioritätsniveau mit mehr Speicher und einem höheren Schwellwert zu versehen, während niedrigeren Prioritätsniveaus weniger Speicher und/oder ein niedrigerer Pufferschwellwert zugeordnet wird.
  • Wie unten detaillierter dargestellt wird, ist jede der Pufferwarteschlangen 302, 304 und 306 mit einer Schwellwertlinie 308 gekennzeichnet. Wie hierin verwendet, überwacht der Ablaufsteuerungsagent 214 den Inhalt (z.B. 310, 312 usw.) innerhalb jedes der Puffer 302, 304, 306, und wenn solcher Inhalt den Schwellwert 308 erreicht und/oder übersteigt, erzeugt der Ablaufsteuerungsagent 214 eine Steuernachricht, die das Prioritätsniveau angibt, das mit dem Puffer verbunden ist, der den Schwellwert 308 erreicht hat. Ein Empfangsnetzwerkgerät, das die Lehren der vorliegenden Erfindung implementiert, setzt dann die Übertragung von Inhalt aus, der das Prioritätsniveau hat, das gleich dem Prioritätsniveau ist oder unterhalb des Prioritätsniveaus liegt, welches in der Steuernachricht angegeben wird.
  • 4 stellt eine grafische Erläuterung einer Übertragungswarteschlange 400 bereit, die sich zur Verwendung gemäß den Lehren der vorliegenden Erfindung eignet. Gemäß der illustrierten Beispielimplementierung von 4 wird die Übertragungswarteschlange 400 als mehrere Einträge 402 umfassend abgebildet, wobei jeder Eintrag mit einem Datagramm (oder Strom) von Inhalt verbunden ist. Gemäß einer Beispielimplementierung repräsentiert jeder der Einträge 402 mehrere Inhalte, die dasselbe Prioritätsniveau besitzen. Es ist zu erkennen, dass die Zahl von Sende- und Empfangswarteschlangen nicht gleich zu sein braucht. In einer Beispielimplementierung kann der Ablaufsteuerungsagent 214 eine Reihe von Sendewarteschlangen implementieren, um eine präzise Ablaufsteuerung zu erleichtern, die von einem Empfangsnetzwerkelement aktiviert wird, während zwei Empfangspuffer implementiert sind, einer für Verkehr mit hohem Prioritätsniveau und einer für Verkehr mit niedrigem Prioritätsniveau. Das heißt, die Zahl der Sendewarteschlangen und die Zahl der Empfangswarteschlagen sind unabhängig voneinander.
  • Wie unten detaillierter dargestellt wird, wird die Übertragung von Inhalt in Einträgen, die mit einem Prioritätsniveau bei einem Prioritätsniveau vier (4) oder darunter verbunden sind, angehalten, wenn der Ablaufsteuerungsagent 214 eine Steuernachricht erhält, die ein Prioritätsniveau von vier (4) angibt, während die Übertragung von Inhalt in den Einträgen 406, die mit Prioritätsniveaus oberhalb von vier (4) verbunden sind, d.h. Prioritätsniveau fünf (5) und darüber, fortfahren kann.
  • 5 ist eine grafische Erläuterung einer als Beispiel dienenden Managementdatenstruktur 500, die sich zur Verwendung gemäß den Lehren der vorliegenden Erfindung eignet. Spezieller gesagt, illustriert 5 grafisch eine als Beispiel dienenden Managementdatenstruktur 500, die von einer Netzwerkschnittstelle verwendet wird, welche die prioritätsbasierte Ablaufsteuerung bei mehreren Geräten, d.h. über mehrere Punkt-zu-Punkt-Ethernet-Kommunikationsverbindungen, verwendet. Wie gezeigt, umfasst die als Beispiel dienende Managementdatenstruktur 500 zumindest ein Zielnamensfeld 502, ein Ablaufsteuerungsprioritätsfeld 504 und eine Reihe von Einträgen 506, die mit der Zahl der aktiven Punkt-zu-Punkt-Kommunikationsverbindungen verknüpft sind. Fachleute auf dem Gebiet werden erkennen, dass eine solche Datenstruktur 500 in einem Netzwerkelement (Hub, Switch, Router usw.) implementiert sein kann, wobei ein einzelner Ablaufsteuerungsagent 214 mehrere Kommunikationsports unterstützen kann (d.h. bis zu einer entsprechenden Zahl von aktiven Punkt-zu-Punkt-Kommunikationsverbindungen). Es ist zu erkennen, dass in dem Fall, bei dem jeder Port eines solchen Netzwerkgerätes einen reservierten Ablaufsteuerungsagenten 214 hat, z.B. innerhalb eines reservierten MAC 206, solch eine Datenstruktur nicht erforderlich zu sein braucht.
  • Wie hierin verwendet, wird das Zielnamensfeld zum eindeutigen Identifizieren der Kommunikationsverbindung und/oder des fernen Netzwerkelementes verwendet, das über die Kommunikationsverbindung angeschlossen ist. In dieser Hinsicht kann es ein fest codierter Portwert sein, der dynamisch mit einem Netzwerkelementnamen und dergleichen aktualisiert wird. Das Ablaufsteuerungsprioritätsfeld 502 wird dazu verwendet, ein aktuelles Ablaufsteuerungsprioritätsniveau, das mit der individuellen Kommunikationsverbindung verknüpft ist, zu speichern. Wie gezeigt, bezeichnen bestimmte Einträge der Einträge 506 ein Ablaufsteuerungsprioritätsniveau. Gemäß einer Beispielimplementierung der vorliegenden Erfindung ist der Ablaufsteuerungsagent 214 mit Vorläufernetzwerkschnittstellen, die vom herkömmlichen Xon/Xoff-Ablaufsteuerungsschema, wie abgebildet, abhängen, vereinbar.
  • Mit Verweis auf 6 wird eine als Beispiel dienende Steuernachrichtendatenstruktur grafisch erläutert. Gemäß dem illustrierten Beispiel von 6 wird ein Steuernachrichtendatagramm 600 als einen Verwaltungsabschnitt 602 umfassend abgebildet, einschließlich zumindest einer Teilmenge von Datagrammquelleninformationsfeld 604, Zielinformationsfeld 606, Typ/Längenfeld 608 und Ablaufsteuerungsprioritätsniveaufeld 610. Wie hierin verwendet, kann die Verwaltungsinformation 602 in einen Kopf abschnitt, Fußabschnitt oder einen anderen Teil des Datagramms eingebettet sein.
  • Das Quelleninformationsfeld 604 bezeichnet die Quelle des Datagramms, während die Zielinformation das letztendliche Ziel des Datagramms bezeichnet. Das Typ/Längenfeld 608 gibt an, dass das Datagramm vom Typ Steuernachricht ist, und stellt eine Angabe bezüglich der Größe des Datagramms bereit. Gemäß den Lehren der vorliegenden Erfindung bezeichnet das Prioritätsniveaufeld 610 die Ablaufsteuerungsprioritätsniveauvorgaben, die auf der Grundlage von Verbindung zu Verbindung implementiert werden. Gemäß bestimmten Implementierungen sind Steuernachrichten 600 auf der Grundlage von Verbindung zu Verbindung effektiv, und in dieser Hinsicht bezeichnet das Ablaufsteuerungsprioritätsniveau 610 nur die Ablaufsteuerungsprioritätsniveauvorgaben der Verbindung. Man kann sich alternative Implementierungen vorstellen, wobei die Prioritätsniveauinformation über mehrere Punkt-zu-Punkt-Verbindungen verwendet wird, die kommunikativ eine Quelle 102 von Inhalt mit einem Zielort 104 für den Inhalt verbinden. Fachleute auf diesem Gebiet werden erkennen, dass gemäß einer oder mehreren Implementierungen der prioritätsbasierten Ablaufsteuerung der vorliegenden Erfindung die Steuernachricht 600 dazu verwendet werden kann, die Kommunikation für (ein) gegebene(s) Prioritätsniveau(s) zu aktivieren, die Kommunikation für (ein) gegebene(s) Prioritätsniveau(s) zu deaktivieren und/oder eine Deaktivierung der Kommunikation für (ein) gegebene(s) Prioritätsniveau(s) aufzufrischen, wenn ein Zeitgebermechanismus verwendet wird, um automatisch ein vorher deaktiviertes Prioritätsniveau zu aktivieren).
  • Beispielbetrieb und -Implementierung
  • Nach der Vorstellung der Betriebsumgebung und Bauelemente der vorliegenden Erfindung oben wird die Auf merksamkeit nun auf die 7 und 8 gelenkt, wobei eine Beispielimplementierung des prioritätsbasierten Ablaufsteuerungsmechanismus detaillierter vorgestellt wird. Zur leichteren Erläuterung (und nicht zur Einschränkung) werden die Verfahren der 7 und 8 mit fortgesetzten Verweisen auf die 1-6 nach Bedarf dargelegt. Dessen ungeachtet ist zu erkennen, dass die Lehren der 7 und 8 in alternativen Netzwerkarchitekturen/-konfigurationen implementiert werden können, ohne vom Geist und dem Geltungsbereich der vorliegenden Erfindung abzuweichen.
  • 7 ist ein Ablaufdiagramm eines Beispielverfahrens zur Implementierung der Ablaufsteuerung gemäß einer Erscheinungsform der vorliegenden Erfindung. Gemäß der illustrierten Beispielimplementierung von 7 beginnt das Verfahren 700 mit Block 702 durch Identifizieren einer Empfangskapazität/-fähigkeit einer Netzwerksschnittstelle. Gemäß den Lehren der vorliegenden Erfindung scannt der Ablaufsteuerungsagent 214 jedes der mehreren Empfangspuffer 302, 304, 306, um festzustellen, ob der Inhalt im/in den Puffer(n) einen Schwellwert 308 erreicht/überstiegen hat, Block 704. Wie oben vorgestellt, ist jeder der Puffer 302, 304, 306 mit einem unterschiedlichen Inhaltsprioritätsniveau verknüpft.
  • Wenn in Block 704 die Pufferbelastung keinen Schwellwert 308 überstiegen hat, ermöglicht die Netzwerkschnittstelle, auch weiterhin Inhalt vom fernen Netzwerkgerät zu empfangen, da der Ablaufsteuerungsagent 214 die Empfangskapazität, die mit jedem der Prioritätsniveaus verknüpft ist, überwacht, bis ein Schwellwert in einem der Puffer erreicht wird.
  • Wenn der Schwellwert eines Puffers erreicht ist, setzt sich der Prozess mit Block 708 fort, wobei der Ablaufsteuerungsagent 214 das Prioritätsniveau feststellt, das überbelegt ist. In dieser Hinsicht identifiziert der Ablaufsteuerungsagent 214, welcher der Puffer 302, 304, 306 den Schwellwert 308 erreicht hat, und erzeugt eine Steuernachricht 600, die das Prioritätsniveau 610 bezeichnet, oberhalb oder unterhalb dessen eine Überbelegung besteht, Block 710. Gemäß einer Implementierung bezeichnet das Prioritätsniveau das Niveau, bei dem oder unterhalb dessen der Ablaufsteuerungsagent 214 die Übertragung aussetzt. In alternativen Implementierungen kann das Ablaufsteuerungsprioritätsniveau, das in Feld 610 einer Steuernachricht 600 angegeben wird, ein Inhaltsprioritätsniveau bezeichnen, oberhalb dessen eine Überbelegung besteht, was zur Aussetzung der Übertragung von Inhalt bei dem Niveau oder oberhalb des Niveaus erfolgt, das in der Steuernachricht 600 angegeben wird.
  • In Block 712 gibt der Ablaufsteuerungsagent 214 die Steuernachricht 600 an andere Netzwerkgeräte aus. Spezieller gesagt, sendet der Ablaufsteuerungsagent 214 die erzeugte Steuernachricht 600, die ein Ablaufsteuerungsprioritätsniveau 610 bezeichnet, an ein Netzwerkelement, das durch eine Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung angeschlossen ist. Sobald eine Steuernachricht 600 ausgegeben wurde, überwacht der Ablaufsteuerungsagent 214 gemäß einer Beispielimplementierung die Kapazität eines Puffers/von Puffern, die mit einem Prioritätsniveau verbunden sind, das in der erzeugten Steuernachricht 600 bezeichnet wird, und gibt einen überarbeiteten Steuerbefehl aus, wenn der Puffer, der mit dem Prioritätsniveau verbunden ist, verfügbar wird (d.h. unter den Schwellwert 308) fällt, Block 714. Der Prozess fährt dann mit Block 706 fort.
  • Wendet man sich 8 zu, so wird ein Ablaufdiagramm für ein Beispielverfahren zur Drosselung einer Teilmenge des Ethernet-Verkehrs gemäß einer Erscheinungsform der vorliegenden Erfindung dargestellt. Gemäß der illustrierten Beispielimplementierung von 8 beginnt der Prozess mit Block 802, wobei die Netzwerkschnittstelle eine Steuernachricht 600 von einem fernen Netzwerkelement empfängt, das über eine Punkt-zu-Punkt-Ethernet-Kommunikationsverbindung (z.B. 106) angeschlossen ist. Gemäß einer Beispielimplementierung wird die Steuernachricht 600 zu einem Medienzugangscontroller 206 der empfangenden Netzwerkschnittstelle geleitet. Gemäß den Lehren der vorliegenden Erfindung stellt ein Ablaufsteuerungsagent 214, der innerhalb der Netzwerkschnittstelle implementiert ist, ob die Steuernachricht 600 Ablaufsteuerungsprioritätsinformationen umfasst, Block 804.
  • Wenn der Ablaufsteuerungsagent 214 kein Prioritätsniveaufeld 610 in der empfangenen Steuernachricht 600 identifiziert, fährt der Prozess mit Block 806 fort, wobei der Ablaufsteuerungsagent 214 die Übertragung aller Inhalte innerhalb des Übertragungspuffers 400 auf der Punkt-zu-Punkt-Verbindung nach Bedarf gemäß dem herkömmlichen Ethernet-Ablaufsteuerungsmechanismus von 802.3x drosselt.
  • Wenn jedoch der Ablaufsteuerungsagent 214 ein Prioritätsniveaufeld 610 in der empfangenen Steuernachricht 600 identifiziert, drosselt der Ablaufsteuerungsagent 214 die Übertragung einer geeigneten Teilmenge des gesamten Inhalts innerhalb des Übertragungspuffers 400, Block 808, gemäß den prioritätsbasierten Ablaufsteuerungsmerkmalen der vorliegenden Erfindung. Wenn, wie oben beschrieben, der Ablaufsteuerungsagent 214 eine Steuernachricht 600 empfängt, die ein Prioritätsniveaufeld 610 umfasst, welches eine Angabe enthält, dass das/die Prioritätsniveau(s) vier (4) und darunter überbelegt ist, erlaubt der Ablaufsteuerungsagent 214 die fortgesetzte Übertragung von Inhalt 406 des Übertragungspuffers 400, der Inhalt mit einem Prioritätsniveau oberhalb des überbelegten Niveaus repräsentiert, durch MAC 206.
  • ALTERNATIVE AUSFÜHRUNGSFORMEN
  • 9 ist ein Blockdiagramm eines als Beispiel dienenden Speichermediums, das mehrere ausführbare Anweisungen umfasst, die bei Ausführung bewirken, dass eine zugreifende Maschine eine oder mehrere Erscheinungsformen des innovativen prioritätsbasierten Ablaufsteuerungsmechanismus der vorliegenden Erfindung implementiert. Mit Bezug darauf umfasst das Speichermedium 900 Inhalte zum Implementieren einer erweiterten Netzwerkschnittstelle 120 mit prioritätsbasierten Ablaufsteuerungsmerkmalen einer skalierbaren Netzwerkschnittstelle 200 der vorliegenden Erfindung gemäß einer alternativen Ausführungsform der vorliegenden Erfindung.
  • In der Beschreibung oben sind zum Zweck der Erklärung zahlreiche spezielle Details dargestellt, um ein gründliches Verstehen der vorliegenden Erfindung zu ermöglichen. Für den Fachmann auf diesem Gebiet ist jedoch erkennbar, dass die vorliegende Erfindung ohne einige dieser speziellen Details ausgeführt werden kann. In anderen Fällen werden bekannte Strukturen und Vorrichtungen in Blockdiagrammform gezeigt.
  • Die vorliegende Erfindung umfasst verschiedene Schritte. Die Schritte der vorliegenden Erfindung können von Hardwarekomponenten ausgeführt werden, wie zum Beispiel den in den 15 gezeigten, oder können in maschinenausführbare Befehle eingebettet werden, die dazu verwendet werden können, einen Universal- oder Spezialprozessor oder Logikschaltungen, die mit den Befehlen programmiert wurden, zur Ausführung der Schritte zu veranlassen. Alternativ können die Schritte durch eine Kombination von Hardware und Software ausgeführt werden. Obwohl die Erfindung im Zusammenhang mit einer Netzwerkschnittstellenvorrichtung beschrieben worden ist, werden ferner Fachleute auf diesem Gebiet erkennen, dass eine solche Funktionalität in eine Reihe von alternativen Ausführungsformen eingebettet sein kann, wie zum Beispiel integriert in eine Rechenvorrichtung, und dass sie ohne weiteres an drahtlose Ethernet-Implementierungen sowie die verdrahtete Umgebung, die hierin beschrieben wird, angepasst werden kann.
  • Die vorliegende Erfindung kann als Computerprogramm bereitgestellt werden, das ein maschinenlesbares Medium umfasst, auf dem Befehle gespeichert sind, die zum Programmieren eines Computers (oder anderer elektronischer Geräte) verwendet werden können, um einen Prozess gemäß der vorliegenden Erfindung auszuführen. Das maschinenlesbare Medium kann Disketten, optische Platten, CD-ROMs und magnetooptische Platten, ROMS, RAMs, EPROMs, EEPROMs, magnetische oder optische Karten, Flash-Speicher oder andere Arten von Medien/maschinenlesbaren Medien, die zum Speichern elektronischer Befehle geeignet sind, umfassen, ist aber nicht darauf beschränkt. Weiterhin kann die vorliegende Erfindung auch als Computerprogramm heruntergeladen werden, wobei das Programm von einem fernen Computer auf einen anfordernden Computer mittels Datensignalen, die in eine Trägerwelle oder ein anderes Ausbreitungsmedium eingebettet sind, über eine Kommunikationsverbindung (z.B. eine Modem- oder Netzverbindung) übertragen werden kann.
  • Viele der Verfahren werden in ihrer grundlegendsten Form beschrieben, es können jedoch Schritte zu den Verfahren hinzugefügt werden oder aus diesen entfernt werden, und Informationen können zu den beschriebenen Steuernachrichten hinzugefügt oder aus diesen entfernt werden, ohne vom grundlegenden Geltungsbereich der vorliegenden Erfindung abzuweichen. Zum Beispiel wird in einer Ausführungsform ein einzelner Empfangspuffer verwendet, der unterschiedliche Schwellsollwerte nutzt, die effektiv die verschiedenen Niveaus der Prioritätsablaufsteuerung unterscheiden. Wenn 50 % der einzelnen Warteschlange voll sind, sende zum Beispiel eine Steuernachricht mit dem Wert 4 (Punkt in der Mitte, d.h. Verkehr mit hohem und niedrigem Prioritäts niveau), bei 75 % voll sende eine Steuernachricht mit dem Wert 2 usw. Fachleute auf dem Gebiet werden erkennen, dass viele weitere Modifizierungen und Anpassungen vorgenommen werden können. Die speziellen Ausführungsformen werden nicht zum Einschränken der Erfindung bereitgestellt, sondern zu ihrer Erläuterung. Der Geltungsbereich der vorliegenden Erfindung darf nicht durch die speziellen Ausführungsformen, die oben angeführt werden, bestimmt werden, sondern nur durch die Ansprüche unten.

Claims (20)

  1. Verfahren, umfassend: Identifizieren (702) einer Empfangsfähigkeit, die mit mehreren Prioritätsniveaus von Ethernet-Verkehr für ein Netzwerkgerät (102, 104) verbunden ist; Feststellen eines Ablaufsteuerungsprioritätsniveaus (610), das auf einer Serviceklasse, einer Serviceart und/oder einer Servicequalität beruht, wobei das Ablaufsteuerungsprioritätsniveau (610) eines der mehreren Prioritätsniveaus bezeichnet, oberhalb und unterhalb dessen das Netzwerkgerät (102, 104) Ethernet-Verkehr aufnehmen kann; und Erzeugen (710) einer Steuernachricht (600), die das Ablaufsteuerungsprioritätsniveau (610) einschließt, um eine Drosselung des Ethernet-Verkehrs oberhalb oder unterhalb des Ablaufsteuerungsprioritätsniveaus von Netzwerkgeräten, die die Steuernachricht erhalten, zu bewirken.
  2. Verfahren nach Anspruch 1, ferner umfassend: Übertragen der erzeugten Steuernachricht (600) an ein kommunikativ angeschlossenes Netzwerkgerät, wobei nach dem Erhalt der erzeugten Steuernachricht (600) das kommunikativ angeschlossene Netzwerkgerät gemäß der erhaltenen Steuernachricht (600) das Unterbrechen einer Teilmenge des Ethernet-Verkehrs bewirkt.
  3. Verfahren nach Anspruch 1, wobei das Identifizieren umfasst: Feststellen der verfügbaren Pufferkapazität für jeden von mehreren Puffern (302, 304, 306), die einer gleich großen Menge von Ethernet-Prioritätsniveaus zugeordnet sind.
  4. Verfahren nach Anspruch 3, wobei die verfügbare Pufferkapazität, die einem bestimmten Ethernet-Prioritätsniveau zugeordnet ist, die Fähigkeit des Puffers (302, 304, 306) bezeichnet, zusätzlichen Ethernet-Verkehr mit diesem Prioritätsniveau zu empfangen.
  5. Verfahren nach Anspruch 3, wobei der Puffer (302, 304, 306) für jedes Prioritätsniveau aus einem oder mehreren Speichergeräten gebildet ist.
  6. Verfahren nach Anspruch 3, wobei die Puffer (302, 304, 306), die jedem der Prioritätsniveaus zugeordnet sind, virtuelle Puffer sind, die innerhalb eines gemeinsamen physischen Puffers implementiert sind.
  7. Verfahren nach Anspruch 3, wobei die erzeugte Steuernachricht (600) die Angabe des Prioritätsniveaus umfasst, oberhalb dessen ein Empfangspuffer verfügbare Kapazität zum Empfangen von Ethernet-Verkehr mit einem zugeordneten Prioritätsniveau aufweist.
  8. Verfahren nach Anspruch 7, wobei ein empfangendes Netzwerkgerät eine Pause in der Übertragung von Ethernet-Verkehr auslöst, der ein Prioritätsniveau aufweist, welches unter dem liegt, das in der empfangenen Steuernachricht(600) angegeben ist.
  9. Verfahren nach Anspruch 1, wobei das Erzeugen der Steuernachricht (600) umfasst: Erzeugen eines Ethernet-Steuerdatenpakets, das ein Prioritätsfeld aufweist, wobei das Prioritätsfeld das Ablaufsteuerungsprioritätsniveau (610) bezeichnet.
  10. Verfahren nach Anspruch 9, wobei das Prioritätsfeld im Kopfabschnitt des Ethernet-Steuerdatenpakets enthalten ist.
  11. Verfahren nach Anspruch 1, ferner umfassend: Empfangen von Ethernet-Verkehr; Identifizieren eines Prioritätsniveaus, das jedem Paket von empfangenem Ethernet-Verkehr zugeordnet ist; und Weiterleiten jedes empfangenen Pakets an einen Empfangspuffer, der zumindestens teilweise auf dem identifizierten Prioritätsniveau, das dem Ethernet-Paket zugeordnet ist, basiert.
  12. Verfahren nach Anspruch 11, ferner umfassend: Überwachen der Empfangsfähigkeit von Puffern, die jedem der Prioritätsniveaus von Ethernet-Verkehr zugeordnet sind; und Ausgabe von Steuernachrichten nach Bedarf, um das Übertragen von mindestens einer Teilmenge des Ethernet-Verkehrs gemäß der identifizierten Empfangsfähigkeit, die dem einen oder den mehreren Prioritätsniveaus zugeordnet ist, zu drosseln.
  13. Datenmedium, das Computerproduktcode darauf gespeichert aufweist, der zum Ausführen aller Schritte nach einem der Ansprüche 1 bis 12 ausgelegt ist, wenn der Programmcode auf einem Computer ausgeführt ist.
  14. Netzwerkschnittstelle (120), umfassend: mehrere Empfangspuffer (302, 304, 306), von denen jeder einem bestimmten Prioritätsniveau des Ethernet-Verkehrs zugeordnet ist; und Steuerlogik (214), die mit den Empfangspuffern (302, 304, 306) verbunden ist, um ein Ablaufsteuerungsprioritätsniveau (610) zu bestimmen, wobei das Ablaufsteuerungsprioritätsniveau (610) auf einer Serviceklasse, einer Serviceart und/oder einer Servicequalität beruht, und um eine Empfangsfähigkeit von jedem der Empfangspuffer (302, 304, 306) festzustellen und selektiv eine oder mehrerer Steuernachrichten (600), die das Ablaufsteuerungsprioritätsniveau (610) enthalten, zu erzeugen, um eines der Ablaufsteuerungsprioritätsniveaus zu bezeichnen, oberhalb und unterhalb dessen die Netzschnittstelle (120) Ethernet-Verkehr empfangen kann, wodurch bewirkt wird, dass ein Netzwerkgerät, das die Steuernachrichten empfängt, den Ethernet-Verkehr oberhalb oder unterhalb des Ablaufsteuerungsprioritätsniveaus (610) drosselt.
  15. Netzwerkschnittstelle (120) nach Anspruch 14, ferner umfassend: einen Sendepuffer, der auf ein Host-Netzwerkgerät und die Steuerlogik (214) anspricht, um Inhalt von einer oder mehreren Anwendungen zu empfangen, die auf dem Host-Netzwerkgerät ausgeführt werden zur Übertragung auf andere Netzwerkgeräte über das Ethernet-Netz, wobei die empfangenen Inhalte eine Angabe des Prioritätsniveaus enthalten.
  16. Netzwerkschnittstelle (120) nach Anspruch 15, wobei die Angabe des Prioritätsniveaus im empfangenen Inhalt durch dessen Quellanwendung bestimmt ist.
  17. Netzwerkschnittstelle (120) nach Anspruch 15, wobei die Steuerlogik (214) Steuernachrichten (600) von anderen Netzschnittstellen (102, 104) empfängt, wobei mindestens eine Teilmenge der Steuernachrichten (600) ein Ablaufsteuerungsprioritätsniveau enthält, das eine Unfähigkeit bezeichnet, Ethernet-Verkehr mit einem Prioritätsniveau zu empfangen, welches niedriger als das bezeichnete Ablaufsteuerungsprioritätsniveau ist.
  18. Netzwerkschnittstelle (120) nach Anspruch 17, wobei die Steuerlogik (214) das Übertragen von Ethernet-Verkehr abbricht, der ein Prioritätsniveau aufweist, welches niedriger ist als das bezeichnete Ablaufsteuerungsprioritätsniveau vom Sendepuffer zum Netzwerkgerät (102, 104), das die Steuernachrichten (600) ausgegeben hat.
  19. Netzwerkschnittstelle (120) nach Anspruch 14, wobei die Steuerlogik (214) ein Medienzugangscontroller (MAC) (206) ist.
  20. Netzwerkschnittstelle (120) nach Anspruch 19, wobei der MAC (206) eine verbesserte Ablaufsteuerungssteuerungsfähigkeit aufweist zum Realisieren der Ablaufsteuerung in nur einer Teilmenge des Ethernet-Verkehrs.
DE60213974T 2002-01-03 2002-12-26 Verfahren und vorrichtung zur prioritäts-basierten flusskontrolle in einer ethernet-architektur Expired - Lifetime DE60213974T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/037,669 US20030123393A1 (en) 2002-01-03 2002-01-03 Method and apparatus for priority based flow control in an ethernet architecture
US37669 2002-01-03
PCT/US2002/041566 WO2003058896A1 (en) 2002-01-03 2002-12-26 A method and apparatus for priority based flow control in an ethernet architecture

Publications (2)

Publication Number Publication Date
DE60213974D1 DE60213974D1 (de) 2006-09-28
DE60213974T2 true DE60213974T2 (de) 2007-08-30

Family

ID=21895636

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60213974T Expired - Lifetime DE60213974T2 (de) 2002-01-03 2002-12-26 Verfahren und vorrichtung zur prioritäts-basierten flusskontrolle in einer ethernet-architektur

Country Status (11)

Country Link
US (1) US20030123393A1 (de)
EP (1) EP1393512B1 (de)
KR (1) KR100674727B1 (de)
CN (2) CN101572672B (de)
AT (1) ATE336842T1 (de)
AU (1) AU2002359871A1 (de)
CA (1) CA2450823A1 (de)
DE (1) DE60213974T2 (de)
HK (1) HK1060673A1 (de)
TW (1) TWI264893B (de)
WO (1) WO2003058896A1 (de)

Families Citing this family (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7054940B2 (en) * 2002-01-25 2006-05-30 Thomson Licensing Adaptive cost of service for communication network based on level of network congestion
US7088675B1 (en) * 2002-03-08 2006-08-08 Mindspeed Technologies, Inc. Wrap path for communication ring access control
US7151742B1 (en) * 2002-03-08 2006-12-19 Mindspeed Technologies, Inc. Flow control for communication ring access control
US20040057433A1 (en) * 2002-09-24 2004-03-25 Daniel Wayne T. Methods and systems for prioritizing packets of data in a communications system
US7818447B1 (en) * 2003-03-28 2010-10-19 Emc Corporation End-to-end broadcast based flow control in a switch fabric
US20040199472A1 (en) * 2003-04-04 2004-10-07 Dobbins Kurt A. Method and apparatus for billing over a network
US20040199604A1 (en) * 2003-04-04 2004-10-07 Dobbins Kurt A. Method and system for tagging content for preferred transport
US7743166B2 (en) * 2003-04-04 2010-06-22 Ellacoya Networks, Inc. Scaleable flow-based application and subscriber traffic control
US8321584B2 (en) * 2003-04-04 2012-11-27 Ellacoya Networks, Inc. Method and apparatus for offering preferred transport within a broadband subscriber network
US20040196842A1 (en) * 2003-04-04 2004-10-07 Dobbins Kurt A. Method and system for according preferred transport based on node identification
US7561590B1 (en) * 2003-05-05 2009-07-14 Marvell International Ltd. Network switch having virtual input queues for flow control
DE112004001256T5 (de) * 2003-07-07 2006-05-18 Yazaki Corp. Übertragungskapazitätszuteilungsverfahren, Kommunikationsnetzwerk und Netzwerkressourceverwaltungsvorrichtung
US20050063379A1 (en) * 2003-09-18 2005-03-24 Samsung Electronics Co., Ltd Apparatus and method for traffic profiling in a massively parallel router
US7639608B1 (en) * 2003-10-23 2009-12-29 Foundry Networks, Inc. Priority aware MAC flow control
US7761589B1 (en) 2003-10-23 2010-07-20 Foundry Networks, Inc. Flow control for multi-hop networks
US20050094558A1 (en) * 2003-11-05 2005-05-05 Interdigital Technology Corporation Wireless local area network (WLAN) methods and components that utilize traffic prediction
US20050114498A1 (en) * 2003-11-06 2005-05-26 International Business Machines Corporation Method and apparatus for managing data transfer in a data processing system
US7593329B2 (en) * 2004-10-29 2009-09-22 Broadcom Corporation Service aware flow control
US7948880B2 (en) * 2004-10-29 2011-05-24 Broadcom Corporation Adaptive dynamic thresholding mechanism for link level flow control scheme
US20060256770A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Interface for configuring ad hoc network packet control
US7599289B2 (en) * 2005-05-13 2009-10-06 Lockheed Martin Corporation Electronic communication control
US20060256814A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Ad hoc computer network
US20060256717A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Electronic packet control system
US8175112B1 (en) * 2005-06-07 2012-05-08 Sprint Communications Company L.P. Monitoring and control of an Ethernet link using pseudo-wire interfaces
KR101119362B1 (ko) 2005-08-18 2012-03-06 삼성전자주식회사 레지덴셜 이더넷 시스템에서 시간 의존적인 스트림에 대한허가 방법
US7706277B2 (en) * 2005-11-18 2010-04-27 Intel Corporation Selective flow control
US8045473B2 (en) * 2005-11-28 2011-10-25 Cisco Technology, Inc. Tailored relief for congestion on application servers for real time communications
US9049158B2 (en) * 2005-11-29 2015-06-02 Alcatel Lucent Communication session admission control systems and methods
CN100407842C (zh) * 2006-02-13 2008-07-30 华为技术有限公司 一种资源监控的方法
US8139552B1 (en) * 2006-07-07 2012-03-20 Rockstar Bidco, LP Access category enforcement in wireless local area networks
US8867338B2 (en) 2006-09-19 2014-10-21 Futurewei Technologies, Inc. Faults Propagation and protection for connection oriented data paths in packet networks
US8018843B2 (en) * 2006-09-19 2011-09-13 Futurewei Technologies, Inc. Faults propagation and protection for connection oriented data paths in packet networks
US8520517B2 (en) 2007-02-21 2013-08-27 Broadcom Corporation Switch fabric end-to-end congestion avoidance mechanism
JP4421625B2 (ja) * 2007-03-20 2010-02-24 富士通株式会社 フロー制御方法および受信装置
US8019910B2 (en) * 2007-07-31 2011-09-13 Hewlett-Packard Development Company, L.P. Transaction flow control in PCI express fabric
US8589534B2 (en) * 2007-09-13 2013-11-19 Ricoh Company, Ltd. Device information management apparatus, device information management method, and storage medium which operates during a failure
US8305896B2 (en) * 2007-10-31 2012-11-06 Cisco Technology, Inc. Selective performance enhancement of traffic flows
US20090154354A1 (en) * 2007-12-14 2009-06-18 Broadcom Corporation Proxy reaction engine in a congestion management system
JP2009194488A (ja) * 2008-02-13 2009-08-27 Nec Corp 通信装置及びそれに用いるフロー制御方法並びにそのプログラム
US20090310489A1 (en) * 2008-06-17 2009-12-17 Bennett Andrew M Methods and apparatus using a serial data interface to transmit/receive data corresponding to each of a plurality of logical data streams
US8665886B2 (en) 2009-03-26 2014-03-04 Brocade Communications Systems, Inc. Redundant host connection in a routed network
US8369335B2 (en) 2010-03-24 2013-02-05 Brocade Communications Systems, Inc. Method and system for extending routing domain to non-routing end stations
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US9231890B2 (en) 2010-06-08 2016-01-05 Brocade Communications Systems, Inc. Traffic management for virtual cluster switching
US9001824B2 (en) 2010-05-18 2015-04-07 Brocade Communication Systems, Inc. Fabric formation for virtual cluster switching
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US8989186B2 (en) 2010-06-08 2015-03-24 Brocade Communication Systems, Inc. Virtual port grouping for virtual cluster switching
US9461840B2 (en) 2010-06-02 2016-10-04 Brocade Communications Systems, Inc. Port profile management for virtual cluster switching
US8861364B2 (en) * 2010-05-16 2014-10-14 Altera Corporation Method and apparatus for implementing non-blocking priority based flow control
US8885488B2 (en) 2010-06-02 2014-11-11 Brocade Communication Systems, Inc. Reachability detection in trill networks
US9246703B2 (en) 2010-06-08 2016-01-26 Brocade Communications Systems, Inc. Remote port mirroring
US9608833B2 (en) 2010-06-08 2017-03-28 Brocade Communications Systems, Inc. Supporting multiple multicast trees in trill networks
US8446914B2 (en) 2010-06-08 2013-05-21 Brocade Communications Systems, Inc. Method and system for link aggregation across multiple switches
US9806906B2 (en) 2010-06-08 2017-10-31 Brocade Communications Systems, Inc. Flooding packets on a per-virtual-network basis
US9628293B2 (en) 2010-06-08 2017-04-18 Brocade Communications Systems, Inc. Network layer multicasting in trill networks
US20110321052A1 (en) * 2010-06-23 2011-12-29 International Business Machines Corporation Mutli-priority command processing among microcontrollers
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
KR20120037785A (ko) * 2010-10-12 2012-04-20 삼성전자주식회사 부하 균형을 유지하는 시스템 온 칩 및 그것의 부하 균형 유지 방법
CN102143053B (zh) 2010-11-12 2014-08-20 华为技术有限公司 传输数据的方法、装置和系统
US9141447B2 (en) * 2010-12-15 2015-09-22 Microsoft Technology Licensing, Llc Conditional deferred queuing
US9270572B2 (en) 2011-05-02 2016-02-23 Brocade Communications Systems Inc. Layer-3 support in TRILL networks
US8873392B1 (en) 2011-06-09 2014-10-28 Marvell International Ltd. Method and apparatus for controlling the flow of packets in a data network
US8879549B2 (en) 2011-06-28 2014-11-04 Brocade Communications Systems, Inc. Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch
US9401861B2 (en) 2011-06-28 2016-07-26 Brocade Communications Systems, Inc. Scalable MAC address distribution in an Ethernet fabric switch
US9407533B2 (en) 2011-06-28 2016-08-02 Brocade Communications Systems, Inc. Multicast in a trill network
US8948056B2 (en) 2011-06-28 2015-02-03 Brocade Communication Systems, Inc. Spanning-tree based loop detection for an ethernet fabric switch
US9007958B2 (en) 2011-06-29 2015-04-14 Brocade Communication Systems, Inc. External loop detection for an ethernet fabric switch
US8885641B2 (en) 2011-06-30 2014-11-11 Brocade Communication Systems, Inc. Efficient trill forwarding
US9736085B2 (en) * 2011-08-29 2017-08-15 Brocade Communications Systems, Inc. End-to end lossless Ethernet in Ethernet fabric
US9699117B2 (en) 2011-11-08 2017-07-04 Brocade Communications Systems, Inc. Integrated fibre channel support in an ethernet fabric switch
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
US8995272B2 (en) 2012-01-26 2015-03-31 Brocade Communication Systems, Inc. Link aggregation in software-defined networks
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US8867360B2 (en) * 2012-03-22 2014-10-21 Avaya Inc. Method and apparatus for lossless behavior for multiple ports sharing a buffer pool
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US10277464B2 (en) 2012-05-22 2019-04-30 Arris Enterprises Llc Client auto-configuration in a multi-switch link aggregation
CN104272668B (zh) 2012-05-23 2018-05-22 博科通讯系统有限公司 层3覆盖网关
US9602430B2 (en) 2012-08-21 2017-03-21 Brocade Communications Systems, Inc. Global VLANs for fabric switches
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
US9413691B2 (en) 2013-01-11 2016-08-09 Brocade Communications Systems, Inc. MAC address synchronization in a fabric switch
US9350680B2 (en) 2013-01-11 2016-05-24 Brocade Communications Systems, Inc. Protection switching over a virtual link aggregation
US9548926B2 (en) 2013-01-11 2017-01-17 Brocade Communications Systems, Inc. Multicast traffic load balancing over virtual link aggregation
US9565113B2 (en) 2013-01-15 2017-02-07 Brocade Communications Systems, Inc. Adaptive link aggregation and virtual link aggregation
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
WO2014145750A1 (en) 2013-03-15 2014-09-18 Brocade Communications Systems, Inc. Scalable gateways for a fabric switch
US9699001B2 (en) 2013-06-10 2017-07-04 Brocade Communications Systems, Inc. Scalable and segregated network virtualization
US9565028B2 (en) 2013-06-10 2017-02-07 Brocade Communications Systems, Inc. Ingress switch multicast distribution in a fabric switch
US9241370B2 (en) * 2013-06-14 2016-01-19 Netgear, Inc. Method and apparatus for implementing coexistence of multiple homogeneous radios and traffic management therein
US9806949B2 (en) 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9544219B2 (en) 2014-07-31 2017-01-10 Brocade Communications Systems, Inc. Global VLAN services
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US9524173B2 (en) 2014-10-09 2016-12-20 Brocade Communications Systems, Inc. Fast reboot for a switch
US9699029B2 (en) 2014-10-10 2017-07-04 Brocade Communications Systems, Inc. Distributed configuration management in a switch group
US9628407B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Multiple software versions in a switch group
US9626255B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Online restoration of a switch snapshot
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
CN105828421A (zh) * 2015-01-08 2016-08-03 中兴通讯股份有限公司 一种终端及终端省电的方法
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US9807005B2 (en) 2015-03-17 2017-10-31 Brocade Communications Systems, Inc. Multi-fabric manager
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
CN108965157B (zh) * 2017-05-19 2020-08-07 华为技术有限公司 数据传输方法、装置、设备及系统
US10972396B2 (en) 2017-09-29 2021-04-06 Hewlett Packard Enterprise Development Lp Mapping network frame flows to classes of service to minimize network frame flow disruption
CN108124002A (zh) * 2017-12-01 2018-06-05 北京明朝万达科技股份有限公司 一种数据发送方法及装置
CN111343240B (zh) * 2020-02-12 2022-08-16 北京字节跳动网络技术有限公司 一种服务请求的处理方法、装置、电子设备及存储介质
US11770835B2 (en) * 2020-02-28 2023-09-26 Qualcomm Incorporated Sidelink and uplink prioritized cancellation
KR102371485B1 (ko) 2020-07-15 2022-03-07 고려대학교 산학협력단 이더넷 기반 네트워크 내 트래픽 제어 방법
CN112217738B (zh) * 2020-11-04 2023-08-25 成都中科大旗软件股份有限公司 一种文旅数据服务的流控方法、系统、存储介质及终端
CN112398748A (zh) * 2021-01-21 2021-02-23 全时云商务服务股份有限公司 基于mq的智能限流方法、装置及计算机可读介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600364A (en) * 1992-12-09 1997-02-04 Discovery Communications, Inc. Network controller for cable television delivery systems
GB2277816B (en) * 1993-05-04 1997-09-03 Motorola Inc Data communication system
JP2888376B2 (ja) * 1993-12-31 1999-05-10 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 複数トラヒック・クラス用の交換装置
EP0748087A1 (de) * 1995-06-09 1996-12-11 International Business Machines Corporation Zugriffsteuerungssystem eines gemeinsamen Pufferspeichers
US5983278A (en) * 1996-04-19 1999-11-09 Lucent Technologies Inc. Low-loss, fair bandwidth allocation flow control in a packet switch
US6226266B1 (en) * 1996-12-13 2001-05-01 Cisco Technology, Inc. End-to-end delay estimation in high speed communication networks
US6169729B1 (en) * 1997-04-08 2001-01-02 Level One Communications, Inc. 200 Mbps PHY/MAC apparatus and method
US6154464A (en) * 1997-05-09 2000-11-28 Level One Communications, Inc. Physical layer device having a media independent interface for connecting to either media access control entitices or other physical layer devices
US6018515A (en) * 1997-08-19 2000-01-25 Ericsson Messaging Systems Inc. Message buffering for prioritized message transmission and congestion management
CN1214689C (zh) * 1998-06-19 2005-08-10 杜松网络公司 用于把数据导向目的地址的设备和方法
US6970424B2 (en) * 1998-11-10 2005-11-29 Extreme Networks Method and apparatus to minimize congestion in a packet switched network
US6405258B1 (en) * 1999-05-05 2002-06-11 Advanced Micro Devices Inc. Method and apparatus for controlling the flow of data frames through a network switch on a port-by-port basis
US6859435B1 (en) * 1999-10-13 2005-02-22 Lucent Technologies Inc. Prevention of deadlocks and livelocks in lossless, backpressured packet networks
DE10123821A1 (de) * 2000-06-02 2001-12-20 Ibm Geschaltete Ethernet-Netzwerke
US6981054B1 (en) * 2000-06-06 2005-12-27 Advanced Micro Devices, Inc. Flow control arrangement in a network switch based on priority traffic
US6957269B2 (en) * 2001-01-03 2005-10-18 Advanced Micro Devices, Inc. Method and apparatus for performing priority-based flow control
US20020141427A1 (en) * 2001-03-29 2002-10-03 Mcalpine Gary L. Method and apparatus for a traffic optimizing multi-stage switch fabric network
AU2002305894B2 (en) * 2001-06-18 2007-03-15 Exxonmobil Research And Engineering Company Hydrothermal drilling method and system
US7239636B2 (en) * 2001-07-23 2007-07-03 Broadcom Corporation Multiple virtual channels for use in network devices

Also Published As

Publication number Publication date
CA2450823A1 (en) 2003-07-17
WO2003058896A1 (en) 2003-07-17
CN101572672B (zh) 2013-04-24
CN1633786A (zh) 2005-06-29
HK1060673A1 (en) 2004-08-13
DE60213974D1 (de) 2006-09-28
TWI264893B (en) 2006-10-21
CN101572672A (zh) 2009-11-04
TW200307424A (en) 2003-12-01
US20030123393A1 (en) 2003-07-03
AU2002359871A1 (en) 2003-07-24
KR20040015766A (ko) 2004-02-19
KR100674727B1 (ko) 2007-01-25
CN1633786B (zh) 2010-05-12
EP1393512A1 (de) 2004-03-03
ATE336842T1 (de) 2006-09-15
EP1393512B1 (de) 2006-08-16

Similar Documents

Publication Publication Date Title
DE60213974T2 (de) Verfahren und vorrichtung zur prioritäts-basierten flusskontrolle in einer ethernet-architektur
DE60317837T2 (de) Verfahren und System zur Messung von Last und Kapazität auf einem Kanal mit variabler Kapazität
DE60117957T2 (de) Verfahren, System und Rechnerprogrammprodukt zur Bandbreitenzuteilung in einem System mit Mehrfachzugriff
DE112020002498T5 (de) System und verfahren zur erleichterung einer effizienten paketweiterleitung in einer netzwerkschnittstellensteuerung (nic)
DE60203450T2 (de) Verfahren und Schalter zur Überlastregelung
DE60201682T2 (de) Anordnung zur erzeugung mehrerer virtueller warteschlangenpaare aus einer komprimierten warteschlange auf der basis gemeinsamer attribute
DE602005003142T2 (de) Vorrichtung und verfahren zur unterstützung von verbindungsherstellung in einem offload der netzwerkprotokollverarbeitung
DE69738104T2 (de) Priorisierung von in einem router zu übertragenen daten
DE602004005994T2 (de) Verteiltes Dienstgüte-Verwaltungssystem
DE69826680T2 (de) Hochintegrierte mehrschichtige Vermittlungsstellenelementarchitektur
DE112006000126B4 (de) Verfahren und Media Access Controller für Mesh-Netzwerke mit adaptiver Quality-of-Service Verwaltung
DE60309414T2 (de) Metro-Ethernet Netzwerksystem mit einer selektiven aufwärtigen Pausenachrichtenübermittlung
DE60034654T2 (de) System und Verfahren zur Adaption und Verwaltung von IP Dienstqualität
DE10123821A1 (de) Geschaltete Ethernet-Netzwerke
DE102007038964A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten
DE102015108145A1 (de) Lokale Dienstverkettung mit virtuellen Maschinen und virtualisierten Behältern in software-definierter Vernetzung
DE102020105776A1 (de) Kostengünstige Überlastungsisolierung für verlustfreies Ethernet
DE60319042T2 (de) Endgerät, Verfahren zur Verarbeitung von Kommunikationsdaten innerhalb des Endgeräts und Program zur Ausführung des Verfahrens
DE602004013414T2 (de) Verfahren und Vorrichtung zum verbesserten Weitergeben und Hochladen von Netzwerkdaten
DE102007052673A1 (de) Rechensystem und Verfahren zum Verwalten verfügbarer Ressourcen eines insbesondere für eine Steuerung eines Industrieroboters vorgesehenen Rechensystems
DE112005000705B4 (de) Konfiguration von Umleitungstabellen
WO2005004432A1 (de) Verfahren zur steuerung von datenverbindungen
DE102011116987B4 (de) Zusammenführen von Daten für Bluetooth-Vorrichtungen
DE60110064T2 (de) Optimierung des Datenverkehrs in einem feststehenden ad-hoc Netz
WO2004068258A2 (de) Zuordnung von verteilungsgewichten zu verbindungsabschnitten in einem paketnetz mit verkehrsverteilung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition