DE112013000395T5 - Richtliniendurchsetzung in Rechenumgebung - Google Patents

Richtliniendurchsetzung in Rechenumgebung Download PDF

Info

Publication number
DE112013000395T5
DE112013000395T5 DE201311000395 DE112013000395T DE112013000395T5 DE 112013000395 T5 DE112013000395 T5 DE 112013000395T5 DE 201311000395 DE201311000395 DE 201311000395 DE 112013000395 T DE112013000395 T DE 112013000395T DE 112013000395 T5 DE112013000395 T5 DE 112013000395T5
Authority
DE
Germany
Prior art keywords
policies
computing environment
cloud computing
partially
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE201311000395
Other languages
English (en)
Other versions
DE112013000395B4 (de
Inventor
Uri Elzur
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112013000395T5 publication Critical patent/DE112013000395T5/de
Application granted granted Critical
Publication of DE112013000395B4 publication Critical patent/DE112013000395B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)

Abstract

Eine Ausführungsform kann Richtlinien-Engine-Schaltungen umfassen, die zumindest teilweise eine oder mehrere Plattformressourcen-Verwaltungsrichtlinien in einer Cloud-Rechenumgebung durchsetzen. Die eine oder die mehreren Richtlinien können zumindest teilweise auf Dienstvereinbarungen der Cloud-Rechenumgebung gründen. Die eine oder mehreren Richtlinien können entsprechende isolierte Rechenumgebungen in der Cloud-Rechenumgebung einrichten, die durch entsprechende Benutzer verwendet werden können. Die Durchsetzung der einen oder mehreren Richtlinien kann zur Folge haben, dass die entsprechenden isolierten Rechenumgebungen virtuell voneinander isoliert werden und verhindert wird, dass sie einander in Abweichung von der einen oder den mehreren Richtlinien stören. Die eine oder mehreren Richtlinien können zumindest teilweise über Interaktion von mindestens einem Verwaltungsprozess mit einer oder mehreren Anwendungsprogrammschnittstellen der Schaltungen eingerichtet werden. Viele Abwandlungen sind möglich.

