ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

В បញ្ហាមុន។ ខ្ញុំបានពិពណ៌នាអំពីគ្រោងការណ៍ស្វ័យប្រវត្តិកម្មបណ្តាញ។ យោងទៅតាមមនុស្សមួយចំនួន សូម្បីតែវិធីសាស្រ្តដំបូងចំពោះបញ្ហានេះ បានតម្រៀបចេញនូវសំណួរមួយចំនួនរួចហើយ។ ហើយនេះធ្វើឱ្យខ្ញុំសប្បាយចិត្តខ្លាំងណាស់ ពីព្រោះគោលដៅរបស់យើងនៅក្នុងវដ្តនេះគឺមិនមែនដើម្បីបិទបាំង Ansible ជាមួយអក្សរ Python នោះទេ ប៉ុន្តែដើម្បីកសាងប្រព័ន្ធមួយ។

ក្របខ័ណ្ឌដូចគ្នាកំណត់លំដាប់ដែលយើងនឹងដោះស្រាយសំណួរ។
ហើយនិម្មិតបណ្តាញ ដែលបញ្ហានេះត្រូវបានឧទ្ទិសដល់នោះ មិនសមនឹងប្រធានបទ ADSM ទេ ដែលយើងវិភាគអំពីស្វ័យប្រវត្តិកម្ម។

ប៉ុន្តែសូមក្រឡេកមើលវាពីមុំផ្សេង។

សេវាកម្មជាច្រើនបានប្រើប្រាស់បណ្តាញដូចគ្នាអស់រយៈពេលជាយូរមកហើយ។ ក្នុងករណីប្រតិបត្តិករទូរគមនាគមន៍ នេះគឺ 2G, 3G, LTE, broadband និង B2B ជាឧទាហរណ៍។ ក្នុងករណី DC: ការតភ្ជាប់សម្រាប់អតិថិជនផ្សេងគ្នា អ៊ីនធឺណិត ការផ្ទុកប្លុក ការផ្ទុកវត្ថុ។

ហើយសេវាកម្មទាំងអស់ទាមទារឱ្យនៅដាច់ដោយឡែកពីគ្នាទៅវិញទៅមក។ នេះជារបៀបដែលបណ្តាញត្រួតលើគ្នាបានបង្ហាញខ្លួន។

ហើយសេវាកម្មទាំងអស់មិនចង់រង់ចាំមនុស្សម្នាក់ដើម្បីកំណត់រចនាសម្ព័ន្ធពួកវាដោយដៃទេ។ នេះជារបៀបដែលអ្នកសំដែង និង SDN បានបង្ហាញខ្លួន។

វិធីសាស្រ្តដំបូងចំពោះប្រព័ន្ធស្វ័យប្រវត្តិកម្មជាប្រព័ន្ធនៃបណ្តាញ ឬជាផ្នែកមួយរបស់វា ត្រូវបានគេយក និងអនុវត្តជាយូរមកហើយនៅកន្លែងជាច្រើន៖ VMWare, OpenStack, Google Compute Cloud, AWS, Facebook ។

នោះហើយជាអ្វីដែលយើងនឹងដោះស្រាយនៅថ្ងៃនេះ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

មាតិកា

  • ហេតុផល
  • ស័ព្ទ
  • ស្រទាប់ខាងក្រោម - បណ្តាញរាងកាយ
  • ត្រួតលើគ្នា - បណ្តាញនិម្មិត
    • លាបជាមួយ ToR
    • ត្រួតលើគ្នាពីម្ចាស់ផ្ទះ
    • ការប្រើប្រាស់ក្រណាត់ Tungsten ជាឧទាហរណ៍
      • ទំនាក់ទំនងក្នុងម៉ាស៊ីនតែមួយ
      • ការប្រាស្រ័យទាក់ទងរវាង VMs ដែលមានទីតាំងនៅលើម៉ាស៊ីនរូបវន្តផ្សេងៗគ្នា
      • ចេញទៅពិភពខាងក្រៅ

  • សំណួរញឹកញាប់
  • សេចក្តីសន្និដ្ឋាន
  • តំណមានប្រយោជន៍

ហេតុផល

ហើយចាប់តាំងពីយើងកំពុងនិយាយអំពីរឿងនេះ វាមានតម្លៃនិយាយអំពីតម្រូវការជាមុនសម្រាប់បណ្តាញនិម្មិត។ តាមពិតដំណើរការនេះមិនបានចាប់ផ្តើមកាលពីម្សិលមិញទេ។

អ្នកប្រហែលជាធ្លាប់បានឮច្រើនជាងម្តងហើយថាបណ្តាញតែងតែជាផ្នែកអសកម្មបំផុតនៃប្រព័ន្ធណាមួយ។ ហើយនេះជាការពិតក្នុងគ្រប់ន័យ។ បណ្តាញគឺជាមូលដ្ឋានដែលអ្វីៗទាំងអស់សម្រាក ហើយការធ្វើការផ្លាស់ប្តូរលើវាគឺពិបាកណាស់ - សេវាកម្មមិនអត់ឱនឱ្យវានៅពេលដែលបណ្តាញធ្លាក់ចុះ។ ជាញឹកញាប់ ការផ្តាច់ថ្នាំងតែមួយអាចដកផ្នែកធំនៃកម្មវិធី និងប៉ះពាល់ដល់អតិថិជនជាច្រើន។ នេះ​ជា​ផ្នែក​មួយ​ដែល​ក្រុម​បណ្តាញ​អាច​នឹង​ទប់ទល់​នឹង​ការ​ផ្លាស់​ប្តូរ​ណា​មួយ​ព្រោះ​ឥឡូវ​នេះ​វា​ដំណើរការ​យ៉ាង​ដូចម្ដេច (យើងប្រហែលជាមិនដឹងពីរបៀប) ប៉ុន្តែនៅទីនេះអ្នកត្រូវកំណត់រចនាសម្ព័ន្ធអ្វីដែលថ្មី ហើយវាមិនដឹងពីរបៀបដែលវានឹងប៉ះពាល់ដល់បណ្តាញ។

ដើម្បីកុំឱ្យរង់ចាំអ្នកបណ្តាញបញ្ចូល VLAN និងមិនចុះឈ្មោះសេវាកម្មណាមួយនៅលើថ្នាំងបណ្តាញនីមួយៗ មនុស្សបានបង្កើតគំនិតនៃការប្រើការត្រួតគ្នា - បណ្តាញត្រួតលើគ្នា - ដែលក្នុងនោះមានច្រើនប្រភេទ៖ GRE, IPinIP, MPLS, MPLS L2/L3VPN, VXLAN, GENEVE, MPLSoverUDP, MPLSoverGRE ជាដើម។

ការអំពាវនាវរបស់ពួកគេស្ថិតនៅក្នុងរឿងសាមញ្ញពីរ៖

  • មានតែថ្នាំងបញ្ចប់ប៉ុណ្ណោះដែលត្រូវបានតំឡើង - ថ្នាំងឆ្លងកាត់មិនចាំបាច់ប៉ះទេ។ នេះបង្កើនល្បឿនដំណើរការយ៉ាងខ្លាំង ហើយពេលខ្លះអនុញ្ញាតឱ្យអ្នកដកផ្នែកហេដ្ឋារចនាសម្ព័ន្ធបណ្តាញទាំងស្រុងចេញពីដំណើរការនៃការណែនាំសេវាកម្មថ្មី។
  • ការផ្ទុកត្រូវបានលាក់យ៉ាងជ្រៅនៅក្នុងបឋមកថា - ថ្នាំងឆ្លងកាត់មិនចាំបាច់ដឹងអ្វីទាំងអស់អំពីវា អំពីអាសយដ្ឋាននៅលើម៉ាស៊ីន ឬអំពីផ្លូវនៃបណ្តាញត្រួតលើគ្នា។ នេះមានន័យថាអ្នកត្រូវរក្សាទុកព័ត៌មានតិចជាងមុនក្នុងតារាង ដែលមានន័យថាប្រើឧបករណ៍សាមញ្ញ/ថោកជាង។

នៅក្នុងបញ្ហាដែលមិនពេញលេញទាំងស្រុងនេះ ខ្ញុំមិនមានគម្រោងវិភាគបច្ចេកវិទ្យាដែលអាចធ្វើបានទាំងអស់នោះទេ ប៉ុន្តែពណ៌នាអំពីក្របខ័ណ្ឌសម្រាប់ប្រតិបត្តិការនៃបណ្តាញត្រួតលើគ្នានៅក្នុង DCs ។

ស៊េរីទាំងមូលនឹងពណ៌នាអំពីមជ្ឈមណ្ឌលទិន្នន័យដែលមានជួរដេកនៃ rack ដូចគ្នាបេះបិទ ដែលឧបករណ៍ម៉ាស៊ីនមេដូចគ្នាត្រូវបានដំឡើង។

