Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Π’ toleo lililopita Nilielezea mfumo wa otomatiki wa mtandao. Kulingana na watu wengine, hata njia hii ya kwanza ya shida tayari imesuluhisha maswali kadhaa. Na hii inanifurahisha sana, kwa sababu lengo letu katika mzunguko sio kufunika maandishi ya Ansible na Python, lakini kujenga mfumo.

Mfumo huo huo unaweka utaratibu ambao tutashughulikia swali.
Na uboreshaji wa mtandao, ambao suala hili limejitolea, haifai hasa katika mada ya ADSM, ambapo tunachambua automatisering.

Lakini hebu tuitazame kutoka pembe tofauti.

Huduma nyingi zimekuwa zikitumia mtandao huo kwa muda mrefu. Katika kesi ya operator wa mawasiliano ya simu, hii ni 2G, 3G, LTE, broadband na B2B, kwa mfano. Katika kesi ya DC: kuunganishwa kwa wateja tofauti, mtandao, hifadhi ya kuzuia, kuhifadhi kitu.

Na huduma zote zinahitaji kutengwa kutoka kwa kila mmoja. Hivi ndivyo mitandao iliyowekelewa ilionekana.

Na huduma zote hazitaki kungoja mtu azisanidi kwa mikono. Hivi ndivyo waimbaji na SDN walionekana.

Njia ya kwanza ya otomatiki ya kimfumo ya mtandao, au tuseme sehemu yake, imechukuliwa kwa muda mrefu na kutekelezwa katika maeneo mengi: VMWare, OpenStack, Google Compute Cloud, AWS, Facebook.

Hiyo ndiyo tutashughulikia leo.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

yaliyomo

  • sababu
  • Terminology
  • Chini - mtandao wa kimwili
  • Uwekeleaji - mtandao wa kawaida
    • Wekelea kwa ToR
    • Wekelea kutoka kwa mwenyeji
    • Kutumia kitambaa cha Tungsten kama mfano
      • Mawasiliano ndani ya mashine moja ya kimwili
      • Mawasiliano kati ya VMs ziko kwenye mashine tofauti halisi
      • Toka kwa ulimwengu wa nje

  • Maswali
  • Hitimisho
  • Viungo muhimu

sababu

Na kwa kuwa tunazungumza juu ya hili, inafaa kutaja sharti la uboreshaji wa mtandao. Kwa kweli, mchakato huu haukuanza jana.

Pengine umesikia zaidi ya mara moja kwamba mtandao daima umekuwa sehemu ya ajizi zaidi ya mfumo wowote. Na hii ni kweli kwa kila maana. Mtandao ndio msingi ambao kila kitu kinategemea, na kufanya mabadiliko juu yake ni ngumu sana - huduma hazivumilii wakati mtandao umepungua. Mara nyingi, kuondoa nodi moja kunaweza kupunguza sehemu kubwa ya programu na kuathiri wateja wengi. Hii ndio sababu timu ya mtandao inaweza kupinga mabadiliko yoyote - kwa sababu sasa inafanya kazi kwa njia fulani (tunaweza hata hatujui jinsi gani), lakini hapa unahitaji kusanidi kitu kipya, na haijulikani jinsi kitaathiri mtandao.

Ili sio kungojea wanamtandao kuingiza VLAN na sio kusajili huduma zozote kwenye kila nodi ya mtandao, watu walikuja na wazo la kutumia vifuniko - mitandao ya juu - ambayo kuna anuwai kubwa: GRE, IPinIP, MPLS, MPLS L2/L3VPN, VXLAN, GENEVE, MPLSoverUDP, MPLSoverGRE, nk.

Rufaa yao iko katika mambo mawili rahisi:

  • Nodi za mwisho pekee ndizo zimesanidiwa-nodi za usafiri hazihitaji kuguswa. Hii inaharakisha mchakato, na wakati mwingine hukuruhusu kuwatenga kabisa idara ya miundombinu ya mtandao kutoka kwa mchakato wa kuanzisha huduma mpya.
  • Mzigo umefichwa ndani ya vichwa vya habari - nodi za usafiri hazihitaji kujua chochote kuhusu hilo, kuhusu kushughulikia kwenye majeshi, au kuhusu njia za mtandao wa juu. Hii ina maana kwamba unahitaji kuhifadhi maelezo machache katika meza, ambayo ina maana ya kutumia kifaa rahisi / nafuu.

Katika suala hili lisilo kamili kabisa, sina mpango wa kuchambua teknolojia zote zinazowezekana, lakini badala ya kuelezea mfumo wa uendeshaji wa mitandao ya ufunikaji katika DCs.

Mfululizo mzima utaelezea kituo cha data kinachojumuisha safu za rafu zinazofanana ambamo kifaa sawa cha seva kimewekwa.

Kifaa hiki huendesha mashine/kontena/isiyo na seva inayotekeleza huduma.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Terminology

Katika kitanzi seva Nitataja programu inayotekelezea upande wa seva ya mawasiliano ya seva ya mteja.

Mashine za kimwili katika racks huitwa seva hakuna tutafanya hivyo.

