-
TECHNISCHES ANWENDUNGSGEBIET
-
Verschiedene Ausführungsformen der vorliegenden Erfindung betreffen allgemein ein virtuelles lokales Netzwerk (VLAN, Virtual Local Area Network) und insbesondere ein über ein zugrunde liegendes Layer-3-(L3-)IP-Netzwerk umgesetztes virtuelles Layer-2-(L2-)Ethernet.
-
BESCHREIBUNG DES VERWANDTEN FACHGEBIETS
-
VLANs werden häufig in herkömmlichen privaten Kundennetzen verwendet. Bei einem VLAN handelt es sich um einen weit verbreiteten Mechanismus zum Bewältigen und Umsetzen von Isolierung (isolation) und Verbindungsmöglichkeiten (connectivity). Allgemein kann innerhalb von VLANs ein Broadcast-Betrieb durchgeführt werden, während anderen VLANs zugehörige Maschinen/virtuelle Maschinen (VMs) untereinander keine Daten austauschen können. Zwischen Vermittlungseinheiten (switches) transportierte Daten können VLAN-Tags übertragen, um Verbindungen zwischen Mitgliedern umzusetzen, die sich in demselben VLAN befinden aber mit unterschiedlichen Vermittlungseinheiten verbunden sind.
-
Mit sich erweiternden Anwendungsumgebungen für VLANs stehen herkömmliche VLAN-Umsetzungen (wie IEEE 802.1Q usw.) vor verschiedenen Herausforderungen. Wenn sich die Konfigurationsstruktur und das Anwendungsszenario eines VLAN ändern, zum Beispiel, wenn Kunden ihre VLANs in ein Rechenzentrumsnetzwerk (DCN, Data Center Network) verschieben, werden VLAN-Umsetzungen viele Anforderungen auferlegt. Es müssen zum Beispiel die Sicherheit, die Robustheit und die Skalierbarkeit eines VLAN garantiert werden. Des Weiteren müssen Einheiten und Vorrichtungen in einem VLAN auch weiterhin auf dieselbe Weise funktionieren, wie sie dies normalerweise in ihrem privaten Netzwerk tun.
-
Andererseits muss jeder Mandant (tenant) in einer mandantenfähigen Umgebung (multi-tenant environment) sein eigenes VLAN festlegen, und da sowohl physische Knoten als auch VM-Instanzen zunehmen, nimmt auch die Anzahl von VLANs schnell zu. In diesem Fall sind derzeit für VLANs verfügbare Kennungen (VLAN IDs) möglicherweise ungenügend. Außerdem können sich in einem modernen Rechenzentrum zu jedem beliebigen Zeitpunkt ziemlich viele VMs in einem Migrationszustand befinden, und eine Migration von VMs über die VLAN-Grenzen hinweg erfordert viele Konfigurationsänderungen in Vermittlungseinheiten. Des Weiteren sind Isolierung und Verbindungsmöglichkeiten auf Grund des Einsatzes von Multiplattformanwendungen von mehreren Mandanten Schlüsselfaktoren, die zu berücksichtigen sind, da Isolierung die Sicherheit, Robustheit und Skalierbarkeit sicherstellt, während Verbindungsmöglichkeiten die dynamische Zuordnung und Zeitplanung von Ressourcen sicherstellen. Aktuelle Einsatzschemata und technische Anwendungen für VLANs können jedoch nicht die oben genannten Anforderungen erfüllen und sind dementsprechend nicht in der Lage, mehreren Benutzern in einer größeren Netzwerkumgebung gewünschte Dienste bereitzustellen.
-
KURZFASSUNG DER ERFINDUNG
-
Angesichts der oben genannten Gründe schlägt die vorliegende Erfindung eine Lösung zum Umsetzen eines flexiblen virtuellen lokalen Netzwerks vor, die darauf abzielt, zumindest eines von nach dem Stand der Technik bestehenden Problemen zu überwinden.
-
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Umsetzen eines VLAN bereitgestellt, wobei das Verfahren Folgendes aufweist: Ermitteln eines globalen VLAN zum Übertragen eines Datenblocks als Reaktion auf das Empfangen des Datenblocks an einer ersten Vermittlungseinheit, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von der ersten Vermittlungseinheit bedient werden; Kapseln des Datenblocks zumindest teilweise beruhend auf dem Ermitteln des globalen VLAN; und Übertragen des gekapselten Datenblocks über das globale VLAN, um den Datenblock an mindestens eine zweite Vermittlungseinheit zu senden, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient.
-
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Vorrichtung zum Umsetzen eines VLAN bereitgestellt, wobei die Vorrichtung Folgendes aufweist: eine Ermittlungseinheit, die so konfiguriert ist, dass sie ein globales VLAN zum Übertragen eines Datenblocks als Reaktion auf das Empfangen des Datenblocks an einer ersten Vermittlungseinheit ermittelt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von der ersten Vermittlungseinheit bedient werden; eine Datenkapselungseinheit, die so konfiguriert ist, dass sie den Datenblock zumindest teilweise beruhend auf dem Ermitteln des globalen VLAN kapselt; und eine Sendeeinheit, die so konfiguriert ist, dass sie den gekapselten Datenblock über das globale VLAN überträgt, um den Datenblock an mindestens eine zweite Vermittlungseinheit zu senden, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient.
-
Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Umsetzen eines VLAN bereitgestellt, wobei das Verfahren Folgendes aufweist: Empfangen eines über ein globales VLAN übertragenen Datenblocks, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von einer ersten Vermittlungseinheit bedient werden; Erfassen einer Kennung des globalen VLAN gemäß dem Datenblock; und, zumindest teilweise beruhend auf der Kennung des globalen VLAN, Ermitteln einer Kennung eines von einem oder mehreren zweiten lokalen VLANs, die von einer zweiten Vermittlungseinheit bedient werden, um den entkapselten (de-capsulated) Datenblock an das zweite lokale VLAN zu senden, das durch die ermittelte Kennung gekennzeichnet wird.
-
Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine Vorrichtung zum Umsetzen eines VLAN bereitgestellt, wobei die Vorrichtung Folgendes aufweist: eine Empfangseinheit, die so konfiguriert ist, dass sie einen über ein globales VLAN übertragenen Datenblock empfängt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von einer ersten Vermittlungseinheit bedient werden; eine Erfassungseinheit, die so konfiguriert ist, dass sie eine Kennung des globalen VLAN gemäß dem Datenblock erfasst; und eine Ermittlungseinheit, die so konfiguriert ist, dass sie zumindest teilweise beruhend auf der Kennung des globalen VLAN eine Kennung eines von einem oder mehreren zweiten lokalen VLANs ermittelt, die von einer zweiten Vermittlungseinheit bedient werden, um den entkapselten Datenblock an das zweite lokale VLAN zu senden, das durch die ermittelte Kennung gekennzeichnet wird.
-
Gemäß einem fünften Aspekt der vorliegenden Erfindung wird ein Verfahren zum Konfigurieren eines VLAN bereitgestellt, wobei das Verfahren Folgendes aufweist: Ermitteln als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes lokales VLAN eintritt, das von einer ersten Vermittlungseinheit bedient wird, eines globalen VLAN, dem der Host-Computer zugehört, um einen Datenblock von dem Host-Computer über das globale VLAN an mindestens eine zweite Vermittlungseinheit zu übertragen, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient; Hinzufügen einer Adresse der ersten Vermittlungseinheit zu einem Verzeichnisserver, die einer auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht; und Erstellen eines Zuordnungseintrags an der ersten Vermittlungseinheit, wenn der Host-Computer der erste Host-Computer in dem ersten lokalen VLAN ist, wodurch eine Entsprechungsbeziehung zwischen einer Kennung des ersten lokalen VLAN und einer Kennung des globalen VLAN gespeichert wird.
-
Gemäß einem sechsten Aspekt der vorliegenden Erfindung wird eine Vorrichtung zum Konfigurieren eines VLAN bereitgestellt, wobei die Vorrichtung Folgendes aufweist: eine Ermittlungseinheit, die so konfiguriert ist, dass sie als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes lokales VLAN eintritt, das von einer ersten Vermittlungseinheit bedient wird, ein globales VLAN ermittelt, dem der Host-Computer zugehört, um einen Datenblock von dem Host-Computer über das globale VLAN an mindestens eine zweite Vermittlungseinheit zu übertragen, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient; eine Hinzufügungseinheit, die so konfiguriert ist, dass sie zu einem Verzeichnisserver eine Adresse der ersten Vermittlungseinheit hinzufügt, die einer auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht; und eine Erstellungseinheit, die so konfiguriert ist, dass sie einen Zuordnungseintrag an der ersten Vermittlungseinheit erstellt, wenn der Host-Computer der erste Host-Computer in dem ersten lokalen VLAN ist, wodurch eine Entsprechungsbeziehung zwischen einer Kennung des ersten lokalen VLAN und einer Kennung des globalen VLAN gespeichert wird.
-
Mit dem Verfahren und der Vorrichtung, die durch die vorliegende Erfindung bereitgestellt werden, kann eine gute Kompatibilität mit bestehenden VLAN-Standards bzw. -Protokollen (wie zum Beispiel IEEE 802.1Q usw.) erreicht werden, und Anforderungen in Bezug auf Isolierung und Verbindungsmöglichkeiten eines VLAN in einer Anwendungsumgebung mit einem mandantenfähigen Rechenzentrum mit mehreren Standorten können erfüllt werden.
-
In einem Aspekt betrifft die Erfindung ein Verfahren zum Umsetzen eines virtuellen lokalen Netzwerks, aufweisend:
Empfangen eines über ein globales virtuelles lokales Netzwerk übertragenen Datenblocks, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen virtuellen lokalen Netzwerken stammt, die von einer ersten Vermittlungseinheit bedient werden;
Erfassen einer Kennung des globalen virtuellen lokalen Netzwerks gemäß dem Datenblock; und
zumindest teilweise beruhend auf der Kennung des globalen virtuellen lokalen Netzwerks, Ermitteln einer Kennung eines von einem oder mehreren zweiten lokalen virtuellen lokalen Netzwerken, die von einer zweiten Vermittlungseinheit bedient werden, um den entkapselten Datenblock an das zweite lokale virtuelle lokale Netzwerk zu senden, das durch die ermittelte Kennung gekennzeichnet wird.
-
Gemäß einer Ausführungsform der Erfindung weist der Datenblock einen Unicast-Datenblock auf. Das Erfassen der Kennung des globalen virtuellen lokalen Netzwerks weist Folgendes auf:
Erfassen einer Adresse eines Ziel-Host-Computers des Datenblocks aus dem entkapselten Datenblock;
Abfragen eines Verzeichnisservers in Bezug auf die Adresse des Ziel-Host-Computers; und
Erfassen der der Adresse des Ziel-Host-Computers entsprechenden Kennung des globalen virtuellen lokalen Netzwerks von dem Verzeichnisserver.
-
Gemäß einer weiteren Ausführungsform der Erfindung weist der Datenblock einen Broadcast-Datenblock auf. Das Erfassen der Kennung des globalen virtuellen lokalen Netzwerks weist Folgendes auf:
Erfassen einer dem globalen virtuellen lokalen Netzwerk entsprechenden Multicast-Adresse aus dem Datenblock;
Abfragen eines Verzeichnisservers in Bezug auf die Multicast-Adresse; und
Erfassen der der Multicast-Adresse entsprechenden Kennung des globalen virtuellen lokalen Netzwerks von dem Verzeichnisserver.
-
In einem weiteren Aspekt betrifft die Erfindung eine Vorrichtung zum Umsetzen eines virtuellen lokalen Netzwerks, aufweisend:
eine Empfangseinheit, die so konfiguriert ist, dass sie einen über ein globales virtuelles lokales Netzwerk übertragenen Datenblock empfängt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen virtuellen lokalen Netzwerken stammt, die von einer ersten Vermittlungseinheit bedient werden;
eine Erfassungseinheit, die so konfiguriert ist, dass sie eine Kennung des globalen virtuellen lokalen Netzwerks gemäß dem Datenblock erfasst; und
eine Ermittlungseinheit, die so konfiguriert ist, dass sie zumindest teilweise beruhend auf der Kennung des globalen virtuellen lokalen Netzwerks eine Kennung eines von einem oder mehreren zweiten lokalen virtuellen lokalen Netzwerken ermittelt, die von einer zweiten Vermittlungseinheit bedient werden, um den entkapselten Datenblock an das zweite lokale virtuelle lokale Netzwerk zu senden, das durch die ermittelte Kennung gekennzeichnet wird.
-
Gemäß einer Ausführungsform der Erfindung weist der Datenblock einen Unicast-Datenblock auf. Das Erfassen der Kennung des globalen virtuellen lokalen Netzwerks weist Folgendes auf:
Erfassen einer Adresse eines Ziel-Host-Computers des Datenblocks aus dem entkapselten Datenblock;
Abfragen eines Verzeichnisservers in Bezug auf die Adresse des Ziel-Host-Computers; und
Erfassen der der Adresse des Ziel-Host-Computers entsprechenden Kennung des globalen virtuellen lokalen Netzwerks von dem Verzeichnisserver.
-
Gemäß einer weiteren Ausführungsform der Erfindung weist der Datenblock einen Broadcast-Datenblock auf. Das Erfassen der Kennung des globalen virtuellen lokalen Netzwerks weist Folgendes auf:
Erfassen einer dem globalen virtuellen lokalen Netzwerk entsprechenden Multicast-Adresse aus dem Datenblock;
Abfragen eines Verzeichnisservers in Bezug auf die Multicast-Adresse; und
Erfassen der der Multicast-Adresse entsprechenden Kennung des globalen virtuellen lokalen Netzwerks von dem Verzeichnisserver.
-
In einem weiteren Aspekt betrifft die Erfindung ein Verfahren zum Konfigurieren eines virtuellen lokalen Netzwerks, aufweisend:
Ermitteln als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes lokales virtuelles lokales Netzwerk eintritt, das von einer ersten Vermittlungseinheit bedient wird, eines globalen virtuellen lokalen Netzwerks, dem der Host-Computer zugehört, um einen Datenblock von dem Host-Computer über das globale virtuelle lokale Netzwerk an mindestens eine zweite Vermittlungseinheit zu übertragen, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale virtuelle lokale Netzwerke bedient;
Hinzufügen einer Adresse der ersten Vermittlungseinheit zu einem Verzeichnisserver, die einer auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht; und
Erstellen eines Zuordnungseintrags an der ersten Vermittlungseinheit, wenn der Host-Computer der erste Host-Computer in dem ersten lokalen virtuellen lokalen Netzwerk ist, wodurch eine Entsprechungsbeziehung zwischen einer Kennung des ersten lokalen virtuellen lokalen Netzwerks und einer Kennung des globalen virtuellen lokalen Netzwerks gespeichert wird.
-
Gemäß einer Ausführungsform der Erfindung weist das Verfahren ferner Folgendes auf:
Entfernen der Adresse der ersten Vermittlungseinheit, die der auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht, als Reaktion auf das Erkennen, dass der Host-Computer das erste lokale virtuelle lokale Netzwerk verlässt; und
Löschen des Zuordnungseintrags, wenn der Host-Computer der letzte Host-Computer in dem ersten lokalen virtuellen lokalen Netzwerk ist.
-
In einem weiteren Aspekt betrifft die Erfindung eine Vorrichtung zum Konfigurieren eines virtuellen lokalen Netzwerks, aufweisend:
eine Ermittlungseinheit, die so konfiguriert ist, dass sie als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes lokales virtuelles lokales Netzwerk eintritt, das von einer ersten Vermittlungseinheit bedient wird, ein globales virtuelles lokales Netzwerk ermittelt, dem der Host-Computer zugehört, um einen Datenblock von dem Host-Computer über das globale virtuelle lokale Netzwerk an mindestens eine zweite Vermittlungseinheit zu übertragen, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale virtuelle lokale Netzwerke bedient;
eine Hinzufügungseinheit, die so konfiguriert ist, dass sie zu einem Verzeichnisserver eine Adresse der ersten Vermittlungseinheit hinzufügt, die einer auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht; und
eine Erstellungseinheit, die so konfiguriert ist, dass sie einen Zuordnungseintrag an der ersten Vermittlungseinheit konfiguriert, wenn der Host-Computer der erste Host-Computer in dem ersten lokalen virtuellen lokalen Netzwerk ist, wodurch eine Entsprechungsbeziehung zwischen einer Kennung des ersten lokalen virtuellen lokalen Netzwerks und einer Kennung des globalen virtuellen lokalen Netzwerks gespeichert wird.
-
Gemäß einer Ausführungsform der Erfindung weist die Vorrichtung ferner Folgendes auf:
eine Entferneinheit, die so konfiguriert ist, dass sie als Reaktion auf das Erkennen, dass der Host-Computer das erste lokale virtuelle lokale Netzwerk verlässt, die Adresse der ersten Vermittlungseinheit entfernt, die der auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht; und
eine Löscheinheit, die so konfiguriert ist, dass sie den Zuordnungseintrag löscht, wenn der Host-Computer der letzte Host-Computer in dem ersten lokalen virtuellen lokalen Netzwerk ist.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Aspekte der vorliegenden Erfindung versteht man besser durch die folgenden Beschreibungen verschiedener beispielhafter Ausführungsformen in Kombination mit beigefügten Zeichnungen, in denen:
-
1 schematisch einen Netzwerkaufbau von VLANs veranschaulicht;
-
2 schematisch ein Tag-Format von IEEE 802.1Q veranschaulicht;
-
3 eine schematische Darstellung zeigt, die ein über ein zugrunde liegendes L3-IP-Netzwerk umgesetztes virtuelles L2-Ethernet-System gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
-
4A einen Ablaufplan zeigt, der ein Verfahren zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer übertragenden Vermittlungseinheit durchgeführt werden kann;
-
4B einen Ablaufplan zeigt, der ein Verfahren zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer empfangenden Vermittlungseinheit durchgeführt werden kann;
-
4C einen Ablaufplan zeigt, der ein Verfahren zum Konfigurieren eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer Vermittlungseinheit durchgeführt werden kann;
-
5A eine schematische Darstellung zeigt, welche die Umsetzung von Unicast innerhalb eines virtuellen L2-Ethernet über ein zugrunde liegendes L3-IP-Netzwerk gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
-
5B eine schematische Darstellung zeigt, welche die Umsetzung von Broadcast innerhalb eines virtuellen L2-Ethernet über ein zugrunde liegendes L3-IP-Netzwerk gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
-
6A ein Blockschaltbild einer Vorrichtung zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
-
6B ein Blockschaltbild einer Vorrichtung zum Umsetzen eines VLAN gemäß einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
-
6C ein Blockschaltbild einer Vorrichtung zum Konfigurieren eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt; und
-
7 ein Blockschaltbild eines beispielhaften Computersystems zeigt, das zum Umsetzen der Ausführungsformen der vorliegenden Erfindung anwendbar ist.
-
AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
Nachfolgend werden die Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben. Der Fachmann wird verstehen, dass Aspekte der vorliegenden Erfindung als System, Verfahren oder Computerprogrammprodukt ausgeführt werden können. Entsprechend können Aspekte der vorliegenden Erfindung die Form einer vollständigen Hardware-Ausführungsform, einer vollständigen Software-Ausführungsform (darunter Firmware, im Speicher befindliche Software, Mikrocode, usw.) oder einer Software- und Hardware-Aspekte kombinierenden Ausführungsform annehmen, die hierin alle allgemein als „Schaltkreis”, „Modul” oder „System” bezeichnet sein können. Des Weiteren können Aspekte der vorliegenden Erfindung die Form eines auf einem oder mehreren durch einen Computer lesbaren Medien enthaltenen Computerprogrammprodukts annehmen, die durch einen Computer lesbaren Programmcode enthalten.
-
Es kann jede Kombination aus einem oder mehreren durch einen Computer lesbaren Medien verwendet werden. Bei dem durch einen Computer lesbaren Medium kann es sich um ein durch einen Computer lesbares Signalmedium oder ein durch einen Computer lesbares Speichermedium handeln. Bei einem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, eine derartige Vorrichtung oder Einheit oder jede geeignete Kombination daraus handeln, ohne darauf beschränkt zu sein. Zu konkreteren Beispielen (eine nicht erschöpfende Liste) des durch einen Computer lesbaren Speichermediums gehören die folgenden: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede geeignete Kombination daraus. In dem Kontext dieses Dokuments kann es sich bei einem durch einen Computer lesbaren Speichermedium um jedes beliebige physische Medium handeln, das ein Programm enthalten bzw. speichern kann, das von oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Ausführung von Anweisungen verwendet wird.
-
Ein durch einen Computer lesbares Signalmedium kann ein weitergeleitetes Datensignal mit darin enthaltenem durch einen Computer lesbarem Programmcode beinhalten, zum Beispiel im Basisband oder als Teil einer Trägerwelle. Ein derartiges weitergeleitetes Signal kann eine beliebige Form aus einer Vielfalt an Formen annehmen, darunter elektromagnetische, optische bzw. jede geeignete Kombination daraus, jedoch nicht darauf beschränkt. Bei einem durch einen Computer lesbaren Signalmedium kann es sich um ein beliebiges durch einen Computer lesbares Medium handeln, das kein durch einen Computer lesbares Speichermedium ist und das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder Einheit zum Ausführen von Anweisungen übertragen, weiterleiten bzw. transportieren kann. Auf einem durch einen Computer lesbaren Medium enthaltener Programmcode kann unter Verwendung eines beliebigen geeigneten Mediums übertragen werden, darunter drahtlos, drahtgebunden, Lichtwellenleiter-Kabel, HF usw. oder jede geeignete Kombination daraus, jedoch nicht darauf beschränkt.
-
Computerprogrammcode für das Ausführen von Arbeitsschritten für Aspekte der vorliegenden Erfindung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Java, Smalltalk, C++ o. ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C” oder ähnliche Programmiersprachen. Der Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters).
-
Aspekte der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern durch Computerprogrammanweisungen ausgeführt werden können. Diese Computerprogrammanweisungen können dem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen.
-
Diese Computerprogrammanweisungen können auch auf einem durch einen Computer lesbaren Medium gespeichert sein, das einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung bzw. andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass die auf dem durch einen Computer lesbaren Medium gespeicherten Anweisungen ein Herstellungsprodukt herstellen, darunter Anweisungsmittel, welche die/den in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder angegebene(n) Funktion/Schritt umsetzen.
-
Die Computerprogrammanweisungen können auch auf einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung bzw. andere Einheiten geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer, der anderen programmierbaren Vorrichtung bzw. der anderen Einheiten zu veranlassen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer oder einer anderen programmierbaren Vorrichtung ausgeführten Anweisungen Verfahren zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktionen/Schritte erzeugen.
-
Die vorliegende Erfindung wird nachfolgend unter Bezugnahme auf die beigefügten Zeichnungen in Verbindung mit Ausführungsformen beschrieben. Die Beschreibung dient lediglich der Veranschaulichung, nicht etwa, um den Umfang der vorliegenden Erfindung einzuschränken.
-
1 veranschaulicht schematisch einen Netzwerkaufbau von VLANs. Wie in 1 gezeigt ist, kann das Netzwerk VLAN 1, VLAN 2 und VLAN 3 aufweisen, und es gibt eine isolierte Broadcast-Domäne in einem physischen LAN. Obwohl in 1 lediglich drei VLANs gezeigt sind, sei darauf hingewiesen, dass mehrere VLANs eingesetzt werden können. LAN-Mitgliedschaften können durch Software konfiguriert werden, anstatt Einheiten oder Verbindungen physisch zu verschieben. Einige damit einhergehende Konfigurationen können zum Beispiel das Konfigurieren von Anschlüssen von Vermittlungseinheiten, das Kennzeichnen von Datenblöcken beim Eintreten in ein VLAN, das Durchsuchen einer Media-Access-Control-(MAC-)Tabelle zum Vermitteln/Leiten von Datenblöcken an eine Trunk-Verbindung (trunk link), das Entfernen von Tags beim Austreten aus einem VLAN und so weiter aufweisen. Durch das Erstellen von VLAN-Mitgliedschaften können statische VLANs (zum Beispiel auf Ports beruhende VLANs) oder dynamische VLANs (zum Beispiel auf der Quell-MAC-Adresse beruhend) gebildet werden. Alle nicht konfigurierten Host-Computer/Ports können zu einem „Standard-VLAN” gehören, und alle befinden sich in einer Broadcast-Domäne.
-
Das VLAN kann zum Beispiel auf Normen oder Protokollen wie IEEE 802.1Q beruhen. 2 veranschaulicht schematisch ein Tag-Format von IEEE 802.1Q. Im Vergleich zu einem Format in Ethernet-Version wird gemäß den Spezifikationen von IEEE 802.1Q zwischen ein Quell-MAC-Adressenfeld und ein Datenblocktypenfeld (Frame Type field) ein 4-Byte Tag-Header eingefügt, der ein 2-Byte-Feld für Tag Protocol Identifier (TPID) und ein 2-Byte-Feld für Tag Control Information (TCI) aufweist, wobei TCI eine 12-Bit-VLAN-Kennung (VID, VLAN Identifier) enthält. Die VLAN-ID kennzeichnet das VLAN eindeutig, zu dem der Datenblock gehört.
-
Mit zunehmender Netzwerkgröße und einer wachsenden Anzahl von VLAN-Mandanten reicht die 12-Bit-VLAN-ID möglicherweise nicht mehr aus, um Anwendungsumgebungen wie DCN zu unterstützen, und im Fall von Mandantenfähigkeit kann dieselbe VLAN-ID in verschiedenen Kontexten von Benutzernetzwerken wiederverwendet werden. In der aktuellen VLAN-Umsetzung ist das Skalieren eines VLAN über ein Rechenzentrum mit mehreren Standorten hinweg ebenfalls komplex. Außerdem nimmt auch der Verwaltungsaufwand mit einer zunehmenden Anzahl von VLANs und Konfigurationsänderungen von VLANs zu.
-
Gemäß herkömmlicher VLAN-Technologie kann innerhalb eines VLAN ein Broadcast-Betrieb durchgeführt werden, während verschiedenen VLANs zugehörige Maschinen untereinander keine Daten austauschen können. Es kann jedoch vorkommen, dass ein zu einem bestimmten VLAN gehörender Host-Computer oder Server seinen Datenblock an einen zu einem anderen VLAN gehörenden Host-Computer oder Server übertragen möchte. Ein Benutzer kann zum Beispiel auch häufig die VLAN-Konfigurationen ändern und es einer zu einem bestimmten VLAN gehörenden virtuellen Maschine ermöglichen, über die VLAN-Grenzen hinweg zu migrieren. Außerdem kann es in speziellen Anwendungsszenarien (wie in einer DCN-Umgebung) erwünscht sein, dass sämtliche Host-Computer, die nicht in einem VLAN konfiguriert sind, anfangs isoliert sind und nicht zu einem Standard-VLAN (Broadcast-Domäne) gehören.
-
Angesichts der Probleme von zumindest einem Aspekt stellt die vorliegende Erfindung eine Lösung zum Umsetzen eines VLAN bereit, die in einem DCN ausgeführt werden kann. Die Lösung übernimmt einen flexiblen und wirksamen Ansatz zum Konfigurieren eines VLAN, das eine gute Kompatibilität mit bestehenden VLAN-Umsetzungsnormen oder -Protokollen (wie zum Beispiel IEEE 802.1Q usw.) aufweisen und ebenfalls verschiedene Anforderungen in Bezug auf Isolierung und Verbindungsmöglichkeiten für ein VLAN in einer Anwendungsumgebung wie einem mandantenfähigen Rechenzentrum mit mehreren Standorten erfüllen kann.
-
3 zeigt eine schematische Darstellung, die ein über ein zugrunde liegendes L3-IP-Netzwerk umgesetztes virtuelles L2-Ethernet-System gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht; Wie in 3 gezeigt ist, weist das System die Vermittlungseinheiten ToR1, ToR2, ToR3 und ToR4 sowie einen Verzeichnisserver (DS, Directory Server) auf. Die Vermittlungseinheiten ToR1, ToR2, ToR3 bzw. ToR4 können eine Funktionalität einer L3-Zugangsvermittlungseinheit aufweisen. Eine Vermittlungseinheit und ein Verzeichnisserver, die durch ein Universal-L3-IP-Netzwerk verbunden sind, können untereinander Daten austauschen. Jede Zugangsvermittlungseinheit kann ein oder mehrere lokale L2-Ethernet-Netzwerke verbinden (zum Beispiel das lokale VLAN 1 und das lokale VLAN 2, die in 3 gezeigt sind), und die Vermittlungseinheit und die verbundenen lokalen Netzwerke können gemeinsam als Knoten oder lokaler Knoten bezeichnet werden. Eine Vermittlungseinheit (TOR) kann zum Beispiel ein oder mehrere IEEE-802.1Q-VLANs lokal unterstützen, und die lokale VLAN ID (wie zum Beispiel das IEEE-802.1Q-Tag) kann entweder automatisch zugeordnet oder durch einen Benutzer festgelegt werden. Zusätzlich oder alternativ kann die Vermittlungseinheit auch ein L2-Ethernet ohne Verwendung des IEEE-802.1Q-Tag unterstützen, und in diesem Fall können sämtliche lokalen Server/Host-Computer als sich innerhalb desselben IEEE-802.1Q-VLAN befindlich angesehen werden. Somit kann das Ethernet innerhalb des Knotens gemäß Ausführungsformen der vorliegenden Erfindung Funktionalitäten des IEEE-802.1Q-VLAN unterstützen. IEEE-802.1Q-VLANs innerhalb eines Knotens können als Lokale VLANs bezeichnet werden, während VLANs im Sinne eines über ein zugrunde liegendes L3-IP-Netzwerk umgesetztes virtuelles L2-Ethernet global als Globale VLANs bezeichnet werden können. Jedes Lokale VLAN kann einen oder mehrere Host-Computer (oder Server-Host-Computer) enthalten. Wie in 3 gezeigt ist, kann das durch ToR1 unterstützte Lokale VLAN 1 die Host-Computer 110 und 111 enthalten, das durch ToR1 unterstützte Lokale VLAN 2 kann die Host-Computer 210 und 211 enthalten, das durch ToR2 unterstützte Lokale VLAN 1 kann die Host-Computer 120 und 121 enthalten, und das durch ToR3 unterstützte Lokale VLAN 1 kann die Host-Computer 230 und 231 enthalten. Die Zugangsvermittlungseinheit ToR4 unterstützt kein Lokales VLAN. In einer beispielhaften Ausführungsform der vorliegenden Erfindung sind Host-Computer, die in keinem VLAN konfiguriert sind, standardmäßig voneinander isoliert.
-
In Betracht ziehend, dass ein L3-Netzwerk naturgemäß Isolierung und Verbindungsmöglichkeiten bereitstellen kann, wird die zugrunde liegende L3-IP-Netzwerk-Multicast-Gruppe auf eine beispielhafte Ausführungsform der vorliegenden Erfindung angewendet. Die Multicast-Gruppe teilt eine Vielzahl von Host-Computern in eine Gruppe, wobei Multicast innerhalb der Gruppe als „Broadcast” behandelt werden kann. Wenn eine entsprechende Leitwegtabelle gesetzt ist, können ein Leitwegrechner und ein Leitwegprotokoll sicherstellen, dass jeder Host-Computer mit anderen Daten austauschen kann. Eine L3-Netzwerk-Multicast-Gruppe kann zum Beispiel Benutzer lokaler VLANs in verschiedenen lokalen Knoten verbinden. 3 zeigt die Multicast-Gruppe 1 (wie durch den gestrichelten Kreis angegeben) sowie die Multicast-Gruppe 2 (wie durch den Kreis mit durchgezogener Linie angegeben), wobei die Multicast-Gruppe 1 ToR1 und ToR2 sowie deren unterstützte Lokale VLANs verbindet, während die Multicast-Gruppe 2 ToR1 und ToR3 sowie deren unterstützte lokale VLANs verbindet. Eine Multicast-Gruppe kann als globales VLAN angesehen werden, wobei zum Beispiel die Multicast-Gruppe 1 dem Globalen VLAN 1 entspricht, während die Multicast-Gruppe 2 dem Globalen VLAN 2 entspricht. Obwohl 3 nur ein System zeigt, das zwei Multicast-Gruppen und vier Vermittlungseinheiten enthält, sollte klar sein, dass das System mehr Multicast-Gruppen und mehr Vermittlungseinheiten enthalten kann, und dass jede Vermittlungseinheit mehr lokale VLANs unterstützen kann und jedes lokale VLAN mehr Host-Computer enthalten kann. Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann eine Vermittlungseinheit (wie die in 3 gezeigte ToR4) wählen, keiner Multicast-Gruppe beizutreten. Alternativ kann eine Vermittlungseinheit (wie zum Beispiel die in 3 gezeigten ToR1, ToR2 und ToR3) auch wählen, einer oder mehreren Multicast-Gruppen beizutreten.
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann ein Systemverwalter VLAN-Definitionsdaten für alle Host-Computer auf einem Verzeichnisserver festlegen, und diese Host-Computer (wie zum Beispiel die in 3 gezeigten Host-Computer 110, 111, 120, 121, 210, 211, 230 und 231) können innerhalb entsprechender lokaler Knoten verteilt sein. Eine Zuordnungsbeziehung zwischen einer Adresse eines Host-Computers (wie zum Beispiel einer L2-MAC-Adresse usw.), einer globalen Multicast-Gruppen-Kennung (wie zum Beispiel einer Multicast-Gruppen-Adresse usw.) und einer Adresse einer Vermittlungseinheit (wie zum Beispiel einer L3-IP-Adresse usw.) kann zum Beispiel auf dem Verzeichnisserver gespeichert sein. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann eine Zugangsvermittlungseinheit durch Suchen nach entsprechenden Informationen auf dem Verzeichnisserver eine Datenkapselung eines L3-IP-Pakets für einen L2-Ethernet-Unicast-Datenblock aufbauen, um L2-Ethernet-Unicast-Datenübertragungen zwischen Server-Host-Computern auszuführen, die demselben globalen VLAN zugehören, sich aber in verschiedenen lokalen Knoten befinden. Zusätzlich oder alternativ kann die Zugangsvermittlungseinheit in einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung unter Verwendung der Multicast-Technologie für ein L3-IP-Netzwerk ein L2-Netzwerk-Broadcast-Paket in ein L3-IP-Netzwerk-Multicast-Paket kapseln, um L2-Ethernet-Broadcast-Datenübertragungen innerhalb eines globalen VLAN zwischen Server-Host-Computern auszuführen, die demselben globalen VLAN zugehören, sich aber in verschiedenen lokalen Knoten befinden. In noch einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung können gemäß den Definitionsinformationen auf dem Verzeichnisserver Datenübertragungen zwischen Server-Host-Computern, die verschiedenen globalen VLANs zugehören, durch die Zugangsvermittlungseinheit blockiert werden, um Bereiche von Datenübertragungen zwischen Server-Host-Computern mit Hilfe der globalen VLANs zu trennen. Somit können Sicherheitsangriffe wie MAC-Snooping in der aktuellen Netzwerkarchitektur wirksam vermieden werden.
-
Die nachfolgenden schematischen Ablaufpläne sind allgemein als logische Ablaufpläne dargelegt. Die abgebildete Reihenfolge und die benannten Schritte sind als solche bezeichnend für eine Ausführungsform des dargestellten Verfahrens. Es sind andere Schritte und Verfahren denkbar, die hinsichtlich Funktion, Logik bzw. Auswirkung einem oder mehreren Schritten oder Teilschritten des dargestellten Verfahrens gleichwertig sind. Außerdem werden das Format und die angeführten Symbole dafür verwendet, die logischen Schritte des Verfahrens zu erläutern und sind nicht als Einschränkung des Umfangs des Verfahrens zu verstehen. Obwohl möglicherweise verschiedene Pfeilarten und Linienarten in den Ablaufplänen eingesetzt sind, sind diese nicht als Einschränkung des Umfangs des entsprechenden Verfahrens zu verstehen. In der Tat können einige Pfeile oder andere Verbindungselemente dazu verwendet werden, lediglich den logischen Ablauf des Verfahrens anzugeben. Außerdem kann die Reihenfolge, in der ein bestimmtes Verfahren stattfindet, streng der Reihenfolge der entsprechenden gezeigten Schritte entsprechen, muss dies aber nicht tun.
-
4A zeigt einen Ablaufplan, der ein Verfahren zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer übertragenden Vermittlungseinheit (wie einer beliebigen der in 3 gezeigten ToR1, ToR2 und ToR3) für über ein globales VLAN übertragene Datenblöcke durchgeführt werden kann. Wie in 4A gezeigt ist, wird in Schritt 412 als Reaktion auf das Empfangen eines Datenblocks an einer ersten Vermittlungseinheit (wie zum Beispiel der in 3 gezeigten ToR1) ein globales VLAN zum Übertragen des Datenblocks ermittelt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt (wie zum Beispiel dem in 3 gezeigten VLAN 1, das die Host-Computer 110 und 111 enthält), die von der ersten Vermittlungseinheit bedient werden. In Schritt 414 wird der Datenblock zumindest teilweise beruhend auf der Ermittlung des globalen VLAN (wie zum Beispiel der in 3 gezeigten Multicast-Gruppe 1) gekapselt. In Schritt 416 kann der gekapselte Datenblock über das ermittelte globale VLAN übertragen werden, so dass der Datenblock an mindestens eine zweite Vermittlungseinheit (wie zum Beispiel die in 3 gezeigte ToR2) gesendet werden kann, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs (wie zum Beispiel das in 3 gezeigte VLAN 1, das die Host-Computer 120 und 121 enthält) bedient.
-
Der Datenblock kann zum Beispiel einen Unicast-Datenblock oder einen Broadcast-Datenblock aufweisen. Im Falle eines Unicast-Datenblocks kann der Arbeitsschritt des Ermittelns des globalen VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung Folgendes aufweisen: Abfragen eines Verzeichnisservers in Bezug auf Adressen eines Quell-Host-Computers und eines Ziel-Host-Computers des Datenblocks, um zu überprüfen, ob der Quell-Host-Computer und der Ziel-Host-Computer zu demselben globalen VLAN gehören, wobei der Quell-Host-Computer einem der einen oder mehreren ersten lokalen VLANs zugehört und der Ziel-Host-Computer einem der einen oder mehreren zweiten lokalen VLANs zugehört. Der Arbeitsschritt des Ermittelns des globalen VLAN kann ferner Folgendes aufweisen: Erfassen einer Adresse (wie zum Beispiel einer IP-Adresse) der zweiten Vermittlungseinheit von dem Verzeichnisserver, wenn der Quell-Host-Computer und der Ziel-Host-Computer des Datenblocks zu demselben globalen VLAN gehören (das auch in Schritt 412 als das globale VLAN zum Übertragen des Datenblocks ermittelt werden kann). Als Beispiel kann die erste Vermittlungseinheit als übertragende Vermittlungseinheit einen Prozess des Verweigerns von Datenübertragungen durchführen, wenn der Quell-Host-Computer und der Ziel-Host-Computer des Datenblocks nicht zu demselben globalen VLAN gehören, zum Beispiel durch einfaches Verwerfen des Datenblocks. Im Falle eines Broadcast-Datenblocks kann der Arbeitsschritt des Ermittelns des globalen VLAN gemäß einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung Folgendes aufweisen: Abfragen eines Verzeichnisservers in Bezug auf eine Adresse eines Quell-Host-Computers des Datenblocks, um das globale VLAN zu ermitteln, dem der Ziel-Host-Computer zugehört. Der Arbeitsschritt des Ermittelns des globalen VLAN kann ferner Folgendes aufweisen: Erfassen einer Multicast-Adresse von dem Verzeichnisserver, die dem globalen VLAN entspricht.
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann der Arbeitsschritt des Kapselns des Datenblocks Folgendes aufweisen: Hinzufügen von zumindest einer Quelladresse und einer Zieladresse zu dem Datenblock. In einer beispielhaften Ausführungsform in Bezug auf den Unicast-Datenblock kann die Quelladresse eine Adresse der ersten Vermittlungseinheit aufweisen (wie zum Beispiel eine IP-Adresse der übertragenden Zugangsvermittlungseinheit), und die Zieladresse kann eine Adresse der zweiten Vermittlungseinheit aufweisen (wie zum Beispiel eine IP-Adresse der empfangenden Zugangsvermittlungseinheit). Alternativ kann die Quelladresse in einer beispielhaften Ausführungsform in Bezug auf den Broadcast-Datenblock eine Adresse der ersten Vermittlungseinheit aufweisen, und die Zieladresse kann eine Multicast-Adresse aufweisen, die dem ermittelten globalen VLAN entspricht (wie zum Beispiel eine IP-Multicast-Adresse des zugrunde liegenden L3-Netzwerks, das die übertragende und die empfangende Vermittlungseinheit verbindet).
-
4B zeigt einen Ablaufplan, der ein Verfahren zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer empfangenden Vermittlungseinheit (wie einer beliebigen der in 3 gezeigten ToR1, ToR2 und ToR3) für über ein globales VLAN übertragene Datenblöcke durchgeführt werden kann. Wie in 4B gezeigt ist, wird in Schritt 422 ein über ein globales VLAN (wie zum Beispiel der in 3 gezeigten Multicast-Gruppe 1) übertragener Datenblock empfangen, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt (wie zum Beispiel dem in 3 gezeigten VLAN 1, das die Host-Computer 110 und 111 enthält), die von der ersten Vermittlungseinheit (wie zum Beispiel der in 3 gezeigten ToR1) bedient werden. In Schritt 424 kann eine Kennung des globalen VLAN gemäß dem empfangenen Datenblock erfasst werden. Zumindest teilweise beruhend auf der erfassten Kennung des globalen VLAN kann in Schritt 426 eine Kennung eines der einen oder mehreren von einer zweiten Vermittlungseinheit (wie zum Beispiel der in 3 gezeigten ToR2) bedienten zweiten lokalen VLANs ermittelt werden, so dass der entkapselte Datenblock an das zweite lokale VLAN gesendet werden kann, das durch die ermittelte Kennung gekennzeichnet ist (wie zum Beispiel das in 3 gezeigte VLAN 1, das die Host-Computer 120 und 121 enthält).
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann der empfangene Datenblock zum Beispiel durch das Entfernen eines IP-Header entkapselt werden. Im Falle des Empfangens eines Unicast-Datenblocks kann der Arbeitsschritt des Erfassens der Kennung des globalen VLAN Folgendes aufweisen: Erfassen einer Adresse eines Ziel-Host-Computers des Datenblocks von dem entkapselten Datenblock; Abfragen eines Verzeichnisservers in Bezug auf die Adresse des Ziel-Host-Computers; und Erfassen der Kennung des globalen VLAN von dem Verzeichnisserver, die der Adresse des Ziel-Host-Computers entspricht. Alternativ kann der Arbeitsschritt des Erfassens der Kennung des globalen VLAN im Falle des Empfangens eines Broadcast-Datenblocks Folgendes aufweisen: Erfassen einer Multicast-Adresse aus dem Datenblock, die dem globalen VLAN entspricht; Abfragen eines Verzeichnisservers in Bezug auf die Multicast-Adresse; und Erfassen der Kennung des globalen VLAN von dem Verzeichnisserver, die der Multicast-Adresse entspricht. Mit der erfassten Kennung des globalen VLAN kann zum Beispiel eine der erfassten Kennung des globalen VLAN entsprechende Kennung eines lokalen VLAN lokal (zum Beispiel an der zweiten Vermittlungseinheit) abgefragt werden, welche das lokale VLAN kennzeichnet, zu der das Ziel des Datenblocks gehört. In einer beispielhaften Ausführungsform der vorliegenden Erfindung wird die in dem Datenblock enthaltene Kennung des lokalen VLAN auf die abgefragte Kennung des lokalen VLAN abgeändert, wenn sich die abgefragte Kennung des lokalen VLAN von der in dem empfangenen Datenblock enthaltenen unterscheidet. Auf diese Weise kann die zweite Vermittlungseinheit den Unicast-Datenblock an das lokale VLAN senden, das durch die ermittelte lokale VLAN-Kennung gekennzeichnet ist, und der durch den Unicast-Datenblock angegebene Ziel-Host-Computer kann diesen Unicast-Datenblock empfangen. Alternativ kann die zweite Vermittlungseinheit den Broadcast-Datenblock an das lokale VLAN senden, das durch die ermittelte lokale VLAN-Kennung gekennzeichnet ist, und sämtliche zu diesem lokalen VLAN gehörenden Host-Computer können den Broadcast-Datenblock empfangen.
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann das oben in Bezug auf 4A und 4B beschriebene Verfahren über ein zugrunde liegendes L3-IP-Netzwerk auf einem virtuellen L2-Ethernet umgesetzt werden. Der flexible und leistungsfähige VLAN-Ansatz, der durch die vorliegende Erfindung bereitgestellt wird, beruht auf einem über ein gewöhnliches L3-TCP/IP-Netzwerk umgesetzten virtuellen L2-Netzwerk. Host-Computer oder Server innerhalb eines lokalen Knotens können L2-Datenblöcke lokal vermitteln, wodurch das herkömmliche IEEE-802.1Q-VLAN unterstützt wird. Jeder Knoten kann über eine gewöhnliche L3-Vermittlungseinheit mit einem Erweiterungsmodul mit anderen Knoten verbunden werden. In Knoten enthaltene ToRs können miteinander verbunden werden, um das zugrunde liegende L3-TCP/IP-Netzwerk zu bilden. Mit MAC-Datenkapselung in IP-Pakete und der L3-Multicast-Technologie können ein an eine ferne MAC-Adresse gerichtetes Unicast-Paket und ein Multicast-Paket einen fernen Host-Computer oder Server innerhalb eines anderen Knotens erreichen. Mehrere Host-Computer oder Server befinden sich logisch in einem virtuellen flachen lokalen Netzwerk. Das VLAN kann zum Beispiel in dem flachen virtuellen lokalen Netzwerk durch Konfigurationen in einem Verzeichnisserver festgelegt werden. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann der Systemverwalter Host-Computer gemäß Bedürfnissen von Benutzern gruppieren, so dass diese Host-Computer verschiedenen globalen VLANs entsprechen können. Der Systemverwalter kann jedem globalen VLAN eine Multicast-Gruppe eines zugrunde liegenden L3-Netzwerks zuordnen und auf dem Verzeichnisserver einige Einträge mit Entsprechungsbeziehungen zwischen der Adresse jedes Host-Computers, einem globalen VLAN und einer Multicast-Adresse einer entsprechenden Multicast-Gruppe erstellen. Auf dem Verzeichnisserver kann zum Beispiel mindestens eines der folgenden Felder bzw. eine der folgenden Informationen gespeichert sein:
- • die Adresse des Servers/Host-Computers, bei der es sich um eine MAC-Adresse einer Netzwerkschnittstellenkarte in einem Server/Host-Computer zum eindeutigen Kennzeichnen des Servers/Host-Computers handeln kann;
- • die globale VLAN-Kennung, welche die Kennung eines globalen VLAN darstellen kann, zu dem der Server/Host-Computer gehört;
- • die entsprechende Multicast-Gruppe, bei der es sich um eine IP-Multicast-Adresse handeln kann, die dem globalen VLAN entspricht; und
- • die Adresse der Vermittlungseinheit, bei der es sich um eine IP-Adresse einer L3-Zugangsvermittlungseinheit für ein lokales VLAN handeln kann, zu dem der Server/Host-Computer gehört.
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann das Zugangsvermittlungseinheiten verschiedener Knoten verbindende L3-IP-Netzwerk auch eine Verbindung mit einem Verzeichnisserver (DS) herstellen, und der DS kann über das IP-Netzwerk mit entsprechenden Zugangsvermittlungseinheiten Daten austauschen, beispielsweise Informationen abrufen und austauschen. Als Beispiel kann es sich bei dem Verzeichnisserver um jede beliebige Art von Datenbank oder Server handeln, die Datenspeicher- und -abruffunktionalitäten aufweisen.
-
4C zeigt einen Ablaufplan, der ein Verfahren zum Konfigurieren eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht, das an einer Vermittlungseinheit durchgeführt werden kann. In Schritt 432 kann als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes lokales VLAN eintritt, das von einer ersten Vermittlungseinheit bedient wird, ein globales VLAN ermittelt werden, dem der Host-Computer zugehört, so dass ein Datenblock von dem Host-Computer über das ermittelte globale VLAN an mindestens eine zweite Vermittlungseinheit übertragen werden kann, die ein oder mehrere zweite lokale VLANs bedienen kann. Die erste Vermittlungseinheit kann zum Beispiel gemäß einer Adresse des Host-Computers (wie zum Beispiel eine MAC-Adresse) einen Verzeichnisserver in Bezug auf das globale VLAN, dem der Host-Computer zugehört, und eine entsprechende Multicast-Gruppe in einem zugrunde liegenden Netzwerk abfragen, und die erste Vermittlungseinheit kann in diese Multicast-Gruppe eintreten, um Datenübertragungen innerhalb der Multicast-Gruppe zu unterstützen. In Schritt 434 kann dem Verzeichnisserver eine Adresse der ersten Vermittlungseinheit hinzugefügt werden, die der auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht. Die erste Vermittlungseinheit kann zum Beispiel ihre eigene IP-Adresse verwenden, um das Feld ”Adresse der Vermittlungseinheit” in Bezug auf den in dem DS eingetragenen Host-Computer auszufüllen oder zu ändern. Wenn der Host-Computer der erste Host-Computer in dem ersten lokalen VLAN ist, kann in Schritt 436 ein Zuordnungseintrag an der ersten Vermittlungseinheit erstellt werden, um eine Entsprechungs/Zuordnungs-Beziehung zwischen der Kennung des ersten lokalen VLAN und der Kennung des ermittelten globalen VLAN einzutragen. Die erste Vermittlungseinheit kann zum Beispiel dem ersten lokalen VLAN ein lokales IEEE-802.1Q-Tag zuordnen und einen Teil des Entsprechungseintrags einer lokal gespeicherten Globalen/Lokalen VLAN-Entsprechungstabelle hinzufügen. Durch dieses Verfahren kann die erste Vermittlungseinheit in eine Multicast-Gruppe in dem zugrunde liegenden Netzwerk eintreten, wobei diese Multicast-Gruppe dem für den Host-Computer ermittelten globalen VLAN entspricht. Als solcher kann der Host-Computer einen Eingabe/Ausgabe-Datenblock (wie zum Beispiel einen Ethernet-Datenblock) normal in dem virtuellen L2-Netzwerk (wie zum Beispiel dem lokalen VLAN) bearbeiten und den Datenblock ebenfalls über die erste Vermittlungseinheit an eine oder mehrere zweite Vermittlungseinheiten in dem globalen VLAN senden, wodurch die zweite Vermittlungseinheit den Datenblock an einen oder mehrere andere Host-Computer weiterleiten kann.
-
Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann das Verfahren ferner den folgenden Schritt aufweisen: als Reaktion auf das Erkennen, dass der Host-Computer das erste lokale VLAN verlässt (zum Beispiel getrennt wird), Entfernen der Adresse der ersten Vermittlungseinheit (zum Beispiel des einer IP der L3-Zugangsvermittlungseinheit entsprechenden Feldes), die der Adresse des in dem Verzeichnisserver gespeicherten Host-Computers entspricht, durch die Vermittlungseinheit. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann das Verfahren ferner den folgenden Schritt aufweisen: wenn der Host-Computer der letzte Host-Computer in dem ersten lokalen VLAN ist, Löschen des Zuordnungseintrags, der die Entsprechungsbeziehung zwischen der Kennung des ersten lokalen VLAN und der Kennung des globalen VLAN speichert, dem der Host-Computer zugehört (wie zum Beispiel eines entsprechenden Eintrags in der lokal gespeicherten Globalen/Lokalen VLAN-Entsprechungstabelle) durch die erste Vermittlungseinheit. Insbesondere kann die erste Vermittlungseinheit (zum Beispiel von dem DS) das globale VLAN, dem der Host-Computer zugehört, und die entsprechende Multicast-Gruppe in dem zugrunde liegenden Netzwerk gemäß der Adresse (wie zum Beispiel der MAC-Adresse) des Host-Computers abfragen. Wenn der Host-Computer der letzte Host-Computer in den lokalen VLANs für dieses globale VLAN ist, kann die erste Vermittlungseinheit diese Multicast-Gruppe in dem zugrunde liegenden Netzwerk verlassen.
-
Die Verfahren zum Umsetzen und Konfigurieren eines VLAN gemäß beispielhaften Ausführungsformen werden oben beschrieben. Es sei angemerkt, dass die beschriebenen Verfahren lediglich als Beispiele dienen und nicht die vorliegende Erfindung einschränken. Die Verfahren zum Umsetzen und Konfigurieren eines VLAN der vorliegenden Erfindung können mehr, weniger oder andere Schritte aufweisen, und einige Schritte können in einen Einzelschritt zusammengefasst oder in weitere Teilschritte unterteilt werden, und die Reihenfolge einiger Schritte kann geändert werden, oder diese können parallel ausgeführt werden.
-
5A zeigt eine schematische Darstellung, welche die Umsetzung von Unicast innerhalb eines virtuellen L2-Ethernet über ein zugrunde liegendes L3-IP-Netzwerk gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht. Entsprechend zeigt 5B eine schematische Darstellung, welche die Umsetzung von Broadcast innerhalb eines virtuellen L2-Ethernet über ein zugrunde liegendes L3-IP-Netzwerk gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht. Zum Zwecke der Veranschaulichung verwenden 5A und 5B als Beispiel lediglich zwei Knoten, wobei jeder Knoten eine mit einem externen Universal-L3-IP-Netzwerk verbundene Zugangsvermittlungseinheit aufweist, wobei die Zugangsvermittlungseinheiten wie oben in Verbindung mit zumindest einer der 4A bis 4C beschriebene Funktionen durchführen können. Ein Verzeichnisserver (DS) kann über das L3-IP-Netzwerk auch mit jeder Zugangsvermittlungseinheit verbunden sein. Gemäß einer Ausführungsform der vorliegenden Erfindung kann jeder Knoten ein oder mehrere L2-Ethernets enthalten. Das L2-Ethernet kann aus einer oder mehreren damit verbundenen L2-Ethernet-Vermittlungseinheiten bestehen. In dem L2-Ethernet können IEEE-802.1Q-VLAN-Funktionen unterstützt werden. Insbesondere kann ein Ethernet ohne Verwendung eines IEEE-802.1Q-Tag als spezieller Fall mit Unterstützung für IEEE-802.1Q-VLAN angesehen werden, wobei sich alle Server-Host-Computer innerhalb desselben IEEE-802.1Q-VLAN befinden. Wie vorher in Bezug auf 3 sowie in Bezug auf die 4A bis 4C beschrieben wurde, kann ein IEEE-802.1Q-VLAN innerhalb eines Knotens hierin als lokales VLAN bezeichnet werden, und ein gemäß der Ausführungsform der vorliegenden Erfindung mit dem globalen L2-Ethernet aufgebautes VLAN kann als globales VLAN bezeichnet werden. An Knoten 1, der die Zugangsvermittlungseinheit ToR1 enthält, wird angenommen, dass es zwei Server-Host-Computer 110 und 111 gibt, die beide dem Lokalen VLAN 001 zugehören. An Knoten 2, der die Zugangsvermittlungseinheit ToR2 enthält, wird angenommen, dass es zwei Server-Host-Computer 120 und 121 gibt, die beide dem Lokalen VLAN 002 zugehören. Es sollte klar sein, dass ein Beispiel mit lediglich zwei Knoten (die jeweils zwei Host-Computer aufweisen) hier lediglich zum Zwecke der Veranschaulichung gezeigt werden. In Wirklichkeit kann das System gemäß Ausführungsformen der vorliegenden Erfindung mehr Knoten und entsprechende Vermittlungseinheiten aufweisen, und jeder Knoten kann mehr Host-Computer sowie ein oder mehrere entsprechende lokale VLANs enthalten. Außerdem kann jede Vermittlungseinheit in entsprechende Multicast-Gruppen eines oder mehrerer globaler VLANs eintreten.
-
Das Arbeitsprinzip beim Umsetzen von Unicast innerhalb des virtuellen L2-Netzwerks wird nachfolgend in Verbindung mit 5A beschrieben. Angenommen, ein Server-Host-Computer 110 sendet einen Datenblock (wie zum Beispiel einen Ethernet-Datenblock) 512 an einen Server-Host-Computer 120. Eine Netzwerkschnittstellenkarte einer Zugangsvermittlungseinheit ToR1 von Knoten 1 wird zum Beispiel in einer nicht vertraulichen Betriebsart (promiscuous mode) betrieben. Sie kann den Datenblock empfangen und verarbeiten. Die Zugangsvermittlungseinheit ToR1 kann zum Abfragen des Verzeichnisservers Quell- und Zieladressen (wie zum Beispiel die Quell- und Ziel-MAC-Adressen 54:52:00:00:00:01/54:52:00:00:00:02) des Datenblocks 512 verwenden, um zu ermitteln, ob diese beiden Adressen demselben globalen VLAN zugehören. Wenn die beiden Adressen nicht zu demselben globalen VLAN gehören, kann der Verzeichnisserver an die Zugangsvermittlungseinheit ToR1 von Knoten 1 ein Ergebnis ausgeben (wie zum Beispiel eine Verweigerung der Datenübertragung). Entsprechend kann die Zugangsvermittlungseinheit ToR1 einen Prozess zum Verweigern von Datenübertragungen durchführen, zum Beispiel durch einfaches Verwerfen des Datenblocks. Wenn die Quell- und Zieladressen des Datenblocks demselben globalen VLAN zugehören, kann der Verzeichnisserver eine Adresse (wie zum Beispiel die IP-Adresse) einer Zugangsvermittlungseinheit ToR2 eines den Ziel-Host-Computer aufweisenden Netzwerks ausgeben. Nach dem Empfangen der Adresse kann die Zugangsvermittlungseinheit ToR1 ihre eigene Adresse (wie zum Beispiel die IP-Adresse) als Quelladresse und die empfangene Adresse als Zieladresse verwenden, um den vorher empfangenen Datenblock 512 zum Beispiel durch Hinzufügen eines IP-Header zum Aufbauen eines IP-Pakets 514 zu kapseln. Als übertragende Zugangsvermittlungseinheit kann ToR1 den gekapselten Datenblock (wie zum Beispiel das IP-Paket 514) über das zugrunde liegende L3-Netzwerk an die empfangende Zugangsvermittlungseinheit ToR2 senden.
-
Die zum Abrufen in dem Verzeichnisserver (DS) gespeicherten zugehörigen Felder bzw. Informationen können Folgendes aufweisen: eine Adresse eines Servers/Host-Computers, eine Kennung eines Globalen VLAN, zu dem sie gehört, eine entsprechende Multicast-Gruppe und eine Adresse einer Vermittlungseinheit. Tabelle 1 zeigt ein Beispiel von Hauptfeldern und entsprechende Informationen für entsprechende Host-Computer, die in dem Verzeichnisserver gespeichert sein können. Tabelle 1
-
Obwohl Tabelle 1 lediglich Einträge für ein globales VLAN (mit der Globalen VLAN-ID 1) zeigt, sollte klar sein, dass der Verzeichnisserver auch Einträge für andere unterschiedliche globale VLANs und entsprechende Multicast-Gruppen sowie Server-Host-Computer aufweisen kann. Wenn die Zugangsvermittlungseinheit erkennt, dass ein konkreter Host-Computer in das Netzwerk eintritt, kann sie außerdem gemäß dem in Verbindung mit 4C beschriebenen Verfahren eine entsprechende Adresse einer Vermittlungseinheit hinzufügen. Aus Tabelle 1 ist ersichtlich, dass die der Quelladresse 54:52:00:00:00:01 des Datenblocks 512 entsprechende Globale VLAN-ID 1 lautet, und die der Zieladresse 54:52:00:00:00:02 entsprechende Globale VLAN-ID ebenfalls 1 lautet, wodurch festgestellt werden kann, dass die Quell- und Zieladressen des Datenblocks demselben globalen VLAN zugehören. Somit kann der Verzeichnisserver eine IP-Adresse der Zugangsvermittlungseinheit ToR2 des den Ziel-Host-Computer aufweisenden Netzwerks an ToR1 ausgeben, um ein L3-IP-Paket aufzubauen.
-
Nach dem Empfangen des gekapselten Datenblocks (wie zum Beispiel des IP-Pakets 514) kann ToR2 diesen als empfangende Zugangsvermittlungseinheit entkapseln (zum Beispiel durch Entfernen eines IP-Header) und den darin enthaltenen Datenblock (wie zum Beispiel den Ethernet-Datenblock) 512 entnehmen.
-
Die Zugangsvermittlungseinheit ToR
2 kann von dem Verzeichnisserver die Zieladresse des Datenblocks (wie zum Beispiel die MAC-Adresse 54:52:00:00:00:02) abfragen, um eine ID des globalen VLAN (wie zum Beispiel die Globale VLAN-ID 1) zu erhalten, dem die Zieladresse zugehört. Die Zugangsvermittlungseinheit ToR
2 kann eine dieser globalen VLAN-ID entsprechende lokale VLAN-ID erhalten, indem sie ihre eigene Globale/Lokale VLAN-Entsprechungstabelle abfragt. Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung kann in der Zugangsvermittlungseinheit jedes Knotens eine Tabelle gepflegt werden, in der die Entsprechungsbeziehung zwischen globalen VLAN-IDs und lokalen VLAN-IDs eingetragen wird. Tabelle 2(a) und Tabelle 2(b) zeigen beispielhaft Globale/Lokale VLAN-Entsprechungstabellen, die in der Vermittlungseinheit ToR
1 bzw. der Vermittlungseinheit ToR
2 gespeichert sind. Tabelle 2(a) Vermittlungseinheit ToR
1 Globale VLAN-ID | Lokale VLAN-ID |
1 | 001 |
2 | 002 |
5 | 003 |
... | ... |
Tabelle 2(b) Vermittlungseinheit ToR
2 Globale VLAN-ID | Lokale VLAN-ID |
1 | 002 |
2 | 003 |
3 | 001 |
... | ... |
-
Da die lokale VLAN-ID des entkapselten Datenblocks 001 lautet, während die entsprechende, von der Zugangsvermittlungseinheit ToR2 aus ihrer eigenen Globalen/Lokalen VLAN-Entsprechungstabelle abgefragte lokale VLAN-ID 002 lautet, muss die Zugangsvermittlungseinheit ToR2 in diesem Beispiel die lokale VLAN-ID (wie zum Beispiel das IEEE-802.1Q-Tag) innerhalb des Datenblocks auf 002 ändern, und der sich daraus ergebende Datenblock 516 kann an das lokale L2-Ethernet gesendet werden, das durch die lokale VLAN-ID 002 gekennzeichnet ist. In einer anderen beispielhaften Ausführungsform kann die Zugangsvermittlungseinheit ToR2 aus ihrer eigenen Globalen/Lokalen VLAN-Entsprechungstabelle abfragen, dass die lokale VLAN-ID ebenfalls 001 lautet. In diesem Fall kann ToR2 den Datenblock 516 an das entsprechende lokale L2-Ethernet senden, ohne die lokale VLAN-ID innerhalb des entkapselten Datenblocks zu ändern. Als solcher kann eine Ethernet-Vermittlungseinheit in der letzten Ebene (die mit dem Server-Host-Computer 120 verbunden ist), den Datenblock 516 empfangen, das IEEE-802.Q-VLAN-Tag entfernen und ihn dann an den Server-Host-Computer 120 senden. Aus Sicht des Server-Host-Computers 120 erscheint der Server-Host-Computer 110 so, als ob er sich mit dem Server-Host-Computer 120 in demselben lokalen VLAN desselben L2-Ethernet befinden würde. Diese Zwischenumwandlungsprozesse sind für den Server-Host-Computer 120 transparent.
-
Das Arbeitsprinzip beim Umsetzen von Broadcast innerhalb des virtuellen L2-Netzwerks wird nachfolgend in Verbindung mit 5B beschrieben. Angenommen, ein Server-Host-Computer 110 sendet einen Datenblock (wie zum Beispiel einen Ethernet-Broadcast-Datenblock) 522 an sämtliche Host-Computer innerhalb eines globalen VLAN, dem der Server-Host-Computer 110 zugehört. Sämtliche Server-Host-Computer innerhalb desselben lokalen VLAN innerhalb eines Knotens empfangen den Broadcast-Datenblock 522, wobei es sich um eine Funktionalität handelt, welche die lokale Ethernet-Vermittlungseinheit aufweisen kann. Eine Netzwerkschnittstellenkarte einer Zugangsvermittlungseinheit ToR1 von Knoten 1 wird zum Beispiel in einer nicht vertraulichen Betriebsart betrieben und empfängt und verarbeitet den Broadcast-Datenblock 522. Die Zugangsvermittlungseinheit ToR1 kann eine Quelladresse (wie zum Beispiel die Quell-MAC-Adresse 54:52:00:00:00:01) des Broadcast-Datenblocks 522 verwenden, um einen Verzeichnisserver abzufragen. Gemäß dieser Adresse kann der Verzeichnisserver eine ID eines globalen VLAN ausgeben, dem der Host-Computer 110 zugehört, sowie eine entsprechende Multicast-Adresse (wie zum Beispiel die IP-Adresse 224.0.1.1). Nach dem Empfangen der Multicast-Adresse kann die Zugangsvermittlungseinheit ToR1 ihre eigene Adresse (wie zum Beispiel die IP-Adresse) als Quelladresse und die Multicast-Adresse als Zieladresse verwenden, um den vorher empfangenen Datenblock 522 zum Beispiel durch Hinzufügen eines IP-Header zum Aufbauen eines IP-Multicast-Pakets 524 zu kapseln. Als übertragende Zugangsvermittlungseinheit kann ToR1 den gekapselten Datenblock (wie zum Beispiel das IP-Multicast-Paket 524) über das zugrunde liegende L3-Netzwerk innerhalb der entsprechenden Multicast-Gruppe per Multicasting übertragen. Da sich die Zugangsvermittlungseinheit ToR2 auch innerhalb dieser Multicast-Gruppe befindet, empfängt sie das Multicast-Paket 524, entkapselt es (zum Beispiel durch Entfernen eines IP-Header) und entnimmt den darin enthaltenen Datenblock 522. Die Zugangsvermittlungseinheit ToR2 kann den Verzeichnisserver in Bezug auf die Multicast-Adresse (wie zum Beispiel 224.0.1.1) abfragen, um eine dieser Adresse entsprechende globale VLAN-ID (wie zum Beispiel die Globale VLAN-ID 1) zu erhalten, und ihre eigene Globale/Lokale VLAN-Entsprechungstabelle abfragen, um eine dieser globalen VLAN-ID entsprechende lokale VLAN-ID (wie zum Beispiel die Lokale VLAN-ID 002) zu erhalten. Da die lokale VLAN-ID innerhalb des entkapselten Datenblocks 001 lautet, muss die Zugangsvermittlungseinheit ToR2 in diesem Beispiel, ähnlich wie es bei Unicast-Datenblöcken der Fall ist, die lokale VLAN-ID (wie zum Beispiel das IEEE-802.1Q-Tag) innerhalb des Datenblocks auf 002 ändern, und der sich daraus ergebende Datenblock 526 kann an das lokale L2-Ethernet gesendet werden, das durch die lokale VLAN-ID 002 gekennzeichnet ist. In einer anderen beispielhaften Ausführungsform kann die Zugangsvermittlungseinheit ToR2 aus ihrer eigenen Globalen/Lokalen VLAN-Entsprechungstabelle abfragen, dass die lokale VLAN-ID ebenfalls 001 lautet. In diesem Fall kann ToR2 den Datenblock 526 an das entsprechende lokale L2-Ethernet senden, ohne die lokale VLAN-ID innerhalb des entkapselten Datenblocks zu ändern. Als solche empfangen sämtliche Server-Host-Computer innerhalb desselben durch die lokale VLAN-ID 002 gekennzeichneten lokalen VLAN den Broadcast-Datenblock 526, so als ob es von irgendeinem Host-Computer in demselben lokalen VLAN gesendet wird.
-
Die von der vorliegenden Erfindung vorgeschlagene Lösung kann viele Vorteile bringen. Die Lösung kann zum Beispiel eine gute Kompatibilität mit der bestehenden IEEE 802.1Q-Norm erzielen. Da sich eine VLAN-ID innerhalb einer lokalen Vermittlungseinheit befindet, kann sie außerdem in einem lokalen virtuellen Benutzernetzwerk privat sein, während dieselbe VLAN-ID in verschiedenen virtuellen Benutzernetzwerken verwendet werden kann. Die Lösung kann auch eine anfängliche Definition aufweisen, dass sämtliche Server/Host-Computer, die nicht in einem VLAN konfiguriert sind, anfangs isoliert sind und nicht zu einem Standard-VLAN (oder einer Broadcast-Domäne) gehören. Ein nicht auf einem Verzeichnisserver festgelegter Host-Computer kann zum Beispiel nicht an Datenübertragungen teilnehmen. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann die Gesamtanzahl globaler VLANs von der Anzahl von Multicast-Gruppen abhängen, die von einem zugrunde liegenden Netzwerk unterstützt wird (wie zum Beispiel IPv4 28 Bit oder IPv6 112 Bit), wodurch die Anzahl verfügbarer VLANs erheblich erhöht wird. Die zentralisierte Konfiguration der VLAN-Mitgliedschaft kann den Verwaltungsaufwand verringern und eine Möglichkeit bereitstellen, komplexere Regeln zum Festlegen der Mitgliedschaft für aufkommende DCN-Anwendungen anzuwenden. Der Verzeichnisserver kann zum Beispiel dynamisch aktualisiert werden, und für das Zugreifen auf Daten und Informationen kann Komfort bereitgestellt werden. Die Lösung gemäß den Ausführungsformen der vorliegenden Erfindung kann auch eine gute Unterstützung für die DCN-Architektur bieten. Außerdem kann die Lösung ferner viele Sicherheitsvorteile mit sich bringen, zum Beispiel das Bereitstellen von Sicherheit für den Steuerkanal, das Vermeiden bestimmter Sicherheitsangriffe (wie zum Beispiel MAC-Snooping) in dem bestehenden Netzwerkrahmen und so weiter.
-
6A zeigt ein Blockschaltbild einer Vorrichtung 610 zum Umsetzen eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung. Die Vorrichtung 610 weist Komponenten bzw. Einheiten auf, die Prozessschritte und deren entsprechende Funktionen umsetzen können, wie in Verbindung mit 4A gezeigt ist. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann die Vorrichtung 610 eine Ermittlungseinheit 612, eine Datenkapselungseinheit 614 und eine Sendeeinheit 616 aufweisen. Die Ermittlungseinheit 612 kann zum Beispiel so konfiguriert sein, dass sie ein globales VLAN zum Übertragen eines Datenblocks als Reaktion auf das Empfangen des Datenblocks an einer ersten Vermittlungseinheit ermittelt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von der ersten Vermittlungseinheit bedient werden. Die Datenkapselungseinheit 614 kann so konfiguriert sein, dass sie den Datenblock zumindest teilweise beruhend auf dem Ermitteln des globalen VLAN kapselt. Die Sendeeinheit 616 kann so konfiguriert sein, dass sie den gekapselten Datenblock über das ermittelte globale VLAN überträgt, um den Datenblock an mindestens eine zweite Vermittlungseinheit zu senden, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient. In einer Ausführungsform kann die Ermittlungseinheit 612 so konfiguriert sein, dass sie einen Verzeichnisserver in Bezug auf Adressen eines Quell-Host-Computers und eines Ziel-Host-Computers des Datenblocks abfragt, um zu überprüfen, ob der Quell-Host-Computer und der Ziel-Host-Computer demselben globalen VLAN zugehören. Wenn der Quell-Host-Computer und der Ziel-Host-Computer demselben globalen VLAN zugehören, kann die Ermittlungseinheit 612 ferner so konfiguriert sein, dass sie von dem Verzeichnisserver eine Adresse der zweiten Vermittlungseinheit erfasst. In einer anderen Ausführungsform kann die Ermittlungseinheit 612 so konfiguriert sein, dass sie den Verzeichnisserver in Bezug auf eine Adresse eines Quell-Host-Computers des Datenblocks abfragt, um das globale VLAN zu ermitteln, dem der Quell-Host-Computer zugehört, und dann von dem Verzeichnisserver eine dem globalen VLAN entsprechende Multicast-Adresse erfasst. Entsprechend kann die Datenkapselungseinheit 614 so konfiguriert sein, dass sie zu dem Datenblock mindestens eine Quelladresse und eine Zieladresse hinzufügt, wobei die Quelladresse eine Adresse der ersten Vermittlungseinheit aufweisen kann, und die Zieladresse (bei einem Unicast-Datenblock) die Adresse der zweiten Vermittlungseinheit oder (bei einem Broadcast-Datenblock) die dem ermittelten globalen VLAN entsprechende Multicast-Adresse aufweisen kann.
-
6B zeigt ein Blockschaltbild einer Vorrichtung 620 zum Umsetzen eines VLAN gemäß einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung. Die Vorrichtung 620 weist Komponenten bzw. Einheiten auf, die Prozessschritte und deren entsprechende Funktionen umsetzen können, wie in Verbindung mit 4B gezeigt. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann die Vorrichtung 620 eine Empfangseinheit 622, eine Erfassungseinheit 624 und eine Ermittlungseinheit 626 aufweisen. Die Empfangseinheit 622 kann zum Beispiel so konfiguriert sein, dass sie einen über ein globales VLAN übertragenen Datenblock empfängt, wobei der Datenblock aus einem von einem oder mehreren ersten lokalen VLANs stammt, die von einer ersten Vermittlungseinheit bedient werden; Die Erfassungseinheit 624 kann so konfiguriert sein, dass sie eine Kennung des globalen VLAN gemäß dem Datenblock erfasst. Die Ermittlungseinheit 626 kann so konfiguriert sein, dass sie zumindest teilweise beruhend auf der Kennung des globalen VLAN eine Kennung eines von einem oder mehreren zweiten lokalen VLANs ermittelt, die von einer zweiten Vermittlungseinheit bedient werden, um den entkapselten Datenblock an das zweite lokale VLAN zu senden, das durch die ermittelte Kennung gekennzeichnet wird. In einer Ausführungsform kann die Empfangseinheit 622 ferner so konfiguriert sein, dass sie den empfangenen Datenblock entkapselt. Die Erfassungseinheit 624 kann so konfiguriert sein, dass sie aus dem entkapselten Datenblock eine Adresse eines Ziel-Host-Computers des Datenblocks erfasst, und einen Verzeichnisserver in Bezug auf diese Adresse abfragt, um die Kennung des globalen VLAN zu ermitteln, die der Adresse des Ziel-Host-Computers entspricht. In einer anderen Ausführungsform kann die Erfassungseinheit 624 so konfiguriert sein, dass sie aus dem empfangenen Datenblock eine dem globalen VLAN entsprechende Multicast-Adresse erfasst und den Verzeichnisserver in Bezug auf diese Multicast-Adresse abfragt, um die Kennung des globalen VLAN zu ermitteln, die der Multicast-Adresse entspricht. Entsprechend kann die Ermittlungseinheit 626 so konfiguriert sein, dass sie eine Lokale/Globale VLAN-ID-Entsprechungstabelle in Bezug auf die Kennung des globalen VLAN abfragt, um zu ermitteln, an welches von der zweiten Vermittlungseinheit bediente lokale VLAN das entkapselte Datenpaket gesendet werden würde. In einer beispielhaften Ausführungsform kann die Ermittlungseinheit 626 ferner so konfiguriert sein, dass sie eine lokale VLAN-ID in dem entkapselten Datenblock auf die abgefragte lokale VLAN-ID abändert, wenn sich die abgefragte lokale VLAN-ID von der in dem Datenblock enthaltenen unterscheidet.
-
6C zeigt ein Blockschaltbild einer Vorrichtung 630 zum Konfigurieren eines VLAN gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung. Die Vorrichtung 630 weist Komponenten bzw. Einheiten auf, die Prozessschritte und deren entsprechende Funktionen umsetzen können, wie in Verbindung mit 4C gezeigt. In einer beispielhaften Ausführungsform der vorliegenden Erfindung kann die Vorrichtung 630 eine Ermittlungseinheit 632, eine Hinzufügungseinheit 634 und eine Erstellungseinheit 636 aufweisen. Die Ermittlungseinheit 632 kann zum Beispiel so konfiguriert sein, dass sie als Reaktion auf das Erkennen, dass ein Host-Computer in ein erstes VLAN eintritt, das von einer ersten Vermittlungseinheit bedient wird, ein globales VLAN ermittelt, dem der Host-Computer zugehört. Beim Empfangen des Datenblocks von dem Host-Computer kann die erste Vermittlungseinheit den Datenblock über das globale VLAN an mindestens eine zweite Vermittlungseinheit übertragen, wobei die zweite Vermittlungseinheit ein oder mehrere zweite lokale VLANs bedient. Die Hinzufügungseinheit 634 kann so konfiguriert sein, dass sie zu einem Verzeichnisserver eine Adresse der ersten Vermittlungseinheit hinzufügt, die einer auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht. Die Erstellungseinheit 636 kann so konfiguriert sein, dass sie einen Zuordnungseintrag an der ersten Vermittlungseinheit erstellt, wenn der Host-Computer der erste Host-Computer in dem ersten lokalen VLAN ist, wodurch eine Entsprechungsbeziehung zwischen einer Kennung des ersten lokalen VLAN und einer Kennung des globalen VLAN gespeichert wird. In einer anderen beispielhaften Ausführungsform der vorliegenden Erfindung kann die Vorrichtung 630 ferner eine Entferneinheit und eine Löscheinheit (nicht gezeigt) enthalten. Die Entferneinheit kann zum Beispiel so konfiguriert sein, dass sie als Reaktion auf das Erkennen, dass der Host-Computer das erste lokale VLAN verlässt, die Adresse der ersten Vermittlungseinheit entfernt, die der auf dem Verzeichnisserver gespeicherten Adresse des Host-Computers entspricht. Die Löscheinheit kann so konfiguriert sein, dass sie den an der ersten Vermittlungseinheit gespeicherten Zuordnungseintrag löscht, der die Entsprechungsbeziehung zwischen der Kennung des ersten lokalen VLAN und der Kennung des globalen VLAN speichert, wenn der Host-Computer der letzte Host-Computer in dem ersten lokalen VLAN ist.
-
In beispielhaften Ausführungsformen der vorliegenden Erfindung können die erste Vorrichtung 610, die zweite Vorrichtung 620 und die dritte Vorrichtung 630 auf einer Zugangsvermittlungseinheit eingesetzt oder darin integriert werden, so dass die Vermittlungseinheit Arbeitsschritte einer übertragenden Vermittlungseinheit und einer empfangenden Vermittlungseinheit sowie das automatische Konfigurieren und Anwenden eines globalen VLAN durchführen kann. Es sollte klar sein, dass der Zweck des Vereinfachens der Konstruktion der Einheiten während des Einsetzens oder Integrierens der ersten Vorrichtung 610, der zweiten Vorrichtung 620 und der dritten Vorrichtung 630 durch Kombinieren einer oder mehrerer Einheiten und deren Funktionen erreicht werden kann. Optional können auch eine oder mehrere Einheiten und deren Funktionen in diesen Vorrichtungen aufgeteilt werden, um eine weitere Verfeinerung von Betriebsprozessen zu erreichen. In einer beispielhaften Ausführungsform kann eine gewöhnliche L3-Vermittlungseinheit die Vorrichtungen 610, 620 und 630 aufweisen, um ihre bestehenden Funktionsmodule zu erweitern. Eine ToR kann als übertragende Vermittlungseinheit den Verzeichnisserver abfragen, um eine IP-Adresse einer fernen ToR zu erhalten, und einen L2-Datenblock mit einem äußeren IP-Paket kapseln. Der Verzeichnisserver speichert eine Zuordnung für eine L2-MAC-Adresse, eine IP-Adresse einer fernen ToR und eine Adresse einer globalen Multicast-Gruppe, der die MAC-Adresse zugehört. Eine ToR kann als empfangende Vermittlungseinheit das empfangene IP-Paket entkapseln und einen inneren L2-Datenblock entsprechend an ein lokales L2-Netzwerk liefern. Diese miteinander verbundenen ToRs bilden ein zugrunde liegendes L3-Netzwerk, das Leitwegprotokolle wie Open Shortest Path First (OSPF) ausführen kann, um zwischen ToRs Verbindungsmöglichkeiten aufrechtzuerhalten und Mehrpfad-Leitweglenkung mit gleichen Kosten (ECMP, Equal-Cost Multipath Routing) zu erreichen, um die Systemleistung und den Lastenausgleich zu verbessern. Durch eine ToR unterstützte VMs oder Server/Host-Computer sind physisch gruppiert und können L2-Datenblöcke innerhalb derselben Gruppe vermitteln. Die MAC-Adressen von Netzwerkschnittstellenkarten (NICs) dieser VMs oder Server/Host-Computer können in dem Verzeichnisserver registriert werden. In einer beispielhaften Ausführungsform kann ein globales VLAN gemäß den MAC-Adressen festgelegt werden.
-
Die konkreten Ausführungsformen der entsprechenden Einheiten, Vorrichtungen und Einheiten weiter oben können sich auf die vorhergehenden ausführlichen Beschreibungen in Verbindung mit Prozessabläufen und konkreten Beispielen beziehen, und an dieser Stelle werden keine weiteren Einzelheiten aufgeführt.
-
Die oben beschriebenen Verfahren und Vorrichtungen zum Umsetzen und Konfigurieren eines VLAN können mit einem Computersystem umgesetzt werden. 7 zeigt ein Blockschaltbild eines beispielhaften Computersystems 700, das zum Umsetzen der Ausführungsformen der vorliegenden Erfindung anwendbar ist. Wie in 7 gezeigt ist, kann das Computersystem 700 Folgendes aufweisen: die Zentraleinheit (CPU, Central Process Unit) 701, den Direktzugriffsspeicher (RAM, Random Access Memory) 702, den Nur-Lese-Speicher (ROM, Read Only Memory) 703, den Systembus 704, die Festplattenlaufwerk-Steuereinheit 705, die Tastatur-Steuereinheit 706, die serielle Schnittstellen-Steuereinheit 707, die parallele Schnittstellen-Steuereinheit 708, die Anzeige-Steuereinheit 709, das Festplattenlaufwerk 710, die Tastatur 711, die seriellen Peripheriegeräte 712, die parallelen Peripheriegeräte 713 und die Anzeige 714. Von den oben genannten Einheiten sind die CPU 701, der RAM 702, der ROM 703, die Festplattenlaufwerk-Steuereinheit 705, die Tastatur-Steuereinheit 706, die serielle Schnittstellen-Steuereinheit 707, die parallele Schnittstellen-Steuereinheit 708 und die Anzeige-Steuereinheit 709 mit dem Systembus 704 verbunden. Das Festplattenlaufwerk 710 ist mit der Festplattenlaufwerk-Steuereinheit 705 verbunden. Die Tastatur 711 ist mit der Tastatur-Steuereinheit 706 verbunden. Die seriellen Peripheriegeräte 712 sind mit der seriellen Schnittstellen-Steuereinheit 707 verbunden. Die parallelen Peripheriegeräte 713 sind mit der parallelen Schnittstellen-Steuereinheit 708 verbunden. Und die Anzeige 714 ist mit der Anzeige-Steuereinheit 709 verbunden. Es sollte klar sein, dass die wie in 7 gezeigte Struktur lediglich als Beispiel dient und keinerlei Einschränkung für die vorliegende Erfindung darstellt. In einigen Fällen können beruhend auf konkreten Situationen einige Einheiten zu dem Computersystem 700 hinzugefügt oder daraus entfernt werden.
-
Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen der Systeme, Verfahren und Computerprogrammprodukte gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil eines Codes darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. Es sei auch angemerkt, dass in einigen alternativen Ausführungen die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden können. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder durch Kombinationen aus Spezial-Hardware und Computeranweisungen.
-
Obwohl die Verfahren, Vorrichtungen und Einheiten der vorliegenden Erfindung ausführlich in Verbindung mit konkreten Ausführungsformen beschrieben werden, ist die vorliegende Erfindung nicht darauf beschränkt. Ein Fachmann kann viele Änderungen, Ersetzungen und Abänderungen der vorliegenden Erfindung unter Anleitung der Lehren in Betracht ziehen, ohne von dem Gedanken und Umfang der vorliegenden Erfindung abzuweichen. Es sollte klar sein, dass sämtliche derartige Änderungen, Ersetzungen und Abänderungen noch immer in den Umfang der vorliegenden Erfindung fallen würden. Der Schutzumfang der vorliegenden Erfindung wird durch die beigefügten Ansprüche festgelegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- IEEE 802.1Q [0003]
- IEEE 802.1Q [0012]
- IEEE 802.1Q [0025]
- IEEE 802.1Q [0045]
- IEEE 802.1Q [0048]
- IEEE-802.1Q-Tag [0049]
- IEEE-802.1Q-VLAN [0049]
- IEEE-802.1Q-VLAN [0058]
- IEEE-802.1Q-Tag [0060]
- IEEE-802.1Q-Tag [0063]
- IEEE-802.1Q-VLAN [0063]
- IEEE-802.1Q-Tag [0069]
- IEEE-802.Q-VLAN-Tag [0069]
- IEEE-802.1Q-Tag [0070]
- IEEE 802.1Q-Norm [0071]