ឧបករណ៍នេះដំណើរការម៉ាស៊ីននិម្មិត/កុងតឺន័រ/គ្មានម៉ាស៊ីនមេ ដែលអនុវត្តសេវាកម្ម។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ស័ព្ទ

នៅក្នុងរង្វិលជុំមួយ។ ម៉ាស៊ីនមេ ខ្ញុំ​នឹង​ដាក់​ឈ្មោះ​កម្មវិធី​ដែល​អនុវត្ត​ផ្នែក​ខាង​ម៉ាស៊ីន​បម្រើ​នៃ​ការ​ទំនាក់ទំនង​ម៉ាស៊ីន​ភ្ញៀវ​-​ម៉ាស៊ីន​បម្រើ។

ម៉ាស៊ីនរាងកាយនៅក្នុង rack ត្រូវបានគេហៅថាម៉ាស៊ីនមេ មិនមាន យើង​នឹង។

ម៉ាស៊ីនរាងកាយ - កុំព្យូទ័រ x86 ត្រូវបានដំឡើងនៅក្នុង rack មួយ។ ពាក្យដែលប្រើញឹកញាប់បំផុត។ ម្ចាស់ផ្ទះ. នោះហើយជាអ្វីដែលយើងនឹងហៅវាថា "машина"ឬ ម្ចាស់ផ្ទះ.

Hypervisor - កម្មវិធីដែលដំណើរការលើម៉ាស៊ីនរូបវន្តដែលត្រាប់តាមធនធានរូបវន្តដែលម៉ាស៊ីននិម្មិតដំណើរការ។ ពេលខ្លះនៅក្នុងអក្សរសិល្ប៍ និងអ៊ិនធឺណិត ពាក្យ "អ្នកត្រួតពិនិត្យ" ត្រូវបានគេប្រើជាសទិសន័យសម្រាប់ "ម៉ាស៊ីន" ។

ម៉ាស៊ីននិម្មិត - ប្រព័ន្ធប្រតិបត្តិការដែលដំណើរការលើម៉ាស៊ីនរូបវន្តនៅលើកំពូលនៃ hypervisor ។ សម្រាប់ពួកយើងនៅក្នុងវដ្ដនេះ វាមិនមានបញ្ហាថាតើវាពិតជាម៉ាស៊ីននិម្មិត ឬគ្រាន់តែជាកុងតឺន័រនោះទេ។ ចូរហៅវាថា "ВМ«

អ្នក​ជួល គឺជាគំនិតទូលំទូលាយដែលខ្ញុំនឹងកំណត់នៅក្នុងអត្ថបទនេះថាជាសេវាកម្មដាច់ដោយឡែក ឬអតិថិជនដាច់ដោយឡែក។

ការជួលពហុ ឬ multitenancy - ការប្រើប្រាស់កម្មវិធីដូចគ្នាដោយអតិថិជន/សេវាកម្មផ្សេងគ្នា។ ក្នុងពេលជាមួយគ្នានេះ ភាពឯកោនៃអតិថិជនពីគ្នាទៅវិញទៅមកត្រូវបានសម្រេចដោយអរគុណចំពោះស្ថាបត្យកម្មកម្មវិធី ហើយមិនមែនតាមរយៈករណីដែលកំពុងដំណើរការដាច់ដោយឡែកនោះទេ។

ToR - ផ្នែកខាងលើនៃកុងតាក់ Rack - កុងតាក់ដែលបានដំឡើងនៅក្នុង rack ដែលម៉ាស៊ីនរាងកាយទាំងអស់ត្រូវបានភ្ជាប់។

បន្ថែមពីលើ ToR topology អ្នកផ្តល់សេវាផ្សេងៗអនុវត្ត End of Row (EoR) ឬ Middle of Row (ទោះបីជាវាកម្រមានដ៏កម្រ ហើយខ្ញុំមិនបានឃើញអក្សរកាត់ MoR)។

បណ្តាញក្រោម ឬបណ្តាញមូលដ្ឋាន ឬ underlay គឺជាហេដ្ឋារចនាសម្ព័ន្ធបណ្តាញរូបវន្តៈ កុងតាក់ រ៉ោតទ័រ ខ្សែ។

បណ្តាញត្រួតលើគ្នា។ ឬបណ្តាញត្រួតលើគ្នា ឬការត្រួតលើគ្នា - បណ្តាញនិម្មិតនៃផ្លូវរូងក្រោមដីដែលកំពុងដំណើរការនៅលើកំពូលនៃរូបវន្ត។

ក្រណាត់ L3 ឬក្រណាត់ IP - ការច្នៃប្រឌិតដ៏អស្ចារ្យរបស់មនុស្សជាតិដែលអនុញ្ញាតឱ្យអ្នកជៀសវាងការធ្វើម្តងទៀត STP និងការរៀន TRILL សម្រាប់ការសម្ភាសន៍។ គំនិតដែលបណ្តាញទាំងមូលរហូតដល់កម្រិតចូលប្រើគឺ L3 ទាំងស្រុង ដោយគ្មាន VLANs ហើយតាមនោះ ដែនផ្សាយដ៏ធំ។ យើងនឹងស្វែងយល់ថាតើពាក្យ "រោងចក្រ" មកពីណានៅផ្នែកបន្ទាប់។

SDN - បណ្តាញដែលបានកំណត់ដោយកម្មវិធី។ ស្ទើរតែត្រូវការការណែនាំ។ វិធីសាស្រ្តនៃការគ្រប់គ្រងបណ្តាញដែលការផ្លាស់ប្តូរទៅបណ្តាញត្រូវបានធ្វើឡើងមិនមែនដោយមនុស្សម្នាក់នោះទេប៉ុន្តែដោយកម្មវិធីមួយ។ ជាធម្មតាមានន័យថាផ្លាស់ទី Control Plane លើសពីឧបករណ៍បណ្តាញចុងក្រោយទៅកាន់ឧបករណ៍បញ្ជា។

NFV - មុខងារបណ្តាញនិម្មិត - និម្មិតឧបករណ៍បណ្តាញដែលបង្ហាញថាមុខងារបណ្តាញមួយចំនួនអាចដំណើរការក្នុងទម្រង់ម៉ាស៊ីននិម្មិត ឬកុងតឺន័រ ដើម្បីបង្កើនល្បឿននៃការអនុវត្តសេវាកម្មថ្មី រៀបចំខ្សែសង្វាក់សេវាកម្ម និងការធ្វើមាត្រដ្ឋានផ្ដេកកាន់តែងាយស្រួល។

VNF - មុខងារបណ្តាញនិម្មិត។ ឧបករណ៍និម្មិតជាក់លាក់៖ រ៉ោតទ័រ កុងតាក់ ជញ្ជាំងភ្លើង NAT IPS/IDS ជាដើម។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ឥឡូវនេះខ្ញុំកំពុងធ្វើឱ្យការពិពណ៌នាសាមញ្ញទៅការអនុវត្តជាក់លាក់មួយ ដើម្បីកុំឱ្យអ្នកអានច្រឡំច្រើនពេក។ សម្រាប់​ការ​អាន​ដែល​មាន​ការ​គិត​បន្ថែម ខ្ញុំ​សូម​យោង​គាត់​ទៅ​ផ្នែក សេចក្តីយោង. លើសពីនេះ Roma Gorge ដែលរិះគន់អត្ថបទនេះចំពោះភាពមិនត្រឹមត្រូវ សន្យាថានឹងសរសេរបញ្ហាដាច់ដោយឡែកអំពីបច្ចេកវិជ្ជានិម្មិតរបស់ម៉ាស៊ីនមេ និងបណ្តាញ កាន់តែស៊ីជម្រៅ និងយកចិត្តទុកដាក់ចំពោះព័ត៌មានលម្អិត។

បណ្តាញភាគច្រើនសព្វថ្ងៃនេះអាចបែងចែកយ៉ាងច្បាស់ជាពីរផ្នែក៖

គូសក្រោម - បណ្តាញរូបវន្តដែលមានការកំណត់រចនាសម្ព័ន្ធមានស្ថេរភាព។
លាប - អរូបីលើ Underlay សម្រាប់អ្នកជួលដាច់ដោយឡែក។

នេះជាការពិតទាំងករណីរបស់ DC (ដែលយើងនឹងវិភាគក្នុងអត្ថបទនេះ) និងសម្រាប់ ISP (ដែលយើងនឹងមិនវិភាគទេព្រោះវាត្រូវបាន SDSM) ជា​មួយ​នឹង​បណ្តាញ​សហគ្រាស​ជា​ការ​ពិត​ណាស់ ស្ថានភាព​គឺ​ខុស​គ្នា​ខ្លះ​។

រូបភាពផ្តោតលើបណ្តាញ៖

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

គូសក្រោម