Mashine ya kimwili - Kompyuta ya x86 imewekwa kwenye rack. Neno linalotumika sana mwenyeji. Hiyo ndiyo tutaiita"mashine"Au mwenyeji.

Hypervisor - programu inayoendeshwa kwenye mashine halisi ambayo huiga rasilimali halisi ambazo Mashine za Mtandaoni huendesha. Wakati mwingine katika fasihi na mtandao neno "hypervisor" hutumiwa kama kisawe cha "mwenyeji".

Mashine ya kweli - mfumo wa uendeshaji unaoendesha kwenye mashine ya kimwili juu ya hypervisor. Kwetu sisi katika mzunguko huu, haijalishi ikiwa ni mashine pepe au kontena tu. Hebu tuite"Π’ΠœΒ«

Mpangaji ni dhana pana ambayo nitafafanua katika makala hii kama huduma tofauti au mteja tofauti.

Upangaji mwingi au multitenancy - matumizi ya programu sawa na wateja/huduma tofauti. Wakati huo huo, kutengwa kwa wateja kutoka kwa kila mmoja kunapatikana kwa shukrani kwa usanifu wa maombi, na si kwa njia ya matukio ya kukimbia tofauti.

ToR - Juu ya swichi ya Rack - kubadili imewekwa kwenye rack ambayo mashine zote za kimwili zimeunganishwa.

Kando na topolojia ya ToR, watoa huduma mbalimbali hufanya mazoezi ya Mwisho wa Safu (EoR) au Katikati ya Safu (ingawa ya mwisho ni adimu ya kudhalilisha na sijaona ufupisho wa MoR).

Mtandao wa chini au mtandao msingi au chini yake ni miundombinu ya mtandao halisi: swichi, vipanga njia, kebo.

Mtandao wa juu au weka mtandao au wekeleo - mtandao pepe wa vichuguu unaoendesha juu ya ule halisi.

Kitambaa cha L3 au kitambaa cha IP - uvumbuzi wa kushangaza wa wanadamu ambao hukuruhusu kuzuia kurudia STP na kujifunza TRILL kwa mahojiano. Wazo ambalo mtandao mzima hadi kiwango cha ufikiaji ni L3 pekee, bila VLAN na, ipasavyo, vikoa vikubwa vya utangazaji vilivyopanuliwa. Tutaangalia neno "kiwanda" linatoka wapi katika sehemu inayofuata.

SDN - Mtandao Uliofafanuliwa wa Programu. Haihitaji utangulizi kabisa. Njia ya usimamizi wa mtandao ambapo mabadiliko kwenye mtandao hayafanywa na mtu, lakini na programu. Kawaida inamaanisha kuhamisha Ndege ya Kudhibiti zaidi ya vifaa vya mtandao wa mwisho hadi kwa kidhibiti.

NFV - Uboreshaji wa Kazi ya Mtandao - uboreshaji wa vifaa vya mtandao, ikipendekeza kuwa baadhi ya kazi za mtandao zinaweza kuendeshwa kwa njia ya mashine au vyombo ili kuharakisha utekelezaji wa huduma mpya, kuandaa Mnyororo wa Huduma na uboreshaji rahisi zaidi wa usawa.

VNF - Kazi ya Mtandao Halisi. Kifaa mahususi pepe: kipanga njia, swichi, ngome, NAT, IPS/IDS, n.k.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Sasa ninarahisisha maelezo kwa makusudi kwa utekelezaji maalum, ili nisiwachanganye msomaji sana. Kwa usomaji mzuri zaidi, ninamrejelea kwenye sehemu marejeo. Kwa kuongeza, Roma Gorge, ambaye anakosoa makala hii kwa usahihi, anaahidi kuandika suala tofauti kuhusu teknolojia ya virtualization ya seva na mtandao, kwa kina zaidi na makini kwa undani.

Mitandao mingi leo inaweza kugawanywa kwa uwazi katika sehemu mbili:

Kufunikwa - mtandao wa kimwili na usanidi thabiti.
Wekelea - uondoaji juu ya Underlay kwa kuwatenga wapangaji.

Hii ni kweli kwa kesi ya DC (ambayo tutachambua katika kifungu hiki) na kwa ISP (ambayo hatutaichambua, kwa sababu tayari imefanywa. SDSM) Kwa mitandao ya biashara, bila shaka, hali ni tofauti.

Picha inayolenga mtandao:

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Kufunikwa

Chini ni mtandao halisi: swichi za maunzi na nyaya. Vifaa vilivyo chini ya ardhi vinajua jinsi ya kufikia mashine halisi.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Inategemea itifaki na teknolojia za kawaida. Si haba kwa sababu vifaa vya maunzi hadi leo vinafanya kazi kwenye programu ya umiliki ambayo hairuhusu kutayarisha chipu au kutekeleza itifaki zake yenyewe; ipasavyo, utangamano na wachuuzi wengine na uwekaji viwango unahitajika.

Lakini mtu kama Google anaweza kumudu kutengeneza swichi zake na kuachana na itifaki zinazokubalika kwa ujumla. Lakini LAN_DC si Google.