Description

  • GEBIET DER ERFINDUNG
  • Diese Offenbarung betrifft die Richtliniendurchsetzung in einer Rechenumgebung.
  • STAND DER TECHNIK
  • In einer herkömmlichen Anordnung werden die Ressourcen eines verteilten Rechensystems von mehreren Benutzern gemeinsam benutzt. Die Ressourcen werden unter Verwendung von Virtualisierung und/oder anderen Techniken (z. B. auf physikalischer Basis) gemäß Nutzungsrichtlinien gemeinsam benutzt, die von Benutzerdienstvereinbarungen abgeleitet werden. In dieser herkömmlichen Anordnung werden solche Nutzungsrichtlinien entweder zentralisiert durch einen zentralisierten Kontrollmechanismus, der entfernt von einem einzelnen entsprechenden Rechenknoten im System angeordnet ist, oder auf lokalisierte Art und Weise durch entsprechende lokalisierte Kontrollmechanismen an jedem entsprechenden Rechenknoten eingestellt aber die Durchsetzung kann bei den lokalen Rechenknoten stattfinden. In dieser herkömmlichen Anordnung werden Softwareprozesse, wie beispielsweise Verfahren für virtual Switching (vSwitch) mit virtuellen Maschinen in diesen Mechanismen eingesetzt, um die Interaktion der virtuellen Maschinen mit verschiedenen Infrastrukturkomponenten im System zu steuern.
  • Unglücklicherweise kann die Verwendung solcher herkömmlicher Mechanismen und/oder Softwareprozesse (z. B. vSwitch) übermäßigen, inkonsistenten und/oder erheblich schwankenden Overhead der Zentraleinheit (Central Processing Unit – CPU) in den Rechenknoten im System zur Folge haben. Dies kann nachteilige Auswirkungen auf die Leistung der CPU und/oder des Rechenknotens haben (z. B. erhöhte Latenz und Latenzabweichung, auch als Jitter bekannt). Zusätzlich kann es bei Zunahmen bei der Netzwerkbandbreite, Netzwerkübertragungsgeschwindigkeit, den bereitgestellten Diensten und/oder der Anzahl der Rechenknoten und/oder Richtlinien im System schwierig sein, die Verwendung solcher herkömmlicher Mechanismen und/oder Softwareverfahren zu skalieren, ohne dass dies unerwünscht hohe Anstiege des Virtualisierungsverarbeitungsoverheads, der Gefahr von Netzwerkübertragungsverlusten und/oder Verarbeitungslatenzen zur Folge hat.
  • Die vorhergehende herkömmliche Anordnung birgt zusätzliche Nachteile und/oder Rückschritte. Zum Beispiel kann das vorhergehende herkömmliche System nicht in der Lage sein, Echtzeit- oder Nahezu-Echtzeit Feingranularität für vorzunehmende Dienstgüteeinstellungen und/oder eine statistisch genaue Sichtbarkeit von Arbeitsbelastungen und/oder Ressourcennutzungen bereitzustellen, wenn sich die Arbeitsbelastungen und/oder Nutzungen in und/oder unter den Rechenknoten ändern. Dies trifft insbesondere in Fällen zu, in denen die Einstellungen an und/oder die Sichtbarkeit solcher Arbeitsbelastungen und/oder Nutzungen auf einer Grundlage pro Benutzer/Arbeitsbelastung in Übereinstimmung mit Benutzerdienstvereinbarungen zu erfolgen hat. Zusätzlich beinhaltet die vorhergehende herkömmliche Anordnung keine Erwägung der Integration oder der engen Kopplung von Sicherheitsverfahren in der Infrastruktur des Systems mit Sicherheitsverfahren in den Rechen- und/oder Speicherknoten des Systems. Diese zusätzlichen Nachteile und/oder Rückschritte können die Funktionalität und/oder Effizienz dieser herkömmlichen Anordnung begrenzen und/oder ihre Komplexität und/oder die Kosten für ihren Betrieb und/oder ihre Ausführung erhöhen.
  • Ein weiterer Rückschritt dieser herkömmlichen Anordnung ist, dass ein beträchtlicher Betrag an Programmierung auf niedriger Ebene (z. B. von vielen ungleichartigen Schnittstellen an jedem der einzelnen Knoten des Systems) erforderlich sein kann, um die individuellen Verhaltensweisen der Knoten zu programmieren, um zu versuchen, sie in Einklang mit den Richtlinien und/oder Benutzervereinbarungen zu bringen und/oder damit verträglich zu machen. Dieses Problem kann durch die verschiedenen Typen von Infrastrukturen verschärft werden, die beteiligt sein können (z. B. Rechen-, Netzwerk-, Speicher-, Energie-, Sicherheitsressourcen usw.), unabhängig eingestellt (z. B. über separate Scheduler/Verwaltungsmechanismen) und/oder in ihrem Betrieb und/oder ihrer Nutzung in den Plattformen und/oder in anderen gemeinsam verwendeten Infrastrukturkomponenten in Konflikt stehen oder suboptimal sein können. Wie man ohne Weiteres verstehen wird, kann das Koordinieren der Programmierung dieser Schnittstellen, um dafür zu sorgen, dass sie mit den Richtlinien und/oder Dienstvereinbarungen verträglich sind, eine gewisse Herausforderung darstellen, insbesondere, wenn die Benutzer, Knoten, Anwendungen, virtuellen Maschinen, Arbeitsbelastungen, Ressourcen, Richtlinien und/oder Dienste des Systems sich häufig ändern (z. B. wenn sie zum System hinzugefügt oder davon entfernt werden).
  • Eine vorgeschlagene Lösung, die die Verarbeitung von Netzwerkpaketen in Hardware beinhaltet, wird in Peripheral Component Interconnect (PCI) Special Interest Group (SIG) Single Root Input/Output Virtualization (SR-IOV) and Sharing Specification Revision 1.1 offenbart, die am 20. Januar 2010 veröffentlicht wurde (nachfolgend „SR-IOV-Spezifikation”). Unglücklicherweise beseitigt diese vorgeschlagene Lösung effektiv die Fähigkeit von vSwitch-Verfahren, in der Lage zu sein, direkt auf durch Hardware verarbeitete Pakete einzuwirken. Dies beseitigt die Fähigkeit, lokale Steuerung, Dienste und/oder Richtlinien hinzuzufügen, die mit dem Virtual Machine Manager und/oder vSwitch zu koordinieren sind. Dies verringert die Verarbeitungsflexibilität und/oder die Dienste in dieser herkömmlichen Anordnung und/oder kann die Verwendung von SR-IOV-Hardware beinhalten, um alle solchen Dienste bereitzustellen (was unrealistisch sein kann).
  • KURZBESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
  • Merkmale und Vorteile von Ausführungsformen sind aus der folgenden detaillierten Beschreibung unter Bezugnahme auf die Zeichnungen ersichtlich, wo gleiche Bezugszeichen gleiche Teile bildlich darstellen; es zeigen:
  • 1 eine Veranschaulichung einer Systemausführungsform.
  • 2 eine Veranschaulichung von Merkmalen in einer Ausführungsform.
  • 3 eine Veranschaulichung von Merkmalen in einer Ausführungsform.
  • Obgleich die folgende detaillierte Beschreibung unter Bezugnahme auf veranschaulichende Ausführungsformen fortgesetzt wird, sind für den Fachmann viele Alternativen, Abwandlungen und Varianten davon ersichtlich. Folglich wird beabsichtigt, dass der beanspruchte Erfindungsgegenstand breit aufzufassen ist.
  • DETAILLIERTE BESCHREIBUNG
  • 1 veranschaulicht eine Systemausführungsform 100. Das System 100 kann eine Cloud-Rechenumgebung (Cloud Computing Environment – CCE) 102 umfassen, die viele isolierte Rechenumgebungen (Isolated Computing Environment – ICE) 150A...150N und/oder Richtlinien-Engine-Schaltungen 118 umfassen kann. Die Cloud-Rechenumgebung kann kommunikativ an ein oder mehrere Netzwerke 51 gekoppelt sein.
  • Die Richtlinien-Engine-Schaltungen 118 können eine oder mehrere (und in dieser Ausführungsform mehrere) Anwendungsprogrammierschnittstellen (Application Programming Interface – API) 154, eine/n oder mehrere (und in dieser Ausführungsform mehrere) geschützte Recheninstanzen und/oder Speicherräume 202 und/oder einen oder mehrere (und in dieser Ausführungsform mehrere) Schalter 204 umfassen. Zum Beispiel können ein oder mehrere geschützte Speicherräume 202 mehrere geschützte Recheninstanzen und/oder Speicherräume 202A...202N umfassen. Auch kann/können ein oder mehrere Schalter 204 mehrere Schalter 204A...204N umfassen. In dieser Ausführungsform kann ein/e geschützte Recheninstanz und/oder geschützter Speicherraum einen Prozessor, Speicher und/oder einen oder mehrere Abschnitte davon umfassen, die, zumindest teilweise, nicht unerlaubtem/unerlaubter Zugriff, Verwendung, Eindringen und/oder Untersuchung durch eine oder mehrere Instanzen (z. B. einen Virtual Machine Monitor und/oder andere Prozesse) ausgesetzt sind. Obgleich die folgende Beschreibung unter Bezugnahme auf die Recheninstanzen und/oder Speicherräume 202 fortgesetzt wird, die geschützte Speicherräume sind, versteht sich, das einer oder mehrere davon eine Recheninstanz sein oder umfassen kann, ohne von dieser Ausführungsform abzuweichen.
  • Zusätzlich oder alternativ kann ein geschützter Speicherraum für zusätzliche Netzwerk- und/oder Speicherverarbeitung und/oder andere und/oder zusätzliche Datenverarbeitung auf Steuerungsebene verwendet werden, ohne von dieser Ausführungsform abzuweichen. Zum Beispiel kann ein solcher geschützter Speicherraum (und/oder ein getrennter geschützter Speicherraum) zur vorübergehenden Speicherung eines Netzwerkpakets zum Zweck der Verarbeitung, zumindest teilweise (z. B. einer oder mehrere Köpfe, andere Daten und/oder für Schichten, die zur vollständigen Verarbeitung erforderlich sind) durch Software verwendet werden, um zumindest teilweise einen Dienst und/oder ein Protokoll auszuführen, den/das Hardware gegenwärtig nicht auf diese Art und Weise verarbeiten kann.
  • Die Richtlinien-Engine-Schaltungen 118 können zumindest teilweise eine oder mehrere Plattform-Ressourcen-Verwaltungs-Richtlinie/n 120 in der Cloud-Rechenumgebung 102 durchsetzen. Eine oder mehrere Richtlinien können zumindest teilweise auf (z. B. entsprechenden) Dienstvereinbarungen 104A...104N mit Benutzern 106A...106N der Cloud-Rechenumgebung 102 gründen. Die eine oder mehreren Richtlinien 120 können zur Einrichtung der entsprechenden isolierten Rechenumgebungen 150A...150N in der Cloud-Rechenumgebung 102 bestehen und/oder dies zur Folge haben. Zum Beispiel kann das, zumindest partielle, Durchsetzen dieser einen oder mehreren Richtlinien 120 durch Schaltungen 118 zumindest teilweise zur Folge haben, dass entsprechende isolierte Rechenumgebungen 150A...150N (1) in der Cloud-Rechenumgebung 102 instanziiert werden, (2) physikalisch und/oder virtuell voneinander isoliert werden und/oder (3) verhindert wird, dass sie einander in Abweichung von einer oder mehreren Richtlinien 120 stören. Zusätzlich oder alternativ können diese und/oder andere Merkmale dieser Ausführungsform (1) das Berichten des Ressourcenverbrauchs pro Benutzer und pro Plattform ermöglichen und/oder erleichtern (2) eine bessere Vermittlung der Arbeitsbelastungen zumindest teilweise auf der Grundlage der gemessenen/erwarteten Ressourcennutzung unterstützen und/oder (3) die Abstimmung von verfügbaren Ressourcen mit bekannten/gemessenen/erwarteten Ressourcen ermöglichen, die durch eine neue Arbeitsbelastung verwendet werden können, die auf der Plattform unterzubringen ist. Diese und/oder andere Merkmale können das Verringern und/oder Minimieren von Ressourcenkonflikten unter gemeinsam untergebrachten Arbeitsbelastungen zur Folge haben, die Plattformeffizienz und/oder Nützlichkeit erhöhen und/oder die Fähigkeit zur Erfüllung der Dienstvereinbarungen mit den Benutzern verbessern. In dieser Ausführungsform können die entsprechenden isolierten Rechenumgebungen 150A...150A durch entsprechende der Benutzer 106A...106N verwendet werden, für die Verwendung durch sie bestimmt sein und/oder ihnen zugehörig sein. Obgleich die Beschreibung dieser Ausführungsform unter Bezugnahme auf die isolierten Rechenumgebungen 150A...150N fortgesetzt wird, die virtuelle und/oder virtualisierte Instanzen sind oder umfassen, kann/können eine oder mehrere solche Umgebungen 150A...150N andere Typen von Instanzen sein oder umfassen, die nicht virtualisierte Instanzen virtuell isolieren können, wie zum Beispiel mehrere Anwendungsprozesse, die in einer physikalischen Maschine ausgeführt werden und/oder andere und/oder zusätzliche (z. B. physikalische) Infrastruktur (z. B. Netzwerk- und/oder Speichersysteme) gemeinsam verwenden, ohne von dieser Ausführungsform abzuweichen. In dieser Ausführungsform können solche Rechenumgebungen zum Beispiel und ohne Einschränkung Rechen-, Netzwerk-, Speicher-, Sicherheits-, Energie-, Audio/Video/Medien- und/oder andere zusätzliche Verarbeitung und/oder Dienste zumindest teilweise ausführen und/oder erleichtern.
  • Die einen oder mehreren Richtlinien 120 können mehrere Plattform-Ressourcen-Verwaltungsrichtlinien 120A...120N umfassen, die zumindest teilweise über die Interaktion von einem oder mehreren Verwaltungsprozessen 152 mit einer oder mehrerer Anwendungsprogrammschnittstellen 154 eingerichtet werden können. In dieser Ausführungsform können ein oder mehrere Verfahren 152 zumindest teilweise in einem oder mehreren Virtual Machine Managern 151 sein oder enthalten sein. Alternativ oder zusätzlich kann/können indes ein oder mehrere Verfahren 152 zumindest teilweise nicht in einem oder mehreren Virtual Machine Managern 151 enthalten sein und/oder können zentralisiert sein (z. B. in einem oder mehreren zentralisierten Verwaltungsprozessen/Mechanismen 121 in der Cloud-Rechenumgebung 102), ohne von dieser Ausführungsform abzuweichen. Zum Beispiel können die Mechanismen 121 ein einziger, unitärer solcher Mechanismus in der Cloud-Rechenumgebung 102 sein.
  • In dieser Ausführungsform kann eine Richtlinie zumindest teilweise (1) ein/e/n oder mehrere Regeln, Anweisungen, Befehle, Prozesse, Verfahren, Erlaubnisse und/oder Verbote und/oder (2) ein oder mehrere Ziele und/oder Ergebnisse sein und/oder umfassen, die zumindest teilweise als ein Ergebnis des Ausführens von einer/einem oder mehreren Regeln, Anweisungen, Befehlen, Prozessen, Verfahren, Erlaubnissen und/oder Verboten erreicht werden und/oder deren Erreichen dadurch beabsichtigt wird. Auch in dieser Ausführungsform kann das Durchsetzen einer Richtlinie zumindest teilweise die Implementierung und/oder Ausführung von (1) einer/einem oder mehreren Regeln, Anweisungen, Befehlen, Prozessen, Verfahren, Erlaubnissen und/oder Verboten und/oder (2) das zumindest partielle Erreichen von einem oder mehreren Zielen und/oder Ergebnissen umfassen.
  • In dieser Ausführungsform kann eine Plattform eine oder mehrere physikalische, logische und/oder virtuelle Recheninstanzen, wie zum Beispiel einen oder mehrere Hosts, umfassen. Auch in dieser Ausführungsform können die Begriffe Host-Rechner, Host, Server, Client, Netzwerk-Knoten und Knoten untereinander austauschbar verwendet werden und damit können zum Beispiel ohne Beschränkung ein/e oder mehrere Endstationen, mobile Internet-Geräte, Smart-Phones, Medienvorrichtungen, Eingabe/Ausgabe (E/A) Vorrichtungen, Tablet-Rechner, Apparate, Zwischenstationen, Netzwerk-Schnittstellen, Clients, Server und/oder Abschnitte davon gemeint sein. In dieser Ausführungsform kann ein Netzwerk irgendein/e/n Mechanismus, Instrument, Modalität und/oder Abschnitt davon umfassen, die es zwei oder mehr Instanzen zumindest teilweise erlaubt, erleichtert und/oder ermöglicht, kommunikativ aneinander gekoppelt zu sein.
  • In dieser Ausführungsform kann eine erste Instanz an eine zweite Instanz „kommunikativ gekoppelt” sein, wenn die erste Instanz in der Lage ist, einen oder mehrere Befehle und/oder Daten an die zweite Instanz zu senden und/oder von ihr zu empfangen. In dieser Ausführungsform können die Begriffe Daten und Informationen untereinander austauschbar verwendet werden und können einen oder mehrere Befehle (zum Beispiel einen oder mehrere Programmbefehle) umfassen und/oder ein oder mehrere solcher Befehle kann/können Daten und/oder Informationen sein oder umfassen. Auch in dieser Ausführungsform kann ein Befehl Daten und/oder einen oder mehrere Befehle umfassen. In dieser Ausführungsform kann ein Paket ein oder mehrere Symbole und/oder Werte sein oder umfassen. In dieser Ausführungsform kann eine Kommunikationsverbindung irgendeinen Mechanismus umfassen, der zumindest teilweise in der Lage ist und/oder zulässt, dass mindestens zwei Instanzen kommunikativ gekoppelt sind oder werden.
  • In dieser Ausführungsform können „Schaltungen” zum Beispiel einzeln oder in irgendeiner Kombination analoge Schaltungen, digitale Schaltungen, festverdrahtete Schaltungen, programmierbare Schaltungen, Co-Prozessorschaltungen, Zustandsmaschinenschaltungen und/oder Speicher umfassen, die Programmbefehle umfassen können, die durch programmierbare Schaltungen ausgeführt werden können. Auch in dieser Ausführungsform können Richtlinien-Engine-Schaltungen zumindest teilweise Schaltungen sein und/oder umfassen, die zumindest teilweise in der Lage sind, die Einrichtung und/oder Durchsetzung von einer oder mehrerer Richtlinien einzurichten und/oder durchzusetzen und/oder zu erleichtern. In dieser Ausführungsform können ein Prozessor, Host-Prozessor, eine Zentraleinheit, ein Prozessorkern, Kern und eine Steuereinrichtung jeweils entsprechende Schaltungen umfassen, die in der Lage sind, zumindest teilweise eine oder mehrere arithmetische und/oder logische Operationen durchzuführen und/oder zumindest teilweise eine/n oder mehrere Befehle, wie zum Beispiel einen oder mehrere (z. B. physikalische) Zentraleinheits-Prozessorkerne, Mikrocontroller, Mikroprozessoren, Netzwerkschnittstellen-Steuereinrichtungen, Speichersteuereinrichtungen und/oder Abschnitte davon auszuführen. In dieser Ausführungsform kann eine Netzwerkschnittstellen-Steuereinrichtung Schaltungen zum kommunikativen Koppeln an ein Netzwerk, wie zum Beispiel ein Netzwerkgerät, sein oder umfassen. Ein solches Netzwerkgerät kann in andere Schaltungen in einem Host integriert oder davon getrennt sein. In dieser Ausführungsform kann ein Chipsatz Schaltungen sein oder zumindest teilweise umfassen, die zumindest teilweise das kommunikative Koppeln von einem oder mehreren Speichern und einem oder mehreren Prozessoren, wie zum Beispiel einen oder mehrere Speicher-Hubs, ermöglicht. In dieser Ausführungsform kann jeder von dem Speicher, Cache und Cache-Speicher einen oder mehrere der folgenden Typen von Speichern umfassen: Halbleiter-Firmware-Speicher, programmierbarer Speicher, nichtflüchtiger Speicher, Nur-Lese-Speicher, elektrisch programmierbarer Speicher, Speicher mit wahlfreiem Zugriff, Flash-Speicher, magnetischer Plattenspeicher, optischer Plattenspeicher und/oder andere später entwickelte computerlesbare und/oder beschreibbare Speicher.
  • In dieser Ausführungsform kann ein Abschnitt oder eine Teilmenge einer Instanz die gesamte oder weniger als die gesamte Instanz umfassen. In dieser Ausführungsform kann eine Menge ein oder mehrere Elemente umfassen. Auch in dieser Ausführungsform kann ein Prozess, Thread, Daemon, Programm, Treiber, Betriebssystem, eine Anwendung, ein Kernel und/oder Virtual Machine Monitor jeweils (1) zumindest teilweise die Ausführung von einer/einem oder mehreren Operationen und/oder Programmbefehlen umfassen und/oder (2) zur Folge haben.
  • In dieser Ausführungsform kann eine Rechenumgebung aus Schaltungen bestehen oder diese umfassen, die zumindest teilweise in der Lage sind, allein und/oder in Verbindung mit einer oder mehreren anderen Rechenumgebungen und/oder Instanzen verwendet zu werden, um zumindest teilweise eine oder mehrere Operationen durchzuführen, die an einer oder mehreren arithmetischen, Booleschen, logischen, Speicherungs-, Vernetzungs-, Eingabe/Ausgabe-(E/A) und oder/anderen mit dem Rechner verbundenen Operationen beteiligt sind, diese erleichtern, ausführen, damit verbunden sind und/oder darin enthalten sind. In dieser Ausführungsform kann der Speicher flüchtigen und/oder nicht flüchtigen Speicher umfassen. In dieser Ausführungsform kann eine Cloud-Rechenumgebung eine Rechenumgebung sein oder umfassen, die in der Lage ist, einen oder mehrere mit dem Rechner verbundene Dienste gemäß einer oder mehreren Dienstvereinbarungen bereitzustellen. In dieser Ausführungsform kann eine Dienstvereinbarung eine Vereinbarung und/oder ein/en Vertrag zwischen mindestens einer Instanz, die den mindestens einen Dienst empfangen soll, und mindestens einer anderen Instanz sein oder umfassen, die den mindestens einen Dienst bereitstellen soll. In dieser Ausführungsform kann ein Dienst eine/n oder mehrere Funktionen, Operationen, Instrumente, Parameter, Erlaubnisse, Garantien, Verbote, Beschränkungen, Einschränkungen und/oder Merkmale umfassen, die zumindest teilweise eine oder mehrere Rechenumgebungen beinhalten, verwenden, dadurch erleichtert und/oder ausgeführt werden. Beispiele für solche Dienste können ohne Beschränkung Rechen-, Netzwerk-, Speicherungs-, E/A-, Webhosting-, Multimedia-, Video-, Audio-, Dienstgüte-, Sicherheits-, Energieverwendungs-, Netzwerkkommunikationswegauswahl-, Netzwerküberbelastungsvermeidungs- und/oder andere Dienste umfassen. In dieser Ausführungsform kann ein Dienstvereinbarungsdienst zumindest teilweise die Interaktion zwischen einem oder mehreren Benutzern und einer oder mehreren Dienstanbieterinstanzen beinhalten und/oder daraus entstehen (dies ist aber nicht erforderlich). Eine solche Interaktion kann, zumindest teilweise, zum Beispiel die Bereitstellung von einer oder mehreren Benutzeranwendungen, virtuellen Maschinen, ausführbaren Bildern, angeforderten Benutzerrichtlinien und/oder Dienstvereinbarungen (z. B. Dienstlizenzvereinbarungen) für eine oder mehrere Dienstanbieterinstanzen von einem Benutzer von einer oder mehreren Benutzeranwendungen umfassen. Diese können zumindest teilweise durch die eine oder die mehreren Dienstanbieterinstanzen mit einer oder mehreren anderen Richtlinien, Bedingungen und/oder Dienstvoraussetzungen kombiniert werden, die eine größere Granularität und/oder mehr Einzelheiten (z. B. Verrechnungs- und/oder Infrastruktureinschränkungen) bereitstellen können und die resultierende Kombination kann zumindest teilweise als eine oder mehrere Richtlinien, z. B. in den Plattformen und/oder der Cloud-Rechenumgebung, durchgesetzt werden.
  • In dieser Ausführungsform kann ein Benutzer einer oder mehrere menschliche Bediener, ein/e oder mehrere Gruppen und/oder Zusammenschlüsse von menschlichen Bedienern und/oder ein oder mehrere Prozesse (z. B. Anwendungsprozesse) sein, umfassen und/oder beinhalten, die einem oder mehreren menschlichen Bedienern, einer oder mehreren Gruppen und/oder Verbindungen von menschlichen Bedienern zugehörig sind und/oder in der Lage sind, direkt oder indirekt durch sie verwendet zu werden.
  • In dieser Ausführungsform können die Interaktion einer ersten Instanz mit einer zweiten Instanz und die Interaktion zwischen den ersten und zweiten Instanzen untereinander austauschbar verwendet werden. Auch in dieser Ausführungsform kann eine solche Interaktion zumindest teilweise (1) das Bereitstellen, das Einleiten des Bereitstellens und/oder die Anforderung des Bereitstellens von einem oder mehreren Signalen, Befehlen und/oder Daten für die zweite Instanz durch die erste Instanz und/oder (2) eine oder mehrere Handlungen und/oder Änderungen des Zustands der zweiten Instanz zumindest teilweise als Reaktion darauf umfassen, erleichtern und/oder beinhalten.
  • Zum Beispiel können die Dienstvereinbarungen 104A...104N in dieser Ausführungsform entsprechende Verträge zwischen entsprechenden der Benutzer 106A...106N (auf der einen Seite) und einer oder mehreren Instanzen (auf der anderen Seite) umfassen, die die Cloud-Rechenumgebung 102 zumindest teilweise pflegen, betreiben und/oder besitzen kann. Diese Verträge können die entsprechenden Mengen von Diensten und/oder Parametern der entsprechenden Mengen von Diensten angeben, die den Benutzern 106A...106N in der Cloud-Rechenumgebung bereitzustellen sind. Die Richtlinien 120A...120N können zumindest teilweise auf diesen Dienstvereinbarungen 104A...104N und/oder Verträgen gründen, derart, dass die zumindest partielle Durchsetzung dieser Richtlinien 120A...120N zumindest teilweise die Bereitstellung dieser entsprechenden Dienste für die Benutzer 106A...106N gemäß den entsprechenden Dienstvereinbarungen 104A...104N der Benutzer und/oder ihren Parametern zur Folge hat.
  • Zum Beispiel kann die zumindest partielle Durchsetzung der Richtlinien 120A...120N durch Schaltungen 118 die Instanziierung von isolierten Rechenumgebungen 150A...150N in der Cloud-Rechenumgebung 102 zur Folge haben. So wie sie instanziiert werden, können diese isolierten Rechenumgebungen 150A...150N virtuell voneinander isoliert werden und/oder können entsprechende Mengen von Diensten für die entsprechenden der Benutzer 106A...106N bereitstellen, die den Umgebungen 150A...150N (z. B. gemäß ihren entsprechenden Dienstvereinbarungen) zugehörig sein können. In dieser Ausführungsform kann die virtuelle Isolation zwischen einer ersten Rechenumgebung und einer zweiten Rechenumgebung zur Folge haben, dass die entsprechenden Benutzer dieser Umgebungen, die die entsprechenden Mengen von Ressourcen verwenden, die diesen entsprechenden Rechenumgebungen zugehörig und/oder darin enthalten sein können, auf Arten verwenden, die (1) (z. B. vollständig) mit den entsprechenden Dienstvereinbarungen der entsprechenden Benutzer übereinstimmen und/oder (z. B. vollständig) nicht davon abweichen können, und/oder (2) die entsprechenden Verwendungen von Ressourcen, die in den Umgebungen zumindest teilweise gemeinsam verwendet werden können, nicht (z. B. auf für den Benutzer bedeutende und/oder durch den Benutzer wahrnehmbare Weise) stören können.
  • Zum Beispiel kann die Umgebung 150A den Speicher 250A und/oder eine oder mehrere Ressourcen 302A umfassen und/oder ihm/ihnen zugehörig sein. Die Umgebung 150B kann den Speicher 250B und/oder eine oder mehrere Ressourcen 302A zumindest teilweise umfassen und/oder ihnen zugehörig sein. Die Umgebung 150N kann den Speicher 250N und/oder eine oder mehrere Ressourcen 302N zumindest teilweise umfassen und/oder ihm/ihnen zugehörig sein. Die Durchsetzung der entsprechenden Richtlinien 120A...120N (und z. B. insbesondere zumindest der Richtlinien 120A, 120B, 120N) durch die Schaltungen 118 kann zumindest teilweise zur Folge haben, dass die Umgebungen 150A, 150B, 150N virtuell voneinander (und den anderen isolierten Rechenumgebungen, die in den Umgebungen 150A...150N enthalten sind) isoliert werden. Zum Beispiel können die Umgebungen 150A, 150B, 150N derart virtuell voneinander isoliert sein, dass den entsprechenden Benutzern 106A, 106B, 106N dieser Umgebungen 150A, 150B, 150N nur erlaubt wird, ihre entsprechenden Mengen von Ressourcen (z. B. die Ressourcen 302A und 302N und/oder die Speicher 250A, 250B, 250N) auf Arten zu verwenden, die (1) (z. B. vollständig) mit den entsprechenden Dienstvereinbarungen 104A, 104B, 104N der entsprechenden Benutzer 106A, 106B, 106N übereinstimmen und/oder (z. B. vollständig) nicht davon abweichen können und/oder (2) keine für den Benutzer bedeutende und/oder durch den Benutzer wahrnehmbare Störung in Bezug auf die gemeinsam verwendeten Ressourcen (z. B. die gemeinsam verwendeten Ressourcen 302A) zur Folge haben können.
  • In dieser Ausführungsform können eine oder mehrere Anwendungsprogrammschnittstellen 154 mehrere Anwendungsprogrammschnittstellen 153A...153N umfassen. In dieser Ausführungsform kann eine Anwendungsprogrammschnittstelle eine oder mehrere physikalische, logische und/oder virtuelle Schnittstellen sein oder umfassen, über die (1) eine erste Instanz Daten und/oder ein oder mehrere Signale, Befehle, Anweisungen für eine zweite Instanz bereitstellt, die zumindest teilweise die Steuerung, Überwachung und/oder Interaktion mit der zweiten Instanz zulassen und/oder erleichtern kann und/oder (2) die zweite Instanz kann andere Daten und/oder ein oder mehrere andere Signale bereitstellen, die eine solche Steuerung, Überwachung und/oder Integration zumindest teilweise (die z. B. zumindest teilweise eine oder mehrere verfügbare Ressourcen, die Ressourcenverwendung, Verletzungen der Dienstvereinbarung usw. betreffen, umfassen und/oder damit verbunden sind) ermöglichen und/oder erleichtern können. In dieser Ausführungsform können eine oder mehrere Anwendungsprogrammschnittstellen 154 und/oder eine oder mehrere der Schnittstellen 153A...153N (vollständig oder teilweise) eingebettete Hardware und/oder Firmware in mehreren Hardware-Komponenten von Hosts umfassen, die zumindest teilweise die Cloud-Rechenumgebung 102 umfassen und/oder darin enthalten sein können. Selbstverständlich sind viele Alternativen möglich, ohne von dieser Ausführungsform abzuweichen.
  • In dieser Ausführungsform können vorteilhafterweise eine oder mehrere Anwendungsprogrammschnittstellen 154 und/oder Schnittstellen 153A...153N die Koordination (auf eine Weise, die in herkömmlichen Techniken nicht ins Auge gefasst wird) von zumindest teilweise der Programmierung der Richtlinien 120 und/oder 120A...120N für unterschiedliche Gesichtspunkte der Dienste und/oder Infrastruktur, die in der Umgebung 102 enthalten und/oder ausgeführt sind, ermöglichen. Vorteilhafterweise kann damit eine schädliche und/oder suboptimale Leistung vermieden werden, die sich ergeben kann, wann und/oder wenn zum Beispiel eine Cloud-Rechenumgebung separate Steuerungsebenen umfasst, die verwendet werden können, um diese unterschiedlichen Gesichtspunkte der Dienste und/oder Infrastruktur separat zu programmieren, die in der Cloud-Rechenumgebung enthalten ist und/oder ausgeführt wird. Wenn zum Beispiel unterschiedliche entsprechende Steuerungsebenen verwendet werden, um Rechenressourcen und Energieressourcen zu programmieren, dann kann es schwierig und/oder anspruchsvoll sein, eine miteinander im Konflikt stehende Programmierung solcher Ressourcen zu vermeiden (z. B. können die Rechenressourcen programmiert werden, um gleichzeitig mit dem Abschalten solcher Ressourcen verwendet zu werden).
  • Ferner können in dieser Ausführungsform vorteilhafterweise eine oder mehrere Anwendungsprogrammschnittstellen 154 und/oder Schnittstellen 153A...153N eine Programmierungsabstraktion einer Art ermöglichen, die in herkömmlichen Techniken nicht ins Auge gefasst wird. Zum Beispiel können eine oder mehrere Schnittstellen 154 und/oder eine oder mehrere Schnittstellen 153A...153N die Details einer Ausführung auf niedriger Ebene abstrahieren und immer noch die Feinabstimmung der Richtlinien 120 und/oder 120A...120N auf niedriger Ebene zulassen, um die Programmierung und/oder Ausführung der Richtlinien 120 und/oder 120A...120N sehr zu erleichtern und zu vereinfachen, während es der Cloud-Umgebung 102 ermöglicht wird, eine viel höhere (und/oder im Wesentlichen optimale) Leistung zu erreichen. Zum Beispiel können eine oder mehrere Anwendungsprogrammschnittstellen 154 und/oder Schnittstellen 153A...153N das Programmieren von CPU-Kern-Energiezuständen Dienstvereinbarung für Dienstvereinbarung ermöglichen, während das Erfordernis der Verfolgung der Details der tatsächlichen Ausführung der Hardware und/oder von Änderungen von einer Generation zur anderen durch die Steuerungsebene der Cloud-Umgebung vermieden wird. In dieser Ausführungsform können die Schaltungen 118 und/oder die CCE 102 mit den Identitäten der Benutzer der entsprechenden Komponenten der CCE 102 und/oder der anderen Infrastruktur, die ihnen zugehörig ist, und/oder von zugehörigen Richtlinien programmiert werden. Vorteilhafterweise kann dies das Verwenden einer gegebenen Anwendungsprogrammschnittstelle über mehrere verschiedene Hardware-Generationen hinweg ermöglichen, ohne dass die Steuerungsebene der Cloud-Umgebung (die die API verwendet) mit den sich ändernden Details auf niedrigerer Ebene einbezogen wird, während die Aufnahme und Verwendung neuer und neu entstehender Hardware-Merkmale auf niedrigerer Ebene ermöglicht wird, wodurch die Verwendung, Effizienz und/oder Dienstvereinbarungswirksamkeit in der Umgebung 102 verbessert wird.
  • Zum Beispiel kann, wie in 2 gezeigt, die Cloud-Rechenumgebung 102 einen oder mehrere (und in dieser Ausführungsform mehrere) Hosts 10A...10N umfassen. In Abhängigkeit von den bestimmten jeweiligen Konfigurationen von und/oder den Operationen, die durch die Hosts 10A...10N (und/oder die entsprechenden Komponenten der Hosts 10A...10N) durchgeführt werden, können die Hosts 10A...10N derart konfiguriert sein und/oder arbeiten, dass sie die entsprechende/n bestimmte Funktionalität, Dienste und/oder Operationen bereitstellen, die den Benutzern 106A...106N gemäß und/oder in Übereinstimmung mit ihren entsprechenden Dienstvereinbarungen 104A...104N bereitzustellen sind. So können in Abhängigkeit von den bestimmten entsprechenden Konfigurationen von und/oder den Operationen, die durch die Hosts 10A...10N (und/oder durch die entsprechenden Komponenten der Hosts 10A...10N) durchgeführt werden, die Hosts 10A...10N derart konfiguriert sein und/oder arbeiten, dass die Richtlinien 120A...120N und/oder 120 zumindest teilweise durchgesetzt werden, und/oder um zumindest teilweise entsprechende isolierte Rechenumgebungen 150A...150N einzurichten, derart, dass die Umgebungen 150A...150N virtuell voneinander isoliert werden können und verhindert werden kann, dass sie einander in Abweichung von den Richtlinien 120A...120N und/oder 120 stören.
  • Zum Beispiel kann jeder der Hosts 10A...10N entsprechende Hardware-Komponenten umfassen. Diese entsprechenden Hardware-Komponenten in jedem entsprechenden Host können einen oder mehrere entsprechende Host-Prozessoren (HP), einen oder mehrere entsprechende Chipsätze (CS), einen oder mehrere entsprechende Speicher und/oder eine oder mehrere entsprechende Netzwerkschnittstellensteuerungen (Network Interface Controller – NIC) umfassen. Ein/e entsprechende/r der Anwendungsprogrammschnittstellen 153A...153N, der geschützten Speicherräume/n 202A...202N und/oder Schalter/n 204A...204N kann zumindest teilweise in einem/einer oder mehreren der entsprechenden Host-Prozessoren, Chipsätze, Speicher-Steuereinrichtungen, Verwaltungsressourcen, anderen gemeinsam verwendeten oder gemeinsam verwendbaren Hardware-Ressourcen und/oder Netzwerkschnittstellensteuerungen in jedem entsprechenden Host enthalten, repliziert und/oder verteilt sein. Zum Beispiel kann der Host 10A einen oder mehrere entsprechende Host-Prozessoren 12A, einen oder mehrere entsprechende Chipsätze 15A, einen oder mehrere entsprechende Speicher 21A und/oder eine oder mehrere entsprechende Netzwerkschnittstellensteuerungen 50A umfassen. Der Host 10N kann einen oder mehrere entsprechende Host-Prozessoren 12B, einen oder mehrere entsprechende Chipsätze 15B, einen oder mehrere entsprechende Speicher 21B und/oder eine oder mehrere entsprechende Netzwerkschnittstellensteuerungen 50B umfassen. Der Host 10N kann einen oder mehrere entsprechende Host-Prozessoren 12N, einen oder mehrere entsprechende Chipsätze 15N, einen oder mehrere entsprechende Speicher 21N und/oder eine oder mehrere entsprechende Netzwerkschnittstellensteuerungen 50N umfassen.
  • Wie vorhergehend angegeben, kann ein/e entsprechende/r der Anwendungsprogrammschnittstellen 153A...153N, der geschützten Speicherräume 202A...202N und/oder Schalter 204A...204N zumindest teilweise in einem oder mehreren der entsprechenden Host-Prozessoren, Chipsätze und/oder Netzwerkschnittstellensteuerungen in jedem entsprechenden Host enthalten, repliziert und/oder verteilt sein. Daher können zum Beispiel im Host 10A ein oder mehrere Host-Prozessoren 12A, ein oder mehrere Chipsätze 15A und/oder eine oder mehrere Netzwerkschnittstellensteuerungen 50A (als Ganzes oder teilweise) eine oder mehrere entsprechende Anwendungsprogrammschnittstellen (gemeinsam oder einzeln durch den Block 153A bezeichnet), einen oder mehrere entsprechende geschützte Speicherräume (die gemeinsam oder einzeln durch den Block 202A bezeichnet werden) und/oder einen oder mehrere Schalter (die gemeinsam oder einzeln durch den Block 204A bezeichnet werden) umfassen. In dieser Ausführungsform können die/der eine oder mehreren Anwendungsprogramschnittstellen 153A, ein oder mehrere geschützte Speicherräume 202A und/oder ein oder mehrere Schalter 204A als Ganzes (oder zumindest teilweise) als Hardware und/oder Firmware gebildet sein. Selbstverständlich können, ohne von dieser Ausführungsform abzuweichen, einige oder alle diese Komponenten zumindest teilweise eine oder mehrere entsprechende Software-Komponenten umfassen.
  • In dieser Ausführungsform können ein oder mehrere Planungsmechanismen 121 zumindest teilweise in und/oder unter einem oder mehreren verschiedenen Hosts (z. B. Servern) und/oder Diensten in der CCE 102 und/oder anderswo verteilt werden. In dieser Anordnung kann/können der eine oder die mehreren Planungsmechanismen 121 (z. B. physikalisch, logisch und/oder virtuell) Komponenten, Diensten, Ressourcen usw. benachbart untergebracht sein, die der Planung durch den einen oder die mehreren Planungsmechanismen 121 unterliegen. Alternativ können, ohne von dieser Ausführungsform abzuweichen, ein oder mehrere Planungsmechanismen 121 in einem vereinten Planungsmechanismus enthalten sein. In beiden Anordnungen können der eine oder die mehreren Scheduler 121 von diesen Komponenten, Diensten, Ressourcen usw. Informationen empfangen, die ihre gegenwärtigen entsprechenden Stati, Betriebseigenschaften, Arbeitsbelastungen, Benutzer usw. betreffen und/oder angeben, und können solche Informationen beim Treffen von Planungsentscheidungen verwenden. Eine solche enge Zusammenarbeit und/oder Koordination von Richtlinien für verschiedene Gesichtspunkte der Infrastruktur auf den Plattformen in der CCE 102 können eine bessere Planungskoordination (z. B. beim Zuweisen/Unterbringen/Planen der Verwendung der Infrastrukturressourcen) ermöglichen und/oder erleichtern. Zusätzlich kann die vorhergehende Verwendung der Nachbarschaft die Gefahr verringern und/oder minimieren, dass Ressourcen, die in großer zeitlicher Nähe verwendet werden, relativ weit voneinander weg untergebracht sind und/oder entsprechenden Begrenzungen der Kommunikationsbandbreite unterliegen.
  • Auch kann/können im Host 10B ein oder mehrere Host-Prozessoren 12B, ein oder mehrere Chipsätze 15B und/oder eine oder mehrere Netzwerkschnittstellensteuerungen 50B (als Ganzes oder teilweise) eine oder mehrere entsprechende Anwendungsprogrammschnittstellen (die gemeinsam oder einzeln durch den Block 153B bezeichnet werden), einen oder mehrere entsprechende geschützte Speicherräume (die gemeinsam oder einzeln durch den Block 202B bezeichnet werden) und/oder einen oder mehrere Schalter (die gemeinsam oder einzeln durch den Block 204B bezeichnet werden) umfassen. In dieser Ausführungsform können die/der eine oder mehreren Anwendungsprogrammschnittstellen 153B, ein oder mehreren geschützten Speicherräume 202B und/oder ein oder mehreren Schalter 204B als Ganzes (oder zumindest teilweise) als Hardware und/oder Firmware gebildet sein. Selbstverständlich können einige oder alle dieser Komponenten zumindest teilweise eine oder mehrere entsprechende Software-Komponenten umfassen, ohne von dieser Ausführungsform abzuweichen.
  • Auch können zum Beispiel im Host 10N ein oder mehrere Host-Prozessoren 12N, ein oder mehrere Chipsätze 15N und/oder eine oder mehrere Netzwerkschnittstellensteuerungen 50N gemeinsam unter Verwendung von (als Ganzes oder teilweise) einer oder mehreren entsprechenden Anwendungsprogrammschnittstellen (die gemeinsam oder einzeln durch den Block 153N bezeichnet werden), einem oder mehreren entsprechenden geschützten Speicherräumen (die gemeinsam oder einzeln durch den Block 202N bezeichnet werden), und/oder einem oder mehreren Schaltern (die gemeinsam oder einzeln durch den Block 204N bezeichnet werden) zur Einhaltung der Dienstvereinbarung programmiert sein. In dieser Ausführungsform können die/der eine oder mehreren Anwendungsprogrammschnittstellen 153N, ein oder mehreren geschützten Speicherräume 202N und/oder ein oder mehreren Schalter 204N als Ganzes (oder zumindest teilweise) als Hardware und/oder Firmware gebildet sein. Selbstverständlich können einige oder alle dieser Komponenten zumindest teilweise eine oder mehrere entsprechende Software-Komponenten umfassen, ohne von dieser Ausführungsform abzuweichen.
  • In dieser Ausführungsform können die Anwendungsprogrammschnittstellen 153A...153N und/oder 154 es einem oder mehreren Verwaltungsprozessen 152 und/oder VMM-Prozessen 151 (und/oder einem oder mehreren nicht gezeigten vSwitch-Prozessen, wenn sie im System 100 vorhanden sind) ermöglichen, in der Lage zu sein, (1) das Vorhandensein und die Fähigkeiten relevanter Schaltungen (z. B. in der CCE 102) zu identifizieren und/oder die Verwendung derselben zu koordinieren, und/oder (2) einen oder mehrere erlaubte Befehle und/oder Daten für die Schaltungen 118 über die Schnittstellen 153A...153N und/oder 154 bereitzustellen. Dies kann zumindest teilweise zur Folge haben, dass die Schaltungen 118 die entsprechenden Konfigurationen und/oder Operationen von und/oder Daten, die in einem oder mehreren der geschützten Speicherräume 202A...202N und/oder 202, den Schaltern 204A...204N und/oder 204, den Host-Prozessoren 12A...12N, den Chipsätzen 15A...15N und/oder den Hosts 10A...10N gespeichert sind, auf eine Weise steuern, überwachen und/oder abwandeln, die die Richtlinien 120A...120N zumindest teilweise voll und ganz ausführt (und/oder nicht auf irgendeine Weise davon abweicht oder ihnen widerspricht). Auf ähnliche Weise kann das Bereitstellen von einem oder mehreren solchen erlaubten Befehlen und/oder Daten über eine oder mehrere Schnittstellen 154 und/oder 153A...153N zumindest teilweise zur Folge haben, dass die Schaltungen 118 eine oder mehrere der Richtlinien 120A...120N (und/oder eine oder mehrere entsprechende Konfigurationen und/oder Operationen der vorhergehenden Komponenten der Umgebung 102) (auf eine zulässige Art) abwandelt, um einer oder mehreren zulässigen Änderungen an einer oder mehreren der Dienstvereinbarungen 104A...104N Wirkung zu verleihen und/oder sie auszuführen, wenn sie auftreten. Die Richtlinien 120A...120N können Richtlinien für jede der entsprechenden isolierten Rechenumgebungen 150A...150N definieren, die zumindest teilweise mit zum Beispiel maximal oder minimal erlaubten, vereinbarten und/oder annehmbaren Niveaus von Host/Host-Prozessor-Arbeitsbelastung, Aufteilen der Arbeitsbelastung, Dienstgüte, Sicherheit, Energienutzung, Speicher, Speicherverwaltungsmerkmalen, E/A-Dienst, E/A-Dienstverwaltungsmerkmalen, Netzwerküberlastungsvermeidung und/oder Koordinierung der Programmierung auf Steuerungsebene und/oder der vorhergehend beschriebenen Abstraktion (z. B. Dienstvereinbarung für Dienstvereinbarung) verbunden sein können, ausführen, beinhalten, daraus entstehen und/oder erleichtern. Alternativ oder zusätzlich können die Richtlinien 120A...120N und/oder 120 Richtlinien für jede der entsprechenden isolierten Rechenumgebungen 150A...150N definieren, die zumindest teilweise mit zum Beispiel einer solchen Koordinierung und/oder Abstraktion auf Steuerungsebene verbunden sind, diese ausführen, daraus entstehen und/oder sie erleichtern. Wenn zum Beispiel eine gegebene Arbeitsbelastung auf den einen oder mehreren der Hosts 10A 10N liegt, aber danach eine oder mehrere der Richtlinien 120 und/oder 120A...120N nicht durch diesen einen oder diese mehreren Hosts 10A...10N vollständig erfüllt oder eingehalten werden kann, können die Schaltungen 118 (z. B. durch Benachrichtigen der entsprechenden Steuerungsebenen von dem einen oder den mehreren Hosts 10A...10N auf eine integrierte und/oder koordinierte Weise) gemäß diesen Richtlinien 120 und/oder 120A...120N die Unterbringung der Arbeitsbelastung derart einstellen, dass solche Richtlinien 120 und/oder 120A...120N vollständiger erfüllt und/oder ausgeführt werden.
  • Auch können vorteilhafterweise in dieser Ausführungsform die Schaltungen 118 gemäß diesen Richtlinien 120 und/oder 120A...120N die Kommunikation und/oder Netzwerkwegauswahl (die z. B. zu verwenden ist, wenn über eines oder mehrere Netzwerke 51 kommuniziert wird) (im Falle eines Konflikts und/oder in anderen Situationen) koordinieren und/oder steuern. Wenn zum Beispiel mehrere solche Wege verfügbar sein können, können diese durch die Schaltungen 118 und/oder direkt durch einen oder mehrere solcher Hosts 10A...10N (z. B. durch Benachrichtigen einer zentralen Steuerungsebene über einen solchen Konflikt, zum Beispiel in einem oder mehreren gegebenen Hosts oder in der Netzwerkinfrastruktur) ausgewählt und/oder geändert werden. Dies kann die Art und Weise, auf die die gemeinsame Verwendung der Ressourcen durchgeführt und/oder ausgeführt werden kann, und/oder andere Parameter auswählen und/oder ändern.
  • Zum Beispiel kann es durch zweckmäßiges Konfigurieren und/oder Betreiben der Schalter 204A...204N und/oder 204 und/oder der geschützten Speicherräume 202A...202N gemäß den Richtlinien 120A...120N und/oder 120 möglich sein, einzelne durch Hardware durchgesetzte virtuelle Kommunikationsschaltungswege und/oder private Speicherräume bereitzustellen, die verwendet werden können, um die Verwendung und/oder die Bereitstellung von Diensten für und/oder unter den Hosts 10A...10N und/oder mehreren Prozessen 282A...282N der virtuellen Maschine (VM), Betriebssystemprozessen 32A...32N, Benutzern 106A...106N und/oder Benutzeranwendungsprozessen 280A...280N, die im Host-Systemspeicher 21A...21N resident sind, zuzuweisen und/oder zu isolieren, um die entsprechenden isolierten Rechenumgebungen 150A...150N auf die vorhergehend erörterte Weise bereitzustellen. Zusätzlich kann es dadurch auch möglich sein, den Zugriff zur Netzwerkverbindungsfähigkeit, den Diensten, Speicher und/oder E/A in der Cloud-Rechenumgebung 102 durch die Hosts 10A...10N und/oder mehrere Prozesse der virtuellen Maschine 282A...282N, Betriebssystemprozesse 32A...32N, Benutzer 106A...106N und/oder Benutzeranwendungsprozesse 280A...280N (auf Hardware-Ebene) auf eine sichere Weise mit verringertem (in einigen Fällen nahezu Null) Host-Prozessor-Software-Verarbeitungs-Overhead einzuschränken und/oder zuzulassen. Es kann auch möglich sein, einen sicheren Host mit einem anderen über eine gemeinsam verwendete Vernetzungsinfrastruktur zu koppeln, die Host-Sicherheitsdomäne zum Zweck des sicheren gemeinsamen Verwendens von Daten, des gemeinsamen Verwendens von Sicherheitsdiensten, des Steuerns des Orts von Daten oder des Orts der Verarbeitung und für eine potenzielle Beseitigung des Erfordernisses von unabhängiger Vernetzung oder Speichersicherheitseinsatz getrennt von der Host-Sicherheit zu erweitern, wodurch die Gesamtbetriebskosten verringert werden. Auch können vorteilhafterweise diese virtuellen Schaltungskommunikationswege und/oder privaten Speicherräume auf einer Hardware-Ebene (z. B. anstatt von und/oder über eine Software-Ebene im Falle eines virtuellen Schalters) eingerichtet und/oder durchgesetzt werden, wodurch die Sicherheit und die Verarbeitungsgeschwindigkeit in dieser Ausführungsform verbessert werden. Selbstverständlich können solche Kommunikationswege und/oder privaten Speicherräume nicht statisch zugewiesen und/oder bestimmt werden, aber stattdessen können sie dynamisch zugewiesen und/oder bestimmt werden, oder als weitere Alternative in irgendeiner Kombination von statischen und/oder dynamischen Zuweisungen zugewiesen und/oder bestimmt werden. Viele Abwandlungen sind möglich, ohne von dieser Ausführungsform abzuweichen.
  • Zum Beispiel können vorteilhafterweise in dieser Ausführungsform die Schnittstellen 153A...153N und/oder 154 gemeinsame Programmierungsschnittstellen bilden, die eine direkte Programmierung von jeder, einer oder mehreren und/oder allen der Umgebungen 150A...150N, Hosts 10A...10N, Ressourcen und/oder Speicher in der Cloud-Rechenumgebung 102 ermöglichen können. Eine solche Programmierung kann über irgendeine dieser Schnittstellen 153A...153N und/oder 154 ausgeführt werden. Vorteilhafterweise kann dies eine gemeinsame, zentralisierte und/oder vereinte Programmierschnittstelle bereitstellen, die durch einen oder mehrere erlaubte Prozesse (z. B. VMM-, Verwaltungs- und/oder nicht gezeigte vSwitch-Prozesse) verwendet werden können, um universelle, einheitliche und/oder vollständig koordinierte Richtlinien über das System 100 hinweg und für jede/n einzelne/n Knoten und/oder Ressource darin einzustellen. Dies kann eine konfliktfreie (oder im Wesentlichen konfliktfreie) gemeinsame Verwendung der physikalischen und/oder virtuellen Ressourcen im System 100 ermöglichen, die anderenfalls (z. B. durch ihre Beschaffenheit selbst) miteinander und/oder verschiedenen Arbeitsbelastungen in einem oder mehreren der Hosts in Konflikt stehen können.
  • Ferner kann vorteilhafterweise in dieser Ausführungsform, nachdem die Richtlinien über eine oder mehrere der Schnittstellen 153A...153N und/oder 154 programmiert wurden, die Ausführung und/oder das Durchsetzen der Richtlinien vollständig (oder im Wesentlichen) durch Hardware (z. B. Schaltungen 118) durchgeführt werden. Der Grad, mit dem solche Richtlinien durch Hardware durchgesetzt und/oder ausgeführt werden können, kann selbst durch die Richtlinien festgelegt und/oder angegeben werden. Dies kann die Durchsetzung und/oder Ausführung solcher Richtlinien von den VMM-, Verwaltungs- und/oder vSwitch-Prozessen zur Hardware verlagern, während es solchen Prozessen immer noch erlaubt wird, eine solche Durchsetzung und/oder Ausführung anzugeben, zu ändern, anzupassen und/oder letztendlich zu steuern. Vorteilhafterweise kann dies dieser Ausführungsform ermöglichen, (1) Flexibilität und/oder Dienste, die denjenigen ähnlich (oder besser als sie) sind, die Systeme aufweisen und/oder bieten, in denen die Richtliniendurchsetzung und/oder Ausführung durch Software (z. B. durch vSwitch-Prozesse) durchgeführt werden, und (2) Leistungen aufzuweisen und/oder zu bieten, die denjenigen ähnlich (oder besser als sie) sind, die Systeme aufweisen und/oder bieten, die die SR-IOV-Spezifikation einsetzen.
  • Insbesondere können die Flexibilität und die zentralisierte Programmierung/Steuerung, die in dieser Ausführungsform geboten werden, größer sein als diejenigen, die durch Systeme geboten werden, die vSwitch einsetzen, insbesondere, wenn eine Abwandlung an den Richtlinien wünschenswert ist, zum Beispiel, wenn die Benutzer, Knoten, Anwendungen, virtuellen Maschinen, Arbeitsbelastungen, Ressourcen, Richtlinien und/oder Dienste des Systems sich ändern (z. B. wenn sie zum System hinzugefügt oder davon entfernt werden). In dieser Situation können ein oder mehrere erlaubte Prozesse (z. B. VMM, Verwaltung und/oder nicht gezeigte vSwitch-Prozesse) eine oder mehrere der Richtlinien zumindest teilweise neu programmieren, um solche Änderungen über eine oder mehrere Schnittstellen 153A...153N und/oder 154 widerzuspiegeln. Alternativ oder zusätzlich und ohne von dieser Ausführungsform abzuweichen, können ein/e oder mehrere nicht gezeigte Prozesse und/oder Programmerweiterungen, die in einer/einem oder mehreren der Recheninstanzen und/oder Speicherräume 202A...202N resident sind und/oder ausgeführt werden, über eine oder mehrere Schnittstellen 153A...153N und/oder 154 eine oder mehrere der Richtlinien zumindest teilweise neu programmieren, um solche Änderungen widerzuspiegeln. Wenn solche Änderungen auftreten, während einer oder mehrere der Hosts, die an den resultierenden Änderungen der Arbeitsbelastung beteiligt sind, arbeiten (z. B. im Falle einer Migration während des Betriebs), können die Richtlinien zumindest teilweise angepasst werden, um neue kumulierte und/oder einzelne Anforderungen an die Arbeitsbelastung (und/oder andere) widerzuspiegeln und/oder zu beeinflussen, an welche der Hosts die Arbeitsbelastungen zu verteilen sind (z. B. um die Ressourcennutzung und/oder Übereinstimmung mit den Dienstvereinbarungen zu optimieren).
  • Zusätzlich können die Schnittstellen 153A...153N und/oder 154, die Speicherräume 202A...202N und/oder 202 und/oder die Schalter 204A...204N und/oder 204 vor einer unerlaubten Interaktion zwischen Betriebssystem und/oder virtueller Maschine/Prozess geschützt werden. Wenn zum Beispiel ein oder mehrere Betriebssystemprozesse 32A...32N, virtuelle Maschinenprozesse 282A...282N, Anwendungsprozesse 280A...280N, VMM-Prozesse 151 und/oder Verwaltungsprozesse 152 versuchen, (über eine oder mehrere Schnittstellen 154) eine oder mehrere unerlaubte Änderungen an einer oder mehreren der Richtlinien 120A...120N und/oder 120 und/oder an den entsprechenden Konfigurationen und/oder Operationen von einem oder mehreren der Schalter 204A...204N, 204, und/oder Speicherräume 202A...202N, 202 vorzunehmen, können eine oder mehrere Schnittstellen 154 und/oder Schaltungen 118 die eine oder die mehreren unerlaubten Änderungen zurückweisen. In dieser Ausführungsform kann eine unerlaubte Änderung eine Änderung umfassen, die (1) einer/einem der durch einen Administrator eingerichteten Erlaubnisse und/oder Parameter widerspricht, und/oder (2) nicht als mit solchen Erlaubnissen und/oder Parametern übereinstimmend überprüft wurde. Solche Erlaubnisse und/oder Parameter können zum Beispiel globale (z. B. Cloud-Rechenumgebungs-weite) Ressourcen und/oder Richtlinienkonfliktlösungs/Verwendungsregeln umfassen, die sicherstellen können, dass Richtlinien und/oder Richtlinienänderungen nicht miteinander in Konflikt stehen, gemäß den Fähigkeiten der Cloud-Rechenumgebung sein können usw. Zusätzlich oder alternativ können in dieser Ausführungsform solche Erlaubnisse und/oder Parameter eine Änderung an einer gegebenen Richtlinie (und/oder z. B. die Hinzufügung einer oder mehrerer Arbeitsbelastungen, Anwendungen, VM usw.) verhindern und/oder zurückweisen, wenn diese Änderung eine oder mehrere gegenwärtige Dienstvereinbarungsverpflichtungen nachteilig beeinträchtigen würde.
  • Zusätzlich oder alternativ kann in dieser Ausführungsform lediglich eine vertrauenswürdige Instanz (z. B. Schaltungen 118, ein Virtual Machine Manager und/oder einer oder mehrere zugehörige Steuerungsprozesse (z. B. ein oder mehrere Planungs/Verwaltungsmechanismen 121, die in 1 gezeigt sind)) in der Lage sein, eine oder mehrere Richtlinien 120 und/oder 120A...120N abzuwandeln. Dementsprechend kann in dieser Ausführungsform ein/e gegebene/r Benutzer und/oder virtuelle Maschine (als nicht vertrauenswürdig) deaktiviert werden und nicht mehr in der Lage sein, eine oder mehrere Richtlinien 120 und/oder 120A...120N abzuwandeln. Daher können, wenn eine solche Anordnung in dieser Ausführungsform vorhanden ist, die Richtlinien 120 und/oder 120A...120N in einem einzigen geschützten Speicherraum, zum Beispiel in einem einzigen von den Hosts 10A...10N, gespeichert werden. In dieser Ausführungsform können einer oder mehrere Mechanismen 121 zumindest teilweise einen oder mehrere Prozesse umfassen, die zumindest teilweise durch zum Beispiel Schaltungen 118 und/oder eine oder mehrere Komponenten (z. B. einen oder mehrere Host-Prozessoren und/oder andere Ressourcen) ausgeführt werden, die zumindest teilweise in der Cloud-Umgebung 102 und/oder einem oder mehreren der Hosts 10A...10B enthalten sind. Alternativ oder zusätzlich können einer oder mehrere Mechanismen 121 (als Ganzes oder teilweise) in oder durch Hardware (z. B. Schaltungen 118) enthalten sein.
  • Verschiedene vorteilhafte Verwendungsmodelle können durch diese Ausführungsform ins Auge gefasst werden. Zum Beispiel können durch ein zweckmäßiges Steuern der Schaltungen 118 und/oder einer oder mehrerer Komponenten davon über eine oder mehrere Schnittstellen 154 auf die vorhergehende Art, eine oder mehrere entsprechende Sendungen TT1...TTN von einem oder mehreren entsprechenden Paketen von einem oder mehreren Netzwerken 51 an eine oder mehrere entsprechende der Rechenumgebungen 150A...150N zumindest teilweise zugelassen werden (oder nicht zugelassen werden). Diese Erlaubnis kann Sendung für Sendung (und/oder alternativ oder zusätzlich CPU-Kern für CPU-Kern, Quelle für Quelle, Paket für Paket, Fluss für Fluss, isolierte Rechenumgebung für isolierte Rechenumgebung usw.) zumindest teilweise auf der Grundlage, ob (1) die einen oder mehreren entsprechenden der Umgebungen 150A...150N, die zum Empfangen der einen oder mehreren entsprechenden Sendungen TT1...TTN bestimmt sind (z. B. wie durch entsprechende Sendungen adressiert), für diese (z. B. für und/oder zum Empfangen der einen oder mehreren entsprechenden Sendungen TT1...TTN) durch eine oder mehrere Richtlinien 120A...120N und/oder 120 zugelassen sind, und/oder (2) der Untersuchung solcher Pakete, Flüsse und/oder Sendungen durch Schaltungen 118 und/oder eine oder mehrere Komponenten davon zum Vergleich mit den Parametern von den einen oder mehreren solchen Richtlinien, erteilt (oder je nach Fall verweigert) werden.
  • Zusätzlich oder alternativ kann/können durch zweckmäßiges Steuern der Schaltungen 118 und/oder einer oder mehrerer Komponenten davon über eine oder mehrere Schnittstellen 154 auf die vorhergehende Weise eine oder mehrere entsprechende Sendungen TF1...TFN von einem oder mehreren entsprechenden Paketen von einer oder mehreren entsprechenden der Rechenumgebungen 150A...150N an eines oder mehrere Netzwerke 51 zumindest teilweise zugelassen (oder nicht zugelassen) werden. Diese Erlaubnis kann Sendung für Sendung (und/oder alternativ oder zusätzlich CPU-Kern für CPU-Kern, Ziel für Ziel, Paket für Paket, Fluss für Fluss, isolierte Rechenumgebung für isolierte Rechenumgebung usw.) zumindest teilweise auf der Grundlage, ob (1) die eine oder die mehreren entsprechenden der Umgebungen 150A...150N, von denen die eine oder die mehreren entsprechenden Sendungen TF1...TFN gesendet werden, für dieselbe (z. B. für und/oder zur Ausgabe von einer oder mehreren entsprechenden Sendungen TF1...TFN) durch die eine oder die mehreren Richtlinien 120A...120N und/oder 120 zugelassen sein können, und/oder (2) der Untersuchung solcher Pakete, Flüsse und/oder Sendungen durch Schaltungen 118 und/oder eine oder mehrere Komponenten davon zum Vergleich mit den Parametern von der einen oder den mehreren solcher Richtlinien erteilt (oder je nach Fall verweigert) werden.
  • Zusätzlich oder alternativ und ohne von dieser Ausführungsform abzuweichen, kann die Gewährung oder Verweigerung der Erlaubnis für eine oder mehrere der Sendungen TT1...TTN und/oder TF1...TFN zumindest teilweise gemäß einer oder mehreren Richtlinien 120A...120N und/oder 120 verzögert, neu priorisiert und/oder neu geplant werden. Ferner können zusätzlich oder alternativ eine oder mehrere der Sendungen TT1...TTN und/oder TF1...TFN zumindest teilweise an einen oder mehrere geschützte Speicherräume zur weiteren Verarbeitung (z. B. für Dienste, die gegenwärtig nicht in der Hardware-Sende-Pipeline verfügbar sind, wie beispielsweise ein Sicherheits- und/oder ein Tunneling-Mechanismus) in Übereinstimmung mit einer oder mehreren Richtlinien 120A...120N und/oder 120 ausgegeben werden. Nach einer solchen Verarbeitung können eine oder mehrere der Sendungen TT1...TTN und/oder TF1...TFN an einen oder mehrere vSwitch-Prozesse geliefert werden und/oder an einen oder mehrere geschützte Speicherräume und von dort an die Schaltungen 118 zur Lieferung an eine oder mehrere VM oder Anwendungen gesendet werden.
  • Andere vorteilhafte Verwendungsmodelle sind auch möglich. Zum Beispiel können, wenn sie durch zweckmäßige Steuerungsschaltungen 118 und/oder eine oder mehrere Komponenten davon über eine oder mehrere Schnittstellen 154 auf die vorhergehende Weise durchgesetzt werden, eine oder mehrere Richtlinien 120A...120N und/oder 120 eine oder mehrere (und in dieser Ausführungsform mehrere) virtuelle Rechenzonen 260A...260N in der Cloud-Rechenumgebung 102 (siehe 3) einrichten und/oder definieren. Jede der entsprechenden Rechenzonen 260A...260N kann einen oder mehrere entsprechende Server 264A...264N umfassen, die eine oder mehrere entsprechende virtuelle Maschinen 262A...262N umfassen können. Diese/r eine oder mehreren entsprechenden Server 264A...264N und/oder virtuellen Maschinen 262A...262N können einen oder mehrere entsprechende Dienste (z. B. innerhalb der Cloud-Umgebung 102 und/oder über ein oder mehrere Netzwerke 51 für einen oder mehrere nicht gezeigte Dienstempfänger außerhalb der Umgebung 102) S1...SN bereitstellen. In diesem Verwendungsmodell von dieser Ausführungsform können dieser eine oder mehreren entsprechenden Dienste S1...SN zumindest teilweise gemäß und/oder auf der Grundlage von einer oder mehreren entsprechenden Richtlinien 270A...270N verwaltet, gesteuert, überwacht und/oder eingerichtet werden. Diese eine oder mehreren entsprechenden Richtlinien 270A...270N können in und/oder für jede der entsprechenden Zonen 260A...260N eingerichtet und/oder ihnen zugehörig sein und/oder können zusätzlich zu den Richtlinien 120 bestehen und/oder sich davon unterscheiden. Vorteilhafterweise kann dies das Ausführen virtueller Rechenzonen 260A...260N in der Umgebung 102 (z. B. unter Verwendung der Komponenten der Hosts 10A...10N) ermöglichen, die Dienste innerhalb und/oder außerhalb der Umgebung 102 zumindest teilweise auf der Grundlage von einer oder mehreren Richtlinien 270A...270N ausführen und/oder bereitstellen, die sich von anderen Richtlinien 120, die verwendet werden können, um die Umgebungen 150A...150N der Benutzer der Cloud-Umgebung zu definieren und/oder einzurichten, unterscheiden und/oder getrennt davon verwaltet werden können.
  • In dieser Ausführungsform kann eine virtuelle Maschine, obgleich 3 veranschaulicht, dass ein Server eine oder mehrere virtuelle Maschinen umfassen kann, alternativ, ohne von dieser Ausführungsform abzuweichen, zumindest teilweise auf mehreren Servern stehen. Viele Alternativen sind möglich, ohne von dieser Ausführungsform abzuweichen.
  • Daher kann eine Ausführungsform Richtlinien-Engine-Schaltungen umfassen, die zumindest teilweise eine oder mehrere Plattform-Ressourcenverwaltungsrichtlinien in einer Cloud-Rechenumgebung durchsetzen können. Die eine oder mehreren Richtlinien können zumindest teilweise auf Dienstvereinbarungen (z. B. mit Benutzern) der Cloud-Rechenumgebung gründen. Die eine oder mehreren Richtlinien können entsprechende isolierte Rechenumgebungen in der Cloud-Rechenumgebung einrichten, die durch entsprechende der Benutzer verwendet werden können. Die Durchsetzung der einen oder mehreren Richtlinien kann zur Folge haben, dass die entsprechenden isolierten Rechenumgebungen virtuell voneinander isoliert sind und verhindert wird, dass sie einander in Abweichung von der einen oder den mehreren Richtlinien stören. Die eine oder mehreren Richtlinien können zumindest teilweise über die Interaktion von mindestens einem Verwaltungsprozess mit einer oder mehreren Anwendungsprogrammschnittstellen der Schaltungen eingerichtet werden. Die Durchsetzung der einen oder mehreren Richtlinien kann auch zumindest teilweise (1) die zumindest partielle Zuweisung von einer oder mehreren Arbeitsbelastungen in der Cloud-Rechenumgebung, (2) die zumindest partielle Koordinierung der Ressourcenzuweisung in der Cloud-Rechenumgebung und/oder (3) die zumindest partielle Koordinierung der Ressourcenzuweisung durch einen oder mehrere Planungsmechanismen (z. B. einen oder mehrere Planungsmechanismen 121 oder einen einzigen Planungsmechanismus) in der Cloud-Rechenumgebung zur Folge haben. Die eine oder mehreren Arbeitsbelastungen können zumindest teilweise einer oder mehreren Richtlinien zugehörig sein und/oder die Zuordnung der einen oder mehreren Arbeitsbelastungen kann zumindest teilweise auf der einen oder den mehreren Richtlinien und/oder Rückkopplungsinformationen der Cloud-Rechenumgebung gründen.
  • In dieser Ausführungsform können die eine oder mehreren Richtlinien auf und/oder über einen oder mehrere physikalische Hosts, über die Interaktion mit einem oder mehreren Cloud-Umgebungs-Planungs-, Verwaltungs- und/oder Durchsetzungsmechanismen (z. B. Mechanismus 121) eingerichtet werden. Wenn sie durchgesetzt und/oder ausgeführt werden, können solche Richtlinien in der Lage sein, die Infrastruktur und/oder Dienste (z. B. Netzwerkgeräte, Speichergeräte usw.) einzurichten, bereitzustellen und/oder zu beeinträchtigen, und/oder zur Folge haben, dass (1) Rückkopplungsinformationen (z. B. Ressourcennutzung, Verfügbarkeit und/oder Ressourcen/Richtlinienkonflikt/Konkurrenzinformationen) von Infrastruktur, Ressourcen, Hosts und/oder Diensten und/oder (2) Arbeitsbelastungszuweisung und/oder Abwandlung zumindest teilweise auf der Grundlage von solchen Rückkopplungsinformationen und/oder Richtlinien 120 und/oder 120A...120N gesammelt werden.
  • Daher können in dieser Ausführungsform die Schaltungen 118 in der Lage sein, Hardware-Unterstützung für eine oder mehrere VMM-(und/oder zentral gesteuerte oder verteilte Cloud-Umgebungs-Planungs/Verwaltungs)-Prozesse (z. B. einen oder mehrere Planungs/Verwaltungsmechanismen 121) beim Steuern und/oder Durchsetzen der Ressourcenbereitstellung, Zuweisung und/oder Abwandlung, z. B. gemäß einer oder mehreren Richtlinien, bereitzustellen. Vorteilhafterweise kann in dieser Ausführungsform als ein Ergebnis von zumindest teilweise der Verwendung der Schaltungen 118 erheblich verringerte und/oder im Wesentlichen konstante Beträge von CPU (und/oder CPU-Kern) Verarbeitungs-Overhead beim Einrichten und/oder Erhalten der isolierten Rechenumgebungen und/oder beim Bereitstellen der Dienste der Cloud beteiligt sein. Tatsächlich kann zumindest in einigen Ausführungen dieser Ausführungsform der Betrag eines solchen CPU-Verarbeitungs-Overheads im Wesentlichen null sein. Vorteilhafterweise kann es dies dieser Ausführungsform erlauben, eine merklich verbesserte CPU-, Host- und/oder Server-Leistung aufzuweisen. Ferner kann dies vorteilhafterweise dieser Ausführungsform ermöglichen, viel einfacher und/oder effizienter zu skalieren, wenn die Netzwerkbandbreite, Netzwerkübertragungsgeschwindigkeit und/oder die Anzahl der Hosts, Benutzer und/oder Richtlinien zunimmt, ohne unter unerwünscht hohen Anstiegen beim Virtualisierungsverarbeitungs-Overhead, der Gefahr von Netzwerkübertragungsverlusten und/oder Verarbeitungslatenzen zu leiden.
  • Ferner kann in dieser Ausführungsform vorteilhafterweise als ein Ergebnis von zumindest teilweise der Verwendung der Schaltungen 118 ein bekannter Abschnitt aller Host-Ressourcen in der Cloud-Umgebung 102, die für Rechen- und E/A-Dienste verwendet werden, beim Einrichten und/oder Erhalten der isolierten Rechenumgebungen und/oder beim Bereitstellen der Dienste der Cloud verwendet werden. Vorteilhafterweise können in dieser Ausführungsform die Hosts 10A...10N konfiguriert sein, um durch mehrere Benutzer gemäß ihren entsprechenden Dienstvereinbarungen verwendet zu werden, z. B. indem die Richtlinien 120 und/oder 120A...120N in die Hosts 10A...10N aufgenommen werden, derart, dass die Durchsetzung der Ressourcennutzung gemäß den Richtlinien 120 und/oder 120A...120N „automatisch” auf der Plattform-Ebene (z. B. ohne Beteiligung der Software in Echtzeit) aber unter lokaler (z. B. Virtual Machine Manager) und/oder entfernter (z. B. Cloud-Umgebungs-Management) Software-Steuerung (z. B. zumindest teilweise durch einen oder mehrere Mechanismen 121 bereitgestellt) stattfinden kann.
  • Ferner kann diese Ausführungsform zumindest teilweise als ein Ergebnis der Verwendung der Schaltungen 118 zur Richtliniendurchsetzung und zum Erhalten der Isolation zwischen den Rechenumgebungen in dieser Ausführungsform, vorteilhafterweise in der Lage sein, Echtzeit- oder Nahezu-Echtzeit-Feingranularitäts-Dienstgüteanpassungen bereitzustellen, wenn sich die Arbeitsbelastungen in und/oder unter den Hosts ändern. Ferner ermöglichen die Schaltungen 118 vorteilhafterweise in dieser Ausführungsform die Integration und/oder die enge Kopplung von Sicherheitserwägungen (z. B. auf der Hardware-Ebene) in sowohl die Cloud-Umgebung als Ganzes als auch in die einzelnen Hosts und individuelle Komponenten davon. Vorteilhafterweise kann dies dieser Ausführungsform ermöglichen, eine verbesserte Funktionalität und/oder Effizienz zu erreichen und/oder ihre Komplexität und/oder Kosten für Betrieb und/oder Ausführung zu verringern.
  • Ferner können in dieser Ausführungsform vorteilhafterweise Hardware-Schalter 204A...204N und/oder 204 eine flexible direkte hardwarebasierte Kommunikation (gemäß den einen oder den mehreren Richtlinien) mit einer oder mehreren der Netzwerkschnittstellensteuerungen 50A...50N und/oder anderen Komponenten der Cloud-Rechenumgebung ermöglichen, anstatt über einen oder mehrere virtuelle Schalter (vSwitches) zu kommunizieren. Dies kann die Geschwindigkeit und Effizienz der Steuerung und/oder Kommunikation mit den Netzwerkschnittstellensteuerungen und/oder anderen Komponenten erheblich verbessern, während die Durchsetzung solcher Richtlinien beim Durchführen solcher Steuerungen und/oder Kommunikation auf einer Hardware-Ebene integriert wird.
  • Zusätzlich oder alternativ können in dieser Ausführungsform, wenn alle der Dienste und Schaltungen, die beim Ausführen einer gegebenen Richtlinie in Bezug auf ein Paket verfügbar sind, die Schaltungen 118 diese Richtlinie „automatisch” ausführen und können das Paket wie jeweils anwendbar an und von der Instanz leiten (z. B. Virtual Memory Manager und/oder ein/e oder mehrere virtuelle Maschinen und/oder Anwendungsprozesse, sei es, ob sie durch den Virtual Memory Manager oder auf eine andere Weise gesteuert werden), die bei dieser Verarbeitung beteiligt sind. Wenn umgekehrt eine/r oder mehrere der Dienste und/oder Schaltungen, die beim Ausführen der gegebenen Richtlinie beteiligt sind, nicht verfügbar sind, kann das Paket eine oder mehrere Iterationen von Folgendem durchlaufen: Software-Verarbeitung in einem oder mehreren geschützten Speicherräumen und danach kann das Paket den Schaltungen 118 zurück zur Lieferung an die zweckmäßige Instanz zur weiteren Verarbeitung bereitgestellt werden. Im Vorhergehenden können die Schaltungen 118 das Leiten/Weiterleiten der Pakete zwischen oder unter den Komponenten des Systems 100, die in der vorhergehenden Verarbeitung beteiligt sind, von einem vSwitch-Prozess verlagern, während sie sich (zumindest teilweise) unter der Steuerung des vSwitch-Prozesses befinden. Der eine oder die mehreren Hosts 10A...10N, die an der vorhergehenden Verarbeitung beteiligt sind, können ihre Fähigkeiten dem vSwitch, Virtual Machine Manager Prozessen und/oder einem oder mehreren Planungsmechanismen (und/oder der nicht gezeigten Steuereinrichtung) offenlegen und der vSwitch-Prozess kann die Richtlinien offenlegen und die eine oder mehreren entsprechenden virtuellen Maschinen zum Verarbeiten des Pakets auf der Grundlage pro Richtlinie identifizieren. Dies kann es dem einen oder den mehreren Hosts 10A...10N ermöglichen, die zweckmäßigen Richtlinien auf entsprechenden Paketen auszuführen und/oder andere Dienste auszuführen.
  • Zusätzlich oder alternativ und ohne von dieser Ausführungsform abzuweichen, können Hardware- und Software-Steuerung zumindest teilweise in einem hybriden Betriebsmodus in einer oder mehreren von denselben Plattformen (z. B. Hosts) gemeinsam vorhanden sein. In dieser Situation können die Hardware und Software-Steuerungsmechanismen über Änderungen in der/dem virtuellen Maschine, Anwendung, Dienst, Prozess usw. bei der Affinität mit, der Unterbringung in, der Zuweisung zu und/oder der Ausführung durch solche Plattformen, Plattform-CPU und/oder CPU-Kerne informiert werden. Während zum Beispiel virtuelle Maschinen dynamisch geplant werden, um auf einem gegebenen CPU-Kern ausgeführt zu werden, und danach entfernt werden, können einer oder mehrere vSwitch-Prozesse den Schaltungen 118 eine rechtzeitige Angabe darüber bereitstellen. Alternativ oder zusätzlich können ein oder mehrere vSwitch-Prozesse die Schaltungen 118 leiten, um eine Teilmenge von virtuellen Maschinen zu steuern, während eine andere Teilmenge von virtuellen Maschinen durch Software gesteuert werden kann. Ein oder mehrere vSwitch-Prozesse können die Schaltungen über die summierte gemeinsame Verwendung von Ressourcen, Benutzer, virtuelle Maschinen und/oder Anwendungen benachrichtigen, die durch Software zu steuern sind, während es den Schaltungen 118 ermöglicht wird, den Rest davon gemäß den Richtlinien 120 zu steuern.
  • Ferner kann in dieser Ausführungsform angesichts der relativen Einfachheit und Schnelligkeit, mit denen sich ändernde Umstände in dieser Ausführungsform (z. B. durch Schaltungen 118) festgestellt und/oder Richtlinien zumindest teilweise angepasst werden können, um diese zu berücksichtigen, diese Ausführungsform in der Lage sein, Echtzeit- oder Nahezu-Echtzeit-Feingranularität für Dienstgüteanpassungen, die vorzunehmen sind, und/oder statistisch genaue Sichtbarkeit von Arbeitsbelastungen und/oder Ressourcenverwendungen bereitzustellen, während sich die Arbeitsbelastungen und/oder Verwendungen in und/oder unter den Rechenknoten ändern. Dies kann insbesondere in Fällen zutreffen, in denen die Anpassungen an und/oder die Sichtbarkeit solcher Arbeitsbelastungen und/oder Nutzungen pro Benutzer/Arbeitsbelastung in Übereinstimmung mit den Benutzerdienstvereinbarungen zu bewerkstelligen ist. Ferner kann in dieser Ausführungsform vorteilhafterweise der Umfang der Programmierung, den das Vornehmen solcher Anpassungen mit sich bringt, erheblich verringert werden und/oder kann durch eine vereinte aber verteilte Steuerungsschnittstelle durchgeführt werden.
  • Andere Abwandlungen sind auch möglich. Zum Beispiel können in Abhängigkeit von der bestimmten Ausführung ein oder mehrere virtuelle Schalter gemeinsam mit den Schaltern 204A...204N und/oder 204 eingesetzt werden. Auch können die Anzahl, die Typen und/oder Konfigurationen der Hosts 10A...10N, der Cloud-Umgebung 102, der Umgebungen 150A...150N, der Rechenzonen 260N...260N und/oder Server 264A...264N (und/oder von Komponenten, die darin enthalten sind) variieren, ohne von dieser Ausführungsform abzuweichen. Zusätzlich oder alternativ können eine oder mehrere Netzwerkschnittstellensteuerungen in der Umgebung 102 in der Lage sein, Protokoll- und/oder andere Netzwerkverbindungsfähigkeitsverarbeitung zustandslos zu verlagern.
  • Zusätzlich oder alternativ kann in dieser Ausführungsform die Paketverarbeitung zumindest teilweise in Hardware beginnen aber zumindest teilweise in Software ergänzt und/oder abgeschlossen werden. In dieser Ausführungsform können zum Beispiel die Schaltung 118 und/oder einer oder mehrere Schalter 204A...204N in der Lage sein, ein oder mehrere Paketverarbeitungsmerkmale und/oder Funktionen zumindest teilweise auszuführen. Diese Merkmale und/oder Funktionen können eine oder mehrere physikalische und/oder virtuelle Funktionen umfassen und/oder darüber aufgerufen werden. Diese eine oder mehreren physikalischen und/oder virtuellen Funktionen können zum Beispiel entsprechende Dienstgüte-, Sicherheits-, Schalt-, Routing- und/oder Paketvalidierungsfunktionen umfassen, die entsprechenden Paketflüssen, virtuellen Maschinen und/oder Dienstvereinbarungen pro Richtlinie, Paketfluss, virtuelle Maschine und/oder Dienstvereinbarung zugehörig und/oder zugewiesen sind. Zum Beispiel können ein oder mehrere Schalter 204A...204N eine oder mehrere nicht gezeigte Warteschlangen, Nachschlagtabellen und/oder andere Datenstrukturen, die entsprechende empfangene Pakete und/oder Pakete, die mit einem oder mehreren zugehörigen entsprechenden Paketflüssen zu übermitteln sind, speichern und/oder verbinden können, erzeugende und/oder empfangende virtuelle Maschinen, Dienste und/oder Verarbeitung, der die Pakete zu unterziehen sind (oder unterzogen wurden), Dienstgüte und/oder andere Parameter usw., die (zumindest teilweise) in einer oder mehreren Richtlinien 120A...120N und/oder 120 angegeben werden können, zumindest teilweise im entsprechenden privaten Speicher 202A...202N halten. Einer oder mehrere Schalter 204A...204N können (z. B. basierend auf zumindest teilweise dem Kopf, der Einkapselung und/oder anderer Informationen, die in den entsprechenden Paketen und/oder einen oder mehreren Richtlinien 120A...120N und/oder 120 enthalten sind) die entsprechende Verarbeitung, die die Pakete zu durchlaufen haben, identifizieren und kann die Pakete verarbeiten und/oder leiten, um sicherzustellen, dass sie eine solche Verarbeitung durchlaufen. Zum Beispiel kann ein gegebenes Paket anfangs eine Hardware-Verarbeitung (gemäß den Richtlinien 120A...120N und/oder 120) in einem oder mehreren Schaltern 204A...204N und/oder Verlagerungs-Hardware (nicht gezeigt) durchlaufen, die in zum Beispiel einer oder mehreren Ressourcen 302A...302N (z. B. einer oder mehreren nicht gezeigten Netzwerkschnittstellensteuerungen) enthalten sein kann. Danach können ein oder mehrere Schalter 204A...204N das gegebene Paket an eine oder mehrere zusätzliche Instanzen leiten, um das gegebene Paket zu verarbeiten. Zum Beispiel können eine oder mehrere zusätzliche Instanzen einen oder mehrere Software-Prozesse (nicht gezeigt) in dem einen oder den mehreren geschützten Räumen 202A...202N und/oder im Virtual Machine Manager umfassen. Danach können der eine oder die mehreren Schalter 204A...204N das gegebene Paket direkt an seine virtuelle Zielmaschine oder andere Zielinstanz leiten, entweder innerhalb der Cloud-Umgebung 102 oder einem oder mehreren Netzwerke 51. Vorteijhafterweise kann dies eine verbesserte Paketverarbeitungseffizienz über Hardware-Verarbeitung bereitstellen, während die Verarbeitungsflexibilität und die Vielfalt über Software bewahrt werden. In dieser Ausführungsform kann eine VM über Daten informiert werden, die zum Beispiel über (1) einen oder mehrere Interrupts (2) einen oder mehrere Interrupts, die direkt der VM bereitzustellen sind (wahlweise unter Verwendung von Informationen, die der Schaltungen 118 bereitgestellt werden, wenn geplant ist, dass die VM ausgeführt wird und Kern-Affinität angibt) und/oder (3) ohne Bereitstellung eines Interrupts aber z. B. unter Verwendung solcher Informationen und unter Beteiligung der VM und/oder Schaltungen 118, die periodisch den Zustand der Verarbeitungswarteschlange überprüfen, zu empfangen oder zu übermitteln sind.
  • Viele andere Abwandlungen sind möglich. Zum Beispiel können die vorhergehenden Techniken dieser Ausführungsform zur Verwendung in einem einzelnen physikalischen Host bei Nichtvorhandensein von Virtualisierung (mindestens in Bezug auf die Merkmale dieser Ausführungsform) angewandt werden. In diesem einzelnen Host können eine oder mehrere nicht gezeigte Anwendungen für eine analoge Rolle wie diejenige dienen, für die die eine oder mehreren virtuellen Maschinen in einer virtualisierten Umgebung dienen.
  • Andere Abwandlungen sind auch möglich. Zum Beispiel können die Schaltungen 118 zumindest teilweise in der Lage sein, die Verwendung der entsprechenden Ressourcen (z. B. auf der Grundlage pro Benutzer) zu messen. Solche Messungen können verwendet werden, um das zumindest partielle Aktualisieren und/oder Abwandeln von einer oder mehreren entsprechenden Richtlinien und/oder Richtlinienanforderungen von entsprechenden Benutzern zu erleichtern. Zum Beispiel können einer oder mehrere Dienstanbieter und/oder Benutzer über solche Messungen und/oder andere Daten, die daraus erzeugt werden, benachrichtigt werden, um das Einrichten der abgewandelten Richtlinien, die für die tatsächlichen gemessenen Verwendungsmuster und/oder für eine effizientere Unterbringung der Arbeitsbelastung besser geeignet sind, zumindest teilweise zu erleichtern.
  • Zusätzlich oder alternativ können ein oder mehrere vSwitch-Prozesse zumindest teilweise in der Lage sein, einen oder mehrere Befehle an die Schaltungen 118 auszugeben, die zur Folge haben können, dass die Schaltungen 118 den Verkehr zumindest teilweise auf der Grundlage pro Fluss, Menge von Flüssen, VM und/oder Benutzer zumindest teilweise gemäß relevanter Richtlinien handhaben. Es kann auch zur Folge haben, dass die Schaltungen 118 in einem Betriebsmodus arbeiten, in dem Daten sich in einem oder mehreren geschützten Speicherräumen befinden, und/oder die einen oder mehreren Befehle können in solchen Räumen ausgeführt werden, um eine weitere Verarbeitung des Verkehrs zu erleichtern, und danach kann der Verkehr zur weiteren Verarbeitung an die Schaltungen gesendet werden. Es kann auch einen partiellen Hardware-Verlagerungsmodus aktivieren, in dem ein Teil der Verarbeitung des Verkehrs in Hardware (mit oder ohne Verwendung des geschützten Speichers) durchgeführt werden kann, und der Verkehr danach an den einen oder die mehreren vSwitch-Prozesse gesendet werden kann.
  • Daher werden in dieser Ausführungsform verschiedene Verwendungsmodelle ins Auge gefasst. Zum Beispiel kann die Verarbeitung von Verkehr anfangs zumindest teilweise durch Hardware bereitgestellt werden und von dort durch Schaltungen 118 zur weiteren Verarbeitung an die Software weitergeleitet werden, und kann von dort zur weiteren Verarbeitung an die Hardware zurückgesendet werden. Zusätzlich oder alternativ kann der Betrieb dieser Ausführungsform unter und/oder in enger Kopplung an die Richtlinien 120 durchgeführt werden. Auch zusätzlich oder alternativ können einer oder mehrere geschützte Speicherräume bereitgestellt werden, die zumindest teilweise nicht der Steuerung von einem oder mehreren VMM-Prozessen unterliegen. Ferner können die Schaltungen 118 zusätzlich oder alternativ in der Lage sein, zumindest teilweise zu erlauben, dass Verkehr und/oder andere Daten anfangs durch Software verarbeitet werden, die nicht Teil des einen oder der mehreren VMM-Prozesse ist, bevor die Verarbeitung durch den einen oder die mehreren VMM-Prozesse zugelassen wird.
  • Noch andere Abwandlungen sind möglich. Dementsprechend sollte diese Ausführungsform breit als alle solchen Alternativen, Abwandlungen und Varianten umfassend aufgefasst werden.

