Rețele configurabile de programe, sisteme deschise

Infrastructura IT pentru întreprinderea dvs.

de rețea Software-configurabil (Software Defined Networks, SDN) - una dintre cele mai tehnologiei de azi „la cald“, angajat pe calea web de colaps, cu toate acestea, în ciuda faptului că subiectul este încă relativ nou, în jurul valorii deja formate mai multe opinii polare plăcere completă la scepticismul și cliche "arcul de marketing" 1.

Rețelele de calculatoare ca infrastructură fundamentală - un factor strategic în dezvoltarea IT moderne, dar arhitectura de rețea, bazele care au fost stabilite la sfârșitul anilor '60, este depășit și nu este întotdeauna în măsură să răspundă în mod adecvat și eficient la noile nevoi. Creșterea numărului și a diversității dispozitivelor mobile, dezvoltarea diverselor tehnologii fără fir au dus la faptul că numărul utilizatorilor lor a depășit astăzi numărul utilizatorilor de rețele fixe. Cu toate acestea, creșterea puterii de terminale mobile stimulează o creștere a capacității de aplicații informatice, care, la rândul său, necesită o creștere a lățimii de bandă de rețea - volumul de trafic de date mobile este în creștere exponențială, iar tipurile de trafic sunt din ce în ce mai diverse. Potrivit principalilor producători de echipamente de rețea, traficul se dublează la fiecare nouă luni, ceea ce, în următorii câțiva ani, va crește încărcătura cu câteva ordine de mărime. În același timp, astăzi eficiența spectrului de frecvențe disponibile pentru rețelele mobile este deja aproape de saturație.

Pentru a face față cu o creștere semnificativă a traficului, rețeaua fără fir trebuie să aibă un strat dens, iar dacă vom face un pic de celule, aducand clientul mobil la stația de bază, va crește debitul de celule și de a reduce numărul de persoane acolo. Potrivit experților, acest lucru va necesita o creștere de 20 de ori a densității stațiilor de bază. Cu toate acestea, arhitectura modernă a rețelei este puțin adaptată pentru a susține un trafic atât de greu. În primul rând, este imposibil să crească uniform densitatea de acoperire - stațiile de bază vor trebui să fie utilizate ori de câte ori este posibil, adică haotice. În al doilea rând, o astfel de infrastructură va fi foarte dificil de gestionat, se va confrunta cu sarcini inegale, influența reciprocă a fagurilor de miere și a altor factori. În al treilea rând, infrastructura densă este foarte costisitoare în desfășurare și în funcționare.

Dezvoltarea tehnologiei microprocesor și de telecomunicații a condus la faptul că acum fiecare persoană are o medie de aproximativ 40 de chips-uri, dar există mai multe dispozitive de rețea, orice modificări la configurația lor existente, consumatoare de timp, costisitoare și, practic, imposibilă fără implicarea producătorului. Nu puteți garanta că firmware-ul producătorului conține doar funcțiile descrise în documentație, iar în rețele situația poate fi și mai dificilă - această funcție poate fi distribuită. Mijloacele de construire a rețelelor de astăzi sunt proprietate, funcționalitatea lor principală fiind implementată în hardware și este închisă pentru schimbările din partea proprietarilor rețelei.

Odată cu creșterea indicatorilor cantitativi ai sarcinii în rețea devin mai complexe sarcini de administrare a rețelei - a crescut lista lor de importanță și de importanță, precum și pe fondul creșterii cerințelor de siguranță și fiabilitate. Rețelele se bazează pe dispozitive care sunt tot mai complexe, cât mai mult constrânși să sprijine distribuirea de protocoale standard (astăzi numărul de protocoale și versiuni mai mari de 600 utilizate în mod activ), în același timp, folosind interfețe închise (proprietare). În astfel de condiții, furnizorii nu pot introduce cu promptitudine noi servicii, iar producătorii de echipamente de rețea nu își pot actualiza rapid produsele pentru a satisface cerințele clienților. În consecință, susținerea și gestionarea infrastructurilor complexe de rețea au devenit o artă, nu un inginer, este parțial confirmată de numărul tot mai mare de atacuri de rețea, viruși și alte amenințări online, care să ateste faptul că problemele de securitate încă nu au soluții fiabile.

