Ch. 2.6
Content Distribution Networks (CDN)
- CDN: stores copies of content at CDN nodes * ex: netflix stores copies of MadMen - subscriber requests content from CDN * directed to nearby copy, retrieves content * may choose different copy of network path congested
P25.) Besides network-related considerations such as delay, loss, and bandwidth performance, there are other important factors that go into designing a CDN server selection strategy. What are they?
- delay - loss - bandwidth - performance - latency - throughput - failure - cost
Case study: Netflix
1. Bob manages Netflix account 2. Bob browses Netflix video 3. Manifest file returned for requested video 4. DASH streaming
DASH (Dynamic, Adaptive Streaming over HTTP)
DASH - server * divides video file into multiple chunks * each chunk stored, encoded at different rates * manifest file: provides URLs for different chunks - client: * periodically measures server-to-client bandwidth * consulting manifest, requests one chunk at a time intelligence at client: client determines - when to request chunk (so buffer starvation or overflow doesn't occur) - what encoding rate to request ( higher quality when more bandwidth available) - where to request chunk (can request from URL server that is "close" to client or has high available bandwidth)
R24.) CDNs typically adopt one of two different server placement philosophies. Name and briefly describe them.
enter deep - push CDN servers deep into many access networks - close to users bring home - smaller number (10's) of larger clusters in POPs near (but not within) access networks
CDN challenge: how to stream content (selected from millions of videos) to hundreds of thousands of simultaneous users?
option 1: single, large "mega-server" - single point of failure - point of network congestion - long path to distant clients - multiple copies of video sent over outgoing link option 2: store/serve multipole copies of videos at multiple geographically distributed sites - enter deep: push CDN servers deep into many access networks * close to users - bring home: smaller number (10's) of larger clusters in POPs near (but not within) access networks