DE112016001657T5 - Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke - Google Patents

Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke Download PDF

Info

Publication number
DE112016001657T5
DE112016001657T5 DE112016001657.3T DE112016001657T DE112016001657T5 DE 112016001657 T5 DE112016001657 T5 DE 112016001657T5 DE 112016001657 T DE112016001657 T DE 112016001657T DE 112016001657 T5 DE112016001657 T5 DE 112016001657T5
Authority
DE
Germany
Prior art keywords
dhcp
tenant
data
address
option
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.)
Pending
Application number
DE112016001657.3T
Other languages
English (en)
Inventor
Liang Rong
Gang Tang
Zijin Tao
MingShuang Xian
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.)
Kyndryl Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112016001657T5 publication Critical patent/DE112016001657T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5061Pools of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L2012/4629LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching

Abstract

Ein Ansatz beinhaltet ein Bereitstellen einer Multi-Tenancy-Unterstützung durch ein DHCP-Protokoll (Dynamic Host Configuration Protocol). Der Ansatz beinhaltet ein Empfangen eines DHCP-Pakets, ein Einfügen von Tenant-spezifischen Optionsdaten in das DHCP-Paket und ein Übertragen des DHCP-Pakets mit den Tenant-spezifischen Optionsdaten.

Description

  • TECHNISCHES GEBIET
  • Der technische Charakter der vorliegenden Erfindung bezieht sich im Allgemeinen auf einen DHCP-Mechanismus (Dynamic Host Configuration Protokol) für Cloud-Netzwerke und im Besonderen auf einen DHCP-Mechanismus für Multi-Tenant-Netzwerke in der Cloud.
  • HINTERGRUND
  • Multi-Tenant-Unterstützung ist eine grundlegende Anforderung für Cloud-Rechenzentrumsnetzwerke und erfordert Dienstisolierungen zwischen verschiedenen Tenants. Eine Art der Dienstisolierung ist eine Adressisolierung, die verschiedenen Tenants überlappende Adressen bereitstellt. Bei aktuellen Standards wie z. B. den IETF NVO3-Standards (Internet Engineering Task Force Network Virtualization Overlays) wird eine virtuelle Netzwerkkennung (Virtual Network Identifier, VNID) bereitgestellt, um die Trennung von virtuellen Netzwerken verschiedener Tenants in virtuelle Overlay-Netzwerke zu unterstützen. Adressierung und Host-Konfiguration können durch das DHCP-Protokoll erfolgen, das Hosts Konfigurationsparameter bereitstellt.
  • Das DHCP-Protokoll weist zwei Komponenten auf, ein Protokoll zum Bereitstellen Host-spezifischer Konfigurationsparameter von einem DHCP-Server an einen Host und einen Mechanismus zum Zuordnen von Netzwerkadressen zu Hosts. Das DHCP-Protokoll unterstützt lediglich eine Konfiguration in einem einzigen Adressraum. Aus diesem Grund kann jeder DHCP-Server nur mit Konfigurationsparametern eines einzigen Adressraums konfiguriert werden (d. h. das Protokoll kann keine überlappenden Adressräume unterstützen). Somit kann der Client des DHCP-Servers nur eine Adresse aus diesem einzigen Adressraum beziehen.
  • Um verschiedenen Tenants in Cloud-Rechenzentrumsnetzwerken überlappende Adressen bereitzustellen, müssen für jeden Tenant getrennte DHCP-Server eingerichtet werden. Dies wird in der Regel realisiert, indem ein eindeutiger DHCP-Server in einem getrennten LINUX-Namensraum eingerichtet wird (d. h. durch eine Virtualisierung auf der Ebene des Betriebssystems) oder indem mehrere DHCP-Server in verschiedenen Hosts ausgeführt werden. Bei diesen Realisierungen gibt es nur einen DHCP-Server für einen Tenant, und die Adressen, die verschiedenen Tenants bereitgestellt werden, können sich überlappen.
  • Allerdings ist das Konfigurieren von mehreren Linux-Namensräumen komplex und ressourcen-/rechenintensiv, da in der Regel nur eine physische Netzwerkschnittstellenkarte verwendet wird, um eine Verbindung mit dem Datennetzwerk herzustellen. Darüber hinaus erfordern mehrere Linux-Namensräume, dass mehrere virtuelle Netzwerkschnittstellen erzeugt und mit einer Ethernet-Bridge verbunden werden, um diese Namensräume zu bedienen, und dass mehrere DHCP-Serverinstanzen ausgeführt werden, von denen jeder nur einen einzigen Tenant oder sogar nur ein einziges Netzwerksegment bedient. Zudem mangelt es an Skalierbarkeit, wenn die Anzahl der Tenants in die Tausende geht. Des Weiteren unterstützen viele herkömmliche Betriebssysteme (z. B. WINDOWS SERVER und herkömmliche LINUX-Kernel vor 2.6.32.xx) keine LINUX-Namensräume.
  • Außerdem gibt es auch dann keine Interoperabilität zwischen Overlay-Netzwerken, wenn Overlay-Kapselungsprotokolle für eine Multi-Tenant-Unterstützung verwendet werden, wie beispielsweise VLAN (Virtual Local Area Network), VXLAN (Virtual Extensible Local Area Network), DOVE (Distributed Overlay Virtual Ethernet), NVGRE (Network Virtualization using Generic Routing Encapsulation), STT (Stateless Transport Tunneling), GENEVE (Generic Network Virtualization Encapsulation) usw. Aus diesem Grund stellen derartige Systeme nicht die Flexibilität bereit, die für eine Multi-Tenant-Unterstützung benötigt wird.
  • KURZDARSTELLUNG
  • Gemäß einem ersten Aspekt der Erfindung wird ein Verfahren bereitgestellt, das ein Empfangen eines DHCP-Pakets beinhaltet. Das Verfahren beinhaltet weiterhin ein Einfügen von Tenant-spezifischen Optionsdaten in das DHCP-Paket. Das Verfahren beinhaltet des Weiteren ein Übertragen des DHCP-Pakets mit den Tenant-spezifischen Optionsdaten.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Computerprogrammprodukt bereitgestellt, das ein computerlesbares Speichermedium mit in dem Speichermedium enthaltenen computernutzbarem Programmcode aufweist. Der Programmcode ist kein flüchtiges Signal per se, und die Programmbefehle sind durch eine Datenverarbeitungseinheit lesbar, um die Datenverarbeitungseinheit zum Durchführen eines Verfahrens zu veranlassen, das ein Empfangen eines DHCP-Pakets beinhaltet. Das Verfahren beinhaltet des Weiteren ein Feststellen, dass das DHCP-Paket Tenant-spezifische Optionsdaten aufweist. Das Verfahren beinhaltet des Weiteren ein Auswählen eines Adressraums auf Grundlage der Tenant-spezifischen Optionsdaten.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Computerprogramm bereitgestellt, das ein computerlesbares Speichermedium mit in dem Speichermedium enthaltenen computernutzbarem Programmcode aufweist. Der Programmcode ist kein flüchtiges Signal per se, und die Programmbefehle sind durch eine Datenverarbeitungseinheit lesbar, um die Datenverarbeitungseinheit zum Durchführen eines Verfahrens zu veranlassen, das ein Empfangen eines DHCP-Pakets beinhaltet, welches Tenant-spezifische Optionsdaten aufweist. Das Verfahren beinhaltet des Weiteren ein Lokalisieren eines Tenant-Adressraums auf Grundlage der Tenant-spezifischen Optionsdaten. Das Verfahren beinhaltet des Weiteren ein Erhalten einer virtuellen Netzwerkkennung von einem virtuellen Zugangspunkt (Virtual Access Point, VAP). Das Verfahren beinhaltet des Weiteren ein Erhalten einer Subnetzkonfiguration, die der erhaltenen virtuellen Netzwerkkennung entspricht. Das Verfahren beinhaltet des Weiteren ein Zuordnen einer Internetprotokoll-Adresse (IP-Adresse), die der erhaltenen Subnetzkonfiguration entspricht.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein System bereitgestellt, das eine Zentraleinheit (CPU), einen computerlesbaren Arbeitsspeicher und ein computerlesbares Speichermedium beinhaltet. Zusätzlich beinhaltet das System einen oder mehrere Programmbefehle. Das System beinhaltet Programmbefehle, um Multi-Tenancy-Daten in ein DHCP-Paket einzufügen. Das System beinhaltet des Weiteren Programmbefehle, um das DHCP-Paket mit den Multi-Tenancy-Daten zu übertragen. Die Programmbefehle werden auf dem computerlesbaren Speichermedium gespeichert, um über den computerlesbaren Arbeitsspeicher durch die CPU ausgeführt zu werden.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Verfahren zum Konfigurieren eines Datenrahmenformats für eine Tenant-spezifische DHCP-Option bereitgestellt, das ein Konfigurieren eines ersten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option beinhaltet, um einen Overlay-Protokolltyp anzugeben, der für die Tenant-Isolierung verwendet wird. Das Verfahren beinhaltet des Weiteren ein Konfigurieren eines zweiten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option, um einen Tenant eindeutig zu identifizieren. Das Verfahren beinhaltet des Weiteren ein Konfigurieren eines dritten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option, um ein virtuelles Netzwerk anzugeben.
  • Ausführungsformen der vorliegenden Erfindung stellen Systeme und Verfahren bereit, die technische Merkmale wie z. B. einen neuartigen DHCP-Mechanismus für Multi-Tenant-Netzwerke in der Cloud realisieren, der das Problem der Adressisolierung für verschiedene Tenants auf wirkungsvollere Art behebt als gegenwärtige Systeme. So sind bei Ausführungsformen des DHCP-Mechanismus zum Beispiel Tenant-spezifische Daten in einem DHCP-Paket enthalten, um einen Gültigkeitsbereich eines Adressraums anzugeben (Scoping). Der Vorteil der oben erwähnten technischen Lösung für Ausführungsformen des DHCP-Mechanismus besteht darin, dass sie abwärtskompatibel ist und keine nachteiligen Auswirkungen auf gegenwärtig realisierte Systeme für eine DHCP-Verarbeitung hat. Wenn die Tenant-spezifischen Daten nicht in dem DHCP-Paket bereitgestellt werden, kann außerdem die DHCP-Verarbeitung so erfolgen, wie dies bei gegenwärtigen Systemen der Fall ist. Verglichen mit einem Adressbereich in dem DHCP-Paket, der einen globalen Gültigkeitsbereich aufweist, ist gemäß den technischen Merkmalen von Ausführungsformen des DHCP-Mechanismus der Adressbereich des DHCP-Pakets zudem lokal für einen Tenant-Adressraum gültig, wenn die Tenant-spezifischen DHCP-Daten verwendet werden.
  • Bei Verwendung des DHCP-Mechanismus von Ausführungsformen der vorliegenden Erfindung kann zudem ein einziger DHCP-Server DHCP-Dienste auch dann für mehrere Tenants bereitstellen, wenn sich deren Adressbereich überlappt. Somit ist im Gegensatz zu gegenwärtigen Systemen keine Isolierung auf Betriebssystemebene (z. B. des LINUX-Namensraums) notwendig. Des Weiteren vereinfachen Ausführungsformen des DHCP-Mechanismus die Bereitstellung von DHCP-Diensten in Multi-Tenant-Rechenzentren in der Cloud. Die technischen Merkmale von Ausführungsformen des DHCP-Mechanismus beheben auch das Problem der Interoperabilität, wenn ein Rechenzentrumsnetzwerk heterogene virtuelle Umgebungen aufweist, die von verschiedenen Anbietern angeboten werden.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird in der folgenden ausführlichen Beschreibung mit Blick auf die erwähnte Mehrzahl von Zeichnungen beschrieben, wobei es sich um Beispiele für beispielhafte Ausführungsformen der vorliegenden Erfindung handelt, die den inhaltlichen Geltungsumfang nicht beschränken.
  • 1 stellt einen Cloud-Datenverarbeitungsknoten gemäß einer Ausführungsform der vorliegenden Erfindung dar.
  • 2 stellt eine Cloud-Datenverarbeitungsumgebung gemäß Ausführungsformen der vorliegenden Erfindung dar.
  • 3 stellt Abstraktionsmodellschichten gemäß Ausführungsformen der vorliegenden Erfindung dar.
  • 4 stellt einen Cloud-Datenverarbeitungsknoten gemäß einer weiteren Ausführungsform der vorliegenden Erfindung dar.
  • 5 ist ein Datenrahmenformat für eine Tenant-spezifische DHCP-Option gemäß Aspekten der vorliegenden Erfindung.
  • 6 stellt einen beispielhaften Ablauf (Aktivitätenplan) einer DHCP-Paketverarbeitung gemäß Aspekten der vorliegenden Erfindung dar.
  • 7 stellt einen beispielhaften Ablauf einer Adresszuordnungsverarbeitung gemäß Aspekten der vorliegenden Erfindung dar.
  • 8 stellt einen beispielhaften Ablauf einer DHCP-Subnetzauswahl-Unterstützung gemäß Aspekten der vorliegenden Erfindung dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Der technische Charakter der vorliegenden Erfindung bezieht sich im Allgemeinen auf einen DHCP-Mechanismus (Dynamic Host Configuration Protocol) für Cloud-Netzwerke und im Besonderen auf einen DHCP-Mechanismus für Multi-Tenant-Netzwerke in der Cloud. Genauer gesagt stellen Ausführungsformen der vorliegenden Erfindung Systeme und Verfahren bereit, die technische Merkmale wie z. B. einen neuartigen DHCP-Mechanismus für Multi-Tenant-Netzwerke in der Cloud realisieren, der das Problem der Adressisolierung für verschiedene Tenants auf wirkungsvollere Art behebt als gegenwärtige Systeme. So sind bei Ausführungsformen des DHCP-Mechanismus zum Beispiel Tenant-spezifische Daten in einem DHCP-Paket enthalten, um einen Gültigkeitsbereich eines Adressraums anzugeben (Scoping).
  • Der Vorteil der oben erwähnten technischen Lösung für Ausführungsformen des DHCP-Mechanismus besteht darin, dass sie abwärtskompatibel ist und keine nachteiligen Auswirkungen auf gegenwärtig realisierte Systeme für eine DHCP-Verarbeitung hat. Wenn die Tenant-spezifischen Daten nicht in dem DHCP-Paket bereitgestellt werden, kann außerdem die DHCP-Verarbeitung so erfolgen, wie dies bei gegenwärtigen Systemen der Fall ist. Verglichen mit einem Adressbereich in dem DHCP-Paket, der einen globalen Gültigkeitsbereich aufweist, ist gemäß den technischen Merkmalen von Ausführungsformen des DHCP-Mechanismus der Adressbereich des DHCP-Pakets zudem lokal für einen Tenant-Adressraum gültig, wenn die Tenant-spezifischen DHCP-Daten verwendet werden.
  • Bei Verwendung des DHCP-Mechanismus von Ausführungsformen der vorliegenden Erfindung kann zudem ein einziger DHCP-Server auch dann DHCP-Dienste für mehrere Tenants bereitstellen, wenn sich deren Adressbereiche miteinander überlappen. Somit ist im Gegensatz zu gegenwärtigen Systemen keine Isolierung auf Betriebssystemebene (z. B. des LINUX-Namensraums) notwendig. Des Weiteren vereinfachen Ausführungsformen des DHCP-Mechanismus die Bereitstellung von DHCP-Diensten in Multi-Tenant-Rechenzentren in der Cloud. Die technischen Merkmale von Ausführungsformen des DHCP-Mechanismus beheben auch das Problem der Interoperabilität, wenn ein Rechenzentrumsnetzwerk heterogene virtuelle Umgebungen aufweist, die von verschiedenen Anbietern angeboten werden.
  • Bei weiteren Ausführungsformen des DHCP-Mechanismus wird ein einziger DHCP-Server, der einen Adressierungsdienst bereitstellt, in einem Cloud-Rechenzentrum auf Grundlage von Overlay-Netzwerken für mehrere Tenants verwendet. Ausführungsformen des DHCP-Mechanismus tragen zur Lösung der folgenden technischen Probleme von DHCP-Systemen bei:
    • (i) Adressraumisolierung für verschiedene Tenants bei Vorhandensein eines DHCP-Relay-Agenten;
    • (ii) Adress-Subnetzauswahl für Tenants in virtuellen Netzwerken mit Hilfe einer NVA (Network Virtualization Authority); und
    • (iii) Allgemeine DHCP-Dienstbereitstellung für heterogene virtuelle Umgebungen, die ein herkömmliches physisches Infrastrukturnetzwerk und Overlay-Netzwerke mit unterschiedlichen Kapselungsprotokollen (VLAN, VXLAN, NVGRE, STT oder GENEVE) aufweisen.
  • Des Weiteren unterbrechen Ausführungsformen des DHCP-Mechanismus nicht gegenwärtige DHCP-Interaktionen zwischen Clients und einem Server wie z. B. DHCP DISCOVER, OFFER, REQUEST, ACKNOWLEDGMENT, RELEASE usw. Vielmehr funktionieren die DHCP-Interaktionen auch in Ausführungsformen des DHCP-Mechanismus der vorliegenden Erfindung.
  • Bei zusätzlichen technischen Merkmalen von Ausführungsformen des DHCP-Mechanismus zeigt die Tenant-spezifische Option einem DHCP-Server an, dass er eine IP-Adresse in einem zugehörigen Adressraum zuordnen soll, die für diesen Tenant spezifisch ist. Somit kann ein einziger DHCP-Server eine Mehrzahl von Tenants bedienen, und jeder Tenant kann seinen eigenen IP-Adresspool für eine Zuordnung aufweisen. Darüber hinaus ist jeder Pool eines Tenants vollständig unabhängig und kann sich mit einem weiteren Pool (d. h. mit demselben IP-Adresspool) eines anderen Tenants überlappen. Die Tenant-spezifische Option wird durch einen DHCP-Relay-Agenten einem DHCP-Header hinzugefügt.
  • Bei den technischen Lösungen der vorliegenden Erfindung weist die Tenant-spezifische Option die folgenden Felder auf:
    • (i) Option: muss einen eindeutigen Wert haben, der in bekannten DHCP-Systemen verwendet wird;
    • (ii) Länge: die Gesamtzahl der Bytes der verbleibenden Felder;
    • (iii) Transport-Agent: ein Codierwert, der den für die Tenant-Isolierung verwendeten Overlay-Protokolltyp angibt (z. B. VLAN, VXLAN, DOVE, NVGRE, STT usw.);
    • (iv) Tenant-ID: eine UUID (Universally Unique Identifier), die dazu verwendet wird, einen Tenant zu identifizieren; und
    • (v) virtuelles Netzwerk VNID: bezeichnet ein virtuelles Netzwerk, das eine Abstraktion eines L2-Segments oder einer Broadcast-Domäne ist. Ein Tenant kann mehrere virtuelle Netzwerke aufweisen.
  • Bei weiteren Ausführungsformen ist die Tenant-spezifische Option als eine Unteroption einer DHCP-Relay-Agenten-Datenoption (Option 82, RFC 3046) realisiert. Bei Ausführungsformen fügt die Realisierung der standardmäßigen Option 82 eine Unteroption hinzu, um die vorgeschlagene Tenant-spezifische Option zu enthalten. Die Tenant-spezifische Option wird durch den DHCP-Relay-Agenten dem DHCP-Header hinzugefügt, der in einem Netzvirtualisierungsrand (Network Virtualization Edge, NVE) ausgeführt wird. Da sich der NVE an einem Rand des Overlay-Netzwerks befindet, lässt sich der Codierwert eines Transport-Agenten in der Tenant-spezifischen Option auf einfache Weise erhalten. So kann die VNID zum Beispiel von einem VAP erhalten werden, mit dem der DHCP-Client verbunden ist.
  • Um bei Ausführungsformen des DHCP-Mechanismus eine Multi-Tenant-Unterstützung zu ermöglichen, unterstützt der DHCP-Server zwei Arten von Adressräumen: einen globalen Adressraum und einen Tenant-Adressraum. Der globale Adressraum ist mit einem bekannten DHCP-Mechanismus kompatibel, bei dem das DHCP-Paket keine Tenant-spezifische Option enthält. In dem globalen Adressraum eines gegenwärtigen DHCP-Mechanismus können sich die IP-Adressbereiche nicht überlappen; in der technischen Lösung unter Verwendung von Ausführungsformen des DHCP-Mechanismus hat dagegen jeder Tenant einen spezifischen Adresspool in dem Tenant-Adressraum, und der Adressbereich in dem DHCP-Mechanismus kann sich mit dem Adresspool eines anderen Tenants überlappen.
  • Wenn die Nachricht DHCP_DISCOVER nicht die Tenant-spezifische Option enthält, führt bei Ausführungsformen des DHCP-Mechanismus ein DHCP-Server eine bekannte DHCP-Verarbeitung durch. Wenn die Nachricht DHCP_DISCOVER hingegen die Tenant-spezifische Option enthält, wird die Tenant-spezifische Option dazu verwendet, den Tenant-Adressraum und den IP-Bereich zu lokalisieren. Der DHCP-Server lokalisiert den Adressraum, welcher der Tenant-ID in der Tenant-spezifischen Option entspricht. Wenn die Nachricht DHCP_DISCOVER eine Option für die Subnetzauswahl (Option 118) oder eine Unteroption für die Verbindungsauswahl (Unteroption 5 in Option 82) aufweist, ordnet der DHCP-Server eine Adresse aus diesem Subnetz zu. Wenn die Nachricht DHCP_DISCOVER hingegen keine Option für die Subnetzauswahl oder eine Unteroption für die Verbindungsauswahl aufweist, wird ein IP-Bereich einer VNID zugewiesen, und der DHCP-Server sucht den der VNID entsprechenden IP-Bereich in der Tenant-spezifischen Option. Ausführungsformen des DHCP-Mechanismus der vorliegenden Erfindung können des Weiteren einen DHCP-Server beinhalten, der ein Abgleichkriterium oder ACL-Regeln für die Tenant-spezifische Option in der Konfiguration verwendet, um den Tenant-Adressraum zu lokalisieren.
  • Bei Ausführungsformen des DHCP-Mechanismus der vorliegenden Erfindung kann ein Cloud-Dienstanbieter (Cloud Service Provider, CSP) verschiedene Overlay-Netzwerklösungen unterschiedlicher Hersteller nutzen, um ein Multi-Tenant-Rechenzentrum in der Cloud zu realisieren. Somit können Ausführungsformen des DHCP-Mechanismus verwendet werden, wenn die Netzwerkgröße zunimmt. In einem Beispiel kann der CSP über zwei Overlay-Netzwerke verfügen, und diese Overlay-Netzwerke können auf einem gemeinsamen physischen Netzwerk aufbauen. Ein Tenant kann virtuelle Maschinen (VMs) in beiden Overlay-Netzwerken aufweisen. Somit gibt es in Ausführungsformen des neuartigen DHCP-Mechanismus eine komfortable Möglichkeit, den DHCP-Server in dem physischen Netzwerk bereitzustellen, falls ein Tenant virtuelle Maschinen aufweist, die mehrere heterogene Overlay-Netzwerke überspannen. Das Transport-Agenten-Feld in einer Tenant-spezifischen Option dient zur Bereitstellung des DHCP-Servers.
  • Da der Gültigkeitsbereich einer VNID auf ein einziges Overlay-Netzwerk beschränkt ist, kann in solchen heterogenen Netzwerken der DHCP-Server bei Ausführungsformen des DHCP-Mechanismus den Transport-Agenten zusammen mit der VNID in der Tenant-spezifischen Option als Klassifizierungsfelder verwenden, um den IP-Bereich abzuleiten, aus dem IP-Adressen zugeordnet werden. Um einen IP-Adressverwaltungsdienst für heterogene virtuelle Overlay-Netzwerke mit einem einzigen DHCP-Server in einem Cloud-Rechenzentrum zu erhalten, kann somit als eine Dimension in den Klassifizierungskriterien ein Transport-Agent hinzugefügt werden, um den IP-Adressbereich in dem Tenant-Adressraum zu lokalisieren.
  • Obwohl diese Offenbarung eine ausführliche Beschreibung der Cloud-Datenverarbeitung beinhaltet, sollte vorab klar sein, dass die Realisierung der hier dargelegten Methoden nicht auf eine Cloud-Datenverarbeitungsumgebung beschränkt ist. Vielmehr können Ausführungsformen der vorliegenden Erfindung in Verbindung mit jeder anderen Art von Datenverarbeitungsumgebung nach dem derzeitigen oder künftigen Stand der Technik realisiert werden.
  • Eine Cloud-Datenverarbeitung ist ein Modell einer Dienstbereitstellung, um einen komfortablen, bedarfsgesteuerten Netzwerkzugriff auf einen gemeinsam genutzten Vorrat von konfigurierbaren Datenverarbeitungsressourcen (z. B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Arbeitsspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste) zu ermöglichen, die mit möglichst geringem Verwaltungsaufwand und möglichst wenig Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann z. B. mindestens fünf Merkmale, mindestens drei Dienstmodelle und mindestens vier Bereitstellungsmodelle beinhalten.
  • Die Merkmale lauten wie folgt:
    Bedarfsgesteuerte Selbstbedienung: Ein Cloud-Verbraucher kann sich einseitig und automatisch nach Bedarf Datenverarbeitungsfähigkeiten wie z. B. Serverzeit und Netzwerkspeicher bereitstellen, ohne dass hierfür eine menschliche Interaktion mit dem Anbieter des Dienstes notwendig ist.
  • Breiter Netzwerkzugriff: Fähigkeiten werden über ein Netzwerk zur Verfügung gestellt und über Standardmechanismen zugeordnet, die eine Verwendung durch verschiedenartige Thin- oder Thick-Client-Plattformen ermöglichen (z. B. Mobiltelefone, Laptops und PDAs).
  • Ressourcenbündelung: Die Datenverarbeitungsressourcen des Anbieters sind gebündelt, um unter Verwendung eines Multi-Tenant-Modells mehreren Verbrauchern bereitzustehen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen bzw. neu zugewiesen werden. Standortunabhängigkeit ist insofern gegeben, als der Verbraucher im Allgemeinen den genauen Standort der bereitgestellten Ressourcen weder kontrolliert noch kennt, jedoch unter Umständen in der Lage ist, auf einer höheren Abstraktionsebene (z. B. Land, Bundesland oder Rechenzentrum) einen Standort festzulegen.
  • Flexible Anpassungsfähigkeit: Fähigkeiten lassen sich schnell und elastisch (in einigen Fällen automatisch) bereitstellen, um eine rasche Skalierung nach oben zu ermöglichen, sowie – für eine rasche Skalierung nach unten – schnell wieder freigegeben zu werden. Für den Verbraucher scheinen die zur Bereitstellung verfügbaren Fähigkeiten häufig unbegrenzt zu sein und können jederzeit in jeder beliebigen Menge erworben werden.
  • Dienstmessung: Cloud-Systeme kontrollieren und optimieren die Ressourcennutzung automatisch, indem sie in einer bestimmten, der Art des Dienstes angemessenen Abstraktionsschicht eine Messfunktion nutzen (z. B. Speicherung, Verarbeitung, Bandbreite und aktive Benutzerkonten). Die Ressourcennutzung kann überwacht, kontrolliert und protokolliert werden, wodurch sowohl für den Anbieter als auch für den Verbraucher des genutzten Dienstes Transparenz bereitgestellt wird.
  • Die Dienstmodelle lauten wie folgt:
    Software as a Service (SaaS): Die dem Verbraucher bereitgestellte Fähigkeit besteht darin, die in einer Cloud-Infrastruktur ausgeführten Anwendungen des Anbieters zu verwenden. Der Zugriff auf die Anwendungen kann über eine Thin-Client-Schnittstelle wie z. B. einen Webbrowser von verschiedenen Client-Einheiten aus erfolgen (z. B. eine eMail-Nachricht auf Grundlage des Webs). Mit Ausnahme beschränkter benutzerspezifischer Einstellungen der Anwendungskonfiguration wird die darunterliegende Cloud-Infrastruktur wie Netzwerk, Server, Betriebssysteme, Speicher oder auch einzelne Anwendungsfunktionen vom Verbraucher weder verwaltet noch kontrolliert.
  • Platform as a Service (PaaS): Die dem Verbraucher bereitgestellte Fähigkeit besteht darin, vom Benutzer erzeugte oder erworbene Anwendungen, die anhand von vom Anbieter bereitgestellten Programmiersprachen und Werkzeugen erstellt wurden, in der Cloud-Infrastruktur bereitzustellen. Die darunterliegende Infrastruktur wie Netzwerke, Server, Betriebssysteme oder Speicher wird vom Verbraucher weder verwaltet noch kontrolliert, er hat jedoch die Kontrolle über die bereitgestellten Anwendungen und möglicherweise über Konfigurationen der Hosting-Umgebung für die Anwendungen.
  • Infrastructure as a Service (IaaS): Die dem Verbraucher bereitgestellte Fähigkeit besteht darin, Verarbeitung, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Verbraucher in der Lage ist, frei wählbare Software wie z. B. Betriebssysteme und Anwendungen bereitzustellen und auszuführen. Die darunterliegende Cloud-Infrastruktur wird vom Verbraucher weder verwaltet noch kontrolliert, er hat jedoch die Kontrolle über Systeme und Einheiten (z. B. Betriebssysteme, Speicher, bereitgestellte Anwendungen usw.) und möglicherweise eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z. B. Host-Firewalls).
  • Die Bereitstellungsmodelle lauten wie folgt:
    Private Cloud: Die Cloud-Infrastruktur wird für lediglich eine Organisation betrieben. Sie kann von der Organisation selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
  • Gemeinschafts-Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezifische Gemeinschaft mit gemeinsamen Anliegen (z. B. Aufgabe, Sicherheitsanforderungen, Richtlinie und Einhaltung von Gesetzen und Richtlinien). Sie kann von den Organisationen selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
  • Öffentliche Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Branchengruppe bereitgestellt und ist Eigentum einer Organisation, die Cloud-Dienste verkauft.
  • Hybrid-Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren (privaten, Gemeinschafts- oder öffentlichen) Clouds, die eigenständige Einheiten bleiben, aber durch eine standardisierte oder herstellerspezifische Technologie miteinander verbunden sind, die eine Portierbarkeit von Daten und Anwendungen ermöglicht (z. B. das Cloud Bursting für den Lastausgleich zwischen Clouds).
  • Eine Cloud-Datenverarbeitungsumgebung ist dienstorientiert, wobei der Schwerpunkt auf Zustandslosigkeit, geringer Kopplung, Modularität und semantischer Kompatibilität liegt. Im Mittelpunkt einer Cloud-Datenverarbeitung steht eine Infrastruktur, die ein Netzwerk von miteinander verbundenen Knoten aufweist.
  • Mit Blick auf 1 wird eine schematische Darstellung eines Beispiels für einen Cloud-Datenverarbeitungsknoten gezeigt. Ein Cloud-Datenverarbeitungsknoten 10 ist lediglich ein Beispiel für einen geeigneten Cloud-Datenverarbeitungsknoten und nicht als eine wie auch immer geartete Beschränkung von Verwendungsumfang oder Funktionalität von Ausführungsformen der hier beschriebenen Erfindung gedacht. Unabhängig davon kann der Cloud-Datenverarbeitungsknoten 10 mit jeder hier dargelegten Funktionalität realisiert sein und/oder diese durchführen.
  • In dem Cloud-Datenverarbeitungsknoten 10 gibt es ein Computersystem/einen Server 12, das bzw. der mit zahlreichen anderen Universal- oder Spezialsystemumgebungen oder -konfigurationen betrieben werden kann. Beispiele bekannter Datenverarbeitungssysteme, -umgebungen und/oder -konfigurationen, die für eine Verwendung mit einem Computersystem/Server 12 geeignet sein könnten, sind, ohne darauf beschränkt zu sein, Personal-Computersysteme, Server-Computersysteme, Thin Clients, Thick Clients, Taschen- oder Laptop-Einheiten, Mehrprozessorsysteme, Systeme auf der Grundlage von Mikroprozessoren, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Mini-Computersysteme, Mainframe-Computersysteme sowie verteilte Cloud-Datenverarbeitungsumgebungen, die eines der obigen Systeme oder eine der Einheiten beinhalten, und dergleichen.
  • Das Computersystem/der Server 12 lässt sich im allgemeinen Zusammenhang von Befehlen beschreiben, die durch ein Computersystem ausführbar sind, wie z. B. Programmmodule, die von einem Computersystem ausgeführt werden. Allgemein können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen usw. beinhalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen realisieren. Das Computersystem/der Server 12 kann in verteilten Cloud-Datenverarbeitungsumgebungen eingesetzt werden, wo Aufgaben von entfernt angeordneten Verarbeitungseinheiten durchgeführt werden, die über ein Datenübertragungsnetzwerk miteinander verbunden sind. In einer verteilten Cloud-Datenverarbeitungsumgebung können sich Programmmodule sowohl in lokalen als auch in entfernt angeordneten Computersystem-Speichermedien wie beispielsweise Arbeitsspeichereinheiten befinden.
  • Wie in 1 wird das Computersystem/der Server 12 in dem Cloud-Datenverarbeitungsknoten 10 als eine Universal-Datenverarbeitungseinheit gezeigt. Die Komponenten des Computersystems/Servers 12 können eine/n oder mehrere Prozessoren oder Verarbeitungseinheiten 16, einen Systemarbeitsspeicher 28 und einen Bus 18 beinhalten, der verschiedene Systemkomponenten wie z. B. den Systemarbeitsspeicher 28 mit dem Prozessor 16 verbindet, ohne jedoch darauf beschränkt zu sein.
  • Der Bus 18 steht für mindestens eine von mehreren Arten von Busstrukturen, z. B. ein Speicherbus oder eine Speichersteuereinheit, ein Peripheriebus, ein Accelerated Graphics Port (AGP) und ein Prozessor oder lokaler Bus, wobei eine beliebige aus einer Vielfalt von Busarchitekturen verwendet werden kann. Beispielhaft und nicht als Beschränkung zu verstehen, beinhalten derartige Architekturen den ISA-Bus (Industry Standard Architecture), den MCA-Bus (Micro Channel Architecture), den EISA-Bus (Enhanced ISA), den lokalen VESA-Bus (Video Electronics Standards Association) und den PCI-Bus (Peripheral Component Interconnects).
  • Das Computersystem/der Server 12 beinhaltet üblicherweise eine Vielfalt von Medien, die von einem Computersystem gelesen werden können. Derartige Medien können beliebige verfügbare Medien sein, auf die das Computersystem/der Server 12 zugreifen kann, und zu ihnen zählen sowohl flüchtige als auch nicht flüchtige, entfernbare und nicht entfernbare Medien.
  • Der Systemarbeitsspeicher 28 kann ein von einem Computersystem lesbares Medium in Form eines flüchtigen Arbeitsspeichers wie z. B. eines RAM 30 und/oder eines Caches 32 beinhalten. Das Computersystem/der Server 12 kann des Weiteren andere entfernbare/nicht entfernbare, flüchtige/nicht flüchtige Computersystem-Speichermedien beinhalten. Lediglich als Beispiel dienend, kann ein Speichersystem 34 zum Lesen von und Schreiben auf ein nicht entfernbares, nicht flüchtiges magnetisches Medium (das nicht abgebildet ist und das üblicherweise als ein Festplattenlaufwerk bezeichnet wird) bereitgestellt werden. Obwohl hier nicht abgebildet, können ein Magnetplattenlaufwerk zum Lesen von und Schreiben auf eine entfernbare, nicht flüchtige Magnetplatte (z. B. eine Diskette) sowie ein optisches Plattenlaufwerk zum Lesen von oder Schreiben auf eine entfernbare, nicht flüchtige optische Platte wie z. B. einen CD-ROM, einen DVD-ROM oder ein anderes optisches Medium bereitgestellt werden. In diesen Fällen kann jedes Laufwerk über eine oder mehrere Datenmedienschnittstellen mit dem Bus 18 verbunden sein. Wie weiter unten ausführlicher dargestellt und beschrieben, kann der Arbeitsspeicher 28 mindestens ein Programmprodukt mit einem Satz von (z. B. mindestens einem) Programmmodulen beinhalten, wobei diese so konfiguriert sind, dass sie die Funktionen von Ausführungsformen der Erfindung durchführen.
  • Ein Programm/Dienstprogramm 40 mit einem Satz von (mindestens einem) Programmmodulen 42 kann beispielsweise, und ohne als Beschränkung verstanden zu werden, in dem Arbeitsspeicher 28 gespeichert sein, ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten. Jedes Betriebssystem, eines oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten oder eine Kombination hiervon können jeweils eine Realisierung einer Netzwerkumgebung beinhalten. [alternativ: Jedes der Betriebssysteme, das eine oder die mehreren Anwendungsprogramme, die anderen Programmmodule und die Programmdaten....]
  • Die Programmmodule 42 führen im Allgemeinen die Funktionen und/oder Verfahrensweisen von Ausführungsformen der hier beschriebenen Erfindung aus. So können zum Beispiel einige oder alle der Funktionen eines DHCP-Clients 80 als eines oder mehrere der Programmmodule 42 realisiert werden. Zusätzlich kann der DHCP-Client 80 als getrennte, zweckbestimmte Prozessoren oder als ein einziger oder mehrere Prozessoren realisiert werden, um die hier beschriebene Funktionalität bereitzustellen. Bei Ausführungsformen führt der DHCP-Client 80 einen oder mehrere der hier beschriebenen Prozesse durch.
  • Das Computersystem/der Server 12 kann zudem mit einer oder mehreren externen Einheiten 14 Daten austauschen, z. B. mit einer Tastatur, einer Zeigeeinheit, einer Anzeige 24 usw.; mit einer oder mehreren Einheiten, die einem Benutzer gestatten, mit dem Computersystem/Server 12 zu interagieren; und/oder mit beliebigen Einheiten (z. B. Netzwerkkarte, Modem usw.), die dem Computersystem/Server 12 ermöglichen, mit einer oder mehreren anderen Datenübertragungseinheiten Daten auszutauschen. Eine solche Datenübertragung kann über E/A-Schnittstellen 22 erfolgen. Des Weiteren kann das Computersystem/der Server 12 über einen Netzwerkadapter 20 mit einem oder mehreren Netzwerken Daten austauschen, z. B. mit einem lokales Netz (Local Area Network, LAN), einem Weitverkehrsnetz (Wide Area Network, WAN) und/oder einem öffentlichen Netz (z. B. dem Internet). Wie dargestellt, tauscht der Netzwerkadapter 20 über den Bus 18 Daten mit den anderen Komponenten des Computersystems/Servers 12 aus. Dabei sollte klar sein, dass – obwohl sie hier nicht abgebildet sind – auch andere Hardware- und/oder Softwarekomponenten in Verbindung mit dem Computersystem/Server 12 verwendet werden könnten. Beispiele hierfür sind, ohne darauf beschränkt zu sein, Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerksstapel, RAID-Systeme (Redundant Array of Inexpensive Disks oder Redundant Array of Independent Disks), Bandlaufwerke und Datenarchivierungsspeichersysteme usw.
  • Mit Blick auf 2 ist eine veranschaulichende Cloud-Datenverarbeitungsumgebung 50 dargestellt. Wie gezeigt, weist die Cloud-Datenverarbeitungsumgebung 50 einen oder mehrere Cloud-Datenverarbeitungsknoten 10 auf, mit denen lokale Datenverarbeitungseinheiten wie zum Beispiel ein persönlicher digitaler Assistent (Personal Digital Assistant, PDA) oder ein Mobiltelefon 54A, ein Desktop Computer 54, ein Laptop Computer 54C und/oder ein Automobil-Computersystem 54N Daten austauschen können. Die Knoten 10 können untereinander Daten austauschen. Sie können in einem oder mehreren Netzwerken, z. B. in privaten, Gemeinschafts-, öffentlichen oder Hybrid-Clouds, wie sie hier weiter oben beschrieben sind, oder in einer Kombination hiervon, physisch oder virtuell zusammengefasst sein (nicht abgebildet). Auf diese Weise kann die Cloud-Datenverarbeitungsumgebung 50 Infrastruktur, Plattformen und/oder Software als Dienste anbieten, für die ein Cloud-Verbraucher keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Dabei sollte klar sein, dass die in 2 gezeigten Arten von Datenverarbeitungseinheiten 54A bis N lediglich zur Veranschaulichung gedacht sind und dass die Datenverarbeitungsknoten 10 und die Cloud-Datenverarbeitungsumgebung 50 mit jeder Art von computergestützter Einheit über jede Art von Netzwerk und/oder netzwerkadressierbarer Verbindung (z. B. unter Verwendung eines Webbrowsers) Daten austauschen können.
  • Mit Blick auf 3 wird ein Satz von funktionsbezogenen Abstraktionsschichten gezeigt, der von der Cloud-Datenverarbeitungsumgebung 50 (2) bereitgestellt wird. Dabei sollte von Anfang an klar sein, dass die in 3 gezeigten Komponenten, Schichten und Funktionen lediglich zur Veranschaulichung gedacht und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet, werden die folgenden Schichten und zugehörigen Funktionen bereitgestellt:
    Eine Hardware- und Softwareschicht 60 enthält Hardware- und Softwarekomponenten. Zu Beispielen von Hardwarekomponenten zählen Großrechner 61; Server 62 auf Grundlage der RISC-Architektur (Reduced Instruction Set Computer); Server 63; Blade-Server 64; Speichereinheiten 65; Netzwerk und Netzwerkkomponenten 66. Bei manchen Ausführungsformen beinhalten Softwarekomponenten Software für Netzwerk-Anwendungsserver 67 und Datenbanksoftware 68.
  • Eine Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, welche die folgenden Beispiele für virtuelle Einheiten zur Verfügung stellen kann: virtuelle Server 71; virtueller Speicher 72; virtuelle Netzwerke 73 die virtuelle private Netzwerke aufweisen; virtuelle Anwendungen und Betriebssysteme 74; sowie virtuelle Clients 75.
  • In einem Beispiel kann eine Verwaltungsschicht 80 die im Folgenden beschriebenen Funktionen bereitstellen. Eine Ressourcenbereitstellungsfunktion 81 stellt eine dynamische Beschaffung von Datenverarbeitungs- und anderen Ressourcen bereit, mit denen Aufgaben innerhalb der Cloud-Datenverarbeitungsumgebung durchgeführt werden. Messungs- und Preisermittlungsfunktionen 82 stellen eine Kostenerfassung bei der Nutzung von Ressourcen innerhalb der Cloud-Datenverarbeitungsumgebung sowie eine Fakturierung bzw. Abrechnung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Lizenzen für Anwendungssoftware aufweisen. Eine Sicherheitsfunktion stellt eine Identitätsprüfung für Cloud-Verbraucher und -Aufgaben sowie einen Schutz für Daten und andere Ressourcen bereit. Eine Benutzerportalfunktion 83 stellt Verbrauchern und Systemadministratoren einen Zugriff auf die Cloud-Datenverarbeitungsumgebung bereit. Eine Dienstgüteverwaltungsfunktion 84 stellt eine Zuordnung und Verwaltung von Cloud-Datenverarbeitungsressourcen bereit, so dass erforderliche Dienstgütestufen erreicht werden. Eine Planungs- und Ausführungsfunktion 85 von Dienstgütevereinbarungen (Service Level Agreement, SLA) stellt eine Vorabfestlegung und Beschaffung von Cloud-Datenverarbeitungsressourcen bereit, für die gemäß einer SLA eine künftige Anforderung erwartet wird.
  • Eine Auslastungsschicht 90 stellt Beispiele einer Funktionalität bereit, für welche die Cloud-Datenverarbeitungsumgebung genutzt werden kann. Beispiele für Auslastungen und Funktionen, die von dieser Schicht bereitgestellt werden können, lauten: Zuordnung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von virtuellen Schulungen 93; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und hier beschriebene DHCP-Prozesse 96. Gemäß Aspekten der Erfindung dienen die DHCP-Prozesse 96 Auslastung/Funktion dazu, einen oder mehrere der hier beschriebenen Prozesse durchzuführen.
  • 4 stellt einen Cloud-Datenverarbeitungsknoten gemäß einer weiteren Ausführungsform der vorliegenden Erfindung dar. Insbesondere stellt 4 einen weiteren Cloud-Datenverarbeitungsknoten dar, der denselben Cloud-Datenverarbeitungsknoten 10 aufweist wie 1. In 4 weist das Computersystem/der Server 12 zudem einen DHCP-Client 170, einen DHCP-Server 160 und einen DHCP-Relay-Agenten 180 auf bzw. tauscht mit diesen Daten aus, wie hier ausführlicher beschrieben wird.
  • Gemäß Aspekten der Erfindung können der DHCP-Client 170, der DHCP-Server 160 und der DHCP-Relay-Agent 180 als ein oder mehrere Programmcodes in Programmmodulen 42 realisiert werden, die als getrennte oder kombinierte Module im Arbeitsspeicher gespeichert werden. Zusätzlich können der DHCP-Client 170, der DHCP-Server 160 und der DHCP-Relay-Agent 180 als getrennte, zweckbestimmte Prozessoren oder als ein einziger oder mehrere Prozessoren realisiert werden, um die Funktion dieser Werkzeuge bereitzustellen. Die Verarbeitungseinheit 16 kann während der Ausführung des Computerprogrammcodes Daten aus einem Arbeitsspeicher, Speichersystem und/oder einer E/A-Schnittstelle 22 lesen und/oder dort hineinschreiben. Der Programmcode führt die Prozesse der Erfindung aus.
  • Der DHCP-Client 170 kann zum Beispiel so konfiguriert sein, dass er ein DHCP-Anforderungspaket über eine Cloud-Datenverarbeitungsumgebung 50 an einen DHCP-Server 160 sendet. Mit Bezug auf 2 kann die Cloud-Datenverarbeitungsumgebung 50 zum Beispiel das Internet, ein lokales Netz, ein Weitverkehrsnetz und/oder ein Funknetz sein. Als Reaktion auf den Empfang des DHCP-Anforderungspakets durch den DHCP-Server 160 ordnet der DHCP-Server 160 dem DHCP-Client 170 eine IP-Adresse zu. Bei Ausführungsformen des DHCP-Mechanismus kann der DHCP-Server 160 eine direkte Multi-Tenancy-Unterstützung des DHCP-Protokolls bereitstellen, indem er eine Tenant-spezifische DHCP-Option verwendet, um Tenant-Daten zu übermitteln. Im Gegensatz zu gegenwärtigen Systemen, die eine Virtualisierung des Betriebssystem benötigen (bei der z. B. jeder Tenant einen DHCP-Server aufweist, der in einem getrennten LINUX-Adressraum ausgeführt wird), kann der DHCP-Server 160 überlappende IP-Adressräume unterstützen. Tatsächlich bietet der DHCP-Server 160 gegenüber der bekannten Betriebssystemvirtualisierung für eine Multi-Tenancy-Unterstützung zahlreiche Vorteile und technische Lösungen wie z. B. die Adressierungsinteroperabilität zwischen verschiedenen Kapselungsprotokollen für die Multi-Tenant-Isolierung, die hohe (und z. B. weniger rechenintensive) Skalierbarkeit und die nahtlose Unterstützung der Adresszuordnungsanforderung im Rahmen des SDN-Ansatzes (Software Defined Networking). Darüber hinaus kann in 4 ein DHCP-Relay-Agent 180 als eine Vermittlereinheit verwendet werden, um über die Cloud-Datenverarbeitungsumgebung 50 zwischen dem DHCP-Client 170 und dem DHCP-Server 160 Nachrichten weiterzugeben. Dem Fachmann dürfte dabei klar sein, dass bei einer weiteren Ausführungsform der DHCP-Client 170 und der DHCP-Server 160 ohne Verwendung des DHCP-Relay-Agenten 180 direkt Daten miteinander austauschen können.
  • Die vorliegende Erfindung kann ein System, ein Verfahren und/oder ein Computerprogrammprodukt sein. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) mit darauf enthaltenen computerlesbaren Programmbefehlen beinhalten, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung durchzuführen.
  • Das computerlesbare Speichermedium kann eine gegenständliche Einheit sein, die Befehle zur Verwendung durch eine Befehlsausführungseinheit beibehalten und speichern kann. Das computerlesbare Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder eine beliebige geeignete Kombination der vorgenannten Einheiten sein, ohne jedoch darauf beschränkt zu sein. Eine nicht vollständige Liste konkreterer Beispiele des computerlesbaren Speichermediums beinhaltet Folgendes: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren, programmierbaren Nur-Lese-Speicher (EPROM- oder Flash-Speicher), einen statischen Direktzugriffsspeicher (SRAM), einen tragbaren CD-ROM, eine DVD, einen Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie z. B. Lochkarten oder erhabene Strukturen in einer Rille mit darauf aufgezeichneten Befehlen sowie eine beliebige geeignete Kombination der vorgenannten Elemente. Bei einem computerlesbaren Speichermedium, wie es hier verwendet wird, ist nicht davon auszugehen, dass es sich per se um flüchtige Signale wie z. B. Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Hohlleiter oder ein anderes Übertragungsmedien ausbreiten (z. B. Lichtimpulse, die ein Lichtwellenleiterkabel durchlaufen), oder elektrische Signale, die über eine Leitung übertragen werden, handelt.
  • Hier beschriebene computerlesbare Programmbefehle können über ein Netzwerk wie beispielsweise das Internet, ein lokales Netzwerk (Local Area Network, LAN), ein Weitverkehrsnetzwerk (Wide Area Network, WAN) und/oder ein drahtloses Netzwerk von einem computerlesbaren Speichermedium auf entsprechende Datenverarbeitungs-/Verarbeitungs-Einheiten oder auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenleiter, eine drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungs-Einheit empfängt computerlesbare Programmbefehle von dem Netzwerk und leitet die computerlesbaren Programmbefehle zur Speicherung auf einem computerlesbaren Speichermedium innerhalb der betreffenden Datenverarbeitungs-/Verarbeitungs-Einheit weiter.
  • Bei computerlesbaren Programmbefehlen zum Durchführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Befehle, ISA-Befehle (Instruction-Set-Architecture), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, einen Zustand festlegende Daten oder aber entweder um Quellcode oder um Objektcode handeln, der in einer beliebigen Kombination von einer oder mehreren Programmiersprachen wie z. B. einer objektorientierten Programmiersprache wie Smalltalk, C++ oder dergleichen, sowie in herkömmlichen prozeduralen Programmiersprachen wie z. B. der Programmiersprache „C” oder ähnlichen Programmiersprachen geschrieben ist. Die computerlesbaren Programmbefehle können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder aber vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Im letztgenannten Szenario kann der entfernt angeordnete Computer über eine beliebige Art von Netzwerk, unter anderem ein LAN oder ein WAN, mit dem Computer des Benutzers verbunden sein, oder die Verbindung kann mit einem externen Computer (z. B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden. Bei manchen Ausführungsformen kann ein elektronischer Schaltkreis wie z. B. ein programmierbarer Logikschaltkreis, Field-Programmable-Gate-Arrays (FPGAs) oder Programmable-Logic-Arrays (PLAs) die computerlesbaren Programmbefehle ausführen, indem er Zustandsdaten der computerlesbaren Programmbefehle verwendet, um die elektronische Schaltung zu personalisieren und Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Darstellungen von Ablaufplänen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Dabei dürfte klar sein, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaubildern durch computerlesbare Programmbefehle realisiert werden kann/können.
  • Diese computerlesbaren Programmbefehle können einem Prozessor eines Universalcomputers, Spezialcomputers oder einer anderweitigen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers oder der anderweitigen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel erzeugen, mit dem die Funktionen/Handlungen realisiert werden können, die in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegeben werden. Diese computerlesbaren Programmbefehle können auch auf einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass das computerlesbare Speichermedium mit darauf gespeicherten Befehlen einen Herstellungsartikel aufweist, der Befehle enthält, welche Aspekte der in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegebenen Funktion/Handlung realisieren.
  • Die computerlesbaren Programmbefehle können zudem in einen Computer, eine anderweitige programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um zu veranlassen, dass eine Reihe von Funktionsschritten auf dem Computer, der anderweitigen programmierbaren Datenvorrichtung oder der anderen Einheit ausgeführt wird, so dass die Befehle, die auf dem Computer, der anderweitigen Datenverarbeitungsvorrichtung oder der anderen Einheit ausgeführt werden, die in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds angegebenen Funktionen/Handlungen realisieren.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren stellen die Architektur, Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung bereit. Somit kann jeder Block der Ablaufpläne oder Blockschaubilder ein Modul, Segment oder einen Teil von Befehlen darstellen, das/der einen oder mehrere ausführbare Befehle aufweist, mit denen sich die eine oder mehreren angegebenen logischen Funktionen realisieren lassen. Bei manchen alternativen Ausführungsformen können die in dem Block erwähnten Funktionen in einer anderen Reihenfolge als der in den Figuren genannten auftreten. So können zwei aufeinanderfolgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig stattfinden, oder die Blöcke können mitunter in umgekehrter Reihenfolge ausgeführt werden, wobei dies abhängig von der betreffenden Funktionalität ist. Zu erwähnen ist ebenfalls, dass jeder Block der Blockschaubilder und/oder der Ablaufplan-Darstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder Ablaufplan-Darstellungen durch Spezialsysteme auf Hardwaregrundlage, welche die angegebenen Funktionen oder Handlungen oder Kombinationen hiervon ausführen, oder durch Kombinationen von Spezial-Hardware- und Computerbefehlen realisiert bzw. durchgeführt werden kann/können.
  • 5 ist ein Datenrahmenformat für eine Tenant-spezifische DHCP-Option gemäß Aspekten der vorliegenden Erfindung. Genauer gesagt stellt 5 ein Datenrahmenformat 100 für eine Tenant-spezifische DHCP-Option zum Übermitteln von Tenant-Daten dar. Das Datenrahmenformat 100 für eine Tenant-spezifische DHCP-Option beinhaltet eine Vielfalt von Feldern, z. B., ohne darauf beschränkt zu sein, für eine Option 110, eine Länge 120, einen Transport-Agenten 130, eine Tenant-ID 140 und eine virtuelle Netzwerk-ID 150. Die Option 110 ist ein eindeutiger Wert für die DHCP-Optionen. Die Länge 120 ist eine Gesamtzahl der Bytes der verbleibenden Felder. Der Transport-Agent 130 ist ein Codierwert, der dazu verwendet wird, den für die Tenant-Isolierung verwendeten Overlay-Protokolltyp anzugeben, z. B. VLAN, VXLAN, DOVE, NVGRE, STT usw. Die Tenant-ID 140 ist eine UUID, die dazu verwendet wird, einen Tenant anzugeben. Die virtuelle Netzwerk-ID 150 bezeichnet schließlich ein virtuelles Netzwerk, das eine Abstraktion eines L2-Segments oder einer Broadcast-Domäne ist.
  • Ein Tenant kann mit mehreren virtuellen Netzwerken verbunden sein. Das Datenrahmenformat 100 für eine Tenant-spezifische DHCP-Option zeigt einem DHCP-Server an, dass er diesem Tenant eine IP-Adresse in einem zugehörigen Adressraum zuordnen soll. Somit kann ein einziger DHCP-Server eine Mehrzahl von Tenants bedienen, und jeder Tenant kann seinen eigenen IP-Adresspool für eine Zuordnung aufweisen. Die Pools der verschiedenen Tenants sind völlig unabhängig voneinander und können sich überlappen. Das Datenrahmenformat 100 für eine Tenant-spezifische DHCP-Option kann durch einen DHCP-Relay-Agenten einem DHCP-Header hinzugefügt werden. Bei Ausführungsformen ist die Tenant-spezifische Option eine Unteroption der DHCP-Relay-Agenten-Datenoption (Option 82, RFC 3046). Somit fügt die Realisierung der Option 82 eine Unteroption hinzu, so dass sie das Datenrahmenformat 100 für eine Tenant-spezifische DHCP-Option enthält.
  • ABLAUFPLAN
  • Die 6 bis 8 zeigen beispielhafte Abläufe (oder Aktivitätenpläne) zum Durchführen von Aspekten der vorliegenden Erfindung. Die Schritte aus den 6 bis 8 können zum Beispiel in der Umgebung der 1 und 4 realisiert werden. Wie oben erwähnt, veranschaulicht bzw. veranschaulichen das/die Blockschaubild/er die Architektur, Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten, wie sie hier gemäß den verschiedenen Ausführungsformen der vorliegenden Erfindung bereits beschrieben wurden. Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. Somit kann jeder Block der Ablaufpläne oder Blockschaubilder ein Modul, Segment oder einen Code-Teil darstellen, der ein oder mehrere ausführbare Befehle aufweist, mit denen sich die ein oder mehreren angegebenen logischen Funktionen realisieren lassen. Zu beachten ist ferner, dass bei manchen alternativen Ausführungsformen die in dem Block erwähnten Funktionen in einer anderen Reihenfolge als der in den Figuren genannten auftreten können. So können zwei aufeinanderfolgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig stattfinden, oder die Blöcke können mitunter in umgekehrter Reihenfolge ausgeführt werden, wobei dies abhängig von der betreffenden Funktionalität ist. Zu erwähnen ist ebenfalls, dass jeder Block der Blockschaubilder und/oder der Ablaufplan-Darstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplan-Darstellungen durch Spezialsysteme auf der Grundlage von Hardware, welche die angegebenen Funktionen oder Handlungen oder Kombinationen hiervon ausführen, oder durch Kombinationen von Spezial-Hardware- und Computerbefehlen realisiert werden kann/können.
  • 6 stellt einen beispielhaften Ablauf (Aktivitätenplan) einer DHCP-Paketverarbeitung gemäß Aspekten der vorliegenden Erfindung dar. Genauer gesagt zeigt 6 eine Tenant-spezifische Option, die dem DHCP-Header durch einen DHCP-Relay-Agent hinzugefügt wird. Da ein NVE ein Rand des Overlay-Netzwerks ist, lässt sich der Codierwert des Transport-Agenten in der Tenant-spezifischen Option auf einfache Weise erhalten. Eine VNID kann von einem VAP erhalten werden, mit dem der DHCP-Client verbunden ist. Der VAP ist ein logischer Verbindungspunkt in dem NVE, um eine Verbindung eines Tenants-Systems mit einem virtuellen Netzwerk herzustellen. VAPs können physische Ports oder virtuelle Ports sein, die durch logische Schnittstellenkennungen wie z. B. eine VLAN-ID oder eine interne vSwitch-Schnittstellen-ID identifiziert werden, die mit einer VM verbunden sind. Die Tenant-ID in der Tenant-spezifischen Option kann über die VNID erhalten werden, indem der lokale Cache oder eine entfernt angeordnete Datenbank in der NVA abgefragt werden, die aus der Abbildung zwischen VNID und Tenant-ID besteht.
  • Bei herkömmlichen DHCP-Relays wird für jedes bediente L2-Segment eine Gateway-IP-Schnittstelle benötigt, an der DHCP-Client-Pakete für das L2-Segment empfangen werden. Somit wird bei gegenwärtigen DHCP-Systemen beim Empfang einer DHCP-Nachricht von einem DHCP-Client die IP-Adresse der IP-Schnittstelle in das Feld GIADDR (Gateway IP Address) des DHCP-Pakets eingetragen, wenn es einen Inhalt von Null hat, und die DHCP-Nachricht wird an den DHCP-Server gesendet. Anders ausgedrückt wird die GIADDR durch den ersten DHCP-Relay-Agenten hinzugefügt. Der DHCP-Server verwendet die GIADDR, um dem DHCP-Client die IP-Adresse und andere Netzwerkparameter zuzuordnen. Der DHCP-Server sendet eine entsprechende DHCP-Relay-Nachricht an einen DHCP-Relay-Agenten, der durch die GIADDR identifiziert wird. Der DHCP-Relay-Agent ist so entworfen, dass er die DHCP-Antwortnachricht an die direkt verbundenen DHCP-Clients sendet, d. h. an die Clients in demselben L2-Segment wie die IP-Schnittstelle des DHCP-Relay-Agenten, der durch die GIADDR identifiziert wird.
  • Im Gegensatz dazu werden, wie in 6 gezeigt, DHCP-Clients in dem Overlay-Netzwerk ausgeführt, und die Overlay-Netzwerke der verschiedenen Tenants sind voneinander isoliert. Der DHCP-Server ist so entworfen, dass er alle DHCP-Clients in verschiedenen Tenant-Overlay-Netzwerken bedient. Der DHCP-Server und die DHCP-Relay-Agenten tauschen über das Underlay-Netzwerk Daten aus. Die durch den DHCP-Relay-Agenten hinzugefügte GIADDR ist eine Underlay-IP-Adresse des Relay-Agenten. Der DHCP-Server verwendet nicht die GIADDR, um dem DHCP-Client die IP-Adresse und andere Netzwerkparameter zuzuordnen. Vielmehr verwendet der DHCP-Server die Tenant-spezifische Option und andere Optionen, um dem DHCP-Client die IP-Adresse und andere Netzwerkparameter zuzuordnen. Der DHCP-Server sendet eine entsprechende DHCP-Anwortnachricht an einen DHCP-Relay-Agenten, der durch die GIADDR identifiziert wird. Der Relay-Agent verwendet die VNID in der Tenant-spezifischen Option, um dem DHCP-Client die DHCP-Antwortnachricht entsprechend zu übermitteln.
  • Genauer gesagt stellt 6 einen beispielhaften Ablaufplan oder Aktivitätenplan einer DHCP-Paketverarbeitung gemäß Aspekten der vorliegenden Erfindung dar. 5 enthält die folgenden Aktoren: einen DHCP-Client 210 (ein Beispiel für den mit Blick auf 4 beschriebenen DHCP-Client 170), einen DHCP-Relay-Agenten 220 (ein Beispiel für den mit Blick auf 4 beschriebenen DHCP-Relay-Agenten 180) und einen DHCP-Server 230 (ein Beispiel für den mit Blick auf 4 beschriebenen DHCP-Server 160).
  • In 6 sendet ein DHCP-Client 210 in Schritt 231 bei der DHCP-Paketverarbeitung eine Nachricht DHCP_DISCOVER an einen DHCP-Relay-Agenten 220. Danach sendet in Schritt 232 der DHCP-Relay-Agent 220 eine Nachricht DHCP_DISCOVER mit einer Tenant-spezifischen Option an den DHCP-Server 230. In Schritt 233 sendet daraufhin der DCHP-Server 230 eine Nachricht DHCP OFFER mit einer Tenant-spezifischen Option an den DHCP-Relay-Agenten 220. In Schritt 234 sendet der DHCP-Relay-Agent 220 eine Nachricht DHCP_OFFER an den DHCP-Client 210. Danach sendet in Schritt 235 der DHCP-Client 210 eine Nachricht DHCP REQUEST an den DHCP-Relay-Agenten 220. Der DHCP-Relay-Agent 220 sendet in Schritt 236 eine Nachricht DHCP_REQUEST mit einer Tenant-spezifischen Option an den DHCP-Server 230. In Schritt 237 sendet der DHCP-Server 230 eine Nachricht DHCP_ACK mit einer Tenant-spezifischen Option an den DHCP-Relay-Agenten 220. Schließlich sendet in Schritt 238 der DHCP-Relay-Agent 220 eine Nachricht DHCP_ACK an den DHCP-Client 210.
  • 7 stellt einen beispielhaften Ablauf einer Adresszuordnungsverarbeitung gemäß Aspekten der vorliegenden Erfindung dar. Um in 7 in dem neuartigen DHCP-Mechanismus der dargestellten Ausführungsform eine Multi-Tenant-Unterstützung zu ermöglichen, unterstützt der DHCP-Server zwei Arten von Adressräumen: einen globalen Adressraum und einen Tenant-Adressraum. Der globale Adressraum ist mit gegenwärtigen DHCP-Methoden kompatibel, bei denen das DHCP-Paket keine Tenant-spezifische Option enthält. In dem globalen Adressraum von gegenwärtigen DHCP-Verfahren können sich die IP-Adressbereiche nicht überlappen; im Gegensatz dazu weist bei den technischen Lösungen des DHCP-Mechanismus der dargestellten Ausführungsform der vorliegenden Erfindung jeder Tenant einen spezifischen Adresspool in dem Tenant-Adressraum auf. Bei dem DHCP-Mechanismus der dargestellten Ausführungsform kann der Adressbereich den Adresspool verschiedener Tenants überlappen.
  • Wenn zum Beispiel bei dem in 7 gezeigten DHCP-Mechanismus die Nachricht DHCP_DISCOVER nicht die Tenant-spezifische Option enthält, führt der DHCP-Server eine bekannte DHCP-Verarbeitung durch. Wenn die Nachricht DHCP_DISCOVER hingegen die Tenant-spezifische Option enthält, wird die Tenant-spezifische Option dazu verwendet, den Tenant-Adressraum und den IP-Bereich zu lokalisieren. Der DHCP-Server lokalisiert den Adressraum, welcher der Tenant-ID in der Tenant-spezifischen Option entspricht. Wenn ebenfalls in 7 die Nachricht DHCP_DISCOVER eine Option für die Subnetzauswahl (Option 118) oder eine Unteroption für die Verbindungsauswahl (Unteroption 5 in Option 82) aufweist, ordnet der DHCP-Server eine Adresse aus diesem Subnetz zu. Wenn die Nachricht DHCP_DISCOVER hingegen keine Option für die Subnetzauswahl oder eine Unteroption für die Verbindungsauswahl aufweist, wird ein IP-Bereich einer VNID zugewiesen, und der DHCP-Server sucht den der VNID entsprechenden IP-Bereich in der Tenant-spezifischen Option. Des Weiteren kann der neuartige DHCP-Mechanismus der dargestellten Ausführungsform einen DHCP-Server beinhalten, der ein Abgleichkriterium oder ACL-Regeln in der Tenant-spezifischen Option der Konfiguration verwendet, um den Tenant-Adressraum zu lokalisieren.
  • Genauer gesagt empfängt in 7 ein DHCP-Server bei der Adresszuordnungsverarbeitung in Schritt 305 ein DHCP-Anforderungspaket. In Schritt 310 ermitteln die Prozesse und Systeme des DHCP-Servers, ob die DHCP-Anforderung (z. B. DHCP_DISCOVER) eine spezifische Option aufweist. Wenn die DHCP-Anforderung in Schritt 315 keine Tenant-spezifische Option aufweist (NEIN), verwendet der DHCP-Server einen globalen Adressraum. Danach führen in Schritt 320 der DHCP-Server und der DHCP-Client eine bekannte DHCP-Protokollverarbeitung durch, da keine Tenant-spezifische Option vorhanden ist.
  • Wenn alternativ hierzu in Schritt 310 die DHCP-Anforderung (z. B. DHCP_DISCOVER) eine Tenant-spezifische Option aufweist (JA), wählt in Schritt 325 der DHCP-Server gemäß dem Feld mit der Tenant-spezifischen Option einen Adressraum aus. Des Weiteren ermittelt der DHCP-Server in Schritt 330, ob in der DHCP-Anforderung entweder eine Option für die Verbindungsauswahl (Option 118) oder eine Option für die Subnetzauswahl (Option 82, Unteroption 5) vorhanden ist. Wenn keine Verbindung vorhanden ist (NEIN), ordnet der DHCP-Server in Schritt 345 eine Adresse für die VNID zu. Wenn alternativ hierzu in Schritt 330 die DHCP-Anforderung entweder eine Option für die Verbindungsauswahl (Option 118) oder eine Option für die Subnetzauswahl (Option 82, Unteroption 5) aufweist (JA), prüft der DHCP-Server in Schritt 335, ob in einem anfordernden Subnetz eine verfügbare Adresse vorhanden ist. Wenn in Schritt 335 in dem anfordernden Subnetz eine verfügbare Adresse vorhanden ist (JA), ordnet der DHCP-Server in Schritt 340 eine Adresse in dem Subnetz zu. Wenn in Schritt 335 in dem anfordernden Subnetz keine verfügbare Adresse vorhanden ist (NEIN), ordnet der DHCP-Server in Schritt 345 der VNID eine Adresse zu.
  • 8 stellt einen beispielhaften Ablauf einer DHCP-Subnetzauswahl-Unterstützung gemäß Aspekten der vorliegenden Erfindung dar. In 8 sendet ein DHCP-Client 410 bei der DHCP-Subnetzauswahl-Unterstützung gemäß Aspekten der vorliegenden Erfindung in Schritt 441 eine Nachricht DHCP_DISCOVER an einen DHCP-Relay-Agenten 420. Wenn der DHCP-Relay-Agent 420 die Nachricht DHCP_DISCOVER empfängt, lokalisiert der DHCP-Relay-Agent 420 den Tenant-Adressraum gemäß der Tenant-ID in der Tenant-spezifischen Option und ordnet in dem beabsichtigten Subnetz eine IP-Adresse zu. Wie in 7 gezeigt, erhält der DHCP-Relay-Agent 420 seine VNID von einem zugehörigen VAP. In 8 sendet der DHCP-Relay-Agent 420 daraufhin in Schritt 442 eine Nachricht zur Abfrage des Subnetzes von VNIDx an eine NVA 440, um die Subnetzkonfiguration der VNID abzufragen. In Schritt 443 sendet der NVA 440 eine Antwort für das Subnetz von VNIDx an den DHCP-Relay-Agenten. Schließlich wird in Schritt 444 die Nachricht DHCP_DISCOVER mit der Tenant-spezifischen Option und der Option für die Subnetzauswahl 118 oder der Option 82 mit der Unteroption 5 an den DHCP-Server 430 gesendet.
  • In 8 werden eine Option für die DHCP-Subnetzauswahl (Option 118, RFC3011) und eine Verbindungsauswahl in der Relay-Agenten-Datenoption (Option 82, Unteroption 5, RFC3527) verwendet, um mit einem DHCP-Server in einem gewünschten Subnetz Daten auszutauschen, von dem die DHCP-Clients den Erhalt ihrer IP-Adresse erwarten. Somit kann der neuartige DHCP-Mechanismus der dargestellten Ausführungsform über einen NVA einfach auf diese Szenarien erweitert werden.
  • Wie in 8 gezeigt, kann ein NVA die Subnetzkonfiguration für jede VNID verwalten. Als Reaktion darauf, dass jedes einzelne Paket DHCP_DISCOVER von dem DHCP-Client 410 empfangen wird, erhält der DHCP-Relay-Agent 420 seine VNID von dem zugehörigen VAP. Danach sendet der DHCP-Relay-Agent 420 eine Anforderung an die NVA 440, um die Subnetzkonfiguration der VNID abzufragen. Die von der NVA 440 als Antwort zurückgegebene Subnetzkonfiguration wird daraufhin in die DHCP-Option 118 oder in die Option 82, Unteroption 5, eingetragen. Danach werden die Subnetzdaten zusammen mit der Tenant-spezifischen Option an den DHCP-Server 430 übertragen. Wenn der DHCP-Server 430 das Paket DHCP_DISCOVER empfängt, lokalisiert der DHCP-Server 430 den Tenant-Adressraum gemäß der Tenant-ID in der Tenant-spezifischen Option und ordnet eine IP-Adresse in dem beabsichtigten Subnetz zu, die in der DHCP-Option 118 oder in der Option 82, Unteroption 5, enthalten ist.
  • Bei Ausführungsformen können die hier beschriebenen Prozesse von einem Dienstanbieter wie z. B. einem Lösungsintegrator durchgeführt werden. In diesem Fall kann der Dienstanbieter eine Computerinfrastruktur erzeugen, verwalten, bereitstellen, unterstützen usw., welche die Prozessschritte der Erfindung für einen oder mehrere Kunden durchführt. Diese Kunden können z. B. alle Unternehmen sein, die Technologie nutzen. Der Dienstanbieter wiederum kann von dem/den Kunden eine Bezahlung im Rahmen einer Abonnement- und/oder Gebührenvereinbarung erhalten, und/oder er kann eine Bezahlung aus dem Verkauf von Werbeinhalten an einen oder mehrere Dritte/n erhalten.
  • Wie dem Fachmann nunmehr klar sein sollte, stellt der DHCP-Mechanismus in Ausführungsformen der vorliegenden Erfindung zahlreiche Vorteile gegenüber gegenwärtigen Systemen bereit. Zu diesen Vorteilen zählen, ohne darauf beschränkt zu sein, die Bereitstellung einer direkten Multi-Tenancy-Unterstützung durch das DHCP-Protokoll und der Verzicht auf die Notwendigkeit einer Virtualisierung des LINUX-Namensraums auf Ebene des Betriebssystems. Bei Ausführungsformen der vorliegenden Erfindung wird diese technische Lösung erreicht, indem eine Tenant-spezifische DHCP-Option für die Übermittlung von Tenant-Daten vorgesehen wird und indem ein Adresszuordnungsschema in einem DHCP-Server verbessert wird, um der IP-Adresszuordnung in dem Tenant-Adressraum Vorrang einzuräumen, wenn in dem DHCP-Paket eine Tenant-spezifische Option festgestellt wird.
  • Zudem können sowohl der DHCP-Client als auch der DHCP-Relay-Agent eine Tenant-spezifische Option hinzufügen. Darüber hinaus beheben Ausführungsformen ein Interoperabilitätsproblem zwischen verschiedenen Kapselungsprotokollen für die Multi-Tenant-Isolierung (z. B. VLAN, VXLAN, DOVE, NVGRE, STT usw.).
  • Darüber hinaus stellen Ausführungsformen des DHCP-Mechanismus eine hohe Skalierbarkeit bereit, wenn die Zahl der Tenants steigt. So erhöht zum Beispiel bei gegenwärtigen Systemen die Betriebssystemvirtualisierung zur Multi-Tenancy-Unterstützung den Rechenaufwand, da jede Instanz eines LINUX-Namensraums zusätzliche Ressourcen benötigt; bei Ausführungsformen des DHCP-Mechanismus der vorliegenden Erfindung wird der Rechenaufwand verglichen mit einer Virtualisierung auf Betriebssystemebene jedoch reduziert. Darüber hinaus wird bei Ausführungsformen des DHCP-Mechanismus eine SDN-Adresszuordnungsanforderung nahtlos unterstützt, da jeder DHCP-Client korrekte Adressen erhält, die zu seinem Tenant und seinem virtuellen Netzwerk gehören, mit dem er verbunden ist.
  • Als weitere vorteilhafte Lösung eines technischen Problems stellen die hier beschriebenen Systeme und Prozesse ein computerrealisiertes Verfahren für eine Multi-Tenancy-Unterstützung in einem Netzwerk mit einem DHCP-Protokoll bereit. In diesem Fall kann eine Computerinfrastruktur wie z. B. das in den 1 und 4 gezeigte System oder die in 2 gezeigte Cloud-Umgebung bereitgestellt werden, und ein oder mehrere Systeme zum Durchführen der Prozesse der Erfindung können erhalten (z. B. erzeugt, gekauft, genutzt, modifiziert usw.) und der Computerinfrastruktur bereitgestellt werden. Insofern kann die Bereitstellung eines Systems eine oder mehrere der folgenden Optionen aufweisen:
    • (i) Installieren von Programmcode auf einer Datenverarbeitungseinheit wie z. B. dem in 1 gezeigten Computersystem von einem computerlesbaren Medium;
    • (ii) Hinzufügen von einer oder mehreren Datenverarbeitungseinheiten zu der Computerinfrastruktur und insbesondere zu der Cloud-Umgebung; und
    • (iii) Einbinden und/oder Modifizieren eines oder mehrerer vorhandener Systeme der Computerinfrastruktur, damit die Computerinfrastruktur die Prozesse der Erfindung durchführen kann.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung vorgelegt und sind nicht als vollständig oder auf die offenbarten Ausführungsformen beschränkt zu verstehen. Der Fachmann weiß, dass zahlreiche Änderungen und Abwandlungen möglich sind, ohne von Umfang und Geist der beschriebenen Ausführungsformen abzuweichen. Die hier verwendete Begrifflichkeit wurde gewählt, um die Grundsätze der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber marktgängigen Technologien bestmöglich zu erläutern bzw. anderen Fachleuten das Verständnis der hier offenbarten Ausführungsformen zu ermöglichen.

Claims (25)

  1. Verfahren, das in einer Computerinfrastruktur mit computerausführbarem Code realisiert ist, der physisch auf einem computerlesbaren Speichermedium mit Programmierbefehlen enthalten ist, und das konfiguriert ist zum: Empfangen eines DHCP-Pakets (Dynamic Host Configuration Protocol); Einfügen von Tenant-spezifischen Optionsdaten in das DHCP-Paket; und Übertragen des DHCP-Pakets mit den Tenant-spezifischen Optionsdaten.
  2. Verfahren nach Anspruch 1, wobei die Tenant-spezifischen Optionsdaten mindestens ein Transport-Agenten-Feld, das dazu verwendet wird, einen Overlay-Protokolltyp anzugeben, der für eine Tenant-Isolierung verwendet wird, oder ein Tenant-ID-Feld aufweisen, das dazu verwendet wird, einen Tenant eindeutig zu identifizieren.
  3. Verfahren nach Anspruch 2, wobei der Overlay-Protokolltyp einen der Protokolltypen VLAN (Virtual Local Area Network), VXLAN (Virtual Extensible Local Area Network), DOVE (Distributed Overlay Virtual Ethernet), NVGRE (Network Virtualization using Generic Routing Encapsulation), STT (Stateless Transport Tunneling) und GENEVE (Generic Network Virtualization Encapsulation) aufweist.
  4. Verfahren nach Anspruch 2, wobei die Tenant-spezifischen Optionsdaten des Weiteren ein Feld mit einer virtuellen Netzwerk-ID aufweisen, das dazu verwendet wird, ein virtuelles Netzwerk anzugeben.
  5. Verfahren nach Anspruch 1, wobei die Tenant-spezifischen Optionsdaten in einen DHCP-Header des DHCP-Pakets eingefügt werden.
  6. Verfahren nach Anspruch 1, wobei das DHCP-Paket in einem DHCP-Relay-Agenten empfangen wird und die Tenant-spezifischen Optionsdaten in dem DHCP-Relay-Agenten in das DHCP-Paket eingefügt werden.
  7. Verfahren nach Anspruch 6, wobei das DHCP-Paket mit den Tenant-spezifischen Optionsdaten von dem DHCP-Relay-Agenten an einen DHCP-Server übertragen wird.
  8. Verfahren nach Anspruch 1, wobei die Tenant-spezifischen Optionsdaten in einem DHCP-Client in das DHCP-Paket eingefügt werden.
  9. Verfahren nach Anspruch 1, wobei die Programmierbefehle des Weiteren so konfiguriert sind, dass sie eine Internetprotokoll-Adresse (IP-Adresse) an einen DHCP-Client übertragen, der einem Tenant-ID-Feld der Tenant-spezifischen Optionsdaten entspricht.
  10. Verfahren nach Anspruch 9, wobei die an den DHCP-Client übertragene IP-Adresse dem Tenant-ID-Feld der Tenant-spezifischen Optionsdaten entspricht und sich mit einer IP-Adresse eines anderen, unabhängigen Tenants überlappt.
  11. Computerprogrammprodukt, aufweisend ein computerlesbares Speichermedium mit darauf enthaltenen Programmbefehlen, wobei das computerlesbare Speichermedium kein flüchtiges Signal per se ist und wobei die Programmbefehle durch eine Datenverarbeitungseinheit lesbar sind, um die Datenverarbeitungseinheit zum Durchführen eines Verfahrens zu veranlassen, aufweisend: Empfangen eines DHCP-Pakets; Feststellen, dass das DHCP-Paket Tenant-spezifische Optionsdaten aufweist; und Auswählen eines Adressraums auf Grundlage der Tenant-spezifischen Optionsdaten.
  12. Computerprogrammprodukt nach Anspruch 11, wobei der auf Grundlage der Tenant-spezifischen Optionsdaten ausgewählte Adressraum des Weiteren aufweist: Feststellen, dass das DHCP-Paket mit den Tenant-spezifischen Optionsdaten mindestens eine Unteroption für die Verbindungsauswahl oder eine Option für die Subnetzauswahl aufweist; Feststellen, dass eine Adresse in einem angeforderten Subnetz verfügbar ist, wenn festgestellt wird, dass das DHCP-Paket mindestens eine Unteroption für die Verbindungsauswahl oder eine Option für die Subnetzauswahl aufweist; und Zuordnen der Adresse in dem angeforderten Subnetz, wenn die Adresse in dem angeforderten Subnetz verfügbar ist.
  13. Computerprogrammprodukt nach Anspruch 12, wobei der auf Grundlage der Tenant-spezifischen Optionsdaten ausgewählte Adressraum des Weiteren ein Zuordnen einer Adresse für eine virtuelle Netzwerkkennung als Reaktion auf eine Feststellung aufweist, dass das DHCP-Paket nicht mindestens die Unteroption für die Verbindungsauswahl oder die Option für die Teilnetzauswahl aufweist.
  14. Computerprogrammprodukt nach Anspruch 12, wobei der auf Grundlage der Tenant-spezifischen Optionsdaten ausgewählte Adressraum des Weiteren ein Zuordnen einer Adresse für eine virtuelle Netzwerk-ID als Reaktion auf eine Feststellung aufweist, dass die Adresse in dem angeforderten Subnetz nicht verfügbar ist.
  15. Computerprogrammprodukt nach Anspruch 11, wobei das Verfahren des Weiteren ein Zuordnen eines globalen Adressraums als Reaktion auf eine Feststellung aufweist, dass das empfangene DHCP-Paket nicht die Tenant-spezifischen Optionsdaten aufweist.
  16. Computerprogrammprodukt, aufweisend ein computerlesbares Speichermedium mit darauf enthaltenen Programmbefehlen, wobei das computerlesbare Speichermedium kein flüchtiges Signal per se ist und wobei die Programmbefehle durch eine Datenverarbeitungseinheit lesbar sind, um die Datenverarbeitungseinheit zum Durchführen eines Verfahrens zu veranlassen, aufweisend: Empfangen eines DHCP-Pakets, das Tenant-spezifische Optionsdaten aufweist; Lokalisieren eines Tenant-Adressraums auf Grundlage der Tenant-spezifischen Optionsdaten; Erhalten einer virtuellen Netzwerk-ID von einem VAP (Virtual Access Point); Erhalten einer Subnetzkonfiguration, die der erhaltenen virtuellen Netzwerk-ID entspricht; und Zuordnen einer IP-Adresse, die der erhaltenen Subnetzkonfiguration entspricht.
  17. Computerprogrammprodukt nach Anspruch 16, wobei die Subnetzkonfiguration entweder in einer Unteroption für die Verbindungsauswahl oder in einer Option für die Subnetzauswahl enthalten ist.
  18. Computerprogrammprodukt nach Anspruch 16, wobei die Subnetzkonfiguration von einer NVA (Network Virtualization Authority) erhalten wird.
  19. Computerprogrammprodukt nach Anspruch 16, wobei die IP-Adresse, die der erhaltenen Subnetzkonfiguration entspricht, durch einen DHCP-Server zugeordnet wird.
  20. Computerprogrammprodukt nach Anspruch 16, wobei das DHCP-Paket, das die Tenant-spezifischen Optionsdaten aufweist, durch einen DHCP-Relay-Agenten empfangen wird.
  21. System, aufweisend: eine CPU, einen computerlesbaren Arbeitsspeicher und ein computerlesbares Speichermedium; Programmbefehle, um Multi-Tenancy-Daten in ein DHCP-Paket einzufügen; und Programmbefehle, um das DHCP-Paket mit den Multi-Tenancy-Daten zu übertragen, wobei die Programmbefehle auf dem computerlesbaren Speichermedium gespeichert werden, um über den computerlesbaren Arbeitsspeicher durch die CPU ausgeführt zu werden.
  22. Verfahren nach Anspruch 21, wobei die Multi-Tenancy-Daten mindestens ein Transport-Agenten-Feld, das dazu verwendet wird, einen Overlay-Protokolltyps anzugeben, der für eine Tenant-Isolierung verwendet wird, ein Tenant-ID-Feld, das dazu verwendet wird, einen Tenant eindeutig zu identifizieren, oder ein Feld mit einer virtuellen Netzwerk-ID aufweisen, das dazu verwendet wird, ein virtuelles Netzwerk anzugeben.
  23. System nach Anspruch 21, wobei die Multi-Tenancy-Daten in einem DHCP-Client in das DHCP-Paket eingefügt werden.
  24. Verfahren zum Konfigurieren eines Datenrahmenformats für eine Tenant-spezifische DHCP-Option, aufweisend: Konfigurieren eines ersten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option, um einen Overlay-Protokolltyp anzugeben, der für die Tenant-Isolierung verwendet wird; Konfigurieren eines zweiten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option, um einen Tenant eindeutig zu identifizieren; und Konfigurieren eines dritten Felds des Datenrahmenformats für eine Tenant-spezifische DHCP-Option, um ein virtuelles Netzwerk anzugeben.
  25. Verfahren nach Anspruch 24, wobei das zweite Feld durch einen DHCP-Server verwendet wird, um eine lokale Gültigkeit eines Adressbereich für einen Adressraum des Tenants anzugeben.
DE112016001657.3T 2015-05-22 2016-05-20 Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke Pending DE112016001657T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/719,723 US9887961B2 (en) 2015-05-22 2015-05-22 Multi-tenant aware dynamic host configuration protocol (DHCP) mechanism for cloud networking
US14/719,723 2015-05-22
PCT/CN2016/082833 WO2016188375A1 (en) 2015-05-22 2016-05-20 Multi-tenant aware dynamic host configuration protocol (dhcp) mechanism for cloud networking

Publications (1)

Publication Number Publication Date
DE112016001657T5 true DE112016001657T5 (de) 2017-12-21

Family

ID=57325828

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016001657.3T Pending DE112016001657T5 (de) 2015-05-22 2016-05-20 Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke

Country Status (6)

Country Link
US (5) US9887961B2 (de)
JP (1) JP6670025B2 (de)
CN (1) CN107615716B (de)
DE (1) DE112016001657T5 (de)
GB (1) GB2555740C (de)
WO (1) WO2016188375A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10812446B1 (en) 2019-07-22 2020-10-20 Cisco Technology, Inc. Dynamic host configuration across multiple sites in software defined access networks

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9887961B2 (en) 2015-05-22 2018-02-06 International Business Machines Corporation Multi-tenant aware dynamic host configuration protocol (DHCP) mechanism for cloud networking
US10142284B2 (en) * 2015-09-30 2018-11-27 Vmware, Inc. Faster IP address allocation in a hybrid cloud environment using subnet selective randomization
US10931629B2 (en) * 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
CN108667886B (zh) * 2017-04-01 2020-07-28 华为技术有限公司 提供PaaS服务的方法、管理系统和云计算服务架构
US10715597B2 (en) 2017-06-16 2020-07-14 At&T Intellectual Property I, L.P. Methods and systems to create a network-agnostic SDN-based cloud gateway for connectivity to multiple cloud service providers
CN110324248B (zh) * 2018-03-30 2021-07-30 中移(苏州)软件技术有限公司 一种裸金属服务器路由更新方法、装置、电子设备及介质
US11165634B2 (en) * 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
CN110855599B (zh) * 2018-08-20 2022-10-21 中兴通讯股份有限公司 一种多租户访问控制方法及装置、计算机可读存储介质
US10826916B2 (en) * 2018-09-17 2020-11-03 ShieldX Networks, Inc. Agent-less network traffic inspection using an overlay network
US10848423B1 (en) * 2018-09-26 2020-11-24 Amazon Technologies, Inc. Multi-account gateway
CN111294319B (zh) * 2018-12-07 2022-05-27 网宿科技股份有限公司 网络隔离的方法、装置,网络设备和可读存储介质
EP4123973A1 (de) * 2019-02-08 2023-01-25 Palantir Technologies Inc. Isolieren von anwendungen, die mehreren mandanten innerhalb einer computerplattform zugeordnet sind
CN111614790B (zh) * 2019-02-26 2022-08-05 杭州海康威视系统技术有限公司 虚拟机地址配置系统、方法及装置
US11146634B2 (en) 2019-04-25 2021-10-12 International Business Machines Corporation Storage pool isolation
CN113055500B (zh) * 2019-12-26 2022-08-30 中国电信股份有限公司 地址请求方法、装置及计算机可读存储介质
CN111200644A (zh) * 2019-12-27 2020-05-26 福建升腾资讯有限公司 一种基于中继服务器在互联网环境下镜像缓存方法及系统
US11502993B2 (en) * 2020-08-10 2022-11-15 Perimeter 81 Ltd Scalable and on-demand multi-tenant and multi region secure network
US11425044B2 (en) * 2020-10-15 2022-08-23 Cisco Technology, Inc. DHCP layer 2 relay in VXLAN overlay fabric
US11463312B2 (en) 2021-01-21 2022-10-04 Cisco Technology, Inc. Secure onboarding of network devices
CN113259500A (zh) * 2021-03-30 2021-08-13 紫光云技术有限公司 一种ovs网络dhcp地址池方法
CN113726738B (zh) * 2021-07-26 2023-08-18 新华三技术有限公司合肥分公司 获取被测设备物理位置信息方法及网络设备、存储介质
CN114244842B (zh) * 2021-12-23 2023-07-25 绿盟科技集团股份有限公司 一种安全资源调度方法、装置、电子设备及存储介质

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2348598A1 (en) * 2001-06-05 2002-12-05 Mediatrix Telecom Inc. Generic method for customization of dhcp options
US7139818B1 (en) 2001-10-04 2006-11-21 Cisco Technology, Inc. Techniques for dynamic host configuration without direct communications between client and server
US7051089B1 (en) * 2001-10-24 2006-05-23 Cisco Technology, Inc. Techniques for automatically delegating address spaces among dynamic host configuration servers
US7586912B2 (en) 2006-07-28 2009-09-08 Cisco Technology, Inc. Techniques for exchanging DHCP information among DHCP relay agents and DHCP servers
US7707277B2 (en) 2007-04-27 2010-04-27 Alcatel Lucent Method and system for configuring pseudowires using dynamic host configuration protocol (DHCP) messages
DE102007036962A1 (de) * 2007-08-04 2009-02-05 Hirschmann Automation And Control Gmbh Verfahren zur DHCP Server-Konfiguration unter Verwendung von DHCP Option 82
CN101478576B (zh) * 2008-01-03 2012-02-15 华为技术有限公司 选择服务网络的方法、装置和系统
JP2010193051A (ja) 2009-02-17 2010-09-02 Fujitsu Telecom Networks Ltd ネットワーク管理方法、dhcpリレーエージェントおよびdhcpサーバ
US8224946B2 (en) * 2009-04-24 2012-07-17 Rockstar Bidco, LP Method and apparatus for accommodating duplicate MAC addresses
CN102170457A (zh) 2010-02-26 2011-08-31 国际商业机器公司 向应用的多租户提供服务的方法和装置
US8825839B2 (en) 2010-11-24 2014-09-02 Unisys Corporation Snooping DNS messages in a server hosting system providing overlapping address and name spaces
EP2480045B1 (de) 2011-01-13 2015-04-08 Alcatel Lucent Anordnung zur Bereitstellung von Funktionen eines mobilen IP-CAN-Gateways und Verwendung solch einer Anordnung zur Verkehrsentlastung von besagtem mobilen IP-CAN
EP2515507A1 (de) * 2011-04-19 2012-10-24 Siemens Aktiengesellschaft Automatische Konfiguration von Netzwerkvorrichtungen
US8560663B2 (en) * 2011-09-30 2013-10-15 Telefonaktiebolaget L M Ericsson (Publ) Using MPLS for virtual private cloud network isolation in openflow-enabled cloud computing
US9250941B2 (en) * 2011-09-30 2016-02-02 Telefonaktiebolaget L M Ericsson (Publ) Apparatus and method for segregating tenant specific data when using MPLS in openflow-enabled cloud computing
US20130297752A1 (en) * 2012-05-02 2013-11-07 Cisco Technology, Inc. Provisioning network segments based on tenant identity
US8953441B2 (en) 2012-06-06 2015-02-10 Juniper Networks, Inc. Re-routing network traffic after link failure
US20140006585A1 (en) 2012-06-29 2014-01-02 Futurewei Technologies, Inc. Providing Mobility in Overlay Networks
CN103580980B (zh) 2012-07-24 2019-05-24 中兴通讯股份有限公司 虚拟网络自动发现和自动配置的方法及其装置
CN103813288A (zh) * 2012-11-06 2014-05-21 中兴通讯股份有限公司 基于移动网络的租户网络业务实现方法、系统及网元
IN2015DN03095A (de) 2012-11-27 2015-10-02 Ericsson Telefon Ab L M
WO2015021629A1 (zh) * 2013-08-15 2015-02-19 华为技术有限公司 一种资源发放方法
US10439988B2 (en) * 2013-08-21 2019-10-08 Vmware, Inc. On premises, remotely managed, host computers for virtual desktops
CN104572243B (zh) 2013-10-25 2017-09-29 国际商业机器公司 用于共享Java虚拟机的方法和系统
US9374294B1 (en) * 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US9979602B1 (en) * 2014-08-25 2018-05-22 Cisco Technology, Inc. Network function virtualization infrastructure pod in a network environment
CN104253878B (zh) * 2014-09-09 2018-04-17 烽火通信科技股份有限公司 Dhcp relay终结子接口的vlan信息管理系统及方法
CN104468775B (zh) * 2014-12-05 2017-10-10 国云科技股份有限公司 一种适用于云计算的分布式路由器实现方法
CN105991435B (zh) * 2015-02-05 2019-08-27 华为技术有限公司 用于获取端口路径的方法及装置
US9742726B2 (en) * 2015-02-26 2017-08-22 Red Hat Israel, Ltd. Distributed dynamic host configuration protocol
US9634934B2 (en) * 2015-05-08 2017-04-25 Cisco Technology, Inc. Dynamic host configuration protocol relay in a multipod fabric
US9887961B2 (en) 2015-05-22 2018-02-06 International Business Machines Corporation Multi-tenant aware dynamic host configuration protocol (DHCP) mechanism for cloud networking

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10812446B1 (en) 2019-07-22 2020-10-20 Cisco Technology, Inc. Dynamic host configuration across multiple sites in software defined access networks

Also Published As

Publication number Publication date
WO2016188375A1 (en) 2016-12-01
US20180077114A1 (en) 2018-03-15
US11956207B2 (en) 2024-04-09
US20190356630A1 (en) 2019-11-21
GB201720489D0 (en) 2018-01-24
US20160344687A1 (en) 2016-11-24
JP6670025B2 (ja) 2020-03-18
US9887961B2 (en) 2018-02-06
GB2555740B (en) 2021-10-20
US20230108856A1 (en) 2023-04-06
US20210136031A1 (en) 2021-05-06
CN107615716A (zh) 2018-01-19
US10904206B2 (en) 2021-01-26
GB2555740A (en) 2018-05-09
US10425381B2 (en) 2019-09-24
JP2018519687A (ja) 2018-07-19
CN107615716B (zh) 2020-07-03
US11546293B2 (en) 2023-01-03
GB2555740C (en) 2021-11-24

Similar Documents

Publication Publication Date Title
DE112016001657T5 (de) Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke
DE112016006080B4 (de) Verwaltung von virtuellen desktopinstanzenpools
DE112019001481T5 (de) Selektives bereitstellen gegenseitiger transportschichtsicherheit mittels alternativer servernamen
DE112011103082B4 (de) Mehrere virtuelle Maschinen mit gemeinsamer Nutzung einer einzigen IP-Adresse
DE112018004349T5 (de) Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen
DE102016222034A1 (de) Dynamische Kennworterzeugung
DE112011103875T5 (de) Netzwerkschnittstelle zum Bereitstellen/erneuten Bereitstellen elner Partition in einer Cloud-Umgebung
DE112012004336T5 (de) System, Verfahren und Programmprodukt für kostenbewusste Auswahl von Vorlagen zum Bereitstellen von gemeinsam genutzten Ressourcen
DE112014000415T5 (de) Quantisierte Überlastbenachrichtigung in einem virtuellen Netzwerksystem
DE112011103522T5 (de) Erstellung eines Multidimensionalen Modells von Software-Angeboten
DE102012215219A1 (de) Ermitteln von Verteilungen von Abbildmustern von virtuellen Maschinen in einer vernetzten Datenverarbeitungsumgebung
DE112014002799B4 (de) Bereitstellen einer sicheren Kundendomäne in einer virtualisierten Mehr-Mieter-Umgebung
DE112012002404B4 (de) Konfiguration und Management virtueller Netzwerke
DE112019000421B4 (de) Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster
DE112018005898T5 (de) Dynamische bereitstellung von software-funktionen
DE112020000912T5 (de) Verwalten von software-programmen
DE112021002487T5 (de) Teilen einer geografisch konzentrierten arbeitslast zwischen benachbarten mec-hosts mehrerer netzbetreiber
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE112022002736T5 (de) Übertragen von aufgabendaten zwischen edge-einheiten beim edge computing
DE112020000535T5 (de) Fehlerbehebung innerhalb und außerhalb der eigenen Räumlichkeiten
DE112022002615T5 (de) Kontinuierliche funktionsfähigkeit und integrität von anwendungen während eines migrationsvorgangs
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE112021004945T5 (de) Techniken der kompositionellen verifikation für rollenerreichbarkeitsanalysen in identitätssystemen
DE102021125019B4 (de) Orchestrierung von einheiten für das internet der dinge

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: H04L0012460000

Ipc: G06F0013140000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0013140000

Ipc: G06F0015160000

R081 Change of applicant/patentee

Owner name: KYNDRYL, INC., NEW YORK, US

Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, NY, US