jointly optimal routing caching for arbitrary network
play

Jointly Optimal Routing & Caching for Arbitrary Network - PowerPoint PPT Presentation

Jointly Optimal Routing & Caching for Arbitrary Network Topologies Stratis Ioannidis and Edmund Yeh ICN 2017 A Caching Network Webserver User ? User nodes generate requests for content items with certain arrival rates Jointly Optimal


  1. Jointly Optimal Routing & Caching for Arbitrary Network Topologies Stratis Ioannidis and Edmund Yeh ICN 2017

  2. A Caching Network Webserver User λ ? User nodes generate requests for content items with certain arrival rates Jointly Optimal Routing and Caching 1

  3. A Caching Network Webserver ? User λ ? Requests are routed towards a designated server Jointly Optimal Routing and Caching 2

  4. A Caching Network Webserver ? User λ ? Nodes have caches with finite capacities Jointly Optimal Routing and Caching 3

  5. A Caching Network Webserver ? User λ ? Routers have caches with finite capacities Jointly Optimal Routing and Caching 4

  6. A Caching Network Webserver ? User λ ? Requests terminate early upon a cache hit Jointly Optimal Routing and Caching 5

  7. Goal Webserver 1 10 6 6 1 10 3 4 5 7 ? 3 4 2 3 2 10 User Design network so that expected routing costs are minimized. Jointly Optimal Routing and Caching 6

  8. Joint Optimization Webserver Caching decisions Routing decisions ? User λ ? q Both caching and routing decisions are part of optimization Jointly Optimal Routing and Caching 7

  9. Additional Challenge Webserver Caching decisions Routing decisions ? User Challenge: Caching and routing algorithm should be q adaptive , and q distributed. Jointly Optimal Routing and Caching 8

  10. Fixed Routing Setting [Ioannidis, Yeh, SIGMETRICS 2016] Webserver Caching decisions ? User q Routes are given, e.g.: q determined by BGP, OSPF, etc. q Route to Nearest Server (RNS) q Only caching decisions are part of optimization Jointly Optimal Routing and Caching 9

  11. Challenges/Questions q Should we jointly optimize caching and routing? Is RNS sufficient? q Can we devise algorithms that: 1) have performance guarantees ? 2) are distributed and adaptive ? Jointly Optimal Routing and Caching 10

  12. Our Contributions q Mathematical model for joint optimization of routing & caching q Source-routing q Hop-by-hop q RNS is arbitrarily suboptimal q A distributed , adaptive algorithm within 1-1/e factor from optimal q Evaluation over 14 network topologies: q Routing costs reduced by factor 10 3 compared to RNS. Jointly Optimal Routing and Caching 11

  13. Overview q Model q Main Results q RNS is suboptimal q Offline Algorithm q Distributed, Adaptive Algorithm q Evaluation Jointly Optimal Routing and Caching 12

  14. Overview q Model q Main Results q RNS is suboptimal q Offline Algorithm q Distributed, Adaptive Algorithm q Evaluation Jointly Optimal Routing and Caching 13

  15. Model: Network G ( V, E ) Network represented as a directed , bi-directional graph G ( V, E ) Jointly Optimal Routing and Caching 14

  16. Model: Edge Costs G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E 5 ( u, v ) ∈ E Each edge has a cost/weight w uv Jointly Optimal Routing and Caching 15

  17. Model: Node Caches G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V Node has a cache with capacity v ∈ V c v ∈ N Jointly Optimal Routing and Caching 16

  18. Model: Cache Contents G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Items stored and requested form the item catalog C Jointly Optimal Routing and Caching 17

  19. Model: Cache Contents G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C i ∈ C For and , let v ∈ V ( i if stores 1 , v x vi = o.w. 0 , Caching Strategy of : v ∈ V X x v = [ x vi ] i ∈ C Then, for all , x vi ≤ c v v ∈ V i ∈ C Jointly Optimal Routing and Caching 18

  20. Model: Designated Sources G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C S i ⊂ V i ∈ C For each and , there exists a set of nodes (the designated servers of ) that permanently store . i i I.e., if then v ∈ S i x vi = 1 Jointly Optimal Routing and Caching 19

  21. Model: Requests G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C ? s ( i, s ) A request is a pair such that: q i is an item in C s ∈ V q is the source node of the request. Jointly Optimal Routing and Caching 20

  22. Model: Demand G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C Demand: λ ( i,s ) , ( i, s ) ∈ R ? s λ ? ( i, s ) Demand R : set of all requests λ ( i,s ) Request arrival process is Poisson with rate Jointly Optimal Routing and Caching 21

  23. Routing Variant I : Source Routing ? ? ? User Source node generating request selects entire path that request should follow. Jointly Optimal Routing and Caching 22

  24. Routing Variant II: Hop-By-Hop Routing ? ? ? ? User Each node selects only next-hop in the path. Jointly Optimal Routing and Caching 23

  25. Source Routing: Routing Strategy G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C Demand: λ ( i,s ) , ( i, s ) ∈ R Set of possible paths: P ( i,s ) ? s ( i, s ) P ( i,s ) For each request let be a set of possible paths the request can S i follow do a node in Jointly Optimal Routing and Caching 24

  26. Source Routing: Routing Strategy G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C Demand: λ ( i,s ) , ( i, s ) ∈ R Set of possible paths: P ( i,s ) Routing strategy: r ( i,s ) = [ r ( i,s ) ,p ] p ∈ P ( i,s ) ? s P ( i,s ) Routing strategy : probability distribution over r ( i,s ) X r ( i,s ) ,p = 1 r ( i,s ) ,p ≥ 0 , p ∈ P ( i,s ) p ∈ P ( i,s ) Jointly Optimal Routing and Caching 25

  27. Source Routing: Routing Costs G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } Caching strategy: x v = [ x vi ] i ∈ C Demand: λ ( i,s ) , ( i, s ) ∈ R Set of possible paths: P ( i,s ) Routing strategy: r ( i,s ) = [ r ( i,s ) ,p ] p ∈ P ( i,s ) ? s P | p | − 1 Q k P k 0 =1 (1 − x p k 0 i ) Expected routing cost: p ∈ P ( i,s ) r ( i,s ) ,p k =1 w p k +1 p k P | p | − 1 P Upper bound: k =1 w p k +1 p k p ∈ P ( i,s ) h i P | p | − 1 Q k Caching Gain: P 1 − r ( i,s ) ,p k 0 =1 (1 − x p k 0 i ) k =1 w p k +1 p k p ∈ P ( i,s ) Jointly Optimal Routing and Caching 26

  28. Caching Gain Maximization G ( V, E ) Edge costs: w uv , ( u, v ) ∈ E Node capacities: c v , v ∈ V C = { } 6 Caching strategy: x v = [ x vi ] i ∈ C 3 4 Demand: λ ( i,s ) , ( i, s ) ∈ R 5 R : demand ? Set of possible paths: P ( i,s ) s Routing strategy: r ( i,s ) = [ r ( i,s ) ,p ] p ∈ P ( i,s ) MaxCG | p | − 1 " k # X X X Y Maximize: F ( r, X ) = 1 − r ( i,s ) ,p (1 − x p k 0 i ) λ ( i,s ) w p k +1 p k p ∈ P ( i,s ) k =1 k 0 =1 ( i,s ) ∈ R X X r ( i,s ) ,p = 1 for all Subject to: x vi = c v for all v ∈ V ( i, s ) ∈ R p ∈ P ( i,s ) i ∈ C r ( i,s ) ,p ∈ [0 , 1] v ∈ S i x vi = 1 for all and i ∈ C for all p ∈ P ( i,s ) , ( i, s ) ∈ R x vi ∈ { 0 , 1 } for all and v ∈ V i ∈ C Jointly Optimal Routing and Caching 27

  29. Fixed Routing Setting (e.g., RNS) Caching decisions Webserver ? |P ( i,s ) | = 1 , ∀ ( i, s ) ∈ R User [Shanmugam et al. 2013] q NP-hard [Shanmugam et al. 2013] q Offline algorithm achieves 1-1/e approximation q Distributed, adaptive algorithm achieving [Ioannidis & Yeh 2016] 1-1/e approximation Jointly Optimal Routing and Caching 28

  30. Overview q Model q Main Results q RNS is suboptimal q Offline Algorithm q Distributed, Adaptive Algorithm q Evaluation Jointly Optimal Routing and Caching 29

  31. Is Joint Optimization Really Necessary? ? User Why not just use shortest path routing towards the nearest designated server ? Jointly Optimal Routing and Caching 30

  32. Is Joint Optimization Really Necessary? Shortest path routing to nearest server is arbitrarily suboptimal. Jointly Optimal Routing and Caching 31

  33. RNS is Suboptimal t M M c = 1 c = 1 Shortest path for both 2 1 s λ λ = 0 . 5 requests per sec = ? ? Jointly Optimal Routing and Caching 32

  34. Routing to Nearest Server is Suboptimal t Irrespective of caching decision, cost under shortest path routing is Θ ( M ) M M c = 1 c = 1 ? ? 2 1 s λ λ = 0 . 5 requests per sec = ? ? Jointly Optimal Routing and Caching 33

  35. Routing to Nearest Server is Suboptimal t Irrespective of caching decision, cost under shortest path routing is Θ ( M ) M M c = 1 c = 1 Cost under split routing strategy is . O (1) ? ? 2 1 Shortest path routing to nearest server is arbitrarily suboptimal. s λ λ = 0 . 5 requests per sec = ? ? Jointly Optimal Routing and Caching 34

  36. Key Intuition ? Increasing path diversity creates more caching opportunities . Jointly Optimal Routing and Caching 35

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