Chini hubadilika mara chache kwa sababu kazi yake ni muunganisho wa kimsingi wa IP kati ya mashine halisi. Underlay hajui chochote kuhusu huduma, wateja, au wapangaji wanaoendesha juu yake - inahitaji tu kutoa kifurushi kutoka kwa mashine moja hadi nyingine.
Underlay inaweza kuwa kama hii:

  • IPv4+OSPF
  • IPv6+ISIS+BGP+L3VPN
  • L2+TRILL
  • L2+STP

Mtandao wa Underlay umesanidiwa kwa njia ya kawaida: CLI/GUI/NETCONF.

Kwa mikono, hati, huduma za umiliki.

Nakala inayofuata katika safu itajitolea kwa safu ya chini kwa undani zaidi.

Wekelea

Uwekeleaji ni mtandao pepe wa vichuguu vilivyowekwa juu ya Underlay, huruhusu VM za mteja mmoja kuwasiliana na kila mmoja, huku kukiwa na kutengwa na wateja wengine.

Data ya mteja imeambatanishwa katika baadhi ya vichwa vya vichuguu ili kutumwa kwenye mtandao wa umma.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Kwa hivyo VM za mteja mmoja (huduma moja) zinaweza kuwasiliana kupitia Kufunika, bila hata kujua ni njia gani pakiti inachukua.

Kufunika kunaweza kuwa, kwa mfano, kama nilivyotaja hapo juu:

  • Mfereji wa GRE
  • VXLAN
  • EVPN
  • L3VPN
  • TAFADHALI

Mtandao unaowekelea kwa kawaida husanidiwa na kudumishwa kupitia kidhibiti kikuu. Kutoka kwayo, usanidi, Ndege ya Kudhibiti na Ndege ya Data huwasilishwa kwa vifaa vinavyotumia njia na kuingiza trafiki ya mteja. Kidogo chini ya Hebu tuangalie hili kwa mifano.

Ndiyo, hii ni SDN katika hali yake safi.

Kuna mbinu mbili tofauti za kimsingi za kuandaa mtandao wa Uwekeleaji:

  1. Wekelea kwa ToR
  2. Wekelea kutoka kwa mwenyeji

Wekelea kwa ToR

Uwekeleaji unaweza kuanza kwenye swichi ya ufikiaji (ToR) iliyosimama kwenye rack, kama inavyotokea, kwa mfano, katika kesi ya kitambaa cha VXLAN.

Huu ni utaratibu uliojaribiwa kwa muda kwenye mitandao ya ISP na wachuuzi wote wa vifaa vya mtandao huunga mkono.

Walakini, katika kesi hii, swichi ya ToR lazima iweze kutenganisha huduma anuwai, kwa mtiririko huo, na msimamizi wa mtandao lazima, kwa kiwango fulani, ashirikiane na wasimamizi wa mashine ya kawaida na kufanya mabadiliko (ingawa kiotomatiki) kwa usanidi wa vifaa. .

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Hapa nitamrejelea msomaji makala kuhusu VxLAN kwenye Habre rafiki yetu wa zamani @bormoglotx.
Katika hii mawasilisho na ENOG mbinu za kujenga mtandao wa DC na kitambaa cha EVPN VXLAN zimeelezwa kwa undani.

Na kwa kuzamishwa kamili zaidi katika ukweli, unaweza kusoma kitabu cha Tsiska Kitambaa cha Kisasa, Cha Wazi na Kinachoweza Kuongezeka: VXLAN EVPN.

Ninakumbuka kuwa VXLAN ni njia ya ujumuishaji tu na kukomesha vichuguu kunaweza kutokea sio kwenye ToR, lakini kwa mwenyeji, kama inavyotokea katika kesi ya OpenStack, kwa mfano.

Hata hivyo, kitambaa cha VXLAN, ambapo wekeleo huanzia kwenye ToR, ni mojawapo ya miundo iliyoimarishwa ya mtandao wa mwingiliano.

Wekelea kutoka kwa mwenyeji

Njia nyingine ni kuanza na kusitisha vichuguu kwenye wapangishaji wa mwisho.
Katika kesi hii, mtandao (Underlay) unabaki rahisi na tuli iwezekanavyo.
Na mwenyeji yenyewe hufanya encapsulation yote muhimu.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Hii bila shaka itahitaji kuendesha programu maalum kwa majeshi, lakini inafaa.

Kwanza, kuendesha mteja kwenye mashine ya Linux ni rahisi au, tuseme, hata inawezekana, wakati kwenye swichi itabidi ugeuke kwa suluhisho za wamiliki wa SDN, ambayo inaua wazo la wauzaji wengi.

Pili, swichi ya ToR katika kesi hii inaweza kushoto rahisi iwezekanavyo, kutoka kwa mtazamo wa Ndege ya Kudhibiti na Ndege ya Data. Hakika, basi haina haja ya kuwasiliana na mtawala wa SDN, na pia haina haja ya kuhifadhi mitandao / ARP za wateja wote waliounganishwa - inatosha kujua anwani ya IP ya mashine ya kimwili, ambayo hurahisisha sana kubadili / meza za kuelekeza.