ស្រទាប់ខាងក្រោមគឺជាបណ្តាញរូបវន្ត៖ ឧបករណ៍ប្តូរផ្នែករឹង និងខ្សែ។ ឧបករណ៍នៅក្រោមដីដឹងពីរបៀបដើម្បីទៅដល់ម៉ាស៊ីនរាងកាយ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

វាពឹងផ្អែកលើពិធីការស្តង់ដារ និងបច្ចេកវិទ្យា។ យ៉ាងហោចណាស់ដោយសារតែឧបករណ៍ផ្នែករឹងរហូតមកដល់សព្វថ្ងៃនេះដំណើរការលើកម្មវិធីដែលមានកម្មសិទ្ធិដែលមិនអនុញ្ញាតឱ្យសរសេរកម្មវិធី ឬអនុវត្តពិធីការផ្ទាល់ខ្លួនរបស់វា អាស្រ័យហេតុនេះ ភាពឆបគ្នាជាមួយអ្នកលក់ផ្សេងទៀត និងស្តង់ដារគឺចាំបាច់។

ប៉ុន្តែនរណាម្នាក់ដូចជា Google អាចមានលទ្ធភាពបង្កើតកុងតាក់ផ្ទាល់ខ្លួនរបស់ពួកគេ ហើយបោះបង់ពិធីការដែលទទួលយកជាទូទៅ។ ប៉ុន្តែ LAN_DC មិនមែនជា Google ទេ។

ការ​ផ្លាស់​ប្តូ​រ​ផ្នែក​ខាង​ក្រោម​គឺ​កម្រ​ដោយ​សារ​តែ​ការងារ​របស់​វា​គឺ​ជា​ការ​តភ្ជាប់ IP មូលដ្ឋាន​រវាង​ម៉ាស៊ីន​រាងកាយ​។ Underlay មិនដឹងអ្វីទាំងអស់អំពីសេវាកម្ម អតិថិជន ឬអ្នកជួលដែលកំពុងដំណើរការនៅលើវា - វាគ្រាន់តែត្រូវការចែកចាយកញ្ចប់ពីម៉ាស៊ីនមួយទៅម៉ាស៊ីនមួយទៀតប៉ុណ្ណោះ។
ស្រទាប់ខាងក្រោមអាចដូចនេះ៖

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

បណ្តាញ Underlay ត្រូវបានកំណត់រចនាសម្ព័ន្ធតាមវិធីបុរាណ៖ CLI/GUI/NETCONF។

ដោយដៃ, ស្គ្រីប, ឧបករណ៍ប្រើប្រាស់ដែលមានកម្មសិទ្ធិ។

អត្ថបទបន្ទាប់នៅក្នុងស៊េរីនឹងត្រូវបានឧទ្ទិសដល់ការគូសបញ្ជាក់លម្អិតបន្ថែមទៀត។

លាប

Overlay គឺជាបណ្តាញនិម្មិតនៃផ្លូវរូងក្រោមដីដែលលាតសន្ធឹងនៅលើកំពូលនៃ Underlay វាអនុញ្ញាតឱ្យ VMs របស់អតិថិជនម្នាក់អាចទំនាក់ទំនងគ្នាទៅវិញទៅមក ខណៈពេលដែលផ្តល់នូវភាពឯកោពីអតិថិជនផ្សេងទៀត។

ទិន្នន័យម៉ាស៊ីនភ្ញៀវត្រូវបានរុំព័ទ្ធនៅក្នុងបឋមកថាផ្លូវរូងក្រោមដីមួយចំនួនសម្រាប់ការបញ្ជូនតាមបណ្តាញសាធារណៈ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ដូច្នេះ VMs របស់អតិថិជនមួយ (សេវាកម្មមួយ) អាចទំនាក់ទំនងគ្នាទៅវិញទៅមកតាមរយៈ Overlay ដោយមិនដឹងថាតើកញ្ចប់ព័ត៌មានដំណើរការទៅផ្លូវណានោះទេ។

ការត្រួតលើគ្នាអាចជាឧទាហរណ៍ ដូចខ្ញុំបានរៀបរាប់ខាងលើ៖

  • ផ្លូវរូងក្រោមដី GRE
  • VXLAN
  • EVPN
  • L3VPN
  • ហ្សឺណែវ

បណ្តាញត្រួតលើគ្នាជាធម្មតាត្រូវបានកំណត់រចនាសម្ព័ន្ធ និងថែទាំតាមរយៈឧបករណ៍បញ្ជាកណ្តាល។ ពីវា ការកំណត់រចនាសម្ព័ន្ធ Control Plane និង Data Plane ត្រូវបានបញ្ជូនទៅកាន់ឧបករណ៍ដែលធ្វើដំណើរ និងបិទបាំងចរាចរណ៍អតិថិជន។ តិចតួច ខាងក្រោម តោះមើលរឿងនេះជាមួយឧទាហរណ៍។

បាទ នេះគឺជា SDN ក្នុងទម្រង់ដ៏បរិសុទ្ធបំផុតរបស់វា។

មានវិធីសាស្រ្តផ្សេងគ្នាជាមូលដ្ឋានពីរក្នុងការរៀបចំបណ្តាញ Overlay៖

  1. លាបជាមួយ ToR
  2. ត្រួតលើគ្នាពីម្ចាស់ផ្ទះ

លាបជាមួយ ToR

ការត្រួតលើគ្នាអាចចាប់ផ្តើមនៅកុងតាក់ចូល (ToR) ដែលឈរនៅក្នុង rack ដូចដែលកើតឡើង ឧទាហរណ៍ក្នុងករណីក្រណាត់ VXLAN ។

នេះគឺជាយន្តការសាកល្បងពេលវេលានៅលើបណ្តាញ ISP ហើយអ្នកលក់ឧបករណ៍បណ្តាញទាំងអស់គាំទ្រវា។

ទោះយ៉ាងណាក៏ដោយ ក្នុងករណីនេះ កុងតាក់ ToR ត្រូវតែអាចបំបែកសេវាកម្មផ្សេងៗរៀងៗខ្លួន ហើយអ្នកគ្រប់គ្រងបណ្តាញត្រូវតែសហការជាមួយអ្នកគ្រប់គ្រងម៉ាស៊ីននិម្មិត និងធ្វើការផ្លាស់ប្តូរ (ដោយស្វ័យប្រវត្តិ) ចំពោះការកំណត់រចនាសម្ព័ន្ធឧបករណ៍។ .

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

នៅទីនេះខ្ញុំនឹងណែនាំអ្នកអានទៅអត្ថបទអំពី VxLAN នៅលើ Habre មិត្តចាស់របស់យើង។ @bormoglotx.
ក្នុង​នេះ បទបង្ហាញជាមួយ ENOG វិធីសាស្រ្តក្នុងការកសាងបណ្តាញ DC ជាមួយនឹងក្រណាត់ EVPN VXLAN ត្រូវបានពិពណ៌នាលម្អិត។

ហើយសម្រាប់ការជ្រមុជពេញលេញបន្ថែមទៀតនៅក្នុងការពិត អ្នកអាចអានសៀវភៅរបស់ Nonka ក្រណាត់ទំនើប បើកចំហ និងអាចធ្វើមាត្រដ្ឋានបាន៖ VXLAN EVPN.

ខ្ញុំចំណាំថា VXLAN គ្រាន់តែជាវិធីសាស្ត្របំប្លែង ហើយការបញ្ចប់ផ្លូវរូងក្រោមដីអាចកើតឡើងមិនមែននៅលើ ToR ទេ ប៉ុន្តែនៅលើម៉ាស៊ីនដូចដែលកើតឡើងនៅក្នុងករណី OpenStack ឧទាហរណ៍។

ទោះជាយ៉ាងណាក៏ដោយ ក្រណាត់ VXLAN ដែលការត្រួតលើគ្នាចាប់ផ្តើមនៅ ToR គឺជាការរចនាបណ្តាញត្រួតគ្នាមួយដែលត្រូវបានបង្កើតឡើង។

ត្រួតលើគ្នាពីម្ចាស់ផ្ទះ

វិធីសាស្រ្តមួយទៀតគឺចាប់ផ្តើម និងបញ្ចប់ផ្លូវរូងក្រោមដីនៅលើម៉ាស៊ីនបញ្ចប់។
ក្នុងករណីនេះបណ្តាញ (Underlay) នៅតែមានលក្ខណៈសាមញ្ញ និងឋិតិវន្តតាមដែលអាចធ្វើទៅបាន។
ហើយម្ចាស់ផ្ទះខ្លួនឯងធ្វើរាល់ការវេចខ្ចប់ចាំបាច់។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

នេះជាការពិតណាស់តម្រូវឱ្យដំណើរការកម្មវិធីពិសេសនៅលើម៉ាស៊ីន ប៉ុន្តែវាមានតម្លៃ។

ទីមួយ ការដំណើរការម៉ាស៊ីនភ្ញៀវនៅលើម៉ាស៊ីនលីនុចគឺងាយស្រួលជាង ឬឧបមាថា សូម្បីតែអាចធ្វើទៅបាន ខណៈពេលដែលកំពុងប្តូរ អ្នកទំនងជាត្រូវងាកទៅរកដំណោះស្រាយ SDN ដែលមានកម្មសិទ្ធិ ដែលសម្លាប់គំនិតនៃអ្នកលក់ច្រើន។

ទីពីរ កុងតាក់ ToR ក្នុងករណីនេះអាចត្រូវបានទុកចោលឱ្យសាមញ្ញតាមដែលអាចធ្វើទៅបាន ទាំងពីទិដ្ឋភាពនៃយន្តហោះគ្រប់គ្រង និងយន្តហោះទិន្នន័យ។ ជាការពិតណាស់វាមិនចាំបាច់ទំនាក់ទំនងជាមួយឧបករណ៍បញ្ជា SDN ទេហើយវាក៏មិនចាំបាច់រក្សាទុកបណ្តាញ / ARPs របស់អតិថិជនដែលបានភ្ជាប់ទាំងអស់ - វាគ្រប់គ្រាន់ដើម្បីដឹងពីអាសយដ្ឋាន IP របស់ម៉ាស៊ីនដែលជួយសម្រួលដល់ការផ្លាស់ប្តូរ / ។ តារាងនាំផ្លូវ។

នៅក្នុងស៊េរី ADSM ខ្ញុំជ្រើសរើសវិធីសាស្រ្តត្រួតលើគ្នាពីម៉ាស៊ីន - បន្ទាប់មកយើងគ្រាន់តែនិយាយអំពីវាហើយយើងនឹងមិនត្រលប់ទៅរោងចក្រ VXLAN ទេ។

វាងាយស្រួលបំផុតក្នុងការមើលឧទាហរណ៍។ ហើយជាប្រធានបទសាកល្បង យើងនឹងយក OpenSource SDN platform OpenContrail ដែលឥឡូវគេស្គាល់ថាជា ក្រណាត់ Tungsten.

នៅចុងបញ្ចប់នៃអត្ថបទខ្ញុំនឹងផ្តល់គំនិតមួយចំនួនលើភាពស្រដៀងគ្នាជាមួយ OpenFlow និង OpenvSwitch ។

ការប្រើប្រាស់ក្រណាត់ Tungsten ជាឧទាហរណ៍

ម៉ាស៊ីនរាងកាយនីមួយៗមាន vRouter - រ៉ោតទ័រនិម្មិតដែលដឹងអំពីបណ្តាញដែលភ្ជាប់ទៅវា និងអតិថិជនដែលពួកគេជាកម្មសិទ្ធិ - សំខាន់គឺរ៉ោតទ័រ PE ។ សម្រាប់អតិថិជននីមួយៗ វារក្សាតារាងកំណត់ផ្លូវដាច់ដោយឡែក (អាន VRF)។ ហើយ vRouter ពិតជាធ្វើការ Overlay tunneling។

បន្តិចទៀតអំពី vRouter គឺនៅចុងបញ្ចប់នៃអត្ថបទ។

VM នីមួយៗដែលមានទីតាំងនៅលើ hypervisor ត្រូវបានភ្ជាប់ទៅ vRouter នៃម៉ាស៊ីននេះតាមរយៈ ចំណុចប្រទាក់ TAP.

ប៉ះ - ចំណុចចូលដំណើរការស្ថានីយ - ចំណុចប្រទាក់និម្មិតនៅក្នុងខឺណែលលីនុចដែលអនុញ្ញាតឱ្យមានអន្តរកម្មបណ្តាញ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ប្រសិនបើមានបណ្តាញជាច្រើននៅពីក្រោយ vRouter នោះចំណុចប្រទាក់និម្មិតត្រូវបានបង្កើតឡើងសម្រាប់ពួកវានីមួយៗ ដែលអាសយដ្ឋាន IP ត្រូវបានចាត់តាំង - វានឹងក្លាយជាអាសយដ្ឋានច្រកចេញចូលលំនាំដើម។
បណ្តាញទាំងអស់របស់អតិថិជនមួយត្រូវបានដាក់ក្នុងមួយ។ VRF (តារាងមួយ) ផ្សេងគ្នា - ទៅជាផ្សេងគ្នា។
ខ្ញុំនឹងធ្វើការបដិសេធនៅទីនេះថា មិនមែនអ្វីៗទាំងអស់គឺសាមញ្ញនោះទេ ហើយខ្ញុំនឹងផ្ញើអ្នកអានដែលចង់ដឹងចង់ឃើញទៅចុងបញ្ចប់នៃអត្ថបទ.

ដើម្បីឱ្យ vRouters អាចទំនាក់ទំនងគ្នាទៅវិញទៅមក ហើយយោងទៅតាម VMs ដែលមានទីតាំងនៅខាងក្រោយពួកគេ ពួកគេបានផ្លាស់ប្តូរព័ត៌មានផ្លូវតាមរយៈ ឧបករណ៍បញ្ជា SDN.

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ដើម្បី​ចេញ​ទៅ​ពិភព​ខាងក្រៅ មាន​ចំណុច​ចេញ​ពី​ម៉ាទ្រីស - ច្រក​បណ្ដាញ​និម្មិត VNGW - Virtual Network GateWay (រយៈពេលរបស់ខ្ញុំ).

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ឥឡូវនេះសូមមើលឧទាហរណ៍នៃការទំនាក់ទំនង - ហើយវានឹងមានភាពច្បាស់លាស់។

ទំនាក់ទំនងក្នុងម៉ាស៊ីនតែមួយ

VM0 ចង់ផ្ញើកញ្ចប់ព័ត៌មានទៅ VM2។ សូម​សន្មត​សម្រាប់​ពេល​នេះ​ថា​នេះ​គឺ​ជា​ម៉ាស៊ីន​ភ្ញៀវ​តែ​មួយ VM ។

យន្តហោះទិន្នន័យ

  1. VM-0 មានផ្លូវលំនាំដើមទៅកាន់ចំណុចប្រទាក់ eth0 របស់វា។ កញ្ចប់ត្រូវបានផ្ញើនៅទីនោះ។
    ចំណុចប្រទាក់ eth0 នេះត្រូវបានភ្ជាប់យ៉ាងពិតប្រាកដទៅនឹងរ៉ោតទ័រនិម្មិត vRouter តាមរយៈចំណុចប្រទាក់ TAP tap0 ។
  2. vRouter វិភាគថាតើចំណុចប្រទាក់ណាមួយដែលកញ្ចប់ព័ត៌មានបានមកដល់ នោះគឺជាអតិថិជនណាមួយ (VRF) ដែលវាជាកម្មសិទ្ធិ ហើយពិនិត្យមើលអាសយដ្ឋានរបស់អ្នកទទួលជាមួយនឹងតារាងនាំផ្លូវរបស់ម៉ាស៊ីនភ្ញៀវនេះ។
  3. ដោយបានរកឃើញថាអ្នកទទួលនៅលើម៉ាស៊ីនដូចគ្នាគឺនៅលើច្រកផ្សេងគ្នា vRouter គ្រាន់តែផ្ញើកញ្ចប់ព័ត៌មានទៅវាដោយគ្មានបឋមកថាបន្ថែម - សម្រាប់ករណីនេះ vRouter មានកំណត់ត្រា ARP រួចហើយ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ក្នុងករណីនេះ កញ្ចប់ព័ត៌មានមិនចូលទៅក្នុងបណ្តាញរាងកាយទេ - វាត្រូវបានបញ្ជូននៅខាងក្នុង vRouter ។

យន្តហោះគ្រប់គ្រង

នៅពេលដែលម៉ាស៊ីននិម្មិតចាប់ផ្តើម អ្នកត្រួតពិនិត្យខ្ពស់ប្រាប់វាថា:

  • អាសយដ្ឋាន IP ផ្ទាល់ខ្លួនរបស់នាង។
  • ផ្លូវលំនាំដើមគឺតាមរយៈអាសយដ្ឋាន IP របស់ vRouter នៅលើបណ្តាញនេះ។

Hypervisor រាយការណ៍ទៅ vRouter តាមរយៈ API ពិសេស៖

  • អ្វីដែលអ្នកត្រូវការដើម្បីបង្កើតចំណុចប្រទាក់និម្មិត។
  • តើបណ្តាញនិម្មិតប្រភេទណាដែលវា (VM) ត្រូវការដើម្បីបង្កើត?
  • VRF (VN) មួយណាដែលត្រូវចងវាទៅ។
  • ធាតុ ARP ឋិតិវន្តសម្រាប់ VM នេះ - ចំណុចប្រទាក់ដែលនៅពីក្រោយអាសយដ្ឋាន IP របស់វា និងអាសយដ្ឋាន MAC ដែលវាត្រូវបានភ្ជាប់ជាមួយ។

ជាថ្មីម្តងទៀត នីតិវិធីអន្តរកម្មពិតប្រាកដត្រូវបានធ្វើឱ្យសាមញ្ញសម្រាប់ជាប្រយោជន៍នៃការយល់ដឹងអំពីគំនិត

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ដូច្នេះ vRouter មើលឃើញ VMs ទាំងអស់នៃម៉ាស៊ីនភ្ញៀវមួយនៅលើម៉ាស៊ីនដែលបានផ្តល់ឱ្យជាបណ្តាញដែលបានតភ្ជាប់ដោយផ្ទាល់ ហើយអាចបញ្ជូនរវាងពួកវាដោយខ្លួនវាផ្ទាល់។

ប៉ុន្តែ VM0 និង VM1 ជាកម្មសិទ្ធិរបស់អតិថិជនផ្សេងគ្នា ហើយតាមនោះ គឺស្ថិតនៅក្នុងតារាង vRouter ផ្សេងគ្នា។

ថាតើពួកគេអាចទាក់ទងគ្នាដោយផ្ទាល់អាស្រ័យលើការកំណត់ vRouter និងការរចនាបណ្តាញ។
ឧទាហរណ៍ ប្រសិនបើ VM របស់អតិថិជនទាំងពីរប្រើអាសយដ្ឋានសាធារណៈ ឬ NAT កើតឡើងនៅលើ vRouter ខ្លួនវា នោះការបញ្ជូនបន្តទៅកាន់ vRouter អាចធ្វើទៅបាន។

នៅក្នុងស្ថានភាពផ្ទុយគ្នា វាអាចឆ្លងកាត់ចន្លោះអាសយដ្ឋានបាន - អ្នកត្រូវឆ្លងកាត់ម៉ាស៊ីនមេ NAT ដើម្បីទទួលបានអាសយដ្ឋានសាធារណៈ - នេះគឺស្រដៀងគ្នាទៅនឹងការចូលប្រើបណ្តាញខាងក្រៅដែលត្រូវបានពិភាក្សាខាងក្រោម។

ការប្រាស្រ័យទាក់ទងរវាង VMs ដែលមានទីតាំងនៅលើម៉ាស៊ីនរូបវន្តផ្សេងៗគ្នា

យន្តហោះទិន្នន័យ

  1. ការចាប់ផ្តើមគឺដូចគ្នាបេះបិទ៖ VM-0 ផ្ញើកញ្ចប់ព័ត៌មានជាមួយទិសដៅ VM-7 (172.17.3.2) តាមលំនាំដើមរបស់វា។
  2. vRouter ទទួល​វា ហើយ​ពេល​នេះ​មើល​ឃើញ​ថា​គោល​ដៅ​គឺ​នៅ​លើ​ម៉ាស៊ីន​ផ្សេង ហើយ​អាច​ចូល​បាន​តាម Tunnel0។
  3. ដំបូង វាព្យួរស្លាក MPLS ដែលកំណត់អត្តសញ្ញាណចំណុចប្រទាក់ពីចម្ងាយ ដូច្នេះ vRouter នៅផ្នែកខាងបញ្ច្រាសអាចកំណត់កន្លែងដែលត្រូវដាក់កញ្ចប់ព័ត៌មាននេះដោយមិនចាំបាច់ស្វែងរកបន្ថែម។

    ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

  4. Tunnel0 មានប្រភព 10.0.0.2 ទិសដៅ៖ 10.0.1.2 ។
    vRouter បន្ថែមបឋមកថា GRE (ឬ UDP) និង IP ថ្មីទៅកញ្ចប់ព័ត៌មានដើម។
  5. តារាងកំណត់ផ្លូវ vRouter មានផ្លូវលំនាំដើមតាមរយៈអាសយដ្ឋាន ToR1 10.0.0.1 ។ នោះហើយជាកន្លែងដែលគាត់ផ្ញើវា។

    ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

  6. ToR1 ក្នុងនាមជាសមាជិកនៃបណ្តាញ Underlay ដឹង (ឧទាហរណ៍ តាមរយៈ OSPF) ពីរបៀបដើម្បីទៅដល់ 10.0.1.2 ហើយផ្ញើកញ្ចប់ព័ត៌មានតាមផ្លូវ។ ចំណាំថា ECMP ត្រូវបានបើកនៅទីនេះ។ មានពីរបន្ទាប់នៅក្នុងរូបភាព ហើយខ្សែស្រឡាយផ្សេងគ្នានឹងត្រូវបានតម្រៀបចូលទៅក្នុងពួកវាដោយសញ្ញា។ ក្នុង​ករណី​រោង​ចក្រ​ពិត​ប្រាកដ​នឹង​មាន​រោង​ចក្រ​៤​បន្ទាប់​ទៀត​។

    ក្នុងពេលជាមួយគ្នានេះគាត់មិនចាំបាច់ដឹងពីអ្វីដែលស្ថិតនៅក្រោមបឋមកថា IP ខាងក្រៅទេ។ នោះជាការពិត នៅក្រោម IP វាអាចមាន Sandwich នៃ IPv6 លើ MPLS លើ Ethernet លើ MPLS លើ GRE ជាងភាសាក្រិច។

  7. ដូច្នោះហើយ នៅផ្នែកទទួល vRouter ដក GRE ហើយដោយប្រើស្លាក MPLS យល់ពីចំណុចប្រទាក់ណាមួយដែលកញ្ចប់ព័ត៌មាននេះគួរតែត្រូវបានផ្ញើទៅ ច្រូតវា ហើយផ្ញើវាតាមទម្រង់ដើមរបស់វាទៅអ្នកទទួល។

យន្តហោះគ្រប់គ្រង

នៅពេលអ្នកចាប់ផ្តើមរថយន្ត រឿងដដែលនេះកើតឡើងដូចបានរៀបរាប់ខាងលើ។

ហើយបូកបន្ថែមដូចខាងក្រោម៖

  • សម្រាប់អតិថិជននីមួយៗ vRouter បែងចែកស្លាក MPLS ។ នេះគឺជាស្លាកសេវាកម្ម L3VPN ដែលអតិថិជននឹងត្រូវបានបំបែកនៅក្នុងម៉ាស៊ីនដូចគ្នានេះ។

    តាមពិតស្លាក MPLS តែងតែត្រូវបានបែងចែកដោយគ្មានលក្ខខណ្ឌដោយ vRouter - បន្ទាប់ពីទាំងអស់ វាមិនត្រូវបានគេដឹងជាមុនថាម៉ាស៊ីននឹងធ្វើអន្តរកម្មជាមួយម៉ាស៊ីនផ្សេងទៀតដែលនៅពីក្រោយ vRouter ដូចគ្នា ហើយនេះទំនងជាមិនពិតនោះទេ។

  • vRouter បង្កើតការតភ្ជាប់ជាមួយឧបករណ៍បញ្ជា SDN ដោយប្រើពិធីការ BGP (ឬស្រដៀងនឹងវា - ក្នុងករណី TF នេះគឺជា XMPP 0_o) ។
  • តាមរយៈវគ្គនេះ vRouter រាយការណ៍ផ្លូវទៅកាន់បណ្តាញដែលបានតភ្ជាប់ទៅឧបករណ៍បញ្ជា SDN៖
    • អាសយដ្ឋានបណ្តាញ
    • វិធីសាស្ត្រ Encapsulation (MPLSoGRE, MPLSoUDP, VXLAN)
    • ស្លាកអតិថិជន MPLS
    • អាសយដ្ឋាន IP របស់អ្នកជា Nexthop

  • ឧបករណ៍បញ្ជា SDN ទទួលបានផ្លូវបែបនេះពី vRouters ដែលបានភ្ជាប់ទាំងអស់ ហើយឆ្លុះបញ្ចាំងពួកវាទៅអ្នកដទៃ។ នោះគឺវាដើរតួជា Route Reflector ។

រឿងដដែលនេះកើតឡើងក្នុងទិសដៅផ្ទុយ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ការលាបអាចផ្លាស់ប្តូរយ៉ាងហោចណាស់រៀងរាល់នាទី។ នេះជាអ្វីដែលកើតឡើងនៅក្នុងពពកសាធារណៈ ដែលអតិថិជនតែងតែចាប់ផ្តើម និងបិទម៉ាស៊ីននិម្មិតរបស់ពួកគេ។

ឧបករណ៍បញ្ជាកណ្តាលយកចិត្តទុកដាក់លើភាពស្មុគស្មាញទាំងអស់ក្នុងការថែរក្សាការកំណត់រចនាសម្ព័ន្ធ និងត្រួតពិនិត្យតារាងប្តូរ/នាំផ្លូវនៅលើ vRouter ។

និយាយដោយប្រយោល ឧបករណ៍បញ្ជាទាក់ទងជាមួយ vRouters ទាំងអស់តាមរយៈ BGP (ឬពិធីការស្រដៀងគ្នា) ហើយគ្រាន់តែបញ្ជូនព័ត៌មានផ្លូវ។ ជាឧទាហរណ៍ BGP មានអាសយដ្ឋាន-គ្រួសាររួចហើយ ដើម្បីបង្ហាញវិធីសាស្ត្រនៃការវេចខ្ចប់ MPLS-in-GREMPLS-in-UDP.

ក្នុងពេលជាមួយគ្នានេះ ការកំណត់រចនាសម្ព័ន្ធនៃបណ្តាញ Underlay មិនផ្លាស់ប្តូរតាមមធ្យោបាយណាមួយឡើយ ដែលតាមវិធីនេះ វាកាន់តែពិបាកក្នុងការធ្វើស្វ័យប្រវត្តិកម្ម និងងាយស្រួលក្នុងការបំបែកជាមួយនឹងចលនាឆ្គង។

ចេញទៅពិភពខាងក្រៅ

កន្លែងណាមួយដែលការក្លែងធ្វើត្រូវតែបញ្ចប់ ហើយអ្នកត្រូវចេញពីពិភពនិម្មិតចូលទៅក្នុងពិភពពិត។ ហើយអ្នកត្រូវការច្រកទូរស័ព្ទបង់ប្រាក់។

វិធីសាស្រ្តពីរត្រូវបានអនុវត្ត៖

  1. រ៉ោតទ័រផ្នែករឹងត្រូវបានដំឡើង។
  2. ឧបករណ៍ត្រូវបានបើកដំណើរការដែលអនុវត្តមុខងាររបស់រ៉ោតទ័រ (បាទ តាម SDN យើងក៏ជួបប្រទះ VNF ដែរ)។ ចូរហៅវាថាជាច្រកចេញចូលនិម្មិត។

អត្ថប្រយោជន៍នៃវិធីសាស្រ្តទីពីរគឺការធ្វើមាត្រដ្ឋានផ្ដេកថោក - មិនមានថាមពលគ្រប់គ្រាន់ទេ - យើងបានបើកដំណើរការម៉ាស៊ីននិម្មិតមួយផ្សេងទៀតដែលមានច្រកចេញចូល។ នៅលើម៉ាស៊ីនណាមួយដោយមិនចាំបាច់រកមើល racks ដោយឥតគិតថ្លៃ ឯកតាទិន្នផលថាមពល ទិញផ្នែករឹងដោយខ្លួនឯង ដឹកជញ្ជូនវា ដំឡើងវា ប្តូរវា កំណត់រចនាសម្ព័ន្ធវា ហើយបន្ទាប់មកក៏ផ្លាស់ប្តូរសមាសធាតុដែលមានកំហុសនៅក្នុងវា។

គុណវិបត្តិនៃច្រកចេញចូលនិម្មិតគឺថា ឯកតានៃរ៉ោតទ័ររូបវន្តគឺនៅតែបញ្ជាឱ្យមានកម្លាំងខ្លាំងជាងម៉ាស៊ីននិម្មិតពហុស្នូល ហើយសូហ្វវែររបស់វាដែលតម្រូវតាមមូលដ្ឋានផ្នែករឹងរបស់វា ដំណើរការកាន់តែមានស្ថេរភាព (គ្មាន) វាក៏ពិបាកផងដែរក្នុងការបដិសេធការពិតដែលថា Hardware និង Software Complex ដំណើរការយ៉ាងសាមញ្ញ ដោយទាមទារតែការកំណត់រចនាសម្ព័ន្ធប៉ុណ្ណោះ ខណៈពេលដែលការបើកដំណើរការ និងថែទាំច្រកចេញចូលនិម្មិត គឺជាកិច្ចការសម្រាប់វិស្វករខ្លាំង។

ដោយជើងម្ខាង ច្រកចេញចូលមើលបណ្តាញនិម្មិតត្រួតលើគ្នា ដូចជាម៉ាស៊ីននិម្មិតធម្មតា ហើយអាចធ្វើអន្តរកម្មជាមួយ VMs ផ្សេងទៀតទាំងអស់។ ក្នុងពេលជាមួយគ្នានេះ វាអាចបិទបណ្តាញរបស់អតិថិជនទាំងអស់ ហើយតាមនោះ អនុវត្តការនាំផ្លូវរវាងពួកគេ។

ជាមួយនឹងជើងម្ខាងទៀត ច្រកចេញចូលមើលទៅក្នុងបណ្តាញឆ្អឹងខ្នង ហើយដឹងពីរបៀបចូលទៅកាន់អ៊ីនធឺណិត។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

យន្តហោះទិន្នន័យ

នោះគឺដំណើរការមើលទៅដូចនេះ៖

  1. VM-0 ដោយបានកំណត់លំនាំដើមទៅ vRouter ដូចគ្នា ផ្ញើកញ្ចប់ព័ត៌មានដែលមានទិសដៅនៅក្នុងពិភពខាងក្រៅ (185.147.83.177) ទៅចំណុចប្រទាក់ eth0 ។
  2. vRouter ទទួលបានកញ្ចប់ព័ត៌មាននេះ ហើយរកមើលអាសយដ្ឋានគោលដៅនៅក្នុងតារាងនាំផ្លូវ - ស្វែងរកផ្លូវលំនាំដើមតាមរយៈច្រកទ្វារ VNGW1 តាមរយៈផ្លូវរូងក្រោមដី 1។
    គាត់ក៏មើលឃើញថានេះគឺជាផ្លូវរូងក្រោមដី GRE ដែលមាន SIP 10.0.0.2 និង DIP 10.0.255.2 ហើយគាត់ក៏ត្រូវភ្ជាប់ស្លាក MPLS របស់អតិថិជននេះជាមុន ដែល VNGW1 រំពឹងទុក។
  3. vRouter ខ្ចប់កញ្ចប់ដំបូងជាមួយ MPLS, GRE និងបឋមកថា IP ថ្មី ហើយផ្ញើវាទៅ ToR1 10.0.0.1 តាមលំនាំដើម។
  4. បណ្តាញមូលដ្ឋានបញ្ជូនកញ្ចប់ព័ត៌មានទៅច្រកទ្វារ VNGW1 ។
  5. ច្រកផ្លូវ VNGW1 ដកបឋមកថាផ្លូវរូងក្រោមដី GRE និង MPLS មើលឃើញអាសយដ្ឋានទិសដៅ ពិគ្រោះតារាងផ្លូវរបស់វា និងយល់ថាវាត្រូវបានដឹកនាំទៅអ៊ីនធឺណិត ពោលគឺតាមរយៈទិដ្ឋភាពពេញ ឬលំនាំដើម។ បើចាំបាច់ ធ្វើការបកប្រែ NAT ។
  6. វាអាចមានបណ្តាញ IP ធម្មតាពី VNGW ទៅព្រំដែន ដែលវាមិនទំនងទេ។
    វាអាចមានបណ្តាញ MPLS បុរាណ (IGP+LDP/RSVP TE) អាចមានក្រណាត់ខាងក្រោយជាមួយ BGP LU ឬផ្លូវរូងក្រោមដី GRE ពី VNGW ទៅព្រំដែនតាមរយៈបណ្តាញ IP ។
    ត្រូវហើយតាមដែលអាចធ្វើបាន VNGW1 អនុវត្តការវេចខ្ចប់ចាំបាច់ ហើយបញ្ជូនកញ្ចប់ព័ត៌មានដំបូងទៅកាន់ព្រំដែន។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

ចរាចរណ៍ក្នុងទិសដៅផ្ទុយគ្នាឆ្លងកាត់ជំហានដូចគ្នាក្នុងលំដាប់ផ្ទុយ។

  1. ព្រំដែនទម្លាក់កញ្ចប់ព័ត៌មានទៅ VNGW1
  2. គាត់ដោះសំលៀកបំពាក់គាត់ មើលអាសយដ្ឋានរបស់អ្នកទទួល ហើយឃើញថាគាត់អាចចូលបានតាមរយៈផ្លូវរូងក្រោមដី Tunnel1 (MPLSoGRE ឬ MPLSoUDP)។
  3. ដូច្នោះហើយ វាភ្ជាប់ស្លាក MPLS បឋមកថា GRE/UDP និង IP ថ្មី ហើយផ្ញើវាទៅ ToR3 10.0.255.1 របស់វា។
    អាសយដ្ឋានទិសដៅផ្លូវរូងក្រោមដីគឺជាអាសយដ្ឋាន IP របស់ vRouter ដែលនៅពីក្រោយ VM គោលដៅស្ថិតនៅ - 10.0.0.2 ។
  4. បណ្តាញមូលដ្ឋានបញ្ជូនកញ្ចប់ព័ត៌មានទៅ vRouter ដែលចង់បាន។
  5. vRouter គោលដៅអាន GRE/UDP កំណត់ចំណុចប្រទាក់ដោយប្រើស្លាក MPLS ហើយផ្ញើកញ្ចប់ IP ទទេទៅកាន់ចំណុចប្រទាក់ TAP របស់វាដែលទាក់ទងនឹង eth0 នៃ VM ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

