DONAR: decentralized server selection for cloud services

Geo-replicated services need an effective way to direct client requests to a particular location, based on performance, load, and cost. This paper presents DONAR, a distributed system that can offload the burden of replica selection, while providing these services with a sufficiently expressive interface for specifying mapping policies. Most existing approaches for replica selection rely on either central coordination (which has reliability, security, and scalability limitations) or distributed heuristics (which lead to suboptimal request distributions, or even instability). In contrast, the distributed mapping nodes in DONAR run a simple, efficient algorithm to coordinate their replica-selection decisions for clients. The protocol solves an optimization problem that jointly considers both client performance and server load, allowing us to show that the distributed algorithm is stable and effective. Experiments with our DONAR prototype--providing replica selection for CoralCDN and the Measurement Lab--demonstrate that our algorithm performs well "in the wild." Our prototype supports DNS- and HTTP-based redirection, IP anycast, and a secure update protocol, and can handle many customer services with diverse policy objectives.

[1]  Akihiro Nakao,et al.  Wide-Area Route Control for Distributed Services , 2010, USENIX Annual Technical Conference.

[2]  Jie Gao,et al.  Moving beyond end-to-end path information to optimize CDN performance , 2009, IMC '09.

[3]  Randy H. Katz,et al.  On the stability of network distance estimation , 2002, PERV.

[4]  Hui Zhang,et al.  Predicting Internet network distance with coordinates-based approaches , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[5]  David Mazières,et al.  OASIS: Anycast for Any Service , 2006, NSDI.

[6]  Nick Feamster,et al.  In VINI veritas: realistic and controlled network experimentation , 2006, SIGCOMM.

[7]  Enrico Gregori,et al.  Load distribution among replicated Web servers: a QoS-based approach , 2000, PERV.

[8]  Michael J. Freedman,et al.  Object Storage on CRAQ: High-Throughput Chain Replication for Read-Mostly Workloads , 2009, USENIX Annual Technical Conference.

[9]  Philip S. Yu,et al.  Geographic load balancing for scalable distributed Web systems , 2000, Proceedings 8th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (Cat. No.PR00728).

[10]  Nick Feamster,et al.  Geographic locality of IP prefixes , 2005, IMC '05.

[11]  Emin Gün Sirer,et al.  ClosestNode.com: an open access, scalable, shared geocast service for distributed systems , 2006, OPSR.

[12]  Robert Tappan Morris,et al.  Vivaldi: a decentralized network coordinate system , 2004, SIGCOMM '04.

[13]  Anees Shaikh,et al.  On the responsiveness of DNS-based network control , 2004, IMC '04.

[14]  Arun Venkataramani,et al.  iPlane: an information plane for distributed services , 2006, OSDI '06.

[15]  Yakov Rekhter,et al.  Dynamic Updates in the Domain Name System (DNS UPDATE) , 1997, RFC.

[16]  N. Meyers,et al.  H = W. , 1964, Proceedings of the National Academy of Sciences of the United States of America.

[17]  Jia Wang,et al.  Proceedings of the 2002 Usenix Annual Technical Conference a Precise and Efficient Evaluation of the Proximity between Web Clients and Their Local Dns Servers , 2022 .

[18]  Michael F. Schwartz,et al.  Locating nearby copies of replicated Internet servers , 1995, SIGCOMM '95.

[19]  Dan S. Wallach,et al.  Java security: from HotJava to Netscape and beyond , 1996, Proceedings 1996 IEEE Symposium on Security and Privacy.

[20]  David Mazières,et al.  Democratizing Content Publication with Coral , 2004, NSDI.

[21]  Emin Gün Sirer,et al.  Meridian: a lightweight network location service without virtual coordinates , 2005, SIGCOMM '05.

[22]  Michael Rabinovich,et al.  MyXDNS: a resquest routing dns server with decoupled server selection , 2007, WWW '07.

[23]  Yin Zhang,et al.  Optimizing cost and performance for multihoming , 2004, SIGCOMM '04.

[24]  Kurt Rothermel,et al.  Dynamic distance maps of the Internet , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[25]  V. Rich Personal communication , 1989, Nature.

[26]  Eddie Kohler,et al.  Events Can Make Sense , 2007, USENIX Annual Technical Conference.

[27]  Paul Francis,et al.  IDMaps: a global internet host distance estimation service , 2001, TNET.

[28]  Lakshminarayanan Subramanian,et al.  An investigation of geographic mapping techniques for internet hosts , 2001, SIGCOMM 2001.

[29]  John N. Tsitsiklis,et al.  Parallel and distributed computation , 1989 .

[30]  P.S. Yu,et al.  Scheduling algorithms for distributed Web servers , 1997, Proceedings of 17th International Conference on Distributed Computing Systems.

[31]  Rajkumar Buyya,et al.  Load and Proximity Aware Request-Redirection for Dynamic Load Distribution in Peering CDNs , 2008, OTM Conferences.