Katika mfululizo wa ADSM, ninachagua mbinu ya kuingiliana kutoka kwa mwenyeji - basi tunazungumza tu juu yake na hatutarudi kwenye kiwanda cha VXLAN.

Ni rahisi zaidi kuangalia mifano. Na kama somo la majaribio tutachukua jukwaa la OpenSource SDN OpenContrail, ambalo sasa linajulikana kama Kitambaa cha Tungsten.

Mwisho wa kifungu nitatoa maoni kadhaa juu ya mlinganisho na OpenFlow na OpenvSwitch.

Kutumia kitambaa cha Tungsten kama mfano

Kila mashine ya kimwili ina vRouter - kipanga njia pepe kinachojua kuhusu mitandao iliyounganishwa kwayo na wateja wao ni wa - kimsingi kipanga njia cha PE. Kwa kila mteja, hudumisha jedwali la uelekezaji lililotengwa (soma VRF). Na vRouter kweli hufanya Overlay tunnel.

Zaidi kidogo juu ya vRouter iko mwishoni mwa kifungu.

Kila VM iliyo kwenye hypervisor imeunganishwa kwenye vRouter ya mashine hii kupitia Kiolesura cha TAP.

TAP - Kituo cha Ufikiaji wa Kituo - kiolesura cha mtandaoni kwenye kinu cha Linux kinachoruhusu mwingiliano wa mtandao.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Ikiwa kuna mitandao kadhaa nyuma ya vRouter, basi interface ya kawaida imeundwa kwa kila mmoja wao, ambayo anwani ya IP imepewa - itakuwa anwani ya lango la msingi.
Mitandao yote ya mteja mmoja imewekwa katika moja Ugani wa VRF (meza moja), tofauti - kwa tofauti.
Nitatoa kanusho hapa kwamba sio kila kitu ni rahisi sana, na nitamtuma msomaji mdadisi hadi mwisho wa kifungu..

Ili vRouters waweze kuwasiliana na kila mmoja, na ipasavyo VMs ziko nyuma yao, wanabadilishana habari za uelekezaji kupitia. Kidhibiti cha SDN.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Ili kutoka katika ulimwengu wa nje, kuna sehemu ya kutoka kutoka kwa tumbo - lango la mtandao pepe VNGW - Virtual Network GateWay (muda wangu).

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Sasa hebu tuangalie mifano ya mawasiliano - na kutakuwa na uwazi.

Mawasiliano ndani ya mashine moja ya kimwili

VM0 inataka kutuma pakiti kwa VM2. Wacha tufikirie kwa sasa kuwa hii ni mteja mmoja wa VM.

Ndege ya Data

  1. VM-0 ina njia chaguo-msingi ya kiolesura chake cha eth0. Kifurushi kinatumwa huko.
    Kiolesura hiki eth0 kwa hakika kimeunganishwa karibu na kipanga njia pepe vRouter kupitia kiolesura cha TAP tap0.
  2. vRouter huchanganua ni kiolesura kipi pakiti ilikuja, yaani, ni ya mteja gani (VRF), na hukagua anwani ya mpokeaji kwa kutumia jedwali la kuelekeza la mteja huyu.
  3. Baada ya kugundua kuwa mpokeaji kwenye mashine hiyo hiyo yuko kwenye mlango tofauti, vRouter hutuma pakiti kwake bila vichwa vya ziada - kwa kesi hii, vRouter tayari ina rekodi ya ARP.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Katika kesi hii, pakiti haiingii mtandao wa kimwili - inapitishwa ndani ya vRouter.

Udhibiti wa Ndege

Wakati mashine ya kawaida inapoanza, hypervisor inaiambia:

  • Anwani yake ya IP.
  • Njia chaguo-msingi ni kupitia anwani ya IP ya vRouter kwenye mtandao huu.

Hypervisor inaripoti kwa vRouter kupitia API maalum:

  • Unachohitaji ili kuunda kiolesura cha kawaida.
  • Je (VM) inahitaji kuunda mtandao wa aina gani?
  • Ambayo VRF (VN) ya kuifunga.
  • Ingizo tuli la ARP la VM hii - kiolesura ambacho kiko nyuma ya anwani yake ya IP na ni anwani gani ya MAC inahusishwa nayo.

Tena, utaratibu halisi wa mwingiliano hurahisishwa kwa ajili ya kuelewa dhana.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Kwa hivyo, vRouter huona VM zote za mteja mmoja kwenye mashine fulani kama mitandao iliyounganishwa moja kwa moja na inaweza kupitia kati yao yenyewe.

Lakini VM0 na VM1 ni za wateja tofauti na, ipasavyo, ziko kwenye jedwali tofauti za vRouter.

Ikiwa wanaweza kuwasiliana moja kwa moja inategemea mipangilio ya vRouter na muundo wa mtandao.
Kwa mfano, ikiwa VM za wateja wote wawili hutumia anwani za umma, au NAT itatokea kwenye vRouter yenyewe, basi uelekezaji wa moja kwa moja kwa vRouter unaweza kufanywa.