Claims (27)

  1. Vorrichtung, die Folgendes umfasst: Richtlinien-Engine-Schaltungen, um zumindest teilweise eine oder mehrere Plattformressourcen-Verwaltungsrichtlinien in einer Cloud-Rechenumgebung durchzusetzen, wobei die eine oder mehreren Richtlinien zumindest teilweise auf Dienstvereinbarungen der Cloud-Rechenumgebung basieren, wobei die eine oder mehreren Richtlinien ausgestaltet sind, um entsprechende isolierte Rechenumgebungen in der Cloud-Rechenumgebung einzurichten, die durch entsprechende Benutzer zu verwenden sind, wobei die Durchsetzung der einen oder mehreren Richtlinien ausgestaltet ist, um zur Folge zu haben, dass die entsprechenden isolierten Rechenumgebungen virtuell voneinander isoliert werden und verhindert wird, dass sie einander in Abweichung von der einen oder den mehreren Richtlinien stören, wobei die eine oder mehreren Richtlinien zumindest teilweise über die Interaktion von mindestens einem Verwaltungsprozess mit einer oder mehreren Anwendungsprogrammschnittstellen der Schaltungen eingerichtet werden; die Durchsetzung der einen oder mehreren Richtlinien, die zumindest teilweise eines oder mehrere von Folgendem zur Folge hat: zumindest partielle Zuweisung von einer oder mehreren Arbeitsbelastungen in der Cloud-Rechenumgebung, wobei die eine oder mehreren Arbeitsbelastungen zumindest teilweise einer oder mehreren Richtlinien zugehörig sind, wobei die Zuweisung zumindest teilweise auf der einen oder mehreren Richtlinien und Rückkopplungsinformationen der Cloud-Rechenumgebung basiert; zumindest partielle Koordinierung der Ressourcenzuweisung in der Cloud-Rechenumgebung; und zumindest partielle Koordinierung der Ressourcenzuweisung durch einen Planungsmechanismus in der Cloud-Rechenumgebung.
  2. Vorrichtung nach Anspruch 1, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in mindestens einem von einem Chipsatz und einem Host-Prozessor eines Hosts in der Cloud-Rechenumgebung enthalten sind; und der mindestens eine Verwaltungsprozess in mindestens einem von einem Virtual Machine Manager und dem Planungsmechanismus in der Cloud-Rechenumgebung enthalten ist.
  3. Vorrichtung nach Anspruch 2, wobei: die Schaltungen mindestens einen Speicherraum und mindestens einen Schalter in dem mindestens einen von dem Chipsatz und dem Host-Prozessor umfassen; und der Speicherraum vor einer nicht autorisierten Interaktion zwischen Betriebssystem und Virtual-Machine-Manager-Umgebung geschützt ist.
  4. Vorrichtung nach Anspruch 1, wobei: die entsprechenden Benutzer ausgestaltet sind, um zumindest teilweise eine oder mehrere Ressourcen gemäß der einen oder den mehreren Richtlinien gemeinsam zu verwenden; und die Durchsetzung der einen oder mehreren Richtlinien eine vollständige virtuelle Isolation und Störungsfreiheit zwischen den entsprechenden isolierten Rechenumgebungen zur Folge hat.
  5. Vorrichtung nach Anspruch 1, wobei: die eine oder mehreren Richtlinien entsprechende Ressourcenmengen definieren, die in den entsprechenden isolierten Rechenumgebungen zu verwenden sind; und die eine oder mehreren Richtlinien Richtlinien für jede der entsprechenden isolierten Rechenumgebungen definieren, die die Dienstgüte, Sicherheit, Leistungsnutzung, Netzwerkkommunikationswegauswahl, Netzwerküberlastungsvermeidung, Speicherung, den Eingabe/Ausgabe-Dienst, Speicher und Host-Prozessor betreffen.
  6. Vorrichtung nach Anspruch 1, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in Folgendem enthalten sind: einem Chipsatz und einem Host-Prozessor von mindestens einem Host in der Cloud-Rechenumgebung; einem Netzwerkgerät des mindestens einen Hosts; und die eine oder mehreren Anwendungsprogrammschnittstellen ausgestaltet sind, um das zumindest partielle Abwandeln der einen oder mehreren Richtlinien zu erlauben.
  7. Vorrichtung nach Anspruch 6, wobei: die Cloud-Rechenumgebung mehrere Hosts umfasst, die den mindestens einen Host umfassen; die mehreren Hosts entsprechende Chipsätze, entsprechende Host-Prozessoren und entsprechende Netzwerkgeräte umfassen; die Schaltungen entsprechende Anwendungsprogramschnittstellen in den entsprechenden Chipsätzen, den entsprechenden Host-Prozessoren und den entsprechenden Netzwerkgeräten umfassen, um das Einrichten der einen oder mehreren Richtlinien über die Schnittstellen zu ermöglichen; und die eine oder mehreren Richtlinien ausgestaltet sind, um Rechenzonen in der Cloud-Rechenumgebung einzurichten; jede entsprechende Rechenzone eine oder mehrere entsprechende virtuelle Maschinen umfasst, die entsprechende Server umfassen, um einen oder mehrere entsprechende Dienste bereitzustellen; und der eine oder die entsprechenden Dienste gemäß einer oder mehreren anderen entsprechenden Richtlinien verwaltet werden, die in der entsprechenden Zone eingerichtet sind.
  8. Vorrichtung nach Anspruch 6, wobei: die entsprechende Übertragung an eine oder mehrere der Rechenumgebungen und die andere entsprechende Übertragung von der einen oder den mehreren der Rechenumgebungen zumindest teilweise basierend darauf zuzulassen sind, ob die eine oder die mehreren der Rechenumgebungen für die entsprechenden Übertragungen durch die einen oder mehreren Richtlinien berechtigt sind.
  9. Verfahren, das Folgendes umfasst: Durchsetzen von einer oder mehreren Plattformressourcen-Verwaltungsrichtlinien in einer Cloud-Rechenumgebung, zumindest teilweise unter Verwendung von Richtlinien-Engine-Schaltungen, wobei die eine oder mehreren Richtlinien zumindest teilweise auf Dienstvereinbarungen der Cloud-Rechenumgebung gründen, wobei die eine oder mehreren Richtlinien ausgestaltet sind, um entsprechende isolierte Rechenumgebungen in der Cloud-Rechenumgebung einzurichten, die durch entsprechende Benutzer zu verwenden sind, wobei die Durchsetzung der einen oder mehreren Richtlinien ausgestaltet ist, um zur Folge zu haben, dass die entsprechenden isolierten Rechenumgebungen virtuell voneinander isoliert werden und verhindert wird, dass sie einander in Abweichung von der einen oder den mehreren Richtlinien stören, wobei die eine oder mehreren Richtlinien zumindest teilweise über die Interaktion von mindestens einem Verwaltungsprozess mit einer oder mehreren Anwendungsprogrammschnittstellen der Schaltungen eingerichtet werden; die Durchsetzung der einen oder mehreren Richtlinien, die zumindest teilweise eines oder mehrere von Folgendem zur Folge hat: zumindest partielle Zuweisung von einer oder mehreren Arbeitsbelastungen in der Cloud-Rechenumgebung, wobei die eine oder mehreren Arbeitsbelastungen zumindest teilweise einer oder mehreren Richtlinien zugehörig sind, wobei die Zuweisung zumindest teilweise auf der einen oder den mehreren Richtlinien und Rückkopplungsinformationen der Cloud-Rechenumgebung basiert; zumindest partielle Koordinierung der Ressourcenzuweisung in der Cloud-Rechenumgebung; und zumindest partielle Koordinierung der Ressourcenzuweisung durch einen Planungsmechanismus in der Cloud-Rechenumgebung.
  10. Verfahren nach Anspruch 9, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in einem von einem Chipsatz und einem Host-Prozessor eines Hosts in der Cloud-Rechenumgebung enthalten sind; und der mindestens eine Verwaltungsprozess in mindestens einem von einem Virtual Machine Manager und dem Planungsmechanismus in der Cloud-Rechenumgebung enthalten ist.
  11. Verfahren nach Anspruch 10, wobei: die Schaltungen mindestens einen Speicherraum und mindestens einen Schalter in dem mindestens einen von dem Chipsatz und dem Host-Prozessor umfassen; und der Speicherraum vor einer nicht autorisierten Interaktion zwischen Betriebssystem und Virtual-Machine-Manager-Umgebung geschützt ist.
  12. Verfahren nach Anspruch 9, wobei: die entsprechenden Benutzer ausgestaltet sind, um zumindest teilweise eine oder mehrere Ressourcen gemäß der einen oder den mehreren Richtlinien gemeinsam zu verwenden; und die Durchsetzung der einen oder mehreren Richtlinien eine vollständige virtuelle Isolation und Störungsfreiheit zwischen den entsprechenden isolierten Rechenumgebungen zur Folge hat.
  13. Verfahren nach Anspruch 9, wobei: die eine oder mehreren Richtlinien entsprechende Ressourcenmengen definieren, die in der entsprechenden isolierten Rechenumgebungen zu verwenden sind; und die eine oder mehreren Richtlinien Richtlinien für jede der entsprechenden isolierten Rechenumgebungen definieren, die die Dienstgüte, Sicherheit, Leistungsnutzung, Netzwerkkommunikationswegauswahl, Netzwerküberlastungsvermeidung, Speicherung, den Eingabe/Ausgabe-Dienst, Speicher und Host-Prozessor betreffen.
  14. Verfahren nach Anspruch 9, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in Folgendem enthalten sind: einem Chipsatz und einem Host-Prozessor von mindestens einem Host in der Cloud-Rechenumgebung; einem Netzwerkgerät des mindestens einen Hosts; und die einen oder mehreren Anwendungsprogrammschnittstellen ausgestaltet sind, um das zumindest partielle Abwandeln der einen oder mehreren Richtlinien zu erlauben.
  15. Verfahren nach Anspruch 14, wobei: die Cloud-Rechenumgebung mehrere Hosts umfasst, die den mindestens einen Host umfassen; die mehreren Hosts entsprechende Chipsätze, entsprechende Host-Prozessoren und entsprechende Netzwerkgeräte umfassen; die Schaltungen entsprechende Anwendungsprogramschnittstellen in den entsprechenden Chipsätzen, den entsprechenden Host-Prozessoren und den entsprechenden Netzwerkvorrichtungen umfassen, um das Einrichten der einen oder mehreren Richtlinien über die Schnittstellen zu ermöglichen; und die eine oder mehreren Richtlinien ausgestaltet sind, um Rechenzonen in der Cloud-Rechenumgebung einzurichten; jede entsprechende Rechenzone eine oder mehrere entsprechende virtuelle Maschinen umfasst, die entsprechende Server umfassen, um einen oder mehrere entsprechende Dienste bereitzustellen; und der eine oder die entsprechenden Dienste gemäß einer oder mehreren anderen entsprechenden Richtlinien verwaltet werden, die in der entsprechenden Zone eingerichtet sind.
  16. Verfahren nach Anspruch 14, wobei: die entsprechende Übertragung an eine oder mehrere der Rechenumgebungen und die andere entsprechende Übertragung von der einen oder den mehreren der Rechenumgebungen zumindest teilweise basierend darauf zuzulassen sind, ob die eine oder mehreren der Rechenumgebungen für die entsprechenden Übertragungen durch die eine oder mehreren Richtlinien berechtigt sind.
  17. Computerlesbarer Speicher, der einen oder mehrere Befehle speichert, die, wenn sie durch eine Maschine ausgeführt werden, die Durchführung von Operationen zur Folge haben, die Folgendes umfassen: Durchsetzen von einer oder mehreren Plattformressourcen-Verwaltungsrichtlinien in einer Cloud-Rechenumgebung, zumindest teilweise unter Verwendung von Richtlinien-Engine-Schaltungen, wobei die eine oder mehreren Richtlinien zumindest teilweise auf Dienstvereinbarungen der Cloud-Rechenumgebung gründen, wobei die eine oder mehreren Richtlinien ausgestaltet sind, um entsprechende isolierte Rechenumgebungen in der Cloud-Rechenumgebung einzurichten, die durch entsprechende Benutzer zu verwenden sind, wobei die Durchsetzung der einen oder mehreren Richtlinien ausgestaltet ist, um zur Folge zu haben, dass die entsprechenden isolierten Rechenumgebungen virtuell voneinander isoliert werden und verhindert wird, dass sie einander in Abweichung von der einen oder den mehreren Richtlinien stören, wobei die eine oder mehreren Richtlinien zumindest teilweise über die Interaktion von mindestens einem Verwaltungsprozess mit einer oder mehreren Anwendungsprogrammschnittstellen der Schaltungen eingerichtet werden; die Durchsetzung der einen oder mehreren Richtlinien, die zumindest teilweise eines oder mehrere von Folgendem zur Folge hat: zumindest partielle Zuweisung von einer oder mehreren Arbeitsbelastungen in der Cloud-Rechenumgebung, wobei die eine oder mehreren Arbeitsbelastungen zumindest teilweise einer oder mehreren Richtlinien zugehörig sind, wobei die Zuweisung zumindest teilweise auf der einen oder den mehreren Richtlinien und Rückkopplungsinformationen der Cloud-Rechenumgebung basiert; zumindest partielle Koordinierung der Ressourcenzuweisung in der Cloud-Rechenumgebung; und zumindest partielle Koordinierung der Ressourcenzuweisung durch einen Planungsmechanismus in der Cloud-Rechenumgebung.
  18. Computerlesbarer Speicher nach Anspruch 17, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in mindestens einem von einem Chipsatz und einem Host-Prozessor eines Hosts in der Cloud-Rechenumgebung enthalten sind; und der mindestens eine Verwaltungsprozess in mindestens einem von einem Virtual Machine Manager und dem Planungsmechanismus in der Cloud-Rechenumgebung enthalten ist.
  19. Computerlesbarer Speicher nach Anspruch 18, wobei: die Schaltungen mindestens einen Speicherraum und mindestens einen Schalter in dem mindestens einen von dem Chipsatz und dem Host-Prozessor umfassen; und der Speicherraum vor einer nicht autorisierten Interaktion zwischen Betriebssystem und Virtual-Machine-Manager-Umgebung geschützt ist.
  20. Computerlesbarer Speicher nach Anspruch 17, wobei: die entsprechenden Benutzer ausgestaltet sind, um zumindest teilweise eine oder mehrere Ressourcen gemäß der einen oder den mehreren Richtlinien gemeinsam zu verwenden; und die Durchsetzung der einen oder mehreren Richtlinien eine vollständige virtuelle Isolation und Störungsfreiheit zwischen den entsprechenden isolierten Rechenumgebungen zur Folge hat.
  21. Computerlesbarer Speicher nach Anspruch 17, wobei: die eine oder mehreren Richtlinien entsprechende Ressourcenmengen definieren, die in den entsprechenden isolierten Rechenumgebungen zu verwenden sind; und die eine oder mehreren Richtlinien Richtlinien für jede der entsprechenden isolierten Rechenumgebungen definieren, die die Dienstgüte, Sicherheit, Leistungsnutzung, Netzwerkkommunikationswegauswahl, Netzwerküberlastungsvermeidung, Speicherung, den Eingabe/Ausgabe-Dienst, Speicher und Host-Prozessor betreffen.
  22. Computerlesbarer Speicher nach Anspruch 17, wobei: die eine oder mehreren Anwendungsprogrammschnittstellen zumindest teilweise in Folgendem enthalten sind: einem Chipsatz und einem Host-Prozessor von mindestens einem Host in der Cloud-Rechenumgebung; einem Netzwerkgerät des mindestens einen Hosts; und die eine oder mehreren Anwendungsprogrammschnittstellen ausgestaltet sind, um das zumindest partielle Abwandeln der einen oder mehreren Richtlinien zu erlauben.
  23. Computerlesbarer Speicher nach Anspruch 22, wobei: die Cloud-Rechenumgebung mehrere Hosts umfasst, die den mindestens einen Host umfassen; die mehreren Hosts entsprechende Chipsätze, entsprechende Host-Prozessoren und entsprechende Netzwerkgeräte umfassen; die Schaltungen entsprechende Anwendungsprogramschnittstellen in den entsprechenden Chipsätzen, den entsprechenden Host-Prozessoren und den entsprechenden Netzwerkgeräten umfassen, um das Einrichten der einen oder mehreren Richtlinien über die Schnittstellen zu ermöglichen; und die eine oder mehreren Richtlinien ausgestaltet sind, um Rechenzonen in der Cloud-Rechenumgebung einzurichten; jede entsprechende Rechenzone eine oder mehrere entsprechende virtuelle Maschinen umfasst, die entsprechende Server umfassen, um einen oder mehrere entsprechende Dienste bereitzustellen; und der eine oder die entsprechenden Dienste gemäß einer oder mehreren anderen entsprechenden Richtlinien verwaltet werden, die in der entsprechenden Zone eingerichtet sind.
  24. Computerlesbarer Speicher nach Anspruch 22, wobei: die entsprechende Übertragung an eine oder mehrere der Rechenumgebungen und die andere entsprechende Übertragung von der einen oder den mehreren der Rechenumgebungen zumindest teilweise basierend darauf zuzulassen sind, ob die eine oder mehreren der Rechenumgebungen für die entsprechenden Übertragungen durch die eine oder mehreren Richtlinien berechtigt sind.
  25. Vorrichtung nach Anspruch 1, wobei: die Schaltungen mindestens eine geschützte Recheninstanz umfassen, die vor unerlaubter Interaktion zwischen Betriebssystem und Virtual-Machine-Manager-Umgebung geschützt ist; und die Recheneinheit ausgestaltet ist, um einen oder mehrere Prozesse auszuführen, um die eine oder mehreren Richtlinien zumindest teilweise über die eine oder mehreren Anwendungsprogrammschnittstellen zu programmieren.
  26. Vorrichtung nach Anspruch 1, wobei: die Schaltungen mindestens einen Schalter in dem mindestens einen von dem Chipsatz und dem Host-Prozessor umfassen; und der Schalter ausgestaltet ist, um Netzwerkverkehr, der einem oder mehreren Prozessen zugehörig ist, gemäß der einen oder den mehreren Richtlinien zu verwalten.
  27. Vorrichtung nach Anspruch 1, wobei: im Falle von einer oder mehreren Arbeitsbelastungsänderungen von einem oder mehreren Hosts, die in der Cloud-Rechenumgebung betrieben werden, einer oder mehrere Prozesse ausgestaltet sind, um zumindest teilweise die eine oder mehreren Richtlinien neu zu programmieren, um die Änderungen widerzuspiegeln.
