GNU/Linux >> Znalost Linux >  >> Linux

Software Defined Networking (SDN) - Architektura a role OpenFlow

V našem předchozím článku jsme měli dobrý přehled o SDN jako technologii, proč je potřeba a jak ji IT průmysl přijímá. Pojďme se nyní dostat o vrstvu hlouběji a pochopit architekturu SDN a roli protokolu Openflow při implementaci technologie.

SDN se v zásadě skládá ze tří vrstev:

  1. Vrstva aplikace
  2. Řídící vrstva
  3. Vrstva infrastruktury

Pokusme se porozumět těmto vrstvám přístupem zdola nahoru.

Vrstva infrastruktury se skládá z různých síťových zařízení, která tvoří základní síť pro předávání síťového provozu. Může to být sada síťových přepínačů a směrovačů v datovém centru. Tato vrstva by byla fyzická vrstva, přes kterou by byla virtualizace sítě položena prostřednictvím řídicí vrstvy (kde by seděly řadiče SDN a spravovaly základní fyzickou síť).

Řídící vrstva je zemí řídicí roviny, kde by sídlila inteligentní logika v řadičích SDN pro řízení síťové infrastruktury. Toto je oblast, kde každý síťový prodejce pracuje na tom, aby přišel se svými vlastními produkty pro SDN řadič a framework. Zde v této vrstvě se v řadiči píše mnoho obchodní logiky pro načítání a údržbu různých typů síťových informací, podrobností o stavu, podrobnostech o topologii, statistikách a další.

Vzhledem k tomu, že řadič SDN je pro správu sítí, musí mít řídicí logiku pro případy použití v reálném světě sítě, jako je přepínání, směrování, L2 VPN, L3 VPN, pravidla zabezpečení brány firewall, DNS, DHCP a klastrování. Několik síťových prodejců a dokonce i open source komunity pracují na implementaci těchto případů použití ve svých SDN kontrolérech. Jakmile jsou tyto služby implementovány, vystavují svá rozhraní API (obvykle založená na REST) ​​vyšší vrstvě (vrstva aplikací), což usnadňuje život správcům sítě, kteří pak používají aplikace na řadičích SDN ke konfiguraci, správě a monitorování základní sítě. Řídicí vrstva leží uprostřed a odkrývá dva typy rozhraní – Northbound a Southbound.

  • Rozhraní na sever :je určen pro komunikaci s horní aplikační vrstvou a obecně by byl realizován prostřednictvím REST API řadičů SDN. S odchozí rozhraní :je určen pro komunikaci s nižší Infrastrukturní vrstvou síťových prvků a byl by obecně realizován prostřednictvím jižních protokolů – Openflow, Netconf, Ovsdb atd.

Vrstva aplikace  je otevřená oblast pro vývoj co nejvíce inovativních aplikací využitím všech síťových informací o topologii sítě, stavu sítě, statistikách sítě atd. Může existovat několik typů aplikací, které lze vyvíjet, jako jsou ty související s automatizací sítě, konfigurací sítě a správa, monitorování sítě, řešení problémů se sítí, zásady a zabezpečení sítě. Takové aplikace SDN mohou poskytovat různá end-to-end řešení pro skutečné podnikové sítě a sítě datových center. Síťoví prodejci přicházejí se svou sadou aplikací SDN. Například Brocade má následující velmi užitečné aplikace:

  • Brocade Flow Optimizer
  • Virtuální směrovač Brocade
  • Poradce sítě Brocade

Společnost HPE je také jedním z dodavatelů, který má obchod s aplikacemi SDN, který také obsahuje mnoho aplikací SDN od různých společností. Například:

  • HPE Network Optimizer
  • HPE Network Protector
  • Vizualizátor sítě HPE
  • NEC UNC pro HP SDN VAN Controller
  • Aricent SDN Load Balancer
  • Inteligentní řízení toku TechM
  • Nástroj pro vyrovnávání zatížení serveru TechM

Když jsme se krátce dotkli Openflow v předchozím článku, nyní bychom se zabývali podrobnostmi komunikace směřující na jih od řídicí vrstvy k vrstvě infrastruktury (síťové přepínače) prostřednictvím protokolu Openflow.

