SDN digest - վեց բաց կոդով էմուլյատորներ

Վերջին անգամ մենք արեցինք բաց կոդով SDN կարգավորիչների ընտրություն. Այսօր հաջորդը բաց կոդով SDN ցանցի էմուլյատորներն են: Հրավիրում ենք բոլոր նրանց, ովքեր հետաքրքրված են այս կատուով:

SDN digest - վեց բաց կոդով էմուլյատորներ/flickr/ Դենիս վան Զույլեկոմ / CC

Մինինեթ

Գործիքը թույլ է տալիս ստեղծել ծրագրային ապահովման միջոցով կառավարվող ցանց մեկ մեքենայի վրա (վիրտուալ կամ ֆիզիկական): Պարզապես մուտքագրեք հրամանը՝ $ sudo mn: Ըստ մշակողների, Mininet-ը լավ հարմար է թեստային միջավայրերի տեղակայման համար:

Օրինակ, Սթենֆորդի ուսուցիչները (որտեղ մշակվել է Mininet-ը) օգտագործում են կոմունալ ծրագիրը համալսարանում գործնական պարապմունքների ժամանակ: Այն օգնում է ուսանողների մեջ սերմանել ցանցային հմտություններ: Որոշ առաջադրանքներ և ցուցադրություններ կարելի է գտնել պահոցում GitHub-ում:

Mininet-ը հարմար է նաև հատուկ SDN տոպոլոգիաների փորձարկման համար: Վիրտուալ ցանցը տեղակայվում է բոլոր անջատիչների, կարգավորիչների և հոսթների հետ, այնուհետև դրա կատարումը ստուգվում է Python սկրիպտների միջոցով: Այնուհետև կարգավորումները Mininet-ից տեղափոխվում են իրական ցանց:

Լուծման թերությունների թվում ընդգծում են փորձագետները Windows-ի աջակցության բացակայություն: Բացի այդ, Mininet-ը հարմար չէ լայնածավալ ցանցերի հետ աշխատելու համար, քանի որ էմուլյատորն աշխատում է մեկ մեքենայի վրա. հնարավոր է, որ բավարար ապարատային ռեսուրսներ չլինեն:

Mininet-ը թողարկվում է BSD Open Source լիցենզիայի ներքո և ակտիվորեն մշակվում է: Յուրաքանչյուր ոք կարող է նպաստել. կա տեղեկատվություն, թե ինչպես դա անել ծրագրի պաշտոնական կայքը и պահոցում.

ns-3

Սիմուլյատոր համար իրադարձությունների դիսկրետ մոդելավորում ցանցեր։ Գործիքը ի սկզբանե նախատեսված էր որպես կրթական ծրագիր, սակայն այսօր այն օգտագործվում է SDN միջավայրերի փորձարկման համար: ns-3-ի հետ աշխատելու ուղեցույցները կարող եք գտնել այստեղ կայք՝ նախագծային փաստաթղթերով.

Կոմունալ ծրագրի առավելություններից են վարդակների և գրադարանների աջակցությունը Pcap այլ գործիքների հետ աշխատելու համար (ինչպես Wireshark-ը), ինչպես նաև արձագանքող համայնք:

Թերությունները ներառում են համեմատաբար թույլ պատկերացում: Տոպոլոգիան ցուցադրելու համար հանդիպում է NetAnim. Բացի այդ, ns-3-ը չի աջակցում բոլոր SDN կարգավորիչներին:

Թեմայի վերաբերյալ կարդալը մեր կորպորատիվ բլոգում.

OpenNet

Այս SDN էմուլյատորը կառուցված է երկու նախորդ գործիքների հիման վրա՝ Mininet և ns-3: Այն միավորում է նրանցից յուրաքանչյուրի ուժեղ կողմերը: Որպեսզի լուծումները միասին աշխատեն, OpenNet-ն օգտագործում է պարտադիր գրադարան Python-ում:

