aCDN: a Content Delivery Network for Applications

Content delivery networks (CDNs) improve the scalability of accessing static and, recently, streaming content. However, proxy caching can improve access to these types of content as well. A unique value of CDNs is in improving performance of accesses to dynamic content and other computer applications. This project explores architectures, algorithms, and performance of a CDN for applications (aCDN). Our system includes novel algorithms for automatic redeployment of applications on networked servers as required by changing demand and for distributing client requests among application replicas based on their load and proximity. The system also incorporates a mechanism for keeping application replicas consistent in the presence of developer updates to the content. A prototype of the system has been implemented using a AT&T Labs' PhD ecruiting Database (PhReD) as a testbed application.

Publications