យន្តហោះគ្រប់គ្រង

VNGW1 បង្កើតសង្កាត់ BGP ជាមួយនឹងឧបករណ៍បញ្ជា SDN ដែលវាទទួលបានព័ត៌មានផ្លូវទាំងអស់អំពីអតិថិជន៖ អាសយដ្ឋាន IP មួយណា (vRouter) នៅពីក្រោយម៉ាស៊ីនភ្ញៀវណា ហើយស្លាក MPLS ណាដែលវាត្រូវបានសម្គាល់ដោយ។

ដូចគ្នានេះដែរ ខ្លួនគាត់ផ្ទាល់ជូនដំណឹងដល់ឧបករណ៍បញ្ជា SDN អំពីផ្លូវលំនាំដើមជាមួយនឹងស្លាករបស់អតិថិជននេះ ដោយបង្ហាញថាខ្លួនគាត់ជាអ្នកបន្ទាប់។ ហើយបន្ទាប់មកលំនាំដើមនេះមកដល់ vRouters ។

នៅលើ VNGW ការប្រមូលផ្តុំផ្លូវឬការបកប្រែ NAT ជាធម្មតាកើតឡើង។

ហើយ​ក្នុង​ទិសដៅ​ផ្សេង​ទៀត វា​បញ្ជូន​ផ្លូវ​សរុប​នេះ​ទៅ​វគ្គ​ដែល​មាន​ព្រំប្រទល់ ឬ Route Reflectors។ ហើយពីពួកគេ វាទទួលបានផ្លូវលំនាំដើម ឬទិដ្ឋភាពពេញ ឬអ្វីផ្សេងទៀត។

នៅក្នុងលក្ខខណ្ឌនៃការ encapsulation និងការផ្លាស់ប្តូរចរាចរណ៍ VNGW មិនខុសពី vRouter ទេ។
ប្រសិនបើអ្នកពង្រីកវិសាលភាពបន្តិច នោះអ្នកអាចបន្ថែមឧបករណ៍បណ្តាញផ្សេងទៀតទៅ VNGWs និង vRouters ដូចជា firewalls, traffic cleaning or enrichment farms, IPS ជាដើម។

ហើយដោយមានជំនួយពីការបង្កើត VRFs ជាបន្តបន្ទាប់ និងការប្រកាសផ្លូវត្រឹមត្រូវ អ្នកអាចបង្ខំចរាចរណ៍ឱ្យធ្វើរង្វិលជុំតាមដែលអ្នកចង់បាន ដែលត្រូវបានគេហៅថា Service Chaning។

នោះគឺនៅទីនេះផងដែរ ឧបករណ៍បញ្ជា SDN ដើរតួជា Route-Reflector រវាង VNGWs, vRouters និងឧបករណ៍បណ្តាញផ្សេងទៀត។

ប៉ុន្តែតាមពិត ឧបករណ៍បញ្ជាក៏បញ្ចេញព័ត៌មានអំពី ACL និង PBR (Policy Based Routing) ដែលបណ្តាលឱ្យលំហូរចរាចរណ៍នីមួយៗខុសពីផ្លូវដែលប្រាប់ពួកគេ។

ស្វ័យប្រវត្តិកម្មសម្រាប់កូនតូច។ ផ្នែកទី XNUMX (បន្ទាប់ពីសូន្យ) ។ និម្មិតបណ្តាញ

សំណួរញឹកញាប់

ហេតុអ្វីបានជាអ្នកតែងតែធ្វើការកត់សម្គាល់ GRE/UDP?

ជាការប្រសើរណាស់, ជាទូទៅ, នេះអាចនិយាយបានថាជាក់លាក់ចំពោះក្រណាត់ Tungsten - អ្នកមិនចាំបាច់ពិចារណាវាទាល់តែសោះ។

ប៉ុន្តែប្រសិនបើយើងយកវា នោះ TF ខ្លួនវា ខណៈពេលដែលនៅតែ OpenContrail បានគាំទ្រការវេចខ្ចប់ទាំងពីរ៖ MPLS នៅក្នុង GRE និង MPLS នៅក្នុង UDP ។

UDP គឺល្អព្រោះនៅក្នុងច្រកប្រភពវាងាយស្រួលណាស់ក្នុងការអ៊ិនកូដមុខងារ hash ពី IP+Proto+Port ដើមនៅក្នុងបឋមកថារបស់វា ដែលនឹងអនុញ្ញាតឱ្យអ្នកធ្វើសមតុល្យ។

ក្នុងករណី GRE, alas, មានតែផ្នែកខាងក្រៅ IP និង GRE headers ដែលដូចគ្នាសម្រាប់ចរាចរណ៍ដែលបានរុំព័ទ្ធទាំងអស់ ហើយមិនមានការនិយាយអំពីតុល្យភាពទេ - មានមនុស្សតិចណាស់ដែលអាចមើលទៅជ្រៅនៅក្នុងកញ្ចប់ព័ត៌មាន។

រហូតមកដល់ពេលខ្លះ រ៉ោតទ័រ ប្រសិនបើពួកគេដឹងពីរបៀបប្រើផ្លូវរូងក្រោមដីថាមវន្ត បានធ្វើដូច្នេះតែនៅក្នុង MPLSoGRE ហើយទើបតែថ្មីៗនេះប៉ុណ្ណោះដែលពួកគេបានរៀនប្រើ MPLSoUDP ។ ដូច្នេះហើយ យើងតែងតែត្រូវធ្វើកំណត់ចំណាំអំពីលទ្ធភាពនៃការវេចខ្ចប់ពីរផ្សេងគ្នា។

នៅក្នុងភាពយុត្តិធម៌ វាគួរឱ្យកត់សម្គាល់ថា TF គាំទ្រយ៉ាងពេញលេញនូវការតភ្ជាប់ L2 ដោយប្រើ VXLAN ។

អ្នកបានសន្យាថានឹងគូរស្របជាមួយ OpenFlow ។
ពួកគេពិតជាកំពុងស្នើសុំវា។ vSwitch ក្នុង OpenStack ដូចគ្នាធ្វើរឿងស្រដៀងគ្នាខ្លាំងណាស់ ដោយប្រើ VXLAN ដែលតាមវិធីនេះក៏មានបឋមកថា UDP ផងដែរ។

នៅក្នុង Data Plane ពួកគេធ្វើការប្រហែលដូចគ្នា យន្តហោះគ្រប់គ្រងមានភាពខុសគ្នាខ្លាំង។ Tungsten Fabric ប្រើ XMPP ដើម្បីបញ្ជូនព័ត៌មានផ្លូវទៅកាន់ vRouter ខណៈពេលដែល OpenStack ដំណើរការ Openflow ។

តើអ្នកអាចប្រាប់ខ្ញុំបន្ថែមបន្តិចអំពី vRouter បានទេ?
វាត្រូវបានបែងចែកជាពីរផ្នែក៖ vRouter Agent និង vRouter Forwarder ។

ទីមួយដំណើរការនៅក្នុង User Space នៃ host OS ហើយទំនាក់ទំនងជាមួយឧបករណ៍បញ្ជា SDN ផ្លាស់ប្តូរព័ត៌មានអំពីផ្លូវ, VRFs និង ACLs ។

ទីពីរអនុវត្ត Data Plane - ជាធម្មតានៅក្នុង Kernel Space ប៉ុន្តែក៏អាចដំណើរការលើ SmartNICs ផងដែរ - network cards with CPU and a programmable switching chip ដាច់ដោយឡែកដែលអនុញ្ញាតឱ្យអ្នកដកបន្ទុកចេញពី CPU របស់ម៉ាស៊ីន host និងធ្វើឱ្យបណ្តាញកាន់តែលឿននិងច្រើនទៀត។ អាចទស្សន៍ទាយបាន។

សេណារីយ៉ូមួយទៀតដែលអាចកើតមានគឺថា vRouter គឺជាកម្មវិធី DPDK នៅក្នុង User Space ។

ភ្នាក់ងារ vRouter ផ្ញើការកំណត់ទៅ vRouter Forwarder ។

តើបណ្តាញនិម្មិតជាអ្វី?
ខ្ញុំបានរៀបរាប់នៅដើមអត្ថបទអំពី VRF ដែលភតិកៈនីមួយៗត្រូវបានចងភ្ជាប់ទៅនឹង VRF ផ្ទាល់ខ្លួនរបស់គាត់។ ហើយប្រសិនបើនេះគឺគ្រប់គ្រាន់សម្រាប់ការយល់ដឹងលើផ្ទៃខាងលើនៃប្រតិបត្តិការនៃបណ្តាញត្រួតស៊ីគ្នានោះ នៅការបញ្ជាក់បន្ទាប់ទៀត ចាំបាច់ត្រូវធ្វើការបំភ្លឺ។

