DE112012003776T5 - Migration logischer Partitionen mit zustandsbehafteten Auslagerungsdatenverbindungen während des laufenden Betriebs unter Verwendung der Kontextherauslösung und -einfügung - Google Patents

Migration logischer Partitionen mit zustandsbehafteten Auslagerungsdatenverbindungen während des laufenden Betriebs unter Verwendung der Kontextherauslösung und -einfügung Download PDF

Info

Publication number
DE112012003776T5
DE112012003776T5 DE112012003776.6T DE112012003776T DE112012003776T5 DE 112012003776 T5 DE112012003776 T5 DE 112012003776T5 DE 112012003776 T DE112012003776 T DE 112012003776T DE 112012003776 T5 DE112012003776 T5 DE 112012003776T5
Authority
DE
Germany
Prior art keywords
network adapter
virtual machine
state data
hardware state
hypervisor
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.)
Ceased
Application number
DE112012003776.6T
Other languages
English (en)
Inventor
Francisco Jesus Alanis
Omar Cardona
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 DE112012003776T5 publication Critical patent/DE112012003776T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

Es wird ein Ansatz bereitgestellt, bei dem ein Migrationsagent eine Nachricht empfängt, um eine virtuelle Maschine von einem ersten System auf ein zweites System zu migrieren. Das erste System löst in einem systemeigenen Format gespeicherte Hardwarezustandsdaten aus einem Speicherbereich heraus, der sich auf dem Netzwerkadapter des ersten Systems befindet. Die Hardwarezustandsdaten werden vom Netzwerkadapter des ersten Systems genutzt, um Datenpakete zu verarbeiten, die von der virtuellen Maschine erzeugt wurden. Als Nächstes wird die virtuelle Maschine auf das zweite System migriert, wozu das Kopieren der herausgelösten Hardwarezustandsdaten vom ersten System auf das zweite System gehört. Daraufhin konfiguriert das zweite System einen entsprechenden zweiten Netzwerkadapter, indem die kopierten Hardwarezustandsdaten auf einen Speicher geschrieben werden, der sich auf dem zweiten Netzwerkadapter befindet.

