Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20131011 MidoNet 10分クッキング

20131011 MidoNet 10分クッキング

歴史的遺物
2013/10/11 に Vyatta ユーザ会において当時の MidoNet の概要を紹介した資料。

Ryuichi Takashima

May 18, 2022
Tweet

More Decks by Ryuichi Takashima

Other Decks in Technology

Transcript

  1. Copyright ©2013 Midokura All rights reserved FAQ  SDN ੡඼͖ͬͯ

    ͍ͨΜ͚ͩͲ… ͋ɺOpenFlow ͱ͔ʁ ”No” Ͱ͸ͳ͍͚Ͳ“Yes”ͱ΋౴͑ਏ͍… աڈʹ࢖ͬͯͨ͜ͱ΋͋ΔΒ͍͠…
  2. Copyright ©2013 Midokura All rights reserved Answer  MidoNet ͸ɺ

    Server-side Edge Overlay ͳ IaaS ޲͚ͷωοτϫʔΫελοΫ Ͱ͢
  3. Copyright ©2013 Midokura All rights reserved Server-side Edge overlay ?

     ֓೦ਤ Virtual Switch VM VM VM Virtual Switch VM VM VM Virtual Switch VM VM VM Virtual Switch VM VM VM Virtual Switch VM VM VM Virtual Switch VM VM VM Physical Network Ø  NVGRE, VXLAN ౳ɺIP based tunneling Λར༻ Ø  Underlay Network ͸ IP Reachability ͑͋͞Ε͹ྑ͍ Ø  Ͳ͏Τοδʹ৘ใΛಉظ͢Δ͔͕݁ߏϛι
  4. Copyright ©2013 Midokura All rights reserved Summary  VM Upstream

    ISP vPort vPort vPort vPort VM VM vPort vPort VM VM vPort Tenant A Router Tenant A Bridge 1 Tenant A Bridge 2 Tenant B Bridge 1 Tenant B Router The Internet Α͋͘ΔIaaS ͷ࿦ཧτϙϩδ BGP uplink Provider Router Upstream ISP The Internet VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB MidoNet ͷ෺ཧτϙϩδ BGP uplink API Node Cloud Mgmt System Only requirement is an IP reachability!  ݸʑͷNWػثͰ ͸ͳ͘ɺ࿦ཧτϙ ϩδશମΛΤϛϡ Ϩʔτ
  5. Copyright ©2013 Midokura All rights reserved MidoNet Implementation Deep-dive 

    Upstream ISP The Internet VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB MidoNet ͷίϯϙʔωϯτ BGP uplink API Node Cloud Mgmt System ϗετOS্ͷOVS kernel module Data path ϗετOSͰಈ࡞͢Δϓϩηεɻ NSDB͔ΒΦϯσϚϯυͰඞཁͳ৘ใ Λμ΢ϯϩʔυ͠τϙϩδΤϛϡϨʔ γϣϯΛ࣮ࢪɻ ݁ՌΛ Data path ʹϓϩάϥϛϯάɻ Agent Zookeeper, Cassandra. τϙϩδ৘ใͷอ࣋ɺIP-MAC tableɺ ઀ଓϗετ৘ใ౳ͷશମ৘ใΛ࣋ͭ ʮίϯτϩʔϥʯͰ͸ͳ͘ʮσʔλϕ ʔεʯɻϓογϡ഑৴ΛۃྗߦΘͳ͍ NSDB
  6. Copyright ©2013 Midokura All rights reserved How does it work

    ? / For 1st packet   Upstream ISP The Internet VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB BGP uplink API Node Cloud Mgmt System VM sends packet and OVS receives it. 11 If OVS doesn’t has an entry matches with the packet, then 22 11 MidoNet Agent checks local topology data. If it doesn’t have enough data for it, then 33 33 33 44 MidoNet Agent downloads information that is necessary for topology emulation of the packet. 44 44
  7. Copyright ©2013 Midokura All rights reserved How does it work

    ? / For 1st packet   Upstream ISP The Internet VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB BGP uplink API Node Cloud Mgmt System MidoNet Agent simulates the topology and programs local OVS data-path according to the result. 55 Local OVS modifies header, encapsulates GRE and forwards it. 66 55 Remote OVS decaps GRE and forwards it to destination VM. 77 66 77
  8. Copyright ©2013 Midokura All rights reserved 1. East-West τϥϑΟοΫͷ࠷దԽ 

    ैདྷͷVirtual Router Upstream ISP Upstream ISP Back-end Network Upstream ISP Upstream ISP Back-end Network NetworkػثΛVMͱͯ͠ΤϛϡϨʔγϣϯ Network TopologyશମΛΤϛϡϨʔγϣϯ MidoNet Drop Drop Drop Drop IngressͰͷτϙϩδΤϛϡϨʔτʹΑΓɺ໨త஍ͱͳΔϗετ ʹ௚઀సૹ͢Δҝɺ”ߦͬͯདྷ͍” ͕ൃੜ͠ͳ͍ 
  9. Copyright ©2013 Midokura All rights reserved 2. ϘτϧωοΫͱͳΔϧʔλVMͷഉআ  Upstream

    ISP Upstream ISP Back-end Network τϙϩδΤϛϡϨʔγϣϯʹΑΓΤοδͰ ෼ࢄॲཧ͢ΔҝɺϧʔλVM͕ଘࡏ͠ͳ͍ ֤MidoNet Agent ͕ IP-MACରԠ දΛ࣋ͪɺಉҰϗετ಺VM͔ ΒͷARPʹ୅ཧԠ౴ VMͰ͸ͳ͘ɺϗετOSͰͷϑΥϫʔσΟϯάॲཧ
  10. Copyright ©2013 Midokura All rights reserved 3. εέʔϥϏϦςΟ  

      Upstream ISP VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB BGP uplink Cloud Mgmt System API Node VLANΛར༻͠ͳ͍τϙϩδΤϛϡϨ ʔγϣϯͷҝɺ4,096 ͷนʹ੍ݶ͞Ε ͣεέʔϧΞ΢τ͕Մೳ શମͷMAC table ͸෼ࢄDB্ʹ֨ೲ͞ ΕΔҝɺεέʔϧΞ΢τՄೳ ֤αʔόͷσʔλύεʹϓϩάϥϛϯά͞ ΕΔ΋ͷ͸ऩ༰͢ΔVMͷ௨৴ͷΈ
  11. Copyright ©2013 Midokura All rights reserved 4. Underlay Network ͷ؆қੑ

      Upstream ISP VM MidoNet Compute Node VM MidoNet Compute Node VM MidoNet Compute Node MidoNet Gateway Node MidoNet Gateway Node Back-end Network Network State Node NW State DB NW State DB NW State DB BGP uplink Cloud Mgmt System API Node ֤ MidoNet Agent ؒ௨৴͸ GRE Ͱ ΧϓηϧԽ ˠ IP Reachability ͑͋͞Ε͹Α͍ ˠ IGP Λ༻͍ͨ L3 εέʔϧΞ΢τ ͕ར༻Մೳ