Скачать презентацию Oasis Anycast for Any Service Michael J Freedman Скачать презентацию Oasis Anycast for Any Service Michael J Freedman

eb871c7e7657133e2f47e5c5a289739e.ppt

  • Количество слайдов: 22

Oasis: Anycast for Any Service Michael J. Freedman Karthik Lakshminarayanan David Mazières in NSDI Oasis: Anycast for Any Service Michael J. Freedman Karthik Lakshminarayanan David Mazières in NSDI 2006 Presented by: Sailesh Kumar

Overview n Why Anycast? » Availability, Load balancing, Performance n How to Implement Anycast? Overview n Why Anycast? » Availability, Load balancing, Performance n How to Implement Anycast? » Replica selection problem n Oasis » Replica Selection for many Services (amortized cost) » Use Geographic Coordinates » Fast Response Time » Accurate Results n Architecture of Oasis » How it works? » Design choices n n Evaluation Discussion 2 - Sailesh Kumar - 3/19/2018

Anycast/Replica Selection n Data/Service replication is very common in Internet » CDNs (e. g. Anycast/Replica Selection n Data/Service replication is very common in Internet » CDNs (e. g. Akamai, Coral) » Distributed web mirrors, » DNS servers » Distributed (DHT based) storage/file systems n What is the state today? 3 - Sailesh Kumar - 3/19/2018

Anycast is the Solution mycdn ? Animation taken from Freedman NSDI’ 06 slide n Anycast is the Solution mycdn ? Animation taken from Freedman NSDI’ 06 slide n Anycast aids in selecting the replica which is » Near the client » Less loaded » IP Anycast does not provide comprehensive selection policies 4 - Sailesh Kumar - 3/19/2018

Traditional Approach n Round-robin and DNS based techniques » spread load but do nothing Traditional Approach n Round-robin and DNS based techniques » spread load but do nothing for network locality n Use On-demand probing » probe client from multiple vantage points » Usually accurate » Significant probing required, can incur long latencies » Many probing to a client can trigger intrusion-detection alarms n Such probing is needed for every service » Access IBM (Akamai will probe you) » Access Google video (you are again probed) » Access a high volume website (you again need to be probed) 5 - Sailesh Kumar - 3/19/2018

Introducing Oasis n A single Anycast Solution for many services » Amortize costs of Introducing Oasis n A single Anycast Solution for many services » Amortize costs of probing n Perform probing off-line (probe the entire Internet) » Faster response n Use geographic coordinates » Geographic coordinates of IP prefixes are relatively stable » Better than virtual coordinates » Results may be more accurate n Provide flexible Anycast policies » Balance between – Bandwidth – Accuracy – Latency 6 - Sailesh Kumar - 3/19/2018

Oasis Architecture n A two-tier architecture » A reliable core of hosts » Replicas Oasis Architecture n A two-tier architecture » A reliable core of hosts » Replicas belonging to different services » Replicas run Oasis specific code to – Report their liveness and load information – assist core nodes in network measurements n There are two primary ways clients access Oasis » DNS redirection » HTTP redirection 7 - Sailesh Kumar - 3/19/2018

DNS Redirection mycdn OASIS core 2 1 Client Resolver Animation taken from Freedman NSDI’ DNS Redirection mycdn OASIS core 2 1 Client Resolver Animation taken from Freedman NSDI’ 06 slide n n Client issues DNS request for a service using Oasis OASIS will redirect the client to the nearest replica 8 - Sailesh Kumar - 3/19/2018

HTTP Redirection mycdn 3 OASIS core 1 2 Client Animation taken from Freedman NSDI’ HTTP Redirection mycdn 3 OASIS core 1 2 Client Animation taken from Freedman NSDI’ 06 slide n n n Client issues HTTP request for the service Service invokes Oasis code and contacts Oasis core With Oasis info, client is redirected to better replica 9 - Sailesh Kumar - 3/19/2018

How Oasis resolves Anycast requests? n Core node maps client IP address to network How Oasis resolves Anycast requests? n Core node maps client IP address to network bucket » Network bucket consists of IP address prefixes n IP prefix is mapped to a location, say x (coordinates) » Geographic coordinates of IP prefixes are stable n Replica whose location is closest to x is returned n Optionally, liveness and load of replicas can also determine replica selection 10 - Sailesh Kumar - 3/19/2018

Mapping IP prefix to geographic coords? n n First step is to map IP Mapping IP prefix to geographic coords? n n First step is to map IP addresses a. b. c. d to the nearest IP prefix say a. b. c. 0/24 For the prefix, measurement is done by the replica » Replicas form an overlay » They traceroute to the IP prefix and registers the RTT » If replica x has minimum RTT to prefix y, then the prefix y’s geographic coordinates becomes the coords. of replica x IP prefix (y) proximity ( Latx, Lngx, RTT distance ) location accuracy Such address aggregation reduces the amount of probing 11 - Sailesh Kumar - 3/19/2018

How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide “Probe 18. 0. 0. 0/8” 18. 168. 0. 23 n Two-pronged approach 18. 0. 0. 0/8 » Find closest replica proxy with less probing » Use closest replica’s geo-coords + error RTT as location 12 - Sailesh Kumar - 3/19/2018

How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide 18. 168. 0. 23 [ Meridian 05 ] n Two-pronged approach » Find closest replica proxy with less probing » Use closest replica’s geo-coords + error RTT as location 13 - Sailesh Kumar - 3/19/2018

How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide How to find replica nearest to prefix? Animation taken from Freedman NSDI’ 06 slide 18. 168. 0. 23 18. 0. 0. 0/8: Meridian 6. 0 ms [ (42 N, 71 W), 05 ] n Two-pronged approach » Find closest replica proxy with less probing » Use closest replica’s geo-coords + error RTT as location n Probing of prefixes are done very infrequently (once a week) 14 - Sailesh Kumar - 3/19/2018

How Oasis maintains its database? n n n For every service, there is a How Oasis maintains its database? n n n For every service, there is a rendezvous core node (via consistent hashing, H(serv)) Whenever replicas join, leave, change state, they notify its rendezvous node, also notify abt. liveness Rendezvous gossip liveness to other core nodes Every replica also sends keepalives to its nearest core Oasis node Nodes in the core keeps their data structures weakly consistent via gossiping » Uses incarnation numbers to indicate the latest info » Uses consistent hashing to distribute load across nodes n DNS is one of the services provided by Oasis » Thus, first step in resolving any Anycast request is to provide the nearest core node to the client 15 - Sailesh Kumar - 3/19/2018

Operation of Oasis? n A client queries OASIS for hostname coralcdn. nyuld. net: » Operation of Oasis? n A client queries OASIS for hostname coralcdn. nyuld. net: » The client queries the DNS root servers, finds OASIS core node I » Core lookup: Node I finds other core nodes near the client: – – I maps client’s IP address to IP prefix, and then prefix to location coords. I queries the rendezvous node for service dns, H(dns). Call this node SI. SI responds with the best-suited OASIS node for the specified coordinates. I returns this set of DNS replicas to the client. Let this set include node J. » The client resends the Anycast request to J. » Replica lookup: Core node J finds replicas near the client: – J extracts the request’s service name and maps the client’s IP address to coordinates. – J queries rendezvous node for service coralcdn, call this SJ. – SJ responds with the best coralcdn replicas, which J returns to the client. 16 - Sailesh Kumar - 3/19/2018

Evaluation n n Replicas on 250 Planet. Lab nodes around the world Oasis core Evaluation n n Replicas on 250 Planet. Lab nodes around the world Oasis core on 37 nodes Meridian: Uses on-demand probing (geographic coordinates) Vivaldi: Uses on-demand probing (virtual coordinates) 17 - Sailesh Kumar - 3/19/2018

Evaluation 18 - Sailesh Kumar - 3/19/2018 Evaluation 18 - Sailesh Kumar - 3/19/2018

Evaluation 19 - Sailesh Kumar - 3/19/2018 Evaluation 19 - Sailesh Kumar - 3/19/2018

Evaluation 20 - Sailesh Kumar - 3/19/2018 Evaluation 20 - Sailesh Kumar - 3/19/2018

Deployment till Date 21 - Sailesh Kumar - 3/19/2018 Deployment till Date 21 - Sailesh Kumar - 3/19/2018

Discussion n Is it OK to incorporate Anycast capability within the IP protocol? » Discussion n Is it OK to incorporate Anycast capability within the IP protocol? » If yes, then we do not need Oasis like infrastructure » However, like multicast, feature rich anycast may not be efficiently incorporated within the IP protocol n Is Oasis much different from what Akamai may already be doing? n One of the motivations behind Oasis is Intrusion-detection alerts » Such a motivation appears unconvincing, as there are many other ways to work around this problem n What happens if prefixes are not as geographically stable? » Will they become less stable in mobile context? n What is your general opinion about Oasis » To me the results appear surprisingly good 22 - Sailesh Kumar - 3/19/2018