To je teda zase blábol. Nebylo by jednodušší opsat nějaký propagační slajd z prezentace některé firmy, která se tím zabývá?
Všechny rozumné síťové prvky umožňují programovatelné řízení bez nutnosti toho, aby tam někdo ručně sázel konfiguraci přes CLI. Ať už opravdu historickým SNMP nebo modernějším NetConf.
Základním rozdílem mezi normálním chováním sítě a SDN je opravdu centralizace. Zatímco normální síť je skupina na sobě nezávislých síťových prvků komunikujících mezi sebou standardními směrovacími protokoly jako OSPF nebo BGP a jsou schopny reagovat na výpadky jednotlivých uzlů sítě, tak u SDN přebírá veškeré řízení sítě jeden (možná zálohovaný) kontroler, který řídí skupinu velmi hloupých síťových prvků, které mají minimální software řídící pouze komunikaci s kontrolerem a přenášejí instrukce kontroleru do data plane (tj. naprogramují ASIC).
Třeba v případě OpenFlow (jedna z verzí SDN) se směrování paketu/rámce v síti vůbec nemusí řídit žádnými standardními směrovacími pravidly. Kontroler prostě centralizovaně přenese pravidla typu "paket s jistými parametry (třeba IP adresy, MAC, VLAN tagy, DSCP, TTL, destination port, 79. bajt obsahu paketu == 56) pošli linkou C a změň TTL na 251".
To samozřejmě přináší spoustu možností pro efektivní řízení sítě, nicméně má taky řadu dost výrazných nevýhod. Třeba problémy s dostupností kontroleru, naprostá neodladitelnost chování takové sítě v případě problémů a pod.
Vzhledem k tomu, jak dlouho už tu OpenFlow je (2011) a jak moc se rozšířilo, bych to považoval spíš za mrtvou větev.
Druhou možností jsou pak různé overlayové sítě (třeba EVPN), které nejsou tak radikální v řízení sítě a stále spoléhají na standardní směrovací protokoly a inteligentní síťové prvky.
A pak tu máme další možnosti vycházející ze standardních směrovacích protokolů, jako policy based routing, BGP FlowSpec a podobně, které základní paradigmata síťové komunikace (nezávislost jednotlivých síťových prvků) nijak nenarušují.
SDN je oblast, kde opravdu záleží na tom, kde to chcete nasadit a má dost omezení na to, aby se tomu většina lidí radši vyhnula :-)
Pokud jste síťař-programátor-hračička, tak musíte být nadšen, protože se s tím dají dělat doslova kouzla. Jenomže většina síťařů musí mít síť, která jim funguje a na hraní žádnou další síť nemají. Proto se taky dělají hybridy - jeden switch se dá rozdělit na část klasickou a část OpenFlow a tam si může hračička dostatečně vyhračičkovat a až ho to přestane bavit, tak to zase vrátit do konfigurace klasického switche :-)
Ne úplně, spíš než centrální správa by se s trochou cynické nadsázky dalo říci, že je to buzzword pro spoustu balastu a mlžení nad vxlan. :-) V podstatě se dá říct, že myšlenka "software defined network" spočívá v tom, že můžete mít logickou topologii sítě nezávislou na fyzické, což výrazně usnadňuje třeba migrace (a samozřejmě i tu správu).
Problémem SDN je, když pak musejí chudáci supporťáci a vývojáři zákazníkovi opojenému marketingovými materiály vysvětlovat, že celá ta legrace má nějaký overhead a že když síťová karta umí počítat a ověřovat checksum, neznamená to automaticky, že to bude umět i pro pakety zabalené do dvou vnořených tunelů.
Anglické slovo control se až na výjimky* překládá do češtiny jako ovládat; řídit. Nikoli jako kontrolovat, čemuž odpovídá spíše anglické slovíčko check. Funkce kontroly je v SDN navíc nikoli v kontrolní úrovni, ale v management úrovni – což by se mimochodem dalo mnohem lépe česky vyjádřit jako úroveň správy.
*) Těmi výjimkami jsou ustálená spojení jako passport control nebo control group (ve statistice), kde má anglické control význam obdobný významu slova check.
To není ustálenými spojeními ale tím kde ve větě je slovo použito např. "It is a control group" and "Can You try to control group"
"archaic : to check, test, or verify by evidence or experiments "
" to exercise restraining or directing influence over :regulate"
https://www.merriam-webster.com/dictionary/control
29. 8. 2019, 21:25 editováno autorem komentáře