Katika hali tofauti, inawezekana kuvuka nafasi za anwani - unahitaji kupitia seva ya NAT ili kupata anwani ya umma - hii ni sawa na kupata mitandao ya nje, ambayo inajadiliwa hapa chini.

Mawasiliano kati ya VMs ziko kwenye mashine tofauti halisi

Ndege ya Data

  1. Mwanzo ni sawa kabisa: VM-0 hutuma pakiti yenye marudio ya VM-7 (172.17.3.2) kwa chaguo-msingi.
  2. vRouter inaipokea na wakati huu inaona kwamba lengwa lipo kwenye mashine tofauti na linaweza kufikiwa kupitia Tunnel0.
  3. Kwanza, huning'iniza lebo ya MPLS inayotambua kiolesura cha mbali, ili upande wa nyuma vRouter iweze kubainisha mahali pa kuweka pakiti hii bila utafutaji wa ziada.

    Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

  4. Tunnel0 ina chanzo 10.0.0.2, marudio: 10.0.1.2.
    vRouter inaongeza vichwa vya GRE (au UDP) na IP mpya kwenye pakiti asili.
  5. Jedwali la kuelekeza la vRouter lina njia chaguo-msingi kupitia anwani ya ToR1 10.0.0.1. Huko ndiko anakoipeleka.

    Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

  6. ToR1, kama mwanachama wa mtandao wa Underlay, anajua (kwa mfano, kupitia OSPF) jinsi ya kufikia 10.0.1.2 na kutuma pakiti kwenye njia. Kumbuka kuwa ECMP imewezeshwa hapa. Kuna mijadala miwili katika kielelezo, na nyuzi tofauti zitapangwa ndani yao kwa heshi. Kwa upande wa kiwanda halisi, kutakuwa na uwezekano zaidi wa 4 ijayo.

    Wakati huo huo, haitaji kujua ni nini kilicho chini ya kichwa cha nje cha IP. Hiyo ni, kwa kweli, chini ya IP kunaweza kuwa na sandwich ya IPv6 juu ya MPLS juu ya Ethernet juu ya MPLS juu ya GRE juu ya Kigiriki.

  7. Ipasavyo, kwa upande wa kupokea, vRouter huondoa GRE na, kwa kutumia tepe ya MPLS, inaelewa ni kiolesura kipi pakiti hii inapaswa kutumwa, kuiondoa na kuituma kwa umbo lake asilia kwa mpokeaji.

Udhibiti wa Ndege

Unapowasha gari, kitu kimoja kinatokea kama ilivyoelezwa hapo juu.

Na pamoja na yafuatayo:

  • Kwa kila mteja, vRouter hutenga lebo ya MPLS. Hii ni lebo ya huduma ya L3VPN, ambayo wateja watatenganishwa ndani ya mashine moja halisi.

    Kwa kweli, lebo ya MPLS daima imetengwa bila masharti na vRouter - baada ya yote, haijulikani mapema kwamba mashine itaingiliana tu na mashine nyingine nyuma ya vRouter sawa na hii ni uwezekano mkubwa hata si kweli.

  • vRouter huanzisha muunganisho na mtawala wa SDN kwa kutumia itifaki ya BGP (au sawa nayo - katika kesi ya TF, hii ni XMPP 0_o).
  • Kupitia kipindi hiki, vRouter inaripoti njia za mitandao iliyounganishwa kwa kidhibiti cha SDN:
    • Anwani ya mtandao
    • Mbinu ya usimbaji (MPLSoGRE, MPLSoUDP, VXLAN)
    • Lebo ya mteja wa MPLS
    • Anwani yako ya IP kama nexthop

  • Kidhibiti cha SDN hupokea njia kama hizo kutoka kwa vRouters zote zilizounganishwa na kuzionyesha kwa wengine. Hiyo ni, inafanya kazi kama Reflector ya Njia.

Kitu kimoja kinatokea katika mwelekeo tofauti.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Uwekeleaji unaweza kubadilika angalau kila dakika. Hii ni takribani kile kinachotokea katika mawingu ya umma, ambapo wateja huanza na kuzima mashine zao mara kwa mara.

Kidhibiti cha kati kinashughulikia ugumu wote wa kudumisha usanidi na ufuatiliaji wa meza za kubadili/kuelekeza kwenye vRouter.

Kwa kusema, kidhibiti huwasiliana na vRouters zote kupitia BGP (au itifaki sawa) na kupitisha maelezo ya uelekezaji kwa urahisi. BGP, kwa mfano, tayari ina Anwani-Familia ili kuwasilisha mbinu ya usimbaji MPLS-in-GRE au MPLS-katika-UDP.

Wakati huo huo, usanidi wa mtandao wa Underlay haubadilika kwa njia yoyote, ambayo, kwa njia, ni ngumu zaidi kujiendesha, na ni rahisi kuvunja na harakati mbaya.

Toka kwa ulimwengu wa nje

Mahali fulani uigaji lazima umalizike, na unahitaji kutoka katika ulimwengu pepe hadi ule halisi. Na unahitaji lango la simu ya malipo.

