{"id":35973,"date":"2019-10-31T22:08:54","date_gmt":"2019-10-31T19:08:54","guid":{"rendered":"https:\/\/prohoster.info\/blog\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\/"},"modified":"2019-10-31T22:08:54","modified_gmt":"2019-10-31T19:08:54","slug":"avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","title":{"rendered":"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Im <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/453516\/\">vorangegangenen Ausgabe<\/a><\/noindex> Ich habe ein Framework zur Netzwerkautomatisierung beschrieben. Laut R\u00fcckmeldungen einiger Personen hat dieser erste Ansatz das Problem bereits in gewisser Weise aufgedr\u00f6selt. Und das freut mich sehr, denn unser Ziel im Prozess ist es nicht, Ansible mit Python-Skripten zu \u00fcberladen, sondern ein System aufzubauen.<\/p>\n<p>Dieses Framework legt die Reihenfolge fest, in der wir uns mit dem Thema auseinandersetzen werden.<br \/>\nUnd die Netzwerkvirtualisierung, der dieser Bericht gewidmet ist, passt nicht wirklich in das Thema ADSM, wo wir die Automatisierung untersuchen. <\/p>\n<p>Aber lassen Sie uns einen anderen Blickwinkel einnehmen.<\/p>\n<p>Schon lange nutzen viele Dienste ein und dasselbe Netzwerk. Im Fall eines Kommunikationsanbieters sind das 2G, 3G, LTE, DSL und B2B zum Beispiel. Im Beispiel eines Rechenzentrums: Konnektivit\u00e4t f\u00fcr verschiedene Kunden, Internet, Blockspeicher, Objektspeicher.<\/p>\n<p>Und alle Dienste verlangen, dass sie voneinander isoliert sind. So entstanden Overlay-Netzwerke.<\/p>\n<p>Und alle Dienste wollen nicht darauf warten, dass eine Person sie manuell konfiguriert. So entstanden Orchestratoren und SDN.<\/p>\n<p>Der erste Ansatz zur systematischen Netzwerkautomatisierung, genauer gesagt eines Teils davon, wurde schon lange unternommen und in vielen Bereichen umgesetzt: VMWare, OpenStack, Google Compute Cloud, AWS, Facebook.<\/p>\n<p>Damit werden wir uns heute besch\u00e4ftigen. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/kdpv.jpg\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/e0bf73b7b71c383c5526da48a6f6b776.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1>Inhalt<\/h1>\n<p><\/p>\n<ul>\n<li><b>Gr\u00fcnde<\/b><\/li>\n<li><b>Terminologie<\/b><\/li>\n<li><b>Underlay \u2013 physisches Netzwerk<\/b><\/li>\n<li><b>Overlay \u2013 virtuelles Netzwerk<\/b>\n<ul>\n<li>Overlay-Switch am ToR<\/li>\n<li>Overlay vom Host<\/li>\n<li>Am Beispiel von Tungsten Fabric\n<ul>\n<li>Kommunikation innerhalb einer einzigen physischen Maschine<\/li>\n<li>Kommunikation zwischen VMs, die auf verschiedenen physischen Maschinen liegen<\/li>\n<li>Ausgang zur Au\u00dfenwelt<\/li>\n<\/ul>\n<p>\n <\/li>\n<\/ul>\n<p>\n <\/li>\n<li><b>FAQ<\/b><\/li>\n<li><b>Fazit<\/b><\/li>\n<li><b>N\u00fctzliche Links<\/b><\/li>\n<\/ul>\n<p><\/p>\n<h1>Gr\u00fcnde<\/h1>\n<p>\nUnd da wir gerade dar\u00fcber sprechen, sollten wir die Voraussetzungen f\u00fcr die Netzwerkvirtualisierung erw\u00e4hnen. Tats\u00e4chlich begann dieser Prozess nicht erst gestern. <\/p>\n<p>Wahrscheinlich haben Sie schon oft geh\u00f6rt, dass das Netzwerk immer der tr\u00e4gste Teil eines jeden Systems war. Und das stimmt in jeder Hinsicht. Das Netzwerk ist die Basis, auf die alles aufbaut, und Ver\u00e4nderungen daran sind ziemlich schwierig \u2013 die Dienste tolerieren es nicht, wenn das Netzwerk ausf\u00e4llt. Oft kann die Stilllegung eines Knotens einen gro\u00dfen Teil der Anwendungen betreffen und viele Kunden beeintr\u00e4chtigen. Aus diesem Grund kann das Network-Team Widerstand gegen Ver\u00e4nderungen leisten \u2013 weil es derzeit irgendwie funktioniert (<i>wir m\u00f6glicherweise sogar nicht wissen, wie<\/i>), und nun muss etwas Neues konfiguriert werden, und es ist unklar, wie sich das auf das Netzwerk auswirken wird.<\/p>\n<p>Um nicht darauf warten zu m\u00fcssen, dass Netzwerktechniker VLANs bereitstellen und Dienste nicht an jedem Knoten im Netzwerk konfigurieren m\u00fcssen, haben die Menschen Overlay-Netze erfunden \u2014 \u00fcberlagerte Netzwerke \u2014 von denen es eine gro\u00dfe Vielfalt gibt: GRE, IPinIP, MPLS, MPLS L2\/L3VPN, VXLAN, GENEVE, MPLSoverUDP, MPLSoverGRE usw.<\/p>\n<p>Ihre Anziehungskraft liegt in zwei einfachen Dingen:<\/p>\n<ul>\n<li>Es m\u00fcssen nur die Endknoten konfiguriert werden \u2014 die Transitknoten m\u00fcssen nicht ber\u00fchrt werden. Dies beschleunigt den Prozess erheblich und erm\u00f6glicht es manchmal sogar, die Abteilung f\u00fcr Netzwerkinfrastruktur aus dem Prozess der Einf\u00fchrung neuer Dienste herauszuhalten.<\/li>\n<li>Die Last ist tief in den Headern verborgen \u2014 die Transitknoten m\u00fcssen nichts dar\u00fcber wissen, \u00fcber die Adressierung auf den Hosts, \u00fcber die Routen des Overlay-Netzes. Das hei\u00dft, es m\u00fcssen weniger Informationen in den Tabellen gespeichert werden, was bedeutet, dass einfachere\/g\u00fcnstigere Ger\u00e4te verwendet werden k\u00f6nnen.<\/li>\n<\/ul>\n<p>\nIn dieser nicht ganz vollst\u00e4ndigen Ausgabe plane ich nicht, alle m\u00f6glichen Technologien zu analysieren, sondern eher den Rahmen der Funktionsweise von Overlay-Netzen im Rechenzentrum zu beschreiben.<\/p>\n<p>Die gesamte Serie wird ein Rechenzentrum beschreiben, das aus Reihen homogener Racks besteht, in denen die gleiche Serverhardware installiert ist. <\/p>\n<p>Auf dieser Hardware werden virtuelle Maschinen\/Container\/serverlose Dienste betrieben, die die Dienste realisieren.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/a6863eb2804a298304d1e93daecf90d9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1>Terminologie<\/h1>\n<p>\nIm Verlauf <b>Server<\/b> werde ich das Programm benennen, das die Serverseite der Client-Server-Kommunikation umsetzt.<\/p>\n<p>Physische Maschinen in Racks werden wir \"Server\" nennen <b>nicht<\/b> machen wir.<\/p>\n<p><b>Eine physische Maschine<\/b> ist ein x86-Computer, der im Rack installiert ist. Der am h\u00e4ufigsten verwendete Begriff <b>Host<\/b>. So werden wir sie \"<b>Lass uns sie \u201e<\/b>\" oder <b>Host<\/b>.<\/p>\n<p><b>Hypervisor<\/b> nennen oder<\/p>\n<p><b>Virtuelle Maschine<\/b> \u2014 ein Betriebssystem, das auf einer physischen Maschine \u00fcber einem Hypervisor l\u00e4uft. F\u00fcr uns ist es im Rahmen dieses Zyklus nicht so wichtig, ob es sich tats\u00e4chlich um eine virtuelle Maschine oder einfach nur einen Container handelt. Wir nennen es \"<b>ist das Betriebssystem, das auf einer physischen Maschine \u00fcber dem Hypervisor l\u00e4uft. F\u00fcr uns im Rahmen dieses Zyklus ist es nicht so wichtig, ob es sich tats\u00e4chlich um eine virtuelle Maschine oder einfach um einen Container handelt. Wir werden dies \u201e<\/b>&#171;<\/p>\n<p><b>VM<\/b> nennen.<\/p>\n<p><b>Multitenancy<\/b> oder Multi-Hosting ist die Nutzung einer und derselben Anwendung durch verschiedene Clients\/Dienste. Dabei wird die Isolation der Clients durch die Architektur der Anwendung und nicht durch separat gestartete Instanzen erreicht.<\/p>\n<p><b>ToR \u2014 Top of the Rack Switch<\/b> \u2014 Ein Rack-Switch, an den alle physischen Maschinen angeschlossen sind.<\/p>\n<blockquote><p> Neben der ToR-Topologie praktizieren verschiedene Anbieter End of Row (EoR) oder Middle of Row (obwohl Letzteres eine vernachl\u00e4ssigbare Seltenheit ist, und ich habe die Abk\u00fcrzung MoR nicht gesehen).\n<\/p><\/blockquote>\n<p> <b>Unterliegendes Netzwerk<\/b> oder unterliegendes Netzwerk oder Underlay \u2014 physische Netzwerkinfrastruktur: Switches, Router, Kabel.<\/p>\n<p><b>Overlay-Netzwerk<\/b> oder \u00fcberlagertes Netzwerk oder Overlay \u2014 ein virtuelles Netzwerk von Tunneln, das \u00fcber der physischen Infrastruktur arbeitet.<\/p>\n<p><b>L3-Fabrik oder IP-Fabrik<\/b> \u2014 eine beeindruckende menschliche Erfindung, die es erm\u00f6glicht, bei Gespr\u00e4chen STP nicht zu wiederholen und TRILL nicht zu lernen. Ein Konzept, in dem das gesamte Netzwerk bis zur Zugangsebene ausschlie\u00dflich L3 ist, ohne VLANs und folglich ohne gro\u00dfe, ausgedehnte Broadcast-Dom\u00e4nen. Woher das Wort \u201eFabrik\u201c kommt, werden wir im n\u00e4chsten Teil kl\u00e4ren.<\/p>\n<p><b>SDN<\/b> \u2014 Software Defined Network. Bedarf kaum einer Einf\u00fchrung. Ein Ansatz zur Netzwerkverwaltung, bei dem \u00c4nderungen im Netzwerk nicht von einem Menschen, sondern von einem Programm vorgenommen werden. Bedeutet normalerweise, dass der Control Plane au\u00dferhalb der Endnetzger\u00e4te auf einen Controller ausgelagert wird.<\/p>\n<p><b>NFV<\/b> \u2014 Network Function Virtualization \u2014 Virtualisierung von Netzwerkger\u00e4ten, die davon ausgeht, dass Teile der Netzwerkfunktionen als virtuelle Maschinen oder Container betrieben werden k\u00f6nnen, um die Einf\u00fchrung neuer Dienste zu beschleunigen, Service Chaining zu organisieren und eine einfachere horizontale Skalierbarkeit zu erm\u00f6glichen.<\/p>\n<p><b>VNF<\/b> \u2014 Virtuelle Netzwerkfunktion. Ein spezifisches virtuelles Ger\u00e4t: Router, Switch, Firewall, NAT, IPS\/IDS usw.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/971b6a28a9caab5f3a7067ce4d25749c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<blockquote><p> Ich vereinfache die Beschreibung absichtlich auf eine spezifische Umsetzung, um den Leser nicht zu verwirren. F\u00fcr eine gr\u00fcndlichere Lekt\u00fcre verweise ich auf den Abschnitt <noindex><a rel=\"nofollow\" href=\"#LINKS\">Links<\/a><\/noindex>. Au\u00dferdem verspricht Roma Gorgi, der diesen Artikel wegen Ungenauigkeiten kritisiert, eine separate Ausgabe \u00fcber Technologien der Server- und Netzwerkvirtualisierung zu schreiben, die tiefer und aufmerksamer auf Details eingeht.<\/p><\/blockquote>\n<p>Die meisten Netzwerke heute lassen sich klar in zwei Teile unterteilen: <\/p>\n<p><b>Unterlage<\/b> \u2014 ein physisches Netzwerk mit stabiler Konfiguration.<br \/>\n<b>Overlay<\/b> \u2014 eine Abstraktion \u00fcber der Unterlage zur Isolierung von Mandanten. <\/p>\n<p>Das gilt sowohl f\u00fcr den Fall von Rechenzentren (die wir in diesem Artikel behandeln werden) als auch f\u00fcr ISPs (die wir nicht behandeln werden, weil dies bereits in <noindex><a rel=\"nofollow\" href=\"https:\/\/linkmeup.ru\/sdsm\">SDN<\/a><\/noindex>). Bei Unternehmensk Netzwerken ist die Situation nat\u00fcrlich etwas anders. <\/p>\n<p>Bild mit Fokus auf Netzwerk:<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/7b7dabc6d9f3b87c598346bf9195d568.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1>Unterlage<\/h1>\n<p>\nUnderlay ist ein physikalisches Netzwerk: Hardware-Switches und Kabel. Ger\u00e4te im Underlay wissen, wie sie zu den physischen Maschinen gelangen.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/776a77a3821fe79a7323947e0bdf67e8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEs basiert auf standardisierten Protokollen und Technologien. Nicht zuletzt deshalb, weil Hardware-Ger\u00e4te bis heute mit propriet\u00e4rer Software arbeiten, die weder die Programmierung des Chips noch die Implementierung eigener Protokolle zul\u00e4sst, was eine Kompatibilit\u00e4t mit anderen Anbietern und eine Standardisierung erforderlich macht.<\/p>\n<blockquote><p>Aber jemand wie Google kann es sich leisten, eigene Switches zu entwickeln und von g\u00e4ngigen Protokollen abzuweichen. Aber LAN_DC ist nicht Google.\n<\/p><\/blockquote>\n<p> Underlay \u00e4ndert sich vergleichsweise selten, da seine Aufgabe die grundlegende IP-Konnektivit\u00e4t zwischen physischen Maschinen ist. Underlay wei\u00df nichts \u00fcber die dar\u00fcber laufenden Dienste, Clients oder Tenants \u2013 es muss nur das Paket von einer Maschine zur anderen transportieren.<br \/>\nUnderlay k\u00f6nnte beispielsweise so aussehen: <\/p>\n<ul>\n<li>IPv4+OSPF<\/li>\n<li>IPv6+ISIS+BGP+L3VPN<\/li>\n<li>L2+TRILL<\/li>\n<li>L2+STP<\/li>\n<\/ul>\n<p>\nDas Underlay-Netzwerk wird auf klassische Weise konfiguriert: CLI\/GUI\/NETCONF.<\/p>\n<p>Manuell, per Skripten, mit propriet\u00e4ren Tools.<\/p>\n<p>In der n\u00e4chsten Artikelreihe wird Underlay ausf\u00fchrlicher behandelt.<\/p>\n<p><\/p>\n<h1>Overlay<\/h1>\n<p>\nOverlay ist ein virtuelles Netzwerk von Tunneln, das \u00fcber das Underlay gezogen wird. Es erm\u00f6glicht den VMs eines Kunden die Kommunikation untereinander und gew\u00e4hrleistet gleichzeitig die Isolation von anderen Kunden.<\/p>\n<p>Die Daten des Kunden werden in irgendwelche tunneling Headers inkapsuliert, um \u00fcber das gemeinsame Netzwerk \u00fcbertragen zu werden.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/3060bc4913c55c21b785083fbe0b603b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSo k\u00f6nnen die VMs eines Kunden (eines Dienstes) \u00fcber Overlay miteinander kommunizieren, ohne zu wissen, welchen tats\u00e4chlichen Weg das Paket nimmt. <\/p>\n<p>Overlay k\u00f6nnte beispielsweise so aussehen, wie ich oben bereits erw\u00e4hnt habe:<\/p>\n<ul>\n<li>GRE-Tunnel<\/li>\n<li>VXLAN<\/li>\n<li>EVPN<\/li>\n<li>L3VPN<\/li>\n<li>GENEVE<\/li>\n<\/ul>\n<p>\nDas Overlay-Netzwerk wird normalerweise \u00fcber einen zentralen Controller eingerichtet und verwaltet. Von dort aus werden die Konfiguration, Control Plane und Data Plane an die Ger\u00e4te geliefert, die das Routing und die Kapselung des Client-Traffics \u00fcbernehmen. Ein wenig <noindex><a rel=\"nofollow\" href=\"#TF\">unten<\/a><\/noindex> lassen Sie uns das anhand von Beispielen betrachten.<\/p>\n<p><b>Ja, das ist SDN in reinster Form. <\/b><\/p>\n<p>Es gibt zwei grundlegend unterschiedliche Ans\u00e4tze zur Organisation von Overlay-Netzwerken:<\/p>\n<ol>\n<li>Overlay-Switch am ToR<\/li>\n<li>Overlay vom Host<\/li>\n<\/ol>\n<h2>Overlay-Switch am ToR<\/h2>\n<p>\nOverlay kann auf einem Zugriffsswitch (ToR) beginnen, der in einem Rack steht, wie es beispielsweise im Fall einer VXLAN-Fabrik der Fall ist. <\/p>\n<p>Es handelt sich um einen bew\u00e4hrten Mechanismus in ISP-Netzen, den alle Hersteller von Netzwerkger\u00e4ten unterst\u00fctzen.<\/p>\n<p>In diesem Fall muss der ToR-Switch in der Lage sein, verschiedene Dienste entsprechend zu trennen, und der Netzwerkadministrator muss in gewissem Ma\u00dfe mit den Administratoren von virtuellen Maschinen zusammenarbeiten und \u00c4nderungen (wenn auch automatisch) an der Ger\u00e4tekonfiguration vornehmen.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/9a5fe4d4a0cbb7e5c3bbac82527c6a6a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHier verweise ich den Leser auf den Artikel \u00fcber <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/344326\/\">VxLAN auf Habr\u00e9<\/a><\/noindex> unseren alten Freund <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/bormoglotx\/\">@bormoglotx<\/a><\/noindex>.<br \/>\nIn diesem <noindex><a rel=\"nofollow\" href=\"https:\/\/www.enog.org\/wp-content\/uploads\/presentations\/enog-16\/18-Scaleway-P14-fabric-ENOG16.pdf\">Pr\u00e4sentationen von ENOG<\/a><\/noindex> beschreibt detailliert Ans\u00e4tze zum Bau eines Rechenzentrumsnetzwerks mit einer EVPN VXLAN-Fabrik. <\/p>\n<p>F\u00fcr ein umfassenderes Eintauchen in die Realit\u00e4t kann das Buch von Cisco gelesen werden <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/docs\/switches\/datacenter\/nexus9000\/sw\/vxlan_evpn\/VXLAN_EVPN.pdf\">A Modern, Open, and Scalable Fabric: VXLAN EVPN<\/a><\/noindex>.<\/p>\n<blockquote><p> Ich m\u00f6chte darauf hinweisen, dass VXLAN nur eine Methode zur Kapselung ist und die Tunnelterminierung nicht am ToR, sondern am Host stattfinden kann, wie es beispielsweise bei OpenStack der Fall ist.<\/p>\n<p>Eine VXLAN-Fabrik, bei der das Overlay am ToR beginnt, ist jedoch eines der g\u00e4ngigen Designkonzepte f\u00fcr Overlay-Netzwerke.\n<\/p><\/blockquote>\n<p><\/p>\n<h2>Overlay vom Host<\/h2>\n<p>\nEin anderer Ansatz ist es, Tunnel an den Endhosts zu beginnen und zu terminieren.<br \/>\nIn diesem Fall bleibt das Netzwerk (Underlay) so einfach wie m\u00f6glich und statisch.<br \/>\nUnd der Host f\u00fchrt alle erforderlichen Kapselungen selbst durch.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/c9c2971369d1b3e5f026d6844afeb67f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHierf\u00fcr wird es ohne Zweifel erforderlich sein, eine spezielle Anwendung auf den Hosts auszuf\u00fchren, aber es lohnt sich. <\/p>\n<p>Erstens ist es einfacher, einen Client auf einer Linux-Maschine zu starten oder sagen wir einfach - \u00fcberhaupt m\u00f6glich - w\u00e4hrend man beim Switch wahrscheinlich zun\u00e4chst auf propriet\u00e4re SDN-L\u00f6sungen zur\u00fcckgreifen muss, was die Idee der Multivendor-F\u00e4higkeit untergr\u00e4bt.<\/p>\n<p>Zweitens kann der ToR-Switch in diesem Fall maximal einfach gehalten werden, sowohl in Bezug auf die Control Plane als auch auf die Data Plane. Tats\u00e4chlich muss es dann nicht mit einem SDN-Controller kommunizieren und muss auch die Netzwerke\/ARPs aller angeschlossenen Clients nicht speichern \u2014 es reicht, die IP-Adresse der physischen Maschine zu kennen, was die Switch-\/Routing-Tabellen erheblich vereinfacht.<\/p>\n<p>\nIn der ADS-M-Serie w\u00e4hle ich den Overlay-Ansatz vom Host - im Folgenden werden wir nur dar\u00fcber sprechen und zur VXLAN-Fabrik nicht zur\u00fcckkehren.<\/p>\n<p>\nAm einfachsten ist es, Beispiele zu betrachten. Und als Versuchsobjekt verwenden wir die Open-Source-SDN-Plattform OpenContrail, die heute bekannt ist als <noindex><a rel=\"nofollow\" href=\"https:\/\/tungsten.io\">Tungsten Fabric<\/a><\/noindex>.<\/p>\n<blockquote><p> Am Ende des Artikels werde ich einige \u00dcberlegungen zur Analogie mit OpenFlow und OpenvSwitch anstellen.\n<\/p><\/blockquote>\n<p><\/p>\n<h2>Am Beispiel von Tungsten Fabric<\/h2>\n<p>\nAuf jeder physischen Maschine gibt es <b>vRouter<\/b> \u2014 ein virtueller Router, der \u00fcber die ihm angeschlossenen Netzwerke und deren zugeh\u00f6rigen Kunden Bescheid wei\u00df \u2014 im Grunde genommen ein PE-Router. F\u00fcr jeden Kunden verwaltet er eine isolierte Routing-Tabelle (lesen Sie VRF). Und der eigentliche vRouter macht das Overlay-Tunneling.<\/p>\n<p>Ein wenig mehr \u00fcber den vRouter \u2014 am Ende des Artikels.<\/p>\n<p>Jede VM, die auf dem Hypervisor l\u00e4uft, verbindet sich \u00fcber <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/TUN\/TAP\">TAP-Schnittstelle<\/a><\/noindex>.<\/p>\n<p><b>TAP<\/b> \u2014 Terminal Access Point \u2014 eine virtuelle Schnittstelle im Linux-Kernel, die Netzwerkinteraktionen erm\u00f6glicht.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/a6fa1b4370ba4e787303ae647a28f5ed.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWenn sich hinter dem vRouter mehrere Netzwerke befinden, wird f\u00fcr jedes von ihnen ein virtuelles Interface erstellt, dem eine IP-Adresse zugewiesen wird \u2014 dies wird die Standard-Gateway-Adresse sein.<br \/>\nAlle Netzwerke eines Clients werden in eine <b>VRF<\/b> (eine Tabelle) eingeordnet, unterschiedliche in verschiedene.<br \/>\n<i>Ich m\u00f6chte hier einen Vorbehalt machen, dass nicht alles so einfach ist, und sende den neugierigen Leser ans Ende des Artikels<\/i>.<\/p>\n<p>Damit die vRouter miteinander kommunizieren k\u00f6nnen und somit auch die VMs dahinter, tauschen sie Routing-Informationen \u00fcber <b>SDN-Controller<\/b>.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/sdn-controller.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/8b133e10582dbde9c0670ad98c1840de.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Um in die Au\u00dfenwelt zu gelangen, gibt es einen Ausgangspunkt aus der Matrix \u2014 das Gateway des virtuellen Netzwerks <b>VNGW<\/b> \u2014 Virtual Network Gateway (<i>mein Terminus<\/i>).<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/vngw.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/9ac4d084d9b58b7ed1bc2c0ed6d06059.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>\nLassen Sie uns einige Kommunikationsbeispiele betrachten \u2014 und es wird klarer.<\/p>\n<p><\/p>\n<h3>Kommunikation innerhalb einer einzigen physischen Maschine<\/h3>\n<p>\nVM0 m\u00f6chte ein Paket an VM2 senden. Angenommen, dies sind VMs eines Clients.<\/p>\n<h4>Data Plane<\/h4>\n<p><\/p>\n<ol>\n<li>VM-0 hat eine Standardroute zu ihrer Schnittstelle eth0. Das Paket wird dorthin gesendet.<br \/>\n Diese Schnittstelle eth0 ist tats\u00e4chlich virtuell mit dem virtuellen Router vRouter \u00fcber die TAP-Schnittstelle tap0 verbunden.<\/li>\n<li>Der vRouter analysiert, \u00fcber welche Schnittstelle das Paket eingegangen ist, also zu welchem Client (VRF) es geh\u00f6rt, und vergleicht die Empf\u00e4ngeradresse mit der Routing-Tabelle dieses Clients.<\/li>\n<li>Wenn der vRouter feststellt, dass der Empf\u00e4nger auf derselben Maschine an einem anderen Port ist, sendet er das Paket einfach ohne zus\u00e4tzliche Header zu ihm \u2014 f\u00fcr diesen Fall gibt es bereits einen ARP-Eintrag auf dem vRouter. <\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/a42da3f48a3f538eb92c1908d9d66921.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDas Paket gelangt in diesem Fall nicht ins physische Netzwerk \u2014 es wird innerhalb des vRouters geroutet.<\/p>\n<p><\/p>\n<h4>Control Plane<\/h4>\n<p>\nDer Hypervisor informiert die virtuelle Maschine beim Start:<\/p>\n<ul>\n<li>Ihre eigene IP-Adresse.<\/li>\n<li>Der Standardweg verl\u00e4uft \u00fcber die IP-Adresse des vRouters in diesem Netzwerk.<\/li>\n<\/ul>\n<p>\nDem vRouter wird \u00fcber eine spezielle API vom Hypervisor mitgeteilt:<\/p>\n<ul>\n<li>Dass eine virtuelle Schnittstelle erstellt werden muss.<\/li>\n<li>Welche Virtuelle Netzwerk sie (VM) erstellen soll.<\/li>\n<li>An welches VRF ihr (VN) zugeordnet werden soll.<\/li>\n<li>Der statische ARP-Eintrag f\u00fcr diese VM \u2013 hinter welchem Interface sich ihre IP-Adresse befindet und an welche MAC-Adresse sie gebunden ist.<\/li>\n<\/ul>\n<p><\/p>\n<blockquote><p> Und erneut wurde das tats\u00e4chliche Interaktionsverfahren zum besseren Verst\u00e4ndnis der Konzepte vereinfacht.\n<\/p><\/blockquote>\n<p> <img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/593d7ad41782e882a88732b475bf91cb.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSomit sieht der vRouter alle VMs eines Kunden auf dieser Maschine als direkt verbundene Netzwerke und kann selbst zwischen ihnen routen.<\/p>\n<p>\nDie VMs VM0 und VM1 geh\u00f6ren verschiedenen Kunden und befinden sich daher in verschiedenen Tabellen des vRouters.<\/p>\n<p>Ob sie direkt miteinander kommunizieren k\u00f6nnen, h\u00e4ngt von den vRouter-Einstellungen und dem Netzwerkdesign ab.<br \/>\nWenn die VMs beider Kunden \u00f6ffentliche Adressen verwenden oder die NAT auf dem vRouter selbst erfolgt, kann eine direkte Route auf den vRouter eingerichtet werden.<\/p>\n<p>Andernfalls k\u00f6nnte es zu \u00dcberlappungen der Adressr\u00e4ume kommen \u2013 man muss \u00fcber den NAT-Server gehen, um eine \u00f6ffentliche Adresse zu erhalten, was dem Zugang zu externen Netzwerken \u00e4hnelt, die weiter unten behandelt werden.<\/p>\n<h3>Kommunikation zwischen VMs, die auf verschiedenen physischen Maschinen liegen<\/h3>\n<p><\/p>\n<h4>Data Plane<\/h4>\n<p><\/p>\n<ol>\n<li>Der Anfang ist genau der gleiche: VM-0 sendet ein Paket an den Empf\u00e4nger VM-7 (172.17.3.2) \u00fcber ihr Default-Gateway.<\/li>\n<li>Der vRouter empf\u00e4ngt es und sieht diesmal, dass der Empf\u00e4nger auf einer anderen Maschine ist und \u00fcber den Tunnel Tunnel0 erreichbar ist.<\/li>\n<li>Zuerst f\u00fcgt er ein MPLS-Label hinzu, das das entfernte Interface identifiziert, damit der vRouter auf der anderen Seite bestimmen kann, wohin dieses Paket weitergeleitet werden soll, ohne zus\u00e4tzliche Loopbacks.\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/inter-hv-dp.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/1e159049376e2bf458b8c6cb5878cc17.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex>\n <\/li>\n<li>Tunnel0 hat die Quelle 10.0.0.2, der Empf\u00e4nger: 10.0.1.2.<br \/>\n Der vRouter f\u00fcgt GRE- (oder UDP-) Header und eine neue IP-Adresse zum urspr\u00fcnglichen Paket hinzu.<\/li>\n<li>In der Routing-Tabelle des vRouters gibt es eine Standardroute \u00fcber die Adresse ToR1 10.0.0.1. Dorthin wird es gesendet.\n<p> <img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/8cb98a8ec43d202259acf6a1fcaeb3ee.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n \n <\/li>\n<li>ToR1, als Teil des Underlay-Netzes, wei\u00df (zum Beispiel \u00fcber OSPF), wie man zu 10.0.1.2 gelangt, und sendet das Paket auf der Route. Beachten Sie, dass hier ECMP aktiviert ist. In der Abbildung gibt es zwei Next-Hops, und unterschiedliche Datenstr\u00f6me werden anhand des Hashs aufgeteilt. In einer echten Fabrik w\u00e4ren es wahrscheinlich eher 4 Next-Hops.\n<p>Er wei\u00df dabei nicht, was sich unter dem externen IP-Header befindet. Das bedeutet, dass tats\u00e4chlich unter der IP ein Sandwich aus IPv6 \u00fcber MPLS \u00fcber Ethernet \u00fcber MPLS \u00fcber GRE \u00fcber \u00fcber \u00fcber GRE liegen kann.<\/li>\n<li>Auf der empfangenden Seite entfernt der vRouter GRE und versteht anhand des MPLS-Labels, an welches Interface dieses Paket weitergeleitet werden soll, zerlegt es und sendet es in originaler Form an den Empf\u00e4nger.<\/li>\n<\/ol>\n<h4>Control Plane<\/h4>\n<p>\nBeim Start der Maschine geschieht alles, was oben beschrieben wurde.<\/p>\n<p>Und zus\u00e4tzlich passiert noch Folgendes:<\/p>\n<ul>\n<li>F\u00fcr jeden Kunden weist der vRouter ein MPLS-Label zu. Dies ist ein Service-Label f\u00fcr L3VPN, nach dem die Kunden innerhalb einer physikalischen Maschine getrennt werden.<br \/>\n<blockquote><p> Tats\u00e4chlich wird das MPLS-Label vom vRouter immer zugewiesen \u2014 denn es ist im Voraus nicht bekannt, dass die Maschine nur mit anderen Maschinen hinter demselben vRouter interagiert, und das wird wahrscheinlich nicht der Fall sein. \n <\/p><\/blockquote>\n<\/li>\n<li>Der vRouter verbindet sich mit dem SDN-Controller \u00fcber das BGP-Protokoll (oder ein \u00e4hnliches \u2013 im Fall von TF ist es XMPP 0_o).<\/li>\n<li>\u00dcber diese Sitzung informiert der vRouter den SDN-Controller \u00fcber die Routen zu den angeschlossenen Netzwerken:\n<ul>\n<li>Netzwerkadresse<\/li>\n<li>Kapselungsmethode (MPLSoGRE, MPLSoUDP, VXLAN)<\/li>\n<li>MPLS-Label des Kunden<\/li>\n<li>Seine IP-Adresse als nexthop<\/li>\n<\/ul>\n<p>\n <\/li>\n<li>Der SDN-Controller erh\u00e4lt solche Routen von allen angeschlossenen vRoutern und spiegelt sie an andere weiter. Das bedeutet, dass er als Route Reflector fungiert.<\/li>\n<\/ul>\n<p>\nDas Gleiche passiert auch in umgekehrter Richtung.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/inter-hv-cp.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/feef9181133f3a50a5cb21aa7ba16dc0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Overlay kann sich jede Minute \u00e4ndern. So geschieht es in \u00f6ffentlichen Clouds, wenn Kunden regelm\u00e4\u00dfig ihre virtuellen Maschinen starten und stoppen.<\/p>\n<p>Der zentrale Controller \u00fcbernimmt alle komplexen Aufgaben zur Aufrechterhaltung der Konfiguration und zur Kontrolle der Switching\/Routing-Tabellen auf dem vRouter.<\/p>\n<p>Gro\u00df gesagt, verbindet sich der Controller mit allen vRoutern \u00fcber BGP (oder ein \u00e4hnliches Protokoll) und \u00fcbertr\u00e4gt einfach die Routing-Informationen. BGP hat beispielsweise bereits eine Address-Family zur \u00dcbertragung der Kapselungsmethode. <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc4023\">MPLS-in-GRE<\/a><\/noindex> oder <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc7510\">MPLS-in-UDP<\/a><\/noindex>.<\/p>\n<p>Dabei wird die Konfiguration des Underlay-Netzwerks auf keinen Fall ver\u00e4ndert, die \u00fcbrigens um ein Vielfaches schwieriger zu automatisieren ist, und es ist einfacher, es mit einem ungeschickten Handgriff kaputt zu machen.<\/p>\n<h3>Ausgang zur Au\u00dfenwelt<\/h3>\n<p>\nIrgendwo muss die Simulation enden, und die virtuelle Welt muss die reale Welt betreten. Und es wird ein Telefondienst ben\u00f6tigt.<\/p>\n<p>Es werden zwei Ans\u00e4tze verfolgt:<\/p>\n<ol>\n<li>Ein Hardware-Router wird installiert.<\/li>\n<li>Ein Appliance, das die Funktionen eines Routers implementiert, wird gestartet (ja, ja, nach SDN haben wir auch mit VNF zu tun). Nennen wir es virtuellen Gateway.<\/li>\n<\/ol>\n<p><\/p>\n<blockquote><p> Der Vorteil des zweiten Ansatzes liegt in der kosteng\u00fcnstigen horizontalen Skalierbarkeit \u2013 wenn die Leistung nicht ausreicht, wird einfach eine weitere virtuelle Maschine mit einem Gateway gestartet. Auf jeder physikalischen Maschine, ohne die Notwendigkeit, nach freien Racks, Einheiten, Stromanschl\u00fcssen zu suchen, Hardware zu kaufen, zu transportieren, zu installieren, zu verkabeln, zu konfigurieren und dann auch noch defekte Komponenten auszutauschen.<\/p>\n<p>Die Nachteile eines virtuellen Gateways bestehen darin, dass eine physische Routereinheit dennoch um ein Vielfaches leistungsst\u00e4rker ist als eine mehrkernige virtuelle Maschine, und ihre Software, die an die Hardwarebasis angepasst ist, deutlich stabiler funktioniert (<i>nein<\/i>). Es ist schwer zu leugnen, dass eines der Software-Hardware-Komplexe einfach funktioniert und nur Konfigurationen ben\u00f6tigt, w\u00e4hrend der Start und die Wartung eines virtuellen Gateways eine Aufgabe f\u00fcr starke Ingenieure sind.\n<\/p><\/blockquote>\n<p> Mit einem Fu\u00df blickt das Gateway in das virtuelle Overlay-Netzwerk, \u00e4hnlich wie eine gew\u00f6hnliche virtuelle Maschine, und kann mit allen anderen VMs interagieren. Dabei kann es die Netzwerke aller Kunden terminieren und entsprechend die Routing zwischen ihnen durchf\u00fchren.<\/p>\n<p>Mit dem anderen Fu\u00df blickt das Gateway bereits in das Backbone-Netzwerk und wei\u00df, wie es ins Internet gelangt.<\/p>\n<p><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/552fa0428ff8dd3aed76091a86a72109.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h4>Data Plane<\/h4>\n<p>\nDer Prozess sieht also so aus: <\/p>\n<ol>\n<li>VM-0, mit dem Standard weiterhin auf denselben vRouter, sendet ein Paket mit einem Ziel im \u00e4u\u00dferen Netzwerk (185.147.83.177) an das Interface eth0.<\/li>\n<li>Der vRouter empf\u00e4ngt dieses Paket und f\u00fchrt eine Lookup des Zieladresses in der Routingtabelle durch \u2013 er findet die Standardeinstellung \u00fcber das Gateway VNGW1 \u00fcber Tunnel 1. <br \/>\n Er sieht auch, dass es sich um einen GRE-Tunnel mit SIP 10.0.0.2 und DIP 10.0.255.2 handelt und dass zun\u00e4chst das MPLS-Label dieses Kunden gesetzt werden muss, das VNGW1 erwartet.\n <\/li>\n<li>Der vRouter verpackt das urspr\u00fcngliche Paket in die MPLS-, GRE- und neuen IP-Header und sendet es an die Adresse ToR1 10.0.0.1 standardm\u00e4\u00dfig.<\/li>\n<li>Das Underlay-Netzwerk liefert das Paket an das Gateway VNGW1.<\/li>\n<li>Das Gateway VNGW1 entfernt die tunneling Header GRE und MPLS, sieht die Zieladresse, konsultiert seine Routingtabelle und erkennt, dass sie ins Internet f\u00fchrt \u2013 also \u00fcber Full View oder Default. Bei Bedarf f\u00fchrt es eine NAT-\u00dcbersetzung durch.<\/li>\n<li>Zwischen VNGW und dem Border kann ein gew\u00f6hnliches IP-Netzwerk existieren, was kaum der Fall ist.<br \/>\n Es kann ein klassisches MPLS-Netzwerk (IGP+LDP\/Rsvp TE) sein, es kann eine R\u00fcckfabrik mit BGP LU oder ein GRE-Tunnel von VNGW zum Border durch ein IP-Netzwerk sein.<br \/>\n Wie dem auch sei, VNGW1 f\u00fchrt die notwendigen Kapselungen durch und sendet das urspr\u00fcngliche Paket in Richtung Border.<\/li>\n<\/ol>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-dp.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/a66e490c75f8220349398af814d4ebf2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Der Datenverkehr in die entgegengesetzte Richtung durchl\u00e4uft die gleichen Schritte in umgekehrter Reihenfolge. <\/p>\n<ol>\n<li>Der Border wirft das Paket bis zu VNGW1.<\/li>\n<li>Dieser entpackt es, schaut auf die Zieladresse und sieht, dass sie \u00fcber Tunnel Tunnel1 (MPLSoGRE oder MPLSoUDP) erreichbar ist.<\/li>\n<li>Entsprechend wird ein MPLS-Label, der GRE\/UDP-Header und eine neue IP angeh\u00e4ngt und an sein ToR3 10.0.255.1 gesendet.<br \/>\n Die Zieladresse des Tunnels ist die IP-Adresse des vRouters, hinter dem sich die Ziel-VM befindet \u2014 10.0.0.2.<\/li>\n<li>Das unterliegende Netzwerk liefert das Paket zum entsprechenden vRouter. <\/li>\n<li>Der Ziel-vRouter entfernt GRE\/UDP, bestimmt \u00fcber das MPLS-Tag das Interface und sendet das reine IP-Paket an sein TAP-Interface, das mit eth0 der VM verbunden ist.<\/li>\n<\/ol>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-dp-reverse.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/ba6748694a822fc04f4e872658d1fbbb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><\/p>\n<h4>Control Plane<\/h4>\n<p>\nVNGW1 etablierte eine BGP-Nachbarschaft mit dem SDN-Controller, von dem es alle Routing-Informationen \u00fcber die Kunden erh\u00e4lt: Hinter welcher IP-Adresse (vRouter) sich welcher Kunde befindet und mit welchem MPLS-Label er identifiziert wird.<\/p>\n<p>\u00c4hnlich teilt es dem SDN-Controller die Standardroute mit dem Label dieses Kunden mit und gibt sich selbst als nexthop an. Diese Standardroute wird dann an die vRouter \u00fcbermittelt.<\/p>\n<p>Auf VNGW erfolgt in der Regel die Aggregation von Routen oder NAT-\u00dcbersetzung.<\/p>\n<p>In die andere Richtung sendet es in die Sitzung mit Border Routern oder Route Reflectors genau diese aggregierte Route. Von ihnen erh\u00e4lt es die Standardroute oder eine Full-View oder etwas anderes.<\/p>\n<p>Was die Kapselung und den Verkehrsaustausch angeht, unterscheidet sich VNGW nicht vom vRouter. <br \/>\nWenn man den Bereich etwas erweitert, k\u00f6nnen zu VNGW und vRoutern auch andere Netzwerkger\u00e4te wie Firewalls, Traffic-Filtering- oder Traffic-Enrichment-Farmen, IPS usw. hinzugef\u00fcgt werden.<\/p>\n<p>Durch sequentielles Erstellen von VRF und ordnungsgem\u00e4\u00dfer Ank\u00fcndigung von Routen kann der Datenverkehr so gelenkt werden, wie man m\u00f6chte, was als Service Chaining bekannt ist.<\/p>\n<p>Das bedeutet, dass der SDN-Controller auch hier als Route Reflector zwischen VNGW, vRoutern und anderen Netzwerkger\u00e4ten fungiert.<\/p>\n<p>Aber tats\u00e4chlich \u00fcbermittelt der Controller auch Informationen \u00fcber ACL und PBR (Policy Based Routing), wodurch bestimmte Datenstr\u00f6me nicht dem vorgegebenen Routing folgen.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-cp.png\"><img decoding=\"async\" alt=\"Automatisierung f\u00fcr die Kleinsten. Teil eins (der nach der nullten). Netzwerkvirtualisierung.\" src=\"\/wp-content\/uploads\/2019\/07\/dbba5a93d64edf56dc9c2b82311c5a11.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<h1>FAQ<\/h1>\n<p><b>Warum machst du immer einen Kommentar zu GRE\/UDP?<\/b><\/p>\n<p>Nun, das kann man sagen, ist spezifisch f\u00fcr Tungsten Fabric \u2013 man kann es auch ganz ignorieren.<\/p>\n<p>Aber wenn man es betrachtet, unterst\u00fctzte das TF, noch als OpenContrail, beide Kapselungen: MPLS in GRE und MPLS in UDP. <\/p>\n<p>UDP hat den Vorteil, dass man im Source Port des Headers sehr einfach eine Hash-Funktion von den urspr\u00fcnglichen IP+Proto+Port kodieren kann, was eine Lastverteilung erm\u00f6glicht. <\/p>\n<p>Im Fall von GRE gibt es leider nur die externen IP- und GRE-Header, die f\u00fcr den gesamten eingekapselten Verkehr gleich sind, und von Lastverteilung kann nicht gesprochen werden \u2013 nur wenige k\u00f6nnen so tief in das Paket schauen.<\/p>\n<p>Bis vor kurzem konnten Router, wenn sie dynamische Tunnel unterst\u00fctzen, nur MPLSoGRE, und erst k\u00fcrzlich haben sie MPLSoUDP gelernt. Daher muss man immer einen Hinweis zur M\u00f6glichkeit zweier verschiedener Kapselungen geben.<\/p>\n<p>Um gerecht zu sein, sollte erw\u00e4hnt werden, dass TF auch L2-Konnektivit\u00e4t \u00fcber VXLAN unterst\u00fctzt.<\/p>\n<p>\n<b>Du hast versprochen, Parallelen zu OpenFlow zu ziehen.<\/b><br \/>\nSie dr\u00e4ngen sich tats\u00e4chlich auf. Der vSwitch im selben OpenStack macht ziemlich \u00e4hnliche Dinge, indem er VXLAN verwendet, das \u00fcbrigens auch einen UDP-Header hat.<\/p>\n<p>Im Data Plane arbeiten sie fast gleich, jedoch unterscheidet sich das Control Plane erheblich. Tungsten Fabric verwendet XMPP zur \u00dcbermittlung von Informationen \u00fcber Routen an den vRouter, w\u00e4hrend im OpenStack Openflow verwendet wird.<\/p>\n<p>\n<b>Kannst du ein wenig mehr \u00fcber den vRouter erz\u00e4hlen?<\/b><br \/>\nEr teilt sich in zwei Teile: vRouter Agent und vRouter Forwarder.<\/p>\n<p>Ersterer wird im User Space des Host-Betriebssystems gestartet und kommuniziert mit dem SDN-Controller, indem er Informationen zu Routen, VRF und ACL austauscht.<\/p>\n<p>Der zweite implementiert den Data Plane \u2013 normalerweise im Kernel Space, kann aber auch auf SmartNICs ausgef\u00fchrt werden \u2013 Netzwerkkarten mit einem CPU und einem separaten programmierbaren Switching-Chip, was es erm\u00f6glicht, die Last von der CPU der Hostmaschine zu nehmen und die Netzwerkgeschwindigkeit zu erh\u00f6hen sowie vorhersehbarer zu machen. <\/p>\n<p>Es ist auch m\u00f6glich, dass der vRouter eine DPDK-Anwendung im User Space ist. <\/p>\n<p>Der vRouter Agent \u00fcbertr\u00e4gt die Einstellungen an den vRouter Forwarder.<\/p>\n<p>\n<b>Was ist das f\u00fcr ein Virtual Network?<\/b><br \/>\nIch erw\u00e4hnte zu Beginn des Artikels das VRF, dass jeder Tenant an sein eigenes VRF gebunden ist. Und wenn dies f\u00fcr ein oberfl\u00e4chliches Verst\u00e4ndnis der Funktionsweise des Overlay-Netzwerks ausreichend war, m\u00fcssen bei der n\u00e4chsten Iteration weitere Erkl\u00e4rungen gegeben werden.<\/p>\n<p>In der Regel wird in Virtualisierungsmechanismen die Entit\u00e4t Virtual Network (das kann man als Eigennamen betrachten) separat von Clients\/Tenants\/virtuellen Maschinen eingef\u00fchrt \u2013 eine ganz eigenst\u00e4ndige Sache. Dieses Virtual Network kann \u00fcber Schnittstellen bereits in einen Tenant, einen anderen, zwei oder wo auch immer angeschlossen werden. So wird beispielsweise Service Chaining umgesetzt, wenn der Datenverkehr durch bestimmte Knoten in der erforderlichen Reihenfolge geleitet werden muss, indem einfach in der richtigen Reihenfolge Virtual Networks erstellt und verbunden werden.<\/p>\n<p>Deshalb gibt es keine direkte Entsprechung zwischen Virtual Network und Tenant.<\/p>\n<h1>Fazit<\/h1>\n<p>\nDies ist eine eher oberfl\u00e4chliche Beschreibung der Funktionsweise eines virtuellen Netzwerks mit Overlays von einem Host und einem SDN-Controller. Aber welche Virtualisierungsplattform Sie auch immer nehmen, sie wird \u00e4hnlich arbeiten, ob es sich um VMWare, ACI, OpenStack, CloudStack, Tungsten Fabric oder Juniper Contrail handelt. Sie werden sich hinsichtlich der Arten von Kapselungen und Headern sowie der Protokolle zur Lieferung von Informationen an die Endger\u00e4te unterscheiden, aber das Prinzip des programmierbar konfigurierbaren Overlay-Netzwerks, das \u00fcber einem vergleichsweise einfachen und statischen Underlay-Netzwerk arbeitet, bleibt gleich.<br \/>\nMan kann sagen, dass im Bereich der Schaffung privater Clouds heutzutage SDN auf Basis von Overlay-Netzen gesiegt hat. Das bedeutet jedoch nicht, dass OpenFlow keinen Platz in der modernen Welt hat \u2013 es wird in OpenStack und auch in VMWare NSX verwendet, soweit ich wei\u00df, nutzt Google es zur Konfiguration des Underlay-Netzes.<\/p>\n<p>Weiter unten habe ich Links zu detaillierteren Materialien eingef\u00fcgt, falls Sie das Thema vertiefen m\u00f6chten. <\/p>\n<p>Und was ist mit unserem Underlay? <\/p>\n<p>Aber insgesamt nichts. Es hat sich die ganze Zeit nicht ver\u00e4ndert. Alles, was es im Falle eines Overlays vom Host aus tun muss, ist, die Routen und ARPs zu aktualisieren, wenn vRouter\/VNGW erscheinen und verschwinden, und Pakete zwischen ihnen zu transportieren.<\/p>\n<p>Lassen Sie uns eine Liste von Anforderungen an das Underlay-Netzwerk formulieren.<\/p>\n<ol>\n<li>Es muss in der Lage sein, ein Routing-Protokoll zu implementieren, in unserem Fall \u2013 BGP.<\/li>\n<li>Es sollte eine breite Bandbreite haben, idealerweise ohne Over-Subscription, um zu vermeiden, dass Pakete aufgrund von \u00dcberlastungen verloren gehen.<\/li>\n<li>Die Unterst\u00fctzung von ECMP ist ein integraler Bestandteil der Fabrik.<\/li>\n<li>Es muss QoS garantieren k\u00f6nnen, einschlie\u00dflich ausgekl\u00fcgelter Funktionen wie ECN.<\/li>\n<li>Die Unterst\u00fctzung von NETCONF ist eine Investition in die Zukunft.<\/li>\n<\/ol>\n<p>\nIch habe der Funktionsweise des Underlay-Netzwerks hier nur wenig Zeit gewidmet. Das liegt daran, dass ich mich in dieser Serie genau darauf konzentrieren werde, w\u00e4hrend wir das Overlay nur am Rande ber\u00fchren werden.<\/p>\n<p>Offensichtlich schr\u00e4nke ich uns alle stark ein, indem ich als Beispiel ein Rechenzentrumsnetzwerk verwende, das auf der Clos-Fabrik mit reiner IP-Routing und einem Overlay von einem Host basiert.<\/p>\n<p>Ich bin jedoch \u00fcberzeugt, dass man jedes Netzwerk mit einem Design formal beschreiben und automatisieren kann. Ich verfolge hier nur das Ziel, Ans\u00e4tze zur Automatisierung zu verstehen, und nicht, um alle generell zu verwirren, w\u00e4hrend ich das Problem im Allgemeinen l\u00f6se.<\/p>\n<p>Im Rahmen von ADS-M planen Roman Gorge und ich, eine eigene Ausgabe zur Virtualisierung von Rechenressourcen und deren Wechselwirkungen mit der Netzwerkvirtualisierung zu ver\u00f6ffentlichen. Bleiben Sie dran.<\/p>\n<p><\/p>\n<h1>N\u00fctzliche Links<\/h1>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/tungstenfabric.github.io\/website\/\">Tungsten Fabric Architektur<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/Kr6WIYPts8I?t=3157\">about:cloud<\/a><\/noindex>. 6 Stunden \u00fcber Yandex.Cloud, einschlie\u00dflich der Behandlung des virtuellen Netzwerks auf TF.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/docs.openvswitch.org\/en\/latest\/intro\/what-is-ovs\/\">Was ist Open vSwitch?<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/344326\/\">Einf\u00fchrung in VxLAN<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc7348\">RFC 7348. Virtual eXtensible Local Area Network (VXLAN): Ein Rahmen f\u00fcr die Overlay virtueller Layer 2 Netzwerke \u00fcber Layer 3 Netzwerke.<br \/>\n <\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.enog.org\/wp-content\/uploads\/presentations\/enog-16\/18-Scaleway-P14-fabric-ENOG16.pdf\">Scaleway-Ansatz zu VXLAN EVPN Fabric<\/a><\/noindex>. Hier wird das gesamte DC-Netzwerk behandelt, einschlie\u00dflich Underlay, Overlay, Ans\u00e4tze zum Multi-Homing und Management.<\/li>\n<\/ul>\n<p><\/p>\n<h5>Danke<\/h5>\n<p><\/p>\n<ul>\n<li><noindex>Roman Gorge<\/noindex> \u2014 ehemaliger Moderator des Podcasts linkmeup und jetzt Experte f\u00fcr Cloud-Plattformen. F\u00fcr Kommentare und Korrekturen. Wir erwarten bald seinen vertieften Artikel \u00fcber Virtualisierung.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.alexander-shalimov.com\">Alexander Shalimov<\/a><\/noindex> \u2014 mein Kollege und Experte f\u00fcr die Entwicklung virtueller Netzwerke. F\u00fcr Kommentare und Korrekturen.<\/li>\n<li><noindex>Valentin Sinitsin<\/noindex> \u2014 mein Kollege und Experte f\u00fcr Tungsten Fabric. F\u00fcr Kommentare und Korrekturen.<\/li>\n<li><noindex>Artem Tschernobaj<\/noindex> \u2014 Illustrator bei linkmeup. Danke f\u00fcr das KDPV.<\/li>\n<li>Alexander Limonov. F\u00fcr das Meme \u00abautomato\u00bb.<\/li>\n<\/ul>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/458622\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c \u0443 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043b\u044e\u0434\u0435\u0439 \u0434\u0430\u0436\u0435 \u044d\u0442\u043e\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 \u0443\u0436\u0435 \u0440\u0430\u0437\u043b\u043e\u0436\u0438\u043b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u043f\u043e \u043f\u043e\u043b\u043e\u0447\u043a\u0430\u043c. \u0418 \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043c\u0435\u043d\u044f \u0440\u0430\u0434\u0443\u0435\u0442, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0430\u0448\u0430 \u0446\u0435\u043b\u044c \u0432 \u0446\u0438\u043a\u043b\u0435 \u2014 \u043d\u0435 \u043e\u0431\u043c\u0430\u0437\u0430\u0442\u044c \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0438\u043c\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438 \u0430\u043d\u0437\u0438\u0431\u043b\u044c, \u0430 \u0432\u044b\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443. \u042d\u0442\u043e\u0442 \u0436\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0437\u0430\u0434\u0430\u0451\u0442 \u043f\u043e\u0440\u044f\u0434\u043e\u043a, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26892,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35973","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0414\u043b\u044f \u0421\u0430\u043c\u044b\u0445 \u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445. \u0427\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0432\u0430\u044f (\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0441\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u043e\u0439). \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0442\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:08:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:08:54+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Automatisierung f\u00fcr die Kleinsten. Teil Eins (der nach dem Nullteil). Virtualisierung des Netzwerks | ProHoster","description":"In der vorherigen Episode habe ich das Framework f\u00fcr Netzwerkautomatisierung beschrieben.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0414\u043b\u044f \u0421\u0430\u043c\u044b\u0445 \u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445. \u0427\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0432\u0430\u044f (\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0441\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u043e\u0439). \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0442\u0438 | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:08:54+00:00","article:modified_time":"2019-10-31T19:08:54+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35973","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 01:28:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:53:30","updated":"2026-01-22 01:28:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/35973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=35973"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/35973\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/26892"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=35973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=35973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=35973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}