Description

  • HINTERGRUND
  • Die vorliegende Offenbarung betrifft das Migrieren einer virtuellen Maschine, die zustandsbehaftete Auslagerungsdatenpakete erzeugt, von einem ersten System auf ein zweites System. Insbesondere betrifft die vorliegende Offenbarung das Herauslösen von Hardwarezustandsdaten aus einem Quell-Netzwerkadapter und das Kopieren der herausgelösten Hardwarezustandsdaten auf ein Zielsystem während der Migration.
  • Moderne Netzwerkadapter für den Datenaustausch unterstützen „zustandsbehaftete” Formate für die Übertragung von Auslagerungsdaten, bei denen die Netzwerkadapter bestimmte Verarbeitungsaufgaben durchführen, um die Verarbeitungslast eines Host-Systems zu verringern. Zu typischen Auslagerungsformaten gehören Remote Direct Memory Access (RDMA), Internet Wide RDMA Protocol (iWARP), Infiniband (IB) und TCP Offload Engine (TOE). Zur Unterstützung der zustandsbehafteten Auslagerungsformate beschränken die Netzwerkadapter den „Zustand” einer beliebigen vorgegebenen Verbindung einer virtuellen Maschine auf den Kontext der Instanz des Netzwerkadapters, die der virtuellen Maschine entspricht. Zu zustandsbehafteten Auslagerungsinformationen, die diesen Kontext wiedergeben, gehören Hardwarezustandsdaten, die Hardwareeigenschaften auf der Grundlage virtueller Maschinen beschreiben, wie zum Beispiel Informationen, die Verbindungen, Registern, Speicherregistrierungen, und Strukturen entsprechen, die zur Kommunikation mit der virtuellen Maschine verwendet werden (Warteschlangenpaare, Abschlusswarteschlangen), und verschiedene andere Datenstrukturen wie zum Beispiel Adressauflösungsprotokoll-Tabellen (ARP-Tabellen) (ARP = Address Resolution Protocol).
  • KURZDARSTELLUNG
  • Gemäß einer Ausführungsform der vorliegenden Offenbarung wird ein Ansatz bereitgestellt, bei dem ein Migrationsagent eine Nachricht empfängt, um eine virtuelle Maschine von einem ersten System auf ein zweites System zu migrieren. Das erste System löst in einem systemeigenen Format gespeicherte Hardwarezustandsdaten aus einem Speicherbereich heraus, der sich auf dem Netzwerkadapter des ersten Systems befindet. Die Hardwarezustandsdaten werden vom Netzwerkadapter des ersten Systems genutzt, um Datenpakete zu verarbeiten, die von der virtuellen Maschine erzeugt wurden. Als Nächstes wird die virtuelle Maschine auf das zweite System migriert, wozu das Kopieren der herausgelösten Hardwarezustandsdaten vom ersten System auf das zweite System gehört. Daraufhin konfiguriert das zweite System einen entsprechenden zweiten Netzwerkadapter, indem die kopierten Hardwarezustandsdaten auf einen Speicher geschrieben werden, der sich auf dem zweiten Netzwerkadapter befindet.
  • Das Vorstehende ist eine Zusammenfassung und enthält daher notwendigerweise Vereinfachungen, Verallgemeinerungen und Auslassungen in Bezug auf Details; infolgedessen wird für den Fachmann klar sein, dass die Zusammenfassung lediglich zur Veranschaulichung dient und in keiner Weise eine Einschränkung darstellt. Weitere Aspekte, erfindungsgemäße Merkmale und Vorteile der vorliegenden Offenbarung, die ausschließlich in den Ansprüchen definiert sind, werden anhand der folgenden ausführlichen Beschreibung klar, die keinen einschränkenden Charakter trägt.
  • KURZBESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN IN DEN ZEICHNUNGEN
  • Die vorliegende Offenbarung wird leichter verständlich, und die zahlreichen Aufgaben, Merkmale und Vorteile der Erfindung werden dem Fachmann durch Bezugnahme auf die beigefügten Zeichnungen deutlich, wobei:
  • 1 ein beispielhaftes Schema ist, das einen Migrationsagenten zeigt, der eine logische Partition, zu der eine virtuelle Maschine und systemeigene Zustandsdaten der Netzwerkadapterhardware gehören, von einem Quellsystem auf ein Zielsystem migriert;
  • 2 ein beispielhaftes Schema ist, das eine grafische Darstellung des Ermittelns eines geeigneten Zielsystems zeigt;
  • 3 eine beispielhafte Kandidatentabelle ist, die Tabelleneinträge mit Host-Eigenschaften und entsprechenden Netzwerkadaptereigenschaften aufweist;
  • 4 ein beispielhafter Ablaufplan ist, der die Schritte zeigt, die beim Ermitteln eines Zielsystems und Migrieren einer virtuellen Maschine auf das Zielsystem unternommen werden;
  • 5 ein beispielhafter Ablaufplan ist, der die Schritte zeigt, die beim Ermitteln eines geeigneten Zielsystems unternommen werden, das einen kompatiblen Host und einen im Vergleich zu einem Quellsystem gleichwertigen Netzwerkadapter aufweist;
  • 6 ein beispielhafter Ablaufplan ist, der die Schritte zeigt, die in einem Host-System unternommen werden, das eine virtuelle Maschine zur Migration vorbereitet;
  • 7 ein beispielhafter Ablaufplan ist, der die Schritte zeigt, die beim Migrieren einer logischen Partition von einem Quellsystem auf ein Zielsystem unternommen werden;
  • 8 ein beispielhaftes Schema ist, das einen Netzwerkadapter zeigt, der Hardwarezustandsdaten von Modulen überwacht und speichert, die auf einer virtuellen Maschine ausgeführt werden;
  • 9 ein beispielhaftes Schema ist, das die Migration von Hardwarezustandsdaten von einem Quell-Netzwerkadapter auf einen Ziel-Netzwerkadapter zeigt;
  • 10 ein beispielhaftes Schema ist, das einen verteilten Richtliniendienst zeigt, der auf einen Speicherbereich mit Kandidatentabellen zugreift, um ein geeignetes Zielsystem zu erkennen;
  • 11 ein beispielhaftes Schema ist, das virtuelle Netzwerkabstraktionen zeigt, die einem physischen Netzwerkraum überlagert sind;
  • 12 ein beispielhaftes Blockschema eines Datenverarbeitungssystems ist, in dem die hierin beschriebenen Verfahren realisiert sein können; und
  • 13 eine Erweiterung der in 12 gezeigten Informationsverarbeitungssystem-Umgebung bereitstellt, um zu veranschaulichen, dass die hierin beschriebenen Verfahren auf einer großen Vielfalt von Informationsverarbeitungssystemen durchgeführt werden können, die in einer vernetzten Umgebung arbeiten.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die hierin verwendete Terminologie dient ausschließlich zur Beschreibung bestimmter Ausführungsformen und ist nicht als Einschränkung der Offenbarung gedacht. In dem hier verwendeten Sinne schließen die Einzahlformen „ein/eine” und „der/die/das” auch die Pluralformen ein, sofern im Kontext nicht ausdrücklich etwas anderes angegeben ist. Es versteht sich des Weiteren, dass die Begriffe „weist auf bzw. „aufweisen/aufweisend” bei Verwendung in dieser Beschreibung das Vorhandensein angegebener Merkmale, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten bezeichnen, jedoch das Vorhandensein oder die Hinzufügung eines bzw. einer oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon nicht ausschließen.
  • Die entsprechenden Strukturen, Materialien, Aktionen und Äquivalente aller Mittel bzw. Schritt-plus-Funktion-Elemente (Steg plus Function Elements) in den folgenden Ansprüchen sollen alle Strukturen, Materialien oder Aktionen zur Ausführung der Funktion in Verbindung mit anderen ausdrücklich beanspruchten Elementen mit einschließen. Die Beschreibung der vorliegenden Offenbarung soll der Veranschaulichung und Beschreibung dienen, ist jedoch nicht vollständig oder auf die Offenbarung in der offenbarten Form beschränkt. Für den Fachmann sind viele Modifikationen und Variationen denkbar, ohne dass diese eine Abweichung vom Schutzbereich und Gedanken der Offenbarung darstellen würden. Die Ausführungsform wurde ausgewählt und beschrieben, um die Grundgedanken und die praktische Anwendung der Offenbarung auf bestmögliche Weise zu erklären und anderen Fachleuten das Verständnis der Offenbarung für verschiedene Ausführungsformen mit verschiedenen Abänderungen für die betreffende betrachtete Verwendung zu ermöglichen.
  • Dem Fachmann wird klar sein, dass Aspekte der vorliegenden Offenbarung als System, Verfahren oder Computerprogrammprodukt verkörpert sein können. Dementsprechend können Aspekte der vorliegenden Offenbarung die Form einer vollständig in Hardware realisierten Ausführungsform, einer vollständig in Software realisierten Ausführungsform (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, in der Software- und Hardwareaspekte kombiniert sind, die im vorliegenden Dokument allgemein als „Schaltung”, „Modul” oder „System” bezeichnet werden. Ferner können Aspekte der vorliegenden Offenbarung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medien verkörpert ist, auf denen computerlesbarer Programmcode verkörpert ist.
  • Es können beliebige Kombinationen eines oder mehrerer computerlesbarer Medien verwendet werden. Das computerlesbare Medium kann ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium sein. Zu computerlesbaren Speichermedien können beispielsweise, ohne darauf beschränkt zu sein, ein elektronisches, magnetisches, optisches oder elektromagnetisches System bzw. ein Infrarot- oder Halbleitersystem bzw. eine derartige Vorrichtung oder Einheit oder eine beliebige geeignete Kombination des Vorstehenden gehören. Zu den genaueren Beispielen (unvollständige Liste) computerlesbarer Speichermedien zählen unter anderem folgende: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Nur-Lese-Speicher in Form einer Compact Disc (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder eine beliebige geeignete Kombination des Vorstehenden. Im Kontext dieses Dokuments kann ein computerlesbares Speichermedium jedes beliebige vergegenständlichte Medium sein, das ein Programm enthalten oder speichern kann, das von oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung genutzt werden kann.
  • Ein computerlesbares Signalmedium kann unter anderem ein im Basisband oder als Teil einer Trägerwelle übertragenes Datensignal mit darin verkörpertem computerlesbarem Programmcode aufweisen. Ein derartiges übertragenes Signal kann eine beliebige Vielfalt von Formen annehmen, einschließlich, ohne darauf beschränkt zu sein, einer elektromagnetischen oder optischen Form oder einer beliebigen geeigneten Kombination davon. Ein computerlesbares Signalmedium kann ein beliebiges computerlesbares Medium sein, bei dem es sich nicht um ein computerlesbares Speichermedium handelt und das ein Programm übertragen, senden oder transportieren kann, das von oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung genutzt werden kann.
  • Auf einem computerlesbaren Medium verkörperter Programmcode kann unter Verwendung jedes beliebigen geeigneten Mediums, einschließlich, ohne darauf beschränkt zu sein, drahtloser, drahtgebundener Medien, Lichtwellenleitern, HF usw. oder unter Verwendung einer beliebigen geeigneten Kombination des Vorstehenden übertragen werden.
  • Computerprogrammcode zum Ausführen von Operationen bei Aspekten der vorliegenden Offenbarung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen, darunter in einer objektorientierten Programmiersprache wie Java, Smalltalk, C++ oder dergleichen und in herkömmlichen prozeduralen Programmiersprachen wie „C” oder ähnlichen Programmiersprachen geschrieben sein. Der Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Beim letztgenannten Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über eine beliebige Art von Netzwerk verbunden sein, unter anderem über ein lokales Netzwerk (LAN) oder über ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (beispielsweise über das Internet unter Nutzung eines Internet-Dienstanbieters (Internet Service Provider)).
  • Nachstehend sind Aspekte der vorliegenden Offenbarung unter Bezugnahme auf Ablaufpläne und/oder Blockschemata von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Offenbarung beschrieben. Es versteht sich, dass jeder Block der Ablaufpläne und/oder der Blockschemata und Kombinationen von Blöcken in den Ablaufplänen und/oder Blockschemata durch Computerprogrammanweisungen realisiert werden kann bzw. können. Diese Computerprogrammanweisungen können einem Prozessor eines Mehrzweckcomputers, eines Spezialcomputers oder anderen programmierbaren Datenverarbeitungsvorrichtungen bereitgestellt werden, um eine Maschine zu erzeugen, sodass die Anweisungen, die über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel zum Realisieren der in einem Block bzw. in den Blöcken des Ablaufplans und/oder des Blockschemas angegebenen Funktionen/Aktionen schaffen.
  • Diese Computerprogrammanweisungen können ebenfalls in einem computerlesbaren Medium gespeichert sein, das einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, sodass die im computerlesbaren Medium gespeicherten Anweisungen ein Erzeugnis schaffen, das die Anweisungen aufweist, die die in einem Block bzw. in den Blöcken des Ablaufplans und/oder des Blockschemas angegebene Funktion/Aktion realisieren.
  • Die Computerprogrammanweisungen können auch in einen Computer, in andere programmierbare Datenverarbeitungsvorrichtungen oder in andere Einheiten geladen werden, um zu bewirken, dass auf dem Computer, auf anderen programmierbaren Vorrichtungen oder anderen Einheiten eine Reihe von Arbeitsschritten ausgeführt wird, um einen mittels Computer realisierten Prozess zu schaffen, sodass die Anweisungen, die auf dem Computer oder auf anderen programmierbaren Vorrichtungen ausgeführt werden, Prozesse zur Realisierung der in einem Block bzw. in den Blöcken des Ablaufplans und/oder des Blockschemas angegebenen Funktionen/Aktionen bereitstellen.
  • Die nachstehende ausführliche Beschreibung folgt im Allgemeinen dem oben aufgeführten Überblick über die Offenbarung und erläutert und erweitert je nach Notwendigkeit die Definitionen der verschiedenen Aspekte und Ausführungsformen der Beschreibung.
  • Die vorliegende Offenbarung beschreibt ein Verfahren zum Migrieren einer virtuellen Maschine von einem Quellsystem auf ein Zielsystem. Zur Migration gehören das Herauslösen von Hardwarezustandsdaten aus einem Quell-Netzwerkadapter, der der virtuellen Maschine entspricht, und das Kopieren der Hardwarezustandsdaten auf einen Ziel-Netzwerkadapter, den das Zielsystem aufweist. Daher hat ein Systemadministrator die Möglichkeit, bei Bedarf wie zum Beispiel wegen der Lösung von Sicherheitsproblemen oder Problemen mit der Netzwerkbandbreite die virtuelle Maschine auf das Zielsystem zu migrieren.
  • 1 ist ein beispielhaftes Schema, das einen Migrationsagenten zeigt, der eine virtuelle Maschine, zu der systemeigene Zustandsdaten der Netzwerkadapterhardware gehören, von einem Quellsystem auf ein Zielsystem migriert. Die Überlagerungsnetzwerkumgebung 100 überlagert ein physisches Netzwerk und nutzt logische Richtlinien, um über virtuelle Netzwerke Daten zwischen virtuellen Maschinen zu übertragen. Daher sind die virtuellen Netzwerke von Einschränkungen der physischen Topologie eines physischen Netzwerks unabhängig (weitere Einzelheiten hierzu siehe 11 und den entsprechenden Text).
  • Die Überlagerungsnetzwerk-Umgebung 100 weist das Quellsystem 105 auf. Das Quellsystem 105 weist den Host 110 und den Quell-Netzwerkadapter 150 auf. Der Host 110 weist den Hypervisor 145 auf, der die virtuelle Maschine 135 und den Einheitentreiber 140 bereitstellt. Die virtuelle Maschine 135 nutzt den Einheitentreiber 140, um zustandsbehaftete Auslagerungsdatenpakete an den Quell-Netzwerkadapter 150 zu senden. Zum Beispiel können die zustandsbehafteten Auslagerungsdatenpakete einem zustandsbehafteten Auslagerungsformat wie beispielsweise Remote Direct Memory Access (RDMA), Internet Wide RDMA Protocol (iWARP), Infiniband (IB) und TCP Offload Engine (TOE) folgen.
  • Daraufhin verarbeitet der Quell-Netzwerkadapter 150 die Datenpakete unter Nutzung der Hardwarezustandsdaten 152 und überträgt die Datenpakete über die Überlagerungsnetzwerk-Umgebung 100 zur virtuellen Zielmaschine. Die Hardwarezustandsdaten 152 weisen zustandsbehaftete Informationen auf, die den Kontext des Quell-Netzwerkadapters 150 wiedergeben, zum Beispiel Daten, die Verbindungen und Strukturen betreffen, die zur Kommunikation mit der virtuellen Maschine 135 verwendet werden (z. B. Warteschlangenpaare, Abschlusswarteschlangen usw.), und sie können auch Registerinformationen, Speicherregistrierungen und verschiedene andere Datenstrukturen (z. B. ARP-Tabellen, laufende Nummern, Informationen über Übertragungswiederholungen usw.) aufweisen.
  • Bei einer Ausführungsform weisen die Hardwarezustandsdaten 152 Verbindungszustandsdaten der Schicht 4 (des OSI-Modells) (OSI = Open Systems Interconnect) auf, die es dem Quell-Netzwerkadapter 150 ermöglichen, Bestätigungen für Übertragungswiederholungen und Pakete durchzuführen, wodurch der Host 110 von der Durchführung derartiger untergeordneter Aufgaben entlastet wird. Zum Beispiel stellt iWARP eine RDMA-Funktion über eine normale Ethernet-Struktur bereit, die Anwendungspuffer nutzt, die auf einem unterlagerten Ethernet-Adapter zugeordnet sind. Wenn die Kommunikation ausgelöst wird, wird eine Verbindung mit dem Netzwerkadapter hergestellt, der eine TCP-Verbindung auslöst. Sobald diese aktiv ist, werden Daten in den Ausgangspuffern der Anwendung durch den Netzwerkadapter als TCP-Segmente eingebettet, während Datenpakete aufgebaut werden.
  • Ein Systemadministrator möchte unter Umständen die virtuelle Maschine 135 vom Quellsystem 105 auf ein anderes System migrieren, zum Beispiel zu Sicherheitszwecken oder zum Zweck der Verwaltung der Netzwerkbandbreite. Daher kann der Systemadministrator einen Migrationsbefehl an den Migrationsagenten 160 (im verteilten Richtliniendienst 165 enthalten) senden, der für das Ermitteln eines geeigneten Zielsystems zuständig ist, das einen kompatiblen Host und einen gleichwertigen Netzwerkadapter aufweist, der die Überlagerungsnetzwerk-Umgebung 100 unterstützt. Bei einer Ausführungsform ist ein kompatibler Host ein Host, der Systemanforderungen einer virtuellen Maschine, die gerade migriert wird, wie zum Beispiel CPU-Anforderungen, Speicheranforderungen Bandbreitenanforderungen usw., erfüllt. Bei einer Ausführungsform ist ein gleichwertiger Netzwerkadapter ein Netzwerkadapter, der derselben Lieferantenkennung und derselben Revisionskennung wie der Quell-Netzwerkadapter 150 entspricht.
  • Der Migrationsagent 160 durchläuft eine Reihe von Ermittlungsschritten, um das Zielsystem 115 als geeignetes Zielsystem zu erkennen. Bei einer Ausführungsform nutzt der Migrationsagent 160 eine Kandidatentabelle, die Host-Eigenschaften und Netzwerkadaptereigenschaften aufweist, für die das geeignetes Zielsystem erkannt werden soll (weitere Einzelheiten siehe die 3, 5 und den entsprechenden Text). Bei dieser Ausführungsform stellt der Migrationsagent 160 fest, dass der Host 120 die Systemanforderungen der virtuellen Maschine 135 erfüllt und der Ziel-Netzwerkadapter 190 mit dem Quell-Netzwerkadapter 150 gleichwertig ist (z. B. eine übereinstimmende Einheitenkennung, Firmwareversion und andere entsprechende Adapterattribute aufweist).
  • Um die virtuelle Maschine 135 zu migrieren, müssen die Hardwarezustandsdaten 152 ebenfalls migriert werden. Die Hardwarezustandsdaten 152 sind jedoch für den Einheitentreiber 140 und die virtuelle Maschine 135 teilweise oder gar nicht transparent. Daher weist der Migrationsagent 160 den Quell-Netzwerkadapter 150 (über den Einheitentreiber 140, Hypervisor 145 oder einen anderen steuernden Agenten) darauf hin, die Hardwarezustandsdaten 152 herauszulösen. Der Quell-Netzwerkadapter 150 legt die E/A-Aktivität und Speicheraktivität still, um während des Herauslösungsprozesses Änderungen oder eine Beschädigung des Zustands zu vermeiden, und kopiert die Hardwarezustandsdaten 152 über den Einheitentreiber 140 an einer vorgegebenen Speicherblock-Anfangsadresse in den gemeinsam genutzten Speicher 142. Die Speicherblock-Anfangsadresse kann als Teil ihrer Initialisierung ausgehandelt oder dem Quell-Netzwerkadapter 150 im Herauslösungsbefehl als Parameter bereitgestellt werden.
  • Der Migrationsagent 160 sendet eine Migrationsanforderung an das Quellsystem 105 und an das Zielsystem 115, um die virtuelle Maschine 135 zu migrieren. Daraufhin richten die Hypervisoren 145 und 185 eine Verbindung ein, um die virtuelle Maschine 135 (weist den gemeinsam genutzten Speicher 142 auf) in einem Datenstrom auf den Host 120 zu übertragen, wodurch die virtuelle Maschine 175 und der gemeinsam genutzte Speicher 182 entstehen. Außerdem ordnet der Hypervisor 185 den Einheitentreiber 180 der logischen Partition 170 zu und sendet einen Zustandseinfügebefehl an den Ziel-Netzwerkadapter 190. Der Zustandseinfügebefehl weist den Ziel-Netzwerkadapter 190 an, die Hardwarezustandsdaten vom gemeinsam genutzten Speicher 182 an der Speicherblock-Anfangsadresse abzurufen und die Hardwarezustandsdaten 192 auf den Netzwerkadapter 190 zu laden. Infolgedessen behalten die Hardwarezustandsdaten 152 ihre systemeigene Form bei, wenn sie im Ziel-Netzwerkadapter 190 gespeichert werden, sodass keine Adressumsetzungsschritte notwendig sind.
  • Bei einer Ausführungsform führt der Ziel-Netzwerkadapter 190 eine Prüfsumme durch, um die Hardwarezustandsdaten zu validieren. Bei einer weiteren Ausführungsform kann der Ziel-Netzwerkadapter 190 eine Kopfzeile (Header) oder einzelne Merker nutzen, um auf effiziente Weise den Kontext festzulegen. Bei einer noch weiteren Ausführungsform kann der Migrationsagent 160, wenn der Quell-Netzwerkadapter 150 während der Migration aktiv bleibt, eine oder mehrere Transaktionen zwischen dem Quell-Netzwerkadapter 150 und dem Ziel-Netzwerkadapter 190 erleichtern, um die Gleichwertigkeit ihrer Zustände zu überprüfen.
  • 2 ist ein beispielhaftes Schema, das eine grafische Darstellung des Ermittelns eines geeigneten Zielsystems zeigt. Bei einer Ausführungsform wählt der Migrationsagent 160 auf der Grundlage verfügbarer Hosts, kompatibler Hosts und gleichwertiger Netzwerkadapter iterativ ein geeignetes Zielsystem aus. Bei einer weiteren Ausführungsform verwendete der Migrationsagent 160 eine Kandidatentabelle wie zum Beispiel die in 3 gezeigte Tabelle aus, um derartige Iterationsschritte durchzuführen.
  • Der Migrationsagent erkennt verfügbare Hosts 220, die die Überlagerungsnetzwerk-Umgebung 100 aufweist. Zu den verfügbaren Hosts 220 gehören die Hosts 250 bis 290, die jeweils verschiedene Netzwerkadapter nutzen. Das Beispiel in 2 zeigt, dass der Migrationsagent feststellt, dass die Hosts 250 bis 268 die Host-Anforderungen der virtuellen Maschine, die gerade migriert wird (z. B. nicht genügend Speicher- oder Bandbreitenverfügbarkeit), nicht erfüllen. Daher erkennt der Migrationsagent die Hosts 272 bis 290 als „kompatible” Hosts 230, die die Host-Anforderungen der virtuellen Maschine erfüllen oder übererfüllen, die gerade migriert wird.
  • Als Nächstes analysiert der Migrationsagent die Netzwerkadapter 274, 285 und 295, die den kompatiblen Hosts 230 entsprechen, um einen Netzwerkadapter zu erkennen, der mit dem Netzwerkadapter gleichwertig ist, der von der virtuellen Maschine genutzt wird, die gerade migriert wird. Bei einer Ausführungsform ist ein gleichwertiger Netzwerkadapter ein Netzwerkadapter, der sowohl hinsichtlich der Einheitenkennung als auch der Lieferantenkennung mit dem Netzwerkadapter der virtuellen Maschine übereinstimmt, die gerade migriert wird. Das in 2 gezeigte Beispiel zeigt, dass der Netzwerkadapter 295 mit dem Netzwerkadapter der virtuellen Maschine gleichwertig ist, die gerade migriert wird. Daher sendet der Migrationsagent eine Nachricht an die Hypervisoren des Quell- und Zielsystems, um eine Verbindung einzurichten und die virtuelle Maschine vom Quellsystem auf das Zielsystem zu migrieren.
  • 3 ist eine beispielhafte Kandidatentabelle, die Tabelleneinträge mit Host-Eigenschaften und entsprechenden Netzwerkadaptereigenschaften aufweist. Ein Migrationsagent (als Teil des verteilten Richtliniendienstes) verwaltet die Kandidatentabelle 300, um Host-Anforderungen und Netzwerkadapteranforderungen für virtuelle Maschinen zu überwachen, die Übertragungen von zustandsbehafteten Auslagerungsdaten ausführen. Bei einer Ausführungsform kann ein lokaler Server für verteilte Richtlinien eine Kandidatentabelle 300 verwalten, die Tabelleneinträge auf der Ebene eines lokalen virtuellen Netzwerks aufweisen würde. Bei einer weiteren Ausführungsform kann ein Stamm-Server für verteilte Richtlinien eine Kandidatentabelle 300 verwalten, die Tabelleneinträge auf der Ebene einer globalen Überlagerungsnetzwerk-Umgebung aufweisen würde (weitere Einzelheiten siehe 10 und den entsprechenden Text).
  • Die Kandidatentabelle 300 weist eine Liste von Tabelleneinträgen auf, die Host-Namen (Spalte 310) und Host-Eigenschaften (Spalte 320) aufweisen. Beispielsweise kann ein Host-System einer virtuellen Maschine einen bestimmten Betrag an Verarbeitungsleistung, Speicher und Bandbreite bereitstellen. Bei einer Ausführungsform kann die Spalte 320 minimale, nominelle und/oder maximale Host-Eigenschaften aufweisen.
  • Die Tabelleneinträge weisen außerdem Netzwerkadapterinformationen zu Netzwerkadaptern auf, die von entsprechenden Host-Systemen genutzt werden. Die Spalte 330 weist Netzwerkadapterkennungen auf, und die Spalte 340 weist Netzwerkadaptereigenschaften auf. Die Netzwerkadaptereigenschaften kennzeichnen bei einer Ausführungsform die Lieferantenkennung und die Einheitenkennung des Netzwerkadapters. Daher kann der Migrationsagent einen gleichwertigen (übereinstimmenden) Netzwerkadapter ermitteln, um Hardwarezustandsdaten in ihrem systemeigenen Format auf einen sich unterscheidenden Netzwerkadapter zu migrieren.
  • 4 ist ein beispielhafter Ablaufplan, der die Schritte zeigt, die beim Ermitteln eines Zielsystems und Migrieren einer virtuellen Maschine von einem Quellsystem auf das Zielsystem unternommen werden. Die Migrationsagentenverarbeitung beginnt bei 400, wonach der Migrationsagent eine Anforderung von einem Administrator 415 empfängt, eine virtuelle Maschine zu migrieren, die auf einem Quellsystem ausgeführt wird (Schritt 410). Die virtuelle Maschine überträgt zustandsbehaftete Auslagerungsdatenpakete (z. B. RDMA), die einen Netzwerkadapter durchqueren, der Hardwarezustandsdaten nutzt, um die Datenpakete zu verarbeiten.
  • Bei Schritt 420 erkennt der Migrationsagent einen Quell-Netzwerkadapter, den die Datenpakete der virtuellen Maschine durchqueren (der z. B. in der Anforderung enthalten ist oder über eine Kandidatentabelle erkannt wurde). Es wird eine Ermittlung dahingehend durchgeführt, ob der Hardwarezustand des Netzwerkadapters verlagerbar ist (der Adapter unterstützt z. B. die Herauslösung, Entscheidung 430). Wenn der Hardwarezustand des Netzwerkadapters nicht verlagerbar ist, verzweigt die Entscheidung 430 zum „Nein”-Zweig, wonach der Migrationsagent bei Schritt 435 einen Fehler an den Administrator 415 zurückgibt und bei Schritt 438 endet.
  • Andererseits verzweigt die Entscheidung 430 zum „Ja”-Zweig, wenn der Hardwarezustand des Netzwerkadapters verlagerbar ist, wonach der Migrationsagent eine Reihe von Schritten durchläuft, um ein geeignetes Zielsystem zu erkennen, dessen Netzwerkadapter den vom Quell-Netzwerkadapter genutzten Hardwarezustand unterstützt (vordefinierter Prozessblock 440, weitere Einzelheiten siehe 5 und den entsprechenden Text).
  • Bei Schritt 450 gibt der Migrationsagent einen Herauslösungsbefehl an den Quell-Netzwerkadapter aus (z. B. über seinen Einheitentreiber oder Hypervisor), um die E/A-Aktivität und Speicheraktivität stillzusetzen und die Hardwarezustandsdaten an eine gemeinsam genutzte Speicherstelle zu kopieren (weitere Einzelzeiten siehe 6 und den entsprechenden Text).
  • Daraufhin sendet das Quellsystem 105 einen Hinweis an den Migrationsagenten (bei Schritt 570 empfangen), dass die Hardwarezustandsdaten in den gemeinsam genutzten Speicher kopiert worden sind. Der Migrationsagent sendet eine Migrationsanforderung an das Quellsystem und an das Zielsystem, um eine Verbindung herzustellen und die virtuelle Maschine (weist die Hardwarezustandsdaten auf) vom Quellsystem 105 auf das Zielsystem 115 zu migrieren (vordefinierter Prozessblock 480, weitere Einzelheiten siehe 7 und den entsprechenden Text). Sobald die Migration abgeschlossen ist, konfiguriert der Hypervisor des Zielsystems 115 seinen Ziel-Netzwerkadapter entsprechend den migrierten Hardwarezustandsdaten. Die virtuelle Maschine nimmt bei 490 den Betrieb auf dem Zielsystem 115 wieder auf, und die Verarbeitung durch den Migrationsagenten endet bei 495.
  • 5 ist ein beispielhafter Ablaufplan, der die Schritte zeigt, die in einem Migrationsagenten beim Ermitteln eines geeigneten Zielsystems unternommen werden, das einen kompatiblen Host und einen gleichwertigen Netzwerkadapter aufweist. Bei einer Ausführungsform ist ein gleichwertiger Netzwerkadapter ein Adapter, der die Hardwarezustandsdaten des Quell-Netzwerkadapters in ihrem systemeigenen Hardwareformat nutzen kann (z. B. sind keine Adressumsetzungen erforderlich).
  • Die Zielermittlungsverarbeitung beginnt bei 500, wonach der Migrationsagent (im verteilten Richtliniendienst enthalten) bei Schritt 520 Systemanforderungen erkennt, die einer virtuellen Maschine entsprechen, die gerade migriert wird. Beispielsweise können zu den Systemanforderungen der virtuellen Maschine die Verarbeitungsgeschwindigkeit, Speicheranforderungen, Anforderungen an die Netzwerkbandbreite usw. gehören. Bei Schritt 530 greift der Migrationsagent auf die Kandidatentabelle 525 zu und erkennt kompatible Host-Systeme, die die Anforderungen an das Host-System erfüllen. Bei einer Ausführungsform ist ein Host-System kompatibel, wenn es die Systemanforderungen der virtuellen Maschine erfüllt oder übererfüllt. Beispielsweise erfordert eine virtuelle Maschine unter Umständen 4 GB Systemspeicher, und ein Host-System ist unter Umständen in der Lage, der virtuellen Maschine 6 GB Systemspeicher bereitzustellen.
  • Bei Schritt 540 erkennt der Migrationsagent die in der Kandidatentabelle 525 enthaltenen systemeigenen Hardwareeigenschaften des Quell-Netzwerkadapters. Bei einer Ausführungsform gehören zu den systemeigenen Hardwareeigenschaften des Quell-Netzwerkadapters die Einheitenkennung, Firmwareversion und andere entsprechende Adaptereigenschaften. Als Nächstes erkennt der Migrationsagent einen oder mehrere durch die kompatiblen Host-Systeme genutzte Netzwerkadapter (ab Schritt 530), die mit den systemeigenen Hardwareeigenschaften des Quell-Netzwerkadapters gleichwertig sind (Schritt 550).
  • Daraufhin wählt der Migrationsagent bei Schritt 560 einen oder mehrere der gleichwertigen Netzwerkadapter aus. Bei einer Ausführungsform sendet der Migrationsagent eine Nachricht an den Netzwerkadministrator und ermöglicht dem Netzwerkadministrator, einen der gleichwertigen Netzwerkadapter auszuwählen. Die Verarbeitung kehrt bei 580 zurück.
  • 6 ist ein beispielhafter Ablaufplan, der die Schritte zeigt, die in einem Host-System unternommen werden, das eine virtuelle Maschine zur Migration vorbereitet. Die Quellsystemverarbeitung beginnt bei 600, wonach das Quellsystem vom Migrationsagenten 160 einen Zustandsherauslösungsbefehl empfängt, um eine bestimmte virtuelle Maschine zu migrieren, die auf dem Quell-Host-System ausgeführt wird (Schritt 610). Bei Schritt 620 setzt das Quellsystem (z. B. über einen Einheitentreiber oder Hypervisor) die E/A-Aktivität und Speicheraktivität auf dem Quell-Netzwerkadapter 150 still, um während der Migration der virtuellen Maschine Änderungen oder eine Beschädigung des Zustands zu vermeiden.
  • Bei Schritt 630 weist das Quellsystem den Quell-Netzwerkadapter 150 an, Hardwarezustandsdaten herauszulösen, die zu der virtuellen Maschine gehören, die gerade migriert wird, und bei Schritt 640 kopiert das Quellsystem die Hardwarezustandsdaten in den gemeinsam genutzten Speicher 142, bei dem es sich um Systemspeicher und einen Teil der virtuellen Maschine handelt, die auf das Zielsystem migriert wird. Das Quellsystem informiert bei Schritt 650 den Migrationsagenten 160, dass die virtuelle Maschine zur Migration bereit ist, und die Quellsystemverarbeitung endet bei 660.
  • 7 ist ein beispielhafter Ablaufplan, der die Schritte zeigt, die beim Migrieren einer virtuellen Maschine von einem Quellsystem auf ein Zielsystem unternommen werden. Die Quellsystemverarbeitung beginnt bei 700, wonach das Quellsystem vom Migrationsagenten 160 eine Anforderung zur Migration des Quellsystems auf das Zielsystem empfängt. Die Zielsystemverarbeitung beginnt, woraufhin das Zielsystem bei 755 eine entsprechende Anforderung empfängt.
  • Bei Schritt 710 stellt der Hypervisor des Quellsystems eine Verbindung mit dem Hypervisor des Zielsystems her und fordert das Zielsystem auf, Ressourcen für die virtuelle Maschine zu reservieren, die gerade migriert wird. Bei einer Ausführungsform weist die Anforderung Konfigurationsparameter entfernt angeordneter Adapter auf, die eine Speicherblock-Anfangsadresse im gemeinsam genutzten Speicher der virtuellen Maschine angeben, an der Hardwarezustandsdaten gespeichert sind (Schritt 710).
  • Der Hypervisor des Zielsystems ordnet bei Schritt 760 Platz für die virtuelle Maschine zu. Bei den Schritten 710 und 765 migrieren die Hypervisoren die virtuelle Maschine vom Quellsystem auf das Zielsystem, und bei einer Ausführungsform überprüft das Zielsystem die Migration, zum Beispiel durch eine Prüfsummenberechnung. Daraufhin ordnet der Hypervisor des Zielsystems bei Schritt 770 der migrierten logischen Partition einen Einheitentreiber zu, sodass die virtuelle Maschine mit dem Ziel-Netzwerkadapter kommunizieren kann.
  • Bei Schritt 775 sendet der Hypervisor des Zielsystems einen „Zustandseinfüge”-Befehl an den Ziel-Netzwerkadapter, der den Ziel-Netzwerkadapter anweist, die Hardwarezustandsdaten an der Speicherblock-Anfangsadresse aus den gemeinsam genutzten Speicher abzurufen und den Ziel-Netzwerkadapter entsprechend zu konfigurieren. Bei einer Ausführungsform sind die Speicherblock-Anfangsadressen in der durch den Hypervisor des Quellsystems gesendeten Ressourcenanforderung enthalten (oben erörterter Schritt 710). Bei einer weiteren Ausführungsform sendet der Quell-Hypervisor eine separate Nachricht an den Ziel-Hypervisor, die die Speicherblock-Anfangsadresse enthält. Sobald die Konfiguration abgeschlossen ist, sendet der Ziel-Hypervisor bei Schritt 789 eine Migrationsbestätigung an den Quell-Hypervisor, und die Ziel-Hypervisor-Verarbeitung endet bei 790.
  • Der Quell-Hypervisor empfängt bei Schritt 720 die Bestätigung für die erfolgreiche Migration und gibt bei Schritt 730 die Ressourcen (virtuelle Maschine, Einheitentreiber, gemeinsam genutzter Speicher usw.) auf dem Quellsystem frei. Die Quell-Hypervisor-Verarbeitung endet bei 735.
  • 8 ist ein beispielhaftes Schema, das einen Netzwerkadapter zeigt, der Hardwarezustandsdaten von Modulen überwacht und speichert, die auf einer virtuellen Maschine ausgeführt werden. Die virtuelle Maschine 135 nutzt die Module 800 bis 850, um zustandsbehaftete Auslagerungsdatenpakete über den Quell-Netzwerkadapter 150 an andere virtuelle Maschinen zu senden bzw. von diesen zu empfangen. Jedes der Module 800 bis 850 weist einen „Zustand” auf dem Quell-Netzwerkadapter 150 auf, der in den Hardwarezustandsdaten 152 gespeichert ist. Bei einer Ausführungsform gehört zu den Hardwarezustandsdaten 152 eine Gruppierung von Informationen, die einen Zustand einer Verbindung/eines Datagramms wiedergeben. Beispielsweise kann Folgendes zu den Hardwarezustandsdaten 152 gehören:
    • • Gruppierung von Ressourcen der Schutzdomäne
    • • Statistiken der Einheiten der Schutzdomäne
    • • Index der Produzenten der Sendewarteschlangen-Hardware des Warteschlangenpaares
    • • Index der Konsumenten der Sendewarteschlangen-Software des Warteschlangenpaares
    • • Index der Produzenten der Empfangswarteschlangen-Hardware des Warteschlangenpaares
    • • Index der Konsumenten der Empfangswarteschlangen-Software des Warteschlangenpaares
    • • zugehörige Speicherbereiche
    • • zugehörige Adress-Handles
    • • Index der Produzenten der Abschlusswarteschlangen-Hardware
    • • Index der Konsumenten der Abschlusswarteschlangen-Software
    • • Statistiken der Einheiten der Abschlusswarteschlange
    • • Zuweisungen zwischen virtuellen und logischen Adressen/Busadressen
  • Wenn die virtuelle Maschine 135 auf ein Zielsystem migriert wird, werden die Hardwarezustandsdaten 152 in einen gemeinsam genutzten Speicherbereich kopiert und zusammen mit der virtuellen Maschine 135 auf das Zielsystem migriert. Daraufhin konfiguriert das Zielsystem seinen Ziel-Netzwerkadapter entsprechend den migrierten Hardwarezustandsdaten 152. Bei einer Ausführungsform kann der Quell-Netzwerkadapter 150 tausende von Hardwarezustandsdaten 152 verwalten, die jeweils einer anderen virtuellen Maschine entsprechen. Bei dieser Ausführungsform werden nur Hardwarezustandsdaten 152 auf das Zielsystem kopiert, die einer virtuellen Maschine entsprechen, die gerade migriert wird.
  • 9 ist ein beispielhaftes Schema, das die Migration von Hardwarezustandsdaten von einem Quell-Netzwerkadapter auf einen Ziel-Netzwerkadapter zeigt. Der Quell-Netzwerkadapter 150 nutzt die Hardwarezustandsdaten 152, um zustandsbehaftete Auslagerungsdateipakete von einer virtuellen Quellmaschine an eine virtuelle Zielmaschine zu senden. Während der Migration auf den Ziel-Netzwerkadapter 190 werden die Hardwarezustandsdaten 152 an der Speicherblock-Anfangsadresse 800 in den gemeinsam genutzten Speicher 142 kopiert. Daraufhin werden, wenn die virtuelle Maschine 135 als virtuelle Maschine 175 auf ein Zielsystem kopiert wird, die Hardwarezustandsdaten 152 in ihrem systemeigenen Hardwareformat kopiert und bleiben nach wie vor an der Speicherblock-Anfangsadresse 800 im gemeinsam genutzten Speicher 182 gespeichert. Daraufhin werden aufgrund der Tatsache, dass der Ziel-Netzwerkadapter 190 mit dem Quell-Netzwerkadapter 150 gleichwertig ist, die Hardwarezustandsdaten 152 in ihrem systemeigenen Hardwareformat auf den Ziel-Netzwerkadapter 190 kopiert.
  • Aufgrund der Tatsache, dass der Ziel-Netzwerkadapter 190 mit dem Quell-Netzwerkadapter 150 gleichwertig ist, nutzt der Ziel-Netzwerkadapter 190 Hardwarezustandsdaten in ihrem systemeigenen Format, sodass Adressumsetzungen nicht erforderlich sind.
  • 10 ist ein beispielhaftes Schema, das einen verteilten Richtliniendienst zeigt, der auf einen Speicherbereich mit Kandidatentabellen zugreift, um ein geeignetes Zielsystem zu erkennen. Der Migrationsagent 160 weist eine Schnittstelle zum lokalen Netzwerk-Richtlinienserver auf, um ein geeignetes Zielsystem zu erkennen. Bei einer Ausführungsform verwaltet der lokale Netzwerk-Richtlinienserver 1000 Richtlinien und Umsetzungen physikalischer Pfade, die zum Überlagerungsnetzwerk des Quellsystems (z. B. die Überlagerungsnetzwerk-Umgebung 100) gehören. Bei einer weiteren Ausführungsform sind Richtlinienserver für unterschiedliche Überlagerungsnetzwerke benachbart und unterscheiden Richtlinienanforderungen von unterschiedlichen Migrationsagenten anhand ihrer entsprechenden Überlagerungsnetzwerk-Kennung.
  • Der verteilte Richtliniendienst 165 ist hierarchisch strukturiert, und wenn der lokale Netzwerk-Richtlinienserver 1000 kein geeignetes Zielsystem finden kann, fragt der lokale Netzwerk-Richtlinienserver 1000 den Stamm-Richtlinienserver 1010 ab, um nach einem geeigneten Zielsystem zu suchen. Daraufhin greift der Stamm-Richtlinienserver 1010 auf den Kandidatentabellenspeicher 1015 zu und sendet eine Kennung eines geeigneten Zielsystems an den lokalen Netzwerk-Richtlinienserver 1000, der sie an den Migrationsagenten 160 sendet. Bei einer Ausführungsform kann der Stamm-Richtlinienserver 1010 dem lokalen Netzwerk-Richtlinienserver 1000 eine Nachricht senden, um den lokalen Netzwerk-Richtlinienserver 1030 nach einem geeigneten Zielsystem abzufragen, das andere Host-Systeme verwaltet als die, die der lokale Netzwerk-Richtlinienserver 1000 verwaltet.
  • 11 ist ein beispielhaftes Schema, das virtuelle Netzwerkabstraktionen zeigt, die einem physischen Netzwerkraum überlagert sind. Die virtuellen Netzwerke 1100 sind Teil einer Überlagerungsnetzwerk-Umgebung und weisen Richtlinien (z. B. die Richtlinien 1103 bis 1113) auf, die eine virtuelle Ende-zu-Ende-Verbindung zwischen virtuellen Maschinen (z. B. zwischen den virtuellen Maschinen 1102 bis 1110) bereitstellen. Jedes der virtuellen Netzwerke 110 entspricht einer eindeutigen virtuellen Kennung, die den gleichzeitigen Betrieb mehrerer virtueller Netzwerke über dem physischen Raum 1120 ermöglicht. Wie sich der Fachmann vorstellen kann, können einige der virtuellen Netzwerke 1100 einen Teil der virtuellen Maschinen 1102 bis 1110 aufweisen, während andere virtuelle Netzwerke 1100 andere virtuelle Maschinen und andere Richtlinien als die in 11 gezeigten aufweisen können.
  • Wenn eine virtuelle „Quell”-Maschine Daten an eine virtuelle „Ziel”-Maschine sendet, beschreibt eine den zwei virtuellen Maschinen entsprechende Richtlinie einen logischen Pfad, auf dem die Daten übertragen werden (z. B. über eine Firewall, über einen Beschleuniger usw.). Anders ausgedrückt definieren die Richtlinien 1103 bis 1113, wie unterschiedliche virtuelle Maschinen Daten untereinander (oder mit externen Netzwerken) austauschen. Zum Beispiel kann eine Richtlinie Anforderungen an die Dienstqualität (Quality of Service, QoS) definieren; den Zugriff auf Steuerelemente, die zu bestimmten virtuellen Maschinen gehören; oder eine Gruppe virtueller oder physischer Einrichtungen (Geräte), die beim Senden oder Empfangen von Daten zu durchqueren sind. Darüber hinaus können einige Einheiten Beschleuniger wie zum Beispiel Komprimierung, IP Security (IPSec), SSL oder Sicherheitseinrichtungen wie zum Beispiel eine Firewall oder ein Warnsystem gegen Angriffe von außen aufweisen. Zudem kann eine Richtlinie so gestaltet sein, dass sie den Datenaustausch zwischen der virtuellen Quellmaschine und der virtuellen Zielmaschine nicht zulässt.
  • Die virtuellen Netzwerke 1100 sind dem physischen Raum 1120 logisch überlagert, der physische Einheiten 1135 bis 1188 aufweist (Hosts, Switches und Router. Obwohl sich die Art, in der eine Richtlinie im System durchgesetzt wird, auf den physischen Raum 1120 auswirkt und von diesem abhängt, sind virtuelle Netzwerke 1100 mehr von logischen Beschreibungen in den Richtlinien abhängig. Daher können mehrere virtuelle Netzwerke 1100 einem physischen Raum 1120 überlagert sein. Wie zu erkennen ist, ist der physische Raum 1120 in das Teilnetz X 1125 und das Teilnetz Y 1130 unterteilt. Die Teilnetze sind über die Router 1135 und 1140 verbunden. Die virtuellen Netzwerke 1100 sind von Einschränkungen des physischen Raums 1120 (z. B. Einschränkungen der Ebene 12 innerhalb eines Teilnetzes) unabhängig. Daher kann ein virtuelles Netzwerk physische Einheiten aufweisen, die sowohl zum Teilnetz X 1125 als auch zum Teilnetz Y 1130 gehören.
  • Bei einer Ausführungsform unterstützen Abstraktionen virtueller Netzwerke die Adressunabhängigkeit zwischen unterschiedlichen virtuellen Netzwerken 1100. Zum Beispiel können zwei unterschiedliche virtuelle Maschinen, die in zwei unterschiedlichen virtuellen Netzwerken betrieben werden, dieselbe IP-Adresse aufweisen. Um ein weiteres Beispiel zu nennen, unterstützen Abstraktionen virtueller Netzwerke das Bereitstellen virtueller Maschinen, die zu denselben virtuellen Netzwerken gehören, auf unterschiedlichen Hosts, die sich in unterschiedlichen physischen Teilnetzen befinden (dies gilt auch für Switches und/oder Router zwischen den physischen Einheiten). Bei einer weiteren Ausführungsform können virtuelle Maschinen, die zu unterschiedlichen virtuellen Netzwerken gehören, auf demselben physischen Host gehostet sein. Bei noch einer weiteren Ausführungsform unterstützen die Abstraktionen virtueller Netzwerke die Migration virtueller Maschinen an beliebiger Stelle innerhalb des Datenverarbeitungszentrums, ohne die Netzwerkadresse der virtuellen Maschine zu ändern und ihre Netzwerkverbindung zu verlieren.
  • Weitere Einzelheiten zu dieser Architektur siehe die Anmeldung „Virtual Switch Data Control in a Distributed Overlay Network”, Seriennummer 13/204 211, eingereicht am 5. August 2011, die durch Bezugnahme hierin eingeschlossen ist.
  • 12 veranschaulicht das Informationsverarbeitungssystem 1200, bei dem es sich um ein vereinfachtes Beispiel eines Computersystems handelt, das die hierin beschriebenen Datenverarbeitungsoperationen durchführen kann. Das Informationsverarbeitungssystem 1200 weist einen oder mehrere Prozessoren 1210 auf, die mit dem Prozessorschnittstellenbus 1212 verbunden sind. Der Prozessorschnittstellenbus 1212 verbindet die Prozessoren 1210 mit der Northbridge 1215, die auch als Memory Controller Hub (MCH) bezeichnet wird. Die Northbridge 1215 ist mit dem Systemspeicher 1220 verbunden und stellt dem Prozessor bzw. den Prozessoren 1210 den Zugriff auf den Systemspeicher bereit. Eine Grafiksteuereinheit 1225 ist ebenfalls mit der Northbridge 1215 verbunden. Bei einer Ausführungsform verbindet der PCI-Express-Bus 1218 die Northbridge 1215 mit der Grafiksteuereinheit 1225. Die Grafiksteuereinheit 1225 ist mit der Anzeigeeinheit 1230 verbunden, zum Beispiel mit einem Computerbildschirm.
  • Die Northbridge 1215 und die Southbridge 1235 sind über den Bus 1219 miteinander verbunden. Bei einer Ausführungsform ist der Bus ein DMI-Bus (DMI = Direct Media Interface), der Daten mit hoher Geschwindigkeit in beiden Richtungen zwischen der Northbridge 1215 und der Southbridge 1235 überträgt. Bei einer weiteren Ausführungsform verbindet ein PCI-Bus (PCI = Peripheral Component Interconnect) die Northbridge und die Southbridge miteinander. Die Southbridge 1235, die auch als I/O Controller Hub (ICH) bezeichnet wird, ist ein Chipsatz, der im Allgemeinen Funktionen realisiert, die mit geringerer Geschwindigkeit als die von der Northbridge bereitgestellten Funktionen ablaufen. Die Southbridge 1235 stellt normalerweise verschiedene Busse zum Anschluss verschiedener Komponenten bereit. Zu diesen Bussen gehören zum Beispiel der PCI- und der PCI-Express-Bus, ein ISA-Bus, ein System Management Bus (SMBus bzw. SMB) und/oder ein LPC-Bus (LPC = Low Pin Count). Der LPC-Bus dient oft zum Anschluss von Einheiten mit geringer Bandbreite, zum Beispiel von Urlader-ROM 1296 und „älteren” E/A-Einheiten (mithilfe eines „Super-I/O”-Chips). Zu den „älteren” E/A-Einheiten (1298) können zum Beispiel serielle und parallele Anschlüsse, Tastatur, Maus und/oder eine Diskettenlaufwerk-Steuereinheit gehören. Der LPC-Bus verbindet außerdem die Southbridge 1235 mit dem Trusted Platform Module (TPM) 1295. Zu weiteren Komponenten, die die Southbridge 1235 oft aufweist, gehören eine DMA-Steuereinheit (DMA = Direct Memory Access), eine PIC-Steuereinheit (PIC = Programmable Interrupt Controller) und eine Speichereinheit-Steuereinheit, die die Southbridge 1235 über den Bus 1284 mit der nichtflüchtigen Speichereinheit 1285 verbindet, zum Beispiel mit einem Festplattenlaufwerk.
  • Die ExpressCard 1255 ist ein Steckplatz, über den Einheiten während des laufenden Betriebs an das Informationsverarbeitungssystem angeschlossen und von diesem getrennt werden können. Die ExpressCard 1255 unterstützt sowohl PCI-Express- als auch USB-Verbindungen, da sie sowohl über den Universal Serial Bus (USB) als auch über den PCI-Express-Bus an die Southbridge 1235 angeschlossen werden kann. Zur Southbridge 1235 gehört eine USB-Steuereinheit 1240, die USB-Verbindungen für die am USB angeschlossenen Einheiten bereitstellt. Zu diesen Einheiten gehören die Webcam (Kamera) 1250, der Infrarot-Empfänger (IR-Empfänger) 1248, die Tastatur und das Trackpad 1244 und die Bluetooth-Einheit 1246, die drahtlose Wireless Personal Area Networks (PANs) bereitstellt. Die USB-Steuereinheit 1240 stellt ebenfalls USB-Verbindungen für verschiedene andere über USB angeschlossene Einheiten 1242 bereit, zum Beispiel für eine Maus, für die nichtflüchtige Wechselspeichereinheit 1245, für Modems, Netzwerkkarten, ISDN-Steckverbinder, Fax, Drucker, USB-Hubs und viele andere über USB angeschlossene Einheiten. Obwohl die nichtflüchtige Wechselspeichereinheit 1245 als eine über USB angeschlossene Einheit dargestellt ist, könnte sie auch mithilfe anderer Schnittstellen angeschlossen sein, zum Beispiel mithilfe einer Firewire-Schnittstelle usw.
  • Die drahtlose LAN-Einheit (LAN = Wireless Local Area Network) 1275 ist mit der Southbridge 1235 über den PCI- oder PCI-Express-Bus 1272 verbunden. Die LAN-Einheit 1275 funktioniert normalerweise auf der Grundlage einer der Normen gemäß IEEE 802.11, in denen die Verfahren zur Modulation über die Luftschnittstelle geregelt sind, wobei bei all diesen Verfahren dasselbe Protokoll zum drahtlosen Datenaustausch zwischen dem Informationsverarbeitungssystem 1200 und einem anderen Computersystem oder einer anderen Einheit verwendet wird. Die optische Speichereinheit 1290 ist über den SATA-Bus (SATA = Serial ATA) 1288 mit der Southbridge 1235 verbunden. Serial-ATA-Adapter und -Einheiten tauschen Daten über eine schnelle serielle Verbindung miteinander aus. Der Serial-ATA-Bus verbindet außerdem die Southbridge 1235 mit anderen Formen von Speichereinheiten, zum Beispiel mit Festplattenlaufwerken. Die Audio-Schaltung 1260, zum Beispiel eine Soundkarte, ist über den Bus 1258 mit der Southbridge 1235 verbunden. Die Audio-Schaltung 1260 stellt außerdem Funktionalitäten wie zum Beispiel einen Anschluss 1262 für den Audio-Leitungseingang (Line-in) und optische digitale Audiosignale, eine Ausgangsbuchse 1264 für optische digitale Ausgangssignale und Kopfhörer, interne Lautsprecher 1266 und ein internes Mikrofon 1268 bereit. Die Ethernet-Steuereinheit 1270 ist mit der Southbridge 1235 über einen Bus verbunden, zum Beispiel über den PCI- oder den PCI-Express-Bus. Die Ethernet-Steuereinheit 1270 verbindet das Informationsverarbeitungssystem 1200 mit einem Computernetzwerk wie zum Beispiel mit einem Local Area Network (LAN), dem Internet und mit anderen öffentlichen und privaten Computernetzwerken.
  • Obwohl 12 ein Informationsverarbeitungssystem zeigt, kann ein Informationsverarbeitungssystem viele Formen annehmen. Beispielsweise kann ein Informationsverarbeitungssystem die Form eines Desktops, Servers, transportablen Computers, Laptops, Notebooks oder eines Computers oder Datenverarbeitungssystems mit einem anderen Formfaktor annehmen. Darüber hinaus kann ein Informationssystem andere Formfaktoren annehmen, zum Beispiel den eines Personal Digital Assistant (PDA), einer Spieleeinheit, eines Geldautomaten (ATM), einer transportablen Telefoneinheit, einer Kommunikationseinheit oder den Formfaktor anderer Einheiten, die einen Prozessor und einen Speicher enthalten.
  • Das zur Bereitstellung von Sicherheitsfunktionen in der 12 gezeigte und hierin beschriebene Trusted Platform Module (TPM 1295) ist lediglich ein Beispiel eines Hardware-Sicherheitsmoduls (HSM). Daher weist das hierin beschriebene und beanspruchte TPM alle Arten von HSM auf, darunter und ohne Beschränkung auf die Aufzählung, Hardware-Sicherheitseinheiten, die der Norm der Trusted Computing Groups (TCG) mit dem Titel „Trusted Platform Module (TPM) Specification Version 1.2” entsprechen. Das TPM ist ein Hardware-Sicherheitsteilsystem, das in eine beliebige Anzahl von Informationsverarbeitungssystemen eingebunden werden kann, zum Beispiel in die in 13 dargestellten Informationsverarbeitungssysteme.
  • 13 stellt eine Erweiterung der in 12 gezeigten Informationsverarbeitungssystem-Umgebung bereit, um zu veranschaulichen, dass die hierin beschriebenen Verfahren auf einer großen Vielfalt von Informationsverarbeitungssystemen durchgeführt werden können, die in einer vernetzten Umgebung arbeiten. Die Arten von Informationssystemen reichen von kleinen Handeinheiten, zum Beispiel dem Handcomputer/Mobiltelefon 1310, bis hin zu Großrechnersystemen wie zum Beispiel dem Großrechner 1370. Zu Beispielen für den Handcomputer 1310 zählen Personal Digital Assistants (PDAs), persönliche Unterhaltungseinheiten wie zum Beispiel MP3-Player, transportable Fernsehgeräte und Compact-Disc-Player. Weitere Beispiele für Informationsverarbeitungssysteme sind mit einem Stift bedienbare Computer oder der Tablet-Computer 1320, der Laptop- oder Notebook-Computer 1330, die Workstation 1340, das Personal-Computer-System 1350 und der Server 1360. Andere Arten von Informationsverarbeitungssystemen, die in 13 nicht im Einzelnen gezeigt sind, sind durch das Informationsverarbeitungssystem 1380 wiedergegeben. Wie gezeigt können die verschiedenen Informationsverarbeitungssysteme mithilfe des Computernetzwerks 1300 miteinander vernetzt sein. Zu den Arten von Computernetzwerken, die zur Verbindung der verschiedenen Informationsverarbeitungssysteme verwendet werden können, gehören Local Area Networks (LANs), Wireless Local Area Networks (WLANs), das Internet, das öffentliche Telefon-Festnetz (Public Switched Telephone Network, PSTN), andere drahtlose Netzwerke und alle anderen Netzwerktopologien, die zur Verbindung der Informationsverarbeitungssysteme untereinander verwendet werden können. Viele der Informationsverarbeitungssysteme enthalten nichtflüchtige Datenspeicher wie zum Beispiel Festplattenlaufwerke und/oder einen nichtflüchtigen Speicher. Bei einigen der in 13 gezeigten Informationsverarbeitungssysteme sind separate nichtflüchtige Datenspeicher abgebildet (der Server 1360 nutzt den nichtflüchtigen Datenspeicher 1365, der Großrechner 1370 nutzt den nichtflüchtigen Datenspeicher 1375, und das Informationsverarbeitungssystem 1380 nutzt den nichtflüchtigen Datenspeicher 1385). Bei dem nichtflüchtigen Datenspeicher kann es sich um eine Komponente handeln, die sich außerhalb der verschiedenen Informationsverarbeitungssysteme befinden oder in eines der Informationsverarbeitungssysteme integriert sein kann. Darüber hinaus kann die nichtflüchtige Wechselspeichereinheit 1245 mithilfe mehrerer Methoden von zwei oder mehr Informationsverarbeitungssystemen gemeinsam genutzt werden, zum Beispiel durch Verbinden der nichtflüchtigen Wechselspeichereinheit 1245 mit einem USB-Anschluss oder mit einem anderen Steckverbinder des Informationsverarbeitungssystems.
  • Obwohl bestimmte Ausführungsformen der vorliegenden Offenbarung dargestellt und beschrieben wurden, wird für den Fachmann offensichtlich sein, dass auf der Grundlage der Erläuterungen im vorliegenden Dokument Änderungen und Modifikationen vorgenommen werden können, ohne von der vorliegenden Offenbarung und ihren weiter gefassten Aspekten abzuweichen. Daher schließen die beigefügten Ansprüche in ihren Schutzbereich alle derartigen Änderungen und Modifikationen als innerhalb des eigentlichen Ideengehalts und Schutzbereiches der vorliegenden Offenbarung liegend ein. Des Weiteren versteht es sich, dass die Offenbarung ausschließlich in den beigefügten Ansprüchen definiert ist. Für den Fachmann wird klar sein, dass, wenn für ein aufgeführtes Anspruchselement eine bestimmte Zahl vorgesehen ist, diese Zahl ausdrücklich im Anspruch erwähnt wird, bei Fehlen einer derartigen Nennung jedoch keine Einschränkung vorliegt. In den folgenden beigefügten Ansprüchen dient die Verwendung einleitender Formulierungen wie z. B. „mindestens ein/eine” und „ein/eine oder mehrere” zur Einleitung von Anspruchselementen und zur Erleichterung des Verständnisses und ist nicht als Einschränkung zu betrachten. Die Verwendung derartiger Formulierungen ist jedoch nicht so auszulegen, dass die Einleitung eines Anspruchselements durch den unbestimmten Artikel „ein/eine” einen bestimmten Anspruch, der ein derartig eingeleitetes Anspruchselement enthält, im Vergleich zu Offenbarungen einschränkt, die nur ein derartiges Element enthalten, selbst wenn derselbe Anspruch die einleitenden Formulierungen „ein/eine oder mehrere” oder „mindestens ein/eine” und unbestimmte Artikel wie „ein” oder „eine” enthält; dasselbe gilt für die Verwendung von bestimmten Artikeln in den Ansprüchen.

Claims (25)

  1. Verfahren, aufweisend: Empfangen einer Nachricht, um eine virtuelle Maschine, die auf einem ersten System ausgeführt wird, auf ein zweites System zu migrieren, wobei das erste System einen ersten Netzwerkadapter aufweist, der zum Senden von Datenpaketen über ein Computernetzwerk verwendet wird; Herauslösen von Hardwarezustandsdaten, die in einem systemeigenen Format in einem ersten Speicherbereich des ersten Netzwerkadapters gespeichert sind, wobei die Hardwarezustandsdaten verwendet werden, um die von der virtuellen Maschine erzeugten Datenpakete zu verarbeiten; Migrieren der virtuellen Maschine auf das zweite System, wobei zum Migrieren das Kopieren der herausgelösten Hardwarezustandsdaten aus dem ersten Speicher auf das zweite System gehört; und Konfigurieren eines zweiten Netzwerkadapters, den das zweite System aufweist, wobei zur Konfiguration das Schreiben der Hardwarezustandsdaten auf einen zweiten Speicher gehört, den der zweite Netzwerkadapter aufweist.
  2. Verfahren nach Anspruch 1, ferner aufweisend: wobei zum Herauslösen das Speichern der Hardwarezustandsdaten in einem ersten gemeinsam genutzten Speicherbereich im ersten System an einer Speicherblock-Anfangsadresse gehört; und wobei zum Konfigurieren das Abrufen der Hardwarezustandsdaten aus einem zweiten gemeinsam genutzten Speicherbereich im zweiten System an der Speicherblock-Anfangsadresse gehört.
  3. Verfahren nach Anspruch 1, ferner aufweisend: Nutzen der Hardwarezustandsdaten in dem systemeigenen Format, um das Konfigurieren des zweiten Netzwerkadapters durchzuführen.
  4. Verfahren nach Anspruch 1, ferner aufweisend: Einrichten einer Verbindung zwischen einem ersten Hypervisor, den das erste System aufweist, und einem zweiten Hypervisor, den das zweite System aufweist; durch den zweiten Hypervisor das Zuordnen von Speicherplatz auf dem zweiten System, auf den die virtuelle Maschine migriert werden soll; und Übertragen der virtuellen Maschine vom ersten Hypervisor auf den zweiten Hypervisor in einem Datenstrom, wobei der zweite Hypervisor die virtuelle Maschine im zugeordneten Speicherplatz speichert.
  5. Verfahren nach Anspruch 4, ferner aufweisend: durch den zweiten Hypervisor das Senden eines Zustandseinfügebefehls an den zweiten Netzwerkadapter, wobei der Zustandseinfügebefehl den zweiten Netzwerkadapter anweist, die Hardwarezustandsdaten von einer Speicherblock-Anfangsadresse abzurufen, die im zugeordneten Speicherplatz enthalten ist.
  6. Verfahren nach Anspruch 1, ferner aufweisend: durch das erste System das Stillsetzen von E/A- und Speicher-Transaktionen vor der Migration, die der ersten virtuellen Maschine entsprechen; und Wiederaufnehmen der Ausführung der virtuellen Maschine durch das zweite System nach der Migration in einem Stadium unmittelbar vor dem Stillsetzen auf dem ersten System.
  7. Verfahren nach Anspruch 1, wobei der erste Netzwerkadapter die Datenpakete gemäß einem zustandsbehafteten Auslagerungsformat verarbeitet, das ausgewählt ist aus der Gruppe, bestehend aus einem RDMA-Format (RDMA = Remote Direct Memory Access), einem iWARP-Format (iWARP = Internet Wide RDMA Protocol), einem IB-Format (IB = Infiniband) und einem TOE-Format (TOE = TCP Offload Engine).
  8. Verfahren nach Anspruch 1, ferner aufweisend: wobei die Datenpakete durch den ersten Netzwerkadapter über eine Überlagerungsnetzwerk-Umgebung gesendet werden und die Überlagerungsnetzwerk-Umgebung ein oder mehrere virtuelle Netzwerke aufweist, die unabhängig von Einschränkungen der physischen Topologie eines physischen Netzwerks sind; und wobei die Überlagerungsnetzwerk-Umgebung einen verteilten Richtliniendienst aufweist und der verteilte Richtliniendienst feststellt, dass der erste Netzwerkadapter und der zweite Netzwerkadapter gleichwertig sind.
  9. Informationsverarbeitungssystem, aufweisend: einen oder mehrere Prozessoren; einen Speicher, der mit mindestens einem der Prozessoren verbunden ist; eine Gruppe von Computerprogrammanweisungen, die im Speicher gespeichert sind und durch mindestens einen der Prozessoren ausgeführt werden, um die Aktionen durchzuführen: Empfangen einer Nachricht, um eine virtuelle Maschine, die auf einem ersten System ausgeführt wird, auf ein zweites System zu migrieren, wobei das erste System einen ersten Netzwerkadapter aufweist, der zum Senden von Datenpaketen über ein Computernetzwerk verwendet wird; Herauslösen von Hardwarezustandsdaten, die in einem systemeigenen Format in einem ersten Speicherbereich des ersten Netzwerkadapters gespeichert sind, wobei die Hardwarezustandsdaten verwendet werden, um die von der virtuellen Maschine erzeugten Datenpakete zu verarbeiten; Migrieren der virtuellen Maschine auf das zweite System, wobei zum Migrieren das Kopieren der herausgelösten Hardwarezustandsdaten aus dem ersten Speicher auf das zweite System gehört; und Konfigurieren eines zweiten Netzwerkadapters, den das zweite System aufweist, wobei zur Konfiguration das Schreiben der Hardwarezustandsdaten auf einen zweiten Speicher gehört, den der zweite Netzwerkadapter aufweist.
  10. Informationsverarbeitungssystem nach Anspruch 9, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: wobei zum Herauslösen das Speichern der Hardwarezustandsdaten in einem ersten gemeinsam genutzten Speicherbereich im ersten System an einer Speicherblock-Anfangsadresse gehört; und wobei zum Konfigurieren das Abrufen der Hardwarezustandsdaten aus einem zweiten gemeinsam genutzten Speicherbereich im zweiten System an der Speicherblock-Anfangsadresse gehört.
  11. Informationsverarbeitungssystem nach Anspruch 9, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: Nutzen der Hardwarezustandsdaten in dem systemeigenen Format, um das Konfigurieren des zweiten Netzwerkadapters durchzuführen.
  12. Informationsverarbeitungssystem nach Anspruch 9, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: Einrichten einer Verbindung zwischen einem ersten Hypervisor, den das erste System aufweist, und einem zweiten Hypervisor, den das zweite System aufweist; durch den zweiten Hypervisor das Zuordnen von Speicherplatz auf dem zweiten System, auf den die virtuelle Maschine migriert werden soll; und Übertragen der virtuellen Maschine vom ersten Hypervisor auf den zweiten Hypervisor in einem Datenstrom, wobei der zweite Hypervisor die virtuelle Maschine im zugeordneten Speicherplatz speichert.
  13. Informationsverarbeitungssystem nach Anspruch 12, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: durch den zweiten Hypervisor das Senden eines Zustandseinfügebefehls an den zweiten Netzwerkadapter, wobei der Zustandseinfügebefehl den zweiten Netzwerkadapter anweist, die Hardwarezustandsdaten von einer Speicherblock-Anfangsadresse abzurufen, die im zugeordneten Speicherplatz enthalten ist.
  14. Informationsverarbeitungssystem nach Anspruch 9, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: durch das erste System das Stillsetzen von E/A- und Speicher-Transaktionen vor der Migration, die der ersten virtuellen Maschine entsprechen; und Wiederaufnehmen der Ausführung der virtuellen Maschine durch das zweite System nach der Migration in einem Stadium unmittelbar vor dem Stillsetzen auf dem ersten System.
  15. Informationsverarbeitungssystem nach Anspruch 9, wobei der erste Netzwerkadapter die Datenpakete gemäß einem zustandsbehafteten Auslagerungsformat verarbeitet, das ausgewählt ist aus der Gruppe, bestehend aus einem RDMA-Format (RDMA = Remote Direct Memory Access), einem iWARP-Format (iWARP = Internet Wide RDMA Protocol), einem IB-Format (IB = Infiniband) und einem TOE-Format (TOE = TCP Offload Engine).
  16. Informationsverarbeitungssystem nach Anspruch 9, wobei die Prozessoren zusätzliche Aktionen durchführen, aufweisend: wobei die Datenpakete durch den ersten Netzwerkadapter über eine Überlagerungsnetzwerk-Umgebung gesendet werden und die Überlagerungsnetzwerk-Umgebung ein oder mehrere virtuelle Netzwerke aufweist, die unabhängig von Einschränkungen der physischen Topologie eines physischen Netzwerks sind; und wobei die Überlagerungsnetzwerk-Umgebung einen verteilten Richtliniendienst aufweist und der verteilte Richtliniendienst feststellt, dass der erste Netzwerkadapter und der zweite Netzwerkadapter gleichwertig sind.
  17. Computerprogrammprodukt, das auf einem computerlesbaren Medium gespeichert ist und Computerprogrammcode aufweist, der bei Ausführung durch ein Informationsverarbeitungssystem das Informationsverarbeitungssystem veranlasst, Aktionen durchzuführen, aufweisend: Empfangen einer Nachricht, um eine virtuelle Maschine, die auf einem ersten System ausgeführt wird, auf ein zweites System zu migrieren, wobei das erste System einen ersten Netzwerkadapter aufweist, der zum Senden von Datenpaketen über ein Computernetzwerk verwendet wird; Herauslösen von Hardwarezustandsdaten, die in einem systemeigenen Format in einem ersten Speicherbereich des ersten Netzwerkadapters gespeichert sind, wobei die Hardwarezustandsdaten verwendet werden, um die von der virtuellen Maschine erzeugten Datenpakete zu verarbeiten; Migrieren der virtuellen Maschine auf das zweite System, wobei zum Migrieren das Kopieren der herausgelösten Hardwarezustandsdaten aus dem ersten Speicher auf das zweite System gehört; und Konfigurieren eines zweiten Netzwerkadapters, den das zweite System aufweist, wobei zur Konfiguration das Schreiben der Hardwarezustandsdaten auf einen zweiten Speicher gehört, den der zweite Netzwerkadapter aufweist.
  18. Computerprogrammprodukt nach Anspruch 17, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: wobei zum Herauslösen das Speichern der Hardwarezustandsdaten in einem ersten gemeinsam genutzten Speicherbereich im ersten System an einer Speicherblock-Anfangsadresse gehört; und wobei zum Konfigurieren das Abrufen der Hardwarezustandsdaten aus einem zweiten gemeinsam genutzten Speicherbereich im zweiten System an der Speicherblock-Anfangsadresse gehört.
  19. Computerprogrammprodukt nach Anspruch 17, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: Nutzen der Hardwarezustandsdaten in dem systemeigenen Format, um das Konfigurieren des zweiten Netzwerkadapters durchzuführen.
  20. Computerprogrammprodukt nach Anspruch 17, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: Einrichten einer Verbindung zwischen einem ersten Hypervisor, den das erste System aufweist, und einem zweiten Hypervisor, den das zweite System aufweist; durch den zweiten Hypervisor das Zuordnen von Speicherplatz auf dem zweiten System, auf den die virtuelle Maschine migriert werden soll; und Übertragen der virtuellen Maschine vom ersten Hypervisor auf den zweiten Hypervisor in einem Datenstrom, wobei der zweite Hypervisor die virtuelle Maschine im zugeordneten Speicherplatz speichert.
  21. Computerprogrammprodukt nach Anspruch 20, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: durch den zweiten Hypervisor das Senden eines Zustandseinfügebefehls an den zweiten Netzwerkadapter, wobei der Zustandseinfügebefehl den zweiten Netzwerkadapter anweist, die Hardwarezustandsdaten von einer Speicherblock-Anfangsadresse abzurufen, die im zugeordneten Speicherplatz enthalten ist.
  22. Computerprogrammprodukt nach Anspruch 17, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: durch das erste System das Stillsetzen von E/A- und Speicher-Transaktionen vor der Migration, die der ersten virtuellen Maschine entsprechen; und Wiederaufnehmen der Ausführung der virtuellen Maschine durch das zweite System nach der Migration in einem Stadium unmittelbar vor dem Stillsetzen auf dem ersten System.
  23. Computerprogrammprodukt nach Anspruch 17, wobei der erste Netzwerkadapter die Datenpakete gemäß einem zustandsbehafteten Auslagerungsformat verarbeitet, das ausgewählt ist aus der Gruppe, bestehend aus einem RDMA-Format (RDMA = Remote Direct Memory Access), einem iWARP-Format (iWARP = Internet Wide RDMA Protocol), einem IB-Format (IB = Infiniband) und einem TOE-Format (TOE = TCP Offload Engine).
  24. Computerprogrammprodukt nach Anspruch 17, wobei das Informationsverarbeitungssystem zusätzliche Aktionen durchführt, aufweisend: wobei die Datenpakete durch den ersten Netzwerkadapter über eine Überlagerungsnetzwerk-Umgebung gesendet werden und die Überlagerungsnetzwerk-Umgebung ein oder mehrere virtuelle Netzwerke aufweist, die unabhängig von Einschränkungen der physischen Topologie eines physischen Netzwerks sind; und wobei die Überlagerungsnetzwerk-Umgebung einen verteilten Richtliniendienst aufweist und der verteilte Richtliniendienst feststellt, dass der erste Netzwerkadapter und der zweite Netzwerkadapter gleichwertig sind.
  25. Verfahren, aufweisend: Empfangen einer Nachricht, um eine virtuelle Maschine, die auf einem ersten System ausgeführt wird, auf ein zweites System zu migrieren, wobei das erste System einen ersten Netzwerkadapter aufweist, der zum Senden von Datenpaketen über ein Computernetzwerk verwendet wird; Herauslösen von Hardwarezustandsdaten, die in einem systemeigenen Format in einem ersten Speicherbereich des ersten Netzwerkadapters gespeichert sind, wobei die Hardwarezustandsdaten verwendet werden, um die von der virtuellen Maschine erzeugten Datenpakete zu verarbeiten; Speichern der herausgelösten Hardwarezustandsdaten in einem ersten gemeinsam genutzten Speicherbereich im ersten System an einer Speicherblock-Anfangsadresse; Einrichten einer Verbindung zwischen einem ersten Hypervisor, den das erste System aufweist, und einem zweiten Hypervisor, den das zweite System aufweist; Migrieren der virtuellen Maschine auf das zweite System unter Verwendung der eingerichteten Verbindung, wobei zum Migrieren das Kopieren der Hardwarezustandsdaten aus dem ersten gemeinsam genutzten Speicherbereich auf einen zweiten gemeinsam genutzten Speicherbereich gehört, der sich auf dem zweiten System befindet; Abrufen der Hardwarezustandsdaten aus dem zweiten gemeinsam genutzten Speicherbereich an der Speicherblock-Anfangsadresse; und Konfigurieren eines zweiten Netzwerkadapters, den das zweite System aufweist, wobei zur Konfiguration das Schreiben der abgerufenen Hardwarezustandsdaten auf einen zweiten Speicher gehört, den der zweite Netzwerkadapter aufweist.
DE112012003776.6T 2011-10-04 2012-09-26 Migration logischer Partitionen mit zustandsbehafteten Auslagerungsdatenverbindungen während des laufenden Betriebs unter Verwendung der Kontextherauslösung und -einfügung Ceased DE112012003776T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/252,676 US20130086298A1 (en) 2011-10-04 2011-10-04 Live Logical Partition Migration with Stateful Offload Connections Using Context Extraction and Insertion
US13/252,676 2011-10-04
PCT/CN2012/082051 WO2013049990A1 (en) 2011-10-04 2012-09-26 Live logical partition migration with stateful offload connections using context extraction and insertion

Publications (1)

Publication Number Publication Date
DE112012003776T5 true DE112012003776T5 (de) 2014-06-18

Family

ID=47993703

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012003776.6T Ceased DE112012003776T5 (de) 2011-10-04 2012-09-26 Migration logischer Partitionen mit zustandsbehafteten Auslagerungsdatenverbindungen während des laufenden Betriebs unter Verwendung der Kontextherauslösung und -einfügung

Country Status (4)

Country Link
US (2) US20130086298A1 (de)
DE (1) DE112012003776T5 (de)
GB (1) GB2509463B (de)
WO (1) WO2013049990A1 (de)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2558892A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for a self-optimizing reservation in time of compute resources
CA2827035A1 (en) 2004-11-08 2006-05-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9329886B2 (en) * 2010-12-10 2016-05-03 Amazon Technologies, Inc. Virtual machine morphing for heterogeneous migration environments
US20130083690A1 (en) * 2011-10-04 2013-04-04 International Business Machines Corporation Network Adapter Hardware State Migration Discovery in a Stateful Environment
US8793528B2 (en) * 2011-11-30 2014-07-29 Oracle International Corporation Dynamic hypervisor relocation
US9049257B2 (en) * 2011-12-19 2015-06-02 Vmware, Inc. Methods and apparatus for an E-mail-based management interface for virtualized environments
US9032160B1 (en) * 2011-12-29 2015-05-12 Emc Corporation Continuous data replication
US9237188B1 (en) 2012-05-21 2016-01-12 Amazon Technologies, Inc. Virtual machine based content processing
US9804798B2 (en) 2012-12-14 2017-10-31 Vmware, Inc. Storing checkpoint file in high performance storage device for rapid virtual machine suspend and resume
US11132277B2 (en) * 2012-12-28 2021-09-28 Iii Holdings 2, Llc System and method for continuous low-overhead monitoring of distributed applications running on a cluster of data processing nodes
US9830236B2 (en) * 2013-06-05 2017-11-28 Vmware, Inc. System and method for assigning memory reserved for high availability failover to virtual machines
US10002059B2 (en) 2013-06-13 2018-06-19 Vmware, Inc. System and method for assigning memory available for high availability failover to virtual machines
US9654390B2 (en) 2013-09-03 2017-05-16 Cisco Technology, Inc. Method and apparatus for improving cloud routing service performance
US9053068B2 (en) 2013-09-25 2015-06-09 Red Hat Israel, Ltd. RDMA-based state transfer in virtual machine live migration
CN105556493B (zh) * 2013-09-27 2018-12-11 英特尔公司 用于跨设备组合存储器资源的设备、方法
US9787590B2 (en) 2014-03-25 2017-10-10 Mellanox Technologies, Ltd. Transport-level bonding
US9858058B2 (en) 2014-03-31 2018-01-02 International Business Machines Corporation Partition mobility for partitions with extended code
US20170046199A1 (en) * 2014-04-30 2017-02-16 Hewlett-Packard Development Company, L.P. Migrating objects from a source service to a target service
US11182185B2 (en) * 2014-06-27 2021-11-23 Vmware, Inc. Network-based signaling to control virtual machine placement
US10038629B2 (en) 2014-09-11 2018-07-31 Microsoft Technology Licensing, Llc Virtual machine migration using label based underlay network forwarding
US9936014B2 (en) 2014-10-26 2018-04-03 Microsoft Technology Licensing, Llc Method for virtual machine migration in computer networks
US9923800B2 (en) 2014-10-26 2018-03-20 Microsoft Technology Licensing, Llc Method for reachability management in computer networks
US9811367B2 (en) * 2014-11-13 2017-11-07 Nsp Usa, Inc. Method and apparatus for combined hardware/software VM migration
US9928093B2 (en) 2015-02-24 2018-03-27 Red Hat Israel, Ltd. Methods and systems for establishing connections associated with virtual machine migrations
US11005710B2 (en) 2015-08-18 2021-05-11 Microsoft Technology Licensing, Llc Data center resource tracking
CN105184192A (zh) * 2015-08-26 2015-12-23 宇龙计算机通信科技(深圳)有限公司 一种双操作系统的音频数据处理方法和装置
US10305976B2 (en) * 2015-09-21 2019-05-28 Intel Corporation Method and apparatus for dynamically offloading execution of machine code in an application to a virtual machine
US10581711B2 (en) * 2016-01-28 2020-03-03 Oracle International Corporation System and method for policing network traffic flows using a ternary content addressable memory in a high performance computing environment
US10659340B2 (en) 2016-01-28 2020-05-19 Oracle International Corporation System and method for supporting VM migration between subnets in a high performance computing environment
US10666611B2 (en) 2016-01-28 2020-05-26 Oracle International Corporation System and method for supporting multiple concurrent SL to VL mappings in a high performance computing environment
US10348847B2 (en) 2016-01-28 2019-07-09 Oracle International Corporation System and method for supporting proxy based multicast forwarding in a high performance computing environment
US10630816B2 (en) 2016-01-28 2020-04-21 Oracle International Corporation System and method for supporting shared multicast local identifiers (MILD) ranges in a high performance computing environment
US10348649B2 (en) 2016-01-28 2019-07-09 Oracle International Corporation System and method for supporting partitioned switch forwarding tables in a high performance computing environment
US10536334B2 (en) 2016-01-28 2020-01-14 Oracle International Corporation System and method for supporting subnet number aliasing in a high performance computing environment
US10333894B2 (en) 2016-01-28 2019-06-25 Oracle International Corporation System and method for supporting flexible forwarding domain boundaries in a high performance computing environment
US10616118B2 (en) 2016-01-28 2020-04-07 Oracle International Corporation System and method for supporting aggressive credit waiting in a high performance computing environment
US10355972B2 (en) 2016-01-28 2019-07-16 Oracle International Corporation System and method for supporting flexible P_Key mapping in a high performance computing environment
US9846602B2 (en) * 2016-02-12 2017-12-19 International Business Machines Corporation Migration of a logical partition or virtual machine with inactive input/output hosting server
US10042720B2 (en) * 2016-02-22 2018-08-07 International Business Machines Corporation Live partition mobility with I/O migration
US10002018B2 (en) * 2016-02-23 2018-06-19 International Business Machines Corporation Migrating single root I/O virtualization adapter configurations in a computing system
US10042723B2 (en) 2016-02-23 2018-08-07 International Business Machines Corporation Failover of a virtual function exposed by an SR-IOV adapter
US10025584B2 (en) 2016-02-29 2018-07-17 International Business Machines Corporation Firmware management of SR-IOV adapters
US9720863B1 (en) 2016-10-21 2017-08-01 International Business Machines Corporation Migrating MMIO from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system
US9785451B1 (en) 2016-10-21 2017-10-10 International Business Machines Corporation Migrating MMIO from a source I/O adapter of a computing system to a destination I/O adapter of the computing system
US9715469B1 (en) 2016-10-21 2017-07-25 International Business Machines Corporation Migrating interrupts from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system
US9760512B1 (en) * 2016-10-21 2017-09-12 International Business Machines Corporation Migrating DMA mappings from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system
US9720862B1 (en) 2016-10-21 2017-08-01 International Business Machines Corporation Migrating interrupts from a source I/O adapter of a computing system to a destination I/O adapter of the computing system
US10360058B2 (en) * 2016-11-28 2019-07-23 International Business Machines Corporation Input/output component selection for virtual machine migration
US10579437B2 (en) 2016-12-01 2020-03-03 International Business Machines Corporation Migrating a logical partition with a native logical port
US10346191B2 (en) * 2016-12-02 2019-07-09 Wmware, Inc. System and method for managing size of clusters in a computing environment
US10942758B2 (en) * 2017-04-17 2021-03-09 Hewlett Packard Enterprise Development Lp Migrating virtual host bus adaptors between sets of host bus adaptors of a target device in order to reallocate bandwidth to enable virtual machine migration
US10956242B1 (en) * 2017-12-06 2021-03-23 Amazon Technologies, Inc. Automating the migration of web service implementations to a service provider system
US10901781B2 (en) 2018-09-13 2021-01-26 Cisco Technology, Inc. System and method for migrating a live stateful container
CN112002080B (zh) * 2019-05-27 2022-02-15 中电金融设备系统(深圳)有限公司 银行终端机、银行终端设备及信息安全的处理方法
US11474857B1 (en) * 2020-05-06 2022-10-18 Amazon Technologies, Inc. Accelerated migration of compute instances using offload cards
US11870647B1 (en) 2021-09-01 2024-01-09 Amazon Technologies, Inc. Mapping on-premise network nodes to cloud network nodes

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156490B2 (en) 2004-05-08 2012-04-10 International Business Machines Corporation Dynamic migration of virtual machine computer programs upon satisfaction of conditions
US7257811B2 (en) * 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
US7656894B2 (en) 2005-10-28 2010-02-02 Microsoft Corporation Offloading processing tasks to a peripheral device
US8521912B2 (en) 2006-01-12 2013-08-27 Broadcom Corporation Method and system for direct device access
US7484029B2 (en) 2006-02-09 2009-01-27 International Business Machines Corporation Method, apparatus, and computer usable program code for migrating virtual adapters from source physical adapters to destination physical adapters
US20080189432A1 (en) 2007-02-02 2008-08-07 International Business Machines Corporation Method and system for vm migration in an infiniband network
US8005013B2 (en) 2007-06-12 2011-08-23 Hewlett-Packard Development Company, L.P. Managing connectivity in a virtual network
US7937698B2 (en) 2007-08-02 2011-05-03 International Business Machines Corporation Extensible mechanism for automatically migrating resource adapter components in a development environment
CN100553214C (zh) 2007-09-17 2009-10-21 北京航空航天大学 移动虚拟环境系统
US7984123B2 (en) 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
US8046550B2 (en) * 2008-07-14 2011-10-25 Quest Software, Inc. Systems and methods for performing backup operations of virtual machine files
US8146082B2 (en) 2009-03-25 2012-03-27 Vmware, Inc. Migrating virtual machines configured with pass-through devices
WO2010127365A1 (en) * 2009-05-01 2010-11-04 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
US8335943B2 (en) 2009-06-22 2012-12-18 Citrix Systems, Inc. Systems and methods for stateful session failover between multi-core appliances
CN101593133B (zh) 2009-06-29 2012-07-04 北京航空航天大学 虚拟机资源负载均衡方法及装置
US8504690B2 (en) 2009-08-07 2013-08-06 Broadcom Corporation Method and system for managing network power policy and configuration of data center bridging
US9158567B2 (en) 2009-10-20 2015-10-13 Dell Products, Lp System and method for reconfigurable network services using modified network configuration with modified bandwith capacity in dynamic virtualization environments
US8244957B2 (en) 2010-02-26 2012-08-14 Red Hat Israel, Ltd. Mechanism for dynamic placement of virtual machines during live migration based on memory
US8510590B2 (en) 2010-03-17 2013-08-13 Vmware, Inc. Method and system for cluster resource management in a virtualized computing environment
US9223616B2 (en) 2011-02-28 2015-12-29 Red Hat Israel, Ltd. Virtual machine resource reduction for live migration optimization
US20130034094A1 (en) 2011-08-05 2013-02-07 International Business Machines Corporation Virtual Switch Data Control In A Distributed Overlay Network
US8660124B2 (en) 2011-08-05 2014-02-25 International Business Machines Corporation Distributed overlay network data traffic management by a virtual server
US8782128B2 (en) 2011-10-18 2014-07-15 International Business Machines Corporation Global queue pair management in a point-to-point computer network

Also Published As

Publication number Publication date
GB2509463B (en) 2020-06-17
US9588807B2 (en) 2017-03-07
GB201407143D0 (en) 2014-06-04
US20130086200A1 (en) 2013-04-04
WO2013049990A1 (en) 2013-04-11
US20130086298A1 (en) 2013-04-04
GB2509463A (en) 2014-07-02

Similar Documents

Publication Publication Date Title
DE112012003776T5 (de) Migration logischer Partitionen mit zustandsbehafteten Auslagerungsdatenverbindungen während des laufenden Betriebs unter Verwendung der Kontextherauslösung und -einfügung
DE112012003808T5 (de) Ermittlung der Migration des Netzwerkadapter-Hardwarezustands in einer zustandsbehafteten Umgebung
DE112012003336B4 (de) Optimiertes Cachespeichern von Umsetzungseinträgen für virtuelle Funktionen
DE112012003342T5 (de) Dynamisches Anpassen und Begrenzen der Größe des Netzwerkadapterspeichers zur Speicherung von Umsetzungseinträgen für virtuelle Funktionen
DE112016000258B4 (de) Gruppieren von nichtflüchtigem speicher auf grundlage von hosts mithilfe von zugeordnetem netzwerkspeicher
DE112016003120B4 (de) Umleiten einer Kopie beim Schreiben
DE112020006859T5 (de) Beibehaltung von speicher-namensraum-identifizierern für die migration von virtualisierten ausführungsumgebungen im laufenden betrieb
DE112011100392B4 (de) Ressourcenaffinität durch dynamisches hinzufügen oder entfernen von warteschlangenpaaren für netzadapter mit software zur empfangsseitigen skalierung (rss)
DE112012004550B4 (de) Verfahren, System und Vorrichtung zur Zustandsmigration für einen Remote Direct Memory Access-Adapter in einer virtuellen Umgebung
DE112011103082B4 (de) Mehrere virtuelle Maschinen mit gemeinsamer Nutzung einer einzigen IP-Adresse
DE112010004160T5 (de) Portieren virtueller Abbilder zwischen Plattformen
DE112013001904T5 (de) Paketvermittlung auf der Ebene 2 ohne Nachschlagetabelle für Ethernet-Switches
DE112012002404B4 (de) Konfiguration und Management virtueller Netzwerke
DE102018115251A1 (de) Technologien zum Schutz eines virtuellen Maschinenspeichers
DE112020003929B4 (de) Verwaltung von metadaten von virtuellen speichern
DE102018202432A1 (de) Strukturunterstützung für die Dienstgüte
DE112016005933T5 (de) Technologien zum Durchsetzen einer Netzwerkzugriffssteuerung fiir virtuelle Maschinen
DE112020006858T5 (de) Dynamische interrupt-bereitstellung
US20150195213A1 (en) Request distribution method and information processing apparatus
DE112018006769T5 (de) Erweiterte zwischenspeicherzuweisung basierend auf virtuellen knotenressourcen
DE102021109231A1 (de) Bedienungssystem installation mechanismus
CN106648838B (zh) 一种资源池管理的配置方法及装置
DE112019005392T5 (de) Steigern von datenleistung durch transferieren von daten zwischen speicherebenen unter verwendung von arbeitslastmerkmalen
DE112017005453T5 (de) Konfiguration verteilter Datenverarbeitungssysteme
DE112014001397T5 (de) Flussrichterbasierter Niedriglatenznetzwerkbetrieb

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: G06F0012000000

Ipc: G06F0009440000

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final