Openflow sehrálo klíčovou roli v revoluci SDN v tom smyslu, že bylo klíčem k ukázkovému oddělení řídicí roviny od datové roviny. Openflow je standardní specifikace poskytovaná Open Networking Foundation (ONF) a postupem času se vyvíjí s podporou různých požadavků současného světového networkingu. Aktuální verze protokolu Openflow je 1.5.1.

Openflow je protokol, který poskytuje standardní specifikace pro komunikaci mezi řadičem SDN a síťovým zařízením (obvykle přepínači). Umožňuje řadičům SDN přijímat rozhodnutí o směrování a ponechat pravidla pro předávání, pravidla zabezpečení, která jsou vnucována přepínačům v podkladové síti.

Řadič a přepínače SDN musí implementovat specifikace Openflow, aby rozuměly běžnému jazyku zpráv Openflow. K ovládání síťových přepínačů vloží řadič SDN pravidla do přepínačů, aby se mohly rozhodnout, když je síťový provoz zasáhne. Přepínače musí tato pravidla udržovat v tabulce Openflow. Podle Openflow se taková pravidla nazývají „toky“ a jsou uložena v „tabulkách toků“.

Obecně toky nesou tři typy informací:

  1. Pole shody:Budou definovat kritéria pro shodu paketů na základě polí jejich záhlaví – L2 (zdrojové cílové ethernetové adresy, VLAN ID, priorita VLAN atd.), L3 (IPv4/ Zdrojová cílová adresa IPv6, typ protokolu, DSCP atd.), pole L4 (zdrojový cílový port TCP/UDP/SCTP), pole ARP, pole ICMP, pole MPLS atd.
  2. Akce:budou definovat, co dělat s paketem, pokud odpovídá kritériím. Akce by mohly být jako upuštění, předání na některém portu přepínače, úprava paketu (push/pop VLAN ID, push/pop štítek MPLS, zvýšení/snížení IP TTL), předání na konkrétní frontu portu atd.
  3. Počítadla:ke sledování, kolik paketů odpovídá toku

Abychom byli konkrétní, toky obsahují další informace, které lze dále zkontrolovat ve specifikacích Openflow.

Kanál nebo připojení Openflow je nastavení mezi přepínačem a ovladačem, takže ovladač může komunikovat s přepínačem a konfigurovat, spravovat a monitorovat jej. Podle specifikace Openflow běží Openflow na připojení TCP nebo TLS a řadič naslouchá připojení na portu 6653. Očekává se, že přepínač zahájí připojení a měl by odeslat požadavek na připojení do ovladače.

Volitelně lze připojení iniciovat také ze strany ovladače a v tomto případě bude přepínač v pasivním režimu, aby naslouchal připojení. Ať už je to z jakékoli strany, bylo by to normální nastavení připojení TCP nebo TLS, jakmile je navázáno, zprávy Openflow se vyměňují přes připojení TCP nebo TLS. Níže je například příkaz open source virtuálního přepínače Openflow (OpenVswitch) k zahájení spojení TCP s řadičem:

ovs-vsctl set-controller <sampleBridgeName> tcp:192.168.56.101:6653

Zde je 192.168.56.101 IP řadiče a 6653 je port řadiče, na kterém bude naslouchat připojení.

Openflow definuje různé zprávy, které umožňují komunikaci mezi přepínačem a ovladačem, včetně zpráv o nastavení připojení, konfiguračních zpráv, zpráv o statistice přepínače, zpráv o udržení, zpráv o asynchronních událostech, chybových zpráv, zpráv experimentátorů a dalších.

