Vivek Pai, Larry Peterson, & the CoDeeN group Princeton University CoDeeN + DNS = CoDNS Vivek Pai, Larry Peterson, & the CoDeeN group Princeton University
Origins of CoDNS CoDeeN = Open CDN on PlanetLab 40 nodes, 4+ months, 24/7 operation Approaching 2 million reqs/day Extensive node monitoring Reliability by avoiding bad nodes Reliability at lower layers = delays Delays = annoyed users Better to avoid slow peers Oct 19, 2003 RPI PlanetLab Meeting
Oct 19, 2003 RPI PlanetLab Meeting
Types of Unreliability Dead nodes High application-level packet losses Resource exhaustion (FDs, disk) DNS DNS? Yes, DNS Lookup of origin server on cache misses Oct 19, 2003 RPI PlanetLab Meeting
DNS Problems Sometimes a major cause of slowdowns May not be node-local failure Other resources salvageable Fix may help other non-CDN services DNS as a “utility” Oct 19, 2003 RPI PlanetLab Meeting
DNS-Related Avoidance Oct 19, 2003 RPI PlanetLab Meeting
Insight Use content distribution infrastructure to mask DNS resolver failures If local DNS lookups failing Send to a nearby, working node Use locality, load balancing to avoid Oct 19, 2003 RPI PlanetLab Meeting
Prototype In place on all CoDeeN nodes Tries to be intelligent Currently using custom infrastructure Will soon share CoDeeN infrastructure Tries to be intelligent Immediate remote lookup on persistent local failure Backoff-based delay otherwise Oct 19, 2003 RPI PlanetLab Meeting
Cornell – Regular Problems Time & “Failures”, regular DNS Oct 19, 2003 RPI PlanetLab Meeting
Cornell – Regular Problems Lookup times – DNS & CoDNS Oct 19, 2003 RPI PlanetLab Meeting
CMU – Cron Jobs? Time & Failures, regular DNS Oct 19, 2003 RPI PlanetLab Meeting
CMU – Cron Jobs? Lookup times – DNS & CoDNS Oct 19, 2003 RPI PlanetLab Meeting
GaTech “Disappearance” Time & Failures, regular DNS Oct 19, 2003 RPI PlanetLab Meeting
GaTech “Disappearance” Time & Failures, regular CoDNS Oct 19, 2003 RPI PlanetLab Meeting
UCLA – Failure Burst Lookup times – DNS & CoDNS Oct 19, 2003 RPI PlanetLab Meeting
Summary DNS failures fairly widespread CoDNS prototype very promising Additional overhead very tolerable Working on standalone deployment Will listen on port 53, do the right thing Goal: general PlanetLab service Oct 19, 2003 RPI PlanetLab Meeting