Programozható hálózatok, nyitott rendszerek
IT infrastruktúra az Ön vállalkozása számára
Szoftverrel konfigurálható hálózat (szoftver által meghatározott Networks, SDN) - az egyik „forró” ma technológia, elindult azon az úton, az interneten az összeomlás azonban annak ellenére, hogy a téma még mindig viszonylag új, az egész már kialakult néhány poláris vélemények teljes öröm szkepticizmus és klisé "marketing íj" 1.
Számítógépes hálózatok, mint alapvető infrastruktúra - stratégiai tényező a korszerű informatikai, hanem a hálózati architektúra, az alapjait, amely rakták a késő 60-as évek, elavult, és nem mindig tudja, hogy megfelelően és hatékonyan reagálni az új igényeket. A mobilkészülékek számának és sokféleségének növekedése, a különböző vezeték nélküli technológiák fejlesztése arra a tényre vezetett, hogy ma a felhasználók száma meghaladta a vezetékes hálózatok felhasználóinak számát. Azonban a növekedés az erejét a mobil terminálok serkenti a kapacitás növekedésével számítógépes alkalmazások, amelyek viszont növelését követeli hálózati sávszélesség - az összeg a mobil adatforgalom exponenciálisan növekszik, és hogy milyen típusú forgalmi egyre változatosabb. A hálózati berendezések vezető gyártói szerint a forgalom minden kilenc hónapban megduplázódik, ami a következő néhány évben több nagyságrenddel fogja növelni a terhelést. Ugyanakkor a mobilhálózatok számára elérhető frekvenciák hatékonysága ma már közel áll a telítettséghez.
Annak érdekében, hogy megbirkózzon a jelentős forgalom növekedése, a vezeték nélküli hálózaton kell egy sűrű réteget, és ha teszünk egy kis cellát, így a mobil kliens a bázisállomás, ez növeli a cella teljesítményt és csökkenti az embereknek a száma is. A szakértők szerint ez megköveteli a bázisállomások sűrűségének 20-szoros növekedését. Azonban a modern hálózati architektúra rosszul alkalmazkodik az ilyen nagy forgalom támogatásához. Először is, lehetetlen egyenletesen növelni a lefedettség sűrűségét - a bázisállomásokat lehetőség szerint csak akkor kell alkalmazni, ami kaotikus. Másodszor, az ilyen infrastruktúrát nagyon nehéz kezelni, egyenetlen terhelést, a méhsejtek kölcsönhatását és más tényezőket tapasztalja. Harmadszor, a sűrű infrastruktúra nagyon költséges a telepítés és a működés során.
A fejlesztés a mikroprocesszor és a távközlés vezetett, hogy most minden ember átlagosan mintegy 40 zseton, de vannak több hálózati eszköz, bármilyen változás a meglévő konfiguráció, időigényes, költséges és szinte lehetetlen bevonása nélkül a gyártó. Nem tudjuk garantálni, hogy a szoftver és hardver termékek kizárólag a leírt funkcionalitás a dokumentációban és a hálózatok, a helyzet még nehezebb lesz - ilyen funkciók meg lehet osztani. hálózatépítés jelenti ma védett, az alapvető funkciókat hajtják végre hardver, és zárva van a változások a hálózati üzemeltet.
Együtt a növekedés mennyiségi mutatói a hálózat terhelése egyre összetettebb hálózati menedzsment feladatok - növelték listája jelentőségét és kritikusság és a háttérben egyre növekvő biztonsági és megbízhatósági követelményeknek. A hálózatok egyre összetettebb eszközökkel épülnek fel, mivel egyre több elosztott szabványos protokollt támogatnak (ma aktívan használt protokollok száma és verziói meghaladták a 600-at), míg zárt (saját) interfészeket használnak. Ilyen körülmények között a szolgáltatók nem tudnak azonnal új szolgáltatásokat bevinni, és a hálózati berendezések gyártói nem tudják gyorsan frissíteni termékeiket az ügyfelek igényeinek kielégítésére. Ennek következtében, a támogatás és kezelése komplex hálózati infrastruktúrák váltak művészet, nem mérnök, részben megerősíti a növekvő számú hálózati támadások, vírusok és más online fenyegetések, amely tanúsítja, hogy az a tény, hogy a biztonsági kérdések még mindig nincs megbízható megoldásokat.
Az 1970-es és 1980-as években a Szovjetunió saját szabványokat és eszközöket épített a hálózatokon. Leggyakrabban összeegyeztethetetlenek az internetes közösség (www.icos.org) által elfogadott szabványokkal, különösen ez azzal a következménnyel járt, hogy az országnak nem volt saját hálózati eszköze. Ennek eredményeképpen a belföldi telekommunikációs infrastruktúrák külföldi eszközökön alapulnak, ami azt jelenti, hogy az oroszországi infokommunikációs hálózatok kezelése csak a külföldi gyártók termékei által megengedett.
Így meg tudjuk különböztetni a modern számítógépes hálózatok következő problémáit:
- tudományos és technikai - ma már nem lehet irányítani és megbízhatóan előre látni az ilyen komplex tárgyak viselkedését, mint a globális számítógépes hálózatokat;
- gazdasági - közúti hálózatok, összetettek és magasan képzett szakembereket igényelnek szolgáltatásaikért;
- fejlesztési problémák - a modern hálózatok felépítésében a kísérletezés és az új szolgáltatások megteremtése jelentős akadályokat jelent.
A számítógépes hálózatok válságára adott válasza az építőipar - szoftver-konfigurálható hálózatok alapvetően új megközelítése volt.
Mi az SDN?
Az érdeklődés az informatikai cégek a SDN annak a ténynek köszönhető, hogy ezek a technológiák hatékonyságának javítása a hálózati berendezések 25-30% -kal csökkentik 30% -kal a költségek hálózati tevékenységhez, hálózatkezelés fordulni egy art mérnöki, a biztonság javítása és a felhasználók a képességét, hogy programozottan új szolgáltatások létrehozása és gyorsan feltöltheti őket a hálózati eszközökre.
Kutatási és fejlesztési szempontból az SDN kulcsfontosságú területei kapcsolódnak az USA által kifejlesztett, az internet jövőjével kapcsolatos kutatáshoz (Global Environment for Network Innovations) folyó kutatáshoz, amely mintegy 40 vezető amerikai egyetemet egyesíti; a Stanford és a Berkeley (Open Network Research Center) közös központja, az Internet2 területén végzett kutatás és fejlesztés; valamint az Ofelia európai tanulmányainak hetedik keretprogramja és a FEDERICA projekt.
SDN alapvető ötletek:
- az adatátvitel és a menedzsment folyamatok szétválasztása;
- egyetlen, egységes, szolgáltatótól független interfész a kezelési réteg és az adatátviteli réteg között;
- A hálózat logikusan központosított kezelése, amelyet egy vezérlővel hajtanak végre egy telepített hálózati operációs rendszerrel, és végrehajtják a hálózati alkalmazásokon keresztül;
- a hálózat fizikai erőforrásainak virtualizációja.
építészet
Az SDN architektúrában három szinten lehet megkülönböztetni (1. ábra):
- infrastrukturális szinten. Hálózati eszközök (kapcsolók és adatcsatornák) készletének biztosítása;
- irányítási szintet. beleértve a hálózati szolgáltatásokat nyújtó hálózati operációs rendszert és a hálózati eszközök és a hálózat kezelésére szolgáló programozási felületet;
- hálózati alkalmazások szintje a rugalmas és hatékony hálózati menedzsment érdekében.
Ábra. 1. A szoftver konfigurálható hálózatok architektúrája
Az SDN számára legígéretesebb és legdinamikusabban fejlődő szabvány az OpenFlow (OpenFlow 1.3 verzió) - egy nyílt szabvány, amely leírja az OpenFlow protokollt távoli menedzsmentet támogató kapcsoló követelményeit.
A rendszer segítségével a modern router általában megoldható két fő probléma: adatátvitel (továbbítása) - promóciós csomagot a bemeneti port egy adott kimeneti port és vezérlő adatok - packet feldolgozása és döntés, hogy hol töltsük tovább alapján a jelenlegi állapotában a router. Ez megfelel egy adat szintű, amelyek gyűjtik átviteli eszközt (kapcsolati csatorna-alkotó berendezések, útválasztók, kapcsolók), és a szint az állami szabályozás adatátviteli (ábra. 2). Fejlesztése router mindig követte az utat a konvergencia ezeket a szinteket, de a hangsúly a játékos (hardveres gyorsítás, továbbfejlesztett szoftver és az új funkciók növelik a sebességet a döntéshozatal az útvonal minden egyes csomag), míg a vezetői szintű maradt meglehetősen kezdetleges támaszkodott komplex elosztott útválasztási algoritmusok és bonyolult utasítások a hálózat konfigurálásához és konfigurálásához. Természetesen a menedzsmentréteget megvalósító útválasztó szoftver tulajdonjoga és zárt volt.
Ábra. 2. Hagyományos hálózatok és SDN
A szabadalmi leírás szerint 1,3 normál OpenFlow, vezérlő kölcsönhatás a kapcsoló által hordozott OpenFlow protokoll - minden kapcsoló tartalmaznia kell egy vagy több táblát áramlik (flow táblázatok), csoport asztal (-táblázat), és támogató csatorna (OpenFlow csatorna) való kommunikációhoz egy távvezérlőt, - a szerver. A specifikáció nem szabályozza a vezérlő architektúráját és az alkalmazások API-ját. A kapcsoló minden menetcíme tartalmaz egy sor bejegyzést vagy szabályt. Mindegyik rekord egyező mezőkből, számlálókból és utasításokból áll.
Az OpenFlow kapcsoló mechanizmusa meglehetősen egyszerű. Minden egyes bejövő csomag "vágja" a fejlécet (egy bizonyos hosszúságú egy kicsit). A száltáblákban ez a bitszöveg, az elsőtől kezdődően egy olyan szabályt keres, amelyhez az attribútummező legközelebb egyezik (illeszkedik) a csomag fejlécével. Ha van egy mérkőzés, akkor a csomagban és a fejlécében konverziókat hajtanak végre, amelyeket a megtalált szabályban megadott utasításkészlet határoz meg. Utasítás kapcsolódó egyes rekord a táblázat a kapcsolódó műveletek csomag továbbítását, módosítja a címe, a feldolgozás a csoport tábla, a feldolgozás a gázvezeték, és előre csomagokat egy adott switch port. A feldolgozó csővezeték utasításai lehetővé teszik a csomagok továbbítását a későbbi táblákhoz a további feldolgozáshoz és a táblák közötti információ átviteléhez metaadatok formájában. Az utasítások meghatározzák a számlálók módosításának szabályait is, amelyeket különféle statisztikák gyűjtésére használhatunk.
Ha a szükséges szabályokat az első táblázatban megtalálható, a csomag van foglalva és kap a vezérlőegység, amely létrehoz egy megfelelő szabály csomagokat az ilyen típusú, és meghatározza azt a kapcsolót (vagy az általa kezelt switch) vagy csomagkapcsolt lehet dobni (konfigurációtól függően a kapcsoló) .
A stream bejegyzések olyan csoportokra is mutathatnak, amelyekben további feldolgozás van definiálva. A csoportok a műsorszórási műveletek csoportjai, valamint a bonyolultabb szemantikájú átviteli műveletek csoportjai, például a csatornák gyors elosztása vagy összevonása. A csoportmechanizmus lehetővé teszi a szálak teljes kimeneti műveletének hatékony megváltoztatását. A csoporttáblázat olyan csoportbejegyzéseket tartalmaz, amelyek a csoport típusától függően speciális szemantikájú cselekvési tartályokat tartalmaznak. Egy vagy több cselekvési tartályban végrehajtott műveletek a csoporthoz küldött csomagokra vonatkoznak.
Az OpenFlow adatkezelését nem az egyes csomagok szintjén hajtják végre, hanem az adatforgalom szintjén. Az OpenFlow kapcsoló szabálya csak az első csomaghoz van telepítve a vezérlővel, majd minden más áramlási csomag használja.
A jelenleg rendelkezésre álló SDN fizikai kapcsolók megfelelnek az OpenFlow 1.0 specifikációinak, és csak egy menetes táblát tartalmaznak.
OpenFlow protokoll
Az ötlet SDN a létesítmény egy egységes, független a gyártója a hálózati eszközök, program-vezérelt interfész a vezérlő és a közlekedési hálózat környezet tükröződik a OpenFlow protokoll, amely lehetővé teszi a felhasználók számára, hogy meghatározzák és ellenőrizni, hogy ki kivel, milyen feltételek mellett és milyen minőségű kölcsönhatásba léphet a weben . A protokoll háromféle típusú üzenetet támogat: vezérlő-kapcsoló, aszinkron és szimmetrikus.
A vezérlő-kapcsoló típusának üzeneteit a vezérlő kezdeményezi, és a kapcsoló állapotát közvetlenül ellenőrzi és ellenőrzi. Az ilyen típusú üzeneteket a vezérlő használhatja a kapcsolók konfigurációs paramétereinek beállításához, statisztikák gyűjtéséhez, a téma táblázatainak bejegyzéseinek hozzáadásához, törléséhez és módosításához.
Az aszinkron üzeneteket a kapcsoló indítja el, hogy értesítse a hálózati események vezérlőjét (a csomagok érkezését vagy a rekord levételét a tábláról az időtúllépés miatt), valamint a kapcsoló vagy a hibák állapotát.
A szimmetrikus üzeneteket a kapcsoló vagy a vezérlő kezdeményezheti prompt nélkül, és használhatók kapcsolat létrehozásakor, valamint a késleltetések mérésére, a vezérlő-kapcsoló kapcsolat áteresztőképességére vagy a kapcsolat túlélhetőségének ellenőrzésére.
Hálózati operációs rendszer
A hálózat logikusan központosított adatkezelése magában foglalja az összes hálózati menedzsment funkciót egy különálló fizikai kiszolgálóra, az úgynevezett vezérlőnek, amelyet a hálózati rendszergazda kezel. A vezérlő működhet, mint egy egy-vagy több-OpenFlow kapcsolók, és tartalmaz egy hálózati operációs rendszer, amely biztosítja a hálózati szolgáltatások alacsony szintű hálózati menedzsment, hálózati szegmenseket, és az állam a hálózati elemek, valamint az alkalmazások teljesítő magas szintű hálózati menedzsment és az adatáramlás.
A hálózati operációs rendszer (OCS) az alkalmazások számára hozzáférést biztosít a hálózati menedzsmenthez, és folyamatosan figyeli a hálózati eszközök konfigurációját. Az OS fogalmának hagyományos értelmezésétől eltérően az SOS olyan szoftverrendszer, amely nem az adott csomópontot felügyeli, hozzáfér, és kezeli a teljes hálózat erőforrásait.
Abban a pillanatban, van 28 megvalósításai hálózati operációs rendszert szoftveresen definiált hálózat: NOX, himlő, Beacon, Maestro, Trema, BigSwitch, díszkivilágítás és mások.
Az SDN vezérlői számára nagyon fontos, hogy az egyik vezérlő összes alkalmazásának bármikor megismerje a hálózati topológiát. Azonban az elosztott hálózati menedzsmenttől a centralizáltig terjedő átmenet számos hiányosságot mutat. Például csökkentett megbízhatóság, hibatűrés, skálázhatóság.
Ma kifejlesztettek egy elosztott méretezhető vezérlő felépítését: HyperFlow [3], Onix [4] és Kandoo [5]. Azonban a COP CPI által végzett kutatások eredményei szerint az alternatív megközelítés a legígéretesebb (3. ábra). Mivel minden vezérlő több kapcsolóhoz kapcsolható, és minden kapcsolónak több vezérlője van, az azonos kapcsolót kezelő vezérlők kombinálhatók egy csoportvezérlőre (HA). Az ugyanazon GC minden vezérlőjének konzisztensnek kell lennie a hálózat azon részének topológiáján, amelyhez hozzáférést biztosítanak. Amint az 1. ábrából látható. 3, C1 - C3 - vezérlők, S1 - S4 - kapcsolók, és a V1 - V3 - hálózati fragmentumok, amely hozzáférést biztosít egy kapcsoló S1, S2, S3, ill. Ezután GK1 formában vezérlők C1 és C2, GK2 - C2 és C3, és GK1 az összes alkalmazásban kell egy egységes kép a V1 és V2 topológia, minden alkalmazás GK2 - topológia V2 és V3. Meghibásodás esetén például a C1 szabályozó C2 helyettesítheti a V1 irányítását. A vezérlők a hálózat megfelelő részének állapotát jelezhetik az S4 vagy S1, S2 és S3 kapcsolókon keresztül.
Ábra. 3. Alternatív megközelítés egy elosztott skálázható vezérlő kiépítéséhez