towards a global ip anycast service
play

Towards a global IP Anycast service Hitesh Ballani, Paul Francis - PowerPoint PPT Presentation

Towards a global IP Anycast service Hitesh Ballani, Paul Francis Cornell University ACM SIGCOMM 2005 What is IP Anycast? One-to-Any communication with no changes to Internet routing IP Address IP Address 2.1.1.1 2.1.1.1 Robust and


  1. Towards a global IP Anycast service Hitesh Ballani, Paul Francis Cornell University ACM SIGCOMM 2005

  2. What is IP Anycast? One-to-Any communication with no changes to Internet routing IP Address IP Address 2.1.1.1 2.1.1.1 Robust and efficient service discovery ◮ Query-Reply Services : DNS Root-Servers etc. ◮ Routing Services : IPv6 transition (6to4) etc.

  3. What is IP Anycast? C One-to-Any to 2.1.1.1 communication with no changes to Internet routing IP Address IP Address 2.1.1.1 2.1.1.1 Robust and efficient service discovery ◮ Query-Reply Services : DNS Root-Servers etc. ◮ Routing Services : IPv6 transition (6to4) etc.

  4. What is IP Anycast? C C One-to-Any to to 2.1.1.1 2.1.1.1 communication with no changes to Internet routing IP Address IP Address 2.1.1.1 2.1.1.1 Robust and efficient service discovery ◮ Query-Reply Services : DNS Root-Servers etc. ◮ Routing Services : IPv6 transition (6to4) etc.

  5. What is IP Anycast? C C One-to-Any to to 2.1.1.1 2.1.1.1 communication with no changes to Internet routing IP Address IP Address 2.1.1.1 2.1.1.1 Robust and efficient service discovery ◮ Query-Reply Services : DNS Root-Servers etc. ◮ Routing Services : IPv6 transition (6to4) etc. But its use has been limited?

  6. Limitations of Inter-domain IP Anycast ◮ Wastes address space ◮ Does not scale by number of groups 2.1.1.0/24 2.1.1.0/24 ◮ Difficult to deploy ◮ obtain an address prefix ◮ a certain level of expertise ◮ Is limited by IP routing ◮ inability to offer load-based selection

  7. Proxy IP Anycast Service (PIAS) What is PIAS? A practical anycast deployment architecture ◮ addresses native IP Anycast limitations ◮ offers new features ◮ opens new anycast usage avenues Key Insight Native IP PIAS MEMBER CLIENT Anycast

  8. Talk outline ◮ PIAS : basic design ◮ Design challenges ◮ PIAS : actual design ◮ New anycast applications ◮ Unanswered questions (simulations/measurements)

  9. PIAS: Basic Idea Deploy Anycast Proxies( All proxies advertise the same prefix( Anycast Proxy

  10. PIAS: Basic Idea Group Members register with proxies( ( IP Anycast Anycast Member Proxy (group 1)

  11. PIAS: Basic Idea Client (C) ⇒ Group 1 (blue group)( ( C IP Anycast Anycast Member Proxy (group 1)

  12. PIAS: Basic Idea Native IP Anycast delivers packets to proxies( ( C IP Anycast Anycast Member Proxy (group 1)

  13. PIAS: Basic Idea Proxies tunnel to appropriate member( ( C IP Anycast IP Tunnel Anycast Member Proxy (group 1)

  14. PIAS: Basic Idea Different client might go to a different member( ( C C IP Anycast IP Tunnel Anycast Member Proxy (group 1)

  15. PIAS: Basic Idea Multiple groups can register( ( IP Anycast Anycast Member Member (group 2) Proxy (group 1)

  16. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible ◮ Selection Criteria Efficient use of address space Thousands of groups per IP address in prefix Group address - [IP-Address]:[Port]

  17. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible ◮ Selection Criteria Amortization of effort Deployment effort spread across thousands of groups

  18. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible ◮ Selection Criteria Ease of join/leave No interaction with routing

  19. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible C ◮ Selection Criteria No changes to clients just as native IP Anycast

  20. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible C ◮ Selection Criteria Multiple selection criteria for example, load balance, proximity

  21. What does PIAS solve? ◮ Address Usage ◮ Effort Amortization ◮ Ease-of-Use ◮ Backwards Compatible C ◮ Selection Criteria Multiple selection criteria for example, load balance, proximity Group members can be clients for the group!

  22. What does PIAS solve? ◮ Address Usage Issues ◮ Effort Amortization Transferred ◮ Ease-of-Use PIAS Routing ◮ Backwards Compatible Infrastructure�� ◮ Selection Criteria All this just by proxying? ◮ decoupled issues from routing ◮ can be easily addressed in proxy infrastructure

  23. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover

  24. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover B JP JP A C JP JP E D Members register with Join Proxies ( JP )( Registration involves member authentication(

  25. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover B JP JP A C JP JP E RP D RP Rendezvous Proxies ( RP ) : keep group state( group address mapped to RP using consistent hash(

  26. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover B JP JP A C JP JP E RP D RP Rendezvous Proxies ( RP ) : keep group state( JPs inform RPs of member leave/joins(

  27. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover B JP JP A C JP JP E RP D RP Hierarchy : reduce load on RP s( RPs track JPs, JPs track members(

  28. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover Overlay and Routing issues( (

  29. PIAS : design challenges ◮ Scalability by ◮ no. of groups, group size/dynamics ◮ no. of proxies ◮ Robustness and fast-failover Proxy and Member failures( (

  30. PIAS : putting it all together Anycast : Client (C) to Group 1 (blue) JP JP C Anycast Member Proxy (group 1)

  31. PIAS : putting it all together C ⇒ Ingress Proxy JP Ingress JP C IP Anycast Anycast Member Proxy (group 1)

  32. PIAS : putting it all together Ingress Proxy ⇒ Join Proxy JP Ingress JP C IP Unicast IP Anycast Anycast Member Proxy (group 1)

  33. PIAS : putting it all together Join Proxy ⇒ Member JP Ingress JP C IP Unicast IP Anycast Anycast Member Proxy (group 1)

  34. PIAS : putting it all together Client ⇒ Ingress P. ⇒ Join P. ⇒ Member JP Ingress JP C IP Unicast IP Anycast Anycast Member Proxy (group 1)

  35. New anycast applications Anycast service offered by PIAS ◮ practical ◮ easy-to-use ◮ scales by group number/size/dynamics ◮ group members can be clients too Applications ◮ Peer discovery : network games, p2p applications etc. ◮ Reaching an overlay network : querying OpenDHT, global RON, i3 etc.

  36. PIAS : possible problems ◮ Stretch ◮ Affinity ◮ Proximity

  37. PIAS : possible problems ◮ Stretch ◮ Affinity ◮ Proximity Join Proxy Ingress Proxy PIAS path Direct Path Member Client Stretch = PIAS path len. / Direct path len. What is the stretch imposed by PIAS?

  38. PIAS : possible problems ◮ Stretch : simulation ◮ Affinity ◮ Proximity Topology ◮ POP-level topology for tier-1 ISPs (Rocketfuel) ◮ 22 ISPs, 687 POPs, 2825 inter-POP links ◮ Annotated links with actual distance (kms) Simulation ◮ SSFNET for BGP route calculation

  39. PIAS : possible problems ◮ Stretch : simulation ◮ Affinity ◮ Proximity 3.5 3.5 10-25-50-75-90 3 3 percentile Stretch Factor Stretch Factor 2.5 2.5 2 2 1.5 1.5 1 1 0.5 0.5 0 0 0 0 100 200 300 400 500 600 100 200 300 400 500 600 # of Proxies # of Proxies

  40. PIAS : possible problems ◮ Stretch : simulation ◮ Affinity ◮ Proximity 3.5 3.5 10-25-50-75-90 3 3 percentile Stretch Factor Stretch Factor 2.5 2.5 Median Stretch : 1.01 2 2 90th percentile: 2.2 1.5 1.5 1 1 0.5 0.5 0 0 0 0 100 200 300 400 500 600 100 200 300 400 500 600 # of Proxies # of Proxies

  41. PIAS : possible problems ◮ Stretch ◮ Affinity ◮ Proximity Ingress JP C A C B JP E D Affinity : same client to same ingress g

  42. PIAS : possible problems ◮ Stretch ◮ Affinity ◮ Proximity JP C A C FLAP B JP E D Ingress Oops!! Affinity : same client to same ingress What is the affinity offered by native IP Anycast?

  43. PIAS : possible problems ◮ Stretch ◮ Affinity : measured anycasted DNS root-servers ◮ Proximity Traceroute-Servers Planetlab ◮ 244 vantage points ◮ 163 Planetlab sites ◮ Duration : 7 days ◮ Duration : 3 months ◮ Europe-centric (Dec’04-Mar’05) distribution ◮ US-centric distribution

  44. PIAS : possible problems ◮ Stretch ◮ Affinity : measured anycasted DNS root-servers ◮ Proximity 0.45 0.45 0.4 0.4 j-root j-root 0.35 0.35 f-root f-root 0.3 0.3 i-root i-root 0.25 0.25 CDF CDF k-root k-root Tracert-Server 0.2 0.2 0.15 0.15 Probing 0.1 0.1 0.05 0.05 0 0 0.01 0.01 0.1 0.1 1 1 Average time between flaps (DAYS) Average time between flaps (DAYS)

Recommend


More recommend