DE102016104264A1 - Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken - Google Patents

Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken Download PDF

Info

Publication number
DE102016104264A1
DE102016104264A1 DE102016104264.1A DE102016104264A DE102016104264A1 DE 102016104264 A1 DE102016104264 A1 DE 102016104264A1 DE 102016104264 A DE102016104264 A DE 102016104264A DE 102016104264 A1 DE102016104264 A1 DE 102016104264A1
Authority
DE
Germany
Prior art keywords
network adapter
virtual switch
network
destination
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102016104264.1A
Other languages
English (en)
Other versions
DE102016104264B4 (de
Inventor
Bhalachandra G. Banavalikar
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 DE102016104264A1 publication Critical patent/DE102016104264A1/de
Application granted granted Critical
Publication of DE102016104264B4 publication Critical patent/DE102016104264B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/04Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their crystalline structure, e.g. polycrystalline, cubic or particular orientation of crystalline planes
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/10Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions with semiconductor regions connected to an electrode not carrying current to be rectified, amplified or switched and such electrode being part of a semiconductor device which comprises three or more electrodes
    • H01L29/1025Channel region of field-effect devices
    • H01L29/1029Channel region of field-effect devices of field-effect transistors
    • H01L29/1033Channel region of field-effect devices of field-effect transistors with insulated gate, e.g. characterised by the length, the width, the geometric contour or the doping structure
    • H01L29/1037Channel region of field-effect devices of field-effect transistors with insulated gate, e.g. characterised by the length, the width, the geometric contour or the doping structure and non-planar channel
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/12Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/16Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table
    • H01L29/1608Silicon carbide
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/12Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/16Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table
    • H01L29/161Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table including two or more of the elements provided for in group H01L29/16, e.g. alloys
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/12Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/16Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table
    • H01L29/161Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table including two or more of the elements provided for in group H01L29/16, e.g. alloys
    • H01L29/165Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, only elements of Group IV of the Periodic Table including two or more of the elements provided for in group H01L29/16, e.g. alloys in different semiconductor regions, e.g. heterojunctions
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/12Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/26Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, elements provided for in two or more of the groups H01L29/16, H01L29/18, H01L29/20, H01L29/22, H01L29/24, e.g. alloys
    • H01L29/267Semiconductor bodies ; Multistep manufacturing processes therefor characterised by the materials of which they are formed including, apart from doping materials or other impurities, elements provided for in two or more of the groups H01L29/16, H01L29/18, H01L29/20, H01L29/22, H01L29/24, e.g. alloys in different semiconductor regions, e.g. heterojunctions
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/66Types of semiconductor device ; Multistep manufacturing processes therefor
    • H01L29/68Types of semiconductor device ; Multistep manufacturing processes therefor controllable by only the electric current supplied, or only the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched
    • H01L29/76Unipolar devices, e.g. field effect transistors
    • H01L29/772Field effect transistors
    • H01L29/78Field effect transistors with field effect produced by an insulated gate
    • H01L29/788Field effect transistors with field effect produced by an insulated gate with floating gate
    • H01L29/7881Programmable transistors with only two possible levels of programmation
    • H01L29/7883Programmable transistors with only two possible levels of programmation charging by tunnelling of carriers, e.g. Fowler-Nordheim tunnelling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B41/00Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates
    • H10B41/20Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels
    • H10B41/23Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels
    • H10B41/27Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels the channels comprising vertical portions, e.g. U-shaped channels
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B43/00EEPROM devices comprising charge-trapping gate insulators
    • H10B43/20EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels
    • H10B43/23EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels
    • H10B43/27EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels the channels comprising vertical portions, e.g. U-shaped channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Ceramic Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Semiconductor Memories (AREA)
  • Non-Volatile Memory (AREA)

Abstract

In einer Ausführungsform empfängt ein Netzwerkadapter eine Anforderung von einem ersten virtuellen Switch eines Overlay-Netzwerks zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren virtuellen Switches des Overlay-Netzwerks, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind. Für jeden der ein oder mehreren in der Liste gekennzeichneten virtuellen Switches erzeugt der Netzwerkadapter eine Kopfstellenreplikation des Mehrfachzielpakets, erhält Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch, kapselt die erzeugte Kopfstellenreplikation mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist, und überträgt das gekapselte Paket an einen Empfänger, der im gekennzeichneten virtuellen Switch untergebracht ist.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft allgemein des Gebiet von Datenübertragungen und insbesondere das Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken.
  • HINTERGRUND
  • Eine Datenverarbeitungsumgebung weist eine Vielfalt an Hardware-, Software- und Firmware-Vernetzungskomponenten auf. Bei einem auch als Underlay bezeichneten physischen Netzwerk handelt es sich um ein Netzwerk, das unter Verwendung solcher Komponenten definiert wird.
  • Gegenwärtig stehen Techniken zur Verfügung, um ein logisches Netzwerk, das auch als Software-Defined-Network-(SDN-)Overlay (im Folgenden ”Overlay”, ”Overlay-Netzwerk” oder ”OVN”) bekannt ist, aus solchen Vernetzungskomponenten zu konstruieren. Im Wesentlichen werden Vernetzungskomponenten zu entsprechenden logischen oder virtuellen Darstellungen abstrahiert, und die Abstraktionen werden zum Definieren des Overlay verwendet. Mit anderen Worten, bei einem Overlay handelt es sich um ein logisches Netzwerk, das unter Verwendung von logischen Darstellungen zugrundeliegender Vernetzungskomponenten gebildet und betrieben wird.
  • Physische Netzwerke bestehen normalerweise innerhalb der demarkierten Grenze der Datenverarbeitungsumgebung, deren Vernetzungskomponenten im physischen Netzwerk verwendet werden. Im Gegensatz zu einem physischen Netzwerk kann ein Overlay so gestaltet sein, dass es sich über eine oder mehrere Datenverarbeitungsumgebungen erstreckt. Während ein physisches Netzwerk in einem Datenzentrum enthalten sein kann, kann sich ein Overlay beispielsweise über ein oder mehrere Datenzentren erstrecken.
  • Zum Beispiel kann eine logische Darstellung eines Netzwerk-Gateways an einem Overlay beteiligt sein, so dass eine der logischen Darstellung des Netzwerk-Gateways zugeschriebene Funktion im Overlay tatsächlich von der zugrundeliegenden Netzwerk-Gateway-Komponente im Underlay ausgeführt wird.
  • Da die eigentlichen Vernetzungskomponenten, die die Vernetzungsfunktionen ausführen, in einem Overlay zu logischen Einheiten abstrahiert werden, die die von diesen Komponenten angebotene Vernetzungsfunktionalität und nicht die tatsächlichen Implementierungen jener Funktionalitäten darstellen, ist es erforderlich, diese Vernetzungsfunktionalität in ein funktionierendes logisches Netzwerk zu lenken. Eine SDN-Steuereinheit ist eine Komponente, die die logischen Vernetzungskomponenten in einem Overlay verwaltet und steuert.
  • Eine virtuelle Maschine (VM) weist virtualisierte Darstellungen realer Hardware-, Software- und Firmware-Komponenten auf, die in einem Datenverarbeitungssystem verfügbar sind. Das Datenverarbeitungssystem kann eine beliebige Anzahl von darin konfigurierten VMs aufweisen und eine beliebige Anzahl von virtualisierten Komponenten darin verwenden. Das Datenverarbeitungssystem wird auch als Datenverarbeitungsknoten, Rechenknoten, Knoten oder Host bezeichnet.
  • In Großrechner-Datenverarbeitungsumgebungen, beispielsweise in einem Datenzentrum, können zu jedem beliebigen Zeitpunkt tausende von VMs in einem Host betrieben werden, und hunderte, wenn nicht tausende solcher Hosts können im Datenzentrum gleichzeitig betrieben werden. Eine virtualisierte Datenverarbeitungsumgebung wie das beschriebene Datenzentrum wird oftmals als ”Cloud” bezeichnet, die Datenverarbeitungs-Ressourcen und Datenverarbeitungsdienste für mehrere Clients bedarfsorientiert bereitstellt.
  • Bei einem virtuellen Switch, hierin manchmal als vSwitch bezeichnet, handelt es sich um eine Software-Anwendung, die eine Datenübertragung zwischen VMs ermöglicht. Ein virtueller Switch ist komplett virtuell und kann mit einer Netzwerkschnittstellenkarte (NIC) verbunden werden. Ein virtueller Switch verbindet physische Switches zu einem einzigen logischen Switch. Dies ist hilfreich, um die Bandbreite zu erhöhen und ein aktives Netz zwischen Servern und Switches zu erzeugen. Ein virtueller Switch kann in die auf einem Server installierte Software eingebettet oder als Teil seiner Firmware in die Hardware eines Servers integriert werden.
  • Eine Netzwerkvirtualisierung durch das Definieren von Overlay-Netzwerken ist ein aufkommender Trend bei der Verwaltung und beim Betrieb von Datenzentren und Cloud Computing-Umgebungen. Eines der Ziele einer Netzwerkvirtualisierung ist das Vereinfachen der Netzwerkbereitstellung in Multi-Tenant-Datenverarbeitungsumgebungen sowie speziellen Kundendatenverarbeitungsumgebungen.
  • Unicast ist ein Verfahren zum Übertragen von Daten von Punkt zu Punkt, das heißt, von einem einzelnen Sender an einen einzelnen Empfänger. Beim Broadcast-Verfahren werden dieselben Daten an alle möglichen Ziele übertragen. In einem weiteren Verfahren zur Verteilung an Mehrfachziele, Multicast, werden dieselben Daten nur an interessierte, als Empfänger bezeichnete Ziele übertragen, indem spezielle Adresszuweisungen verwendet werden. Bei Internet Protocol-(IP-)Multicast handelt es sich um den Prozess des Multicast-Übertragens von IP-Paketen an mehrere Empfänger in einem einzigen Übertragungsvorgang des IP-Pakets. IP-Multicast ist eine weitverbreitete Technik, die verwendet wird, um Bandbreite im Datenzentrum zu sparen und die Server-Last zu verringern.
  • Das Betreiben von IP-Multicast in einem Overlay-Netzwerk wird als Overlay-Multicast bezeichnet. Overlay-Multicast kann in Abhängigkeit von der im Underlay-Netzwerk bereitgestellten Unterstützung für Multicast-Verfahren auf verschiedene Arten erreicht werden. Ein auf Overlay-Multicast beruhendes Multicast-Verfahren macht es erforderlich, dass das Underlay-Netzwerk eine Unterstützung für Multicast bereitstellt. Multicast in Underlay-Netzwerken ist gegenwärtig in Datenverarbeitungsumgebungen nicht weitverbreitet. Beim auf Multi-Unicast beruhenden Overlay-Multicast handelt es sich um ein Verfahren zum Übertragen von Multicast-Paketen im Overlay-Netzwerk, wobei das Underlay Unicast, jedoch kein Multicast unterstützt.
  • KURZDARSTELLUNG
  • In einer Ausführungsform weist ein Verfahren einen Netzwerkadapter auf, der von einem ersten virtuellen Switch eines Overlay-Netzwerks eine Anforderung zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren Switches des Overlay-Netzwerks empfängt, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind. Das Verfahren weist außerdem für jeden der ein oder mehreren in der Liste gekennzeichneten virtuellen Switches auf: Erzeugen einer Kopfstellenreplikation (head-end replication) des Mehrtachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapseln der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  • In einer anderen Ausführungsform speichert ein Speicher Programmbefehle, die von einem Prozessor eines Netzwerkadapters ausgeführt werden können, um ein Verfahren zu implementieren. Das Verfahren beinhaltet Empfangen einer Anforderung von einem ersten virtuellen Switch eines Overlay-Netzwerks zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren virtuellen Switches des Overlay-Netzwerks, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind, durch den Netzwerkadapter. Außerdem beinhaltet das Verfahren für jeden der ein oder mehreren in der Liste gekennzeichneten virtuellen Switches: Erzeugen einer Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapsein der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  • In einer anderen Ausführungsform weist der Netzwerkadapter einen Prozessor, einen Speicher und Programmbefehle auf, die zur Ausführung durch den Prozessor im Speicher gespeichert sind, um ein Verfahren zu implementieren. Das Verfahren beinhaltet Empfangen einer Anforderung von einem ersten virtuellen Switch eines Overlay-Netzwerks zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren virtuellen Switches des Overlay-Netzwerks, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind, durch den Netzwerkadapter. Außerdem beinhaltet das Verfahren für jeden der ein oder mehreren in der Liste gekennzeichneten virtuellen Switches: Erzeugen einer Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapseln der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Funktionsblockschaltbild, das eine Verarbeitungsumgebung für Mehrfachzielpakete in einer Ausführungsform gemäß der vorlegenden Erfindung veranschaulicht.
  • 2 ist ein Funktionsblockschaltbild, das einen Netzwerkadapter in einer Ausführungsform gemäß der vorliegenden Erfindung darstellt.
  • 3 ist ein Ablaufplan, der Verfahrensschritte des Hinzufügens bzw. Entfernens von virtuellen Switches zu bzw. von einer Mehrfachzielgruppen-Empfängerliste in der Verarbeitungsumgebung für Mehrfachzielpakete von 1 in einer Ausführungsform gemäß der vorliegenden Erfindung darstellt.
  • 4 ist ein Ablaufplan, der Verfahrensschritte zum Übertragen eines Mehrfachzielpakets an eine Mehrfachzielgruppe in der Verarbeitungsumgebung für Mehrfachzielpakete von 1 in einer Ausführungsform gemäß der vorliegenden Erfindung darstellt.
  • 5 zeigt ein Blockschaltbild eines Server-Computers in einer Ausführungsform gemäß der vorliegenden Erfindung,
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen gemäß der vorlegenden Erfindung lassen deutliche Vorteile von Netzwerkadaptern erkennen, die Pläne von Mehrfachzielgruppen und Tunnelendpunkten (TEPs) verwalten, Anwendungsprogrammschnittstellen (APIs) zum Bearbeiten solcher Pläne bereitstellen und Kopfstellenreplikationen für Mehrfachzielpakete auf der Grundlage von Auslagerungsbefehlen (offload instructions) verarbeiten, die von einem softwaredefinierten Datenpfad bereitgestellt werden. Hierin beschriebene Ausführungsformen entlasten einen virtuellen Switch vom Erzeugen von Eins-zu-Viele-Unicast-Paketen (one-to-many unicast packets) für Mehrfachzielpakete und vom Ausführen von Kontrollsummen und Kapselungen für jedes der neu erzeugten Pakete. Hierin beschriebene Ausführungsformen machen die Beschränkungen bestehender Lösungsansätze zum Verarbeiten von Mehrfachzielpaketen in einem softwaredefinierten Datenpfad eines virtuellen Switches entbehrlich.
  • Hierin beschriebene Ausführungsformen lassen erkennen, dass ein Verarbeiten von Mehrfachziel-Datenverkehr in OVN-TEPs ein Vorgang ist, der mit hohem Aufwand für die Zentraleinheit (CPU) verbunden ist. Einige Implementierungen einer Verarbeitung von Mehrfachzielpaketen in OVN-TEPs sind beim Verarbeiten von Mehrfachzielpaketen von der Unterstützung des Underlay-Netzwerks abhängig, was erhebliche Einschränkungen der Einsatzfähigkeit solcher OVN-Lösungen zur Folge hat, da die erforderliche Unterstützung des Underlay-Netzwerks zum Verarbeiten von Mehrfachzielpaketen an einem Kundenstandort nicht immer gegeben ist. Bei einer Kundenstandortausrüstung (customer premises equipment, CPE) handelt es sich um eine Ausrüstung von Telefon- oder anderen Dienstanbietern, die sich am Kundenstandort (physischer Standort) und nicht am Standort des Anbieters oder dazwischen befindet. Zu Beispielen für CPE gehören Telefonhandapparate, Kabel-TV-Set-Top-Boxen und Digital-Subscriber-Line-(DSL-)Router. Alternativ verwenden OVN-TEPs die Vorgehensweise eines wiederholten Unicast zum Verarbeiten einer Zustellung von Mehrfachzielpaketen. Hierin beschriebene Ausführungsformen lassen erkennen, dass eine solche Vorgehensweise CPU-intensiv sowie latenzbehaftet ist und erhebliche Skalierungsprobleme mit sich bringt, da die Arbeitsgänge der Paketbildung, Kontrollsummenbildung und Kapselung in einem softwaredefinierten Datenpfad ausgeführt werden. Hierin beschriebene Ausführungsformen lassen außerdem erkennen, dass eine solche Implementierung auch unter einer unbeständigen Verarbeitungsleistung bezüglich der Mehrfachzielpakete leidet und sich auf das Verarbeiten von normalen Unicast-Paketen auswirkt, da eine typische Verarbeitung eines wiederholten Unicast von Mehrfachzielpaketen bedeutet, dass vor anderen für entfernt angeordnete TEPs bestimmten Unicast-Paketen für jedes Mehrfachzielpaket Eins-zu-Viele-Unicast-Pakete erzeugt werden. Dieses Problem wird sogar noch akuter, wenn ein OVN-TEP eine einzige physische Verbindung zu einem Underlay-Netzwerk hat.
  • Ausführungsformen gemäß der vorliegenden Erfindung werden nun unter Bezugnahme auf die Figuren ausführlich beschrieben. 1 ist ein Funktionsblockschaltbild, das eine Verarbeitungsumgebung für Mehrfachzielpakete in einer Ausführungsform gemäß der vorliegenden Erfindung veranschaulicht.
  • Eine Verarbeitungsumgebung 100 für Mehrfachzielpakete weist einen Server 102, eine Netzwerksteuereinheit 122, einen Server 124 und einen Server 142 auf, die allesamt über ein Netzwerk 120 miteinander verbunden sind. Bei den Servern 102, 124 und 142 kann es sich jeweils um eine beliebige elektronische Einheit oder eine Kombination aus elektronischen Einheiten handeln, die Programmbefehle verarbeiten und beispielsweise über das Netzwerk 120 Daten empfangen und übertragen können. In einigen Ausführungsformen kann es sich bei den Servern 102, 124 und 142 um einen Laptop-Computer, einen Tablet-Computer, einen Netbook-Computer, einen Personal Computer (PC), einen Desktop-Computer, einen Server-Computer, einen Personal Digital Assistant (PDA) oder ein Smartphone handeln. In anderen Ausführungsformen können die Server 102, 124 und 142 jeweils Server-Datenverarbeitungssysteme darstellen, die mehrere Computer als ein Server-System verwenden, beispielsweise in einer verteilten Datenverarbeitungsumgebung.
  • Der Server 102 weist einen RAM 104, eine CPU 106, einen dauerhaften Speicher 108, eine VM 112, eine VM 114, einen virtuellen Switch 116 und einen Netzwerkadapter 118 auf. Beim dauerhaften Speicher 108 kann es sich zum Beispiel um ein Festplattenlaufwerk handeln. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kommen als dauerhafter Speicher 108 ein Halbleiterdatenträger (solid state hard drive), eine Halbleiter-Speichereinheit, ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbaren Nur-Lese-Speicher (FPROM), ein Flash-Speicher oder ein beliebiges computerlesbares Speichermedium infrage, das Programmbefehle oder digitale Daten speichern kann. Der dauerhafte Speicher 108 speichert Betriebssystem-Software sowie Software, die es dem Server 102 ermöglicht, mit der Netzwerksteuereinheit 122, dem Server 124 und dem Server 142 über eine Datenverbindung im Netzwerk 120 Daten auszutauschen. Eine Mehrfachziel-Software 110 (manchmal als „Mdest-Software 110” abgekürzt) ist ebenfalls im dauerhaften Speicher 108 gespeichert. Bei der Mehrfachziel-Software handelt es sich um Software, die es dem virtuellen Switch 116 ermöglicht, mit der Netzwerksteuereinheit 122, der VM 112 und der VM 114 im Server 102; einer VM 134, einer VM 136 und einem virtuellen Switch 138 im Server 124; und einer VM 152, einer VM 154 und einem virtuellen Switch 156 im Server 142 über das Netzwerk 120 Daten auszutauschen. Die Mehrfachziel-Software 110 ermöglicht außerdem der Netzwerksteuereinheit 122, virtuelle Switches 116, 138 und 156 mit Mehrfachzielgruppen-Empfängerlisten für eine gegebene Mehrfachzielgruppe bereitzustellen.
  • Die VM 112 tauscht über den virtuellen Switch 116, den virtuellen Switch 138 und den virtuellen Switch 156 Daten mit der VM 134 und der VM 152 aus, wobei ein virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird. Die VM 114 tauscht über den virtuellen Switch 116, den virtuellen Switch 138 und den virtuellen Switch 156 Daten mit der VM 136 und der VM 154 aus, wobei ein gesondertes virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird. Der virtuelle Switch 116 wird von der VM 112 und der VM 114 verwendet, um mit Knoten in ihrem jeweiligen Overlay-Netzwerk auf dem Netzwerk 120 Daten auszutauschen. In einer Ausführungsform können viele virtuelle Maschinen und virtuelle Overlay-Netzwerke in der Verarbeitungsumgebung 100 für Mehrfachzielpakete vorhanden sein. In anderen Ausführungsformen kann sich die Netzwerksteuereinheit 122 in einem Server in der Verarbeitungsumgebung 100 für Mehrfachzielpakete befinden oder als eigenständiger Computer mit dem Netzwerk 120 verbunden sein.
  • Der Netzwerkadapter 118 ist eine Computer-Hardware-Komponente, die den Server 102 mit dem Netzwerk 120 verbindet. Der Netzwerkadapter 118 ermöglicht dem Server 102, mit der Netzwerksteuereinheit 122, dem Server 124 und dem Server 142 Daten auszutauschen. Der Netzwerkadapter 118 weist außerdem Auslagerungsfunktionen (offload capabilities) auf, wodurch dem Netzwerkadapter 118 ein Verwalten von Plänen von Mehrfachzielgruppen und TEPs ermöglicht wird, stellt Anwendungsprogrammschnittstellen (APIs) zum Bearbeiten solcher Pläne bereit und verarbeitet eine Kopfstellenreplikation für Mehrfachzielpakete auf der Grundlage von Auslagerungsbefehlen, die von einem softwaredefinierten Datenpfad bereitgestellt werden. Außerdem ermöglicht der Netzwerkadapter 118 der VM 112, über den virtuellen Switch 116, den virtuellen Switch 138 und den virtuellen Switch 156 Daten mit der VM 134 und der VM 152 auszutauschen, wobei ein virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird. Außerdem ermöglicht der Netzwerkadapter 118 der VM 114, über den virtuellen Switch 116, den virtuellen Switch 138 und den virtuellen Switch 156 Daten mit der VM 136 und der VM 154 auszutauschen, wobei ein gesondertes virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird.
  • In 1 wird das Netzwerk 120 als die Verbindungsstruktur zwischen dem Server 102, der Netzwerksteuereinheit 122, dem Server 124 und dem Server 142 gezeigt, In der Praxis kann das Netzwerk 120 ein beliebiges realisierbares Datentransportnetz sein. Beim Netzwerk 120 kann es sich beispielsweise um ein lokales Netz (LAN), ein Weitverkehrsnetz (WAN) wie das Internet oder eine Kombination aus den beiden handeln, und es kann leitungsgebunden oder kabellos sein oder Lichtwellenleiterverbindungen aufweisen. Im Allgemeinen kann es sich beim Netzwerk 120 um eine beliebige Kombination aus Verbindungen und Protokollen handeln, die Datenaustauschvorgänge zwischen dem Server 102, der Netzwerksteuereinheit 122, dem Server 124 und dem Server 142 gemäß einer Ausführungsform der Erfindung unterstützt.
  • Bei der Netzwerksteuereinheit 122 handelt es sich um eine SDN-Steuereinheit für eine Endpunkt-zu-Endpunkt-Bereitstellung von virtuellen Netzwerken, virtuellen Switches, virtuellen Endpunkten (Mehrfachzielsendern und -empfängern). Die Netzwerksteuereinheit 122 ist zuständig für ein Erzeugen und Bereitstellen der Liste der Mehrfachzielgruppenempfänger in einer gegebenen Mehrfachzielgruppe, z. B. der VM 112, der VM 134 und der VM 152, für den virtuellen Switch, z. B. den virtuellen Switch 156, der den Mehrfachzielsender für die gegebene Mehrfachzielgruppe hat. In einer Ausführungsform kann es sich bei der Netzwerksteuereinheit 122 um ein gesondertes Computersystem, einen Server oder Hardware in einer Verarbeitungsumgebung 100 für Mehrfachzielpakete handeln. In einer anderen Ausführungsform kann die Netzwerksteuereinheit 122 Teil des Servers 102, des Servers 124 oder des Servers 142 sein. Einige Ausführungsformen weisen möglicherweise mehr als eine Netzwerksteuereinheit in der Verarbeitungsumgebung 100 für Mehrfachzielpakete auf, die beispielsweise als Unterstützung für die Netzwerksteuereinheit 122 dienen.
  • Der Server 124 enthält einen RAM 126, eine CPU 128, einen dauerhaften Speicher 130, eine VM 134, eine VM 136, einen virtuellen Switch und einen Netzwerkadapter 140. Im dauerhaften Speicher 130 ist eine Mdest-Software 132 gespeichert, die analog zur Mdest-Software 110 ist. Der Netzwerkadapter 140 ist eine Computer-Hardware-Komponente, die den Server 124 mit dem Netzwerk 120 verbindet. Der Netzwerkadapter 140 ermöglicht dem Server 124, mit der Netzwerksteuereinheit 122, dem Server 102 und dem Server 142 Daten auszutauschen. Der Netzwerkadapter 140 beinhaltet außerdem Auslagerungsfunktionen, die ihm ein Verwalten von Plänen von Mehrfachzielgruppen und TEPs ermöglichen, stellt Anwendungsprogrammschnittstellen (APIs) zum Bearbeiten solcher Pläne bereit und verarbeitet eine Kopfstellenreplikation für Mehrfachzielpakete auf der Grundlage von Auslagerungsbefehlen, die von einem softwaredefinierten Datenpfad bereitgestellt werden. Außerdem ermöglicht der Netzwerkadapter 140 der VM 134, durch den virtuellen Switch 138, den virtuellen Switch 116 und den virtuellen Switch 156 Daten mit der VM 112 und der VM 152 auszutauschen, wobei ein virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird. Außerdem ermöglicht der Netzwerkadapter 140 der VM 136, durch den virtuellen Switch 138, den virtuellen Switch 116 und den virtuellen Switch 156 Daten mit der VM 114 und der VM 154 auszutauschen, wobei ein gesondertes virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird.
  • Der Server 142 enthält einen RAM 144, eine CPU 146, einen dauerhaften Speicher 148, eine VM 152, eine VM 154, einen virtuellen Switch 156 und einen Netzwerkadapter 158. Im dauerhaften Speicher 148 ist eine Mdest-Software 150 gespeichert, die analog zur Mdest-Software 110 ist. Der Netzwerkadapter 158 ist eine Computer-Hardware-Komponente, die den Server 142 mit dem Netzwerk 120 verbindet. Der Netzwerkadapter 158 ermöglicht dem Server 142, mit der Netzwerksteuereinheit 122, dem Server 102 und dem Server 124 Daten auszutauschen. Der Netzwerkadapter 158 beinhaltet außerdem Auslagerungsfunktionen, die ihm ein Verwalten von Plänen von Mehrfachzielgruppen und TEPs ermöglichen, stellt Anwendungsprogrammschnittstellen (APIs) zum Bearbeiten solcher Pläne bereit und verarbeitet eine Kopfstellenreplikation für Mehrfachzielpakete auf der Grundlage von Auslagerungsbefehlen, die von einem softwaredefinierten Datenpfad bereitgestellt werden. Außerdem ermöglicht der Netzwerkadapter 158 der VM 152, durch den virtuellen Switch 156, den virtuellen Switch 116 und den virtuellen Switch 138 Daten mit der VM 112 und der VM 134 auszutauschen, wobei ein virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird. Außerdem ermöglicht der Netzwerkadapter 158 der VM 154, durch den virtuellen Switch 156, den virtuellen Switch 116 und den virtuellen Switch 138 Daten mit der VM 114 und der VM 136 auszutauschen, wobei ein gesondertes virtuelles Overlay-Netzwerk auf dem Netzwerk 120 verwendet wird.
  • In der beispielhaften Ausführungsform von 1 dient der Server 142 als der Mehrfachzielsender für eine als ”MDG-1” bezeichnete Mehrfachzielgruppe, die im virtuellen Switch 156 untergebracht ist, und verarbeitet Netzwerkdaten für die VM 112, die VM 134, die VM 152, den virtuellen Switch 138 und den virtuellen Switch 116. Der Server 142 dient außerdem als der Mehrfachzielsender für eine als ”MDG-2” (nicht gezeigt) bezeichnete Mehrfachzielgruppe, die im virtuellen Switch 156 untergebracht ist, und verarbeitet Netzwerkdaten für die VM 114, die VM 136, die VM 154, den virtuellen Switch 138 und den virtuellen Switch 116. In anderen Ausführungsformen können die Mehrfachzielgruppen in einem oder mehreren virtuellen Switches in der Verarbeitungsumgebung 100 für Mehrfachzielpakete untergebracht sein.
  • 2 ist ein Funktionsblockschaltbild, das einen Netzwerkadapter in einer Ausführungsform gemäß der vorliegenden Erfindung veranschaulicht. Der Netzwerkadapter 200 ist eine Ausführungsform von jedem der Netzwerkadapter 118, 140 und 158 und enthält einen Prozessor 202, einen Speicher 204, eine Peripheral-Component-Interconnect-(PCI-)Schnittstelle 206, eine Datenträgerzugriffssteuerung (medium access control) 208 und eine Mehrfachziel-Anwendungsprogrammschnittstelle (APIs) 210. Es sollte klar sein, dass 2 lediglich eine Veranschaulichung einer Implementierung bereitstellt und keinerlei Beschränkungen hinsichtlich der Umgebungen mit sich bringt, in denen verschiedene Ausführungsformen implementiert werden können. Es können viele Modifikationen an der dargestellten Umgebung vorgenommen werden. In einer Ausführungsform können sich die Mehrfachziel-APIs 210 im Speicher 204 oder in einem gesonderten Nur-Lese-Speicher (ROM), einem löschbaren programmierbaren Nur-Lese-Speicher (EPROM) oder einem Flash-Speicher befinden. In einer anderen Ausführungsform können sich die Mehrfachziel-APIs 210 in einem Host-Server befinden und in den Netzwerkadapter 118 heruntergeladen werden.
  • Die Mehrfachziel-APIs 210 ermöglichen dem Netzwerkadapter 200, Listen von Mehrfachzielgruppen auf der Grundlage der Liste von Mehrfachzielgruppenempfängern, die in einem Mehrfachzielsender, z. B. dem virtuellen Switch 156, untergebracht ist, zu erzeugen und zu speichern. Ein Auslagern von Mehrfachziel-Vorgängen aus einem virtuellen Switch, z. B. dem virtuellen Switch 156, in den Netzwerkadapter 200 stellt eine deutliche Verringerung der Host-CPU-Nutzung für Verarbeitungsvorgänge von Mehrfachzielpaketen bereit. Ein weiterer Vorteil des Auslagerns von Mehrfachziel-Vorgängen in den Netzwerkadapter 200 besteht in verbesserten Paketübertragungs-Latenzzeiten, da die Verarbeitung auf der Hardware-Ebene erfolgt. Das Auslagern von Mehrfachziel-Vorgängen in den Netzwerkadapter 200 löst darüber hinaus Probleme der Skalierbarkeit bei wachsenden Mitgliederlisten von Mehrfachzielgruppen. Die Skalierbarkeit ist eine Fähigkeit eines Systems, eines Netzwerks oder eines Prozesses zum Verarbeiten eines wachsenden Arbeitsumfangs auf leistungsfähige Weise oder dessen Fähigkeit zur Erweiterung, um diesem Zuwachs gerecht werden zu können. Wenn die Mitgliederliste von Mehrfachzielgruppen größer wird, müssen bei einer durch Software implementierten Paketreplikation und einer Kopfstellenreplikation für jedes Mitglied einer Mehrfachzielgruppe für jedes übertragene Paket Kontrollsummenberechnungen ausgeführt werden, wodurch eine hohe Belastung der CPU entsteht, die mit wachsender Mitgliederliste einer Mehrfachzielgruppe zunimmt. Mit dem Auslagern dieser Arbeitsgänge in den Netzwerkadapter 200 sind CPUs, beispielsweise die CPUs 106, 128 und 146, in der Lage, mehr Verarbeitungszyklen für andere Aufgaben bereitzustellen.
  • 3 ist ein allgemein mit 300 bezeichneter Ablaufplan, der Arbeitsschritte des Hinzufügens bzw. Entfernens von virtuellen Switches zu bzw. aus einer Empfängerliste von Mehrfachzielgruppen in der Verarbeitungsumgebung für Mehrfachzielpakete von 1 in einer Ausführungsform gemäß der vorliegenden Erfindung zeigt. In dieser beispielhaften Ausführungsform ist der virtuelle Switch 156 im Server 142 der Mehrfachzielsender für die MDG-1. Die Netzwerksteuereinheit 122 sendet eine Anforderung zum Hinzufügen des virtuellen Switches 116 zu einer Empfängerliste der MDG-1 im Netzwerkadapter 158 an den virtuellen Switch 156, wie im Schritt 302 gezeigt wird. Die Empfängerliste der MDG-1 kann im Speicher 204 des Netzwerkadapters 158 gespeichert sein. Im Schritt 304 ruft der virtuelle Switch 156 auf das Empfangen der Anforderung hin eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 auf, um die MDG-1 durch Hinzufügen des virtuellen Switches 116 zur Empfängerliste der MDG-1 im Netzwerkadapter 158 zu aktualisieren. Auf das Empfangen des Aufrufs an die eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 hin aktualisiert der Netzwerkadapter 158 die MDG-1 durch Hinzufügen des virtuellen Switches 116 zur Empfängerliste der MDG-1 im Netzwerkadapter 158.
  • Die Netzwerksteuereinheit 122 sendet eine Anforderung zum Hinzufügen des virtuellen Switches 138 zur Empfängerliste der MDG-1 im virtuellen Switch 156 an den virtuellen Switch 156, wie im Schritt 306 gezeigt wird. Im Schritt 308 ruft der virtuelle Switch 156 auf das Empfangen der Anforderung hin eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 auf, um die MDG-1 durch Hinzufügen des virtuellen Switches 138 zur Empfängerliste der MDG-1 im Netzwerkadapter 158 zu aktualisieren. Auf das Empfangen des Aufrufs an die eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 hin aktualisiert der Netzwerkadapter 158 die MDG-1 durch Hinzufügen des virtuellen Switches 138 zur Empfängerliste der MDG-1 im Netzwerkadapter 158.
  • Auf eine ähnliche Weise wird ein virtueller Switch aus der Mehrfachzielgruppe entfernt. Im Schritt 310 sendet die Netzwerksteuereinheit 122 eine Anforderung zum Löschen des virtuellen Switches 116 aus der Empfängerliste der MDG-1 an den virtuellen Switch 156. Im Schritt 312 ruft der virtuelle Switch 156 auf das Empfangen der Anforderung hin eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 auf, um die MDG-1 durch Löschen des virtuellen Switches 116 aus der Empfängerliste der MDG-1 im Netzwerkadapter 158 zu aktualisieren. Auf das Empfangen des Aufrufs an die eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 hin aktualisiert der Netzwerkadapter 158 die MDG-1 durch Löschen des virtuellen Switches 116 aus der Empfängerliste der MDG-1 im Netzwerkadapter 158.
  • Die Netzwerksteuereinheit 122 sendet eine weitere Anforderung zum Hinzufügen des virtuellen Switches 116 zur Empfängerliste der MDG-1 im Netzwerkadapter 158, wie im Schritt 314 gezeigt wird. Im Schritt 316 ruft der virtuelle Switch 156 auf das Empfangen der Anforderung hin eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 auf, um die MDG-1 durch Hinzufügen des virtuellen Switches 116 zur Empfängerliste der MDG-1 im Netzwerkadapter 158 zu aktualisieren. Auf das Empfangen des Aufrufs an die eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 hin aktualisiert der Netzwerkadapter 158 die MDG-1 durch Hinzufügen des virtuellen Switches 116 zur Empfängerliste der MDG-1 im Netzwerkadapter 158. Ein Verwalten von Listen von Mehrfachzielgruppen, beispielsweise der Empfängerliste der MDG-1, im Netzwerkadapter 158 stellt die Fähigkeit zum lückenlosen Skalieren der Listen innerhalb der Verarbeitungsumgebung 100 für Mehrfachzielpakete bereit.
  • 4 ist ein allgemein mit 400 bezeichneter Ablaufplan, der die Arbeitsschritte zum Übertragen eines Mehrfachzielpakets an eine Mehrfachzielgruppe in der Verarbeitungsumgebung für Mehrfachzielpakete von 1 in einer Ausführungsform gemäß der vorliegenden Erfindung zeigt. Im Schritt 402 überträgt der Server 142 ein Mehrfachzielpaket für die MDG-1 an den virtuellen Switch 156. In einer Ausführungsform kann das Mehrfachzielpaket von der virtuellen Maschine 152 oder der virtuellen Maschine 154 stammen. In einer anderen Ausführungsform kann das Mehrfachzielpaket von der im dauerhaften Speicher 148 gespeicherten Mdest-Software 150 stammen. Der virtuelle Switch 156 ruft eine oder mehrere der Mehrfachziel-APIs 210 des Netzwerkadapters 158 auf, damit der Netzwerkadapter 158 das Mehrfachzielpaket an die virtuellen Switches in der Empfängerliste der MDG-1 überträgt, wie im Schritt 404 gezeigt wird. In Reaktion auf das Empfangen des Aufrufs an die eine oder mehreren der Mehrfachziel-APIs 210 des Netzwerkadapters 158, damit der Netzwerkadapter 158 das Mehrfachzielpaket an die virtuellen Switches in der Empfängerliste der MDG-1 überträgt, führt der Netzwerkadapter 158 im Schritt 406 einen Kopfstellenreplikationsprozess für das Mehrfachzielpaket aus, indem er für jeden virtuellen Switch in der Empfängerliste der MDG-1 eine Replik des Pakets erzeugt. Für jeden virtuellen Switch in der Empfängerliste der MDG-1 erhält der Netzwerkadapter 158 die Tunnelendpunktdaten des virtuellen Switches. Die Tunnelendpunktdaten können das erforderliche Tunnelungsprotokoll für den virtuellen Ziel-Switch und die Anschlussgruppe des virtuellen lokalen Netzes (VLAN) enthalten. Die VLAN-Anschlussgruppe wird während des anfänglichen Konfigurationsprozesses von einem Administrator konfiguriert. Zur VLAN-Anschlussgruppe gehören physische Netzwerkschnittstellenkarten (NICs), VLAN-Daten und Gruppierungsrichtlinien. Diese Anschlussgruppen geben vor, wie der VLAN-Datenverkehr in den und aus dem Host-TEP durch die physischen NICs erfolgt. Der Netzwerkadapter 158 kapselt das replizierte Mehrfachzielpaket für den virtuellen Ziel-Switch mit für das Tunnelungsprotokoll spezifischen Vorsätzen. Bei der Vernetzung von Computern ist die Kapselung ein Verfahren zum Entwickeln modularer Datenübertragungsprotokolle, in denen logisch separate Funktionen im Netzwerk durch Aufnahme oder Verbergen von Informationen in übergeordneten Objekten aus ihren zugrundeliegenden Strukturen abstrahiert werden. Ein Tunnelungsprotokoll ermöglicht einem Netzbenutzer, auf einen Netzwerkdienst, den das zugrundeliegende Netzwerk nicht direkt unterstützt oder bereitstellt, zuzugreifen oder einen solchen bereitzustellen. Ein wichtiger Verwendungszweck eines Tunnelungsprotokolls besteht darin, ein Ausführen eines fremden Protokolls über ein Netzwerk zu ermöglichen, das dieses bestimmte Protokoll nicht unterstützt, z. B Ausführen von IPv6 über IPv4.
  • Der Netzwerkadapter 158 überträgt jedes gekapselte Paket an seine MDG-1-Zielempfänger in der Empfängerliste der MDG-1. Im Schritt 408 überträgt der Netzwerkadapter 158 ein erstes gekapseltes Paket an den virtuellen Switch 116. Im Schritt 410 empfängt und entkapselt der virtuelle Switch 116 das Paket, identifiziert die im Paket enthaltene Mehrfachzielgruppe „MDG-1” und sucht sodann die Mehrfachzielgruppe in einer Anschlussliste. Bei der Vernetzung von Computern ist unter dem Entkapseln eines Pakets ein Entfernen der zuvor gekapselten Daten zu verstehen. Ein virtueller Switch dient als Behälter für Anschlusskonfigurationen, die einen gemeinsamen Satz von Netzwerkadaptern verwenden, darunter Sätze, die überhaupt keine Netzwerkadapter enthalten. In einer Ausführungsform kann die Anschlussliste im virtuellen Switch oder im lokalen Server gespeichert sein. Jeder virtuelle Switch stellt eine endliche Anzahl von Anschlüssen bereit, durch die virtuelle Maschinen, z. B. die VM 152 und die VM 154, sowie Netzwerkdienste ein oder mehrere Netzwerke erreichen können. Der virtuelle Switch 116 leitet das Paket an den Zielanschluss „X” im Netzwerkadapter 118 im Server 102 weiter, wie im Schritt 412 gezeigt wird.
  • Im Schritt 414 überträgt der Netzwerkadapter 158 ein zweites gekapseltes Paket an den virtuellen Switch 138. Im Schritt 416 empfängt und entkapselt der virtuelle Switch 138 das Paket und sucht die Mehrfachzielgruppe „MDG-1” in einer Anschlussliste. Der virtuelle Switch 138 leitet das Paket an den Zielanschluss „Y” im Netzwerkadapter 140 im Server 124 weiter, wie im Schritt 418 gezeigt wird.
  • 5 zeigt ein Blockschaltbild von Komponenten eines Server-Computers in einer Ausführungsform gemäß der vorliegenden Erfindung. Es sollte klar sein, dass 5 lediglich eine Veranschaulichung einer Implementierung bereitstellt und keinerlei Beschränkungen hinsichtlich der Umgebungen, in denen verschiedene Ausführungsformen implementiert werden können, mit sich bangt. Es können viele Modifikationen an der gezeigten Umgebung vorgenommen werden.
  • Ein Server-Computer 500 ist eine Ausführungsform von jedem der Server-Computer 102, 124 und 142 und beinhaltet eine Datenübertragungsstruktur 502, die Datenübertragungsvorgänge zwischen dem Prozessor bzw. den Prozessoren 504 eines Computers, einem Speicher 506, einem dauerhaften Speicher 508, einer Datenübertragungseinheit 510 und einer oder mehreren Ein/Ausgabe-(E/A-)Schnittstellen 512 bereitstellt. Die Datenübertragungsstruktur 502 kann mit einer beliebigen Architektur implementiert werden, die für ein Weiterleiten von Daten und/oder Steuerdaten zwischen Prozessoren (zum Beispiel Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), Systemspeichern, peripheren Einheiten und beliebigen anderen Hardware-Komponenten in einem System entwickelt wurde. Die Datenübertragungsstruktur 502 kann zum Beispiel mit einem oder mehreren Bussen implementiert werden.
  • Beim Speicher 506 und beim dauerhaften Speicher 508 handelt es sich um computerlesbare Speichermedien. In dieser Ausführungsform beinhaltet der Speicher 506 einen Direktzugriffsspeicher (RAM) 514 und einen Cachespeicher 516. Im Allgemeinen kann der Speicher 506 ein beliebiges flüchtiges oder nichtflüchtiges computerlesbares Speichermedium beinhalten.
  • Eine Mehrfachziel-Software 524, die analog zu jeder Mehrfachziel-Software 110, 132 und 150 ist, ist zur Ausführung durch einen oder mehrere der jeweiligen Computerprozessoren 504 über einen oder mehrere Speicher des Speichers 506 im dauerhaften Speicher 508 gespeichert. In dieser Ausführungsform beinhaltet der dauerhafte Speicher 508 ein Magnetplattenlaufwerk. Alternativ oder zusätzlich zu einem Magnetplattenlaufwerk kann der dauerhafte Speicher 508 einen Halbleiterdatenträger, eine Halbleiterspeichereinheit, einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM), einen Flash-Speicher oder ein beliebiges anderes computerlesbares Speichermedium beinhalten, das Programmbefehle oder digitale Daten speichern kann.
  • Die für den dauerhaften Speicher 508 verwendeten Medien können auch austauschbar sein. Beispielsweise kann ein austauschbares Festplattenlaufwerk für den dauerhaften Speicher 508 verwendet werden. Zu anderen Beispielen gehören optische und magnetische Festplatten, Speichersticks und Chipkarten, die zur Übertragung auf ein anderes computerlesbares Speichermedium, das ebenfalls Teil des dauerhaften Speichers 508 ist, in ein Laufwerk eingesetzt werden.
  • Die Datenübertragungseinheit 510 schafft in diesen Beispielen die Voraussetzungen für Datenaustauschvorgänge mit anderen Datenübertragungssystemen oder -einheiten, unter anderem mit Ressourcen des Netzwerks 120, beispielsweise der Netzwerksteuereinheit 122. In diesen Beispielen enthält die Datenübertragungseinheit 510 eine oder mehrere Netzwerkschnittstellenkarten. Die Datenübertragungseinheit 510 kann Datenübertragungsvorgänge durch die Verwendung physischer und/oder drahtloser Datenübertragungsverbindungen bereitstellen. Die Mehrfachziel-Software 524 kann über die Datenübertragungseinheit 510 in den dauerhaften Speicher 508 geladen werden.
  • Die E/A-Schnittstelle(n) 512 ermöglicht bzw. ermöglichen eine Ein- und Ausgabe von Daten mit anderen Einheiten, die mit dem Server 102 verbunden sein können. Die E/A-Schnittstelle 512 kann zum Beispiel eine Verbindung mit externen Einheiten 518 wie einer Tastatur, einem Tastenfeld, einem berührungsempfindlichen Bildschirm und/oder einer anderen geeigneten Eingabeeinheit bereitstellen. Zu den externen Einheiten 518 können auch tragbare computerlesbare Speichermedien gehören wie beispielsweise Speichersticks, tragbare optische Platten oder Magnetplatten und Speicherkarten. Die Software und die Daten, die zum Realisieren von Ausführungsformen der vorliegenden Erfindung verwendet werden, z. B. die Mehrfachziel-Software 524, können auf solchen tragbaren computerlesbaren Speichermedien gespeichert sein und über die E/A-Schnittstelle(n) 512 in den dauerhaften Speicher 508 geladen werden. Die E/A-Schnittstelle(n) 512 ist bzw. sind außerdem mit einer Anzeige 520 verbunden. Die Anzeige 520 stellt einen Mechanismus bereit, um Daten für einen Benutzer anzuzeigen, und bei ihr kann es sich beispielsweise um einen Computermonitor handeln.
  • Die hierin beschriebenen Programme werden auf der Grundlage der Anwendung gekennzeichnet, für die sie in einer spezifischen Ausführungsform der Erfindung implementiert wurden. Es sollte jedoch klar sein, dass jegliche besondere Programmnomenklatur hierin lediglich der Einfachheit halber verwendet wird und die Erfindung folglich nicht auf die ausschließliche Verwendung in einer spezifischen Anwendung beschränkt sein soll, die durch eine solche Nomenklatur bezeichnet und/oder impliziert wird.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Zum Computerprogrammprodukt können ein oder mehrere computerlesbare Speichermedien mit darin gespeicherten computerlesbaren Programmbefehlen handeln, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Beim computerlesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Befehle zum Verwenden durch eine Befehlsausführungseinheit speichern kann. Beim computerlesbaren Speichermedium kann es sich beispielsweise, ohne jedoch auf diese beschränkt zu sein, um eine elektronische Speichereinheit, eine Magnetspeichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder eine beliebige geeignete Kombination aus den vorgenannten handeln. Zu einer nichterschöpfenden Liste von spezifischeren Beispielen für das computerlesbare Speichermedium gehören die folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktdisk-Nur-Lese-Speicher (CD-ROM), eine DVD, ein Speicherstick, eine Diskette, eine mechanisch codierte Einheit wie Lochkarten oder erhabene Strukturen in einer Spur mit darauf aufzeichneten Befehlen und eine beliebige geeignete Kombination aus den vorgenannten. Ein computerlesbares Speichermedium, wie es hierin verwendet wird, ist nicht so auszulegen, als handele es sich dabei um transitorische Signale an sich wie Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, durch einen Hohlleiter oder andere Übertragungsmedien sich ausbreitende elektromagnetische Wellen (z. B. einen Lichtwellenleiter durchlaufende Lichtimpulse) oder durch eine Leitung übertragene elektrische Signale.
  • Die hierin beschriebenen computerlesbaren Programmbefehle können aus einem computerlesbaren Speichermedium über ein Netzwerk, zum Beispiel das Internet, ein lokales Netz, ein Weitverkehrsnetz und/oder ein drahtloses Netz in entsprechende Datenverarbeitungseinheiten oder in einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Zu dem Netzwerk können Kupferübertragungskabel, Lichtwellenleiter, eine drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server gehören. Eine Netzwerkadapterkarte oder eine Netzwerkschnittstelle in jeder Datenverarbeitungsumgebung empfängt computerlesbare Programmbefehle aus dem Netzwerk und leitet die computerlesbaren Programmbefehle zum Speichern in einem computerlesbaren Speichermedium in der jeweiligen Datenverarbeitungseinheit weiter.
  • Bei computerlesbaren Programmbefehlen zum Ausführen von Arbeitsgängen der vorliegenden Erfindung kann es sich um Assembler-Befehle, Befehlssatzarchitektur-(ISA-)Befehle, Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Daten zur Zustandseinrichtung oder einen Quellencode oder Objektcode handeln, der in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen, unter anderem in einer objektorientierten Programmiersprache wie Smalltalk, C++ oder dergleichen und herkömmlichen prozeduralen Programmiersprachen wie die Programmiersprache ”C” oder ähnliche Programmiersprachen geschrieben sein kann. Die computerlesbaren Programmbefehle können vollständig im Computer des Benutzers, teilweise im Computer des Benutzers, als eigenständiges Software-Paket, teilweise im Computer des Benutzers und teilweise in einem entfernt angeordneten Computer oder vollständig im entfernt angeordneten Computer oder Server ausgeführt werden. Im letzteren Szenario kann der entfernt angeordnete Computer durch einen beliebigen Typ von Netzwerk mit dem Computer des Benutzers verbunden sein, unter anderem durch ein lokales Netz (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer (zum Beispiel durch das Internet unter Verwendung eines Internet-Dienstanbieters) eingerichtet werden. In einigen Ausführungsformen können elektronische Schaltungsanordnungen, zum Beispiel eine programmierbare Logikschaltungsanordnung, Field Programmable Gate Arrays (FPGA) oder programmierbare logische Schaltungsanordnungen (PLA) die computerlesbaren Programmbefehle ausführen, indem sie Zustandsinformationen der computerlesbaren Programmbefehle zum Personalisieren der elektronischen Schaltungsanordnung verwenden, um Aspekte der vorliegenden Erfindung auszuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Ablaufplandarstellungen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich von selbst, dass jeder Block der Ablaufplandarstellungen und/oder Blockschaltbilder und Kombinationen von Blöcken in den Ablaufplandarstellungen und/oder Blockschaltbildern durch computerlesbare Programmbefehle implementiert werden können.
  • Diese computerlesbaren Programmbefehle können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung zugeführt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel zum Implementieren der im Block oder in den Blöcken des Ablaufplans und/oder der Blockschaltbilder angegebenen Funktionen/Vorgänge erzeugen. Diese computerlesbaren Programmbefehle können auch in einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass diese auf eine bestimmte Weise funktionieren, so dass das computerlesbare Speichermedium mit darin gespeicherten Befehlen einen Herstellungsgegenstand aufweist, der Befehle enthält, die Aspekte der Funktion/des Vorgangs implementieren, die/der im Block oder in den Blöcken des Ablaufplans und/oder der Blockschaltbilder angegeben sind
  • Die computerlesbaren Programmbefehle können auch in einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von im Computer, in der anderen programmierbaren Datenverarbeitungsvorrichtung oder der anderen Einheit auszuführenden Verarbeitungsschritten zu veranlassen, um einen in einem Computer implementierten Prozess zu erzeugen, so dass die Befehle, die im Computer oder in der anderen programmierbaren Datenverarbeitungsvorrichtung oder der anderen Einheit ausgeführt werden, die im Block oder in den Blöcken des Ablaufplans und/oder der Blockschaltbilder angegebenen Funktionen/Vorgänge implementieren.
  • Der Ablaufplan und die Blockschaltbilder in den Figuren veranschaulichen die Architektur, die Funktionalität und die Funktionsweise von möglichen Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedener Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block im Ablaufplan oder in den Blockschaltbildern ein Modul, ein Segment oder einen Teil von Befehlen darstellen, der einen oder mehrere ausführbare Befehle zum Implementieren der angegebenen logischen Funktion(en) aufweist. In einigen alternativen Implementierungen können die im Block angegebenen Funktionen außerhalb der in den Figuren angegebenen Reihenfolge auftreten. Beispielsweise können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden oder die Blöcke können manchmal in Abhängigkeit von der beteiligten Funktionalität in der umgekehrten Reihenfolge ausgeführt werden. Außerdem sei darauf hingewiesen, dass jeder Block der Blockschaltbilder und/oder der Ablaufplandarstellung und Kombinationen von Blöcken in den Blockschaltbildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme, welche die angegebenen Funktionen oder Vorgänge ausführen oder Kombinationen aus spezieller Hardware und Computerbefehlen ausführen, implementiert werden können.

Claims (14)

  1. Verfahren, das aufweist: einen Netzwerkadapter, der von einem ersten virtuellen Switch eines Overlay-Netzwerks eine Anforderung zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren Switches des Overlay-Netzwerks empfängt, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind; und für jeden der in der Liste gekennzeichneten ein oder mehreren virtuellen Switches: Erzeugen einer Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapseln der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  2. Verfahren nach Anspruch 1, das außerdem aufweist: in Reaktion auf das Empfangen eines Aufrufs vom ersten virtuellen Switch an eine Anwendungsprogrammschnittstelle des Netzwerkadapters Hinzufügen eines Kennzeichners eines zweiten virtuellen Switches zur Liste durch den Netzwerkadapter.
  3. Verfahren nach Anspruch 1, das außerdem aufweist: in Reaktion auf das Empfangen eines Aufrufs vom ersten virtuellen Switch an eine Anwendungsprogrammschnittstelle des Netzwerkadapters Löschen eines Kennzeichners eines zweiten virtuellen Switches aus der Liste durch den Netzwerkadapter.
  4. Verfahren nach Anspruch 1, wobei das Erhalten ein Abrufen der Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch aus einer softwaredefinierten Netzwerksteuereinheit aufweist.
  5. Verfahren nach Anspruch 1, wobei die Tunnelendpunktdaten Informationen über ein Tunnelungsprotokoll aufweisen, die vom gekennzeichneten virtuellen Switch benötigt werden.
  6. Verfahren nach Anspruch 1, wobei das gekapselte Paket eine Mehrfachzielempfängergruppe kennzeichnet, wobei die Mehrfachzielgruppe einen Absender des Mehrfachzielpakets und jeden virtuellen Switch beinhaltet, der eines der ein oder mehreren übertragenen gekapselten Pakete empfängt.
  7. Verfahren nach Anspruch 6, wobei die Mehrfachzielgruppe in einer Anschlussliste im gekennzeichneten virtuellen Switch gekennzeichnet ist.
  8. Speicher, der Programmbefehle speichert, die durch einen Prozessor eines Netzwerkadapters ausführbar sind, um ein Verfahren zu implementieren, das aufweist: Empfangen einer Anforderung von einem ersten virtuellen Switch eines Overlay-Netzwerks zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren virtuellen Switches des Overlay-Netzwerks, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind, durch den Netzwerkadapter; und für jeden der in der Liste gekennzeichneten einen oder mehreren virtuellen Switches: Erzeugen einer Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapseln der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  9. Netzwerkadapter, der einen Prozessor, einen Speicher und im Speicher gespeicherte Programmbefehle zum Ausführen durch den Prozessor aufweist, um ein Verfahren zu implementieren, das aufweist: Empfangen einer Anforderung von einem ersten virtuellen Switch eines Overlay-Netzwerks zum Übertragen eines Mehrfachzielpakets an jeden von einem oder mehreren virtuellen Switches des Overlay-Netzwerks, die in einer im Netzwerkadapter gespeicherten Liste gekennzeichnet sind, durch den Netzwerkadapter; und für jeden der in der Liste gekennzeichneten einen oder mehreren virtuellen Switches: Erzeugen einer Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter; Erhalten von Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch durch den Netzwerkadapter; Kapseln der erzeugten Kopfstellenreplikation des Mehrfachzielpakets durch den Netzwerkadapter mit einem Vorsatz, der für ein in den erhaltenen Tunnelendpunktdaten gekennzeichnetes Tunnelungsprotokoll spezifisch ist; und Übertragen des gekapselten Pakets an einen im gekennzeichneten virtuellen Switch untergebrachten Empfänger durch den Netzwerkadapter.
  10. Netzwerkadapter nach Anspruch 9, wobei das Verfahren außerdem aufweist: in Reaktion auf das Empfangen eines Aufrufs vom ersten virtuellen Switch an eine Anwendungsprogrammschnittstelle des Netzwerkadapters Hinzufügen eines Kennzeichners eines zweiten virtuellen Switches zur Liste durch den Netzwerkadapter.
  11. Netzwerkadapter nach Anspruch 9, wobei das Verfahren außerdem aufweist: in Reaktion auf das Empfangen eines Aufrufs vom ersten virtuellen Switch an eine Anwendungsprogrammschnittstelle des Netzwerkadapters Löschen eines Kennzeichners eines zweiten virtuellen Switches aus der Liste durch den Netzwerkadapter.
  12. Netzwerkadapter nach Anspruch 9, wobei das Erhalten ein Abrufen der Tunnelendpunktdaten für den gekennzeichneten virtuellen Switch aus einer softwaredefinierten Netzwerksteuereinheit aufweist.
  13. Netzwerkadapter nach Anspruch 9, wobei die Tunnelendpunktdaten Informationen über ein Tunnelungsprotokoll aufweisen, die vom gekennzeichneten virtuellen Switch benötigt werden.
  14. Netzwerkadapter nach Anspruch 9, wobei das gekapselte Paket eine Mehrfachzielempfängergruppe kennzeichnet, wobei die Mehrfachzielgruppe einen Absender des Mehrfachzielpakets und jeden virtuellen Switch aufweist, der eines der ein oder mehreren übertragenen gekapselten Pakete empfängt.
DE102016104264.1A 2015-03-11 2016-03-09 Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken Active DE102016104264B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/644,258 US9887939B2 (en) 2015-03-11 2015-03-11 Transmitting multi-destination packets in overlay networks
US14/644,258 2015-03-11

Publications (2)

Publication Number Publication Date
DE102016104264A1 true DE102016104264A1 (de) 2016-09-15
DE102016104264B4 DE102016104264B4 (de) 2023-04-20

Family

ID=56801281

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016104264.1A Active DE102016104264B4 (de) 2015-03-11 2016-03-09 Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken

Country Status (3)

Country Link
US (4) US9887939B2 (de)
CN (1) CN105978817B (de)
DE (1) DE102016104264B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10044645B2 (en) 2015-03-11 2018-08-07 International Business Machines Corporation Transmitting multi-destination packets in overlay networks

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11212240B2 (en) * 2016-05-26 2021-12-28 Avago Technologies International Sales Pte. Limited Efficient convergence in network events
WO2018192884A1 (en) * 2017-04-18 2018-10-25 Deutsche Telekom Ag Method for enhanced handling of multicast data streams within a broadband access network of a telecommunications network, telecommunications network, and system for enhanced handling of multicast data streams within a broadband access network of a telecommunications network, program and computer program product
US10484303B2 (en) * 2017-08-29 2019-11-19 Cisco Technology, Inc. Replication with dedicated metal deployment in a cloud
US11150963B2 (en) * 2019-02-28 2021-10-19 Cisco Technology, Inc. Remote smart NIC-based service acceleration
JP2020150079A (ja) 2019-03-12 2020-09-17 キオクシア株式会社 半導体記憶装置およびその製造方法
US11605642B2 (en) 2020-12-16 2023-03-14 Micron Technology, Inc. Microelectronic devices including stair step structures, and related memory devices, electronic systems, and methods
US12021740B2 (en) 2021-05-28 2024-06-25 Juniper Networks, Inc. Policy enforcement for bare metal servers by top of rack switches

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6717913B1 (en) * 1999-02-23 2004-04-06 Alcatel Multi-service network switch with modem pool management
EP1312120A1 (de) 2000-08-14 2003-05-21 Matrix Semiconductor, Inc. Dichte matrizen und ladungsspeicheranordnungen und verfahren zur herstellung
US7219157B2 (en) 2001-03-23 2007-05-15 Lucent Technologies Inc. Application programming interface for network applications
US7266120B2 (en) * 2002-11-18 2007-09-04 Fortinet, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
US20060187950A1 (en) * 2005-02-18 2006-08-24 Alcatel Architecture and provisioning tools for managed multicast virtual private LAN trees
US20100238921A1 (en) 2005-12-28 2010-09-23 Nec Corporation Communication apparatus, its operating method, and operating program
JP2008020977A (ja) 2006-07-11 2008-01-31 Sony Computer Entertainment Inc ネットワークプロセッサシステムおよびネットワークプロトコル処理方法
US8208463B2 (en) * 2006-10-24 2012-06-26 Cisco Technology, Inc. Subnet scoped multicast / broadcast packet distribution mechanism over a routed network
US20080175239A1 (en) * 2007-01-23 2008-07-24 Yipes Enterprise Services, Inc Multicast wide-area network for distributing data to selected destinations with limited or no replication
CN101094175B (zh) * 2007-06-14 2011-06-01 华为技术有限公司 一种组播流量保护方法、装置及系统
JP5259242B2 (ja) 2008-04-23 2013-08-07 株式会社東芝 三次元積層不揮発性半導体メモリ
JP2009266946A (ja) 2008-04-23 2009-11-12 Toshiba Corp 三次元積層不揮発性半導体メモリ
US8510551B1 (en) * 2008-11-10 2013-08-13 Juniper Networks, Inc. Policy handling for multicast transmissions
US8440547B2 (en) 2009-02-09 2013-05-14 International Business Machines Corporation Method and structure for PMOS devices with high K metal gate integration and SiGe channel engineering
US8942167B2 (en) * 2009-05-14 2015-01-27 Avaya Inc. Methods, apparatus and computer readable medium for seamless internet protocol multicast connectivity in unified networks
KR101045073B1 (ko) 2009-08-07 2011-06-29 주식회사 하이닉스반도체 수직채널형 비휘발성 메모리 소자 및 그 제조 방법
JP5435399B2 (ja) * 2009-10-07 2014-03-05 日本電気株式会社 省電力化システム、省電力化方法、及び省電力化用プログラム
US8635632B2 (en) 2009-10-21 2014-01-21 International Business Machines Corporation High performance and resource efficient communications between partitions in a logically partitioned system
JP5720577B2 (ja) * 2009-12-04 2015-05-20 日本電気株式会社 サーバ及びフロー制御プログラム
US20110185082A1 (en) 2009-12-29 2011-07-28 Tervela, Inc. Systems and methods for network virtualization
US8395941B2 (en) 2010-05-17 2013-03-12 Micron Technology, Inc. Multi-semiconductor material vertical memory strings, strings of memory cells having individually biasable channel regions, memory arrays incorporating such strings, and methods of accessing and forming the same
KR101792778B1 (ko) 2010-10-26 2017-11-01 삼성전자주식회사 비휘발성 메모리 장치 및 그 형성 방법
US9379906B2 (en) * 2011-03-04 2016-06-28 Cisco Technology, Inc. Network appliance with integrated local area network and storage area network extension services
US8774213B2 (en) 2011-03-30 2014-07-08 Amazon Technologies, Inc. Frameworks and interfaces for offload device-based packet processing
KR101845507B1 (ko) 2011-05-03 2018-04-05 삼성전자주식회사 수직 구조의 비휘발성 메모리 소자 및 그 제조 방법
CN102820253B (zh) 2011-06-08 2014-04-16 中国科学院上海微系统与信息技术研究所 一种基于soi衬底的高迁移率双沟道材料的制备方法
US8743641B2 (en) 2011-09-07 2014-06-03 Macronix International Co., Ltd. Memory with temperature compensation
US8901635B2 (en) * 2011-09-12 2014-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device and method for manufacturing the same
KR20130045050A (ko) 2011-10-25 2013-05-03 에스케이하이닉스 주식회사 3차원 구조의 비휘발성 메모리 소자
CN103077969B (zh) 2011-10-26 2016-03-30 中国科学院微电子研究所 一种mos器件及其制造方法
US8704206B2 (en) 2011-11-21 2014-04-22 Avalanche Technology Inc. Memory device including transistor array with shared plate channel and method for making the same
US8956968B2 (en) 2011-11-21 2015-02-17 Sandisk Technologies Inc. Method for fabricating a metal silicide interconnect in 3D non-volatile memory
CN103200209B (zh) * 2012-01-06 2018-05-25 华为技术有限公司 成员资源的访问方法、群组服务器和成员设备
US8811406B2 (en) * 2012-03-14 2014-08-19 International Business Machines Corporation Delivering multicast frames to aggregated link trunks in a distributed switch
US9154416B2 (en) * 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US20130256777A1 (en) 2012-03-30 2013-10-03 Seagate Technology Llc Three dimensional floating gate nand memory
US8847302B2 (en) 2012-04-10 2014-09-30 Sandisk Technologies Inc. Vertical NAND device with low capacitance and silicided word lines
US9129681B2 (en) 2012-04-13 2015-09-08 Sandisk Technologies Inc. Thin film transistor
US10225094B2 (en) * 2012-05-29 2019-03-05 Futurewei Technologies, Inc. SDN facilitated multicast in data center
US9898317B2 (en) * 2012-06-06 2018-02-20 Juniper Networks, Inc. Physical path determination for virtual network packet flows
US9064216B2 (en) 2012-06-06 2015-06-23 Juniper Networks, Inc. Identifying likely faulty components in a distributed system
US9374270B2 (en) * 2012-06-06 2016-06-21 Juniper Networks, Inc. Multicast service in virtual networks
US8890110B2 (en) 2012-06-19 2014-11-18 SK Hynix Inc. Vertical memory device and method of fabricating the same
JP2014007681A (ja) * 2012-06-27 2014-01-16 Hitachi Ltd ネットワークシステム、および、その管理装置、そのスイッチ
US8978031B2 (en) 2012-08-21 2015-03-10 International Business Machines Corporation Processing of overlay networks using an accelerated network interface card
US9369293B2 (en) * 2012-09-11 2016-06-14 Cisco Technology, Inc. Compressing singly linked lists sharing common nodes for multi-destination group expansion
US8953618B2 (en) 2012-10-10 2015-02-10 Telefonaktiebolaget L M Ericsson (Publ) IP multicast service leave process for MPLS-based virtual private cloud networking
CN103731288B (zh) * 2012-10-16 2017-04-12 杭州华三通信技术有限公司 报文转发方法及设备
US9116727B2 (en) * 2013-01-15 2015-08-25 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Scalable network overlay virtualization using conventional virtual switches
US8964530B2 (en) * 2013-01-31 2015-02-24 Cisco Technology, Inc. Increasing multi-destination scale in a network environment
CN104009926B (zh) * 2013-02-26 2017-04-12 杭州华三通信技术有限公司 Evi网络中的组播方法及边缘设备ed
US9491063B2 (en) * 2013-05-15 2016-11-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing network services orchestration
EP3014819B1 (de) * 2013-08-05 2018-03-14 Huawei Technologies Co., Ltd. Verfahren zur pakettunnelung durch softwaredefiniertes netzwerk, verfahren zur intelligenten steuerung eines paketflusses durch ein softwaredefiniertes netzwerk und system
US9432204B2 (en) * 2013-08-24 2016-08-30 Nicira, Inc. Distributed multicast by endpoints
CN104426680B (zh) * 2013-09-03 2018-03-16 华为技术有限公司 数据传输方法、装置和系统
US9264330B2 (en) * 2013-10-13 2016-02-16 Nicira, Inc. Tracing host-originated logical network packets
US9686180B2 (en) 2013-11-05 2017-06-20 Cisco Technology, Inc. Managing routing information for tunnel endpoints in overlay networks
US9602392B2 (en) * 2013-12-18 2017-03-21 Nicira, Inc. Connectivity segment coloring
US10135687B2 (en) 2014-01-06 2018-11-20 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virtual group policy based filtering within an overlay network
US9794079B2 (en) * 2014-03-31 2017-10-17 Nicira, Inc. Replicating broadcast, unknown-unicast, and multicast traffic in overlay logical networks bridged with physical networks
US9419811B2 (en) * 2014-04-17 2016-08-16 Cisco Technology, Inc. Automatic fabric multicast group selection in a dynamic fabric automation network architecture
US9887939B2 (en) 2015-03-11 2018-02-06 International Business Machines Corporation Transmitting multi-destination packets in overlay networks
US9577927B2 (en) * 2014-06-30 2017-02-21 Nicira, Inc. Encoding control plane information in transport protocol source port field and applications thereof in network virtualization
US9692698B2 (en) 2014-06-30 2017-06-27 Nicira, Inc. Methods and systems to offload overlay network packet encapsulation to hardware
US9509527B2 (en) * 2014-06-30 2016-11-29 Arista Networks, Inc. Method and system for VXLAN encapsulation offload
US9794180B2 (en) * 2014-07-18 2017-10-17 Cisco Technology, Inc. Reducing transient packet duplication and improving split-horizon filtering
US9432205B2 (en) * 2014-11-04 2016-08-30 Telefonaktiebolaget L M Ericsson (Publ) Explicit block encoding of multicast group membership information with bit index explicit replication (BIER)
US9742575B2 (en) * 2014-11-04 2017-08-22 Telefonaktiebolaget L M Ericsson (Publ) Explicit list encoding of sparse multicast group membership information with Bit Index Explicit Replication (BIER)
US10103902B1 (en) * 2015-03-05 2018-10-16 Juniper Networks, Inc. Auto-discovery of replication node and remote VTEPs in VXLANs
US10673742B2 (en) * 2015-09-10 2020-06-02 Telefonaktiebolaget Lm Ericsson (Publ) Multicast state reduction via tunneling in a routed system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10044645B2 (en) 2015-03-11 2018-08-07 International Business Machines Corporation Transmitting multi-destination packets in overlay networks
US10798025B2 (en) 2015-03-11 2020-10-06 International Business Machines Corporation Transmitting multi-destination packets in overlay networks

Also Published As

Publication number Publication date
US20160269324A1 (en) 2016-09-15
US9887939B2 (en) 2018-02-06
US20170359276A1 (en) 2017-12-14
CN105978817A (zh) 2016-09-28
US10798025B2 (en) 2020-10-06
US9865685B2 (en) 2018-01-09
DE102016104264B4 (de) 2023-04-20
US20180262448A1 (en) 2018-09-13
CN105978817B (zh) 2019-03-15
US10044645B2 (en) 2018-08-07
US20170125522A1 (en) 2017-05-04

Similar Documents

Publication Publication Date Title
DE102016104264B4 (de) Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken
DE112014000415B4 (de) Quantisierte Überlastbenachrichtigung in einem virtuellen Netzwerksystem
DE102013209118B4 (de) Beibehaltung und Änderung von Netzwerküberlastungsbenachrichtigungen während der Übertragung von Netzwerkdaten zwischen einem physischen Netzwerk und einem virtuellen Netzwerk
DE102012220834B4 (de) Verfahren und Vorrichtung zum Umsetzen eines flexiblen virtuellen lokalen Netzwerks
DE112016001657T5 (de) Multi-Tenant-Sensitiver DHCP-Mechanismus für Cloud-Netzwerke
DE112019001481T5 (de) Selektives bereitstellen gegenseitiger transportschichtsicherheit mittels alternativer servernamen
DE102015013946A1 (de) Netzwerkbasiertes Service Function Chaining
DE112017000152T5 (de) Virtueller Core eines CCAP (Converged Cable Access Platform)
DE60222656T2 (de) Vorrichtung und verfahren für effizientes multicasting von datenpaketen
DE202016008867U1 (de) Mehrschichtige Dienstgüte (Quality of Service, QoS) für Plattformen zur Virtualisierung von Netzwerkfunktionen
DE112013002270T5 (de) Bereitstellen von Diensten für virtuellen Overlay-Netzwerkverkehr
DE112020000535B4 (de) Fehlerbehebung innerhalb und außerhalb der eigenen Räumlichkeiten
DE112012002404B4 (de) Konfiguration und Management virtueller Netzwerke
DE112013006420T5 (de) Erweiterte Verbindungszusammenfassung (LAG) zur Nutzung in mehreren Switsches
DE202013012474U1 (de) Netzwerkvorrichtung
DE112022003720T5 (de) Verwenden eines fernen pods in kubernetes
US11165653B2 (en) Node discovery mechanisms in a switchless network
DE112021002487T5 (de) Teilen einer geografisch konzentrierten arbeitslast zwischen benachbarten mec-hosts mehrerer netzbetreiber
DE102018202432A1 (de) Strukturunterstützung für die Dienstgüte
DE112022002736T5 (de) Übertragen von aufgabendaten zwischen edge-einheiten beim edge computing
US9942096B2 (en) Abstraction layer and distribution scope for a logical switch router architecture
DE102015106542A1 (de) Logische schalterarchitektur zur netzwerkvirtualisierung
DE112020005674B4 (de) Datenaustausch mit einem anwendungsablauf in einem integrationssystem
DE112021005237T5 (de) Verwaltung von privaten schlüsseln
DE102013210336A1 (de) Mechanismen für verteiltes Routing in einem virtuellen Switch, ermöglicht über eine auf TRILL beruhende Struktur

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R086 Non-binding declaration of licensing interest
R083 Amendment of/additions to inventor(s)
R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012761000

Ipc: H04L0045160000

R081 Change of applicant/patentee

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

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

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