DE112013000395.3T 2012-11-13 2013-06-17 Vorrichtung, verfahren und computerlesbarer speicher zur richtliniendurchsetzung in rechenumgebung Active DE112013000395B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/675,324 2012-11-13
US13/675,324 US9282118B2 (en) 2012-11-13 2012-11-13 Policy enforcement in computing environment
PCT/US2013/046123 WO2014077904A1 (en) 2012-11-13 2013-06-17 Policy enforcement in computing environment

Publications (2)

Publication Number Publication Date
DE112013000395T5 true DE112013000395T5 (de) 2014-09-04
DE112013000395B4 DE112013000395B4 (de) 2023-07-27

Family

ID=50682828

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112013000395.3T Active DE112013000395B4 (de) 2012-11-13 2013-06-17 Vorrichtung, verfahren und computerlesbarer speicher zur richtliniendurchsetzung in rechenumgebung

Country Status (5)

Country Link
US (2) US9282118B2 (de)
CN (1) CN104025073B (de)
DE (1) DE112013000395B4 (de)
GB (1) GB2523038B (de)
WO (1) WO2014077904A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9282118B2 (en) * 2012-11-13 2016-03-08 Intel Corporation Policy enforcement in computing environment
US9935841B2 (en) 2013-01-28 2018-04-03 Intel Corporation Traffic forwarding for processing in network environment
US9384025B2 (en) 2013-01-28 2016-07-05 Intel Corporation Traffic and/or workload processing
US20150067761A1 (en) * 2013-08-29 2015-03-05 International Business Machines Corporation Managing security and compliance of volatile systems
US10212050B2 (en) * 2013-09-04 2019-02-19 Entit Software Llc Providing recursively-generated instantiated computing resource in a multi-tenant environment
WO2015034481A1 (en) * 2013-09-04 2015-03-12 Hewlett-Packard Development Company, L.P. Providing resources to customers via node-relationship models
US9871691B2 (en) 2014-09-16 2018-01-16 CloudGenix, Inc. Methods and systems for hub high availability and network load and scaling
US10009292B2 (en) * 2014-10-03 2018-06-26 International Business Machines Corporation Cloud independent tuning service for autonomously managed workloads
US10348621B2 (en) 2014-10-30 2019-07-09 AT&T Intellectual Property I. L. P. Universal customer premise equipment
US10257089B2 (en) 2014-10-30 2019-04-09 At&T Intellectual Property I, L.P. Distributed customer premises equipment
US9871823B2 (en) * 2014-12-23 2018-01-16 Intel Corporation Techniques to deliver security and network policies to a virtual network function
CN106452818B (zh) * 2015-08-13 2020-01-21 阿里巴巴集团控股有限公司 一种资源调度的方法和系统
US10394587B2 (en) 2016-01-06 2019-08-27 International Business Machines Corporation Self-terminating or self-shelving virtual machines and workloads
WO2017137803A1 (en) * 2016-02-10 2017-08-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and network node for providing policy enforcement in a computing cloud platform
CN106339295A (zh) * 2016-08-30 2017-01-18 孟玲 一种基于云服务监测的计算机实现方法
US10439803B2 (en) * 2016-11-14 2019-10-08 Microsoft Technology Licensing, Llc Secure key management
US11379268B1 (en) * 2019-06-19 2022-07-05 Amazon Technologies, Inc. Affinity-based routing and execution for workflow service
US11716378B2 (en) * 2021-09-28 2023-08-01 Red Hat, Inc. Optimized network device queue management for hybrid cloud networking workloads

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5692193A (en) * 1994-03-31 1997-11-25 Nec Research Institute, Inc. Software architecture for control of highly parallel computer systems
US6243667B1 (en) 1996-05-28 2001-06-05 Cisco Systems, Inc. Network flow switching and flow data export
US7043659B1 (en) * 2001-08-31 2006-05-09 Agilent Technologies, Inc. System and method for flexible processing of management policies for managing network elements
US7934021B2 (en) 2002-08-29 2011-04-26 Broadcom Corporation System and method for network interfacing
US9015324B2 (en) * 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US8752055B2 (en) 2007-05-10 2014-06-10 International Business Machines Corporation Method of managing resources within a set of processes
EP2107464A1 (de) 2008-01-23 2009-10-07 Comptel Corporation Konvergentes Vermittlungssystem mit dynamischer Ressourcenzuweisung
US8756302B2 (en) 2008-10-22 2014-06-17 6Fusion Usa Inc. Method and system for determining computer resource usage in utility computing
US8776090B2 (en) 2009-02-17 2014-07-08 Broadcom Corporation Method and system for network abstraction and virtualization for a single operating system (OS)
WO2010099407A1 (en) 2009-02-27 2010-09-02 Broadcom Corporation Method and system for virtual machine networking
US8589919B2 (en) 2009-04-28 2013-11-19 Cisco Technology, Inc. Traffic forwarding for virtual machines
US20100287262A1 (en) 2009-05-08 2010-11-11 Uri Elzur Method and system for guaranteed end-to-end data flows in a local networking domain
US9031081B2 (en) 2009-08-06 2015-05-12 Broadcom Corporation Method and system for switching in a virtualized platform
US8504690B2 (en) 2009-08-07 2013-08-06 Broadcom Corporation Method and system for managing network power policy and configuration of data center bridging
US8276139B2 (en) 2009-09-30 2012-09-25 International Business Machines Corporation Provisioning virtual machine placement
US8848715B2 (en) 2010-03-16 2014-09-30 Marvell Israel (M.I.S.L) Ltd. Combined hardware/software forwarding mechanism and method
US8627123B2 (en) 2010-03-25 2014-01-07 Microsoft Corporation Managing power provisioning in distributed computing
US8332517B2 (en) 2010-03-31 2012-12-11 Incnetworks, Inc. Method, computer program, and algorithm for computing network service value pricing based on communication service experiences delivered to consumers and merchants over a smart multi-services (SMS) communication network
US9300688B2 (en) * 2010-04-18 2016-03-29 Ca, Inc. Protected application stack and method and system of utilizing
US20110270968A1 (en) * 2010-04-30 2011-11-03 Salsburg Michael A Decision support system for moving computing workloads to public clouds
US8477610B2 (en) 2010-05-31 2013-07-02 Microsoft Corporation Applying policies to schedule network bandwidth among virtual machines
US8352611B2 (en) 2010-06-29 2013-01-08 International Business Machines Corporation Allocating computer resources in a cloud environment
US8417800B2 (en) 2010-07-16 2013-04-09 Broadcom Corporation Method and system for network configuration and/or provisioning based on open virtualization format (OVF) metadata
US8797867B1 (en) 2010-10-18 2014-08-05 Juniper Networks, Inc. Generating and enforcing a holistic quality of service policy in a network
US8630173B2 (en) 2010-11-19 2014-01-14 Cisco Technology, Inc. Dynamic queuing and pinning to improve quality of service on uplinks in a virtualized environment
CN102571849B (zh) * 2010-12-24 2016-03-30 中兴通讯股份有限公司 云计算系统及方法
US9178805B2 (en) 2010-12-28 2015-11-03 Citrix Systems, Inc. Systems and methods for policy based routing for multiple next hops
US10678602B2 (en) * 2011-02-09 2020-06-09 Cisco Technology, Inc. Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures
US9065815B2 (en) 2011-04-15 2015-06-23 Nec Corporation Computer system, controller, and method of controlling network access policy
US9110703B2 (en) 2011-06-07 2015-08-18 Hewlett-Packard Development Company, L.P. Virtual machine packet processing
US20130031240A1 (en) 2011-07-29 2013-01-31 Cisco Technology, Inc. Capacity Evaluation of Computer Network Capabilities
US20130034015A1 (en) * 2011-08-05 2013-02-07 International Business Machines Corporation Automated network configuration in a dynamic virtual environment
US9442769B2 (en) * 2011-09-30 2016-09-13 Red Hat, Inc. Generating cloud deployment targets based on predictive workload estimation
US9542711B2 (en) 2011-10-07 2017-01-10 Salesforce.Com, Inc. Computer implemented methods and apparatus for providing selective notifications in an online social network
US20130103834A1 (en) 2011-10-21 2013-04-25 Blue Coat Systems, Inc. Multi-Tenant NATting for Segregating Traffic Through a Cloud Service
US8881145B2 (en) 2011-12-15 2014-11-04 Industrial Technology Research Institute System and method for generating application-level dependencies in one or more virtual machines
US9116736B2 (en) 2012-04-02 2015-08-25 Cisco Technology, Inc. Virtualized movement of enhanced network services associated with a virtual machine
US9386085B2 (en) 2012-04-04 2016-07-05 Radware, Ltd. Techniques for providing scalable application delivery controller services
CN102739770B (zh) * 2012-04-18 2015-06-17 上海和辰信息技术有限公司 一种基于云计算的资源调度方法及系统
US20130290541A1 (en) 2012-04-25 2013-10-31 Hitachi ,Ltd. Resource management system and resource managing method
US9223634B2 (en) 2012-05-02 2015-12-29 Cisco Technology, Inc. System and method for simulating virtual machine migration in a network environment
US9292351B2 (en) 2012-06-15 2016-03-22 Verizon Patent And Licensing Inc. Distributed fabric architecture in a cloud computing environment
US8929254B2 (en) 2012-10-30 2015-01-06 Ciena Corporation Systems and methods for constrained forwarding based packet network connectivity
US9282118B2 (en) 2012-11-13 2016-03-08 Intel Corporation Policy enforcement in computing environment
US9680870B2 (en) 2012-12-28 2017-06-13 Verizon Patent And Licensing Inc. Software-defined networking gateway
US9935841B2 (en) 2013-01-28 2018-04-03 Intel Corporation Traffic forwarding for processing in network environment
US9384025B2 (en) 2013-01-28 2016-07-05 Intel Corporation Traffic and/or workload processing