Mbinu mbili zinafanywa:

  1. Router ya vifaa imewekwa.
  2. Kifaa kinazinduliwa kinachotekelezea kazi za kipanga njia (ndiyo, kufuatia SDN, pia tulikutana na VNF). Wacha tuite lango la kawaida.

Faida ya njia ya pili ni scalability ya bei nafuu ya usawa - hakuna nguvu ya kutosha - tulizindua mashine nyingine ya kawaida na lango. Kwenye mashine yoyote ya kimwili, bila ya kutafuta racks za bure, vitengo, pato la nguvu, kununua vifaa yenyewe, usafirishe, usakinishe, ubadilishe, usanidi, na kisha pia ubadilishe vipengele vibaya ndani yake.

Ubaya wa lango la kawaida ni kwamba kitengo cha kipanga njia cha mwili bado ni maagizo ya nguvu zaidi kuliko mashine ya msingi ya anuwai, na programu yake, iliyoundwa kwa msingi wake wa vifaa, inafanya kazi kwa utulivu zaidi.hakuna) Pia ni vigumu kukataa ukweli kwamba tata ya vifaa na programu hufanya kazi tu, inayohitaji usanidi tu, wakati kuzindua na kudumisha lango la kawaida ni kazi kwa wahandisi wenye nguvu.

Kwa mguu mmoja, lango hutazama kwenye mtandao pepe wa Uwekeleaji, kama Mashine ya Kawaida ya Mtandaoni, na inaweza kuingiliana na VM nyingine zote. Wakati huo huo, inaweza kusitisha mitandao ya wateja wote na, ipasavyo, kutekeleza njia kati yao.

Kwa mguu wake mwingine, lango linaangalia kwenye mtandao wa uti wa mgongo na linajua jinsi ya kuingia kwenye Mtandao.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Ndege ya Data

Hiyo ni, mchakato unaonekana kama hii:

  1. VM-0, ikiwa imebadilishwa kwa vRouter sawa, hutuma pakiti yenye marudio katika ulimwengu wa nje (185.147.83.177) kwenye kiolesura cha eth0.
  2. vRouter hupokea pakiti hii na hutafuta anwani lengwa kwenye jedwali la kuelekeza - hupata njia chaguo-msingi kupitia lango la VNGW1 kupitia Tunnel 1.
    Pia anaona kuwa hii ni handaki ya GRE yenye SIP 10.0.0.2 na DIP 10.0.255.2, na pia anahitaji kwanza kuambatisha lebo ya MPLS ya mteja huyu, ambayo VNGW1 inatarajia.
  3. vRouter hupakia pakiti ya awali iliyo na MPLS, GRE na vichwa vipya vya IP na kuituma kwa ToR1 10.0.0.1 kwa chaguomsingi.
  4. Mtandao wa msingi hutoa pakiti kwenye lango la VNGW1.
  5. Lango la VNGW1 huondoa vichwa vya vichuguu vya GRE na MPLS, kuona anwani lengwa, hutazama jedwali lake la uelekezaji na kuelewa kuwa limeelekezwa kwenye Mtandao - yaani, kupitia Mwonekano Kamili au Chaguomsingi. Ikiwa ni lazima, hufanya tafsiri ya NAT.
  6. Kunaweza kuwa na mtandao wa kawaida wa IP kutoka VNGW hadi mpaka, ambayo haiwezekani.
    Kunaweza kuwa na mtandao wa kawaida wa MPLS (IGP+LDP/RSVP TE), kunaweza kuwa na kitambaa cha nyuma kilicho na BGP LU au handaki ya GRE kutoka VNGW hadi mpaka kupitia mtandao wa IP.
    Iwe hivyo, VNGW1 hufanya encapsulations muhimu na kutuma pakiti ya awali kuelekea mpaka.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Trafiki katika mwelekeo tofauti hupitia hatua sawa kwa mpangilio tofauti.

  1. Mpaka huangusha pakiti hadi VNGW1
  2. Anamvua nguo, anaangalia anwani ya mpokeaji na anaona kwamba anapatikana kupitia njia ya Tunnel1 (MPLSoGRE au MPLSoUDP).
  3. Ipasavyo, inaambatisha lebo ya MPLS, kichwa cha GRE/UDP na IP mpya na kuituma kwa ToR3 10.0.255.1 yake.
    Anwani ya kituo cha handaki ni anwani ya IP ya vRouter ambayo VM inayolengwa iko - 10.0.0.2.
  4. Mtandao wa msingi hutoa pakiti kwa vRouter inayotaka.
  5. vRouter inayolengwa inasoma GRE/UDP, huamua kiolesura kwa kutumia lebo ya MPLS na kutuma pakiti ya IP iliyo wazi kwenye kiolesura chake cha TAP kinachohusishwa na eth0 ya VM.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Udhibiti wa Ndege

VNGW1 huanzisha ujirani wa BGP na kidhibiti cha SDN, ambapo hupokea taarifa zote za uelekezaji kuhusu wateja: ni anwani ipi ya IP (vRouter) iko nyuma ya mteja gani, na ni lebo gani ya MPLS inatambulishwa nayo.

