SDN digest - anim na open source emulator

Huling ginawa namin isang seleksyon ng mga open source na controller ng SDN. Ngayon, ang mga open-source na SDN network emulators ay susunod. Inaanyayahan namin ang lahat na interesado dito sa ilalim ng pusa.

SDN digest - anim na open source emulator/flickr/ Dennis van Zuijlekom / CC

Mininet

Binibigyang-daan ka ng tool na mag-set up ng network na pinamamahalaan ng software sa isang makina (virtual o pisikal). Ipasok lamang ang utos: $ sudo mn. Ayon sa mga developer, ang Mininet ay angkop para sa pag-deploy ng mga kapaligiran sa pagsubok.

Halimbawa, ginagamit ng mga guro sa Stanford (kung saan binuo ang Mininet) sa mga praktikal na klase sa unibersidad. Nakakatulong ito na maitanim ang mga kasanayan sa networking sa mga mag-aaral. Ang ilan sa mga gawain at demo ay matatagpuan sa imbakan sa GitHub.

Ang Mininet ay angkop din para sa pagsubok ng mga custom na SDN topologies. Ang virtual network ay na-deploy kasama ang lahat ng switch, controllers at hosts, at pagkatapos ay susuriin ang pagganap nito gamit ang mga script ng Python. Ang mga setting ay ililipat mula sa Mininet patungo sa totoong network.

Kabilang sa mga disadvantages ng solusyon highlight ng mga eksperto kakulangan ng suporta sa Windows. Bilang karagdagan, ang Mininet ay hindi angkop para sa pagtatrabaho sa mga malalaking network, dahil ang emulator ay tumatakbo sa isang makina - maaaring walang sapat na mapagkukunan ng hardware.

Ang Mininet ay inilabas sa ilalim ng BSD Open Source na lisensya at aktibong binuo. Kahit sino ay maaaring mag-ambag - mayroong impormasyon kung paano ito gagawin sa opisyal na website ng proyekto ΠΈ sa imbakan.

ns-3

Simulator para sa discrete event modelling mga network. Ang tool ay orihinal na inilaan bilang isang utility na pang-edukasyon, ngunit ngayon ay ginagamit ito para sa pagsubok ng mga kapaligiran ng SDN. Ang mga gabay para sa pagtatrabaho sa ns-3 ay matatagpuan sa website na may dokumentasyon ng proyekto.

Kabilang sa mga pakinabang ng utility ay suporta para sa mga socket at mga aklatan Pcap para sa pagtatrabaho sa iba pang mga tool (tulad ng Wireshark), pati na rin sa isang tumutugon na komunidad.

Kabilang sa mga disadvantage ang medyo mahinang visualization. Para sa pagpapakita ng topology tumanggi NetAnim. Bilang karagdagan, hindi sinusuportahan ng ns-3 ang lahat ng mga controller ng SDN.

Pagbabasa sa paksa sa aming corporate blog:

OpenNet

Ang SDN emulator na ito ay binuo batay sa dalawang dating tool - Mininet at ns-3. Pinagsasama nito ang lakas ng bawat isa sa kanila. Para magkaisa ang mga solusyon, gumagamit ang OpenNet ng isang binding library sa Python.

Kaya, ang Mininet sa OpenNet ay may pananagutan sa pagtulad sa mga switch ng OpenFlow, pagbibigay ng CLI at virtualization. Tulad ng para sa ns-3, ginagaya nito ang mga modelong wala sa Mininet. Ang mga tagubilin sa pagpapatakbo ay matatagpuan sa GitHub.Meron din karagdagang mga link para sa mga materyales sa paksa.

SDN digest - anim na open source emulator
/ mga stock /PD

Containernet

Ito ay isang Mininet fork para sa pagtatrabaho sa mga lalagyan ng aplikasyon. Ang mga docker container ay kumikilos bilang mga host sa mga emulated network. Ang solusyon ay nilikha upang payagan ang mga developer na mag-eksperimento sa cloud, edge, fog at NFV computing. Ang system ay ginamit na ng mga may-akda ng SONATA NFV upang lumikha ng isang sistema ng orkestrasyon sa mga virtualized na 5G network. Containernet nagsalita core ng NFV emulation platform.

Maaari mong i-install ang Containernet gamit ang gabay sa GitHub.

Tinynet

Isang magaan na library na tumutulong sa iyong mabilis na gumawa ng mga prototype ng mga network ng SDN. Tool ng API, na nakasulat sa Go, ay nagbibigay-daan sa iyong tularan ang anumang topology ng network. Ang aklatan mismo ay "tumitimbang" nang kaunti, dahil sa kung saan ito nag-i-install at gumagana nang mas mabilis kaysa sa mga analogue nito. Ang Tinynet ay maaari ding isama sa mga lalagyan ng Docker.

Ang tool ay hindi angkop para sa pagtulad sa mga malalaking network dahil sa limitadong pagpapagana. Ngunit ito ay magiging kapaki-pakinabang kapag nagtatrabaho sa maliliit na personal na proyekto o mabilis na prototyping.

Ang mga halimbawang pagpapatupad at utos para sa pag-install ng Tinynet ay makukuha sa Mga repositoryo ng GitHub.

MaxiNet

Ginagawang posible ng tool na ito na gamitin ang Mininet sa maraming pisikal na makina at magtrabaho kasama ang malalaking network ng SDN. Ang bawat isa sa mga kotse Manggagawa β€” inilunsad ang Mininet at tinutulad ang bahagi nito ng pangkalahatang network. Ang mga switch at host ay nakikipag-usap sa isa't isa gamit GRE-mga lagusan. Upang kontrolin ang mga bahagi ng naturang network, nagbibigay ang MaxiNet ng API.

Tinutulungan ka ng MaxiNet na mabilis na masukat ang mga network at i-optimize ang paglalaan ng mapagkukunan. Ang MaxiNet ay mayroon ding mga function ng pagsubaybay, isang built-in na CLI at ang kakayahang magsama sa Docker. Gayunpaman, hindi maaaring tularan ng tool ang pagpapatakbo ng isang switch para sa ilang makina.

Available ang source code ng proyekto sa GitHub. Ang gabay sa pag-install at gabay sa mabilisang pagsisimula ay matatagpuan sa opisyal pahina ng proyekto.

Pagbabasa sa paksa sa aming corporate blog:

Pinagmulan: www.habr.com

Magdagdag ng komento