Also Published As

Publication number Publication date
CN104025073B (zh) 2016-11-09
CN104025073A (zh) 2014-09-03
US20140136706A1 (en) 2014-05-15
US20140137182A1 (en) 2014-05-15
GB2523038B (en) 2020-06-03
GB2523038A (en) 2015-08-12
US9282119B2 (en) 2016-03-08
DE112013000395B4 (de) 2023-07-27
GB201509610D0 (en) 2015-07-15
US9282118B2 (en) 2016-03-08
WO2014077904A1 (en) 2014-05-22

Similar Documents

Publication Publication Date Title
DE112013000395B4 (de) Vorrichtung, verfahren und computerlesbarer speicher zur richtliniendurchsetzung in rechenumgebung
DE102016222048B4 (de) Dynamisch definierte virtuelle private netzwerktunnel in hybriden cloud-umgebungen
DE102015105884B4 (de) Rechenknoten und Verfahren zur Migration einer virtuellen Maschine, Rechenzentrummanager zur Migration virtueller Maschinen, Maschinenlesbares Speichermedium und Rechenvorrichtungen
DE102022212157A1 (de) Absichtsbasierte clusterverwaltung
US9384025B2 (en) Traffic and/or workload processing
CN108701059B (zh) 多租户资源分配方法和系统
DE112017001762T5 (de) Technologien für den einsatz dynamischer underlay-netzwerke in cloud-computing-infrastrukturen
DE112016003726B4 (de) Dynamisch definierte virtuelle private Netzwerktunnel in hybriden Cloud-Umgebungen
DE102009016742B4 (de) Mehrprozessor-Computersystem
CN107153565B (zh) 配置资源的方法及其网络设备
CN105915470B (zh) 一种基于Linux流量控制的弹性带宽配置方法
DE112016004347T5 (de) Lokale und globale Datenzentrumsnetzoptimierungen in Echtzeit basierend auf Plattformtelemetriedaten
DE102016221811A1 (de) Zuordnung von Ressourcen mit mehrschichtigem Speicher
DE102020113346A1 (de) Bereitstellen von service-containern in einer adaptervorrichtung
CN106656867A (zh) 一种基于虚拟网络的应用感知的动态sdn配置方法
DE102004012056A1 (de) Systeme und Verfahren zum Überwachen von Ressourcenausnutzung und Anwendungsleistungsfähigkeit
DE112012002998T5 (de) Virtuelle Netzwerküberlagerungen
DE102021209282A1 (de) Verfahren, einrichtungen und systeme zur gemeinsamen nutzung von rechenressourcen zwischen edge-rechenknoten unter verwendung eines overlay-managers
DE102020110143A1 (de) Standortbasierte virtualisierungs-workload-platzierung
DE112016005933T5 (de) Technologien zum Durchsetzen einer Netzwerkzugriffssteuerung fiir virtuelle Maschinen
US20160057206A1 (en) Application profile to configure and manage a software defined environment
DE102018202432A1 (de) Strukturunterstützung für die Dienstgüte
DE112021002487T5 (de) Teilen einer geografisch konzentrierten arbeitslast zwischen benachbarten mec-hosts mehrerer netzbetreiber
DE102021125182A1 (de) Gemeinsam genutzte unternehmenscloud
DE102021211927A1 (de) Verfahren, systeme, herstellungsartikel und vorrichtungen zum stapeln von funktionen

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20140716

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0015160000

Ipc: G06F0009440000

R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final