În anii '70 și '80, URSS lucra la propriile standarde și mijloace de construire a rețelelor. Cel mai adesea, acestea erau incompatibile cu standardele adoptate de faptul că mai târziu a devenit comunitatea Internet (www.icos.org), în special, acest lucru a condus la faptul că țara nu a ridicat echipamentul de rețea de producție. Ca urmare, infrastructura de telecomunicații interne acum fiind construit pe baza unor fonduri externe, ceea ce înseamnă că rețelele de gestionare a infocommunication din Rusia este posibilă numai în măsura în care permite produse ale producătorilor străini.

Deci, putem distinge următoarele probleme ale rețelelor computerizate moderne:

  • științifică și tehnică - astăzi este imposibil să se controleze și să se anticipeze fiabil comportamentul unor astfel de obiecte complexe, cum ar fi rețelele globale de calculatoare;
  • economic - rețelele rutiere, sunt complexe și necesită specialiști cu înaltă calificare pentru serviciile lor;
  • probleme de dezvoltare - în arhitectura rețelelor moderne există bariere semnificative în ceea ce privește experimentarea și crearea de noi servicii.

Răspunsul la criza rețelelor de calculatoare a fost apariția unei abordări fundamental noi a construcțiilor lor - rețele configurabile de software.

Ce este SDN?

Interesul companiilor de IT din SDN datorită faptului că aceste tehnologii pot îmbunătăți eficiența echipamentelor de rețea cu 25-30%, reduce cu 30% costurile de operare de rețea, de gestionare a rețelei pentru a porni de la o artă la inginerie, pentru a îmbunătăți securitatea și a oferi utilizatorilor posibilitatea de a crea programatic noi servicii și le încărcați rapid la echipamentele de rețea.

În ceea ce privește cercetarea și dezvoltarea, domeniile-cheie ale SDN sunt legate de cercetarea privind viitorul internetului GENI (Global Environment for Network Innovations), dezvoltată de SUA, care unesc aproximativ 40 de universități din SUA; centrul comun al Stanford și Berkeley (Open Network Research Centre), care desfășoară activități de cercetare și dezvoltare în domeniul Internet2; precum și al celui de-al șaptelea program-cadru de studii europene al Ofelia și al proiectului FEDERICA.

Idei de bază SDN:

  • separarea proceselor de transmitere și gestionare a datelor;
  • o interfață unică, unificată, independentă de furnizor, între stratul de gestionare și stratul de transmisie de date;
  • Gestiune logică centralizată a rețelei, realizată cu ajutorul unui controler cu un sistem de operare de rețea instalat și implementat în aplicații de rețea;
  • virtualizarea resurselor fizice ale rețelei.

arhitectură

În arhitectura SDN se pot distinge trei nivele (Figura 1):

  • nivelul infrastructurii. Furnizarea unui set de dispozitive de rețea (switch-uri și canale de date);
  • nivelul de conducere. inclusiv un sistem de operare de rețea care furnizează aplicații cu servicii de rețea și o interfață de programare pentru gestionarea dispozitivelor de rețea și a rețelei;
  • nivel de aplicații de rețea pentru gestionarea flexibilă și eficientă a rețelei.

Rețele configurabile de programe, sisteme deschise

Fig. 1. Arhitectura rețelelor configurabile cu software

Cel mai promițător și activ standard pentru SDN este OpenFlow (OpenFlow versiunea 1.3) - un standard deschis care descrie cerințele pentru un switch care acceptă protocolul OpenFlow pentru gestionarea la distanță.

