DE102012221041A1 - Ermöglichen des gleichzeitigen Vorhandenseins von Hostrechnern oder virtuellen Maschinen mit identischen Adressen - Google Patents

Ermöglichen des gleichzeitigen Vorhandenseins von Hostrechnern oder virtuellen Maschinen mit identischen Adressen Download PDF

Info

Publication number
DE102012221041A1
DE102012221041A1 DE102012221041A DE102012221041A DE102012221041A1 DE 102012221041 A1 DE102012221041 A1 DE 102012221041A1 DE 102012221041 A DE102012221041 A DE 102012221041A DE 102012221041 A DE102012221041 A DE 102012221041A DE 102012221041 A1 DE102012221041 A1 DE 102012221041A1
Authority
DE
Germany
Prior art keywords
identifier
pseudo
network
address
destination
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.)
Granted
Application number
DE102012221041A
Other languages
English (en)
Other versions
DE102012221041B4 (de
Inventor
Kalapriya Kannan
Shivkumar Kalyanaraman
Vijay Mann
Anilkumar Vishnoi
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 DE102012221041A1 publication Critical patent/DE102012221041A1/de
Application granted granted Critical
Publication of DE102012221041B4 publication Critical patent/DE102012221041B4/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2596Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • H04L61/2535Multiple local networks, e.g. resolving potential IP address conflicts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Ein Verfahren, eine Vorrichtung und ein Herstellungsgegenstand, um das gleichzeitige Vorhandensein von mehreren Maschinen mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums zu ermöglichen. Das Verfahren beinhaltet das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk, welche zur Weiterleitung eines Pakets an eine Zielmaschine verwendet werden kann, das Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle am Rand eines Netzwerks, das Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders und das Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks und das Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten.

Description

  • Gebiet der Erfindung
  • Ausführungsformen der Erfindung betreffen allgemein die Informationstechnologie (IT) und insbesondere die Verwaltung von virtuellen Maschinen.
  • Allgemeiner Stand der Technik
  • Aufgrund der Fortschritte in der Virtualisierungstechnologie findet auf dem Gebiet des Enterprise Computing ein Technologieschub statt. Eine bedeutende Änderung dreht sich um die Mobilität von Software-Ressourcen. Ganze Softwarestapel in Form von virtuellen Maschinen können nun relativ bequem im laufenden Betrieb (d. h. ohne Ausfall- oder Stillstandzeit) oder offline (Sicherung und Wiederherstellung) an eine beliebige Stelle innerhalb desselben Rechenzentrums oder von einem Rechenzentrum in ein anderes Rechenzentrum bewegt werden. Dieses sich in der Entwicklung befindende Umfeld stellt Herausforderungen dar, wie zum Beispiel das gleichzeitige Vorhandensein von identischen oder überlappenden Adressen der Ebene 2 und der Ebene 3 innerhalb eines einzigen Netzwerks eines Rechenzentrums.
  • Die für die Konfiguration und die Installation von großen mehrschichtigen Anwendungen aufgewendeten IT-Kosten können für Unternehmen beträchtlich sein. Aufgrund von vielen verschiedenen Gründen sind beispielsweise mehrere Instanzen solcher Anwendungen erforderlich. In einem Unternehmen kann es mehrere Umgebungen (wie zum Beispiel Produktion, Bereitstellung und Prüfung, Entwicklung usw.) geben, die identische (oder verkleinerte) Instanzen dieser Anwendungen beherbergen müssen. Wenn Unternehmen wachsen und an verschiedenen geografischen Standorten Zukäufe getätigt werden, entstehen auch mehrere geografisch verteilte, aber untereinander verbundene Rechenzentren, die identische Anwendungen beherbergen müssen.
  • Bei beiden Szenarien könnten beträchtliche Kosten für die erneute Installation und die Neukonfiguration gespart werden, wenn dieselbe mehrschichtige Anwendungsinstanz (die mehrere virtuelle Maschinen aufweist) geklont oder repliziert werden könnte. Diese Praxis ist nicht weit verbreitet; da sich der Bereich der Internet-Protokoll-(IP-)Adressen für die ursprünglichen replizierten Instanzen möglicherweise komplett von dem neuen Netzwerk, in dem diese Replikas wiederhergestellt werden, unterscheidet. Auch können diese IP-Adressbereiche einander überlappen oder identisch sein. Aufgrund dessen müssen IP-Adressen für die wiederhergestellten Instanzen üblicherweise neu konfiguriert werden. Dieser Aufwand ist nicht unbedeutend, da diese IP-Adressen an verschiedenen Stellen (verschiedenen Betriebssystemen (OS), Middleware-Konfigurationsdateien usw.) in diesen virtuellen Maschinen eingebettet sind.
  • Ferner können unabhängig voneinander ausgelegte Rechenzentren überlappende Netzwerkadressbereiche haben und sind gegebenenfalls nicht als Teil eines einzelnen Kommunikationsnetzwerks untereinander verbunden. Auch muss ein Cloud-Anbieter seinen Kunden gestatten, ihre gesicherten Anwendungen in Form von virtuellen Maschinen (VMs) wiederherzustellen, ohne Änderung an seinem Netzwerk vorzunehmen. Diese verschiedenen Kunden-VMs können IP-Adressen haben, die nicht zu den IP-Adressen von den VMs anderer Kunden oder zu den IP-Adressen, die von dem Anbieter selbst verwendet werden, passen.
  • Folglich besteht ein Bedarf, das gleichzeitige Vorhandensein von Hostrechnern oder virtuellen Maschinen mit identischen Adressen zu ermöglichen.
  • Kurzdarstellung der Erfindung
  • In einer Erscheinungsform der vorliegenden Erfindung werden Verfahren bereitgestellt, die dazu dienen, das gleichzeitige Vorhandensein von Hostrechnern oder virtuellen Maschinen mit identischen Adressen zu ermöglichen. Ein beispielhaftes computerimplementiertes Verfahren, das dazu dient, das gleichzeitige Vorhandensein von mehreren Maschinen mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums zu ermöglichen, kann die Schritte des Zuweisens einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk, welche zur Weiterleitung eines Pakets an eine Zielmaschine verwendet werden kann, des Ersetzens einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle (Switch) am Rand eines Netzwerks, des Abrufens einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders und des Zurücksendens einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks und des Ersetzens der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten, beinhalten.
  • Eine weitere Erscheinungsform der Erfindung oder von Elementen der Erfindung kann in Form eines Herstellungsgegenstands realisiert werden, der rechnerlesbare Befehle physisch verkörpert, die, wenn sie ausgeführt werden, einen Rechner veranlassen, eine Vielzahl von Verfahrensschritten, die hier beschrieben werden, durchzuführen. Eine andere Erscheinungsform der Erfindung oder von Elementen der Erfindung kann in Form von einer Vorrichtung realisiert werden, die einen Speicher und mindestens einen Prozessor enthält, der mit dem Speicher verbunden und in der Lage ist, genannte Schritte des Verfahrens durchzuführen. Darüber hinaus kann eine weitere Erscheinungsform der Erfindung oder von Elementen der Erfindung in Form von Mitteln zur Durchführung der hier beschriebenen Verfahrensschritte oder von Elementen hiervon realisiert werden; wobei die Mittel (i) (ein) Hardware-Modul(e), (ii) (ein) Software-Modul(e) oder (iii) eine Kombination aus Hardware- und Software-Modulen beinhalten können; wobei beliebige von (i) bis (iii) die hier dargelegten ganz bestimmten Verfahren implementieren und die Software-Module in einem physisch greifbaren rechnerlesbaren Speichermedium (oder in mehreren solcher Medien) gespeichert sind.
  • Diese und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung gehen aus der folgenden ausführlichen Beschreibung von anschaulichen Ausführungsformen der Erfindung hervor, die in Verbindung mit den beigefügten Zeichnungen gelesen werden soll.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockschaltbild, das eine beispielhafte Ausführungsform gemäß einer Erscheinungsform der Erfindung zeigt;
  • 2 ist ein Diagramm, das Code zum Erstellen einer mapping_table (Abgleichungstabelle) und einer ip_table (IP-Tabelle) an der Netzwerksteuereinheit (die auch als Identitäts-Steuereinheit bezeichnet wird) gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 3 ist ein Diagramm, das Code für die Regel 1 zum Umleiten von Anforderungen des Adressenauflösungsprotokolls (address resolution protocol (ARP)) gemäß einer Ausführungsform der Erfindung zeigt;
  • 4 ist ein Diagramm, das Code für die Regel 2 zum Ersetzen der Pseudo-Medienzugriffssteuerung (pseudo media access control (PMAC)) durch eine tatsächliche Medienzugriffssteuerung (actual media access control (AMAC)) für ankommende Internet-Protokoll-(IP-)Pakete gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 5 ist ein Diagramm, das Code zum Auffinden der Ziel-PMAC aus Tabellen der Steuereinheit und zum Antworten auf eine Anforderung des Adressenauflösungsprotokolls (ARP) gemäß einer Ausführungsform der Erfindung zeigt;
  • 6 ist ein Flussdiagramm, das die automatische Zuweisung von Kennungen eines privaten Netzwerks (private network identifier (PNID)) und das Erkennen von Duplikaten gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 7 ist ein Flussdiagramm, das Verfahren zeigt, die dazu dienen, das gleichzeitige Vorhandensein von mehreren Maschinen mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums gemäß einer Ausführungsform der Erfindung zu ermöglichen; und
  • 8 ist ein Systemdiagramm eines beispielhaften Rechnersystems, an dem mindestens eine Ausführungsform der Erfindung realisiert werden kann.
  • Ausführliche Beschreibung von Ausführungsformen
  • Wie hier beschrieben wird, beinhaltet eine Erscheinungsform der vorliegenden Erfindung ein Kommunikationsnetzwerk eines Rechenzentrums, das dazu dient, das gleichzeitige Vorhandensein von Hostrechnern oder virtuellen Maschinen (VMs) mit identischen Adressen (zum Beispiel Adressen der Ebene 2 und der Ebene 3) zu ermöglichen. In typischen Rechenzentren entsprechen Adressen der Ebene 2 Medienzugriffssteuerungs-(MAC-)Adressen, und Adressen der Ebene 3 entsprechen Internet-Protocol-(IP-)Adressen. Mindestens eine Ausführungsform der Erfindung schließt das Verwenden von Pseudoadressen, um jeden Hostrechner oder jede VM eindeutig zu kennzeichnen, sowie das Einsetzen von Verfahren zur Auflösung von Adressen und zum Erkennen von Duplikaten ein, um das gleichzeitige Vorhandensein von Hostrechnern und VMs mit identischen Adressen zu ermöglichen. Beispielsweise kann eine zentralisierte programmierbare Steuerebene (wie sie zum Beispiel von OpenFlow angeboten wird) vorteilhaft genutzt werden und das Konzept und die Implementierung des Schemas können in Mininet dargestellt werden.
  • Wie hier ausführlich dargelegt wird, beinhaltet eine Erscheinungsform der Erfindung das Unterstützen von identischen Adressen durch die Verwendung von Adressenauflösungsprotokollen (ARPs) zur eindeutigen Kennzeichnung von Hostrechnern, indem die Quellen-Medienzugriffssteuerung (MAC) in einer ARP-Anforderung durch eine eindeutige Kennung (Pseudo-MAC (PMAC) oder Pseudo-IP) ersetzt wird, die für die Leitwegwahl verwendet werden kann. Eine Ausführungsform der Erfindung beinhaltet auch das Erstellen und Verwalten einer Abgleichungstabelle an einer Netzwerksteuereinheit, die Pseudo-Kennungen mit den Kennungen eines privaten Netzwerks (PNIDs) abgleicht, zu dem ein bestimmter Hostrechner oder eine bestimmte VM gehört. Dadurch lassen sich mehrere private Netzwerke oder Überlagerungen innerhalb eines einzigen Netzwerks einfacher erzeugen, und jedes private Netzwerk enthält Maschinen oder Hostrechner mit eindeutigen Adressen. Überdies beinhaltet eine Erscheinungsform der Erfindung das Verwenden von Schemata zum Entdecken von Duplikaten, um Kennungen eines privaten Netzwerks automatisch zuzuweisen und um Duplikate in einem privaten Netzwerk zu erkennen.
  • Das Zuweisen einer Pseudo-MAC-Adresse zu jeder physischen Maschine (PM) oder VM kann wie folgt durchgeführt werden. Eine Open-Flow-Steuereinheit weist jeder PM oder VM eine 48-Bit-PMAC zu. Die Zwischenspeicherung der Zuordnungen von PMAC zu AMAC erfolgt ganz oben im Serverrack (top-of-rack (TOR)) für alle Hostrechner/VMs, die sich unterhalb dieses TOR befinden. Die Leitwegwahl findet auf der Grundlage der PMACs statt, und der Ziel-Top-of-Rack-(TOR-)/vswitch ersetzt PMAC durch AMAC, bevor er das Paket zustellt (Umschreiben des Kopfbereichs).
  • 1 ist ein Blockschaltbild, das eine beispielhafte Ausführungsform gemäß einer Erscheinungsform der Erfindung zeigt. Auf dem Wege der Veranschaulichung zeigt 1 eine Abgleichungstabelle 102 einer Steuereinheit, eine Steuereinheit 104, ein POD (0) 106, ein POD (1) 108, eine Kernvermittlungsstelle (core switch) 110 und eine Kernvermittlungsstelle 112.
  • 1 gibt einen Überblick über die Architektur von mindestens einer Erscheinungsform der Erfindung, die eine zentralisierte programmierbare Steuerebene (wie sie zum Beispiel von OpenFlow zur Verfügung gestellt wird) vorteilhaft nutzt. Die Architektur enthält eine Netzwerksteuereinheit, die mit allen Vermittlungsstellen verbunden ist. Die Netzwerksteuereinheit bildet die zentralisierte Steuerebene des Netzwerks und handhabt die meisten Entscheidungen in Bezug auf die Leitwegwahl und die Weiterleitung von Paketen (die Datenebene). Die Netzwerksteuereinheiten sind in der Lage, auf allen Vermittlungsstellen Regeln zu installieren, anhand derer ankommende Pakete geändert oder weitergeleitet werden können.
  • In einer Ausführungsform der Erfindung kann eine Identitäts-Netzwerksteuereinheit als Python-Anwendung implementiert werden, die auf einer NOX-OpenFlow-Steuereinheit ausgeführt wird. NOX ist eine ereignisgesteuerte Steuereinheit, und darauf laufende Anwendungen können sich für Rückrufe eintragen lassen, um über verschiedene Ereignisse benachrichtigt zu werden. Die Identitäts-Netzwerksteuereinheit trägt Rückrufe für drei Arten von Ereignissen ein: Ankunft eines Pakets (packet in), eine Vermittlungsstelle, die sich mit dem Netzwerk verbindet (datapath join) und eine Vermittlungsstelle, die sich vom Netzwerk trennt (datapath leave).
  • Mindestens eine Erscheinungsform der Erfindung beinhaltet auch das eindeutige Kennzeichnen eines Hostrechners oder einer VM. Zur eindeutigen Kennzeichnung eines jeden Hostrechners und einer jeden VM in dem Netzwerk kann eine Pseudo-MAC verwendet werden. Eine OpenFlow-Steuereinheit weist jedem Hostrechner oder jeder virtuellen Maschine eine 48-Bit-Pseudo-MAC (PMAC) der folgenden Form zu:

    pod.position.port.vmid

    pod (16 Bit) ist hierbei die Kennung eines POD, an der sich die TOR-Vermittlungsstelle befindet; position (8 Bit) kennzeichnet die Position der TOR-Vermittlungsstelle innerhalb des POD; port (8 Bit) ist die Anschlussnummer auf der TOR-Vermittlungsstelle, mit der der physische Hostrechner direkt verbunden ist; und vmid (16 Bit) ist die Kennung der VM auf einem bestimmten Hostrechner. Dieses PMAC-Format bettet die hierarchische Netzwerktopologie in die Pseudo-Kennung ein und wird für die gesamte Leitwegwahl verwendet.
  • Die Steuereinheit verwaltet eine Zuordnung der PMAC einer VM (oder eines Hostrechners) zu deren beziehungsweise dessen tatsächlicher MAC-Adresse (AMAC), deren/dessen IP-Adresse sowie der Kennung eines privaten Netzwerks (private network identifier (PNID)), zu der ein bestimmter Hostrechner oder eine bestimmte VM gehört. VMs oder Hostrechner in demselben privaten Netzwerk können frei kommunizieren, und eine Erscheinungsform der Erfindung stellt sicher, dass es in einem privaten Netzwerk keine doppelt vorhandenen Adressen gibt.
  • Externe Hostrechner (außerhalb des Rechenzentrums überall im Internet) können auch mit Hostrechnern in diesem privaten Netzwerk kommunizieren, indem sie einen Gateway-Dienst verwenden, der eine öffentlich bekannte, eindeutige IP-Adresse hat und so konfiguriert ist, dass er mit einem bestimmten privaten Netzwerk kommuniziert. Das Gateway kann einer der Hostrechner oder eine der VMs in dem privaten Netzwerk selbst sein, und ihm ist zusätzlich zu seiner ursprünglichen Adresse noch eine eindeutige öffentliche IP zugewiesen. Standardmäßig werden alle Hostrechner und VMs mit einer PNID von 0 versehen, die das ganze Netzwerk des Rechenzentrums darstellt. Nachfolgenden Hostrechnern mit doppelt vorhandenen Adressen werden PNIDs in aufsteigender Reihenfolge zugewiesen.
  • Darüber hinaus beinhaltet mindestens eine Ausführungsform der Erfindung das Aufzeichnen einer Anwendungs-ID zusätzlich zu einer PNID. Anwendungs-IDs kennzeichnen einen Satz von VMs oder physischen Maschinen (PMs), die gemeinsam repliziert (gesichert und wiederhergestellt) werden und eine einzige mehrschichtige Anwendung darstellen. Auch kann eine Anwendungs-ID verwendet werden, um VMs zu kennzeichnen, die als Sicherungen für andere VMs in anderen replizierten Clustern agieren können, welche dieselbe Komponente der mehrschichtigen Anwendung darstellen und im Falle eines Fehlers zur Funktionsübernahme (Failover) verwendet werden können. Es kann davon ausgegangen werden, dass die Komponenten entweder zustandslos sind oder nach der Replizierung synchron gehalten werden.
  • Eine Erscheinungsform der Erfindung kann auch das Hinzufügen von neuen Hostrechnern und das Zuweisen von Adressen beinhalten. PMACs können beim Systemstart statisch zugewiesen werden oder die Topologie kann mit Hilfe eines Protokolls, wie zum Beispiel des Label Distribution Protocol (LDP), erlernt werden. Da sich die gesamte Netzwerktopologie (die von Vermittlungsstellen des Netzwerks und deren Verbindung bestimmt wird) in Netzwerken von Rechenzentren von Unternehmen gegebenenfalls selten ändert, beinhaltet eine Ausführungsform der Erfindung das Verwenden von statischen Zuweisungen. Eine Zuordnung von entsprechenden PMACs für jeden Anschluss bei allen Vermittlungsstellen wird auf der Grundlage der bekannten Netzwerktopologie vorgenommen. Die letzten 16 Bit in der PMAC (die die Kennung der VM darstellt) werden verschiedenen VMs oder Hostrechnern auf der Grundlage ihrer bekannten tatsächlichen MAC-Adressen in aufsteigender Reihenfolge statisch zugewiesen. Die Zuordnung zwischen PMAC, AMAC, IP, PNID, switchID und der Anschlussnummer der Vermittlungsstelle (switch port number) wird statisch festgelegt und beim Systemstart von der Identitäts-Netzwerksteuereinheit aus einer Konfigurationsdatei gelesen. Der Python-Code für das Erstellen der Tabellen der Steuereinheit ist in 2 angegeben. Folglich ist 2 ein Diagramm, das den Code 202 zum Erstellen einer mapping_table (Abgleichungstabelle) und einer ip_table (IP-Tabelle) an der Netzwerksteuereinheit (die auch als Identitäts-Steuereinheit bezeichnet wird) gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • Wie hier ausführlich dargelegt wird, beinhaltet eine Erscheinungsform der Erfindung die ARP-Auflösung. Immer, wenn sich eine Netzwerk-Vermittlungsstelle mit dem Netzwerk verbindet, wird eine Identitäts-Netzwerksteuereinheit benachrichtigt. Die Identitäts-Netzwerksteuereinheit wiederum schlägt in ihrer Abgleichungstabelle nach, um die Liste mit allen Hostrechnern und VMs zu finden, die mit dieser Vermittlungsstelle verbunden sein sollen. Für jeden dieser Hostrechner beziehungsweise für jede dieser VMs erzeugt die Identitäts-Netzwerksteuereinheit dann zwei Regeln und installiert sie auf der Vermittlungsstelle:
    • • Regel 1: Diese Regel leitet alle ARP-Anforderungen (einschließlich unaufgeforderter ARP-Anforderungen), die die Vermittlungsstelle an all ihren Eingangsanschlüssen von den angeschlossenen Hostrechnern oder VMs erhält, an die Steuereinheit um. Da sich die PMACs für alle Anschlüsse einer Vermittlungsstelle in der Abgleichungstabelle der Steuereinheit befinden, gibt die Steuereinheit in dieser Regel auch an, dass die Ethernet-(AMAC-)Quellenadresse des ARP-Pakets durch die Quellen-PMAC ersetzt werden muss. Der Python-Code für das Setzen dieser Regel ist in 3 angegeben.
    • • Regel 2: Diese Regel ersetzt die Ziel-PMAC in einem IP-Paket durch die Ziel-AMAC bei allen ankommenden Paketen, so dass die Ziel-AMAC von dem Ziel-Hostrechner oder der Ziel-VM angenommen werden kann. Der Python-Code für das Setzen dieser Regel ist in 4 angegeben.
  • 3 ist ein Diagramm, das Code 302 für die Regel 1 zum Umleiten von Anforderungen des Adressenauflösungsprotokolls (ARP) gemäß einer Ausführungsform der Erfindung zeigt. 4 ist ein Diagramm, das Code 402 für die Regel 2 zum Ersetzen einer PMAC durch eine AMAC für ankommende IP-Pakete gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • Neben der vorstehend ausführlich beschriebenen Regel 1 und Regel 2 können mehrere andere Regeln, die erforderlich sind, um ein Paket auf der Grundlage von PMACs weiterzuleiten, auf der Vermittlungsstelle installiert werden. Sobald diese Regeln auf den Vermittlungsstellen installiert sind, wird die Anforderung jedes Mal, wenn eine ARP-Rundsendeanforderung von einem Hostrechner oder einer VM erzeugt wird, von der Vermittlungsstelle an die Steuereinheit umgeleitet, nachdem die Quellen-AMAC im Ethernet-Kopfbereich durch die Quellen-PMAC ersetzt worden ist. Nach dem Empfang einer ARP-Anforderung prüft die Steuereinheit die PMAC der Quelle in dem Ethernet-Kopfbereich. Die Steuereinheit schlägt dann in ihrer Abgleichungstabelle nach, ruft die PNID ab, die der Quellen-PMAC aus ihrer Abgleichungstabelle entspricht, und wählt auf der Grundlage einer Kombination aus der Ziel-IP-Adresse und der Quellen-PNID die Ziel-PMAC. Dies löst das Problem des Ermittelns des richtigen Ziels bei Vorhandensein von doppelten IP-Adressen. Die Steuereinheit erzeugt dann eine ARP-Antwort mit der richtigen Ziel-PMAC. Das Code-Fragment für diese Schritte ist in 5 gezeigt. Folglich ist 5 ein Diagramm, das Code 502 zum Auffinden der Ziel-PMAC aus Tabellen der Steuereinheit und zum Antworten auf eine ARP-Anforderung gemäß einer Ausführungsform der Erfindung zeigt.
  • Anschauliches Beispiel: (in Verbindung mit Tabelle I – Abgleichungstabelle an der Steuereinheit) Tabelle I
    VM PMAC AMAC IP PNID Switch ID Port
    VM1 PMAC-1 AMAC-1 IP-1 0 2 1
    VM2 PMAC-2 AMAC-2 IP-2 0 2 2
    VM3 PMAC-3 AMAC-3 IP-3 0 2 3
    VM1' PMAC-4 AMAC-1 IP-1 1 5 1
    VM2' PMAC-5 AMAC-2 IP-2 1 5 2
    VM3' PMAC-6 AMAC-3 IP-3 1 5 3
  • Zum Zweck der Veranschaulichung betrachten wir ein Beispiel, in dem es drei VMs (VM1, VM2 und VM3) in dem Netzwerk gibt, wobei jede VM ihre eigenen eindeutigen IPs (IP-1, IP-2 und IP-3), eindeutigen PMACs (PMAC-1, PMAC-2, PMAC-3) beziehungsweise AMACs (AMAC-1, AMAC-2, AMAC-3) hat. Nehmen wir weiter an, dass diese drei VMs mit einer Vermittlungsstelle mit der Switch ID (Vermittlungsstellenkennung) = 2 verbunden und an den Anschlüssen (Ports) mit der Nummer 1, 2 beziehungsweise 3 angeschlossen sind. Diese VMs erhalten eine standardmäßige PNID von 0. Diese VMs können beispielsweise eine typische dreischichtige Anwendung mit einer Web-Schicht, einer Anwendungsschicht und einer Datenbank-(DB-)Schicht ausführen.
  • Nehmen wir an, dass jede dieser VMs kopiert wird, um eine weitere Instanz dieser mehrschichtigen Anwendung zu erzeugen. Diese drei replizierten VMs (VM1', VM2' und VM3') haben dieselben IP- und MAC-Adressen wie die ursprünglichen drei VMs. Sie haben jedoch ihre eigenen eindeutigen PMACs (PMAC-4, PMAC-5, PMAC-6). Nehmen wir überdies an, dass diese drei replizierten VMs mit einer Vermittlungsstelle mit der ID = 5 verbunden und an den Anschlüssen mit der Nummer 1, 2 beziehungsweise 3 angeschlossen sind. Die Steuereinheit hätte diesen replizierten VMs eine PNID von 1 zugewiesen. An diesem Punkt hat die Abgleichungstabelle an der Steuereinheit dasselbe Erscheinungsbild wie in Tabelle I (die Spalte 1 mit Namen von VMs wurde nur zum Zweck der Veranschaulichung hinzugefügt). Die ersten drei Zeilen stellen die Einträge für die ursprünglichen drei VMs dar, während die letzten drei Zeilen die Einträge für die replizierten VMs darstellen.
  • Wenn VM1' versucht, erstmalig ein Paket an VM2' zu senden, wird eine ARP-Anforderung (der Form ”wer hat IP-2”) erzeugt und der Vermittlungsstelle mit der ID = 5 zugestellt. Die Vermittlungsstelle leitet die ARP-Anforderung an die Steuereinheit um, nachdem sie die Quellenadresse im Ethernet-Kopfbereich (AMAC-1) durch die Quellen-PMAC (PMAC-4) (gemäß der vorstehenden Regel 1) ersetzt hat. Die Steuereinheit empfängt die ARP-Anforderung und prüft die Quellenadresse im Ethernet-Kopfbereich. Da die Quellenadresse PMAC-4 lautet, schlägt die Steuereinheit in der Abgleichungstabelle nach und stellt fest, dass die PNID den Wert 1 hat. Die Steuereinheit fragt ihre Abgleichungstabelle ab, um die PMAC-Adresse herauszufinden, die IP-2 und PNID = 1 entspricht. Da es sich bei PMAC-5 um die PMAC-Adresse handelt, die IP-2 und PNID = 1 entspricht, reagiert die Steuereinheit mit einer ARP-Antwort, die die Zieladresse in der ARP-Nutzlast als PMAC-5 angibt. VM1' erzeugt dann ein Paket mit PMAC-5 als Ethernet-Zieladresse. Die Regeln für die Leitwegwahl sorgen dafür, dass gewährleistet ist, dass das Paket die richtige Vermittlungsstelle (mit SwitchID = 5) erreicht. Die Vermittlungsstelle 5 empfängt das Paket und ersetzt die Ethernet-Zieladresse wieder durch AMAC-1 (gemäß der vorstehenden Regel 2) und gibt es an den richtigen Anschluss (Anschluss 2) aus.
  • Die Hostrechner oder die VMs, die identische AMACs haben, können nicht mit derselben Rand- oder TOR-Vermittlungsstelle verbunden werden (weil die Ausgaben der TOR-Vermittlungsstelle auf der Grundlage von AMAC erfolgen). Dies stellt für VMs, die nur eine doppelte IP-Adresse, aber eine eindeutige AMAC haben, kein Problem dar. Darüber hinaus kann eine Ausführungsform der Erfindung das Verwenden eines OpenFlow-fähigen vswitch in dem Hypervisor und das Installieren aller OpenFlow-Regeln in dem vswitch anstelle der TOR-Vermittlungsstelle beinhalten. Dadurch wird diese Einschränkung auf die Ebene des Hypervisors oder des Hostrechners übertragen (auf einem Hostrechner gibt es keine VMs mit doppelten AMACs). Dieses Verfahren kann jedoch nicht für nicht virtualisierte Hostrechner eingesetzt werden und erfordert, dass die Hostrechner einen OpenFlow-fähigen vswitch unterstützen.
  • Wie hier ebenfalls ausführlich dargelegt wird, beinhaltet eine Erscheinungsform der Erfindung die Handhabung von unaufgeforderten ARPs. Ein unaufgefordertes ARP ist eine ARP-Ankündigung, die von dem Betriebssystem auf einem Hostrechner zum Zeitpunkt des Urladens (Bootens) gesendet wird und die IP- und die MAC-Adresse des Senders enthält und zur Aktualisierung der von anderen Hostrechnern vorgenommenen Zuordnung einer Hardware-Adresse verwendet wird, wenn sich die IP-Adresse des Senders oder MAC-Adresse geändert hat. Eine Identitäts-Netzwerksteuereinheit handhabt unaufgeforderte ARPs aus beispielsweise den folgenden Gründen. Zum Beispiel muss die Steuereinheit gewährleisten, dass ein unaufgefordertes ARP nicht als Rundsendung an alle Hostrechner gesendet wird, da es aufgrund des Vorhandenseins von doppelten IP-Adressen viele ARP-Antworten erzeugen würde. Identitäts-Kommunikationsnetzwerke sollten das unaufgeforderte ARP im Rundsendeverfahren nur an Hostrechner senden, die sich in demselben privaten Netzwerk befinden, so dass die Hostrechner ihren ARP-Cachespeicher aktualisieren können. Dies gewährleistet, dass alle Hostrechner in einem privaten Netzwerk keine veralteten ARP-Einträge haben. Es hilft auch beim Erkennen von doppelten IP-Adressen in einem privaten Netzwerk.
  • Überdies kann ein unaufgefordertes ARP auch verwendet werden, um doppelte IP-Adressen zu erkennen, wenn solche Adressen erstmalig in dem Netzwerk erscheinen, indem PMACs und Kennungen eines privaten Netzwerks automatisch zugewiesen werden.
  • Unaufgeforderte ARPs (wie alle ARPs) werden an eine Identitäts-Netzwerksteuereinheit umgeleitet (gemäß der Regel 1), wobei die Quellen-AMAC durch die Quellen-PMAC im Kopfbereich des Ethernet-Pakets ersetzt wird. Die Identitäts-Netzwerksteuereinheit erkennt ein unaufgefordertes ARP wie folgt. Ein ARP-Paket wird als ein unaufgefordertes ARP erkannt, wenn:
    • • das ARP-Paket eine Anforderung ist, wobei die Quellen-IP-Adresse gleich der Ziel-IP-Adresse ist und die Ziel-MAC auf 0 gesetzt ist.
    • • das ARP-Paket eine Antwort ist, wobei sowohl die Quellen-IP-Adresse als auch die MAC-Adresse gleich der Ziel-IP-Adresse und der MAC-Adresse sind.
  • Man beachte, dass das Ethernet-Paket in beiden Fällen ein Rundsende-Paket ist (das heißt, die Ethernet-Zieladresse ist ff:ff:ff:ff:ff:ff).
  • Nachdem ein ARP-Paket als ein unaufgefordertes ARP-Paket erkannt worden ist, stellt die Steuereinheit das private Netzwerk fest, zu dem der Hostrechner oder die VM gehört, der beziehungsweise die das unaufgeforderte ARP sendet. Dies kann mit Hilfe der Quellen-PMAC im Ethernet-Kopfbereich des unaufgeforderten ARP-Pakets und mittels Nachschlagen in der Abgleichungstabelle erkannt werden.
  • Die Identitäts-Netzwerksteuereinheit erzeugt einen Satz von unaufgeforderten Einzeladressierungs-ARP-Nachrichten für alle Hostrechner oder VMs, die dasselbe private Netzwerk (PNID) gemeinsam benutzen. Während der Erzeugung dieser unaufgeforderten ARP-Nachrichten kann die Steuereinheit mehrere Regeln verwenden. Beispielsweise kann die Steuereinheit die Quellen-PMAC in dem Ethernet-Paket für eine Quellenadresse und die Ziel-PMAC in dem Ethernet-Paket für eine Zieladresse verwenden, so dass das Paket mit Hilfe von PMACs weitergeleitet werden kann.
  • Die Steuereinheit verwendet auch die Quellen-PMAC als die Quellen-MAC-Adresse in dem ARP-Paket (Nutzlast des Ethernet-Pakets), setzt die Ziel-MAC auf 0 und verwendet die Quellen-IP sowohl für die Quellen- als auch die Ziel-IP-Adresse. Dies trägt dazu bei, sicherzustellen, dass die empfangenden Hostrechner die Nachricht als unaufgeforderte ARP-Nachricht erkennen und ihren ARP-Cachespeicher mit der entsprechenden Quellen-PMAC und deren IP aktualisieren. Wenn die IP in dem privaten Netzwerk ein Duplikat ist, können die empfangenden Hostrechner dem Sender (demjenigen, der das unaufgeforderte ARP ursprünglich gesendet hat) mit einer ARP-Antwort antworten und dabei den Konflikt melden.
  • Eine Erscheinungsform der Erfindung kann überdies auch das automatische Erkennen von Duplikaten und die automatische Zuweisung von PNIDs beinhalten. Wie hier beschrieben wird, installiert die Identitäts-Steuereinheit eine Regel Regel 1' auf allen Rand-Vermittlungsstellen (TORs), die alle ARP-Anforderungen an die Steuereinheit umleiten (ohne die Quellen-MAC durch die Quellen-PMAC zu ersetzen (wie in der Regel 1 hier beschrieben wurde). Ein Flussdiagramm, das das Verfahren erklärt, ist in 6 gezeigt.
  • 6 ist ein Flussdiagramm, das die automatische Zuweisung von PNIDs und das automatische Erkennen von Duplikaten gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. Auf dem Wege der Veranschaulichung zeigt 6 eine Hostrechner-Komponente 602, eine Vermittlungsstellen-Komponente 608 und ein Steuereinheit-Modul 618. Eine Anwendung, die in Verbindung mit der Hostrechner-Komponente 602 ausgeführt wird, erzeugt im Schritt 604 ein unaufgefordertes ARP, und der Hostrechner sendet im Schritt 606 ein Paket mit AMAC.
  • Der Schritt 610, der in Verbindung mit der Vermittlungsstellen-Komponente 608 durchgeführt wird, beinhaltet das Empfangen von Paketen, und der Schritt 612 beinhaltet das Feststellen auf der Grundlage der AMAC, ob der Hostrechner bekannt ist. Wenn ja (das heißt, der Hostrechner ist bekannt), beinhaltet der Schritt 614 das Umschreiben des Kopfbereichs und das Ersetzen der Quellen-MAC-Adresse durch die PMAC (ether.src = PMAC). Wenn nicht (das heißt, der Hostrechner ist nicht bekannt), wird der Kopfbereich nicht geändert. In beiden Fällen beinhaltet der Schritt 616 das Umleiten des unaufgeforderten ARP an die Netzwerksteuereinheit.
  • Darüber hinaus empfängt das Steuereinheit-Modul 618 das ARP-Paket im Schritt 620. Der Schritt 622 beinhaltet das Entnehmen der Quellen-MAC-Adresse (ethernet.src) aus dem Kopfbereich des ARP-Pakets. Der Schritt 624 beinhaltet das Feststellen, ob sich die Quellen-MAC-Adresse in einer Abgleichungstabelle befindet (das heißt, mit PMACs indexiert ist). Wenn ja, wird der Hostrechner im Schritt 626 als vorhandener Hostrechner erkannt, da die MAC-Adresse im Kopfbereich des Pakets mit einer vorhandenen PMAC übereinstimmt (die zuvor zugewiesen werden musste, und die Vermittlungsstelle muss die Quellen-MAC im Schritt 614 durch die PMAC ersetzt haben). Wenn nicht, beinhaltet der Schritt 628 das Senden einer ARP-Rundsendenachricht zu Prüfzwecken (ARP probe broadcast). Ferner beinhaltet der Schritt 630 das Warten auf eine ARP-Antwort. Der Schritt 632 beinhaltet das Berechnen einer Kennung eines privaten Netzwerks (PNID), und der Schritt 634 beinhaltet das Erzeugen einer PMAC. Darüber hinaus beinhaltet der Schritt 636 das Installieren der Regel 1 (wie hier beschrieben wird); das heißt, der Umleitung einer ARP mit Umschreiben des Kopfbereichs auf der Vermittlungsstelle für diesen Hostrechner.
  • Wie in 6 ausführlich gezeigt ist, senden die Hostrechner/VMs zum Zeitpunkt des Urladens ein unaufgefordertes ARP (dies kann auch manuell erfolgen, wenn die VM aus einem mit einem Prüfpunkt versehenen Zustand wiederhergestellt wird), während neue Hostrechner oder VMs zum Netzwerk hinzugefügt werden. Das unaufgeforderte ARP ist eine Rundsendenachricht und wird aufgrund der vorinstallierten Regel Regel 1' an die Steuereinheit umgeleitet. Bei neuen Hostrechnern wird die Regel 1' verwendet, um alle ARP-Anforderungen an die Steuereinheit weiterzuleiten, ohne die Quellen-MAC-Adresse im Kopfbereich zu ersetzen. Regel 1 wird später für alte Hostrechner verwendet (nachdem ihnen eine PMAC zugewiesen worden ist) und sie beinhaltet das Ersetzen der Quellen-MAC-Adresse durch PMAC. Die Beschreibung hier betrifft neue Hostrechner (und die Regel 1' sollte angewendet werden). Nach dem Empfang eines unaufgeforderten ARP ruft die Steuereinheit die Quellenadresse aus dem Ethernet-Kopfbereich ab (bei der es sich um eine AMAC handelt) und prüft ihre Abgleichungstabelle (bei der es sich um eine Hash-Tabelle mit PMAC-Index handelt), wie in 5 angegeben ist. Bei neuen Hostrechnern wird die AMAC nicht in der Abgleichungstabelle gefunden und an dieser Stelle sendet die Steuereinheit ein Rundsende-ARP-Prüfsignal an alle Hostrechner, wobei sie die IP-Adresse und die AMAC-Adresse des Senders angibt, der das unaufgeforderte ARP gesendet hat.
  • Die Steuereinheit wartet für die Dauer eines vorher festgelegten Zeitintervalls (zum Beispiel zwei Minuten) auf Antworten. Wenn keine ARP-Antworten empfangen werden, geht die Steuereinheit davon aus, dass es keine Duplikate gibt, und weist dem neuen Hostrechner eine Kennung 0 eines privaten Netzwerks (PNID) zu. Wenn jedoch eine oder mehr ARP-Antworten empfangen werden, ruft die Steuereinheit die Ethernet-Quellenadresse (die gemäß der Regel 1 durch die Quellen-PMAC hätte ersetzt werden sollen) aus allen Antworten ab und erkennt die PNIDs, die allen PMACs entsprechen. Die Steuereinheit erzeugt dann eine eindeutige PNID (monoton aufsteigend) für den neuen Hostrechner.
  • Nachdem die PNID für einen neuen Hostrechner festgelegt worden ist, weist die Steuereinheit auf der Grundlage der Kennung (ID) der Vermittlungsstelle und der Nummer des Eingangsanschlusses der Vermittlungsstelle, an dem die unaufgeforderte ARP erzeugt worden ist, die entsprechende PMAC zu. Die Steuereinheit fügt diesen neuen Eintrag mit Angaben zu PMAC, AMAC, PNID, Vermittlungsstellen-ID und den Anschluss auch zu ihrer Abgleichungstabelle hinzu.
  • Bei Verwendung dieser zeitlichen Reihenfolge können Hostrechner oder VMs, die eine gesicherte/wiederhergestellte Anwendung aufweisen, nacheinander zu dem Netzwerk hinzugefügt werden und ihnen allen wird dieselbe PNID zugewiesen (wobei davon ausgegangen wird, dass alle von ihnen entweder über eine doppelte IP oder eine eindeutige IP verfügen).
  • Sobald die Steuereinheit einen neuen Eintrag zu ihrer Abgleichungstabelle hinzufügt (entweder für eine neue IP-Adresse oder eine für eine doppelte IP-Adresse), installiert sie die Regel 1 auf der Vermittlungsstelle für den neuen Hostrechner. Diese Regel leitet alle zukünftigen ARP-Anforderungen von diesem Hostrechner an die Steuereinheit um, nachdem der Kopfbereich entsprechend umgeschrieben worden ist (die Quellen-AMAC wird durch die Quellen-PMAC ersetzt). Wenn die Anzahl der Regeln auf einer Vermittlungsstelle nicht von Belang ist, kann diese Regel auf allen Rand-Vermittlungsstellen installiert werden. Dies hilft in Fällen, in denen ein vorhandener Hostrechner oder eine vorhandene VM von einer Vermittlungsstelle getrennt und zu einer anderen Vermittlungsstelle in demselben Netzwerk verbracht wird. Da die Regel AMAC durch PMAC im Ethernet-Kopfbereich eines unaufgeforderten ARP ersetzt, kann die Steuereinheit die PMAC in ihrer Abgleichungstabelle finden und führt keine Erkennung von Duplikaten durch.
  • 7 ist ein Flussdiagramm, das Verfahren zeigt, die dazu dienen, das gleichzeitige Vorhandensein von mehreren Maschinen (zum Beispiel mehreren Hostrechnern und/oder mehreren virtuellen Maschinen) mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums gemäß einer Ausführungsform der vorliegenden Erfindung zu ermöglichen. Der Schritt 702 beinhaltet das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine (zum Beispiel einem Hostrechner oder einer virtuellen Maschine) in dem Netzwerk, die zur Weiterleitung eines Pakets an eine Zielmaschine (Hostrechner oder virtuelle Maschine) verwendet werden kann.
  • Der Schritt 704 beinhaltet das Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle am Rand eines Netzwerks und das Umleiten der Anforderung an eine Netzwerksteuereinheit. Das Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders kann das Ersetzen der Adresse durch Verwendung einer Top-of-Rack-(TOR)-Vermittlungsstelle oder durch Verwendung einer virtuellen Vermittlungsstelle beinhalten.
  • Der Schritt 706 beinhaltet das Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle an der Steuereinheit auf der Grundlage der Pseudokennung des Senders und das Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks. Das Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders kann das Abrufen der Kennung des privaten Netzwerks durch Verwendung einer Netzwerksteuereinheit beinhalten. Außerdem kann das Zurücksenden einer Pseudokennung für die Zieladresse kann das Zurücksenden einer Pseudokennung für die Zieladresse beinhalten, für die gerade eine Medienzugriffssteuerungsadresse angefordert wird.
  • Der Schritt 708 beinhaltet das Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten. In mindestens einer Ausführungsform der Erfindung erfolgt die Weiterleitung auf der Grundlage von Pseudokennungen. Darüber hinaus kann das Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung das Ersetzen der Kennung durch Verwendung einer Top-of-Rack-(TOR-)Zielvermittlungsstelle oder durch Verwendung einer virtuellen Vermittlungsstelle beinhalten.
  • Die in 7 gezeigten Verfahren können auch das Umleiten der Anforderung des Adressenauflösungsprotokolls an eine Netzwerksteuereinheit beinhalten.
  • Wie hier ebenfalls ausführlich beschrieben wird, kann in mindestens einer Ausführungsform der Erfindung das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine beinhalten, in welche entweder die Kennung eines Rechenzentrums, die Kennung eines POD, die Kennung einer Vermittlungsstelle, die Nummer eines Anschlusses, die Kennung einer virtuellen Maschine, die Kennung einer Replikation oder die Kennung einer Anwendung eingebettet ist. Eine Erscheinungsform der Erfindung kann darüber hinaus das Feststellen der Kennung einer Replik aus der Pseudokennung des Senders und das Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung der Replik beinhalten. Das Feststellen der Kennung einer Replik aus der Pseudokennung des Senders kann das Feststellen der Kennung der Replik über eine Steuereinheit beinhalten und das Zurücksenden einer Pseudokennung für die Zieladresse kann das Zurücksenden der Pseudokennung für die Zieladresse beinhalten, für die gerade eine Medienzugriffssteuerungsadresse angefordert wird. Ferner kann eine Erscheinungsform der Erfindung im Falle eines Fehlers oder Ausfalls das Verwenden der Kennung einer Anwendung in der Pseudokennung zum Abgleichen mit einer ähnlichen Anwendungskomponente in einem anderen replizierten Cluster und das Zurücksenden der Pseudokennung für die ähnliche Anwendungskomponente beinhalten, so dass Pakete statt an die fehlerhafte beziehungsweise ausgefallene Komponente an eine aktive Anwendungskomponente umgeleitet werden können.
  • Die in 7 gezeigten Verfahren können auch, wie hier beschrieben wird, das Bereitstellen eines Systems beinhalten, wobei das System bestimmte Software-Module enthält, wobei jedes der bestimmten Software-Module auf einem physisch greifbaren, rechnerlesbaren, beschreibbaren Speichermedium verkörpert ist. Alle Module (oder eine beliebige Teilgruppe der Module) können sich zum Beispiel auf demselben Medium befinden, oder jedes Modul kann sich auf einem anderen Medium befinden. Die Module können beliebige oder alle der in den Figuren gezeigten Komponenten beinhalten. In einer Erscheinungsform der Erfindung beinhalten die Module ein Steuereinheit-Modul, das zum Beispiel auf einem Hardware-Prozessor ausgeführt werden kann. Die Verfahrensschritte können dann mit Hilfe der bestimmten Software-Module des vorstehend beschriebenen Systems durchgeführt werden, welche auf einem Hardware-Prozessor ausgeführt werden. Überdies kann ein Rechnerprogrammprodukt ein physisch greifbares, rechnerlesbares, beschreibbares Speichermedium mit Code beinhalten, der so ausgelegt ist, dass er zur Durchführung von mindestens einem hier beschriebenen Verfahrensschritt, einschließlich der Bereitstellung des Systems mit den bestimmten Software-Modulen, ausgeführt wird.
  • Darüber hinaus können die in 7 gezeigten Verfahren mittels eines Rechnerprogrammprodukts realisiert werden, das von einem Rechner nutzbaren Programmcode enthalten kann, der in einem rechnerlesbaren Speichermedium in einem Datenverarbeitungssystem gespeichert ist, und wobei der von einem Rechner nutzbare Programmcode über ein Netzwerk von einem fernen Datenverarbeitungssystem heruntergeladen worden ist. In einer Erscheinungsform der Erfindung kann das Rechnerprogrammprodukt auch von einem Rechner nutzbaren Programmcode enthalten, der in einem rechnerlesbaren Speichermedium in einem Server-Datenverarbeitungssystem gespeichert ist, und wobei der von einem Rechner nutzbare Programmcode über ein Netzwerk auf ein fernes Datenverarbeitungssystem zur Verwendung in einem rechnerlesbaren Speichermedium mit dem fernen System heruntergeladen wird.
  • Wie der Fachmann verstehen wird, können Erscheinungsformen der vorliegenden Erfindung als System, Verfahren oder Rechnerprogrammprodukt realisiert werden. Folglich können Erscheinungsformen der vorliegenden Erfindung die Form einer ganz in Hardware realisierten Ausführungsform, einer ganz in Software realisierten Ausführungsform (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardware-Erscheinungsformen kombiniert, die hier alle allgemein als ”Schaltung”, ”Modul” oder ”System” bezeichnet werden können. Überdies können Erscheinungsformen der vorliegenden Erfindung die Form eines Rechnerprogrammprodukts annehmen, das auf einem rechnerlesbaren Datenträger verkörpert ist, auf dem rechnerlesbarer Programmcode verkörpert ist.
  • Eine Erscheinungsform der Erfindung oder von Elementen der Erfindung kann in Form von einer Vorrichtung realisiert werden, die einen Speicher und mindestens einen Prozessor enthält, der mit dem Speicher verbunden und in der Lage ist, beispielhafte Schritte des Verfahrens durchzuführen.
  • Ferner kann eine Erscheinungsform der vorliegenden Erfindung von Software Gebrauch machen, die auf einem Universalrechner oder einem Arbeitsplatzrechner ausgeführt wird. Bezug nehmend auf 8 könnte eine solche Realisierung zum Beispiel einen Prozessor 802, einen Speicher 804 und eine Eingabe-/Ausgabe-Schnittstelle verwenden, die zum Beispiel von einem Bildschirm 806 und einer Tastatur 808 gebildet wird. Der Begriff ”Prozessor” in der hier verwendeten Weise soll jede beliebige Verarbeitungseinheit, wie zum Beispiel eine Verarbeitungseinheit, die eine Zentraleinheit (central processing unit (CPU)) und/oder andere Formen von Verarbeitungsschaltungen enthält, beinhalten. Außerdem kann sich der Begriff ”Prozessor” auf mehr als einen einzelnen Prozessor beziehen. Der Begriff ””Speicher” soll einen Speicher beinhalten, der zu einem Prozessor oder einer CPU gehört, wie zum Beispiel einen Direktzugriffsspeicher (random access memory (RAM)), einen Nur-Lese-Speicher (read only memory (ROM)), eine feste Speichereinheit (zum Beispiel ein Festplattenlaufwerk), eine auswechselbare Speichereinheit (zum Beispiel eine Diskette), einen Flash-Speicher und dergleichen. Überdies soll die Bezeichnung ”Eingabe-/Ausgabe-Schnittstelle” in der hier verwendeten Weise zum Beispiel einen Mechanismus zur Eingabe von Daten in die Verarbeitungseinheit (zum Beispiel eine Maus) und einen Mechanismus zur Bereitstellung von Ergebnissen in Verbindung mit der Verarbeitungseinheit (zum Beispiel einen Drucker) beinhalten. Der Prozessor 802, der Speicher 804 und die Eingabe-/Ausgabe-Schnittstelle wie zum Beispiel der Bildschirm 806 und die Tastatur 808 können beispielsweise über den Bus 810 als Teil einer Datenverarbeitungseinheit 812 miteinander verbunden werden. Geeignete Verbindungen, zum Beispiel über den Bus 810, können auch einer Netzwerk-Schnittstelle 814 wie zum Beispiel einer Netzwerkkarte, die zum Bilden einer Schnittstelle zu einem Rechnernetzwerk zur Verfügung gestellt werden kann, und einer Datenträger-Schnittstelle 816 wie zum Beispiel einem Disketten- oder einem CD-ROM-Laufwerk, das zum Bilden einer Schnittstelle zu einem Datenträger 818 zur Verfügung gestellt werden kann, bereitgestellt werden.
  • Folglich kann Rechner-Software, die Befehle oder Code zur Durchführung der methodischen Vorgehensweisen der Erfindung, die hier beschrieben wird, enthält, in einer zugehörigen Speichereinheit (zum Beispiel einem ROM, einem Festspeicher oder einem auswechselbaren Speicher) gespeichert werden und, wenn sie zur Nutzung bereitsteht, teilweise oder ganz (beispielsweise in das RAM) geladen und von einer CPU ausgeführt werden. Eine solche Software könnte Firmware, residente Software, Mikrocode und dergleichen beinhalten, ist jedoch nicht darauf beschränkt.
  • Ein Datenverarbeitungssystem, das zur Speicherung und/oder Ausführung von Programmcode geeignet ist, enthält mindestens einen Prozessor 802, der über einen Systembus 810 direkt oder indirekt mit Speicherelementen 804 verbunden ist. Die Speicherelemente können einen lokalen Speicher, der während der tatsächlichen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cachespeicher beinhalten, die eine zeitweilige Speicherung von mindestens einem Teil des Programmcodes ermöglichen, um die Häufigkeit zu verringern, mit der Code während der Ausführung aus dem Massenspeicher abgerufen werden muss.
  • Eingabe-/Ausgabe- oder E/A-Einheiten (einschließlich Tastaturen 808, Bildschirme 806, Zeigeeinheiten und dergleichen, jedoch nicht darauf beschränkt) können entweder direkt (wie zum Beispiel über den Bus 810) oder über zwischengeschaltete E/A-Steuereinheiten (die aus Gründen der Übersichtlichkeit weggelassen wurden) mit dem System verbunden werden.
  • Netzwerkadapter wie zum Beispiel die Netzwerk-Schnittstelle 814 können ebenfalls mit dem System verbunden werden, damit das Datenverarbeitungssystem mit anderen Datenverarbeitungssystemen oder fernen Druckern oder Speichereinheiten über zwischengeschaltete private oder öffentliche Netzwerke verbunden werden kann. Modems, ein Kabelmodem und Ethernet-Karten sind nur einige der aktuell verfügbaren Arten von Netzwerkadaptern.
  • In der hier verwendeten Weise, die Ansprüche eingeschlossen, beinhaltet ein ”Server” ein physisches Datenverarbeitungssystem (zum Beispiel das in 8 gezeigte System 812), das ein Server-Programm ausführt. Es versteht sich, dass ein solcher physischer Server einen Bildschirm und eine Tastatur beinhalten kann oder auch nicht beinhalten kann.
  • Wie erwähnt wurde, können Erscheinungsformen der vorliegenden Erfindung die Form eines Rechnerprogrammprodukts annehmen, das auf einem rechnerlesbaren Datenträger verkörpert ist, auf dem rechnerlesbarer Programmcode verkörpert ist. Auch kann jede beliebige Kombination aus einem oder mehreren rechnerlesbaren Datenträgern verwendet werden. Der rechnerlesbare Datenträger kann ein rechnerlesbarer Signaldatenträger oder ein rechnerlesbares Speichermedium sein. Ein rechnerlesbares Speichermedium kann zum Beispiel ein(e) elektronische(s), magnetische(s), optische(s), elektromagnetische(s), Infrarot- oder Halbleitersystem, -vorrichtung oder -einheit oder jede beliebige geeignete Kombination des Vorstehenden, ohne darauf beschränkt zu sein, sein. Zu konkreteren Beispielen (wobei die Liste keinen Anspruch auf Vollständigkeit erhebt) für das rechnerlesbare Speichermedium gehören etwa: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine portable Computer-Diskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disk-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede beliebige geeignete Kombination des Vorstehenden. Im Rahmen dieses Schriftstücks kann ein rechnerlesbares Speichermedium jedes physisch greifbare Medium sein, das ein Programm zur Verwendung durch ein Befehlsausführungssystem, eine Befehlsausführungsvorrichtung oder -einheit oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit enthalten oder speichern kann.
  • Ein rechnerlesbarer Signaldatenträger kann ein übertragenes Datensignal mit einem darin verkörperten rechnerlesbaren Programmcode, beispielsweise in einem Basisband oder als Teil einer Trägerwelle, enthalten. Solch ein übertragenes Signal kann eine beliebige einer Vielzahl von Formen einschließlich elektromagnetischer, optischer Formen oder jede beliebige geeignete Kombination dieser Formen, ohne darauf beschränkt zu sein, annehmen. Bei einem rechnerlesbaren Signaldatenträger kann es sich um jeden beliebigen rechnerlesbaren Datenträger handeln, der kein rechnerlesbares Speichermedium ist und der ein Programm zur Verwendung durch oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit übertragen, weiterleiten oder transportieren kann.
  • Auf einem rechnerlesbaren Datenträger enthaltener Programmcode kann mittels eines geeigneten Mediums einschließlich drahtloser Kabel, drahtgebundener Kabel, Lichtwellenleiterkabel, Hochfrequenz (HF) usw., ohne auf diese beschränkt zu sein, oder mittels jeder beliebigen geeigneten Kombination des Vorstehenden übertragen werden.
  • Rechner-Programmcode zur Durchführung von Operationen für Erscheinungsformen der vorliegenden Erfindung kann in jeder beliebigen Kombination aus mindestens einer Programmiersprache einschließlich einer objektorientierten Programmiersprache, wie beispielsweise Java, Smalltalk, C++ oder dergleichen, und herkömmlichen prozeduralen Programmiersprachen wie beispielsweise der Programmiersprache ”C” oder ähnlichen Programmiersprachen geschrieben sein. Die Ausführung des Programmcodes kann vollständig auf dem Rechner des Benutzers, teilweise auf dem Rechner des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Rechner des Benutzers und teilweise auf einem fernen Rechner oder vollständig auf dem fernen Rechner oder Server erfolgen. Im letzteren Szenario kann der ferne Rechner mit dem Rechner des Benutzers über jede beliebige Art eines Netzwerks einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzes (WAN) verbunden sein, oder die Verbindung kann zu einem externen Rechner (zum Beispiel über das Internet mittels eines Internet-Diensteanbieters) hergestellt werden.
  • Erscheinungsformen der vorliegenden Erfindung werden hier mit Bezug auf Darstellungen in Flussdiagrammen und/oder Blockschaltbilder beziehungsweise Blockdiagramme von Verfahren, Vorrichtungen (Systemen) und Rechnerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Darstellungen in den Flussdiagrammen und/oder der Blockschaltbilder sowie Kombinationen aus Blöcken in den Darstellungen der Flussdiagramme und/oder den Blockschaltbildern mittels Rechnerprogrammbefehlen realisiert werden können. Diese Rechnerprogrammbefehle können einem Prozessor eines Universalrechners, eines Rechners für spezielle Anwendungen oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine so zu erzeugen, dass die Befehle, die über den Prozessor des Rechners oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel zur Realisierung der Funktionen/Vorgänge erzeugen, die in dem Block oder den Blöcken der Flussdiagramme und/oder der Blockschaltbilder angegeben sind.
  • Diese Rechnerprogrammbefehle können auch auf einem rechnerlesbaren Datenträger gespeichert sein, der einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass die auf dem rechnerlesbaren Datenträger gespeicherten Befehle einen Herstellungsgegenstand erzeugen, der Befehle enthält, die die Funktion/den Vorgang realisieren, welche beziehungsweise welcher in dem Block oder den Blöcken der Flussdiagramme und/oder der Blockschaltbilder angegeben ist. Eine Erscheinungsform der Erfindung enthält folglich einen Herstellungsgegenstand, der rechnerlesbare Befehle physisch verkörpert, die, wenn sie ausgeführt werden, einen Rechner veranlassen, eine Vielzahl von Verfahrensschritten, die hier beschrieben, durchzuführen.
  • Die Rechnerprogrammbefehle können auch auf einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder auf andere Einheiten geladen werden, um die Durchführung einer Reihe von Betriebsschritten auf dem Rechner, einer anderen programmierbaren Vorrichtung oder auf anderen Einheiten zu bewirken und dabei einen computerimplementierten Prozess so zu erzeugen, dass die Befehle, die auf dem Rechner oder einer anderen programmierbaren Vorrichtung ausgeführt werden, Prozesse zur Realisierung der Funktionen/Vorgänge ermöglichen, die in dem Block oder den Blöcken der Flussdiagramme und/oder der Blockschaltbilder angegeben sind.
  • Die Flussdiagramme und die Blockschaltbilder in den Figuren zeigen die Architektur, die Funktionalität und die Betriebsweise von möglichen Realisierungen von Systemen, Verfahren und Rechnerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in den Flussdiagrammen oder den Blockschaltbildern ein Modul, eine Komponente, ein Segment oder einen Codeabschnitt darstellen, der/die/das mindestens einen ausführbaren Befehl zur Realisierung der angegebenen logischen Funktion(en) aufweist. Es sei auch angemerkt, dass die in dem Block angegebenen Funktionen in manchen alternativen Ausführungsarten nicht in der in den Figuren angegebenen Reihenfolge auftreten können. In Abhängigkeit von der mit ihnen verbundenen Funktionalität können beispielsweise zwei Blöcke, die als aufeinanderfolgende Blöcke dargestellt sind, tatsächlich weitgehend gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden. Man wird auch feststellen, dass jeder Block der Blockschaltbilder und/oder der Darstellung in den Flussdiagrammen sowie Kombinationen aus Blöcken in den Blockschaltbildern und/oder der Darstellung in den Flussdiagrammen von Systemen, die auf Hardware für spezielle Anwendungen beruhen und die angegebenen Funktionen oder Vorgänge durchführen, oder von Kombinationen aus Hardware für spezielle Anwendungen und Rechnerbefehlen realisiert werden können.
  • Es sei angemerkt, dass beliebige der hier beschriebenen Verfahren einen zusätzlichen Schritt des Bereitstellens eines Systems beinhalten können, das bestimmte Software-Module aufweist, die auf einem rechnerlesbaren Speichermedium verkörpert sind; die Module können zum Beispiel beliebige oder alle der hier ausführlich beschriebenen Komponenten beinhalten. Die Verfahrensschritte können dann mit Hilfe der bestimmten Software-Module und/oder Teilmodule des vorstehend beschriebenen Systems durchgeführt werden, welche auf einem Hardware-Prozessor 802 ausgeführt werden. Überdies kann ein Rechnerprogrammprodukt ein rechnerlesbares Speichermedium mit Code beinhalten, der so ausgelegt ist, dass er zur Ausführung von mindestens einem hier beschriebenen Verfahrensschritt, einschließlich der Bereitstellung des Systems mit den bestimmten Software-Modulen, realisiert ist.
  • In jedem Fall sollte es sich verstehen, dass die hier veranschaulichten Komponenten in verschiedenen Formen von Hardware, Software oder Kombinationen aus Hardware und Software realisiert werden können; zum Beispiel als eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICS), Funktionsschaltungen, als entsprechend programmierter digitaler Universalrechner mit zugehörigem Speicher und dergleichen. In Anbetracht der Lehren der hier aufgezeigten Erfindung ist ein Fachmann auf dem verwandten Gebiet der Technik in der Lage, auch andere Realisierungen der Komponenten der Erfindung in Betracht zu ziehen.
  • Die hier verwendete Terminologie dient lediglich dazu, bestimmte Ausführungsformen zu beschreiben und ist nicht als Einschränkung der Erfindung zu verstehen. Die Singular-Formen ”ein”, ”eine” und ”der”, ”die”, ”das” sollen in der hier verwendeten Weise auch die Plural-Formen einschließen, sofern der Kontext nicht eindeutig etwas anderes angibt. Des Weiteren versteht es sich, dass die Begriffe ”weist auf” und/oder ”aufweisend”, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein von angegebenen Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen und/oder Komponenten bezeichnen, das Vorhandensein oder das Hinzufügen von einem anderen/weiteren Merkmal, einer ganzen Zahl, einem Schritt, einer Operation, einem Element, einer Komponente und/oder einer Gruppe der Vorgenannten jedoch nicht ausschließen.
  • Die entsprechenden Strukturen, Materialien, Vorgänge und Äquivalente aller Mittel oder Schritt-plus-Funktion-Elemente in den nachstehenden Ansprüchen sollen jedwede Struktur, jedwedes Material oder jedweden Vorgang zur Ausführung der Funktion in Kombination mit anderen beanspruchten Elementen, die im Einzelnen beansprucht werden, beinhalten. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Erläuterung, erhebt jedoch keinen Anspruch auf Vollständigkeit und ist auch nicht als auf die Erfindung in der offengelegten Form beschränkt zu verstehen. Viele Ab- und Veränderungen sind für den Fachmann erkennbar, ohne vom Umfang und Wesen der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und um anderen Fachleuten das Verständnis der Erfindung hinsichtlich verschiedener Ausführungsformen mit verschiedenen Änderungen, wie sie für die entsprechende vorgesehene Verwendung geeignet sind, zu ermöglichen.
  • Mindestens eine Erscheinungsform der vorliegenden Erfindung kann eine vorteilhafte Wirkung haben, wie zum Beispiel, dass sie es ermöglicht, dass Hostrechner oder virtuelle Maschinen mit identischen Adressen der Ebene 2 und der Ebene 3 in einem einzigen Netzwerk eines Rechenzentrums gleichzeitig vorhanden sind und eine Ost-West-Kommunikation zwischen Gleichgestellten (peers), die zu demselben replizierten Cluster gehören, eine Ost-West-Kommunikation mit Gleichgestellten in dem Hostrechner-Netzwerk sowie eine Nord-Süd-Kommunikation mit externen Clients zulassen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung erfolgten zum Zweck der Veranschaulichung, erheben jedoch keinen Anspruch auf Vollständigkeit und sind auch nicht als auf die offengelegten Ausführungsformen beschränkt zu verstehen. Viele Ab- und Veränderungen sind für den Fachmann erkennbar, ohne vom Umfang und Wesen der beschriebenen Ausführungsformen abzuweichen. Die hier verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder die technische Verbesserung gegenüber auf dem Markt angetroffener Technologien am besten zu erklären oder um anderen Fachleuten das Verständnis der hier offengelegten Ausführungsformen zu ermöglichen.

Claims (15)

  1. Verfahren, das dazu dient, das gleichzeitige Vorhandensein von mehreren Maschinen mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums zu ermöglichen, wobei das Verfahren aufweist: Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk, die zur Weiterleitung eines Pakets an eine Zielmaschine verwendet werden kann; Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle am Rand eines Netzwerks; Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders und Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks; und Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten; wobei mindestens einer der Schritte von einer Rechnereinheit durchgeführt wird.
  2. Verfahren nach Anspruch 1, wobei die mehreren Maschinen mindestens entweder mehrere Hostrechner oder mehrere virtuelle Maschinen aufweisen.
  3. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 2, wobei die Weiterleitung auf der Grundlage von Pseudokennungen erfolgt.
  4. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 3, wobei das Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders das Ersetzen der Adresse durch Verwendung einer Top-of-Rack-(TOR-)Vermittlungsstelle aufweist.
  5. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 4, wobei das Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders das Ersetzen der Adresse durch Verwendung einer virtuellen Vermittlungsstelle aufweist.
  6. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 5, das des Weiteren das Umleiten der Anforderung des Adressenauflösungsprotokolls an eine Netzwerksteuereinheit aufweist.
  7. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 6, wobei das Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders das Abrufen der Kennung des privaten Netzwerks durch Verwendung einer Netzwerksteuereinheit aufweist.
  8. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 7, wobei das Zurücksenden einer Pseudokennung für die Zieladresse das Zurücksenden einer Pseudokennung für die Zieladresse aufweist, für die gerade eine Medienzugriffssteuerungsadresse angefordert wird.
  9. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 8, wobei das Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung das Ersetzen der Kennung durch Verwendung einer Top-of-Rack-(TOR-)Zielvermittlungsstelle und/oder einer virtuellen Vermittlungsstelle aufweist.
  10. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 9, wobei das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk das Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine aufweist, in welche entweder die Kennung eines Rechenzentrums, die Kennung eines POD, die Kennung einer Vermittlungsstelle, die Nummer eines Anschlusses, die Kennung einer virtuellen Maschine, die Kennung einer Replikation oder die Kennung einer Anwendung eingebettet ist.
  11. Verfahren nach Anspruch 10, das des Weiteren das Feststellen der Kennung einer Replik aus der Pseudokennung des Senders und das Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung der Replik aufweist.
  12. Verfahren nach Anspruch 11, wobei das Feststellen der Kennung einer Replik aus der Pseudokennung des Senders das Feststellen der Kennung der Replik über eine Steuereinheit aufweist und/oder wobei das Zurücksenden einer Pseudokennung für die Zieladresse das Zurücksenden der Pseudokennung für die Zieladresse aufweist, für die gerade eine Medienzugriffssteuerungsadresse angefordert wird.
  13. Verfahren nach Anspruch 10, das des Weiteren im Falle eines Fehlers oder Ausfalls das Verwenden der Kennung einer Anwendung in der Pseudokennung zum Abgleich mit einer ähnlichen Anwendungskomponente in einem anderen replizierten Cluster und das Zurücksenden der Pseudokennung für die ähnliche Anwendungskomponente aufweist, so dass Pakete statt an die fehlerhafte beziehungsweise ausgefallene Komponente an eine aktive Anwendungskomponente umgeleitet werden können.
  14. Herstellungsgegenstand, der ein rechnerlesbares Speichermedium aufweist, auf dem rechnerlesbare Befehle physisch verkörpert sind, die, wenn sie ausgeführt werden, einen Rechner veranlassen, eine Vielzahl von Verfahrensschritten durchzuführen, aufweisend: Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk, die zur Weiterleitung eines Pakets an eine Zielmaschine verwendet werden kann; Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle am Rand eines Netzwerks; Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders und Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks; und Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten.
  15. System, das dazu dient, das gleichzeitige Vorhandensein von mehreren Maschinen mit identischen Adressen in einem einzigen Netzwerk eines Rechenzentrums zu ermöglichen, aufweisend: mindestens ein bestimmtes Software-Modul, wobei jedes bestimmte Software-Modul auf einem physisch greifbaren rechnerlesbaren Datenträger verkörpert ist; einen Speicher; und mindestens einen Prozessor, der mit dem Speicher verbunden ist und betrieben werden kann zum: Zuweisen einer eindeutigen Pseudokennung zu jeder Maschine in dem Netzwerk, die zur Weiterleitung eines Pakets an eine Zielmaschine verwendet werden kann; Ersetzen einer Medienzugriffssteuerungsadresse eines Senders in einer Anforderung eines Adressenauflösungsprotokolls durch eine Pseudokennung des Senders an einer Vermittlungsstelle am Rand eines Netzwerks; Abrufen einer Kennung eines privaten Netzwerks aus einer Abgleichungstabelle auf der Grundlage der Pseudokennung des Senders und Zurücksenden einer Pseudokennung für die Zieladresse auf der Grundlage der Kennung des privaten Netzwerks; und Ersetzen der Pseudokennung der Zieladresse durch eine tatsächliche Kennung an einer Zielvermittlungsstelle am Rand eines Netzwerks, um das Paket an die Zielmaschine weiterzuleiten.
DE102012221041.5A 2011-12-01 2012-11-19 Ermöglichen des gleichzeitigen Vorhandenseins von Hostrechnern oder virtuellen Maschinen mit identischen Adressen Active DE102012221041B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/308,912 US8738756B2 (en) 2011-12-01 2011-12-01 Enabling co-existence of hosts or virtual machines with identical addresses
US13/308,912 2011-12-01

Publications (2)

Publication Number Publication Date
DE102012221041A1 true DE102012221041A1 (de) 2013-06-06
DE102012221041B4 DE102012221041B4 (de) 2018-09-13

Family

ID=47560734

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012221041.5A Active DE102012221041B4 (de) 2011-12-01 2012-11-19 Ermöglichen des gleichzeitigen Vorhandenseins von Hostrechnern oder virtuellen Maschinen mit identischen Adressen

Country Status (3)

Country Link
US (2) US8738756B2 (de)
DE (1) DE102012221041B4 (de)
GB (1) GB2497196B (de)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US8966625B1 (en) 2011-05-24 2015-02-24 Palo Alto Networks, Inc. Identification of malware sites using unknown URL sites and newly registered DNS addresses
US8555388B1 (en) 2011-05-24 2013-10-08 Palo Alto Networks, Inc. Heuristic botnet detection
US9712599B2 (en) 2011-10-03 2017-07-18 International Business Machines Corporation Application peak load processing
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
WO2013078685A1 (zh) * 2011-12-02 2013-06-06 华为技术有限公司 发送消息的方法、接收消息方法、开放流控制器及第一开放流交换机
JP2015508950A (ja) * 2012-01-30 2015-03-23 日本電気株式会社 コントロール方法、コントロール装置、通信システムおよびプログラム
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US20140006585A1 (en) * 2012-06-29 2014-01-02 Futurewei Technologies, Inc. Providing Mobility in Overlay Networks
US9143452B2 (en) * 2012-08-29 2015-09-22 Nec Laboratories America, Inc. Data processing
US9063721B2 (en) 2012-09-14 2015-06-23 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9215239B1 (en) 2012-09-28 2015-12-15 Palo Alto Networks, Inc. Malware detection based on traffic analysis
US9104870B1 (en) * 2012-09-28 2015-08-11 Palo Alto Networks, Inc. Detecting malware
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
JP5949491B2 (ja) * 2012-11-20 2016-07-06 富士ゼロックス株式会社 情報処理装置及びプログラム
WO2014108175A1 (en) * 2013-01-09 2014-07-17 Telefonaktiebolaget L M Ericsson (Publ) A method of and a processing device handling a protocol address in a network
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
US9173158B2 (en) * 2013-03-08 2015-10-27 Tellabs Operations, Inc. Method and apparatus for improving LTE enhanced packet core architecture using openflow network controller
US9191271B2 (en) * 2013-04-29 2015-11-17 Telefonaktiebolaget L M Ericsson (Publ) Fast traffic recovery in VRRP based routers
US10019575B1 (en) 2013-07-30 2018-07-10 Palo Alto Networks, Inc. Evaluating malware in a virtual machine using copy-on-write
US9811665B1 (en) 2013-07-30 2017-11-07 Palo Alto Networks, Inc. Static and dynamic security analysis of apps for mobile devices
US9613210B1 (en) 2013-07-30 2017-04-04 Palo Alto Networks, Inc. Evaluating malware in a virtual machine using dynamic patching
US9806949B2 (en) * 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
US10063458B2 (en) * 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9977685B2 (en) * 2013-10-13 2018-05-22 Nicira, Inc. Configuration of logical router
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
US9686581B2 (en) 2013-11-07 2017-06-20 Cisco Technology, Inc. Second-screen TV bridge
US9519513B2 (en) 2013-12-03 2016-12-13 Vmware, Inc. Methods and apparatus to automatically configure monitoring of a virtual machine
US9413713B2 (en) 2013-12-05 2016-08-09 Cisco Technology, Inc. Detection of a misconfigured duplicate IP address in a distributed data center network fabric
CN108183976A (zh) * 2013-12-13 2018-06-19 华为技术有限公司 地址解析协议消息的处理方法和控制器、转发器
WO2015096863A1 (en) * 2013-12-24 2015-07-02 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for controlling a network
MX2016009583A (es) * 2014-01-23 2017-04-27 Huawei Tech Co Ltd Metodo, dispositivo de conmutacion y dispositivo de control de implementacion de arp.
US20160342439A1 (en) * 2014-02-07 2016-11-24 Telefonaktiebolaget Lm Ericsson (Publ) Virtualized Application Cluster
US10628193B2 (en) 2014-02-07 2020-04-21 Telefonaktiebolaget Lm Ericsson (Publ) Technique for operating a system controller of a virtualized application cluster
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US9678731B2 (en) 2014-02-26 2017-06-13 Vmware, Inc. Methods and apparatus to generate a customized application blueprint
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US9794186B2 (en) * 2014-03-27 2017-10-17 Nicira, Inc. Distributed network address translation for efficient cloud service access
US10567271B2 (en) * 2014-04-18 2020-02-18 Nokia Canada Inc. Topology-aware packet forwarding in a communication network
US10222935B2 (en) 2014-04-23 2019-03-05 Cisco Technology Inc. Treemap-type user interface
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US20150378763A1 (en) 2014-06-30 2015-12-31 Vmware, Inc. Methods and apparatus to manage monitoring agents
US9489516B1 (en) 2014-07-14 2016-11-08 Palo Alto Networks, Inc. Detection of malware using an instrumented virtual machine environment
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US9768980B2 (en) 2014-09-30 2017-09-19 Nicira, Inc. Virtual distributed bridging
US10020960B2 (en) 2014-09-30 2018-07-10 Nicira, Inc. Virtual distributed bridging
CN105591780B (zh) * 2014-10-24 2019-01-29 新华三技术有限公司 集群监测方法和设备
CN104410642B (zh) * 2014-12-11 2017-10-10 国家电网公司 基于arp协议的设备接入感知方法
US9805193B1 (en) 2014-12-18 2017-10-31 Palo Alto Networks, Inc. Collecting algorithmically generated domains
US9542554B1 (en) 2014-12-18 2017-01-10 Palo Alto Networks, Inc. Deduplicating malware
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9967906B2 (en) 2015-01-07 2018-05-08 Cisco Technology, Inc. Wireless roaming using a distributed store
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10348625B2 (en) 2015-06-30 2019-07-09 Nicira, Inc. Sharing common L2 segment in a virtual distributed router environment
US9985837B2 (en) * 2015-07-23 2018-05-29 Cisco Technology, Inc. Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
CN105227466B (zh) 2015-08-20 2019-01-11 北京百度网讯科技有限公司 通信处理方法和装置
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
US10326204B2 (en) 2016-09-07 2019-06-18 Cisco Technology, Inc. Switchable, oscillating near-field and far-field antenna
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
US10372520B2 (en) 2016-11-22 2019-08-06 Cisco Technology, Inc. Graphical user interface for visualizing a plurality of issues with an infrastructure
US10739943B2 (en) 2016-12-13 2020-08-11 Cisco Technology, Inc. Ordered list user interface
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10212071B2 (en) 2016-12-21 2019-02-19 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10397109B2 (en) * 2017-04-24 2019-08-27 International Business Machines Corporation Routing packets in overlapping address spaces
US10440723B2 (en) 2017-05-17 2019-10-08 Cisco Technology, Inc. Hierarchical channel assignment in wireless networks
US10555341B2 (en) 2017-07-11 2020-02-04 Cisco Technology, Inc. Wireless contention reduction
US10440031B2 (en) 2017-07-21 2019-10-08 Cisco Technology, Inc. Wireless network steering
US10735981B2 (en) 2017-10-10 2020-08-04 Cisco Technology, Inc. System and method for providing a layer 2 fast re-switch for a wireless controller
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10375667B2 (en) 2017-12-07 2019-08-06 Cisco Technology, Inc. Enhancing indoor positioning using RF multilateration and optical sensing
JP6954190B2 (ja) * 2018-03-12 2021-10-27 オムロン株式会社 制御システム、コントローラ、および制御方法
US10862867B2 (en) 2018-04-01 2020-12-08 Cisco Technology, Inc. Intelligent graphical user interface
US10673618B2 (en) 2018-06-08 2020-06-02 Cisco Technology, Inc. Provisioning network resources in a wireless network using a native blockchain platform
US10505718B1 (en) 2018-06-08 2019-12-10 Cisco Technology, Inc. Systems, devices, and techniques for registering user equipment (UE) in wireless networks using a native blockchain platform
US11010474B2 (en) 2018-06-29 2021-05-18 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US10956573B2 (en) 2018-06-29 2021-03-23 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US10873636B2 (en) 2018-07-09 2020-12-22 Cisco Technology, Inc. Session management in a forwarding plane
US10671462B2 (en) 2018-07-24 2020-06-02 Cisco Technology, Inc. System and method for message management across a network
US11252040B2 (en) 2018-07-31 2022-02-15 Cisco Technology, Inc. Advanced network tracing in the data plane
US10735209B2 (en) 2018-08-08 2020-08-04 Cisco Technology, Inc. Bitrate utilization feedback and control in 5G-NSA networks
US10623949B2 (en) 2018-08-08 2020-04-14 Cisco Technology, Inc. Network-initiated recovery from a text message delivery failure
US10284429B1 (en) 2018-08-08 2019-05-07 Cisco Technology, Inc. System and method for sharing subscriber resources in a network environment
US10949557B2 (en) 2018-08-20 2021-03-16 Cisco Technology, Inc. Blockchain-based auditing, instantiation and maintenance of 5G network slices
US10374749B1 (en) 2018-08-22 2019-08-06 Cisco Technology, Inc. Proactive interference avoidance for access points
US10567293B1 (en) 2018-08-23 2020-02-18 Cisco Technology, Inc. Mechanism to coordinate end to end quality of service between network nodes and service provider core
US10230605B1 (en) 2018-09-04 2019-03-12 Cisco Technology, Inc. Scalable distributed end-to-end performance delay measurement for segment routing policies
US10652152B2 (en) 2018-09-04 2020-05-12 Cisco Technology, Inc. Mobile core dynamic tunnel end-point processing
US10779188B2 (en) 2018-09-06 2020-09-15 Cisco Technology, Inc. Uplink bandwidth estimation over broadband cellular networks
US11558288B2 (en) 2018-09-21 2023-01-17 Cisco Technology, Inc. Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks
US10285155B1 (en) 2018-09-24 2019-05-07 Cisco Technology, Inc. Providing user equipment location information indication on user plane
US10601724B1 (en) 2018-11-01 2020-03-24 Cisco Technology, Inc. Scalable network slice based queuing using segment routing flexible algorithm
US11159343B2 (en) 2019-08-30 2021-10-26 Vmware, Inc. Configuring traffic optimization using distributed edge services
US11196765B2 (en) 2019-09-13 2021-12-07 Palo Alto Networks, Inc. Simulating user interactions for malware analysis
CN111404893B (zh) * 2020-03-06 2021-12-21 深信服科技股份有限公司 一种主机分类方法、装置、设备及计算机存储介质
US11616755B2 (en) 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
CN111988446B (zh) * 2020-08-26 2023-05-23 锐捷网络股份有限公司 一种报文处理方法、装置、电子设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6888837B1 (en) 1999-03-23 2005-05-03 Nortel Networks Limited Network address translation in a network having multiple overlapping address domains
US6681258B1 (en) 2000-05-31 2004-01-20 International Business Machines Corporation Facility for retrieving data from a network adapter having a shared address resolution table
US7047314B2 (en) 2000-12-28 2006-05-16 Oki Electric Industry Co., Ltd. Duplicate private address translating system and duplicate address network system
US7881208B1 (en) 2001-06-18 2011-02-01 Cisco Technology, Inc. Gateway load balancing protocol
US20050207447A1 (en) 2003-01-29 2005-09-22 Fujitsu Limited IP address duplication monitoring device, IP address duplication monitoring method and IP address duplication monitoring program
EP1732265B1 (de) 2004-03-03 2010-10-06 National Institute of Information and Communications Technology, Incorporated Administrative Agency Layer 2 switch netzwerksystem
US7480710B1 (en) 2004-07-13 2009-01-20 Cisco Technology, Inc. Resolving duplication of IP addresses in IP networks
GB2419703A (en) 2004-10-29 2006-05-03 Hewlett Packard Development Co Isolated virtual overlay infrastructures each having an interface to control interaction with others
JP5427181B2 (ja) 2007-10-03 2014-02-26 ヴァーテラ テクノロジー サーヴィシズ インコーポレイテッド 仮想化アプリケーション加速化インフラストラクチャ
US8224946B2 (en) 2009-04-24 2012-07-17 Rockstar Bidco, LP Method and apparatus for accommodating duplicate MAC addresses
US9497039B2 (en) 2009-05-28 2016-11-15 Microsoft Technology Licensing, Llc Agile data center network architecture
US8369333B2 (en) * 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
US8880468B2 (en) 2010-07-06 2014-11-04 Nicira, Inc. Secondary storage architecture for a network control system that utilizes a primary network information base

Also Published As

Publication number Publication date
US8738756B2 (en) 2014-05-27
GB2497196B (en) 2013-12-11
US20130145008A1 (en) 2013-06-06
DE102012221041B4 (de) 2018-09-13
US20130145002A1 (en) 2013-06-06
GB2497196A (en) 2013-06-05
US8745196B2 (en) 2014-06-03
GB201221310D0 (en) 2013-01-09

Similar Documents

Publication Publication Date Title
DE102012221041B4 (de) Ermöglichen des gleichzeitigen Vorhandenseins von Hostrechnern oder virtuellen Maschinen mit identischen Adressen
DE112013000775B4 (de) Verbinden von Rechenzentren für die Migration von virtuellen Maschinen
DE112016006080B4 (de) Verwaltung von virtuellen desktopinstanzenpools
US11010358B2 (en) Data migration method and system
DE102012220834B4 (de) Verfahren und Vorrichtung zum Umsetzen eines flexiblen virtuellen lokalen Netzwerks
DE112013004187B4 (de) Technologie für Netzwerk-Datenübertragung durch ein Computersystem unter Verwendung von mindestens zwei Datenübertragungsprotokollen
DE112019001481T5 (de) Selektives bereitstellen gegenseitiger transportschichtsicherheit mittels alternativer servernamen
DE112011100822B4 (de) Aufrechterhalten der Durchlässigkeit eines Datenübertragungspfades in einem Datenspeichernetzwerk
US10666508B2 (en) Unified software defined networking configuration management over multiple hosting environments
DE102013200031B4 (de) Verwaltung einer globalen Weiterleitungstabelle in einem verteilten Switch
DE112012003336B4 (de) Optimiertes Cachespeichern von Umsetzungseinträgen für virtuelle Funktionen
DE112013007296T5 (de) Bestimmung eines geeigneten Ziels für einen Initiator durch einen Prozessor auf Steuerungsebene
DE112013001904B4 (de) Paketvermittlung auf der Ebene 2 ohne Nachschlagetabelle für Ethernet-Switches
DE112012003342T5 (de) Dynamisches Anpassen und Begrenzen der Größe des Netzwerkadapterspeichers zur Speicherung von Umsetzungseinträgen für virtuelle Funktionen
DE112016001657T5 (de) Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke
DE112012002404B4 (de) Konfiguration und Management virtueller Netzwerke
DE112008003966T5 (de) Selektives Um-Abbilden einer Netzwerktopologie
DE112014002799B4 (de) Bereitstellen einer sicheren Kundendomäne in einer virtualisierten Mehr-Mieter-Umgebung
DE102021109547A1 (de) Sdwan overlay- routing- dienst
DE102021109227A1 (de) Weiterleitung von speicheroperationsanfragen an speichersysteme unter verwendung der zugrunde liegenden datenträgerkennungen
DE102016204030B4 (de) Controller, Maschine, System und Verfahren zum Migrieren von RDMA-Arbeitsspeicherzuordnungen einer virtuellen Maschine
DE112017005453T5 (de) Konfiguration verteilter Datenverarbeitungssysteme
DE102022126239A1 (de) Fernverwaltung eines switch-stacks
DE112014000433T5 (de) Kapseln eines virtuellen Servers in einer Hypervisor-Subpartition
DE112020004522T5 (de) Erhöhen der leistungsfähigkeit von frame-übergreifenden live-aktualisierungen

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: H04L0012723000

Ipc: H04L0012741000

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: H04L0012741000

Ipc: H04L0045740000