Pojďme si krátce porozumět o zprávách Openflow:

  • Po navázání TCP spojení si obě entity vymění zprávu Openflow HELLO za účelem vyjednání verze Openflow, na které bude probíhat další komunikace. Je to nutné, protože je možné, že přepínač a ovladač běží na jiné verzi Openflow. Oba se dohodnou na nejvyšší podporované verzi.
  • Po dokončení vyjednávání o verzi řadič nejprve odešle zprávu s požadavkem na funkci Openflow, aby především získal ID datové cesty přepínače v zprávě s odpovědí a určil, jaké funkce přepínač podporuje.
  • Chcete-li nakonfigurovat přepínač tak, aby zpracovával síťový provoz, z řadiče lze odesílat zprávy Openflow, jako jsou položky toku. Ty jsou udržovány v tabulkách toku uvnitř přepínačů.
  • Chcete-li seskupovat položky toku, lze skupiny nakonfigurovat řadičem prostřednictvím skupinových zpráv, které lze uložit do skupinových tabulek uvnitř přepínačů.
  • Chcete-li získat podrobnosti o statistikách z přepínače, z řadiče lze odesílat zprávy Openflow, jako jsou statistiky toku, statistiky portů, statistiky front, statistiky skupin, statistiky tabulek atd.
  • Chcete-li zkontrolovat životnost připojení, odešlete požadavek na odezvu a odpověď Zprávy Openflow lze odesílat z ovladače nebo přepínače.
  • Asynchronní zprávy Openflow, jako je odstranění pravidla toku z přepínače, chyba při selhání konfigurace z přepínače, stav portu nahoru/dolů z přepínače atd., lze odesílat z přepínače do aktualizace ovladače.

Dosud jsme prošli architekturou SDN, jejími vrstvami a rolí Openflow, abychom realizovali základní princip SDN k oddělení řídicí roviny od datové roviny. Nyní musíme zjistit, jak by řadič mohl používat Openflow ke konfiguraci a správě základní sítě.

Řadič by v zásadě musel implementovat nějaký kód zásuvného modulu Openflow, pomocí kterého bude moci odesílat, přijímat a chápat zprávy Openflow do az přepínačů Openflow v základní síti.

Chcete-li nakonfigurovat přepínače Openflow, musí řadič vložit pravidla toku do tabulek přepínačů Openflow, na základě kterých mohou tyto přepínače zpracovat síťový provoz, který je zasáhne. Zpráva Openflow pro položky toku má velkou sadu polí n-tic pro porovnávání kritérií (pole L2, L3, L4 atd.) paketů přicházejících ze sítě, což by celkově pomohlo při konfiguraci pravidel ACL, pravidel bezpečnostních zásad, pravidel pro rychlost omezování šířky pásma QoS, pravidla směrování, pravidla zrcadlení portů a pravidla úpravy paketů.

Ke sledování přepínačů Openflow poskytuje Openflow různé zprávy požadavků a odpovědí k načtení informací o statistikách přepínačů a sítě a zpráv o událostech za účelem aktualizace ovladače o ručních změnách nebo selháních na straně přepínače, včetně události odstranění toku, změn stavu portu NAHORU/DOLŮ a dalších.

K provádění některých úkolů specifických pro dodavatele na přepínačích Openflow poskytuje Openflow experimentální zprávy, ve kterých mají dodavatelé volnost definovat tělo zprávy a vyměňovat si vlastní informace mezi ovladačem a přepínači. To je způsob, jakým Openflow používá mnoho aplikací SDN k poskytování řešení pro snadné ovládání a správu sítě.

This article is co-authored by Tarun Thakur.

Reference:

  • https://www.sdxcentral.com/sdn/definitions/inside-sdn-architecture/
  • https://www.opennetworking.org/images/stories/downloads/sdn-resources/technical-reports/TR_SDN_ARCH_1.0_06062014.pdf
  • http://noviflow.com/the-basics-of-sdn-and-the-openflow-network-architecture/

Linux
  1. Odstraňování problémů se sítí Linux a ladění?

  2. Software pro navigaci v síťovém diagramu?

  3. Odstraňte problémy se sítí Windows Server

  1. digiKam – profesionální software pro úpravu a správu fotografií

  2. FreeCAD – 3D modelovací a návrhářský software pro Linux

  3. Kali Linux 1.0.5 a softwarově definované rádio

  1. Síť Kubernetes, OpenStack Train a další trendy v oboru

  2. Instalace a odebrání softwaru v Manjaro

  3. MIXXX – krásný, bezplatný a open source DJ software