Cu ajutorul routere moderne sunt rezolvate, de obicei, două probleme majore: transfer de date (redirecționarea) - pachetul de promovare de la portul de intrare într-un port de ieșire specific și a datelor de control - procesarea pachetelor și a decide în cazul în care să-l transfere în continuare pe baza stării actuale a router-ului. Aceasta corespunde unui nivel de date, care sunt colectate mijloace (link-echipament de formare a canalului, routere, switch-uri) transmiterea și nivelul controlului stării de transmitere a datelor (Fig. 2). Dezvoltarea de routere urmat încă calea de convergență a acestor niveluri, dar cu un accent pe transferul (accelerare hardware, software-ul îmbunătățit și introducerea de noi caracteristici pentru a crește viteza de luare a deciziilor privind traseul fiecărui pachet), în timp ce nivelul de management a rămas destul de primitiv și sa bazat pe complexe algoritmi de rutare distribuite și instrucțiuni complexe pentru configurarea și configurarea rețelei. Desigur, software-ul de router care implementează stratul de management a fost proprietate și închis.

Rețele configurabile de programe, sisteme deschise

Fig. 2. Rețele tradiționale și SDN

Conform specificației 1.3 standardul OpenFlow, interacțiunea controler cu comutatorul este realizată prin protocolul OpenFlow - fiecare comutator trebuie să conțină una sau mai multe tabele de fluxuri (tabele de flux), masă de grup (masă de grup) și canal de sprijin (OpenFlow canal) pentru comunicația cu un controler de la distanță, - serverul. Specificațiile nu reglementează arhitectura controlerului și API pentru aplicațiile sale. Fiecare tabelă de fire din comutator conține un set de intrări sau reguli de flux. Fiecare astfel de înregistrare constă din câmpuri de potrivire, contoare și un set de instrucțiuni.

Mecanismul comutatorului OpenFlow este destul de simplu. Fiecare pachet primit "taie" antetul (un șir de biți de o anumită lungime). Pentru acest șir de biți în tabelele de fișiere, începând cu primul, se caută o regulă pentru care cel mai apropiat câmp de atribute se potrivește (se potrivește) cu antetul pachetului. Dacă există o potrivire, conversiile sunt efectuate pe pachet și antetul său, determinate de setul de instrucțiuni specificat în regula găsită. Instrucțiunile asociate cu fiecare înregistrare din tabel descrie acțiunile asociate cu transmiterea de pachete, modificarea titlului, prelucrarea în tabelul de grup, prelucrarea în conductă, iar pachetele forward la un port specific comutator. Instrucțiunile conductei de procesare vă permit să transmiteți pachetele în tabele ulterioare pentru procesare ulterioară și pentru a transfera informații între tabele sub formă de metadate. De asemenea, instrucțiunile definesc regulile de modificare a contoarelor care pot fi utilizate pentru a colecta o varietate de statistici.

În cazul în care normele necesare în primul tabel este găsit, pachetul este încapsulat și trimis la controler, care generează o regulă corespunzătoare pentru pachetele de acest tip și setează-l pe comutator (sau un set comutator de gestionat) sau sub formă de pachete pot fi eliminate (în funcție de configurația comutatorului) .

Înregistrările în flux pot indica, de asemenea, grupuri în care este definită procesarea suplimentară. Grupurile sunt seturi de acțiuni pentru distribuția difuzată, precum și seturi de acțiuni de transfer cu semantică mai complexă, de exemplu, rutarea rapidă sau agregarea canalelor. Mecanismul de grup vă permite să modificați în mod eficient acțiunile de ieșire globale pentru fire. Tabela de grup conține intrări de grup care conțin o listă de containere de acțiune cu semantică specială, în funcție de tipul de grup. Acțiunile din unul sau mai multe containere de acțiune se aplică pachetelor trimise grupului.

Gestionarea datelor în OpenFlow este implementată nu la nivelul pachetelor individuale, ci la nivelul fluxurilor lor. Regula din comutatorul OpenFlow este instalată cu controlerul numai pentru primul pachet și apoi toate celelalte pachete de flux îl utilizează.

Dispozitivele fizice SDN disponibile în prezent corespund specificațiilor OpenFlow 1.0 și conțin doar o singură tabelă de filete.

Protocolul OpenFlow