Vile vile, yeye mwenyewe humjulisha mtawala wa SDN kuhusu njia chaguo-msingi na lebo ya mteja huyu, akijionyesha kuwa ndiye anayefuata. Na kisha chaguo-msingi hii inafika kwenye vRouters.

Kwenye VNGW, ujumlishaji wa njia au tafsiri ya NAT kawaida hutokea.

Na kwa upande mwingine, hutuma njia hii iliyojumlishwa kwenye kikao na mipaka au Viakisi vya Njia. Na kutoka kwao inapokea njia chaguo-msingi au Full-View, au kitu kingine.

Kwa upande wa encapsulation na kubadilishana trafiki, VNGW sio tofauti na vRouter.
Ukipanua wigo kidogo, basi unaweza kuongeza vifaa vingine vya mtandao kwa VNGW na vRouters, kama vile ngome, kusafisha trafiki au mashamba ya uboreshaji, IPS, na kadhalika.

Na kwa usaidizi wa uundaji mfuatano wa VRF na utangazaji sahihi wa njia, unaweza kulazimisha trafiki kuelekeza jinsi unavyotaka, ambayo inaitwa Service Chaining.

Hiyo ni, hapa pia kidhibiti cha SDN hufanya kama Kiakisi Njia kati ya VNGW, vRouters na vifaa vingine vya mtandao.

Lakini kwa hakika, kidhibiti pia hutoa taarifa kuhusu ACL na PBR (Uelekezaji Kulingana na Sera), na kusababisha mtiririko wa trafiki kwenda tofauti na njia inavyowaambia.

Automation kwa wadogo. Sehemu ya kwanza (ambayo ni baada ya sifuri). Uboreshaji wa mtandao

Maswali

Kwa nini unaendelea kutoa maoni ya GRE/UDP?

Kweli, kwa ujumla, hii inaweza kusemwa kuwa maalum kwa Kitambaa cha Tungsten - sio lazima uzingatie hata kidogo.

Lakini tukiichukua, TF yenyewe, wakati bado OpenContrail, iliunga mkono maelezo yote mawili: MPLS katika GRE na MPLS katika UDP.

UDP ni nzuri kwa sababu katika Chanzo cha Bandari ni rahisi sana kusimba kazi ya hashi kutoka kwa IP+Proto+Port ya awali kwenye kichwa chake, ambayo itawawezesha kufanya kusawazisha.

Kwa upande wa GRE, ole, kuna vichwa vya nje vya IP na GRE tu, ambavyo ni sawa kwa trafiki yote iliyofunikwa na hakuna mazungumzo ya kusawazisha - watu wachache wanaweza kuangalia ndani sana ndani ya pakiti.

Hadi wakati fulani, ruta, ikiwa walijua jinsi ya kutumia vichuguu vyenye nguvu, walifanya hivyo tu katika MPLSoGRE, na hivi majuzi tu walijifunza kutumia MPLSoUDP. Kwa hiyo, sisi daima tunapaswa kuandika juu ya uwezekano wa encapsulations mbili tofauti.

Kwa haki, ni muhimu kuzingatia kwamba TF inasaidia kikamilifu muunganisho wa L2 kwa kutumia VXLAN.

Uliahidi kuchora ulinganifu na OpenFlow.
Kwa kweli wanauliza. vSwitch katika OpenStack sawa hufanya mambo sawa, kwa kutumia VXLAN, ambayo, kwa njia, pia ina kichwa cha UDP.

Katika Ndege ya Data hufanya kazi takriban sawa; Ndege ya Kudhibiti inatofautiana sana. Kitambaa cha Tungsten hutumia XMPP kutoa maelezo ya uelekezaji kwa vRouter, huku OpenStack inaendesha Openflow.

Je, unaweza kuniambia zaidi kuhusu vRouter?
Imegawanywa katika sehemu mbili: Wakala wa vRouter na vRouter Forwarder.

Ya kwanza inaendeshwa katika Nafasi ya Mtumiaji ya OS mwenyeji na inawasiliana na kidhibiti cha SDN, kubadilishana taarifa kuhusu njia, VRF na ACL.

Ya pili hutumia Data Plane - kawaida katika Kernel Space, lakini pia inaweza kukimbia kwenye SmartNICs - kadi za mtandao zilizo na CPU na chip tofauti inayoweza kubadilishwa, ambayo hukuruhusu kuondoa mzigo kutoka kwa CPU ya mashine mwenyeji, na kufanya mtandao kuwa haraka na zaidi. kutabirika.

Hali nyingine inayowezekana ni kwamba vRouter ni programu ya DPDK katika Nafasi ya Mtumiaji.

vRouter Agent hutuma mipangilio kwa vRouter Forwarder.

Mtandao wa Mtandao ni nini?
Nilitaja mwanzoni mwa makala kuhusu VRF kwamba kila mpangaji amefungwa kwa VRF yake mwenyewe. Na ikiwa hii ilikuwa ya kutosha kwa ufahamu wa juu juu wa uendeshaji wa mtandao wa overlay, basi katika iteration inayofuata ni muhimu kufanya ufafanuzi.