Այսպիսով, Mininet-ը OpenNet-ում պատասխանատու է OpenFlow անջատիչների նմանակման, CLI-ի և վիրտուալացման ապահովման համար: Ինչ վերաբերում է ns-3-ին, ապա այն ընդօրինակում է այն մոդելները, որոնք չկան Mininet-ում։ Գործառնական հրահանգները կարելի է գտնել GitHub-ում.Կա նաեւ լրացուցիչ հղումներ թեմայի վերաբերյալ նյութերի համար:

SDN digest - վեց բաց կոդով էմուլյատորներ
/ Px Ահա /PD

Կոնտեյներ ցանց

Սա Mininet պատառաքաղ է կիրառական բեռնարկղերի հետ աշխատելու համար: Docker կոնտեյներները գործում են որպես հյուրընկալողներ նմանակված ցանցերում: Լուծումը ստեղծվել է թույլ տալու ծրագրավորողներին փորձարկել ամպի, եզրերի, մառախուղի և NFV հաշվարկների հետ: Համակարգն արդեն օգտագործվել է SONATA NFV-ի հեղինակների կողմից՝ վիրտուալացված 5G ցանցերում նվագախմբային համակարգ ստեղծելու համար։ Կոնտեյներ ցանց ա NFV էմուլացիոն հարթակի առանցքը:

Դուք կարող եք տեղադրել Containernet-ը՝ օգտագործելով ուղեցույց GitHub-ում.

Tinynet

Թեթև գրադարան, որն օգնում է ձեզ արագ ստեղծել SDN ցանցերի նախատիպեր: API գործիք, որը գրված է Go-ում, թույլ է տալիս ընդօրինակել ցանցի ցանկացած տոպոլոգիա: Գրադարանը ինքնին քիչ է «կշռում», ինչի պատճառով այն տեղադրվում և աշխատում է ավելի արագ, քան իր անալոգները: Tinynet-ը կարող է նաև ինտեգրվել Docker կոնտեյներների հետ:

Գործիքը հարմար չէ լայնածավալ ցանցերի նմանակման համար՝ սահմանափակ ֆունկցիոնալության պատճառով: Բայց դա օգտակար կլինի փոքր անձնական նախագծերի կամ արագ նախատիպերի վրա աշխատելիս:

Tinynet-ի տեղադրման օրինակներ և հրամաններ հասանելի են այստեղ GitHub պահոցներ.

MaxiNet

Այս գործիքը հնարավորություն է տալիս օգտագործել Mininet բազմաթիվ ֆիզիկական մեքենաների վրա և աշխատել լայնածավալ SDN ցանցերի հետ: Մեքենաներից յուրաքանչյուրը Աշխատողներ — գործարկում է Mininet-ը և ընդօրինակում է ընդհանուր ցանցի իր մասը: Անջատիչները և հոսթները շփվում են միմյանց հետ՝ օգտագործելով GRE- թունելներ. Նման ցանցի բաղադրիչները կառավարելու համար MaxiNet-ը տրամադրում է API:

MaxiNet-ն օգնում է ձեզ արագ չափել ցանցերը և օպտիմալացնել ռեսուրսների բաշխումը: MaxiNet-ն ունի նաև մոնիտորինգի գործառույթներ, ներկառուցված CLI և Docker-ի հետ ինտեգրվելու հնարավորություն: Այնուամենայնիվ, գործիքը չի կարող ընդօրինակել մեկ անջատիչի աշխատանքը մի քանի մեքենաների համար:

Ծրագրի սկզբնական կոդը հասանելի է GitHub-ում. Տեղադրման ուղեցույցը և արագ մեկնարկի ուղեցույցը կարելի է գտնել պաշտոնական կայքում նախագծի էջ.

Թեմայի վերաբերյալ կարդալը մեր կորպորատիվ բլոգում.

Source: www.habr.com

Добавить комментарий