Ideea SDN privind instituirea unui unificat, independent de producătorul de echipamente de rețea, de interfață controlate de program între operator și mediul de rețea de transport se reflectă în protocolul OpenFlow, care permite utilizatorilor să definească și să controleze cine cu cine, în ce condiții și cu ce calitate pot interacționa pe Web . Protocolul acceptă trei tipuri de mesaje: controler-switch, asincron și simetric.

Mesajele tipului de controler-comutator sunt inițiate de către controler și utilizate pentru a controla și monitoriza direct starea comutatorului. Mesajele de acest tip pot fi utilizate de controler pentru a seta parametrii de configurare a comutatorului, pentru a colecta statistici, a adăuga, a șterge și a modifica intrările în tabelele de fire.

Mesajele asincrone sunt inițiate de către comutator pentru a notifica controlorul cu privire la evenimentele din rețea (sosirea pachetelor sau eliminarea unei înregistrări din tabel cu timpul de expirare) și schimbările în starea comutatorului sau a erorilor.

Mesajele simetrice pot fi inițiate de către comutator sau controler fără o solicitare și sunt utilizate la stabilirea unei conexiuni, precum și pentru măsurarea întârzierilor, a debitului unei conexiuni controler-switch sau pentru verificarea supraviețuirii unei conexiuni.

Sistem de operare de rețea

Gestiunea logică centralizată a datelor în rețea implică preluarea tuturor funcțiilor de gestionare a rețelei într-un server fizic separat, numit un controler care este administrat de administratorul de rețea. Controlerul poate funcționa ca un singur sau multi-OpenFlow switch-uri și conține un sistem de operare de rețea, care oferă servicii de rețea pentru managementul de nivel scăzut de rețea, segmente de rețea, precum și starea elementelor de rețea, precum și aplicații performante de management al rețelei la nivel înalt și a datelor de flux.

Sistemul de operare de rețea (OCS) oferă aplicațiilor acces la gestionarea rețelei și monitorizează în mod constant configurația facilităților de rețea. Spre deosebire de interpretarea tradițională a termenului OS, SOS este un sistem software care monitorizează, accesează și gestionează resursele întregii rețele, mai degrabă decât nodul său specific.

În prezent există 28 de implementări ale sistemului de operare de rețea pentru rețelele definite de software: NOX, POX, Beacon, Maestro, Trema, BigSwitch, FloodLight etc.

Pentru controlorii din SDN, este foarte important ca toate aplicațiile unui controler să aibă aceeași înțelegere a topologiei rețelei în orice moment. Cu toate acestea, trecerea de la gestionarea rețelei distribuite la centralizată are o serie de deficiențe. De exemplu, fiabilitate redusă, toleranță la erori, scalabilitate.

Astăzi au fost dezvoltate mai multe abordări pentru construirea unui controler distribuit scalabil: HyperFlow [3], Onix [4] și Kandoo [5]. Cu toate acestea, conform rezultatelor cercetării efectuate de IPC al COP, o abordare alternativă este cea mai promițătoare (Figura 3). Deoarece fiecare controler poate fi conectat la mai multe comutatoare și fiecare comutator are mai multe controale, controlorii care controlează același switch pot fi combinați într-un controler de grup (HA). Toți controlorii aceluiași GC trebuie să aibă o vedere consistentă asupra topologiei acelei părți a rețelei la care acestea oferă acces. Așa cum se poate vedea din fig. 3, o grupare C1 - C3 - controlere, S1 - S4 - comutatoare și V1 - fragmente de rețea, care oferă acces la un comutator S1, S2, S3, respectiv - V3. Apoi controllere formă GK1 C1 și C2, gK2 - C2 și C3 și GK1 în toate aplicațiile ar trebui să aibă o imagine coerentă a topologiei V1 și V2, toate aplicațiile gK2 - V2 topologie și V3. În cazul unei defecțiuni, de exemplu, controlerul C1, poate înlocui C2, preluând controlul V1. Controlerele pot reprezenta starea părții corespunzătoare a rețelei fie prin comutatorul S4, fie prin S1, S2 și S3.

Rețele configurabile de programe, sisteme deschise

Fig. 3. O abordare alternativă pentru construirea unui controler scalabil distribuit

Articole similare