Kwa kawaida, katika mifumo ya uboreshaji, huluki ya Mtandao wa Mtandao (unaweza kuzingatia hii kama nomino sahihi) huletwa kando na wateja/wapangaji/mashine halisi - jambo linalojitegemea kabisa. Na Mtandao huu wa Mtandao unaweza tayari kuunganishwa kupitia miingiliano kwa mpangaji mmoja, hadi mwingine, kwa wawili, au mahali popote. Kwa hiyo, kwa mfano, Mlolongo wa Huduma unatekelezwa wakati trafiki inahitaji kupitishwa kupitia nodes fulani katika mlolongo unaohitajika, kwa kuunda na kuunganisha Mitandao ya Virtual katika mlolongo sahihi.

Kwa hivyo, kwa hivyo, hakuna mawasiliano ya moja kwa moja kati ya Mtandao wa Mtandao na mpangaji.

Hitimisho

Haya ni maelezo ya juu juu sana ya utendakazi wa mtandao pepe ulio na wekeleo kutoka kwa seva pangishi na kidhibiti cha SDN. Lakini haijalishi ni jukwaa gani la uboreshaji unaochagua leo, litafanya kazi kwa njia sawa, iwe VMWare, ACI, OpenStack, CloudStack, Tungsten Fabric au Juniper Contrail. Zitatofautiana katika aina za usimbaji na vichwa, itifaki za kupeana taarifa ili kumalizia vifaa vya mtandao, lakini kanuni ya mtandao wa kuwekelea unaoweza kusanidiwa unaoendesha juu ya mtandao wa chini ulio rahisi na tuli utabaki vile vile.
Tunaweza kusema kwamba leo SDN kulingana na mtandao wa overlay imeshinda uwanja wa kuunda wingu binafsi. Walakini, hii haimaanishi kuwa Openflow haina nafasi katika ulimwengu wa kisasa - inatumika katika OpenStacke na katika VMWare NSX sawa, nijuavyo, Google huitumia kusanidi mtandao wa chinichini.

Hapo chini nimetoa viungo vya nyenzo za kina zaidi ikiwa unataka kusoma suala hilo kwa undani zaidi.

Na vipi kuhusu Underlay wetu?

Lakini kwa ujumla, hakuna kitu. Hakubadilika njia nzima. Anachohitaji kufanya katika kesi ya kuwekelea kutoka kwa seva pangishi ni kusasisha njia na ARP kwani vRouter/VNGW huonekana na kutoweka na kubeba pakiti kati yao.

Hebu tutengeneze orodha ya mahitaji ya mtandao wa Underlay.

  1. Kuwa na uwezo wa kutumia aina fulani ya itifaki ya uelekezaji, katika hali yetu - BGP.
  2. Kuwa na upanaji wa data, ikiwezekana bila usajili zaidi, ili pakiti zisipotee kwa sababu ya upakiaji mwingi.
  3. Kusaidia ECMP ni sehemu muhimu ya kitambaa.
  4. Kuwa na uwezo wa kutoa QoS, ikiwa ni pamoja na mambo ya hila kama ECN.
  5. Kusaidia NETCONF ni msingi wa siku zijazo.

Nilitumia muda mfupi sana hapa kwa kazi ya mtandao wa Underlay yenyewe. Hii ni kwa sababu baadaye katika mfululizo nitazingatia, na tutagusa tu Overlay kwa kupita.

Ni wazi, ninatuwekea kikomo vikali sote kwa kutumia kama mfano mtandao wa DC uliojengwa katika kiwanda cha Cloz na uelekezaji safi wa IP na funika kutoka kwa mwenyeji.

Walakini, nina hakika kuwa mtandao wowote ambao una muundo unaweza kuelezewa kwa maneno rasmi na kiotomatiki. Ni kwamba lengo langu hapa ni kuelewa mbinu za automatisering, na si kuchanganya kila mtu kwa kutatua tatizo kwa fomu ya jumla.

Kama sehemu ya ADSM, Roman Gorge na mimi tunapanga kuchapisha suala tofauti kuhusu uboreshaji wa nguvu za kompyuta na mwingiliano wake na uboreshaji wa mtandao. Endelea kuwasiliana.

Viungo muhimu

Asante

  • Roman Gorga - mwenyeji wa zamani wa podcast ya linkmeup na sasa ni mtaalam katika uwanja wa majukwaa ya wingu. Kwa maoni na marekebisho. Kweli, tunangojea nakala yake ya kina zaidi juu ya uboreshaji katika siku za usoni.
  • Alexander Shalimov - mwenzangu na mtaalam katika uwanja wa maendeleo ya mtandao wa kawaida. Kwa maoni na marekebisho.
  • Valentin Sinitsyn - mwenzangu na mtaalam katika uwanja wa Tungsten Fabric. Kwa maoni na marekebisho.
  • Artyom Chernobay - kiunganishi cha mchoraji. Kwa KDPV.
  • Alexander Limonov. Kwa meme "otomatiki".

Chanzo: mapenzi.com

Kuongeza maoni