Information-Centric Networks05c-1 Week 5 / Paper 3 Democratizing content publication with Coral –Michael J. Freedman, Eric Freudenthal, David Mazières.

Slides:



Advertisements
Similar presentations
Peer-to-Peer (P2P) Distributed Storage 1Dennis Kafura – CS5204 – Operating Systems.
Advertisements

Kademlia: A Peer-to-peer Information System Based on the XOR Metric.
Precept 6 Hashing & Partitioning 1 Peng Sun. Server Load Balancing Balance load across servers Normal techniques: Round-robin? 2.
1 Server Selection & Content Distribution Networks (slides by Srini Seshan, CS CMU)
SYSTEM ADMINISTRATION Chapter 19
Democratizing Content Publication with Coral Mike Freedman Eric Freudenthal David Mazières New York University NSDI 2004.
Experiences with CoralCDN A Five-Year Operational View Michael J. Freedman Princeton University
Content Distribution Networks Costin Raiciu Advanced Topics in Distributed Systems Fall 2012.
Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
Information-Centric Networks03c-1 Week 3 / Paper 3 The design and implementation of a next generation name service for the Internet –Venugopalan Ramasubramanian.
Spring 2003CS 4611 Content Distribution Networks Outline Implementation Techniques Hashing Schemes Redirection Strategies.
Distributed hash tables Protocols and applications Jinyang Li.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
EEC-484/584 Computer Networks Discussion Session for HTTP and DNS Wenbing Zhao
P2P: Advanced Topics Filesystems over DHTs and P2P research Vyas Sekar.
Efficient Content Location Using Interest-based Locality in Peer-to-Peer Systems Presented by: Lin Wing Kai.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
CDNs & Replication Prof. Vern Paxson EE122 Fall 2007 TAs: Lisa Fowler, Daniel Killebrew, Jorge Ortiz.
Flash Crowds And Denial of Service Attacks: Characterization and Implications for CDNs and Web Sites Aaron Beach Cs395 network security.
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 Web Content Delivery Reading: Section and COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Ioannis Avramopoulos Instructor:
Web Caching and CDNs March 3, Content Distribution Motivation –Network path from server to client is slow/congested –Web server is overloaded Web.
1 ENHANCHING THE WEB’S INFRASTUCTURE: FROM CACHING TO REPLICATION ECE 7995 Presented By: Pooja Swami and Usha Parashetti.
Caching and Content Distribution Networks. Web Caching r As an example, we use the web to illustrate caching and other related issues browser Web Proxy.
Content Delivery Networks (CDN) Dr. Yingwu Zhu Reverse Proxy Reverse Proxy Reverse Proxy Intranet Web Cache Architecure Browser Local ISP cache L4 Switch.
Information-Centric Networks05a-1 Week 5 / Paper 1 On the use and performance of content distribution networks –Balachander Krishnamurthy, Craig Wills,
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
CS 4700 / CS 5700 Network Fundamentals Lecture 17.5: Project 5 Hints (Getting a job at Akamai) Revised 3/31/2014.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
On the Use and Performance of Content Distribution Networks Balachander Krishnamurthy Craig Wills Yin Zhang Presenter: Wei Zhang CSE Department of Lehigh.
Content Distribution March 8, : Application Layer1.
Information-Centric Networks03a-1 Week 3 / Paper 1 What DNS is not –Paul Vixie –CACM, December 2009, vol. 52, no. 12 Main point –“DNS is many things to.
Redirection and Load Balancing
1 3 Web Proxies Web Protocols and Practice. 2 Topics Web Protocols and Practice WEB PROXIES  Web Proxy Definition  Three of the Most Common Intermediaries.
1. 1.Charting the CDNs(locating all their content and DNS servers). 2.Assessing their server availability. 3.Quantifying their world-wide delay performance.
{ Content Distribution Networks ECE544 Dhananjay Makwana Principal Software Engineer, Semandex Networks 5/2/14ECE544.
Oasis: Anycast for Any Service Michael J. Freedman Karthik Lakshminarayanan David Mazières in NSDI 2006 Presented by: Sailesh Kumar.
Thesis Proposal Data Consistency in DHTs. Background Peer-to-peer systems have become increasingly popular Lots of P2P applications around us –File sharing,
Chapter 17 Domain Name System
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Information-Centric Networks07a-1 Week 7 / Paper 1 Internet Indirection Infrastructure –Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker, Sonesh.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
Information-Centric Networks06a-1 Week 6 / Paper 1 Untangling the Web from DNS –Michael Walfish, Hari Balakrishnan and Scott Shenker –Networked Systems.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Hongil Kim E. Chan-Tin, P. Wang, J. Tyra, T. Malchow, D. Foo Kune, N. Hopper, Y. Kim, "Attacking the Kad Network - Real World Evaluation and High.
DHT-based unicast for mobile ad hoc networks Thomas Zahn, Jochen Schiller Institute of Computer Science Freie Universitat Berlin 報告 : 羅世豪.
Setup and Management for the CacheRaQ. Confidential, Page 2 Cache Installation Outline – Setup & Wizard – Cache Configurations –ICP.
Information-Centric Networks Section # 3.2: DNS Issues Instructor: George Xylomenos Department: Informatics.
Information-Centric Networks Section # 5.3: Content Distribution Instructor: George Xylomenos Department: Informatics.
Information-Centric Networks Section # 3.3: DNS Issues Instructor: George Xylomenos Department: Informatics.
Content Distribution Network, Proxy CDN: Distributed Environment
Information-Centric Networks Section # 6.1: Evolved Naming & Resolution Instructor: George Xylomenos Department: Informatics.
Content Delivery Networks: Status and Trends Speaker: Shao-Fen Chou Advisor: Dr. Ho-Ting Wu 5/8/
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
15-829A/18-849B/95-811A/19-729A Internet-Scale Sensor Systems: Design and Policy Review.
Performance Evaluation of Redirection Schemes in Content Distribution Networks Jussi Kangasharju, Keith W. Ross Institut Eurecom Jim W. Roberts France.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
MICROSOFT AJAX CDN (CONTENT DELIVERY NETWORK) Make Your ASP.NET site faster to retrieve.
Democratizing content publication with Coral M.J. Freedman et. al.
Coral: A Peer-to-peer Content Distribution Network
Node.js Express Web Applications
Node.js Express Web Services
Internet Networking recitation #12
Net 323 D: Networks Protocols
Content Distribution Networks + P2P File Sharing
Consistent Hashing and Distributed Hash Table
Caching 50.5* + Apache Kafka
Content Distribution Networks + P2P File Sharing
Presentation transcript:

Information-Centric Networks05c-1 Week 5 / Paper 3 Democratizing content publication with Coral –Michael J. Freedman, Eric Freudenthal, David Mazières –NSDI, USENIX, 2004 Main point –CDNs are good if you can afford them –CoralCDN is a P2P based variant of CDNs –Anyone can offer a proxy, anyone can be a client or server –A simple change in the URL is all that is required –Incorporates DNS and proxy selection –Uses Sloppy DHTs to cluster content

Information-Centric Networks05c-2 Introduction Being popular is a mixed blessing on the Internet –Getting mentioned on slashdot can bring your site down –Popular commercial sites rely on server farms or CDNs –Other sites rely on mirroring or P2P file sharing –CoralCDN turns P2P into a CDN CoralCDN operation –Simply append “.nyud.net:8090” to a URL –CoralDNS transparently redirects to a participating server –Uses the Coral key/value indexing system Tries to keep queries in the local area Prevents traffic hot spots –A DHT based on clusters of well-connected machines Reminiscent of hierarchical DHT systems

Information-Centric Networks05c-3 The Coral CDN CoralCDN components –The participating HTTP proxies that serve users –The DNS servers for “nyucd.net” –The Coral indexing and clustering middleware Usage models –Publisher: “coralize” selected URLs in web pages –Third-parties: “coralize” posted URLs –Users: “coralize” URLs for any sites –Coralize means add “nyud.net:8090” in the URL Queries are redirected to the Coral name servers –All relative links are automatically coralized

Information-Centric Networks05c-4 System overview What happens when a client accesses a coralized URL? –The client sends to resolver –The resolver asks one of the nyud.net nameservers –The Coral DNS server probes the client’s location –The DNS server asks Coral for a nearby NS and/or proxy –The server replies with nearby (or random) servers –The resolver returns the address of an HTTP proxy –The client asks the proxy for the coralized URL –The proxy looks up the URL in Coral –The proxy fetches the object from the other proxy or the origin –The proxy stores the object and returns it to the client –The proxy stores a reference to itself in Coral

Information-Centric Networks05c-5 The Coral indexing abstraction Coral is a Sloppy DHT (DSHT) –Each key can be associated with multiple values –Each Coral node belongs to several clusters –Each cluster is characterized by a maximum desired RTT This is the cluster diameter –The clusters are organized into levels Normally three with RTTs of 20 msec, 60 msec and infinity –Each node participates in a cluster at each level –Queries start from local clusters and proceed to global ones –Coral interface Put(key,value,ttl,[levels]): can limit TTL and levels to insert Get(key,[levels]): can limit levels to search Nodes(level,count,[target],[services]): return nodes at desired level Levels(): number of levels and their RTTs

Information-Centric Networks05c-6 The Coral DNS server The Coral DNS server is process dnssrv –Returns proxies close to a client –Serves domain names ending http.L2.L1.L0.nyucd.net Redirected from nyud.net with a DNAME record –Uses resolver’s address to determine client location Tries to match resolver with a cluster of the highest level possible Uses the nodes function with the target parameter for this –Returns two sets of data Nearby DNS servers (to be used for further name queries) Nearby HTTP proxies (to be used for actual data downloads) –The DNS servers returned are as specific as possible A faraway DNS server will say it is authoritative for L0 A closer one will say it is authoritative for L1 and even L2

Information-Centric Networks05c-7 The Coral HTTP proxy A proxy using either CoralCDN or origin servers –Assumes origin servers that are not well provisioned –Always tries to use local proxies instead –Caches pages fetched from other servers –Looks up unavailable web pages with Coral –Then the proxy inserts itself in the DSHT It becomes a source for the page

Information-Centric Networks05c-8 Key-based routing Coral uses 160 bit keys (from hashing) –Keys are stored at nodes with keys close to themselves –Based on Kademlia which uses the XOR metric –Tries to approach the goal slowly Unlike other DHTs which try to go as fast as possible This way it allows flash crowd traffic to be spread –Keys are not always stored at the closest node This is the sloppy part –A heuristic is used to stop a bit earlier than the closest node Nodes that already store the key are preferred Nodes that have already been asked a lot for the key are preferred The closest node is always sure to also store the key –Retrieval returns multiple nodes (if they exist) These can be used for parallel downloads

Information-Centric Networks05c-9 Hierarchical operations Coral uses levels of clusters to achieve locality –Retrievals indicate the starting and stopping levels By default only the highest level cluster is used If the key is not found, we search larger clusters –Insertions also always start at the highest level The key is then also entered at larger clusters in some cases Nodes join the right clusters –A new node makes several queries to seed its tables –Nodes store hints towards their addresses in the DSHT They store pointers to themselves under the keys of nearby routers They also store pointers under their subnets and gateways –New nodes discover nearby nodes using these hints –Nodes periodically check whether they should change clusters

Information-Centric Networks05c-10 Performance evaluation CoralCDN deployment on 166 PlanetLab machines –Plus a web server behind a DSL link as the origin server –Each machine is also a client making requests –2 orders of magnitude more load than what the DSL can take! Server load: a tiny amount of requests reaches the DSL –After the first few minutes, content is replicated Client latency: multi-level clustering really works –Much better than with a single level Clustering: proxies are automatically grouped –Excellent matching with topology Load balancing: requests are spread to nearby nodes –Even flash crowds can be easily handled