ជាធម្មតានៅក្នុងយន្តការនិម្មិត អង្គភាពបណ្តាញនិម្មិត (អ្នកអាចចាត់ទុកថានេះជានាមត្រឹមត្រូវ) ត្រូវបានណែនាំដាច់ដោយឡែកពីអតិថិជន/អ្នកជួល/ម៉ាស៊ីននិម្មិត ដែលជារឿងឯករាជ្យទាំងស្រុង។ ហើយបណ្តាញនិម្មិតនេះអាចត្រូវបានភ្ជាប់រួចហើយតាមរយៈចំណុចប្រទាក់ទៅកាន់អ្នកជួលម្នាក់ ទៅម្នាក់ទៀត ទៅពីរនាក់ ឬកន្លែងណាក៏បាន។ ដូច្នេះ ជាឧទាហរណ៍ ខ្សែសង្វាក់សេវាកម្មត្រូវបានអនុវត្តនៅពេលដែលចរាចរណ៍ត្រូវការឆ្លងកាត់ថ្នាំងជាក់លាក់ក្នុងលំដាប់ដែលត្រូវការ ដោយគ្រាន់តែបង្កើត និងភ្ជាប់បណ្តាញនិម្មិតតាមលំដាប់ត្រឹមត្រូវ។

ដូច្នេះ ដូចនេះ មិនមានការឆ្លើយឆ្លងដោយផ្ទាល់រវាងបណ្តាញនិម្មិត និងអ្នកជួលទេ។

សេចក្តីសន្និដ្ឋាន

នេះ​ជា​ការ​ពិពណ៌នា​ដ៏​ស្រើបស្រាល​នៃ​ប្រតិបត្តិការ​នៃ​បណ្តាញ​និម្មិត​ដែល​មាន​ការ​ត្រួត​គ្នា​ពី​ម៉ាស៊ីន និង​ឧបករណ៍​បញ្ជា SDN។ ប៉ុន្តែមិនថាកម្មវិធីនិម្មិតនិម្មិតអ្វីដែលអ្នកជ្រើសរើសថ្ងៃនេះទេ វានឹងដំណើរការតាមរបៀបស្រដៀងគ្នា មិនថាវា VMWare, ACI, OpenStack, CloudStack, Tungsten Fabric ឬ Juniper Contrail។ ពួកវានឹងខុសគ្នានៅក្នុងប្រភេទនៃ encapsulations និង headers, protocols សម្រាប់បញ្ជូនព័ត៌មានទៅកាន់ end devices network ប៉ុន្តែគោលការណ៍នៃ software-configurable overlay network ដែលដំណើរការលើបណ្តាញ underlay ដែលមានលក្ខណៈសាមញ្ញ និងឋិតិវន្តនឹងនៅដដែល។
យើងអាចនិយាយបានថាថ្ងៃនេះ SDN ផ្អែកលើបណ្តាញត្រួតលើគ្នាបានឈ្នះលើវិស័យបង្កើតពពកឯកជន។ ទោះជាយ៉ាងណាក៏ដោយ នេះមិនមែនមានន័យថា Openflow មិនមានកន្លែងនៅក្នុងពិភពទំនើបនោះទេ វាត្រូវបានគេប្រើនៅក្នុង OpenStacke និងនៅក្នុង VMWare NSX ដូចគ្នា បើតាមខ្ញុំដឹង Google ប្រើវាដើម្បីរៀបចំបណ្តាញក្រោមដី។

ខាងក្រោមនេះ ខ្ញុំបានផ្តល់នូវតំណភ្ជាប់ទៅកាន់សម្ភារៈលម្អិតបន្ថែមទៀត ប្រសិនបើអ្នកចង់សិក្សាបញ្ហានេះឱ្យកាន់តែស៊ីជម្រៅ។

ចុះ Underlay របស់យើងវិញ?

ប៉ុន្តែជាទូទៅគ្មានអ្វីទេ។ គាត់មិនបានផ្លាស់ប្តូរទាំងស្រុងទេ។ អ្វីដែលគាត់ត្រូវធ្វើនៅក្នុងករណីនៃការត្រួតលើគ្នាពីម៉ាស៊ីនគឺការធ្វើបច្ចុប្បន្នភាពផ្លូវនិង ARPs នៅពេលដែល vRouter/VNGW លេចឡើងហើយបាត់ហើយយកកញ្ចប់ព័ត៌មានរវាងពួកគេ។

ចូរយើងបង្កើតបញ្ជីតម្រូវការសម្រាប់បណ្តាញ Underlay ។

  1. អាចប្រើប្រភេទនៃពិធីការនាំផ្លូវមួយចំនួននៅក្នុងស្ថានភាពរបស់យើង - BGP ។
  2. មានកម្រិតបញ្ជូនដ៏ធំទូលាយ និយមដោយគ្មានការជាវលើស ដូច្នេះកញ្ចប់មិនត្រូវបានបាត់បង់ដោយសារការផ្ទុកលើសទម្ងន់។
  3. ការគាំទ្រ ECMP គឺជាផ្នែកសំខាន់នៃក្រណាត់។
  4. អាចផ្តល់ QoS រួមទាំងរឿងពិបាកៗដូចជា ECN ជាដើម។
  5. ការគាំទ្រ NETCONF គឺជាមូលដ្ឋានគ្រឹះសម្រាប់អនាគត។

ខ្ញុំបានលះបង់ពេលវេលាតិចតួចនៅទីនេះ ដើម្បីការងាររបស់បណ្តាញ Underlay ខ្លួនឯង។ នេះគឺដោយសារតែនៅពេលក្រោយនៅក្នុងស៊េរីខ្ញុំនឹងផ្តោតលើវាហើយយើងនឹងប៉ះលើ Overlay ក្នុងការឆ្លងកាត់។

ជាក់ស្តែង ខ្ញុំកំពុងដាក់កម្រិតយ៉ាងធ្ងន់ធ្ងរដល់ពួកយើងទាំងអស់គ្នា ដោយប្រើឧទាហរណ៍បណ្តាញ DC ដែលបានសាងសង់នៅក្នុងរោងចក្រ Cloz ជាមួយនឹងការកំណត់ IP សុទ្ធ និងការត្រួតលើគ្នាពីម៉ាស៊ីន។

ទោះជាយ៉ាងណាក៏ដោយខ្ញុំជឿជាក់ថាបណ្តាញណាមួយដែលមានការរចនាអាចត្រូវបានពិពណ៌នានៅក្នុងពាក្យផ្លូវការនិងស្វ័យប្រវត្តិ។ វាគ្រាន់តែថាគោលដៅរបស់ខ្ញុំនៅទីនេះគឺដើម្បីយល់ពីវិធីសាស្រ្តនៃស្វ័យប្រវត្តិកម្ម ហើយមិនត្រូវច្រឡំមនុស្សគ្រប់គ្នាដោយការដោះស្រាយបញ្ហាក្នុងទម្រង់ទូទៅមួយ។

ជាផ្នែកមួយនៃ ADSM, Roman Gorge និងខ្ញុំគ្រោងនឹងបោះពុម្ពផ្សាយបញ្ហាដាច់ដោយឡែកអំពីនិម្មិតនៃថាមពលកុំព្យូទ័រ និងអន្តរកម្មរបស់វាជាមួយនិម្មិតបណ្តាញ។ រក្សា​ទំនាក់ទំនង។

តំណមានប្រយោជន៍

សូមអរគុណ

  • រ៉ូម៉ាំងហ្គ័រហ្គា - អតីតម្ចាស់កម្មវិធីផតខាស់ linkmeup ហើយឥឡូវនេះជាអ្នកជំនាញក្នុងវិស័យវេទិកាពពក។ សម្រាប់មតិយោបល់ និងការកែសម្រួល។ ជាការប្រសើរណាស់, យើងកំពុងរង់ចាំសម្រាប់អត្ថបទស៊ីជម្រៅបន្ថែមទៀតរបស់គាត់អំពីនិម្មិតនាពេលអនាគតដ៏ខ្លីនេះ។
  • Alexander Shalimov - សហសេវិករបស់ខ្ញុំ និងអ្នកជំនាញក្នុងវិស័យអភិវឌ្ឍន៍បណ្តាញនិម្មិត។ សម្រាប់មតិយោបល់ និងការកែសម្រួល។
  • Valentin Sinitsyn - សហសេវិករបស់ខ្ញុំ និងអ្នកជំនាញក្នុងវិស័យក្រណាត់ Tungsten ។ សម្រាប់មតិយោបល់ និងការកែសម្រួល។
  • Artyom Chernobay - តំណភ្ជាប់អ្នកគូររូប។ សម្រាប់ KDPV ។
  • អាឡិចសាន់ឌឺលីម៉ូណូវ។ សម្រាប់ meme "automato" ។

ប្រភព: www.habr.com

បន្ថែមមតិយោបល់