SDN digest - seks open source-emulatorer

Sidste gang vi gjorde det et udvalg af open source SDN-controllere. I dag er open source SDN-netværksemulatorer den næste. Vi inviterer alle, der er interesseret i dette under kat.

SDN digest - seks open source-emulatorer/flickr/ Dennis van Zuijlekom / CC

Mininet

Værktøjet giver dig mulighed for at opsætte et softwarestyret netværk på én maskine (virtuel eller fysisk). Indtast blot kommandoen: $ sudo mn. Ifølge udviklerne er Mininet velegnet til at implementere testmiljøer.

For eksempel bruger lærere på Stanford (hvor Mininet blev udviklet) værktøjet under praktiske timer på universitetet. Det hjælper med at indgyde netværksfærdigheder hos eleverne. Nogle af opgaverne og demoerne kan findes i depotet på GitHub.

Mininet er også velegnet til at teste brugerdefinerede SDN-topologier. Det virtuelle netværk implementeres med alle switche, controllere og værter, og derefter kontrolleres dets ydeevne ved hjælp af Python-scripts. Indstillingerne overføres derefter fra Mininet til det rigtige netværk.

Blandt ulemperne ved løsningen eksperter fremhæver manglende Windows-understøttelse. Derudover er Mininet ikke egnet til at arbejde med store netværk, da emulatoren kører på én maskine - der er muligvis ikke nok hardwareressourcer.

Mininet er udgivet under BSD Open Source-licensen og er aktivt under udvikling. Alle kan bidrage - der er information om hvordan man gør dette på officielle projekthjemmeside и i depotet.

ns-3

Simulator til diskret hændelsesmodellering netværk. Værktøjet var oprindeligt tænkt som et undervisningsværktøj, men i dag bruges det til at teste SDN-miljøer. Vejledninger til at arbejde med ns-3 kan findes på hjemmeside med projektdokumentation.

Blandt fordelene ved værktøjet er understøttelse af stikkontakter og biblioteker Pcap til at arbejde med andre værktøjer (såsom Wireshark), samt et lydhørt fællesskab.

Ulemperne omfatter relativt svag visualisering. Til visning af topologi er ansvarlig NetAnim. Derudover understøtter ns-3 ikke alle SDN-controllere.

Læs om emnet i vores virksomhedsblog:

OpenNet

Denne SDN-emulator er bygget på basis af to tidligere værktøjer - Mininet og ns-3. Det kombinerer styrkerne ved hver af dem. For at få løsninger til at fungere sammen, bruger OpenNet et bindingsbibliotek i Python.

Således er Mininet i OpenNet ansvarlig for at emulere OpenFlow-switches, hvilket giver CLI og virtualisering. Hvad angår ns-3, emulerer den de modeller, der ikke er i Mininet. Betjeningsvejledning kan findes på GitHub.Der er også yderligere links for materialer om emnet.

SDN digest - seks open source-emulatorer
/ Px /PD

Containernet

Dette er en Mininet-gaffel til arbejde med applikationsbeholdere. Docker-containere fungerer som værter i emulerede netværk. Løsningen blev skabt for at give udviklere mulighed for at eksperimentere med cloud, edge, fog og NFV computing. Systemet er allerede blevet brugt af forfatterne af SONATA NFV til at skabe et orkestreringssystem i virtualiserede 5G-netværk. Containernet talte kernen i NFV-emuleringsplatformen.

Du kan installere Containernet vha guide på GitHub.

Tinynet

Et letvægtsbibliotek, der hjælper dig med hurtigt at skabe prototyper af SDN-netværk. API værktøj, skrevet i Go, giver dig mulighed for at efterligne enhver netværkstopologi. Biblioteket selv "vejer" lidt, på grund af hvilket det installerer og fungerer hurtigere end dets analoger. Tinynet kan også integreres med Docker-containere.

Værktøjet er ikke egnet til at emulere store netværk på grund af begrænset funktionalitet. Men det vil være nyttigt, når du arbejder på små personlige projekter eller hurtig prototyping.

Eksempler på implementeringer og kommandoer til installation af Tinynet er tilgængelige på GitHub-depoter.

MaxiNet

Dette værktøj gør det muligt at bruge Mininet på flere fysiske maskiner og arbejde med store SDN-netværk. Hver af bilerne Arbejdere — lancerer Mininet og emulerer dens del af det generelle netværk. Switche og værter kommunikerer med hinanden ved hjælp af GRE-tunneler. For at kontrollere komponenterne i et sådant netværk, leverer MaxiNet en API.

MaxiNet hjælper dig med hurtigt at skalere netværk og optimere ressourceallokering. MaxiNet har også overvågningsfunktioner, en indbygget CLI og muligheden for at integrere med Docker. Værktøjet kan dog ikke efterligne betjeningen af ​​en kontakt til flere maskiner.

Projektets kildekode er tilgængelig på GitHub. Installationsvejledningen og hurtigstartvejledningen kan findes på den officielle projektside.

Læs om emnet i vores virksomhedsblog:

Kilde: www.habr.com

Tilføj en kommentar