DE112012001320B4 - Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP) - Google Patents

Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP) Download PDF

Info

Publication number
DE112012001320B4
DE112012001320B4 DE112012001320.4T DE112012001320T DE112012001320B4 DE 112012001320 B4 DE112012001320 B4 DE 112012001320B4 DE 112012001320 T DE112012001320 T DE 112012001320T DE 112012001320 B4 DE112012001320 B4 DE 112012001320B4
Authority
DE
Germany
Prior art keywords
rpi
lower level
traffic
pfc
switch
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
DE112012001320.4T
Other languages
English (en)
Other versions
DE112012001320T5 (de
DE112012001320T8 (de
Inventor
Keshav Govind Kamble
Vijoy Pandey
Dayavanti Gopal Kamath
Dar-Ren Leu
Jayakrishna Kidambi
Chandarani Mendon
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 DE112012001320T5 publication Critical patent/DE112012001320T5/de
Application granted granted Critical
Publication of DE112012001320T8 publication Critical patent/DE112012001320T8/de
Publication of DE112012001320B4 publication Critical patent/DE112012001320B4/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
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/205Quality of Service based
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Abstract

Verfahren zum Realisieren von Flusssteuerung in einem Switching-Netzwerk, das eine obere Ebene und eine untere Ebene aufweist, die eine Vielzahl von Entitäten der unteren Ebene aufweist, wobei das Verfahren aufweist:- auf einem Haupt-Switch in der oberen Ebene mit einer Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden der Vielzahl von Entitäten der unteren Ebene verbunden ist, Realisieren auf jedem der Vielzahl von Anschlüssen eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der Entität der unteren Ebene entspricht, die mit diesem Anschluss verbindbar ist;- Einreihen von Datenverkehr in eine Warteschlange, der zwischen dem Haupt-Switch und RPIs auf der Vielzahl von Entitäten der unteren Ebene innerhalb virtueller Anschlüsse aus der Vielzahl virtueller Anschlüsse übermittelt wird, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird; und- Durchsetzen von prioritätsgestützter Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses durch den Haupt-Switch, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine dem gegebenen virtuellen Anschluss entsprechende RPI befindet,- wobei die Entität der unteren Ebene einen im Durchfluss-Modus konfigurierten Folge-Switch aufweist;- die bestimmte RPI einen Datenanschluss aufweist; und- das Verfahren weiterhin ein Empfangen des PFC-Datenrahmens durch den Folge-Switch, ein Entfernen einer die bestimmte RPI angebenden RPI-Kennung aus dem PFC-Datenrahmen, um einen Standard-PFC-Datenrahmen zu erhalten, und ein Übermitteln des Standard-PFC-Datenrahmens über den der bestimmten RPI entsprechenden Datenanschluss aufweist.

Description

  • Technisches Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft allgemein die Netzwerkdatenübertragung und genauer eine verbesserte Switching-Netzwerkarchitektur für Computernetzwerke.
  • Hintergrund der Erfindung
  • Wie im Stand der Technik bekannt, beruht die Netzwerkdatenübertragung üblicherweise auf dem allgemein bekannten Modell „Open Systems Interconnection“ (OSI) mit sieben Schichten, das die Funktionen verschiedener Protokollschichten festlegt, ohne dabei die Schichtprotokolle selbst festzulegen. Bei den sieben Schichten, die hierin manchmal als Schicht 7 bis Schicht 1 bezeichnet werden, handelt es sich um die Anwendungs-, Darstellungs-, Sitzungs-, Transport-, Netzwerk-, Datenverbindungs- bzw. physische Schicht.
  • Bei einer Quellstation beginnt die Datenübertragung, wenn Daten von einem Quellprozess in der oberen (Anwendungs-)Schicht des Funktionsstapels empfangen werden. Die Daten werden in jeder nachfolgend niedrigeren Schicht des Stapels sequenziell formatiert, bis in der Datenverbindungsschicht ein Datenrahmen von Bits erhalten wird. Schließlich werden die Daten in der physischen Schicht in der Form elektromagnetischer Signale über eine Netzwerkverbindung in Richtung einer Zielstation übermittelt. Bei Empfang bei der Zielstation werden die übermittelten Daten in der umgekehrten Reihenfolge, in der die Daten auf der Quellstation verarbeitet wurden, auf einen entsprechenden Funktionsstapel weitergeleitet, wodurch die Informationen an einen Empfangsprozess auf der Zielstation geliefert werden.
  • Das Prinzip geschichteter Protokolle, wie den durch das OSI-Modell unterstützten, liegt darin, dass beim vertikalen Durchlaufen der Modellschichten durch Daten die Schichten an der Quell- und Zielstation auf Peer-to-Peer-Weise interagieren (d.h. Schicht N mit Schicht N) und die Funktionen jeder einzelnen Schicht durchgeführt werden, ohne die Schnittstelle zwischen der Funktion der einzelnen Schicht und den unmittelbar oberhalb und unterhalb befindlichen Protokollschichten zu beeinflussen. Um diese Wirkung zu erreichen, fügt üblicherweise jede Schicht des Protokollstapels in der Quellstation den durch den Sendeprozess erzeugten Daten Informationen (in Form eines gekapselten Headers) hinzu, wenn sich die Daten durch den Stapel abwärts bewegen. Bei der Zielstation werden diese gekapselten Header einer nach dem anderen entfernt, wenn sich die Daten durch die Schichten des Stapels nach oben bewegen, bis die entkapselten Daten an den Empfangsprozess geliefert werden.
  • Das physische Netzwerk, das die Quell- und die Zielstationen verbindet, kann jede beliebige Anzahl von Netzwerkknoten enthalten, die durch eine oder mehrere kabelgebundene oder drahtlose Netzwerkverbindungen verbunden sind. Zu den Netzwerknoten zählen üblicherweise Hosts (z.B. Servercomputer, Clientcomputer, Mobileinheiten usw.), die Netzwerkdatenverkehr, Switches und Router erzeugen und in Anspruch nehmen. Herkömmliche Netzwerk-Switches verbinden unterschiedliche Netzwerksegmente und verarbeiten Daten in der Datenverbindungsschicht (Schicht 2) des OSI-Modells und leiten diese weiter. Switches stellen üblicherweise zumindest grundlegende Brückenfunktionen bereit, zu denen das Filtern von Datenverkehr aufgrund von Media-Access-Control(MAC)-Adressen der Schicht 2, das Erfahren der Quell-MAC-Adressen von Rahmen (frames) und das Weiterleiten von Rahmen auf der Grundlage von Ziel-MAC-Adressen zählt. Von Routern, die unterschiedliche Netzwerke im Netzwerk des OSI-Modells verbinden (Schicht 3), werden üblicherweise Netzwerkdienste wie beispielsweise Routenverarbeitung, Pfadbestimmung und Pfad-Switching realisiert.
  • Ein großes Netzwerk enthält üblicherweise eine große Anzahl von Switches, die unabhängig auf der Verwaltungs-, Steuerungs- und Datenebene arbeiten. Demzufolge muss jeder Switch einzeln konfiguriert werden, er realisiert das unabhängige Steuern von Datenverkehr (z.B. Zugangskontrolllisten (access control lists (ACLs)), und leitet Datenverkehr unabhängig von durch irgendeinen anderen der Switches abgewickeltem Datenverkehr weiter.
  • US 2010 / 0 054 260 A1 offenbart ein Verfahren und eine Vorrichtung zum Verteilen von Paketen zwischen virtuellen Ports.
  • US 2010 / 0 303 075 A1 offenbart, wie Daten über virtuelle Bahnen zwischen Netz-Switch und virtueller Maschine ausgetauscht werden können.
  • US 2011 / 0 007 746 A1 offenbart die Aufrechterhaltung von Dienstqualität im Netz mit einer virtuellen Maschine.
  • Ausgehend von diesem Stand der Technik stellt sich die Erfindung die Aufgabe, den Fluss in einem Switching-Netzwerk so zu steuern, dass die weitergeleiteten Daten in keiner Form verändert werden.
  • Die Aufgabe wird erfindungsgemäß gelöst durch das Verfahren zum Realisieren von Flusssteuerung in einem Switching-Netzwerk nach Anspruch 1, den Haupt-Switch für ein Switching-Netzwerk nach Anspruch 10, das Switching-Netzwerk nach Anspruch 15, das Computerprogrammprodukt nach Anspruch 20 und die Vorrichtung zum Realisieren von Flusssteuerung in einem Switching-Netzwerk nach Anspruch 26. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der jeweiligen Unteransprüche.
  • In mindestens einer Ausführungsform enthält ein Switching-Netzwerk eine einen Haupt-Switch enthaltende obere Ebene und eine untere Ebene, die eine Vielzahl von Entitäten der unteren Ebene enthält. Der Haupt-Switch enthält eine Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden Entität der Vielzahl von Entitäten der unteren Ebene verbunden ist. Jeder der Vielzahl von Anschlüssen enthält eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden Schnittstelle einer Vielzahl entfernt angeordneter physischer Schnittstellen (remote physical interfaces (RPIs)) auf einer mit diesem Anschluss verbundenen Entität der unteren Ebene entspricht. Jeder der Vielzahl von Anschlüssen enthält zudem eine Empfangsschnittstelle, die als Reaktion auf ein Empfangen von Datenverkehr von einer bestimmten Entität der unteren Ebene aus der Vielzahl von Entitäten der unteren Ebene den Datenverkehr in eine Warteschlange des virtuellen Anschlusses aus der Vielzahl virtueller Anschlüsse einreiht, welcher der RPI auf der bestimmten Entität der unteren Ebene entspricht, welche die Quelle für den Datenverkehr war.
  • Der Haupt-Switch enthält weiterhin eine Switch-Steuereinheit, die Datenverkehr vom virtuellen Anschluss zu einem Ausgangsanschluss aus der Vielzahl von Anschlüssen verteilt, von dem der Datenverkehr weitergeleitet wird.
  • In mindestens einer Ausführungsform enthält ein Switching-Netzwerk eine obere Ebene und eine untere Ebene, die eine Vielzahl von Entitäten der unteren Ebene enthält. Ein Haupt-Switch in der oberen Ebene, der eine Vielzahl von Anschlüssen besitzt, von denen jeder mit einer entsprechenden Entität der unteren Ebene verbunden ist, realisiert auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse, die jeweils einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der Entität der unteren Ebene entsprechen, die mit diesem Anschluss verbunden ist. Zwischen dem Haupt-Switch und RPIs übermittelter Datenverkehr wird innerhalb virtueller Anschlüsse in eine Warteschlange eingereiht, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird. Der Haupt-Switch setzt prioritätsgestützte Flusssteuerung (priority-based flow control (PFC)) an Datenverkehr eines gegebenen virtuellen Anschlusses durch, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine entsprechende RPI befindet.
  • In mindestens einer Ausführungsform enthält ein Switching-Netzwerk eine obere Ebene mit einem Haupt-Switch und eine untere Ebene mit einer Vielzahl von Entitäten der unteren Ebene. Der Haupt-Switch, der eine Vielzahl von Anschlüssen besitzt, von denen jeder mit einer entsprechenden Entität der unteren Ebene verbunden ist, realisiert auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden entfernt angeordneten physischen Schnittstelle einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der Entität der unteren Ebene entspricht, die mit diesem Anschluss verbunden ist. Zwischen dem Haupt-Switch und RPIs übermittelter Datenverkehr wird innerhalb virtueller Anschlüsse in eine Warteschlange eingereiht, die den RPIs entsprechen, mit denen der Datenverkehr übermittelt wird. Der Haupt-Switch wendet Datenverarbeitung auf den Datenverkehr gemäß einer Steuerungsrichtlinie an, die mindestens auf dem virtuellen Anschluss beruht, in dem der Datenverkehr in eine Warteschlange eingereiht ist, so dass der Haupt-Switch unterschiedliche Richtlinien auf Datenverkehr anwendet, der in Warteschlangen für zwei virtuelle Anschlüsse auf demselben Anschluss des Haupt-Switch eingereiht ist.
  • Figurenliste
  • Die Offenbarung an sich sowie eine bevorzugte Verwendungsart und Vorteile davon werden am besten unter Bezugnahme auf die folgende detaillierte Beschreibung einer veranschaulichenden Ausführungsform in Verbindung mit den begleitenden Zeichnungen deutlich, in denen:
    • 1 ein übergeordnetes Blockschaubild einer Datenverarbeitungsumgebung gemäß einer Ausführungsform zeigt;
    • 2 ein übergeordnetes Blockschaubild einer Ausführungsform einer Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (distributed fabric protocol (DFP)) zeigt, die innerhalb der Datenverarbeitungsumgebung von 1 realisiert werden kann;
    • 3 ein übergeordnetes Blockschaubild einer weiteren Ausführungsform einer DFP-Switching-Netzwerkarchitektur zeigt, die innerhalb der Datenverarbeitungsumgebung von 1 realisiert werden kann;
    • 4 gemäß einer Ausführungsform ein detaillierteres Blockschaubild eines Host in 3 zeigt;
    • 5A gemäß einer Ausführungsform ein übergeordnetes Blockschaubild eines Haupt-Switch eines DFP-Switching-Netzwerks zeigt;
    • 5B gemäß einer Ausführungsform ein übergeordnetes Blockschaubild einer beispielhaften Ausführungsform eines Folge-Switch eines DFP-Switching-Netzwerks zeigt;
    • 6 gemäß einer Ausführungsform eine Ansicht der DFP-Switching-Netzwerkarchitektur von 2 oder 3 zeigt, die als ein virtualisierter Switch über eine Verwaltungsschnittstelle dargestellt ist;
    • 7 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Prozesses zum Verwalten eines DFP-Switching-Netzwerks zeigt;
    • in 8 gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses abgebildet ist, durch den Netzwerkdatenverkehr von einer unteren Ebene zu einer oberen Ebene eines DFP-Switching-Netzwerks weitergeleitet wird, das eingerichtet ist, als ein virtualisierter Switch zu arbeiten;
    • 9 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Prozesses zeigt, durch den ein Haupt-Switch auf der oberen Ebene einen von der unteren Ebene des DFP-Switching-Netzwerks empfangenen Datenrahmen verarbeitet;
    • 10 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Prozesses zeigt, durch den ein Haupt-Switch oder Host auf der oberen Ebene einen von einem Haupt-Switch der unteren Ebene des DFP-Switching-Netzwerks empfangenen Datenrahmen verarbeitet;
    • 11 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Verfahrens zum Betreiben einer Verbindungszusammenlegungsgruppe (link aggregation group (LAG)) in einem DFP-Switching-Netzwerk zeigt;
    • 12 gemäß einer Ausführungsform eine beispielhafte Ausführungsform einer LAG-Datenstruktur darstellt, die verwendet wird, um eine Mitgliedschaft einer LAG zu speichern;
    • 13 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Verfahrens zum Rundsenden (multicasting) in einem DFP-Switching-Netzwerk zeigt;
    • 14 beispielhafte Ausführungsformen von Rundsendeindex-Datenstrukturen von Schicht 2 und Schicht 3 darstellt;
    • 15 gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Verfahrens zur verbesserten Übermittlungsauswahl (enhanced transmission selection (ETS) ) in einem DFP-Switching-Netzwerk zeigt;
    • 16 gemäß einer Ausführungsform eine beispielhafte Datenstruktur mit verbesserter Übermittlungsauswahl (ETS) zeigt, die verwendet werden kann, um ETS für einen Haupt-Switch eines DFP-Switching-Netzwerks zu konfigurieren;
    • 17 einen übergeordneten logischen Ablaufplan eines beispielhaften Verfahrens zeigt, durch das ein DFP-Switching-Netzwerk prioritätsgestützte Flusssteuerung (PFC) und/oder andere Dienste auf einer unteren Ebene realisiert;
    • 18 gemäß einer Ausführungsform einen beispielhaften PFC-Datenrahmen 1800 darstellt, der verwendet werden kann, um prioritätsgestützte Flusssteuerung (PFC) und/oder andere Dienste auf einer unteren Ebene eines DFP-Switching-Netzwerks zu realisieren;
    • 19A gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Prozesses zeigt, durch den ein Folge-Switch der unteren Ebene eines DFP-Switching-Netzwerks einen von einem Haupt-Switch empfangenen PFC-Datenrahmen verarbeitet; und
    • 19B gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Prozesses zeigt, durch den ein Host der unteren Ebene in einem DFP-Switching-Netzwerk einen von einem Haupt-Switch empfangenen PFC-Datenrahmen verarbeitet.
  • DETAILLIERTE BESCHREIBUNG VERANSCHAULICHENDER AUSFÜHRUNGSFORMEN
  • Hierin wird eine Switching-Netzwerk-Architektur offenbart, die vereinheitlichte Verwaltung, Steuerung und Datenebenen bei einer Vielzahl verbundener Switches in einem Computernetzwerk einführt.
  • Unter Bezugnahme auf die Figuren und unter besonderer Bezugnahme auf 1 wird gemäß einer Ausführungsform ein übergeordnetes Blockschaubild einer beispielhaften Datenverarbeitungsumgebung 100 veranschaulicht. Wie gezeigt, enthält die Datenverarbeitungsumgebung 100 eine Sammlung von Ressourcen 102. Die Ressourcen 102, zu denen verschiedene Hosts, Clients, Switches, Router, Speicher usw. zählen können, sind zum Datenaustausch miteinander verbunden und können physisch oder virtuell in einem oder mehreren (nicht gezeigten) öffentlichen, privaten, Gemeinschafts- oder Cloud-Netzwerken oder einer Kombination davon gruppiert sein. Auf diese Weise kann die Datenverarbeitungsumgebung 100 Infrastruktur, Plattformen, Software und/oder Dienste anbieten, die für vielfältige Client-Einheiten 110 verfügbar sind, wie beispielsweise PCs (z.B. Desktop, Laptop, Netbook, Tablet oder Handheld) 110a, Smartphones 110b, Servercomputersysteme 110c und Unterhaltungselektronik wie Medienwiedergabeeinheiten (z.B. Set-Top-Boxen, DVD-Spieler oder digitale Videorekorder (digital video recorders (DVRs)) 110d. Es versteht sich, dass die in 1 gezeigten Typen von Client-Einheiten 110 nur veranschaulichend sind und dass es sich bei den Client-Einheiten 110 um jeden beliebigen Typ von elektronischer Einheit handeln kann, die in der Lage ist, auf Ressourcen 102 zuzugreifen und mit ihnen über ein Paketnetzwerk Daten auszutauschen.
  • Unter Bezugnahme auf 2 wird ein übergeordnetes Blockschaubild einer beispielhaften Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (DFP) veranschaulicht, die innerhalb der Ressourcen 102 gemäß einer Ausführungsform realisiert werden kann. In der veranschaulichten beispielhaften Ausführungsform enthalten die Ressourcen 102 eine Vielzahl physischer und/oder virtueller Netzwerk-Switches, die ein DFP-Switching-Netzwerk 200 bilden. Im Gegensatz zu herkömmlichen Netzwerkumgebungen, in denen jeder Switch unabhängige Verwaltung, Steuerung und Datenebenen realisiert, realisiert das DFP-Switching-Netzwerk 200 vereinheitlichte Verwaltung, Steuerung und Datenebenen, wodurch alle teilhabenden Switches als ein vereinheitlichter virtualisierter Switch gesehen werden können und somit das Bereitstellen, Konfigurieren und Verwalten der Netzwerkstruktur vereinfacht werden.
  • Das DFP-Switching-Netzwerk 200 enthält zwei oder mehr Ebenen von Switches, was in der vorliegenden Ausführungsform eine untere Ebene mit einer Vielzahl von Folge-Switches, zu denen die Folge-Switches 202a bis 202d zählen, sowie eine obere Ebene mit einer Vielzahl von Haupt-Switches beinhaltet, zu denen die Haupt-Switches 204a bis 204b zählen. In einer Ausführungsform mit wie gezeigt zwei Ebenen ist ein Anschluss jedes Haupt-Switch 204 durch eine der ebenenübergreifenden Verbindungen 206 direkt mit einem der Anschlüsse jedes Folge-Switch 202 verbunden, und ein Anschluss jedes Haupt-Switch 204 ist durch eine Hauptverbindung 208 direkt oder indirekt mit einem Anschluss mindestens eines anderen Haupt-Switch 204 verbunden. Wenn solche Unterscheidungen relevant sind, werden Anschlüsse, die über die ebenenübergreifenden Verbindungen 206 Switch-zu-Switch-Datenübertragung unterstützen, als „switchübergreifende Anschlüsse“ und andere Anschlüsse (z.B. der Folge-Switches 202a bis 202d) als „Datenanschlüsse“ bezeichnet.
  • In einer bevorzugten Ausführungsform sind die Folge-Switches 202 eingerichtet, in der Datenebene in einem Durchgriffsmodus zu arbeiten, was bedeutet, dass der gesamte bei den Datenanschlüssen 210 der Folge-Switches 202 (z.B. von Hosts) empfangene eingehende Datenverkehr durch die Folge-Switches 202 über switchübergreifende Anschlüsse und die ebenenübergreifenden Verbindungen 206 zu einem der Haupt-Switches 204 weitergeleitet wird. Die Haupt-Switches 204 wiederum dienen als Struktur für den Datenverkehr (somit dem Anschein einer verteilten Struktur) und realisieren das gesamte Paket-Switching und Routing für den Datenverkehr. Mit dieser Anordnung kann Datenverkehr zum Beispiel in dem durch Pfeile 212a bis 212d angezeigten ersten beispielhaften Fluss und dem durch Pfeile 214a bis 214e angezeigten zweiten beispielhaften Fluss weitergeleitet werden.
  • Wie ersichtlich ist, bedingt die Zentralisierung von Switching und Routing der Folge-Switches 202 in den Haupt-Switches 204, dass die Haupt-Switches 204 Kenntnis über die Eingangsdatenanschlüsse der Folge-Switches 202 besitzen, auf denen Datenverkehr empfangen wurde. In einer bevorzugten Ausführungsform wird für die Switch-zu-Switch-Datenübertragung über die Verbindungen 206, 208 ein Protokoll der Schicht 2 verwendet, wie beispielsweise das von der Cisco Corporation entwickelte Protokoll „Inter-Switch Link“ (ISL) oder IEEE 802.1QnQ, das explizites Kennzeichnen verwendet, um virtuelle lokale Netzwerke (virtual local area networks (VLANs)) über dem DFP-Switching-Netzwerk 200 einzurichten. Jeder Folge-Switch 202 wendet vorzugsweise VLAN-Tags (die auch als Service-Tags (S-tags) bekannt sind) auf Datenrahmen an, um dem Empfänger-Haupt-Switch 204 den Eingangsdatenanschluss 210 auf dem Folge-Switch 202 mitzuteilen, auf dem der Datenrahmen empfangen wurde. In alternativen Ausführungsformen kann der Eingangsdatenanschluss durch eine andere Kennzeichnung mitgeteilt werden, zum Beispiel einen MAC-in-MAC-Header, eine eindeutige MAC-Adresse, einen IP-in-IP-Header usw. Wie weiter unten erläutert, besitzt jeder Datenanschluss 210 auf jedem Folge-Switch 202 einen entsprechenden virtuellen Anschluss (oder Vport) auf jedem Haupt-Switch 204, und auf dem Datenanschluss 210 eines Folge-Switch 202 eingehende Datenrahmen werden so behandelt, als ob sie auf dem entsprechenden Vport des Empfänger-Haupt-Switch 204 eingehen würden.
  • Unter Bezugnahme auf 3 wird nun gemäß einer Ausführungsform ein übergeordnetes Blockschaubild einer weiteren beispielhaften Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (DFP) veranschaulicht, die innerhalb der Ressourcen 102 realisiert werden kann. Die in 3 gezeigte DFP-Architektur, die vereinheitlichte Verwaltung, Steuerung und Datenebenen auf einem DFP-Switching-Netzwerk 300 realisiert, kann innerhalb der Ressourcen 102 als eine Alternative zu oder zusätzlich zur in 2 abgebildeten DFP-Switching-Netzwerkarchitektur realisiert werden.
  • In der veranschaulichten beispielhaften Ausführungsform enthalten die Ressourcen 102 innerhalb des DFP-Switching-Netzwerks 300 einen oder mehrere physische und/oder virtuelle Netzwerk-Switches, die mindestens einen der Haupt-Switches 204a bis 204b in einer oberen Ebene realisieren. Das Switching-Netzwerk 300 enthält in einer unteren Ebene zusätzlich eine Vielzahl physischer Hosts 302a bis 302d. Wie in 4 in einer beispielhaften Ausführungsform abgebildet, enthält jeder Host 302 eine oder mehrere Netzwerkschnittstellen 404 (z.B. Netzwerkschnittstellenkarten (network interface cards (NICs)), konvergente Netzwerkadapter (converged network adapters (CNAs)) usw.), die eine Schnittstelle bereitstellen, durch die dieser Host 302 mit einem oder mehreren Haupt-Switch(es) 204 Daten austauscht. Der Host 302 enthält zusätzlich einen oder mehrere Prozessoren 402 (die üblicherweise eine oder mehrere integrierte Schaltungen aufweisen), die Daten und Programmcode verarbeiten, um zum Beispiel Daten oder Software in der Datenverarbeitungsumgebung 100 zu verwalten, zu bearbeiten oder auf sie zuzugreifen. Der Host 302 enthält zudem Eingabe/Ausgabe(E/A)-Einheiten 406, wie beispielsweise Anschlüsse, Anzeigen, Benutzereingabeeinheiten usw., die Eingaben empfangen und Ausgaben der durch den Host 302 und oder andere Ressourcen in der Datenverarbeitungsumgebung 100 durchgeführten Verarbeitung bereitstellen. Schließlich enthält der Host 302 einen Datenspeicher 410, der eine oder mehrere flüchtige oder nichtflüchtige Speichereinheiten enthalten kann, wozu Arbeitsspeicher, Halbleiterlaufwerke, optische oder magnetische Plattenlaufwerke, Bandlaufwerke usw. zählen. Im Datenspeicher 410 kann zum Beispiel Programmcode (wozu Software, Firmware oder eine Kombination davon zählt) gespeichert sein.
  • Unter erneuter Bezugnahme auf 3 enthält der durch jeden Host 302 ausgeführte Programmcode einen Überwacher für virtuelle Maschinen (virtual machine monitor (VMM)) 304 (der auch als ein Hypervisor bezeichnet wird), der die Ressourcen seines entsprechenden physischen Hosts 302 virtualisiert und verwaltet. Jeder VMM 304 weist einer oder mehreren virtuellen Maschinen (VMs) 306 Ressourcen zu und unterstützt das Ausführen dieser VMs in einer oder mehreren möglicherweise heterogenen Betriebssystempartitionen. Jede der VMs 304 kann eine (und in manchen Fällen mehrere) virtuelle Netzwerkschnittstellen (virtuelle NICs (VNICs)) besitzen, die Netzwerkverbindung zumindest in den Schichten 2 und 3 des OSI-Modells bereitstellen.
  • Wie abgebildet können eine oder mehrere der VMMs 304a bis 304d optional einen oder mehrere virtuelle Switches (VSs) 310 bereitstellen (z.B. einen oder mehrere Fibre-Channel-Switch(es), Ethernet-Switch(es), Fibre-Channel-over-Ethernet(FCoE)-Switches usw.), an welche die VMs 306 angebunden werden können. Gleichermaßen können eine oder mehrere der Netzwerkschnittstellen 404 der Hosts 302 optional einen oder mehrere virtuelle Switches (VSs) 312 bereitstellen (z.B. einen oder mehrere Fibre-Channel-Switch(es), Ethernet-Switch(es), FCoE-Switches usw.), an welche die VMs 306 angebunden werden können. Somit stehen die VMs 306 über die ebenenübergreifenden Verbindungen 206 in Netzwerkdatenaustausch mit dem oder den Haupt-Switches 204, den Netzwerkschnittstellen 404, der durch die VMMs 304 bereitgestellten Virtualisierungsschicht und optional einem oder mehreren virtuellen Switches 310, 312, die in Programmcode und/oder Hardware realisiert sind.
  • Wie in 2 sind die virtuellen Switches 310, 312, falls sie vorhanden sind, vorzugsweise eingerichtet, auf der Datenebene in einem Durchgriffsmodus zu arbeiten, was bedeutet, dass der gesamte von den VMs 306 an den virtuellen Datenanschlüssen der virtuellen Switches 310, 312 empfangene Datenverkehr durch die virtuellen Switches 310, 312 über die Netzwerkschnittstellen 404 und die ebenenübergreifenden Verbindungen 206 zu einem der Haupt-Switches 204 weitergeleitet wird. Die Haupt-Switches 204 wiederum dienen als die Struktur für den Datenverkehr und realisieren das gesamte Switching und Routing für den Datenverkehr.
  • Wie vorstehend erläutert, bringt die Zentralisierung des Switching und Routing für die Hosts 302 in dem oder den Haupt-Switches 204 mit sich, dass der Haupt-Switch 204, der Datenverkehr von einem Host 302 empfängt, Kenntnis über die Quelle des Datenverkehrs (z.B. die Verbindungszusammenlegungsgruppe (LAG), die Schnittstelle, den physischen Anschluss, den virtuellen Anschluss usw.) besitzt. Um wiederum die Datenübertragung solcher Informationen zur Quelle des Datenverkehrs zu ermöglichen, wird durch die Datenübertragung über die ebenenübergreifenden Verbindungen 206 vorzugsweise ein Protokoll der Schicht 2 verwendet, wie beispielsweise das durch die Cisco Corporation entwickelte Protokoll „Inter-Switch Link“ (ISL) oder IEEE 802.1 QnQ, das explizites Kennzeichnen beinhaltet, um mehrere virtuelle lokale Netzwerke (VLANs) der Schicht 2 über dem DFP-Switching-Netzwerk 300 einzurichten. Jeder Host 302 bringt vorzugsweise VLAN-Tags an Datenrahmen an, um dem Empfänger-Haupt-Switch 204 die Datenverkehrsquelle (z.B. den physischen Anschluss, die LAG-Schnittstelle, den virtuellen Anschluss (z.B. die virtuelle VM-Netzwerkschnittstellenkarte (VNIC), die NIC-Partition der Einzelstamm-E/A-Virtualisierung (Single Root I/O Virtualization (SR-IOV)) oder den FCoE-Anschluss usw.) mitzuteilen, von denen der Datenrahmen erhalten wurde. Jede solche Datenverkehrsquelle besitzt einen entsprechenden Vport auf jedem Haupt-Switch 204, und von einer Datenverkehrsquelle auf einem Host 302 ausgehende Datenrahmen werden behandelt, als ob sie auf dem entsprechenden Vport des Empfänger-Haupt-Switch 204 eingehen würden. Allgemein werden Datenverkehrsquellen auf den Hosts 302 und Datenanschlüssen 210 auf Folge-Switches 202 nachstehend als entfernt angeordnete physische Schnittstellen (remote physical interfaces (RPIs) ) bezeichnet, es sei denn es ist eine Unterscheidung zwischen den verschiedenen Typen von RPIs beabsichtigt.
  • In den DFP-Switching-Netzwerken 200 und 300 kann durch Konfigurieren der Folge-Switches 202 und/oder der Hosts 302 Lastausgleich erreicht werden. Zum Beispiel kann in einer möglichen Ausführungsform einer statischen Konfiguration Datenverkehr auf der Grundlage der Quell-RPI zwischen den Haupt-Switches 204 aufgeteilt werden. Wenn in dieser beispielhaften Ausführungsform zwei Haupt-Switches 204 eingesetzt werden, kann jeder Folge-Switch 202 oder Host 302 so konfiguriert werden, dass er zwei statische RPI-Gruppen realisiert, von denen jede die Hälfte der Gesamtanzahl seiner RPIs enthält, und dann Datenverkehr von jeder der RPI-Gruppen zu einem anderen der zwei Haupt-Switches 204 übermittelt. Gleichermaßen kann im Falle, dass vier Haupt-Switches 204 eingesetzt werden, jeder Folge-Switch 202 oder Host 302 so konfiguriert werden, dass er vier statische RPI-Gruppen realisiert, von denen jede ein Viertel der Gesamtanzahl seiner RPIs enthält, und dann Datenverkehr von jeder der RPI-Gruppen zu einem anderen der vier Haupt-Switches 204 übermittelt.
  • Unter Bezugnahme auf 5A wird ein übergeordnetes Blockschaubild einer beispielhaften Ausführungsform eines Switch 500a veranschaulicht, der verwendet werden kann, um jeden beliebigen der Haupt-Switches 204 der 2 bis 3 zu realisieren.
  • Wie gezeigt, enthält der Switch 500a eine Vielzahl physischer Anschlüsse 502a bis 502m. Jeder Anschluss 502 enthält eine entsprechende einer Vielzahl von Empfangs(Rx)-Schnittstellen 504a bis 504m und eine entsprechende einer Vielzahl von Eingangswarteschlangen 506a bis 506m, die durch die zugehörige Rx-Schnittstelle 504 empfangene Datenrahmen puffert. Jeder der Anschlüsse 502a bis 502m enthält weiterhin eine entsprechende einer Vielzahl von Ausgangswarteschlangen 514a bis 514m und eine entsprechende einer Vielzahl von Übermittlungs(Tx)-Schnittstellen 520a bis 520m, die Datenrahmen von einer zugeordneten Ausgangswarteschlange 514 übermitteln.
  • In einer Ausführungsform ist jede der Eingangswarteschlangen 506 und der Ausgangswarteschlangen 514 jedes Anschlusses 502 eingerichtet, mehrere (z.B. acht) Warteschlangeneinträge je RPI in der unteren Ebene des DFP-Switching-Netzwerks 200, 300 bereitzustellen, von der Eingangsdatenverkehr auf diesem Anschluss 502 empfangen werden kann. Die für eine RPI der unteren Ebene festgelegte Gruppe mehrerer Warteschlangeneinträge innerhalb eines Haupt-Switch 204 ist hierin als ein virtueller Anschluss (Vport) festgelegt, wobei jeder Warteschlangeneintrag im Vport einer VOQ entspricht. Zum Beispiel ist für ein DFP-Switching-Netzwerk 200, wie es in 2 abgebildet ist, der Anschluss 502a des Switch 500a eingerichtet, für jeden der k+1 Datenanschlüsse 210 des mit dem Anschluss 502a verbundenen Folge-Switch 202 einen entsprechenden der Eingangs-Vports 522a0 bis 522ak und einem entsprechenden der Ausgangs-Vports 524a0 bis 524ak zu realisieren. Wenn der Switch 500a wie in 3 gezeigt in einem DFP-Switching-Netzwerk 300 realisiert ist, ist der Anschluss 502a eingerichtet, einen entsprechenden Vport 522 für jede der k+1 Datenverkehrsquellen im Host 302 zu realisieren, die durch eine ebenenübergreifende Verbindung 206 mit dem Anschluss 502a verbunden ist. Gleichermaßen ist für ein DFP-Switching-Netzwerk 200, wie es in 2 abgebildet ist, der Anschluss 502m des Switch 500a eingerichtet, für jeden der k+1 Datenanschlüsse 210 eines mit einem Port 502a verbundenen Folge-Switch 202 einen entsprechenden der Eingangs-Vports 522a0 bis 522ak und einem entsprechenden der Ausgangs-Vports 524a0 bis 524ak zu realisieren. Wenn der Switch 500a wie in 3 gezeigt in einem DFP-Switching-Netzwerk 300 realisiert ist, realisiert der Anschluss 502a einen entsprechenden Vport 522 für jede der k+1 Datenverkehrsquellen im Host 302, die durch eine ebenenübergreifende Verbindung 206 mit dem Anschluss 502a verbunden ist. Wie ersichtlich ist, kann die Anzahl von auf jedem der Anschlüsse 502 realisierten Vports abhängig von der Anzahl von RPIs auf der bestimmten Entität der unteren Ebene (z.B. dem Folge-Switch 202 oder dem Host 302), die mit jedem der Anschlüsse 502 verbunden sind, variieren. Somit wird jede RPI auf der unteren Ebene eines DFP-Switching-Netzwerks 200 oder 300 einem Satz von Eingangs- und Ausgangs-Vports 522, 524 auf einem physischen Anschluss 502 jedes Haupt-Switch 204 zugeordnet, und wenn Datenrahmen von dieser RPI auf dem physischen Anschluss 502 empfangen werden, kann die Empfangsschnittstelle 504 des Anschlusses 502 die Datenrahmen auf der Grundlage einer RPI-Kennung im Datenverkehr an den geeigneten Eingangs-Vport 522 weiterleiten.
  • Der Haupt-Switch 204 kann nach Bedarf Vports 522, 524 auf seinen physischen Anschlüssen 502 zum Beispiel abhängig vom Verbindungsstatus mit den Entitäten der unteren Ebene 202, 302 erzeugen, deaktivieren oder migrieren. Wenn zum Beispiel ein Folge-Switch 202 durch einen Ersatz-Folge-Switch 202 mit einer größeren Anzahl von Anschlüssen ersetzt wird, erzeugen die Haupt-Switches 204 automatisch zusätzliche Vports 522, 524 auf dem relevanten physischen Anschluss 502, um die zusätzlichen RPIs auf dem Ersatz-Folge-Switch 202 aufzunehmen. Wenn gleichermaßen eine auf einem mit einem ersten physischen Anschluss eines Haupt-Switch 204 verbundenen Host 302 ausgeführte VM 306 zu einem anderen Host 302 migriert, der mit einem anderen zweiten physischen Anschluss des Haupt-Switch 204 verbunden ist (d.h. die Migration bleibt innerhalb der Switch-Domäne), migriert der Haupt-Switch 204 die der VM 306 entsprechenden Vports 522, 524 automatisch vom ersten physischen Anschluss 502 des Haupt-Switch 204 zum zweiten physischen Anschluss 502 des Haupt-Switch 204. Wenn die VM 306 ihre Migration innerhalb eines zuvor festgelegten Leerungsintervalls abschließt, kann der Datenverkehr für die VM 306 durch die Switch-Steuereinheit 530a neu markiert und an den Ausgangs-Vport 524 auf dem zweiten physischen Anschluss 502 weitergeleitet werden. Auf diese Weise kann die Migration der VM 306 ohne Unterbrechung oder Verlust des Datenverkehrs erreicht werden, was insbesondere für verlustanfällige Protokolle vorteilhaft ist.
  • Jeder Haupt-Switch 204 erkennt zudem einen Verlust einer switchübergreifenden Verbindung 206 zu einer Entität der unteren Ebene (z.B. ändert sich der Verbindungszustand von „aktiv“ zu „inaktiv“, die switchübergreifende Verbindung 206 wird getrennt oder eine Entität der unteren Ebene fällt aus). Wenn ein Verlust einer switchübergreifenden Verbindung 206 erkannt wird, deaktiviert der Haupt-Switch 204 automatisch die zugehörigen Vports 522, 524, bis die Wiederherstellung der switchübergreifenden Verbindung 206 erkannt wird. Wenn die switchübergreifende Verbindung 206 nicht innerhalb eines zuvor festgelegten Leerungsintervalls wiederhergestellt wird, vernichtet der Haupt-Switch 204 die der Entität der unteren Ebene zugeordneten Vports 522, 524, mit denen der Datenaustausch unterbrochen wurde, um die Warteschlangenkapazität wiederherzustellen. Während des Leerungsintervalls erlaubt die Switch-Steuereinheit 530a auf der Eingangsseite das Puffern von Datenverkehr, der für einen deaktivierten Ausgangs-Vport 524 bestimmt ist. Wenn die switchübergreifende Verbindung 206 wiederhergestellt und der deaktivierte Ausgangs-Vport 524 wieder aktiviert ist, kann der gepufferte Datenverkehr innerhalb eines Verlusts an den Ausgangs-Vport 524 weitergeleitet werden.
  • Der Switch 500a enthält zudem eine Kreuzschiene 510, die in der Lage ist, Datenrahmen von jeder beliebigen Eingangswarteschlange 506a bis 506m zu jeder beliebigen Ausgangswarteschlange 514a bis 514m (und damit zwischen jedem beliebige Eingangs-Vport 522 und jedem beliebigen Ausgangs-Vport 524) unter der Leitung der Switch-Steuereinheit 530a intelligent zu verteilen. Wie ersichtlich ist, kann die Switch-Steuereinheit 530a mit einem oder mehreren zentralen oder verteilten zweckbestimmten oder universellen Verarbeitungselementen oder Logikeinheiten realisiert werden, welche die Steuerung vollständig in Hardware oder üblicher durch das Ausführen von Firmware und/oder Software durch ein Verarbeitungselement realisieren können.
  • Um Datenrahmen intelligent umschalten zu können, baut die Switch-Steuereinheit 530a eine oder mehrere Datenebenen-Datenstrukturen auf und pflegt sie, zum Beispiel eine Weiterleitungsinformations-Datenbank (forwarding information base (FIB)) 532a, die allgemein als Weiterleitungstabelle in inhaltsadressierbarem Speicher (content-addressable memory (CAM)) realisiert ist. Im abgebildeten Beispiel enthält die FIB 532a eine Vielzahl von Einträgen 534, zu denen zum Beispiel ein MAC-Feld 536, ein Anschlusskennungs(port identifier (PID))-Feld 538 und ein Kennungsfeld eines virtuellen Anschlusses (virtual port (vport) identifier (VPID) field) 540 beinhaltet. Jeder Eintrag 534 ordnet somit eine Ziel-MAC-Adresse eines Datenrahmens einem bestimmten Vport 520 auf einem bestimmten Ausgangsanschluss 502 für den Datenrahmen zu. Die Switch-Steuereinheit 530a baut die FIB 332a in einer automatisierten Weise auf, indem aus beobachteten Datenrahmen eine Zuordnung zwischen den Anschlüssen 502 und den Vports 520 sowie die von den Datenrahmen angegebenen Ziel-MAC-Adressen erhalten und in der FIB 532a gespeichert werden. Die Switch-Steuereinheit 530a steuert danach die Kreuzschiene 510 so, dass Datenrahmen gemäß den in der FIB 532a gespeicherten Zuordnungen verteilt werden. Somit verwaltet jeder Haupt-Switch 204 seine QoS, die ACL und weitere Verwaltungsdatenstrukturen der Ebene 2 und Ebene 3 für jeden Vport, der den RPIs in der unteren Ebene entspricht.
  • Die Switch-Steuereinheit 530a realisiert zudem ein Verwaltungsmodul 550, das als das Verwaltungs- und Steuerungszentrum für den vereinheitlichten virtualisierten Switch dient. In einer Ausführungsform enthält jeder Haupt-Switch 204 ein Verwaltungsmodul 350, jedoch ist das Verwaltungsmodul 350 nur eines einzigen Haupt-Switch 204 (der hierein als der Verwaltungs-Haupt-Switch 204 bezeichnet wird) eines gegebenen DFP-Switching-Netzwerks 200 oder 300 zu jedem bestimmten Zeitpunkt betriebsfähig. Im Falle eines Ausfalls eines dann als der Verwaltungs-Haupt-Switch 204 dienenden Haupt-Switch 204 (was z.B. durch den Verwaltungs-Haupt-Switch 204 aufgrund des Fehlens der Überwachungssignal-Nachrichten über eine Haupt-Verbindung 208 erkannt werden kann), übernimmt ein anderer Haupt-Switch 204, der zuvor festgelegt oder aus den verbleibenden betriebsfähigen Haupt-Switches 204 ausgewählt werden kann, vorzugsweise automatisch die Rolle des Verwaltungs-Haupt-Switch 204 und verwendet sein Verwaltungsmodul 350 zum Bereitstellen eines zentralisierten Verwaltens und Steuerns des DFP-Switching-Netzwerks 200 oder 300.
  • Das Verwaltungsmodul 550 enthält vorzugsweise eine Verwaltungsschnittstelle 552, zum Beispiel eine XML- oder HTML-Schnittstelle, die als Reaktion auf ein Anmelden und Eingeben von Administratorzugangsdaten einem Administrator zugänglich ist, der sich an einer über ein Netzwerk verbundenen Administratorkonsole befindet (z.B. einem der Clients 110a bis 110c) . Das Verwaltungsmodul 550 bietet vorzugsweise über die Verwaltungsschnittstelle 552 eine globale Ansicht aller Anschlüsse, die sich auf allen Switches (z.B. den Switches 204 und/oder 202) in einem DFP-Switching-Netzwerk 200 oder 300 befinden. Zum Beispiel zeigt 6 gemäß einer Ausführungsform eine Ansicht des DFP-Switching-Netzwerks 200 von 2, das als ein virtualisierter Switch 600 über die Verwaltungsschnittstelle 552 dargestellt wird. In dieser Ausführungsform kann der Haupt-Switch 204 als ein virtuelles Switching-Chassis angesehen werden, wobei die Folge-Switches 202 als virtuelle Leitungsanschlusskarten dienen. In diesem Beispiel bietet der virtualisierte Switch 600, der zum Beispiel grafisch und/oder tabellarisch in einer Anzeige der Administratorkonsole dargestellt werden kann, virtualisierte Anschlüsse (Pa bis Pf) 602a, die den Datenanschlüssen und switchübergreifenden Anschlüssen des Folge-Switch 202a entsprechen, PI bis Pp 602b, die den Datenanschlüssen und switchübergreifenden Anschlüssen des Folge-Switch 202b entsprechen, Pq bis Ps 602c, die den Datenanschlüssen und switchübergreifenden Anschlüssen des Folge-Switch 202c entsprechen, und Pw bis Pz 602d, die den Datenanschlüssen und switchübergreifenden Anschlüssen des Folge-Switch 202d entsprechen. Darüber hinaus stellt der virtualisierte Switch 600 durch Pg bis Pk 602e die switchübergreifenden Anschlüsse des Haupt-Switch 204a und durch Pt bis Pv 602f die switchübergreifenden Anschlüsse des Haupt-Switch 204b dar. Weiterhin stellt der virtualisierte Switch 600 jeden auf einem Haupt-Switch 204 realisierten Vport 522, 524 mit einem entsprechenden Satz virtueller Ausgangswarteschlangen (virtual output queues (VOQs)) 604 dar. Zum Beispiel wird jeder der auf den Haupt-Switches 204a, 204b realisierten Vports 522, 524 durch einen entsprechenden von VOQ-Sätzen 604a bis 604k dargestellt. Durch Interagieren mit dem virtualisierten Switch 600 kann der Administrator (z.B. über grafische, textliche numerische und/oder andere Eingaben) die gewünschte Steuerung für einen oder mehrere (oder alle) Anschlüsse oder Vports eines oder mehrerer (oder aller) Folge-Switches 202 und Haupt-Switches 204 im DFP-Switching-Netzwerk 200 über eine vereinheitlichte Schnittstelle verwalten und einrichten. Es ist zu beachten, dass die Realisierung von Sätzen von VOQs 604a bis 604k innerhalb des virtualisierten Switch 600 zusätzlich zu den virtualisierten Anschlüssen Pa bis Pf 602a, PI bis Pp 602b, Pq bis Ps 602c und Pw bis Pz 602d das Realisieren von individualisierter Steuerung für Datenverkehr jeder RPI (und jeder Datenverkehrsklassifikation der RPI) auf jeder Ebene (oder beiden Ebenen) eines DFP-Switching-Netzwerks 200 oder 300 erlaubt. Wie nachstehend weiter erläutert, kann ein Administrator somit eine gewünschte Steuerung für eine bestimmte Datenverkehrsklassifikation eines bestimmten Datenanschlusses 210 des Folge-Switch 202a durch Interagieren mit dem virtualisierten Anschluss Pa des virtualisierten Switch 600 realisieren. Alternativ dazu oder zusätzlich kann der Administrator eine gewünschte Steuerung für diese Datenverkehrsklassifikation für diesen Datenanschluss 210 durch Interagieren mit einer bestimmten VOQ einrichten, die dieser Datenverkehrsklassifikation auf dem VOQ-Satz 604 entspricht, die den Eingangs-Vport 522 oder Ausgangs-Vport 524 darstellt, der dem Datenanschluss 210 entspricht.
  • Unter erneuter Bezugnahme auf 5A enthält die Switch-Steuereinheit 530a weiterhin ein Steuermodul 560a das verwendet werden kann, um die gewünschte Steuerung für Datenrahmen zu realisieren, die ein DFP-Switching-Netzwerk 200 oder 300 durchlaufen. Das Steuermodul 560a enthält ein lokales Richtlinienmodul 562, das beim Eingang oder Ausgang auf der Grundlage einzelner Vports ein geeignetes Paket von Steuerungsrichtlinien für den Switch 500a realisiert. Das Steuermodul 560 kann weiterhin eine lokale Zugangskontrollliste (ACL) 564 enthalten, die den Eingangszugang zum Switch 500a auf der Grundlage einzelner Vports beschränkt.
  • Der Verwaltungs-Haupt-Switch 204 kann weiterhin optional ein entfernt angeordnetes Richtlinienmodul 566 und eine entfernt angeordnete ACL 568 enthalten, die beim Eingang und/oder Ausgang auf der Grundlage einzelner Datenanschlüsse einen gewünschten Satz von Steuerungsrichtlinien und Zugangssteuerung auf einem oder mehreren der Folge-Switches 202 oder der virtuellen Switches 310, 312 realisieren. Der Verwaltungs-Haupt-Switch 204 kann vorteilhafterweise neu hinzugefügte oder aktualisierte Steuerungsinformationen (z.B. eine Steuerungsrichtlinie oder ACL) für einen anderen Haupt-Switch 204, Folge-Switch 202 oder virtuellen Switch 310, 312 über ein reserviertes Verwaltungs-VLAN zum Ziel-Switch verschieben. Somit können ACLs, Steuerungsrichtlinien und andere Steuerungsinformationen für den virtualisierten Switch durchlaufenden Datenverkehr durch die Haupt-Switches 204 auf den Vports 522, 524 der Haupt-Switches 204, durch Folge-Switches 202 an den Datenanschlüssen 210 und/oder auf den virtuellen Anschlüssen der virtuellen Switches 310, 312 durchgesetzt werden.
  • Die Fähigkeit, Richtlinien und Zugangskontrolle global an einem oder mehreren gewünschten Orten innerhalb eines DFP-Switching-Netzwerks 200 oder 300 realisieren zu können, erleichtert eine Reihe von Verwaltungsfunktionen. Um zum Beispiel einen gewünschten Lastausgleich zwischen den Haupt-Switches 204 zu erreichen, können durch die Folge-Switches 202 und/oder die virtuellen Switches 310, 312 homogene oder heterogene Steuerungsrichtlinien realisiert werden, wodurch eine gewünschte Verteilung des den oder die Haupt-Switch(es) 204 durchlaufenden Datenverkehrs für Switching und Routing realisiert werden. In einer bestimmten Realisierung kann die Lastverteilung gemäß den verschiedenen Datenverkehrstypen erfolgen, wobei auf unterschiedlichen Haupt-Switches 204 unterschiedliche Datenübertragungsprotokolle ausgeführt werden. Die Folge-Switches 202 und die Hosts 302, die mit den Haupt-Switches 204 verbunden sind, können somit eine gewünschte Lastverteilung realisieren, indem Protokolldateneinheiten (protocol data units (PDUs) von jedem einer Vielzahl von diversen Datenverkehrstypen zum für dieses Protokoll verantwortlichen Haupt-Switch 204 geleitet werden.
  • Obwohl in 5A nicht explizit veranschaulicht, sollte verstanden werden, dass in zumindest manchen Ausführungsformen die Switch-Steuereinheit 530a über das Rahmen-Switching der Schicht 2 hinaus zusätzlich in Schicht 3 (und darüber) Routing und andere Paketverarbeitung wie beim Stand der Technik bekannt realisiert sein kann. In solchen Fällen kann die Switch-Steuereinheit 530a eine Routinginformationsdatenbank (routing information base (RIB)) enthalten, die Routen Adressen der Schicht 3 zuordnet.
  • Unter Bezugnahme auf 5B ist nun ein übergeordnetes Blockschaubild einer beispielhaften Ausführungsform eines Switch 500b abgebildet, der verwendet werden kann, um jeden beliebigen der Haupt-Switches 202 von 2 zu realisieren. Wie durch gleiche Bezugszeichen angegeben, kann ein Switch 500b einem Switch 500a entsprechend aufgebaut sein, mit einer Vielzahl von Anschlüssen 502a bis 502m, einer Switch-Steuereinheit 530b und einem durch die Switch-Steuereinheit 530b gesteuerten Kreuzschienen-Switch 510. Da der Switch 500b jedoch im Durchgriffsmodus betrieben werden soll, der die letztendliche Zuständigkeit für das Weiterleiten von Rahmen den Haupt-Switches 204 überlässt, wird die Switch-Steuereinheit 530b vereinfacht. In der veranschaulichten Ausführungsform enthält zum Beispiel jeder Eintrag 534 der FIB 332b ein Steuerungsfeld 570 zum Angeben von Werten für ein oder mehrere Rahmenfelder (z.B. Ziel-MAC-Adresse, RPI usw.), die zum Klassifizieren der Rahmen verwendet werden (wobei die Rahmenklassifikationen durch das Verwaltungsmodul 350 zur Switch-Steuereinheit 530b verschoben werden) und ein zugehöriges PID-Feld 538, das den Ausgangsdatenanschluss 502 des Switch 530b angibt, der mit einem Haupt-Switch 204 zum Weiterleiten dieser Klassifikation von Datenverkehr verbunden ist. Das Steuermodul 560 ist gleichermaßen vereinfacht, da keine entfernt angeordnete Richtlinie 566 oder entfernt angeordnete ACLs 568 unterstützt werden. Schließlich kann auf das Verwaltungsmodul 550 vollständig verzichtet werden, da der Switch 500b nicht ausgestattet sein muss, um als Haupt-Switch 204 zu dienen.
  • Unter Bezugnahme auf 7 wird nun gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses zum Verwalten eines DFP-Switching-Netzwerks veranschaulicht. Der Einfachheit halber wird der Prozess von 7 unter Bezugnahme auf die DFP-Switching-Netzwerke 200 und 300 der 2 bis 3 beschrieben. Wie bei den anderen hierin veranschaulichten logischen Ablaufplänen werden Schritte in logischer anstatt streng chronologischer Reihenfolge veranschaulicht, und zumindest manche Schritte können in einer anderen Reihenfolge als veranschaulicht oder gleichzeitig durchgeführt werden.
  • Der Prozess beginnt mit Block 700 und wird dann mit Block 702 fortgesetzt, der zeigt, wie jeder der Haupt-Switches 204a, 204b die Mitgliedschaft und Topologie des DFP-Switching-Netzwerks 200 oder 300 erfährt, in dem er sich befindet. In verschiedenen Ausführungsformen können die Haupt-Switches 204a, 204b die Topologie und Mitgliedschaft eines DFP-Switching-Netzwerks 200 oder 300 erfahren, indem sie zum Beispiel eine Konfiguration von einem sich an einer der Client-Einheiten 110a bis 110c befindlichen Netzwerkadministrator empfangen oder alternativ dazu durch eine Realisierung eines automatisierten Switch-Erkennungsprotokolls durch die Switch-Steuereinheit 530a jedes der Haupt-Switches 204a, 204b. Auf der Grundlage der erkannten Mitgliedschaft in einem DFP-Switching-Netzwerk 200 oder 300 realisiert die Switch-Steuereinheit 530a jedes der Haupt-Switches 204 auf jedem Anschluss 502 einen entsprechenden Eingangs-Vport 522 und einen entsprechenden Ausgangs-Vport 524 für jede RPI in der unteren Ebene des DFP-Switching-Netzwerks 200, 300, von der Eingangsdatenverkehr auf diesem Anschluss 502 empfangen werden kann (Block 704). Der Verwaltungs-Haupt-Switch 204, zum Beispiel der Haupt-Switch 204a, erlaubt danach das Konfigurieren, Verwalten und Steuern des DFP-Switching-Netzwerks 200 oder 300 durch die Verwaltungsschnittstelle 552 als ein virtueller Switch 600 (Block 706). Es sollte beachtet werden, dass das DFP-Switching-Netzwerk 200 oder 300 als virtualisierter Switch 600 so konfiguriert, verwaltet und gesteuert werden kann, dass es arbeitet, als ob sich alle virtualisierten Anschlüsse 602 des virtualisierten Switch 600 innerhalb eines einzigen physischen Switch befänden. Somit kann zum Beispiel Anschlussspiegelung, Anschluss-Trunking, Rundsenden, verbesserte Übertragungsauswahl (ETS) (z.B. Durchsatzbegrenzung und Formung gemäß dem Entwurfsstandard IEEE 802.1Qaz) sowie prioritätsgestützte Flusssteuerung für die virtualisierten Anschlüsse 602 unabhängig von den Switches 202, 310, 312 oder den Hosts 302 realisiert werden, zu denen die entsprechenden RPIs gehören. Danach verschiebt das Verwaltungsmodul 550 der Switch-Steuereinheit 530a des Verwaltungs-Haupt-Switch (z.B. des Haupt-Switch 204a) Steuerungsinformationen zu anderen Haupt-Switches 204, Folge-Switches 202 und/oder virtuellen Switches 310, 312, um das Steuermodul 560 und die FIB 532 oder andere Switches korrekt zu konfigurieren (Block 708). Der Prozess von 7 endet danach in Block 710.
  • Unter Bezugnahme auf 8 ist nun gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses abgebildet, durch den Netzwerkdatenverkehr von einer unteren Ebene zu einer oberen Ebene eines DFP-Switching-Netzwerks weitergeleitet wird, das eingerichtet ist, als ein virtualisierter Switch zu arbeiten. Der Einfachheit halber wird der Prozess von 8 ebenfalls unter Bezugnahme auf das DFP-Switching-Netzwerk 200 von 2 und das DFP-Switching-Netzwerk 300 von 3 beschrieben.
  • Der abgebildete Prozess beginnt mit Block 800 und wird danach mit Block 802 fortgesetzt, in dem eine RPI in einer unteren Ebene des DFP-Switching-Netzwerks abgebildet ist, die einen an einen Haupt-Switch 204 zu übermittelnden Datenrahmen empfängt. Wie in Block 804 durch die Darstellung in gestrichelter Linie gezeigt, kann der Folge-Switch 202 oder der Host 302, auf dem sich die RPI befindet, optional eine Richtliniensteuerung oder (unter Bezug auf eine ACL) eine Zugangskontrolle auf den Datenrahmen durchsetzen, wenn dies zuvor durch den Verwaltungs-Haupt-Switch 204 so angewiesen wurde.
  • In Block 806 bringt der Folge-Switch 202 oder der Host 302 auf der unteren Ebene eine RPI-Kennung (z.B. ein S-Tag) am Datenrahmen an, um die Eingangs-RPI anzugeben, bei welcher der Datenrahmen empfangen wurde. Der Folge-Switch 202 oder der Host 302 in der unteren Ebene leitet dann den Datenrahmen an einen Haupt-Switch 204 in der oberen Ebene des DFP-Switching-Netzwerks 200 oder 300 weiter (Block 808). Im Falle eines Folge-Switch 202 wird der Datenrahmen in Block 808 über den durch die FIB 532b angegebenen switchübergreifenden Ausgangsanschluss weitergeleitet. Der in 8 abgebildete Prozess endet danach in Block 810.
  • Unter Bezugnahme auf 9 wird gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses veranschaulicht, durch den ein Haupt-Switch auf der oberen Ebene einen von der unteren Ebene des DFP-Switching-Netzwerks empfangenen Datenrahmen verarbeitet. Der veranschaulichte Prozess beginnt mit Block 900 und wird dann mit Block 902 fortgesetzt, der zeigt, wie ein Haupt-Switch 204 eines DFP-Switching-Netzwerks 200 oder 300 einen Datenrahmen von einem Folge-Switch 202 oder einem Host 302 auf einem seiner Anschlüsse 502 empfängt. Als Reaktion auf das Empfangen des Datenrahmens klassifiziert die Empfangsschnittstelle 504 des Anschlusses 502, an dem der Datenrahmen empfangen wurde, den Datenrahmen gemäß der durch den Datenrahmen angegebenen RPI-Kennung (z.B. einem S-Tag) vor und reiht den Datenrahmen in eine Warteschlange des Eingangs-Vport 522 ein, der dieser RPI zugehörig ist (Block 904). Von Block 904 aus wird der in 9 abgebildete Prozess mit den beiden Blöcken 910 und 920 fortgesetzt.
  • In Block 910 greift die Switch-Steuereinheit 530a unter Verwendung der durch den Datenrahmen angegebenen Ziel-MAC-Adresse auf die FIB 532a zu. Wenn sich dort ein FIB-Eintrag 534 mit einem passenden MAC-Feld 536 befindet, wird die Verarbeitung mit den Blöcken 922 bis 928, fortgesetzt, die nachstehend beschrieben werden. Wenn die Switch-Steuereinheit 530a in Block 910 jedoch feststellt, dass die Ziel-MAC-Adresse unbekannt ist, erfährt die Switch-Steuereinheit 530a die Zuordnung zwischen der Ziel-MAC-Adresse, dem Ausgangsanschluss 502 und der Ziel-RPI mithilfe einer herkömmlichen Erkennungstechnik und aktualisiert die FIB 532a entsprechend. Der Prozess wird dann mit den Blöcken 922 bis 928 fortgesetzt.
  • In Block 920 wendet die Switch-Steuereinheit 530a eine beliebige lokale Richtlinie 562 oder lokale ACL 564 an, die durch das Steuermodul 560a für den Eingangs-Vport 522 angegeben wird. Darüber hinaus führt die Switch-Steuereinheit 530a beim Eingang jede beliebige andere Bearbeitung für den Datenrahmen durch. Wie nachstehend detaillierter erläutert, kann zu dieser speziellen Bearbeitung zum Beispiel das Realisieren von Anschluss-Trunking, prioritätsgestützter Flussteuerung, Rundsenden, Anschlussspiegelung oder ETS zählen. Jeder Typ spezieller Bearbeitung kann beim Eingang und/oder Ausgang auf Datenverkehr angewandt werden, wie nachstehend näher beschrieben wird. Der Prozess wird dann mit den Blöcken 922 bis 928 fortgesetzt.
  • Unter Bezugnahme auf die Blöcke 922 bis 924 aktualisiert die Switch-Steuereinheit 530a die RPI-Kennung des Datenrahmens, damit sie der durch das VPID-Feld 540 des passenden FIB-Eintrags 534 angegebenen (oder durch den Erkennungsprozess erfahrenen) entspricht, und reiht den Datenrahmen in die entsprechende, durch das PID-Feld 540 des passenden FIB-Eintrags 534 angegebene (oder durch den Erkennungsprozess erfahrene) Warteschlange des Ausgangs-Vport 534 ein. In Block 926 wendet die Switch-Steuereinheit 530a eine beliebige lokale Richtlinie 562 oder eine lokale ACL 564 auf den Datenrahmen an, die durch das Steuermodul 560a für den Eingangs-Vport 524 angegeben wird. Darüber hinaus führt die Switch-Steuereinheit 530a beim Ausgang jede andere spezielle Bearbeitung für den Datenrahmen durch, wozu zum Beispiel die Realisierung von Anschluss-Trunking, prioritätsgestützte Flusssteuerung, Rundsenden, Anschlussspiegelung oder ETS zählen. Danach leitet der Haupt-Switch 204 den Datenrahmen über eine switchübergreifende Verbindung 206 an die untere Ebene (z.B. einen Folge-Switch 202 oder einen Host 302) des DFP-Switching-Netzwerks 200 oder 300 weiter (Block 928). Der in 9 gezeigte Prozess endet danach in Block 930.
  • Unter Bezugnahme auf 10 ist nun gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses abgebildet, durch den ein Folge-Switch 202 oder ein Host 302 auf der unteren Ebene einen von einem Haupt-Switch auf der oberen Ebene des DFP-Switching-Netzwerks 200 oder 300 empfangenen Datenrahmen bearbeitet. Der in 10 abgebildete Prozess beginnt mit Block 1000 und wird dann mit Block 1002 fortgesetzt, der veranschaulicht, wie eine Entität der unteren Ebene, wie beispielsweise ein Folge-Switch 202 oder ein Host 302, einen Datenrahmen von einem Haupt-Switch 204, zum Beispiel auf einem switchübergreifenden Anschluss 502 des Folge-Switch 202 oder einer Netzwerkschnittstelle 404 oder einem VMM 304 des Host 302 empfängt.
  • Als Reaktion auf das Empfangen des Datenrahmens entfernt die Entität der unteren Ebene die durch den Haupt-Switch 204 aktualisierte RPI-Kennung vom Datenrahmen (Block 1004). Dann geht die Entität der unteren Ebene durch den Datenrahmen zur durch die entnommene RPI-Kennung angegebenen RPI (Block 1006). So greift zum Beispiel die Switch-Steuereinheit 530b auf ihre FIB 532b mit der RPI und/oder der Ziel-MAC-Adresse des Datenrahmens zu, um einen passenden FIB-Eintrag 534 zu finden und steuert dann die Kreuzschiene 510 so, dass der Datenrahmen zu dem im PID-Feld 538 des passenden FIB-Eintrags 534 angegebenen Anschluss geleitet wird. Gleichermaßen leitet eine Netzwerkschnittstelle 404 oder VMM 304 eines Host den Datenrahmen zur durch die RPI-Kennung angegebenen RPI. Danach endet das Verfahren mit Block 1008.
  • Unter Bezugnahme auf 11 wird gemäß einer Ausführungsform ein übergeordnetes Blockschaubild eines beispielhaften Verfahrens zum Betreiben einer Verbindungszusammenlegungsgruppe (LAG) in einem DFP-Switching-Netzwerk veranschaulicht. Verbindungszusammenlegung wird beim Stand der Technik auch verschiedentlich als Trunking, Link Bundling, Bonding, Teaming, Port Channel, EtherChannel und Multi-Link-Trunking bezeichnet.
  • Der in 11 veranschaulichte Prozess beginnt mit Block 1100 und wird dann mit Block 1102 fortgesetzt, der das Einrichten einer LAG mit einer Vielzahl von RPIs auf einem Haupt-Switch 204 eines DFP-Switching-Netzwerks 200 oder 300 darstellt. Anders als herkömmliche LAGs kann eine in einem DFP-Switching-Netzwerk 200 oder 300 eingerichtete LAG RPIs mehrerer unterschiedlicher (und möglicherweise heterogener) Folge-Switches 202 und/oder Hosts 302 enthalten. Zum Beispiel kann in den DFP-Switching-Netzwerken 200 und 300 der 2 bis 3 eine einzige LAG RPIs von einem oder mehreren der Folge-Switches 202a bis 202d und/oder der Hosts 302a bis 302d enthalten.
  • In zumindest manchen Ausführungsformen kann eine LAG auf einem Haupt-Switch 204 durch statisches Konfigurieren des Haupt-Switch 204 eingerichtet werden, zum Beispiel durch einen an einer der Client-Einheiten 110a bis 110c befindlichen Systemadministrator, der mit der Verwaltungsschnittstelle 552 des Verwaltungs-Haupt-Switch 204 interagiert. Alternativ dazu oder zusätzlich kann eine LAG auf einem Haupt-Switch 204 durch den Austausch von Nachrichten zwischen dem Haupt-Switch 204 und einer oder mehreren Entitäten der unteren Ebene (z.B. Folge-Switches 202 oder Hosts 302) über das unter IEEE 802.1AX-2008 definierte „Link Aggregation Control Protocol“ (LACP) eingerichtet werden, das hierin durch Bezugnahme mit aufgenommen wird. Da die LAG auf dem Haupt-Switch 204 eingerichtet ist, sollte ersichtlich sein, dass nicht alle der mit einer switchübergreifenden Verbindung 206 verbundenen, zur LAG gehörenden Entitäten der unteren Ebene Unterstützung für die LAG bereitstellen (oder auch nur um deren Existenz wissen) müssen.
  • Das Einrichten einer LAG auf einem Haupt-Switch 204, wie in Block 1102 dargestellt, beinhaltet vorzugsweise ein Speichern der Mitgliedschaft der LAG in einer LAG-Datenstruktur 1200 in der Switch-Steuereinheit 530a, wie in 12 gezeigt. In der abgebildeten beispielhaften Ausführungsform enthält die LAG-Datenstruktur 1200 einen oder mehrere LAG-Mitgliedschafts-Einträge 1202, von denen jeder die Mitgliedschaft in einer jeweiligen LAG angibt. In einer bevorzugten Ausführungsform drücken die LAG-Mitgliedschafts-Einträge 1202 die LAG-Mitgliedschaft hinsichtlich der RPIs oder Vports 520 aus, die den die LAG ausbildenden RPIs zugeordnet sind. In anderen Ausführungsformen kann die LAG alternativ dazu oder zusätzlich hinsichtlich der switchübergreifenden Verbindungen 206 ausgedrückt werden, welche den Haupt-Switch 204 und die RPIs verbinden. Wie ersichtlich ist, kann die LAG-Datenstruktur 1200 als eigenständige Struktur oder in einem oder mehreren Feldern einer anderen Datenstruktur, wie beispielsweise der FIB 532a, realisiert werden.
  • Im Anschluss an das Einrichten der LAG führt der Haupt-Switch 204 eine spezielle Bearbeitung für an die RPIs innerhalb der LAG gerichtete Datenrahmen durch, wie vorstehend kürzlich unter Bezugnahme auf die Blöcke 920 bis 926 von 9 erwähnt. Insbesondere überwacht die Switch-Steuereinheit 530a, wie in Block 1104 dargestellt, zum Weiterleiten empfangene Datenrahmen und stellt zum Beispiel durch Nachschlagen in der FIB 532a und/oder der LAG-Datenstruktur 1200 fest, ob für die im Datenrahmen enthaltene Ziel-MAC-Adresse bekannt ist, dass sie einer zu einer LAG gehörenden RPI zugeordnet ist. Als Reaktion auf eine negative Feststellung in Block 1104 geht der Prozess zu Block 1112 über, der nachstehend beschrieben wird. Wenn jedoch die Switch-Steuereinheit 532a in Block 1104 feststellt, dass ein Datenrahmen an eine Ziel-MAC-Adresse adressiert ist, die einer zu einer LAG gehörenden RPI zugeordnet ist, wählt die Switch-Steuereinheit 532a eine Ausgangs-RPI für den Datenrahmen aus der Mitgliedschaft der LAG aus.
  • In Block 1110 kann die Switch-Steuereinheit 532a die Ausgangs-RPI aus der LAG-Mitgliedschaft auf der Grundlage von jeder beliebigen einer Vielzahl von LAG-Richtlinien auswählen, wozu Umlauf (round-robin), Senden, Lastausgleich oder Hash-Werte zählen. In einer Realisierung einer Hash-LAG-Richtlinie wählt die Switch-Steuereinheit 532a die Quell- und Ziel-MAC-Adressen mittels einer XOR-Logik aus und führt eine Modulo-Operation am Ergebnis mit der Größe der LAG durch, um stets dieselbe RPI für eine gegebene Ziel-MAC-Adresse auszuwählen. In anderen Ausführungsformen kann die Hash-LAG-Richtlinie die Ausgangs-RPI auf der Grundlage anderer oder zusätzlicher Faktoren auswählen, zu denen die Quell-IP-Adresse, die Ziel-IP-Adresse, die Quell-MAC-Adresse, die Zieladresse und/oder die Quell-RPI usw. zählen können.
  • Wie in Block 1112 angegeben, wird das „Zerstäuben“ oder das Verteilen von Datenrahmen auf die LAG fortgesetzt bis die LAG dekonfiguriert ist, indem zum Beispiel eine statische Konfiguration des Haupt-Switch 204 entfernt wird, oder über einen LCAP. Der in 11 veranschaulichte Prozess endet danach in Block 1120.
  • Die Fähigkeit, eine verteilte LAG auf einem Haupt-Switch 204 realisieren zu können, die unterschiedliche Entitäten der unteren Ebene umspannt, ermöglicht zusätzliche Netzwerkfähigkeiten. Zum Beispiel ermöglicht in einem DFP-Switching-Netzwerk 300, das mehrere, denselben Dienst bereitstellende VMs 306 enthält, das Bilden einer LAG mit all diesen VMs als Mitglieder, dass zwischen den VMs 306 auf der Grundlage des Service-Tag und anderer Tupelfelder ein automatischer Lastausgleich an Datenverkehr für den Dienst ohne Verwaltung durch die VMMs 304 erfolgt. Weiterhin kann ein solcher Lastausgleich zwischen VMs 306 erreicht werden, die auf unterschiedlichen VMMs 304 und unterschiedlichen Hosts ausgeführt 302 werden.
  • Wie vorstehend erwähnt, kann die spezielle Bearbeitung, die in den Blöcken 920 bis 926 von 9 optional durchgeführt wird, nicht nur die Verteilung von Rahmen auf eine LAG, sondern auch ein Rundsenden von Datenverkehr beinhalten. Unter Bezugnahme auf 13 ist nun gemäß einer Ausführungsform ein übergeordneter logischer Ablaufplan eines beispielhaften Prozesses zum Rundsenden in einem DFP-Switching-Netzwerk abgebildet. Der Prozess beginnt mit Block 1300 und wird dann mit den Blöcken 1302 bis 1322 fortgesetzt, welche die durch einen Haupt-Switch für Rundsende-Datenverkehr durchgeführte spezielle Bearbeitung für Rundsendedatenverkehr veranschaulichen, die zuvor unter Bezugnahme auf die Blöcke 920 bis 926 von 9 beschrieben wurde.
  • Insbesondere wird in Block 1310 durch die Switch-Steuereinheit 530a eines Haupt-Switch 204 durch Bezugnahme auf die innerhalb des Datenverkehrs angegebene Ziel-MAC-Adresse oder IP-Adresse ermittelt, ob der Datenverkehr eine Rundsendeauslieferung anfragt. Zum Beispiel wird bei IP die Adresse 224.0.0.0 bis 239.255.255.255 für Rundsendeadressen reserviert, und Ethernet verwendet mindestens die in Tabelle I zusammengefassten Rundsendeadressen: Tabelle I
    Rundsendeadresse Protokoll
    01:00:0C:CC:CC:CC „Cisco Discovery Protocol“ oder „VLAN Trunking Protocol“ (VTP)
    01:00:0C:CC:CC:CD Adressen des „Cisco Shared Spanning Tree Protocol“
    01:80:C2:00:00:00 IEEE 802.1 D Spanning Tree Protocol
  • Als Reaktion auf die Feststellung in Block 1310, dass der Datenverkehr keine Rundsendebearbeitung erfordert, wird für den Datenverkehr keine Rundsendebearbeitung durchgeführt (obwohl eine andere spezielle Bearbeitung durchgeführt werden kann), und im Prozess wird Block 1310 wiederholt. Wenn jedoch die Switch-Steuereinheit 530a in Block 1310 feststellt, dass es sich bei eingehendem Datenverkehr um Rundsendedatenverkehr handelt, wird der Prozess mit Block 1312 fortgesetzt.
  • In Block 1312 führt die Switch-Steuereinheit 530a für den Rundsendedatenverkehr ein Nachschlagen in einer Rundsendeindex-Datenstruktur durch. Zum Beispiel realisiert in einer in 14 gezeigten beispielhaften Ausführungsform die Switch-Steuereinheit 530a für Rundsenderahmen der Schicht 2 eine Rundsendeindex-Datenstruktur der Schicht 2 1400 und für Rundsendepakete der Schicht 3 eine Rundsendeindex-Datenstruktur der Ebene 3 1410. In der abgebildeten beispielhaften Ausführungsform enthält die Rundsendeindex-Datenstruktur der Schicht 2 1400, die zum Beispiel als Tabelle realisiert sein kann, eine Vielzahl von Einträgen 1402, von denen jeder ein Vierer-Tupel-Feld 1404 zuordnet, das aus einer Eingangs-RPI, Quellen-MAC-Adresse und -VLAN mit einem Indexfeld 1406 gebildet wird, das einen Index in eine Rundsendeziel-Datenstruktur 1420 angibt. Die Rundsendeindex-Datenstruktur der Schicht 3 1410, die gleichermaßen als Tabelle realisiert sein kann, enthält eine Vielzahl von Einträgen 1412, von denen jeder ein Zweier-Tupel-Feld 1404 zuordnet, das aus einer Quellenadresse der Schicht 3 (z.B. IP) und einer Rundsende-Gruppen-ID mit einem Indexfeld 1406 gebildet wird, das einen Index in eine Rundsendeziel-Datenstruktur 1420 angibt. Die Rundsendeziel-Datenstruktur 1420, die auch als eine Tabelle oder verknüpfte Liste realisiert werden kann, enthält wiederum eine Vielzahl von Rundsendezieleinträgen 1422, von denen jeder eine oder mehrere RPIs in der unteren Ebene angibt, zu der Datenverkehr zu übermitteln ist. Die Rundsendedatenstruktur der Schicht 2 1400, die Rundsendeindex-Datenstruktur der Schicht 3 1410 und die Rundsendeziel-Datenstruktur 1420 werden alle vorzugsweise in einem herkömmlichen MC-Lernprozess durch die Steuerungsebene bestückt.
  • Somit führt in Block 1312 die Switch-Steuereinheit 530a ein Nachschlagen durch, um einen Index in die Rundsendeziel-Datenstruktur 1420 in der Rundsendeindex-Datenstruktur der Schicht 2 1400 zu erhalten, wenn es sich bei dem Datenverkehr um einen Rundsenderahmen der Schicht 2 handelt, und führt das Nachschlagen in der Rundsendeindex-Datenstruktur der Schicht 3 1410 durch, wenn es sich bei dem Datenverkehr um ein S3-Rundsendepaket handelt. Wie in Block 1314 angegeben, kann der Haupt-Switch 204 das Rundsenden des Datenverkehrs entweder durch Eingangsreplizierung oder Ausgangsreplizierung abwickeln, wobei die gewünschte Realisierung vorzugsweise in der Switch-Steuereinheit 530a konfiguriert ist. Wenn Ausgangsreplizierung auf dem Haupt-Switch 204 konfiguriert ist, wird der Prozess mit Block 1316 fortgesetzt, der veranschaulicht, wie die Switch-Steuereinheit 530a veranlasst, dass eine einzelne Kopie des Datenverkehrs die Kreuzschiene 510 durchquert und in jeder Ausgangswarteschlange 514 repliziert wird, die einer im Rundsendeziel-Eintrag 1422 identifizierten RPI entspricht, die in Block 1312 durch den erhaltenen Index identifiziert wurde. Wie ersichtlich ist, verringert die Ausgangsreplizierung des Rundsende-Datenverkehrs die Auslastung der Bandbreite der Kreuzschiene 510 auf Kosten von Head-of-Line(HOL)-Blockierung. Auf Block 1316 folgend wird die Verarbeitung des replizierten Datenverkehrs durch den Haupt-Switch 204, wie vorstehend in 9 beschrieben, fortgesetzt (Block 1330).
  • Wenn andererseits der Haupt-Switch 204 für Eingangsreplizierung konfiguriert ist, geht der Prozess von Block 1314 zu Block 1320 über, der veranschaulicht, wie die Switch-Steuereinheit 530a veranlasst, dass der Rundsendedatenverkehr innerhalb jeder der Eingangswarteschlangen 506 der Anschlüsse 502 repliziert wird, die Ausgabewarteschlangen 514 besitzen, die den im indexierten Rundsendeziel-Eintrag 1422 identifizierten RPIs zugeordnet sind. Wie ersichtlich ist, wird auf diese Weise durch Eingangsreplizierung HOL-Blockierung vermieden. Auf Block 1320 folgend durchläuft der Datenverkehr zusätzliche Verarbeitung, wie vorstehend unter Bezugnahme auf 9 beschrieben. Bei einer solchen Verarbeitung steuert die Switch-Steuereinheit 530a die Kreuzschiene 510 so, dass der beim Eingang replizierte Datenverkehr direkt von den Eingangswarteschlangen 506 zu den Ausgangswarteschlangen 514 derselben Anschlüsse 502 übermittelt wird.
  • Wie ersichtlich ist, ermöglicht die beschriebene Realisierung von MC-Bearbeitung auf einem Haupt-Switch 204 eines DFP-Switching-Netzwerks 200 anstatt auf Folge-Switches 202 das Verwenden vereinfachter Folge-Switches 202, die nicht zur Rundsendeverteilung von Datenverkehr in der Lage sein müssen.
  • Wie vorstehend unter Bezugnahme auf die Blöcke 920 bis 926 von 9 beschrieben, kann die spezielle Bearbeitung von Datenverkehr in einem DFP-Switching-Netzwerk optional das Anwenden von ETS auf Datenverkehr beinhalten. 15 zeigt gemäß einer Ausführungsform einen übergeordneten logischen Ablaufplan eines beispielhaften Verfahrens der verbesserten Übermittlungsauswahl (ETS) in einem DFP-Switching-Netzwerk 200 oder 300.
  • Der in 15 abgebildete Prozess beginnt mit Block 1500 und wird dann mit Block 1502 fortgesetzt, der die Konfiguration des Haupt-Switch 204 darstellt, um ETS zum Beispiel über die Verwaltungsschnittstelle 552 auf dem Verwaltungs-Haupt-Switch 204 des DFP-Switching-Netzwerks 200 oder 300 zu realisieren. In verschiedenen Ausführungsformen ist ETS so konfiguriert, dass es beim Eingang und/oder Ausgang des Haupt-Switch 204 realisiert wird.
  • ETS, das im Entwurfsstandard IEEE 802.1 Qaz definiert ist, richtet mehrere Datenverkehrsklassengruppen (traffic dass groups (TCGs)) ein und legt eine Übermittlungspriorität (d.h. Planung) von Datenverkehr in den verschiedenen TCGs von Datenverkehrswarteschlangen (z.B. Eingangs-Vports 522 oder Ausgangs-Vports 524) fest, um einen gewünschten Ausgleich der Verbindungsauslastung zwischen den TCGs zu erreichen. ETS richtet nicht nur eine garantierte Mindestbandbreite für jede TCG ein, sondern erlaubt auch Datenverkehr niedrigerer Priorität das Nutzen von Bandbreite, die nominell TCGs mit höherer Priorität zur Verfügung steht, wobei die Verbindungsauslastung und die Flexibilität verbessert werden, während eine Blockierung von Datenverkehr niedriger Priorität verhindert wird. Die Konfiguration von ETS auf einem Haupt-Switch 204 kann das Einrichten und/oder Bestücken einer ETS-Datenstruktur 1600, wie in 16 abgebildet, innerhalb der Switch-Steuereinheit 530a des Haupt-Switch 204 beinhalten. In der in 16 gezeigten beispielhaften Ausführungsform enthält die ETS-Datenstruktur 1600, die zum Beispiel als Tabelle realisiert sein kann, eine Vielzahl von ETS-Einträgen 1602. In der abgebildeten Ausführungsform enthält jeder ETS-Eintrag 1602 ein TCG-Feld 1604, das den oder die die zu einer gegebenen TCG gehörenden Datenverkehrstyp(en) festlegt (z.B. Fibre Channel (FC), Ethernet, FC-over-Ethernet (FCoE), iSCSI usw.), ein Mininumfeld 1606, das (z.B. in absoluten Werten oder als Prozentanteil) eine garantierte Mindestbandbreite für die im TCG-Feld 1604 festgelegte TCG festlegt und ein Maximumfeld 1608, das (z.B. in absoluten Werten oder als Prozentanteil) eine Höchstbandbreite für die im TCG-Feld 1604 festgelegte TCG festlegt.
  • Unter erneuter Bezugnahme auf 15 wird der Prozess im Anschluss an das Konfigurieren von ETS auf einem Haupt-Switch 1502 mit den Blöcken 1504 bis 1510 fortgesetzt, welche die spezielle Bearbeitung darstellen, die für ETS in den Blöcken 920 bis 926 von 9 optional durchgeführt wird. Insbesondere veranschaulicht Block 1504, wie der Haupt-Switch 204 ermittelt, ob ein auf einem Eingangs-Vport 520 oder Ausgangs-Vport 522 empfangener Datenrahmen zu einer Datenverkehrsklasse gehört, die zu einer momentan konfigurierten ETS-TCG gehört, wie sie zum Beispiel durch die ETS-Datenstruktur 1600 festgelegt wird. Wie ersichtlich ist, kann der Datenrahmen aufgrund des Ethertype-Feldes eines herkömmlichen Ethernet-Rahmens oder Ähnliches klassifiziert werden. Als Reaktion auf ein Feststellen in Block 1504, dass der empfangene Datenrahmen nicht zu einer momentan konfigurierten ETS-TCG gehört, empfängt der Datenrahmen ein Planen nach den besten Möglichkeiten, und der Prozess wird mit Block 1512 fortgesetzt, der nachstehend beschrieben wird.
  • Zu Block 1504 zurückkehrend wendet der Haupt-Switch 204 als Reaktion auf eine Feststellung, dass der empfangene Datenrahmen zu einer momentan konfigurierten ETS-TCG gehört, eine Durchsatzbegrenzung und Datenverkehrsformung auf den Datenrahmen an, um die für die ETS-TCG innerhalb der Felder 1606, 1608 des relevanten ETS-Eintrags 1602 der ETS-Datenstruktur 1600 festgelegten Mindest- und Höchstbandbreiten einzuhalten (Block 1510). Wie vorstehend erwähnt, kann der Haupt-Switch 204 abhängig von der Konfiguration ETS auf die VOQs an den Eingangs-Vports 522 und/oder den Ausgangs-Vports 524 anwenden. Der Prozess wird dann mit Block 1512 fortgesetzt, der veranschaulicht, dass der Haupt-Switch 204, wie in den Blöcken 1504 und 1510 dargestellt, ETS so lange realisiert, bis ETS für diese Datenverkehrsklasse dekonfiguriert wird. Der in 15 veranschaulichte Prozess endet danach in Block 1520.
  • In einem DFP-Switching-Netzwerk 200 oder 300 kann die Flusssteuerung vorteilhafterweise nicht nur auf den Haupt-Switches 204, wie unter Bezugnahme auf die 15 bis 16 beschrieben, sondern auch auf den RPIs von Entitäten der unteren Ebene realisiert werden, wie beispielsweise den Folge-Switches 202 und den Hosts 302. Unter Bezugnahme auf 17 wird nun ein übergeordneter logischer Ablaufplan eines beispielhaften Verfahrens veranschaulicht, durch das ein DFP-Switching-Netzwerk 200 oder 300 prioritätsgestützte Flusssteuerung (PFC) und/oder andere Dienste in einer unteren Ebene realisiert.
  • Der in 17 gezeigte Prozess beginnt mit Block 1700 und wird dann mit Block 1702 fortgesetzt, der einen Haupt-Switch 204 darstellt, der prioritätsgestützte Flusssteuerung (PFC) für eine Entität in einer unteren Ebene eines DFP-Switching-Netzwerks 200 oder 300 realisiert, zum Beispiel als Reaktion auf (1) Empfangen auf einem Haupt-Switch 204, auf dem ein Verwaltungsmodul 550 einer PFC-Konfiguration für einen virtualisierten Anschluss 602a bis 602d ausgeführt wird, die mindestens einer RPI einer Entität einer unteren Ebene entspricht, oder (2) auf einem Haupt-Switch 204 Empfangen eines standardgestützten PFC-Datenrahmens, der von einer nachgelagerten Entität im Netzwerk stammt und über einen Durchgriff-Folge-Switch 202 auf dem Haupt-Switch 204 empfangen wird. Wie für den Fachmann ersichtlich ist, kann ein standardgestützter PFC-Datenrahmen durch eine nachgeordnete Entität erzeugt werden, die einen Datenverkehrsfluss von einer vorgelagerten Entität empfängt, um die vorgelagerte Entität über eine Überlastung im Datenverkehrsfluss zu benachrichtigen. Als Reaktion auf eine positive Feststellung in Block 1702, dass ein Haupt-Switch 204 eine PFC-Konfiguration für eine Entität der unteren Ebene empfangen hat, wird der Prozess mit Block 1704 fortgesetzt, der veranschaulicht, wie der Haupt-Switch 204 einen mit PFC-Konfigurationsfeldern verbesserten proprietären Datenrahmen (nachfolgend als proprietärer PFC-Datenrahmen bezeichnet) aufbaut und an mindestens eine Entität der unteren Ebene (z.B. einen Folge-Switch 202 oder Host 302) übermittelt, um die Entität der unteren Ebene für PFC zu konfigurieren. Der in 17 abgebildete Prozess endet danach in Block 1706.
  • Unter Bezugnahme auf 18 ist nun die Struktur eines beispielhaften proprietären PFC-Datenrahmens 1800 gemäß einer Ausführungsform abgebildet. Wie zuvor unter Bezugnahme auf Block 1704 von 17 beschrieben, kann der proprietäre PFC-Datenrahmen 1800 durch einen Haupt-Switch 204 aufgebaut und an eine Entität der unteren Ebene eines DFP-Switching-Netzwerks, wie beispielsweise einen Folge-Switch 202 oder einen Host 302, übermittelt werden, um PFC bei der Entität der unteren Ebene zu realisieren.
  • In der abgebildeten beispielhaften Ausführungsform ist der proprietäre PFC-Datenrahmen 1800 als ein erweiterter Ethernet-MAC-Steuerungsrahmen realisiert. Der proprietäre PFC-Datenrahmen 1800 enthält folglich ein Ziel-MAC-Adressfeld 1802, das die MAC-Adresse einer RPI auf der Entität der unteren Ebene angibt, von welcher der Haupt-Switch 204 Datenrahmen empfangen kann, und ein Quell-MAC-Adressfeld 1804, das den Ausgangs-Vport auf dem Haupt-Switch 204 angibt, von dem der proprietäre Datenrahmen 1800 übermittelt wird. Den Adressfeldern 1802, 1804 folgt ein Ethertype-Feld 1806, das den PFC-Datenrahmen 1800 als einen MAC-Steuerrahmen kennzeichnet (z.B. durch einen Wert von 0x8808).
  • Das Datenfeld des proprietären PFC-Datenrahmens 1800 beginnt dann mit einem MAC-Steuer-Opcode-Feld 1808, das angibt, dass der proprietäre PFC-Datenrahmen 1800 dem Realisieren von Flusssteuerung dient (z.B. durch einen PAUSE-Befehlswert von 0x0101). Dem MAC-Steuer-Opcode-Feld 1808 folgt ein Prioritätsaktivierungsvektor 1810, der ein Aktivierungsfeld 1812 und ein Klassenvektorfeld 1814 enthält. In einer Ausführungsform gibt das Aktivierungsfeld 1812 durch den Zustand des niedrigstwertigen Bits an, ob der proprietäre PFC-Datenrahmen 1800 dem Realisieren von Flusssteuerung auf einer RPI auf einer Entität der unteren Ebene dient, bei der es sich um das Ziel des proprietären PFC-Datenrahmens 1800 handelt. Der Klassenvektor 1814 gibt weiterhin zum Beispiel durch Verwenden von Multi-Hot-Kodieren an, für welche von N Klassen von Datenverkehr diese Flusssteuerung durch den proprietären PFC-Datenrahmen 1800 realisiert wird. Dem Prioritätsaktivierungsvektor 1810 folgend enthält der proprietäre PFC-Datenrahmen 1800 N Zeitquantenfelder 1820a bis 1820n, von denen jedes einer entsprechenden der N Klassen von Datenverkehr entspricht, für die Flusssteuerung realisiert werden kann. Unter der Annahme, dass das Aktivierungsfeld 1812 so gesetzt ist, dass Flusssteuerung für RPIs aktiviert ist, und das entsprechende Bit im Klassenvektor 1814 so gesetzt ist, dass es Flussteuerung für eine bestimmte Datenverkehrsklasse angibt, legt ein gegebenes Zeitquantumsfeld 1820 (z.B. als Prozentanteil oder Absolutwert) eine Höchstbandbreite der Übermittlung von Daten in der zugehörigen Datenverkehrsklasse durch die RPI fest. Die RPI, für die Flusssteuerung durch den proprietären PFC-Datenrahmen 1800 konfiguriert ist, wird weiterhin durch das RPI-Feld 1824 festgelegt.
  • Dem Datenfeld folgend enthält der proprietäre PFC-Datenrahmen 1800 eine optionale Auffüllung 1826, um eine vorbestimmte Größe des proprietären PFC-Datenrahmens 1800 zu erhalten. Schließlich enthält der proprietäre PFC-Datenrahmen 1800 ein herkömmliches Prüfsummenfeld 1830, das verwendet wird, um Fehler im proprietären PFC-Datenrahmen 1800 zu erkennen.
  • Wie ersichtlich ist, kann der proprietäre PFC-Datenrahmen 1800 verwendet werden, um andere Funktionen als die Flussteuerung für RPIs auszulösen. Zum Beispiel kann der proprietäre PFC-Datenrahmen 1800 auch dazu verwendet werden, Dienste für eine angegebene RPI auszulösen (z.B. das Verwenden spezieller reservierter Werte von Zeitquantenfeldern 1820). Zu diesen zusätzlichen Diensten kann zum Beispiel das Neu-Hashen von Richtlinien für den Serverlastausgleich, das Aktualisieren von Firewall-Einschränkungen, das Umsetzen von Prüfungen auf Denial-of-Service(DOS)-Angriffe usw. zählen.
  • Unter Bezugnahme auf 19A wird gemäß einer Ausführungsform ein übergeordneter Ablaufplan eines beispielhaften Prozesses veranschaulicht, durch den eine Entität der unteren Ebene eines DFP-Switching-Netzwerks 200 oder 300, wie beispielsweise ein Folge-Switch 202, einen proprietären PFC-Datenrahmen 1800 verarbeitet, der von einem Haupt-Switch 204 ausgehend empfangen wurde.
  • Der Prozess beginnt mit Block 1900 und wird dann mit Block 1902 fortgesetzt, der eine Durchgriffentität der unteren Ebene, wie beispielsweise einen Folge-Switch 202 veranschaulicht, der ein Überwachen auf das Empfangen eines proprietären PFC-Datenrahmens 1800 durchführt. Als Reaktion auf das Empfangen eines proprietären PFC-Datenrahmens 1800, was zum Beispiel durch eine auf dem MAC-Steuer-Opcode-Feld 1808 beruhende Klassifikation erkannt wird, geht der Prozess von Block 1902 zu Block 1904 über. Block 1904 veranschaulicht, wie der Folge-Switch 202 (z.B. die Switch-Steuereinheit 530b) den proprietären PFC-Datenrahmen 1800 in einen standardgestützten PFC-Datenrahmen umwandelt, indem zum Beispiel die Nicht-Standard-Felder 1810, 1820 und 1824 entnommen werden. Der Folge-Switch 202 ermittelt dann einen Ausgangsdatenanschluss 210 für den standardgestützten PFC-Datenrahmen, indem zum Beispiel die vom RPI-Feld 1824 entnommene RPI durch Nachschlagen in der FIB 532b in eine Anschluss-ID umgewandelt wird, und leitet den sich ergebenden standardgestützten PFC-Datenrahmen über den ermittelten Ausgangsdatenanschluss 210 in Richtung der Quelle des Datenverkehrs, der eine Überlastung verursacht (Block 1906). Danach endet der in 19A gezeigte Prozess in Block 1910. Es sollte beachtet werden, dass mithilfe des beschriebenen Prozesses aufgrund der Tatsache, dass PFC für jede RPI einzeln realisiert werden kann, auf derselben Entität der unteren Ebene (z.B. dem Folge-Switch 202 oder dem Host 302) für verschiedene RPIs unterschiedliches PFC realisiert werden kann. Da die RPIs auf den Entitäten der unteren Ebene durch VOQs 604 dargestellt werden, kann individualisiertes PFC für eine oder mehrere der RPIs alternativ und selektiv auf den Haupt-Switches 204 realisiert werden, so dass derselbe Anschluss 502 für Datenverkehr unterschiedlicher Vports 522, 524 unterschiedliches PFC realisiert.
  • Unter Bezugnahme auf 19B ist gemäß einer Ausführungsform ein übergeordneter Ablaufplan eines beispielhaften Prozesses abgebildet, durch den eine Entität der unteren Ebene eines DFP-Switching-Netzwerks 200 oder 300, wie beispielsweise eine Host-Plattform 302, einen proprietären PFC-Datenrahmen 1800 verarbeitet, der von einem Haupt-Switch 204 ausgehend empfangen wurde.
  • Der Prozess beginnt mit Block 1920 und wird dann mit Block 1922 fortgesetzt, der eine Netzwerkschnittstelle 404 (z.B. einen CNA oder eine NIC) einer Host-Plattform 302 veranschaulicht, die zum Beispiel durch Klassifizieren eingehender Datenrahmen auf der Grundlage des MAC-Opcode-Feldes 1808 ein Überwachen auf das Empfangen eines proprietären PFC-Datenrahmens 1800 durchführt. Als Reaktion auf ein Erkennen eines Empfangens eines proprietären PFC-Datenrahmens 1800 geht der Prozess von Block 1922 zu Block 1930 über. Block 1930 zeigt, wie die Netzwerkschnittstelle 404 den proprietären PFC-Datenrahmen 1800 durch zum Beispiel einen Interrupt oder eine andere Nachricht zur Bearbeitung an den VMM 304 übermittelt. Als Reaktion auf ein Empfangen des proprietären PFC-Datenrahmens 1800 übermittelt der Hypervisor 304 den proprietären Datenrahmen 1800 wiederum an die VM 306, die der im RPI-Feld 1824 des proprietären PFC-Datenrahmens 1800 angegebenen RPI zugeordnet ist (Block 1932). Als Reaktion wendet die VM 306 PFC (oder einen anderen, durch den proprietären Datenrahmen 1800 angegebenen Dienst) für die spezielle Anwendung und die durch den proprietären PFC-Datenrahmen 1800 angegebene Datenverkehrspriorität an (Block 1934). Somit kann PFC für einzelne Prioritäten, einzelne Anwendungen realisiert werden, wodurch es beispielsweise einer Serverplattform eines Rechenzentrums ermöglicht wird, auf eine erste VM 306 (z.B. einen Video-Streaming-Server) eine andere PFC als auf eine zweite VM 306 (z.B. einen FTP-Server) anzuwenden, zum Beispiel als Reaktion auf einen Rückstau von einem mit der Serverplattform des Rechenzentrums in Datenaustausch stehenden Video-Streaming-Client. Auf Block 1934 folgend endet der in 19B abgebildete Prozess in Block 1940.
  • Wie beschrieben wurde, enthält ein Switching-Netzwerk in manchen Ausführungsformen eine einen Haupt-Switch enthaltende obere Ebene und eine untere Ebene, die eine Vielzahl von Entitäten der unteren Ebene enthält. Der Haupt-Switch enthält eine Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden Entität der Vielzahl von Entitäten der unteren Ebene verbunden ist. Jeder der Vielzahl von Anschlüssen enthält eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) in einer mit diesem Anschluss verbundenen Entität der unteren Ebene entspricht. Jeder der Vielzahl von Anschlüssen enthält zudem eine Empfangsschnittstelle, die als Reaktion auf ein Empfangen von Datenverkehr von einer bestimmten Entität der unteren Ebene aus der Vielzahl von Entitäten der unteren Ebene den Datenverkehr in eine Warteschlange des virtuellen Anschlusses aus der Vielzahl virtueller Anschlüsse einreiht, welcher der RPI auf der bestimmten Entität der unteren Ebene entspricht, welche die Quelle für den Datenverkehr war. Der Haupt-Switch enthält weiterhin eine Switch-Steuereinheit, die Datenverkehr vom virtuellen Anschluss zu einem Ausgangsanschluss aus der Vielzahl von Anschlüssen verteilt, von dem der Datenverkehr weitergeleitet wird.
  • In manchen Ausführungsformen eines Switching-Netzwerks mit einer oberen Ebene und einer unteren Ebene realisiert ein Haupt-Switch in der oberen Ebene, der eine Vielzahl von Anschlüssen besitzt, von denen jeder mit einer entsprechenden Entität der unteren Ebene verbunden ist, auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) in der Entität der unteren Ebene entspricht, die mit diesem Anschluss verbunden ist. Zwischen dem Haupt-Switch und RPIs übermittelter Datenverkehr wird innerhalb virtueller Anschlüsse in eine Warteschlange eingereiht, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird. Der Haupt-Switch setzt prioritätsgestützte Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses durch, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine entsprechende RPI befindet.
  • In manchen Ausführungsformen eines Switching-Netzwerks mit einer oberen Ebene und einer unteren Ebene realisiert ein Haupt-Switch in der oberen Ebene, der eine Vielzahl von Anschlüssen besitzt, von denen jeder mit einer entsprechenden Entität der unteren Ebene verbunden ist, auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) in der Entität der unteren Ebene entspricht, die mit diesem Anschluss verbunden ist. Zwischen dem Haupt-Switch und RPIs übermittelter Datenverkehr wird innerhalb virtueller Anschlüsse in eine Warteschlange eingereiht, die den RPIs entsprechen, mit denen der Datenverkehr übermittelt wird. Der Haupt-Switch wendet Datenverarbeitung auf den Datenverkehr gemäß einer Steuerungsrichtlinie an, die mindestens auf dem virtuellen Anschluss beruht, auf dem der Datenverkehr in eine Warteschlange eingereiht ist, so dass der Haupt-Switch auf Datenverkehr, der in Warteschlangen für zwei virtuelle Anschlüsse auf demselben Anschluss des Haupt-Switch eingereiht ist, unterschiedliche Richtlinien anwendet.

Claims (26)

  1. Verfahren zum Realisieren von Flusssteuerung in einem Switching-Netzwerk, das eine obere Ebene und eine untere Ebene aufweist, die eine Vielzahl von Entitäten der unteren Ebene aufweist, wobei das Verfahren aufweist: - auf einem Haupt-Switch in der oberen Ebene mit einer Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden der Vielzahl von Entitäten der unteren Ebene verbunden ist, Realisieren auf jedem der Vielzahl von Anschlüssen eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der Entität der unteren Ebene entspricht, die mit diesem Anschluss verbindbar ist; - Einreihen von Datenverkehr in eine Warteschlange, der zwischen dem Haupt-Switch und RPIs auf der Vielzahl von Entitäten der unteren Ebene innerhalb virtueller Anschlüsse aus der Vielzahl virtueller Anschlüsse übermittelt wird, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird; und - Durchsetzen von prioritätsgestützter Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses durch den Haupt-Switch, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine dem gegebenen virtuellen Anschluss entsprechende RPI befindet, - wobei die Entität der unteren Ebene einen im Durchfluss-Modus konfigurierten Folge-Switch aufweist; - die bestimmte RPI einen Datenanschluss aufweist; und - das Verfahren weiterhin ein Empfangen des PFC-Datenrahmens durch den Folge-Switch, ein Entfernen einer die bestimmte RPI angebenden RPI-Kennung aus dem PFC-Datenrahmen, um einen Standard-PFC-Datenrahmen zu erhalten, und ein Übermitteln des Standard-PFC-Datenrahmens über den der bestimmten RPI entsprechenden Datenanschluss aufweist.
  2. Verfahren nach Anspruch 1, wobei: - der zwischen dem Haupt-Switch und der Vielzahl von Entitäten der unteren Ebene übermittelte Datenverkehr RPI-Kennungen aufweist, die RPIs auf den Entitäten der unteren Ebene angeben, mit denen der Datenverkehr übermittelt wird; und - das Einreihen in eine Warteschlange ein Einreihen des Datenverkehrs zu virtuellen Anschlüssen in eine Warteschlange auf dem Haupt-Switch auf der Grundlage der RPI-Kennungen aufweist.
  3. Verfahren nach einem der vorhergehenden Ansprüche, wobei: - die Entität der unteren Ebene eine Host-Plattform mit einer Netzwerkschnittstelle und einem Überwacher für virtuelle Maschinen aufweist; - die bestimmte RPI eine auf der Host-Plattform ausgeführte virtuelle Maschine aufweist; und - das Verfahren weiterhin ein Übermitteln des PFC-Datenrahmens an den Überwacher für virtuelle Maschinen durch die Netzwerkschnittstelle aufweist.
  4. Verfahren nach Anspruch 3 und weiterhin aufweisend: - als Reaktion auf ein Empfangen des PFC-Datenrahmens Übermitteln des PFC-Datenrahmens an die virtuelle Maschine auf der Grundlage der im PFC-Datenrahmen angegebenen bestimmten RPI durch den Überwacher für virtuelle Maschinen auf der Host-Plattform.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Durchsetzen ein Durchsetzen von PFC für einzelne Prioritäten, einzelne Anwendungen durch den Haupt-Switch aufweist.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die bestimmte RPI eines aus einem Satz aufweist, der einen physischen Anschluss, eine Verbindungszusammenlegungsgruppen(LAG)-Schnittstelle und einen virtuellen Anschluss aufweist.
  7. Verfahren nach Anspruch 6, wobei der virtuelle Anschluss eines aus einem Satz aufweist, der eine virtuelle Netzwerkschnittstellenkarte (virtual network interface card (NIC)), eine Einzelstamm-E/A-Virtualisierungs(SR-IOV)-NIC-Partition und einen FibreChannel-over-Ethernet(FCoE)-Anschluss aufweist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, wobei der PFC-Rahmen aufweist: - ein RPI-Feld, das die bestimmte RPI angibt; und - eine Vielzahl von Feldern, die relative Prioritäten für die mindestens zwei unterschiedlichen Klassen von Datenverkehr angeben.
  9. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Durchsetzen ein Durchsetzen unterschiedlicher prioritätsgestützter Flusssteuerung für zwei unterschiedliche RPIs auf der Entität der unteren Ebene durch den Haupt-Switch aufweist.
  10. Haupt-Switch für ein Switching-Netzwerk, das eine obere den Haupt-Switch aufweisende Ebene und eine untere Ebene aufweist, die eine Vielzahl von Entitäten der unteren Ebene aufweist, wobei das Verfahren aufweist: - eine Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden der Vielzahl von Entitäten der unteren Ebene verbindbar ist, wobei jeder der Vielzahl von Anschlüssen eine Vielzahl virtueller Anschlüsse aufweist, von denen jeder einer entsprechenden einer Vielzahl von mit diesem Anschluss verbindbaren entfernt angeordneten physischen Schnittstellen (RPIs) auf der Entität der unteren Ebene entspricht, - wobei der zwischen dem Haupt-Switch und den RPIs auf der Vielzahl von Entitäten der unteren Ebene übermittelte Datenverkehr in Warteschlangen für virtuelle Anschlüsse aus der Vielzahl virtueller Anschlüsse eingereiht wird, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird; und - eine Switch-Steuereinheit, die den Datenverkehr zwischen der Vielzahl von Anschlüssen verteilt; - wobei der Haupt-Switch prioritätsgestützte Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses durchsetzt, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine dem gegebenen virtuellen Anschluss entsprechende RPI befindet, - wobei die bestimmte RPI einen Datenanschluss aufweist; und die Entität der unteren Ebene einen im Durchfluss-Modus konfigurierten Folge-Switch aufweist zum Empfangen des PFC-Datenrahmens, zum Entfernen einer die bestimmte RPI angebenden RPI-Kennung aus dem PFC-Datenrahmen, um einen Standard-PFC-Datenrahmen zu erhalten, und zum Übermitteln des Standard-PFC-Datenrahmens über den der bestimmten RPI entsprechenden Datenanschluss.
  11. Haupt-Switch nach Anspruch 10, wobei: - der zwischen dem Haupt-Switch und der Vielzahl von Entitäten der unteren Ebene übermittelte Datenverkehr RPI-Kennungen aufweist, die RPIs auf den Entitäten der unteren Ebene angeben, mit denen der Datenverkehr übermittelt wird; und - der Haupt-Switch Datenverkehr auf der Grundlage der RPI-Kennung in eine Warteschlange seiner virtuellen Anschlüsse einreiht.
  12. Haupt-Switch nach Anspruch 10, wobei der Haupt-Switch PFC für einzelne Prioritäten, einzelne Anwendungen durchsetzt.
  13. Haupt-Switch nach Anspruch 10 oder Anspruch 11, wobei der PFC-Rahmen aufweist: - ein RPI-Feld, das die bestimmte RPI angibt; und - eine Vielzahl von Feldern, die relative Prioritäten für die mindestens zwei unterschiedlichen Klassen von Datenverkehr angeben.
  14. Haupt-Switch nach einem der Ansprüche 10 bis 13, wobei der Haupt-Switch sich unterscheidende prioritätsgestützte Flusssteuerung für zwei unterschiedliche RPIs auf der Entität der unteren Ebene durchsetzt.
  15. Switching-Netzwerk aufweisend: - den Haupt-Switch nach einem der Ansprüche 10 bis 14; und - die Vielzahl von Entitäten der unteren Ebene.
  16. Switching-Netzwerk nach Anspruch 15, wobei: - die Entität der unteren Ebene eine Host-Plattform aufweist; und - die bestimmte RPI eine auf der Host-Plattform ausgeführte virtuelle Maschine aufweist.
  17. Switching-Netzwerk nach Anspruch 16, wobei: - die Host-Plattform einen Überwacher für virtuelle Maschinen ausführt; - die Host-Plattform eine Netzwerkschnittstelle aufweist, die den PFC-Datenrahmen empfängt und den PFC-Datenrahmen an den Überwacher für virtuelle Maschinen übermittelt: und - der Überwacher für virtuelle Maschinen den PFC-Datenrahmen der virtuellen Maschine auf der Grundlage der im PFC-Datenrahmen angegebenen RPI übermittelt.
  18. Switching-Netzwerk nach einem der Ansprüche 15 bis 17, wobei die bestimmte RPI eines aus einem Satz aufweist, der einen physischen Anschluss, eine Verbindungszusammenlegungsgruppen(LAG)-Schnittstelle und einen virtuellen Anschluss aufweist.
  19. Switching-Netzwerk nach Anspruch 18, wobei der virtuelle Anschluss eines aus einem Satz aufweist, der eine virtuelle Netzwerkschnittstellenkarte (NIC), eine Einzelstamm-E/A-Virtualisierungs(SR-IOV)-NIC-Partition und einen FibreChannelover-Ethernet (FCoE)-Anschluss aufweist.
  20. Computerprogrammprodukt, aufweisend: - eine maschinenlesbare Speichereinheit; und - innerhalb des maschinenlesbaren Speichermediums gespeicherten Programmcode, wobei der Programmcode bei Verarbeitung durch eine Maschine die Maschine veranlasst, durchzuführen: - in einem Switching-Netzwerk, das eine obere Ebene mit einem Haupt-Switch und eine untere Ebene mit einer Vielzahl von Entitäten der unteren Ebne aufweist, wobei der Haupt-Switch eine Vielzahl von Anschlüssen besitzt, von denen jeder mit einer entsprechenden der Vielzahl von Entitäten der unteren Ebene verbunden ist, Realisieren auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der mit diesem Anschluss verbindbaren Entität der unteren Ebene entspricht, durch den Haupt-Switch; - Einreihen von Datenverkehr in eine Warteschlange, der zwischen dem Haupt-Switch und RPIs auf der Vielzahl von Entitäten der unteren Ebene innerhalb virtueller Anschlüsse aus der Vielzahl virtueller Anschlüsse übermittelt wird, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird, durch den Haupt-Switch; und - Durchsetzen von prioritätsgestützter Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses durch den Haupt-Switch, indem ein PFC-Datenrahmen, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene übermittelt wird, auf der sich eine dem gegebenen virtuellen Anschluss entsprechende RPI befindet, - wobei die Entität der unteren Ebene einen im Durchfluss-Modus konfigurierten Folge-Switch aufweist; - die bestimmte RPI einen Datenanschluss aufweist; und - das Verfahren weiterhin ein Empfangen des PFC-Datenrahmens durch den Folge-Switch, ein Entfernen einer die bestimmte RPI angebenden RPI-Kennung aus dem PFC-Datenrahmen, um einen Standard-PFC-Datenrahmen zu erhalten, und ein Übermitteln des Standard-PFC-Datenrahmens über den der bestimmten RPI entsprechenden Datenanschluss aufweist.
  21. Programmprodukt nach Anspruch 20, wobei: - der zwischen dem Haupt-Switch und der Vielzahl von Entitäten der unteren Ebene übermittelte Datenverkehr RPI-Kennungen aufweist, die RPIs auf den Entitäten der unteren Ebene angeben, mit denen der Datenverkehr übermittelt wird; und - das Einreihen in eine Warteschlange ein Einreihen des Datenverkehrs zu virtuellen Anschlüssen in eine Warteschlange auf dem Haupt-Switch auf der Grundlage der RPI-Kennungen aufweist.
  22. Programmprodukt nach einem der Ansprüche 20 oder 21, wobei: - die Entität der unteren Ebene eine Host-Plattform mit einer Netzwerkschnittstelle und einem Überwacher für virtuelle Maschinen aufweist; - die bestimmte RPI eine virtuelle Maschine aufweist; - der Programmcode die Host-Plattform veranlasst, den PFC-Datenrahmen über den Überwacher für virtuelle Maschinen an die durch die bestimmte RPI angegebene virtuelle Maschine zu übermitteln.
  23. Programmprodukt nach einem der Ansprüche 20 bis 22, wobei der Programmcode den Haupt-Switch veranlasst, PFC für einzelne Prioritäten, einzelne Anwendungen durchzusetzen.
  24. Programmprodukt nach einem der Ansprüche 20 bis 23, wobei der PFC-Rahmen aufweist: - ein RPI-Feld, das die bestimmte RPI angibt; und - eine Vielzahl von Feldern, die relative Prioritäten für die mindestens zwei unterschiedlichen Klassen von Datenverkehr angeben.
  25. Programmprodukt nach einem der Ansprüche 20 bis 24, wobei das Durchsetzen ein Durchsetzen sich unterscheidender prioritätsgestützter Flusssteuerung für zwei unterschiedliche RPIs auf der Entität der unteren Ebene durch den Haupt-Switch aufweist.
  26. Vorrichtung zum Realisieren von Flusssteuerung in einem Switching-Netzwerk, das eine obere Ebene und eine untere Ebene aufweist, die eine Vielzahl von Entitäten der unteren Ebene aufweist, wobei die Vorrichtung aufweist: - ein Mittel auf einem Haupt-Switch in der oberen Ebene mit einer Vielzahl von Anschlüssen, von denen jeder mit einer entsprechenden der Vielzahl von Entitäten der unteren Ebene verbunden ist, um auf jedem der Anschlüsse eine Vielzahl virtueller Anschlüsse zu realisieren, von denen jeder einer entsprechenden einer Vielzahl entfernt angeordneter physischer Schnittstellen (RPIs) auf der mit diesem Anschluss verbindbaren Entität der unteren Ebene entspricht; - ein Mittel zum Einreihen von Datenverkehr in eine Warteschlange, der zwischen dem Haupt-Switch und RPIs auf der Vielzahl von Entitäten der unteren Ebene innerhalb virtueller Anschlüsse aus der Vielzahl virtueller Anschlüsse übermittelt wird, die den RPIs auf Entitäten der unteren Ebene entsprechen, mit denen der Datenverkehr übermittelt wird; und - ein Mittel auf dem Haupt-Switch zum Durchsetzen prioritätsgestützter Flusssteuerung (PFC) an Datenverkehr eines gegebenen virtuellen Anschlusses, wobei das Mittel zum Durchsetzen weiterhin ein Mittel zum Übermitteln eines PFC-Datenrahmens, der Prioritäten für mindestens zwei unterschiedliche Klassen von durch die bestimmte RPI übermittelten Datenverkehr angibt, an eine Entität der unteren Ebene aufweist, auf der sich eine bestimmte dem gegebenen virtuellen Anspruch entsprechende RPI befindet, - wobei die bestimmte RPI einen Datenanschluss aufweist; und - die Entität der unteren Ebene einen im Durchfluss-Modus konfigurierten Folge-Switch aufweist zum Empfangen des PFC-Datenrahmens, zum Entfernen einer die bestimmte RPI angebenden RPI-Kennung aus dem PFC-Datenrahmen, um einen Standard-PFC-Datenrahmen zu erhalten, und zum Übermitteln des Standard-PFC-Datenrahmens über den der bestimmten RPI entsprechenden Datenanschluss.
DE112012001320.4T 2011-05-14 2012-04-12 Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP) Active DE112012001320B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/107,893 2011-05-14
US13/107,893 US8588224B2 (en) 2011-05-14 2011-05-14 Priority based flow control in a distributed fabric protocol (DFP) switching network architecture
PCT/IB2012/051803 WO2012156832A1 (en) 2011-05-14 2012-04-12 Priority based flow control in a distributed fabric protocol (dfp) switching network architecture

Publications (3)

Publication Number Publication Date
DE112012001320T5 DE112012001320T5 (de) 2014-01-02
DE112012001320T8 DE112012001320T8 (de) 2014-01-30
DE112012001320B4 true DE112012001320B4 (de) 2020-04-23

Family

ID=47141829

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012001320.4T Active DE112012001320B4 (de) 2011-05-14 2012-04-12 Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP)

Country Status (8)

Country Link
US (2) US8588224B2 (de)
JP (1) JP5497244B2 (de)
KR (1) KR101507675B1 (de)
CN (1) CN103534989B (de)
CA (1) CA2833681C (de)
DE (1) DE112012001320B4 (de)
GB (1) GB2504443A (de)
WO (1) WO2012156832A1 (de)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8670450B2 (en) 2011-05-13 2014-03-11 International Business Machines Corporation Efficient software-based private VLAN solution for distributed virtual switches
US9276953B2 (en) 2011-05-13 2016-03-01 International Business Machines Corporation Method and apparatus to detect and block unauthorized MAC address by virtual machine aware network switches
US20120287785A1 (en) 2011-05-14 2012-11-15 International Business Machines Corporation Data traffic handling in a distributed fabric protocol (dfp) switching network architecture
US8837499B2 (en) 2011-05-14 2014-09-16 International Business Machines Corporation Distributed fabric protocol (DFP) switching network architecture
US8588224B2 (en) * 2011-05-14 2013-11-19 International Business Machines Corporation Priority based flow control in a distributed fabric protocol (DFP) switching network architecture
US20120291034A1 (en) 2011-05-14 2012-11-15 International Business Machines Corporation Techniques for executing threads in a computing environment
US9497073B2 (en) 2011-06-17 2016-11-15 International Business Machines Corporation Distributed link aggregation group (LAG) for a layer 2 fabric
US20130064066A1 (en) 2011-09-12 2013-03-14 International Business Machines Corporation Updating a switch software image in a distributed fabric protocol (dfp) switching network
US8767529B2 (en) 2011-09-12 2014-07-01 International Business Machines Corporation High availability distributed fabric protocol (DFP) switching network architecture
US20130077530A1 (en) * 2011-09-28 2013-03-28 Cisco Technology, Inc. Scaling IPv6 on Multiple Devices Virtual Switching System with Port or Device Level Aggregation
US8750129B2 (en) 2011-10-06 2014-06-10 International Business Machines Corporation Credit-based network congestion management
US9065745B2 (en) 2011-10-06 2015-06-23 International Business Machines Corporation Network traffic distribution
US8713169B2 (en) 2011-10-11 2014-04-29 Cisco Technology, Inc. Distributed IPv6 neighbor discovery for large datacenter switching systems
US9059868B2 (en) * 2012-06-28 2015-06-16 Dell Products, Lp System and method for associating VLANs with virtual switch ports
US9727386B2 (en) * 2012-10-12 2017-08-08 Futurewei Technologies, Inc. Method and apparatus for network resource virtual partitioning
US9166869B2 (en) * 2013-01-14 2015-10-20 International Business Machines Corporation Management of distributed network switching cluster
US9407500B2 (en) * 2013-01-25 2016-08-02 Dell Products L.P. System and method for determining the configuration of switches in virtual link trunking environments
US10616049B2 (en) * 2013-01-25 2020-04-07 Dell Products, L.P. System and method for determining the configuration of switches in virtual link trunking environments
US9083611B2 (en) * 2013-02-21 2015-07-14 Oracle International Corporation Method and system for virtual network interface cards (VNICs) over aggregation spanning multiple switches
US9647849B2 (en) * 2013-03-05 2017-05-09 Cisco Technology, Inc. “Slow-start” problem in data center networks and a potential solution
US9277452B1 (en) * 2013-03-07 2016-03-01 Dragonwave, Inc. Adaptive modulation and priority-based flow control in wireless communications
US9258253B2 (en) * 2013-05-14 2016-02-09 Dell Products L.P. System and method for flexible switching fabric
CN104253729B (zh) * 2013-06-28 2017-12-29 施耐德电器工业公司 主从设备间通过寄存器接口传递数据的方法
US9325617B2 (en) 2013-12-09 2016-04-26 International Business Machines Corporation Overlay capabilities exchange using DCBX
CN104734986B (zh) * 2013-12-19 2018-12-25 华为技术有限公司 一种报文转发方法和装置
CN103746927B (zh) * 2013-12-27 2017-02-15 杭州华为数字技术有限公司 基于优先级的流控pfc方法及发送设备、接收设备
CN104852869B (zh) * 2014-02-14 2018-07-24 新华三技术有限公司 一种端口聚合方法及装置
US9306865B2 (en) * 2014-03-12 2016-04-05 Oracle International Corporation Virtual port mappings for non-blocking behavior among physical ports
CN104410577B (zh) * 2014-11-05 2018-04-06 新华三技术有限公司 一种广播报文的传输方法和设备
US10135670B2 (en) * 2014-12-22 2018-11-20 Hewlett Packard Enterprise Development Lp Response to an inoperative network device managed by a controller
CN106330782B (zh) * 2015-06-30 2020-06-26 中兴通讯股份有限公司 端口容量分配方法及装置、交换机业务板卡
US10243914B2 (en) * 2015-07-15 2019-03-26 Nicira, Inc. Managing link aggregation traffic in edge nodes
US10462020B2 (en) * 2017-02-16 2019-10-29 Cisco Technology, Inc. Network device user interface
CN107864099B (zh) * 2017-10-23 2020-11-06 中国科学院空间应用工程与技术中心 一种异构fc网络的流量控制方法及系统
US11005778B1 (en) * 2018-08-23 2021-05-11 Marvell Israel (M.I.S.L) Ltd. Priority flow control in a distributed network switch architecture
CN109347908B (zh) * 2018-09-06 2021-10-08 东莞中子科学中心 分布式异构计算的数据访问方法
US10630606B1 (en) 2019-03-18 2020-04-21 Brightways Corporation System, method and architecture for data center network switching
US11381512B1 (en) * 2019-12-10 2022-07-05 Cisco Technology, Inc. Priority-based flow control messaging for port extender
CN111343043B (zh) * 2020-02-06 2022-07-26 中国科学院国家空间科学中心 一种深空通信网络仿真验证平台构建方法
JP7437197B2 (ja) * 2020-03-16 2024-02-22 住友電気工業株式会社 スイッチ装置、車載通信システムおよび通信方法
US11894948B2 (en) 2020-04-02 2024-02-06 PrimeWan Limited Method of forming a virtual network
US11245645B2 (en) 2020-04-02 2022-02-08 PrimeWan Limited Virtual network device
US11362865B2 (en) * 2020-04-02 2022-06-14 PrimeWan Limited Virtual network
US11223569B2 (en) * 2020-04-02 2022-01-11 PrimeWan Limited Device, method, and system that virtualize a network
CN113297116A (zh) * 2020-04-08 2021-08-24 阿里巴巴集团控股有限公司 信息配置方法、端口访问方法、设备及存储介质
CN113300984B (zh) * 2020-04-08 2022-09-13 阿里巴巴集团控股有限公司 通信方法、设备、系统及存储介质
US12068979B2 (en) * 2020-05-01 2024-08-20 EMC IP Holding Company, LLC System and method for dividing a physical ethernet port
KR102314880B1 (ko) * 2021-05-10 2021-10-19 농업회사법인 유한회사 더자람 슬레이브 채널의 자유로운 확장이 가능한 스마트팜 제어 시스템
US12010028B1 (en) * 2023-05-17 2024-06-11 Huawei Technologies Co., Ltd. Method and apparatus for proactively forming flowlets for a flow in communication network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100054260A1 (en) 2008-08-28 2010-03-04 Blade Network Technologies, Inc. Method and Apparatus to Switch Packets between Virtual Ports
US20100303075A1 (en) 2009-05-29 2010-12-02 Sun Microsystems, Inc. Managing traffic on virtualized lanes between a network switch and a virtual machine
US20110007746A1 (en) 2009-07-10 2011-01-13 Jayaram Mudigonda Establishing Network Quality of Service for a Virtual Machine

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394402A (en) 1993-06-17 1995-02-28 Ascom Timeplex Trading Ag Hub for segmented virtual local area network with shared media access
US5617421A (en) 1994-06-17 1997-04-01 Cisco Systems, Inc. Extended domain computer network using standard links
US6035105A (en) 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
US5742604A (en) 1996-03-28 1998-04-21 Cisco Systems, Inc. Interswitch link mechanism for connecting high-performance network switches
US6567403B1 (en) 1998-04-30 2003-05-20 Hewlett-Packard Development Company, L.P. Virtual-chassis switch network topology
US6901452B1 (en) * 2000-03-02 2005-05-31 Alcatel Selectable prioritization for data communication switch
KR100472416B1 (ko) 2002-11-01 2005-03-11 삼성전자주식회사 패킷 플로우 제어 장치 및 방법
JP4257151B2 (ja) * 2003-02-28 2009-04-22 富士通株式会社 パケット制御システム、パケット制御装置、パケット中継装置およびパケット制御プログラム
JP2007507990A (ja) 2003-10-14 2007-03-29 ラプター・ネツトワークス・テクノロジー・インコーポレイテツド 分散スイッチング構造を備えるスイッチングシステム
CN101087238B (zh) 2003-10-21 2010-08-04 华为技术有限公司 无源光网络的动态带宽分配装置及方法
JP3954007B2 (ja) * 2003-11-13 2007-08-08 アンリツ株式会社 拡張中継システム及び中継装置
US7593320B1 (en) 2004-04-30 2009-09-22 Marvell International, Ltd. Failover scheme for stackable network switches
US7639674B2 (en) * 2004-10-25 2009-12-29 Alcatel Lucent Internal load balancing in a data switch using distributed network processing
US7697536B2 (en) * 2005-04-01 2010-04-13 International Business Machines Corporation Network communications for operating system partitions
CN100486216C (zh) 2005-07-15 2009-05-06 华为技术有限公司 一种提高虚拟交换系统中传输可靠性的方法
JP4688686B2 (ja) * 2006-02-02 2011-05-25 株式会社日立製作所 管理装置及びネットワークシステム
CN100571249C (zh) 2006-02-27 2009-12-16 中兴通讯股份有限公司 一种实时确定传输的以太网通讯方法
JP4888186B2 (ja) 2007-03-28 2012-02-29 富士通株式会社 通信システム、中継器、中継方法
US8625592B2 (en) 2008-02-26 2014-01-07 Cisco Technology, Inc. Blade switch with scalable interfaces
US8385202B2 (en) * 2008-08-27 2013-02-26 Cisco Technology, Inc. Virtual switch quality of service for virtual machines
US8238340B2 (en) * 2009-03-06 2012-08-07 Futurewei Technologies, Inc. Transport multiplexer—mechanisms to force ethernet traffic from one domain to be switched in a different (external) domain
US9031081B2 (en) 2009-08-06 2015-05-12 Broadcom Corporation Method and system for switching in a virtualized platform
US8665747B2 (en) * 2009-12-03 2014-03-04 Cisco Technology, Inc. Preventing loops on network topologies built with virtual switches and VMS
US8837499B2 (en) * 2011-05-14 2014-09-16 International Business Machines Corporation Distributed fabric protocol (DFP) switching network architecture
US20120287785A1 (en) * 2011-05-14 2012-11-15 International Business Machines Corporation Data traffic handling in a distributed fabric protocol (dfp) switching network architecture
US8588224B2 (en) * 2011-05-14 2013-11-19 International Business Machines Corporation Priority based flow control in a distributed fabric protocol (DFP) switching network architecture
US8767529B2 (en) * 2011-09-12 2014-07-01 International Business Machines Corporation High availability distributed fabric protocol (DFP) switching network architecture

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100054260A1 (en) 2008-08-28 2010-03-04 Blade Network Technologies, Inc. Method and Apparatus to Switch Packets between Virtual Ports
US20100303075A1 (en) 2009-05-29 2010-12-02 Sun Microsystems, Inc. Managing traffic on virtualized lanes between a network switch and a virtual machine
US20110007746A1 (en) 2009-07-10 2011-01-13 Jayaram Mudigonda Establishing Network Quality of Service for a Virtual Machine

Also Published As

Publication number Publication date
GB201320499D0 (en) 2014-01-01
US20120287786A1 (en) 2012-11-15
GB2504443A (en) 2014-01-29
CA2833681A1 (en) 2012-11-22
KR101507675B1 (ko) 2015-03-31
WO2012156832A1 (en) 2012-11-22
JP5497244B2 (ja) 2014-05-21
KR20140002013A (ko) 2014-01-07
DE112012001320T5 (de) 2014-01-02
US8588224B2 (en) 2013-11-19
JP2014502089A (ja) 2014-01-23
CN103534989B (zh) 2016-08-17
CN103534989A (zh) 2014-01-22
CA2833681C (en) 2019-05-07
DE112012001320T8 (de) 2014-01-30
US20120287787A1 (en) 2012-11-15
US8594082B2 (en) 2013-11-26

Similar Documents

Publication Publication Date Title
DE112012001320B4 (de) Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP)
DE112012002080B4 (de) Switching-Netzwerk-Architektur gemäss dem Distributed Fabric Protocol (DFP)
DE112016007055B4 (de) Querverbindung von Switches auf der Basis eines hierarchischen Overlay-tunneling
DE60133352T2 (de) Gebundene Netzvermittlungskonfiguration
DE60127794T2 (de) Gebundene Netzschalterkonfiguration
US8767722B2 (en) Data traffic handling in a distributed fabric protocol (DFP) switching network architecture
US8797843B2 (en) High availability distributed fabric protocol (DFP) switching network architecture
DE60126222T2 (de) Verbundene Netzvermittlungskonfiguration
DE60126223T2 (de) Anordnung zur Verbindung von Netzvermittlungsstellen
DE60005993T2 (de) Verfahren und netzwerkvermittlungsstelle mit datenserialisierung durch gefahrlose mehrstufige störungsfreie multiplexierung
DE102005032479B4 (de) Fernsteuerung eines Vermittlungsknotens in einem Stapel von Vermittlungsknoten
DE69812777T2 (de) Verbindung von Ethernetkompatiblen Netzwerken
DE202015009244U1 (de) Routing von Datenverkehr innerhalb von und zwischen autonomen Systemen
DE112017000152T5 (de) Virtueller Core eines CCAP (Converged Cable Access Platform)
EP2369782B1 (de) Multicasting mit einer verteilten Schaltersteuerungsebene
DE102014117460A1 (de) Programmierbares verteiltes Networking
DE60217988T2 (de) System und Verfahren zum zeitschlitzbasierten Erlernen und Durchsuchen von ARL Tabellen mit Blockierung der Einfügung
DE60037424T2 (de) Vereinigte Tabelle zur L2-, L3-, L4-Vermittlung und Filterung
DE60036292T2 (de) Architektur zur gruppenbasierten vermittlung
EP2663039B1 (de) Verfahren und vorrichtung zur zielgerichteten übertragung eines datenpakets
DE102013223644A1 (de) Virtuelle Bündelung über physikalische Verbindungsstrecken

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: H04L0012560000

Ipc: H04L0012865000

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

Free format text: PREVIOUS MAIN CLASS: H04L0012865000

Ipc: H04L0047627500