dynamic scheduling of network updates
play

Dynamic Scheduling of Network Updates Xin Jin Hongqiang - PowerPoint PPT Presentation

Dynamic Scheduling of Network Updates Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer Rexford, Roger


  1. Dynamic ¡Scheduling ¡of ¡ Network ¡Updates ¡ Xin ¡Jin ¡ Hongqiang ¡Harry ¡Liu, ¡Rohan ¡Gandhi, ¡Srikanth ¡Kandula, ¡Ratul ¡Mahajan, ¡ Ming ¡Zhang, ¡Jennifer ¡Rexford, ¡Roger ¡WaHenhofer ¡

  2. SDN: ¡Paradigm ¡ShiK ¡in ¡Networking ¡ • Direct, ¡centralized ¡updates ¡of ¡ Controller ¡ forwarding ¡rules ¡in ¡switches ¡ • Many ¡benefits ¡ – Traffic ¡engineering ¡ [B4, ¡SWAN] ¡ – Flow ¡scheduling ¡ [Hedera, ¡DevoFlow] ¡ – Access ¡control ¡ [Ethane, ¡vCRIB] ¡ – Device ¡power ¡management ¡ [ElasZcTree] ¡ 1 ¡

  3. Network ¡Update ¡is ¡Challenging ¡ • Requirement ¡1: ¡fast ¡ – The ¡agility ¡of ¡control ¡loop ¡ • Requirement ¡2: ¡consistent ¡ – No ¡congesZon, ¡no ¡blackhole, ¡no ¡loop, ¡etc. ¡ Controller ¡ Network ¡ 2 ¡

  4. What ¡is ¡Consistent ¡Network ¡Update ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F3: ¡10 ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F4: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ 3 ¡

  5. What ¡is ¡Consistent ¡Network ¡Update ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F3: ¡10 ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F4: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ Transient ¡State ¡ • Asynchronous ¡updates ¡can ¡cause ¡congesZon ¡ • Need ¡to ¡carefully ¡order ¡update ¡operaZons ¡ 4 ¡

  6. ExisZng ¡SoluZons ¡are ¡Slow ¡ • ExisZng ¡soluZons ¡are ¡staZc ¡ [ConsistentUpdate’12, ¡SWAN’13, ¡zUpdate’13] ¡ – Pre-­‑compute ¡an ¡order ¡for ¡update ¡operaZons ¡ F3 ¡ F2 ¡ StaZc ¡ Plan ¡A ¡ F4 ¡ F1 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F3: ¡10 ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F4: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ 5 ¡

  7. ExisZng ¡SoluZons ¡are ¡Slow ¡ • ExisZng ¡soluZons ¡are ¡staZc ¡ [ConsistentUpdate’12, ¡SWAN’13, ¡zUpdate’13] ¡ – Pre-­‑compute ¡an ¡order ¡for ¡update ¡operaZons ¡ F3 ¡ F2 ¡ StaZc ¡ Plan ¡A ¡ F4 ¡ F1 ¡ ¡ • Downside: ¡Do ¡not ¡adapt ¡to ¡runZme ¡condiZons ¡ – Slow ¡in ¡face ¡of ¡highly ¡variable ¡operaZon ¡compleZon ¡Zme ¡ 6 ¡

  8. OperaZon ¡CompleZon ¡Times ¡are ¡Highly ¡Variable ¡ • Measurement ¡on ¡commodity ¡switches ¡ >10x ¡ 7 ¡

  9. OperaZon ¡CompleZon ¡Times ¡are ¡Highly ¡Variable ¡ • Measurement ¡on ¡commodity ¡switches ¡ ¡ • ContribuZng ¡factors ¡ – Control-­‑plane ¡load ¡ – Number ¡of ¡rules ¡ – Priority ¡of ¡rules ¡ – Type ¡of ¡operaZons ¡ (insert ¡vs. ¡modify) ¡ 8 ¡

  10. StaZc ¡Schedules ¡can ¡be ¡Slow ¡ F1 ¡ F1 ¡ F3 ¡ F2 ¡ StaZc ¡ F2 ¡ F2 ¡ Plan ¡A ¡ F3 ¡ F3 ¡ F4 ¡ F1 ¡ F4 ¡ F4 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ Time ¡ Time ¡ F1 ¡ F1 ¡ F2 ¡ F2 ¡ F3 ¡ F2 ¡ F1 ¡ StaZc ¡ F3 ¡ F3 ¡ Plan ¡B ¡ F4 ¡ F4 ¡ F4 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ Time ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ Time ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F3: ¡10 ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ No ¡staZc ¡schedule ¡is ¡a ¡clear ¡winner ¡under ¡all ¡condiZons! ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F4: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ 9 ¡

  11. Dynamic ¡Schedules ¡are ¡AdapZve ¡and ¡Fast ¡ F3 ¡ F2 ¡ StaZc ¡ Plan ¡A ¡ F4 ¡ F1 ¡ F3 ¡ F2 ¡ Dynamic ¡ F1 ¡ Plan ¡ F4 ¡ Adapts ¡to ¡actual ¡condiZons! ¡ F3 ¡ F2 ¡ F1 ¡ StaZc ¡ Plan ¡B ¡ F4 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F3: ¡10 ¡ F3: ¡10 ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ No ¡staZc ¡schedule ¡is ¡a ¡clear ¡winner ¡under ¡all ¡condiZons! ¡ F1: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F4: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ 10 ¡

  12. Challenges ¡of ¡Dynamic ¡Update ¡Scheduling ¡ • ExponenZal ¡number ¡of ¡orderings ¡ • Cannot ¡completely ¡avoid ¡planning ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ C ¡ A ¡ A ¡ B ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ D ¡ E ¡ E ¡ F3: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ 11 ¡

  13. Challenges ¡of ¡Dynamic ¡Update ¡Scheduling ¡ • ExponenZal ¡number ¡of ¡orderings ¡ • Cannot ¡completely ¡avoid ¡planning ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ C ¡ A ¡ A ¡ B ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ D ¡ E ¡ E ¡ F3: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ F2 ¡ Deadlock ¡ 12 ¡

  14. Challenges ¡of ¡Dynamic ¡Update ¡Scheduling ¡ • ExponenZal ¡number ¡of ¡orderings ¡ • Cannot ¡completely ¡avoid ¡planning ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ C ¡ A ¡ A ¡ B ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ D ¡ E ¡ E ¡ F3: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ F1 ¡ 13 ¡

  15. Challenges ¡of ¡Dynamic ¡Update ¡Scheduling ¡ • ExponenZal ¡number ¡of ¡orderings ¡ • Cannot ¡completely ¡avoid ¡planning ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ C ¡ A ¡ A ¡ B ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ D ¡ E ¡ E ¡ F3: ¡5 ¡ F3: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ F1 ¡ F3 ¡ 14 ¡

  16. Challenges ¡of ¡Dynamic ¡Update ¡Scheduling ¡ • ExponenZal ¡number ¡of ¡orderings ¡ • Cannot ¡completely ¡avoid ¡planning ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ C ¡ A ¡ A ¡ B ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ D ¡ E ¡ E ¡ F3: ¡5 ¡ F3: ¡5 ¡ Target ¡State ¡ Current ¡State ¡ F1 ¡ F3 ¡ F2 ¡ Consistent ¡update ¡plan ¡ 15 ¡

  17. Dionysus ¡Pipeline ¡ Current ¡ Target ¡ Consistency ¡ State ¡ State ¡ Property ¡ Dependency ¡Graph ¡Generator ¡ Encode ¡valid ¡orderings ¡ Determine ¡a ¡fast ¡order ¡ Update ¡Scheduler ¡ Network ¡ 16 ¡

  18. Dependency ¡Graph ¡GeneraZon ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F3: ¡5 ¡ Current ¡State ¡ Target ¡State ¡ Dependency ¡Graph ¡Elements ¡ OperaZon ¡node ¡ Node ¡ Resource ¡node ¡(link ¡capacity, ¡switch ¡table ¡size) ¡ Path ¡node ¡ Edge ¡ Dependencies ¡between ¡nodes ¡ 17 ¡

  19. Dependency ¡Graph ¡GeneraZon ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F3: ¡5 ¡ Current ¡State ¡ Target ¡State ¡ Move ¡ F2 ¡ Move ¡ Move ¡ F1 ¡ F3 ¡ 18 ¡

  20. Dependency ¡Graph ¡GeneraZon ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F3: ¡5 ¡ Current ¡State ¡ Target ¡State ¡ Move ¡ F2 ¡ A-­‑E: ¡5 ¡ Move ¡ Move ¡ F1 ¡ F3 ¡ 19 ¡

  21. Dependency ¡Graph ¡GeneraZon ¡ F5: ¡10 ¡ F5: ¡10 ¡ C ¡ A ¡ B ¡ C ¡ A ¡ B ¡ F2: ¡5 ¡ F2: ¡5 ¡ F1: ¡5 ¡ F1: ¡5 ¡ F3: ¡5 ¡ F4: ¡5 ¡ F4: ¡5 ¡ D ¡ E ¡ D ¡ E ¡ F3: ¡5 ¡ Current ¡State ¡ Target ¡State ¡ Move ¡ F2 ¡ A-­‑E: ¡5 ¡ 5 ¡ Move ¡ Move ¡ F1 ¡ F3 ¡ 20 ¡

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend